Как я могу сгенерировать список зависимостей функций в MATLAB?

Чтобы распределить функцию, которую я написал, которая зависит от других написанных мной функций, которые имеют свои собственные зависимости и т. Д., Не распространяя каждый m-файл, который я когда-либо писал, мне нужно выяснить, что представляет собой полный список зависимостей для данного m-файла. Есть ли встроенный / свободно загружаемый способ сделать это?

В частности, меня интересуют решения для MATLAB 7.4.0 (R2007a), но если есть другой способ сделать это в более старых версиях, обязательно добавьте их здесь.

    Для новых выпусков Matlab (например, 2007 или 2008) вы можете использовать встроенные функции:

    1. mlint
    2. отчет о зависимости и
    3. отчет о покрытии

    Другой вариант – использовать профилировщик Matlab. Команда является профилем, ее также можно использовать для отслеживания зависимостей. Чтобы использовать профиль, вы можете сделать

    >> profile on % turn profiling on >> foo; % entry point to your matlab function or script >> profile off % turn profiling off >> profview % view the report 

    Если профилировщик недоступен, возможно, следующие две функции (для pre-MATLAB 2015a):

    1. depfun
    2. depdir

    Например,

     >> deps = depfun('foo'); 

    дает структуру, deps, которая содержит все зависимости foo.m.

    Из ответов 2 и 3 более новые версии MATLAB (post 2015a) вместо этого используют matlab.codetools.requiredFilesAndProducts .

    Посмотри ответы

    РЕДАКТИРОВАТЬ:

    Предостережения благодаря комментариям @Mike Katz

    • Помните, что Profiler будет показывать только файлы, которые были фактически использованы в этих запусках, поэтому, если вы не проходите через каждую ветку, у вас могут быть дополнительные зависимости. Отчет о зависимостях является хорошим инструментом, но разрешает только статические зависимости от пути и только для файлов в одном каталоге.

    • Depfun более надежный, но дает вам все возможное, о чем он может думать, и все еще пропускает LOAD и EVAL.

    Для MATLAB 2015a и более поздних MATLAB 2015a лучше всего посмотреть на matlab.codetools.requiredFilesAndProducts

    или doc matlab.codetools.requiredFilesAndProducts

    потому что depfun помечен для удаления в будущей версии.

    Interesting Posts

    Полное регулярное выражение для проверки номера телефона

    Как узнать размер файла загруженного файла перед его загрузкой?

    В чем разница между статическим методом и нестатическим методом?

    Как вы прокручиваете загруженные в настоящее время сборки?

    Использование ключевого слова «params» для общих параметров в C #

    Перенесите медиатеку iTunes * с * метаданными на новую машину

    Есть ли нажатие клавиши, которая может заблокировать заставку Mac OS X?

    Samsung SSD «Wear_Leveling_Count» означает

    VirtualBox 4.3.20 перестает работать после обновления Windows

    Как настроить пользовательский масштаб в Chrome?

    Удаление дубликатов из списка в Haskell

    Ошибка: использование стека C слишком близко к пределу

    Возвращает указатель на статическую локальную переменную?

    java regex шаблон закрытого символьного classа

    jQuery проверяет, имеет ли элемент определенное свойство стиля, определенное в строке

    Давайте будем гением компьютера.