Ho un progetto MATLAB-Simulink complesso che coinvolge molti m-file e file mdl. Alcuni m-file definiscono le variabili che sono usate in altri m-file (cattiva progettazione, lo so, ma è un codice legacy). Ci sono anche funzioni che non sono più utilizzate.Trova le variabili e le funzioni inutilizzate in un progetto MATLAB-Simulink
Ho bisogno di un modo automatico per trovare variabili e funzioni non utilizzate in modo che io possa cancellarle e rendere l'intera cosa un po 'meno complessa. Idealmente dovrei avere uno script/strumento che prenda come input il nome della directory principale del progetto, analizzi tutti i file in sottodirectory e restituisca tutte le variabili e le funzioni che non sono usate in nessun m-file o mdl-file.
So che posso trovare variabili che non vengono utilizzate nei file mdl (vedere Tips and Tricks - Tracking Variables in a Simulink Model). Vorrei applicare questo metodo a tutti i file nel progetto.
La mia idea di rilevare le variabili non utilizzate nei m-file è di combinare temporaneamente tutti i m-file in un singolo file ed eseguire mlint su di esso. Qualche idea migliore?
Grazie, ma questo copre solo una parte del problema. Diciamo che ho due file f1.m e f2.m. f1.m è come segue: a = 5; b = 3; f2 è come segue: c = a * 2; b non è usato ma il report dell'analizzatore di codice non lo dice. – Samil
@Samil: Questo è un problema, poiché quelli non sono [funzioni] (http://www.mathworks.com/help/techdoc/ref/function.html), sono [script] (http: // www .mathworks.com/help/TECHDOC/ref/script.html). Dato che uno script può essere eseguito in qualsiasi spazio di lavoro, e non si può sapere quali variabili saranno già presenti in quell'area di lavoro o quali variabili dello script saranno successivamente utilizzate da un altro script o funzione, si dovrà semplicemente combinare tutti i file di script insieme in qualche modo prima di eseguire MLINT in modo efficace. Non riesco a pensare a un altro modo per aggirarlo quando si tratta di script. – gnovice