Раздел: Документация
0 ... 70 71 72 73 74 75 76 ... 365 Глава 5 М-файлы В предыдущих главах мы рассмотрели достаточно простые примеры, для выполнения которых требуется набрать несколько команд в командной строке. Для более сложных задач число команд возрастает, и работа в командной строке становится непродуктивной. Использование истории команд, сохранение переменных рабочей среды или ведение дневника при помощи diary незначительно повышают производительность работы. Эффективное решение состоит в оформлении собственных алгоритмов в виде программ (М-файлов), которые можно запустить из рабочей среды или из редактора. Встроенный в MATLAB редактор М-файлов позволяет не только набирать текст программы и запускать ее целиком или частями, но и отлаживать алгоритм. Подробная классификация М-файлов приведена ниже. Отладка программ описана в главе 8. Работа в редакторе М-файлов Раскройте меню File рабочей среды MATLAB и в пункте New выберите подпункт M-file или нажмите кнопку New M-file на панели инструментов рабочей среды. Новый файл открывается в окне редактора М-файлов, которое приведено на рис. 5.1. Вид строки меню и панели инструментов зависит от ширины окна. Если оно достаточно узкое, то часть инструментов перемещается в раскрывающийся список. Наберите в редакторе команды для построения двух графиков на разных осях в одном графическом окне. Не обязательно набирать много команд — наша цель сейчас состоит в том, чтобы научиться выполнять команды из редактора М-файлов. Ограничьтесь командами, приведенными в листинге 5.1. в Editni Untitled Fin Ей Тел Cel Tool: Debug DeAIco WrOm Heb T Г-fN » I г ж •*«.u. 1 Co, Рис. 5.1. Окно редактора М-файлов MATLAB j Листинг 5.1. Команды для построения графиков X = 0:0.1:7; £ = ехр(-х); subplot(1, 2, 1) plotx, f) g = sin(x); subplot(1, 2, 2) plot(x, g) Сохраните теперь файл с именем mydemo.m в подкаталоге work основного каталога MATLAB, выбрав в меню File редактора пункт Save as. Для запуска на выполнение всех команд, содержащихся в файле, следует выбрать пункт Run в меню Debug, или просто нажать <F5>. На экране появится графическое окно Figure 1, содержащее графики функций. Результат эквивалентен последовательному выполнению команд листинга 5.1 в командном окне. Однако если вы решили построить график косинуса вместо синуса, то достаточно просто изменить оператор присваивания д = sin(x) в М-файле на д = cos (х) и запустить из редактора все команды. Аналогичные действия из командной строки потребовали бы больше времени. 1 Примечание Если вы создали новый файл в редакторе и набрали в нем команды, то необязательно сначала сохранять его из меню File, а только потом выполнять. Можно сразу раскрыть меню Debug. Пункт Run в этом случае заменяется на Save and Run, он позволяет запустить программу, предварительно сохранив ее. Очень удобной возможностью редактора М-файлов является выполнение части команд. Закройте графическое окно Figure 1. Выделите при помощи мыши, удерживая левую кнопку, первые четыре команды листинга 5.1. Затем откройте контекстное меню правой кнопкой мыши и выберете пункт Evaluate Selection. То же самое можете сделать, используя клавиатуру: клавишами со стрелками при нажатой <Shift> выделите первые четыре команды листинга 5.1 и выполните их из пункта Evaluate Selection меню Text или нажмите клавишу <F9>. Обратите внимание, что в графическое окно вывелся только один график, соответствующий выполненным командам. Выполните оставшиеся три команды листинга 5.1 и проследите за состоянием графического окна. Потренируйтесь самостоятельно, наберите какие-либо примеры из предыдущих глав в редакторе М-файлов и запустите их. Другая возможность для выполнения фрагмента М-файла рассматривается далее в разд. "Разбиение М-файла на ячейки" этой главы. Если в М-файле при наборе сделана ошибка, то она выявляется в процессе исполнения. MATLAB выполняет команды до неправильно введенной, после чего в командное окно выводится сообщение об ошибке. Создайте в редакторе новый файл mydemo2.m, например, при помощи кнопки New M-iile панели инструментов редактора, со следующими командами: У = [12 3] Z = у*у х = у Очевидно, что во второй строке допущена ошибка. Попытка выполнения такого файла приведет к выводу в командное окно следующего сообщения с гиперссылкой на место ошибки: ??? Error using --> mtimes Inner matrix dimensions must agree. Error in ==> myctemo2 at 2 z - y*y Щелчок мыши по гиперссылке с именем М-файла делает окно редактора активным и помещает курсор в строку с ошибкой. 0 ... 70 71 72 73 74 75 76 ... 365
|