2009-12-05 9 views
1

Я хотел бы знать, есть ли способ, который при использовании Matlab вместо того, чтобы интерпретировать то, что я пишу по строчке, если позволяет мне писать все, что я хочу , и только интерпретируйте его, когда я нажимаю кнопку «Оценить» или что-то в этом роде. Исходя из C++/C# Мне нравится писать код, который у меня есть, и только потом его запускать.Запуск кода в MatLab/Mathematica только после его написания

Также мне не нравится, когда кладут >> в начале линии. Есть ли способ только этого взлета?

Я задаю тот же вопрос в отношении Mathematica. Я слышал, что есть Workbench Wolfram (который, кажется, не известен вообще большинству людей), который делает именно это, но, похоже, это не кажется университетам, поэтому я никогда не пробовал.

ответ

10

Если вы пишете свой код в файлах кода (расширение .m), вы можете запустить его все сразу.

Пробег:

редактировать my_matlab_file

, а затем написать свой код в редакторе. Сохраните файл. Чтобы запустить то, что вы просто закодированы у вас есть несколько вариантов:

  1. В командной строке сделать

    my_matlab_file

  2. В редакторе нажмите «Оценка "(маленький зеленый предмет)

  3. В редакторе нажмите Ctrl + ENTER.

Для большего контроля можно также разделить файл в клетки, которые могут быть оценены отдельно с помощью Ctrl + ENTER:

my_matlab_file.m:

%% Initialization (Cell 1) 
x = 1; 
y = 2; 

%% Calculation (Cell 2) 
z = x + y 

Это действительно полезно, когда у вас есть длинный файл, который занимает много времени, и вы должны где-то внести какие-либо изменения. Вместо того, чтобы повторять все, вы можете оценить только те ячейки, где вы сделали свои обновления.

.m-файлы также могут использоваться для создания функций. Пример (mymeanfund.m)

function y = mymeanfunc(x) 
% Y = MYMEANFUNC(X) calculates the mean of X 

y = sum(X(:))/numel(X) 

и запустить его, называя его:

>> m = mymeanfunc([1 2 3 4]) 
m = 2.5 

В качестве примечания, так как более поздние версии MATLAB также вполне можно развивать с помощью ООП.

+0

Perfect. Только то, что я искал! –

+0

Тогда не стесняйтесь принимать это как ответ :) –

Смежные вопросы