Дьяконов В.П. Matlab 6.5 SP1 7 0 Simulink 5 6 Обработка сигналов и проектирование фильтров 2005 (1245705), страница 14
Текст из файла (страница 14)
) — загрузка файла <пап)елпа1 в форме функции. Если команда (или Функция) 1оа<) используется в ходе проведения сессии, то произойдет замена текущих значений переменных теми значениями, которые были сохранены в считываемом МАТ-файле. Для задания имен загружаемых файлов может использоваться знак *, означающий загрузку всех файлов с определенными признаками. Например, 1оас< с<епю*.п<ае означает загрузку всех файлов с началом имени с<ел)о, например <)вп)01, <)еп)02, <)вп)оа, <)еп)оЬ и т. д.
Имена загружаемых файлов можно формировать с помощью операций над строковыми выражениями. 1.9.5. Работа с редактором и)-файлов Любую последовательность команд в МАТ1 АВ можно оформить в виде п)-файла, называемого скрипт-файлом. Для создания и редактирования таких файлов служит специальный редактор и)-файлов. Его пустое окно открывается командой 1Че)т (Новый файл), которую можно ввести активизацией кнопки с тем же названием в панели инструментов или из позиции Ейе меню окна МАТ1 АВ. К примеру, введем такой скрипт-файл: 2+3 х=о:0.1:15 у в1п<х) р1ое <х, у) Пример ввода листинга этого файла в окне редактора/отладчика и)-файла показан на рис.
1.10. Введенный файл можно пустить из окна редактора, исполнив команду Вцп в позиции РеЬця (Отладка) меню окна редактора. В результате будет вычислено выражение 2+3 и число 5 появится в окне сессии МАТ1.АВ и т.9. Оаерации с рабочей областью, текстом сессии а редактором т-(1)айлов 57 построен в отдельном окне график синусоидальной функции. Все это и видно на рис.
1.1О. Рис. !.10. Пример заялния п1-файла построения графика сину«окан Редактор/отладчик гп-файлов — это, в сущности, специализированный текстовый редактор, предназначенный для записи и отладки программ на языке системы МАТ1.АВ, отдельных их фрагментов, процедур и функций. Строки листинга нумеруются и в них можно вставлять специальные точки останова для отладки сложных программ.
В этих точках можно контролировать и изменять зачения переменных. Полное описание редактора/отладчика имеется в первой книге этой серии, там же изложены и основы программирования на языке системы МАТ(.АВ. 1.9.6. Завершение вычислений и работы с системой Иногда из-за ошибок в программе или из-за сложности решаемой задачи МАТЮКАВ «зацикливается» и перестает выдавать результаты, либо непрерывно выдает их. хотя в этом уже нет необходимости.
для прерывания вычислений в этом случае достаточно нажать одновременно клавиши Сгг! и С (латинское). Для завершения работы с системой можно использовать команды т1ойе, ехйс или комбинацию клавиш С1П+С). Если необходимо сохранить значения всех переменных (векторов, матриц) системы, то перед этим следует дать команду ване нужной формы. Команда 1оас1 после загрузки системы считывает значения этих переменных и позволяет начать работу с системой с того момента, когда она была прервана. Глава 1.
Рабоага е МАТЮКАВ и Ятийаlг 1.10. Двумерная графика 1.10.1. Особенности графики системы МАТ1.АВ Начиная с версии МАТЮКАВ 4.0, впервые ориентированной на %1пг1окз, графические средства системы МАТ1.АВ были существенно улучшены. Основные отличительные черты графики в новых версиях МАТ1АВ 6.*: ° существенно улучшеннгяй интерфейс графических окон; ° введение новой панели инструментов Сапзега для интерактивного изменения условий видимости объекта; ° расширенные возможности форматирования графики; ° возможность создания графики в отдельных окнах; ° возможность вывода нескольких графических окон; ° возможность перемещения окон по экрану и изменения их размеров; ° возможность перемещения области графики внутри графического окна; ° задание различных координатнгях систем и осей; ° высокое качество графики; ° широкие возможности использования цвви; ° легкость установки графических признаков — атрибутов; ° снятие ограничений на число цветов; ° обилие параметров команд графики; ° возможность получения естественно выглядящих трехмерных фигур и их сочетаний; ° простота построения трехмерных графиков с их проекцией на плоскость; ° возможность построения сечений трехмерных фигур и поверхностей плоскостями; ° функциональная многоцветная и полутоновая окраска; а возможность имитации световых эффектов при освещении фигур точечным источником света; ° возможность создания анимационной графики; ° возможность создания объектов для типового интерфейса пользователгь С понятием графики связано представление о граграческах обьгкоисс, имеющих определенные свойства.
В большинстве случаев об обьектах можно забыть, если только вы не занимаетесь объектно-ориентированным программированием задач графики. Связано это с тем, что большинство команд высокоуровневой графики, ориентированной на конечного пользователя, автоматически устанавливает свойства графических объектов и обеспечивает воспроизведение графики в нужной системе координат, палитре цветов, масштабе и т. д. Средства графики МАТ1 АВ 7 существенно дополнены. Новая позиция Огарп1св меню содержит три команды: ° Нев шпиге — открывает пустое окно графики; ° Р1о1 Тоо!в — открывает окно нового мощного редактора графики; ° Моге Р1о1в...
— открывает окно доступа к различным видам графики. Первая команда очевидна, а две другие будут детально описаны ниже. На более низком уровне решения задач используется ориентированная на опытного программиста дескоилгаорная гра4ика (Наяд!е ОгарЫсз), при которой каждому графическому объекту в соответствие ставится особое описание — дескрилоюр, на который возможны ссылки при использовании графического объекта. Дескрипторная графика позволяет осуществлять визуальное программирование объектов пользовательского интерфейса: управляющих кнопок, текстовых панелей и т.
д. Команды дескрипторной графики могут использоваться в высокоуров- 59 3. 1О. Двумерная графика невой графике, например, для удаления осей, изменения цвета и т. д. в уже построенных графических объектах. Эти обширные возможности делают графику МАТ1.АВ одной из лучших среди графических систем компьютерной математики (СКМ). 1.10.2.
Построение графика функций одной переменной В режиме непосредственных вычислений доступны практически все возможности системы. Широко используется, например, построение графиков различных функций, даюших наглядное представление об их повелении в широком диапазоне изменения аргумента. При этом графики строятся в отдельных масштабируемых и перемещаемых окнах. Возьмем вначале простейший пример — построение графика синусоиды. Следует помнить, что МАТЮКАВ (как и друп(е СКМ) строит графики функций по ряду точек, соединяя их отрезками прямых„т. е.
осуществляя линейную интерполяцию функции в интервале между смежными точками. Зададим интервал изменения аргумента х от 0 до 10 с шагом 0,1. Для построения графика достаточно вначале задать вектор х=О:0.1:15, а затем использовать команду построения графиков р1ос (в1о (х) ) . Итак, для построения графика синусоиды надо исполнить следуюшие команды: х О: О. 1. "15; у=а1о (х); р1ос (х, у) При этом будет построено окно графика и сам график синусоидальной функции — рис. 1.! 1. Они идентичны показанным на рис. !.10„где был дан пример по- Рис.!.11. Построение.графика синусоиды из окна командного режима работы МАТ(АВ бб Гатова 1.
Работа с МА)Т.АВ и Яти(!и/( строения такого же графика из пз-файла, листинг которого введен в окно редактора/отладчика п)-файлов. В этих примерах вектор х задает интервал изменения независимой переменной от 0 до 15 с шагом 0,1. Почему взят такой шаг, а не, скажем, 12 Дело в том, что р1ое строит не истинный график функции з!п(х), а лишь заданное числом элементов вектора х число точек.
Эти точки затем просто соединяются отрезками прямых того или иного стиля и цвета, то есть осуществляется кусочно-линейная интерполяция данных графика. При 100 точках полученная кривая глазом воспринимается как вполне плавная, но при !Π— 20 точках она будет выглядеть состоящей из отрезков прямых. Графики МАТБАВ строит в отдельных окнах, называемых графическими окнами.
С первого взгляда видны отличия графического окна, показанного на рис. 1.1О, от командного окна МАТБАВ. В главном меню окна появилась позиция Тоо1а (Инструменты), которая позволяет вывести или скрыть инструментальную панель, видимую в верхней части окна графики на рис. 1.10. Срелства этой панели позволяют легко управлять параметрами графиков и наносить на них текстовые комментарии в любом месте. 1.10.3. Построение в одном окне графиков нескольких функций Более подробное описание графического окна будет дано в следующей главе. А пока пойдем дальше и гюпытаемся построить графики сразу трех функций: йп(х), сох(х) и з!п(х)/х Прежле всего, отметим, что эти функции могут быть обозначены переменными, не имеющими явного указания аргумента в виде у(х): » у1=ато (х); у2=соа (х); уз=аза(х) /х; Такая возможность обусловлена тем, что эти переменные являются векторами — как и переменная х.
Теперь можно использовать одну из ряда форм команды р1ог: р1оа (а1, Г1, а2, Г2, аЗ, ЕЗ,... ), где а1, а2, аЗ, ... — векторы аргументов функций (в нашем случае все они — х), а г1, б2, гз, ... — векторы значений функций, графики которых строятся в одном окне.
В нашем случае для построения графиков указанных функций мы должны записать следующее: » р1оа(х,у1,х,у2,х,уЗ) Можно ожидать, что МАТ1.АВ в этом случае построит, как обычно, точки графиков этих функций и соединит их отрезками линий. Но, увы, если мы выполним эти команды, то никакого графика не получим вообще. Не исключен даже сбой в работе программы. Причина этого казуса уже обсуждалась в предыдущем уроке — при вычислении функции уЗ=взп(х) /х, если х представляет собой массив (вектор), то нельзя использовать оператор матричного деления /. Этот пример еще раз наглядно указывает на то, что чисто поверхностное применение даже такой мошной системы, как МАТБАВ, иногда приводит к досадным срывам. Чтобы все же получить график, надо вычислять отношение яп(х) к х с помощью оператора поэлементного деления массивов ./. Этот случай поясняе~ рис.