logo search
для вялички / TROPA V MATLAB_21

3.1 Файл-программы

Файл-программы (их также называют сценариями или скриптами) являются простейшим типом M-файлов. Они содержат последовательность команд без входных и выходных параметров.

В качестве примера составим файл-программу нахождения длины d = радиус - вектора точки (x;y;z) трехмерного пространства с двумя фиксированными координатами y = 3, z = 4. В главном меню MATLAB выберем команду File => New => M-file (Файл => Новый => M-файл), в результате чего раскроется окно редактора M-файлов (рис. 3.1).

Рис.3.1

В этом окне введем следующие строки:

y=3;z=4;

d=sqrt(x^2+y^2+z^2)

Обратим внимание, что строка, задающая d, не завершена точкой с запятой, поэтому результат работы этой строки будет отображаться в командном окне.

Сохраним введенный файл-сценарий в текущем каталоге под именем, например, myprog.m. Для этого в окне редактора M-файлов выберем команду File => Save As (Файл => Сохранить как). В появившемся диалоговом окне Save file as (Сохранить файл как) раскроется подкаталог work основного каталога MATLAB, который по умолчанию определен в качестве текущего рабочего каталога Current Directory. В поле File name (Имя файла) введем имя myprog вместо отобразившегося по умолчанию имени Untitled.m и щелкнем на кнопке Save (Сохранить). Расширение .m вводить не следует, система MATLAB добавит его автоматически.

Выполнить сохраненный файл-сценарий можно одним из следующих способов:

в редакторе M-файлов выбрать команду Debug => Run (Отладка => Запуск);

набрать в командной строке имя M-файла (без расширения) и нажать клавишу <Enter>, т. е. выполнить сценарий как команду MATLAB.

Выполним сценарий вторым способом:

>> x=2;

>> myprog

d =

5.3852

Ответом является длина 5,3852 радиус - вектора точки (2;3;4).

При работе с редактором M-файлов имеется возможность запуска только части команд, из которых состоит M-файл. Для этого надо выделить команды при помощи мыши и нажать клавишу <F9>. Выделенные команды выполняются последовательно, точно так же, как если бы они были набраны в командной строке. Очевидно, что работать в M-файле удобнее, чем в командной строке, поскольку можно сохранить программу, можно редактировать ее, используя обычные приемы редактирования, общие для Windows - приложений, в том числе с помощью мыши и клавиш <↑> и <↓>.

Если вы захотите изменить созданный M-файл (например, зафиксировать координаты y = 4, z = 5), внесите соответствующие изменения в текст программы

y=4;z=5;

d=sqrt(x^2+y^2+z^2)

сохраните эти изменения и вновь запустите файл-сценарий:

>> x=2;

>> myprog

d =

6.7082

Теперь сценарий myprog.m вычислил длину 6,7082 радиус - вектора точки (2;4;5).

Сценарий myprog.m обрабатывает как свои собственные переменные y, z, так и переменную x, определенную до вызова сценария в командном окне системы MATLAB и хранящуюся в ее рабочем пространстве. Это возможно потому, что переменные, определяемые в сценариях, и переменные, определяемые в командном окне, составляют единое рабочее пространство системы MATLAB. В свою очередь, все переменные, созданные во время работы сценария, остаются в рабочем пространстве MATLAB и после окончания его выполнения, т. е. являются глобальными. Можно убедится в этом, выполнив команду who:

>> who

Your variables are:

d x y z

Справочную информацию по M-программам можно получить, введя команду doc script.