Tengo un complejo proyecto MATLAB-Simulink que implica muchos archivos m y archivos mdl. Algunos archivos m definen variables que se usan en otros archivos m (diseño incorrecto, lo sé, pero es código heredado). También hay funciones que ya no se usan.Buscar variables y funciones no utilizadas en un proyecto de MATLAB-Simulink
Necesito una forma automática de encontrar las variables y funciones no utilizadas para poder eliminarlas y hacer que todo sea un poco menos complejo. Idealmente, debería tener un script/herramienta que toma como entrada el nombre del directorio raíz del proyecto, escanea todos los archivos en subdirectorios y genera todas las variables y funciones que no se usan en ningún archivo m o mdl.
Sé que puedo encontrar variables que no se utilizan en archivos mdl (consulte Tips and Tricks - Tracking Variables in a Simulink Model). Me gustaría aplicar ese método a todos los archivos del proyecto.
Mi idea para detectar variables no utilizadas en m-files es combinar temporalmente todos los archivos m en un solo archivo y ejecutar mlint en él. Alguna mejor idea?
Gracias, pero esto cubre solo una parte del problema. Digamos que tengo dos archivos f1.m y f2.m. f1.m es como sigue: a = 5; b = 3; f2 es como sigue: c = a * 2; b no se usa, pero el informe del analizador de código no lo dice. – Samil
@Samil: Eso es un problema, ya que esas no son [funciones] (http://www.mathworks.com/help/techdoc/ref/function.html), son [guiones] (http: // www .mathworks.com/help/techdoc/ref/script.html). Como un script se puede ejecutar en cualquier espacio de trabajo, y no se sabe qué variables ya estarán presentes en ese espacio de trabajo o qué variables del script serán utilizadas posteriormente por otro script o función, puede que tenga que combinar todos los archivos del script de alguna manera primero para ejecutar MLINT de manera efectiva. No puedo pensar en otro camino cuando se trata de guiones. – gnovice