Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методички / TROPA V MATLAB_new.doc
Скачиваний:
68
Добавлен:
17.09.2018
Размер:
2.26 Mб
Скачать

Вопросы для самопроверки

1. Как в MATLAB создать вектор с помощью операции сцепления строк, индексацией с помощью вектора, индексацией с помощью двоеточия

2. Какие команды выдают размер и размерность массива

3. Что называется порядком квадратной матрицы

4. Какая команда выдает длину вектора

5. С помощью какой команды можно упорядочить вектор по убыванию

6. Как найти сумму всех элементов матрицы

7. Какие команды создают массивы специального вида

8. Какая команда осуществляет разворот матрицы на 90o против часовой стрелки

9. Какая команда выделяет главную диагональ матрицы

Глава 3 м-файлы

M-файлы – это обыкновенные текстовые файлы (с расширением .m), содержащие команды системы MATLAB. Подготовленный и записанный на жесткий диск компьютера M-файл становится частью системы и его можно вызывать как из командной строки, так и из другого M-файла. Большая часть обширного набора готовых средств системы MATLAB – это внешние расширения в виде M-файлов. Благодаря текстовому формату M-файлов пользователь может ввести в систему любую новую команду, оператор или функцию и легко приспособить ее к решению нужных классов задач.

Различают два типа M-файлов: файл-программы (Script M-Files) и файл-функции (Function M-Files). Мы продемонстрируем использование обоих типов M-файлов ниже.

Для создания и редактирования M-файлов предназначен встроенный модуль Editor (Редактор), который можно запустить командой edit (для редактирования нового файла). Для запуска модуля Editor (Редактор) можно также использовать меню File (Файл) или два крайних слева значка на панели инструментов, как для создания нового файла, так и для открытия уже существующего.

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.

Соседние файлы в папке Методички