Иногда бывает, что мне нужно изменить поведение функции. Есть ли простой способ найти функции (на пути Matlab), которые используют эту функцию?
Matlab: как найти функции на пути, которые используют данную функцию
Ответы (4)
Я делаю это так: ищу файлы, содержащие имя интересующей меня функции. Таким образом, я не только вижу, кто вызывает мою функцию, но и какую сигнатуру они используют.
В редакторе: Правка->Найти файлы
Agent Ransack
для поиска текста в файлах..
- person Amro; 13.04.2010
Начните с help deprpt
.
РЕДАКТИРОВАТЬ: когда я запускаю отчет о зависимостях, в верхней части окна отчета есть 3 флажка. Один из них, по умолчанию снятый, называется «Показать родительские функции (только текущая папка)». Это, вероятно, начало того, что вы хотите, но это работает только в одной папке.
Если вы хотите большего, я предлагаю вам попробовать edit deprpt.m
.
Я бы использовал такой инструмент, как grep. Несколько лет назад я разместил на файлообменнике инструмент под названием mgrep. Он может искать любую заданную строку в целых каталогах m-файлов и рекурсивно искать в подкаталогах. Поэтому, чтобы найти в моих каталогах функции, вызывающие fminsearch, я просто выполнял это в командной строке.
mgrep('fminsearch','.','show','off') Поиск каталога(ов)...
/Users/woodchips/Desktop/My_FEX/cylinderfit.m /Users/woodchips/Desktop/My_FEX/fminspleas.m /Users/woodchips/Desktop/My_FEX/fminspleas2.m /Users/woodchips/Desktop/My_FEX/fminspleas3.m /Users /woodchips/Desktop/My_FEX/fminspleasnnls.m /Users/woodchips/Desktop/My_FEX/BoundedFSOLVE/fsolvebnd.m /Users/woodchips/Desktop/My_FEX/FMINSEARCHBND/fminsearchbnd.m ...
вы имеете в виду поиск зависимостей? это будут инструменты -> показать отчет о зависимостях