получите код функций в Matlab?

Мне интересно, можем ли мы - пользователи Matlab получить код некоторых функций в Matlab (например, FFT - быстрое преобразование Фурье, dwt-дискретное вейвлет-преобразование и т. д.) На случай, если мы хотим что-то изменить, чтобы адаптировать то, что нам нужно. Возможно ли это в Matlab? и если да, то как можно получить код? Спасибо.

4 ответов


Как уже упоминалось, многие функции MATLAB написаны в MATLAB, поэтому вы можете увидеть источник. По соображениям производительности некоторые вещи реализуются в собственном коде или используют внешние библиотеки. В случае FFT MATLAB использует библиотеку FFTW, для которой источник доступен в свободном доступе. См. также http://www.mathworks.co.uk/help/techdoc/ref/fftw.html


введите " изменить функцию.м" (без кавычек), где "функция" - это имя функции с кодом, который вы хотите просмотреть.

Подробнее:http://www.ehow.com/how_8465386_matlab-function-codes.html#ixzz2wILKOXJI


в matlab есть опция в меню текущего каталога слева, имя опции - "найти файлы", которое представлено в виде значка бинокля, просто нажмите на него, установите каталог в" введите путь Matlab " и введите имя функции для поиска,

например, если я хочу найти функцию imnoise, я бы набрал " imnoise.м" после получения результата поиска просто дважды щелкните файл функции, и там вы можете редактировать все, что хотите


обобщить немного, есть несколько способов сделать это.

например, если мы хотим увидеть исходный код функции imread:

a)edit для редактирования или создания файла

edit imread; %namely, edit('imread')
edit imread.m; %edit('imread.m')

b)open открыть файл в соответствующем приложении

open imread; %open file 'imread.m' with matlab editor

c)type для отображения содержимого файла:

type imread; %this will display all the contents in command window, which is hard to read

Примечание это funcName stringLiteral - это синтаксис, которая равна