Матросов А.В. Maple 6. Решение задач высшей математики и механики (1185909), страница 45
Текст из файла (страница 45)
Заметим, что при этом никакого графического вывода не происходит. Команда озер).ау(), находящаяся в пакете р1о«а, отображает как Р1.ОТ-структуры, так и "отложенный" и сохраненный в переменных Мар!е вывод графических команд. Синтаксис этой команды следующий: с)1ар1ау([рзс1, р).с2, ...], <опции>); Здесь элементы списка являются либо явно заданными графическими об- РаЗаМИ С ПОМОШЬЮ КОМаНЛ ВЫВОДа ГРафИКИ ИЛИ КОМаНд ПаКЕта р1о««оога, либо переменные, в которых хранятся графические образы. Опции соответствуют рассмотренным ранее опциям команлы р«о«(). Следует отметить СПЕцИаЛЬНуЮ ОПЦИЮ 1паеяоепсе, КОтОрая ПрИМЕНИМа ТОЛЬКО дяя ЭтОй КОМаН- дЫ.
ЕСЛИ ЕЕ ЗНаЧЕНИЕ раВНО ««це, тО ГрафИЧЕСКИЕ ОбраЗЫ ргсг, р'сг, будут последовательно отображаться один за другим, составляя в совокупности последовательные кадры анимации. [Анимация рассматривается в разделе 4.3 данной главы.) Пример 4.16 дает представление о том, как используется команда «)1ар1ау(). В переменной д«арьг сохраняется график функции азп(х), переменная о«арп2 содержит вывод выносной линии для надписи, а переменная о«арьз хранит надпись, выводимую рядом с выносной линией. > иг«Ь(р1о«а): > д«арнг.=р1о«(азп(х),х=0..2*Р1,«)з«с)азеаа=2)з > Ч«арп2з=р1о«([[Р)/2,1),[рз/2ерз/4,1.5)],со1о«=)>1ас)с)з > д«арпз:=«ех«р1о«([[Р1/2з-Р1/4,1.5,"точка экстремума"]], > со1о«=)>1це, а11зрзмя1ззит, > Гоп«-[СООВТВВ,12])з > с)1вр1ау([д«ар)з1,д«ар)з2,д«ар«зз])з Часть !'Основы алар1е 242 очка застряну~аз 3', 4 5 6' Результирующий график, составленный из этих трех графических изображеНнй, ВЫВОдИтСя С ПОМОЩЬЮ КОМапдЫ О1зртауы, В КОтОрОй В КаЧЕСтВЕ ЭЛЕ- ментов списка заданы вышеупомянутые переменные, хранящие графические образы.
Замечание Обратите внимание, что операторы присваивания переменным РЬОТ-структур завершаются двоеточием, подавпякхднм, возможно, длинную печать этих структур. 4.1.5. Н~С~ОП1з1во СО~РТОВ ЗаВЕРШаЯ РаЗГОВОР О ДВУМЕРНЫХ ГРафИЧЕСКИХ КОМаНДаХ ПаКЕта ртотз, МЫ ПО- зволилн себе дать несколько советов относительно отображения функций двух классов: разрывных и быстро осциллируюших.
Как известно, функция может иметь в точке разрывы двух видов: первого рода, когда в этой точке происходит скачок в ее значении, и второго рода, когда значение функции при стремлении независимой переменной к заданной точке стремится к плюс или минус бесконечности. Функции, имеющие разрывы только первого рода, обычно называют кусочно-непрерывными. Простейшим примером такой функции является ступенчатая функция, которая на интервалах непрерывности принимает постоянные значения, а в нескольких точках своей области задания изменяется скачкообразно на некоторую величину. Примером функции с разрывами второго рода является тригонометрический тангенс. Мар!е умеет работать с разрывными функциями, имеющими разрывы любого рода. Для задания кусочно-непрерывных функций следует использо- ВатЬ КОМаНду р' есеитее (1 СО СЛЕдуЮщИМ СИНтаКСИСОМ; > р1есеиьзе(условие1,значение1, условие2,значение, условиеп,значеииеп, значение-иначе); Параметры этой команды идут парами и определяют интервал изменения независимой переменной в виде булева выражения условиеп и значение функции на этом интервале значе иеп, которое является выражением от не- Глава 4, Графика 243 зависимой переменной.
Последний параметр вхачен е-вязче определяет вид функции на оставшихся интервалах вещественной оси. Например, чтобы задать функцию -1 х< 1 Йх) = х- -х < -1 ап(! х < 2 3 о(легхлве следует выполнить команду: > Г:=х->р1есехгве(х<=1„-1, 1<х аоо х<2,х 2, 3(; Г:= х -+ р!ест!ве (х < 1, -1, 1 < х ап(( х < 2, х", 3 ) Отобразим график атой функции командой > р1оо (Г (х), х-О .. 3, со1ое-Ъ1аск, Сьтсхсевв-21 > Мар!е вычерчивает вертикальные линии в точках разрыва, соединяя значения функции справа и слева от точки разрыва.
Чтобы избежать такого некорректного отображения разрывной функции, следует при ее вычерчивании устанавливать значение схсе опции Огвсооы > р1ос (Г (х), х=с .. 3, со1ох=Ъ1асх, СЪ1сХоевв=2, огвсооо=е осе) Графики функций с разрывами второго рода следует строить с обязательиыи заданием интервала изменения ее значений. Попытка построить график такой функции командой ргос(1 без ограничения на значения функции обречена на провал: Часть ). Основы )Ивр(е 244 > р100 (сап(х), х=-2*Р1 .. 2*Р1, со1оп=бгасХ) 2000 (000 в Тогда как ограничения на область изменения значений функции дадут нам правильный график функции с разрывами второго рода: > Р1оп ("ап(х), х=-2*Р) ..
2 Рт, -4 .. 4, оо1от=егасХ,ОП1оьпеаа=2) И здесь опять для удаления из графика функции с разрывами второго рода вертикальных прямых в точках разрыва следует, как и в случае с кусочно- НЕПРЕРЫВНЫМИ ФУНКЦИЯМИ, ВОСПОЛЬЗОВатЬСЯ ОПЦИЕЙ Еьаоопс: > р1ос (Сап (х), х=-2*Р1 .. 2*Р1, -4 .. 4, со1от =Ь1асх, > Сьгскпеаа=2, тцасопс=т спе) Мар)е вычерчивает графики функций, вычисляя их значения на некотором множестве зквидистантных точек независимой переменной. Затем он анализирует изменение функции на полученных интервалах и принимает решение вычислить значения функции в дополнительных точках тех интервалов, где функция является быстро осциллирующей.
Однако не во всех случаях этот адаптивный алгоритм срабатывает, и приходится прибегать к явному заданию количества точек на графике, чтобы получить его приемлемое отображение. Глава 4. Графика 245 Отобразим график быстро осциллирующей функции с использованием только адаптивного алгоритма Мар!е: > 3:=Б!хп( (-1) "1*аЬз (х-1/10),1=0..
40) пп 3:= ~~~ (-1)'~-х+ — ! ГО > р1оз(за1ое(з),х=-1..5,оо1оз=Ь1аок) 1 О 1 2 х 3 4 5 Как видно, зубчики на графике не одинаковой величины, что является свидетельством недостаточности вычисленных адаптивным алгоритмол! точек на графике. Улучшить график этой функции поможет задание опции поп!ро1зз 3: > р1оз (па1ое (3), х=-1 .. 5, оо1оз=Ь1аок, о!зпрогзпзГ б00) -1 О 1 2 х 3 4 5 4.2. Пространственная графика 4.2.1. Команда р!о!Зб!О Функцию двух переменных можно отобразить как поверхность в трехмерном пространстве, две оси которого соответствуют значениям двух независимых переменных, а по третьей оси откладываются значения функции. В Мар1е подобную процедуру визуализации функции двух переменных выполняет команда р1оеэп((), КОтОраЯ, каК и коМаНда отображения графика функции одной переменной р1ос(), расположена в стандартной библиотеке, а поэтому доступна пользователю в любой момент. Эта команда позволяет Часть /.
Основы (Иар(е 24Е отображать графики функций, заданных как в явном виде, так и в параметрическом виде. СИНтаКСИС КОМаНдЫ р1ссзе() ПраКтИЧЕСКИ ПОЛНОСТЬЮ СООтастетауст СИНтаКСИСу КОМаНдЫ расе(( С НЕбОЛЬШИМ ОЧЕВИДНЫМ ЛОПОЛНЕНИЕМ, СВяЗаННЫМ С наличием второй независимой переменной: р1осзп' (ехрт, х=а .. Ь, у=с .. с(, опции( Здесь параметр ехрт представляет алгебраическое выражение или обращение к пользовательской функции двух переменных с диапазонами изменения.
опрелеляемыми вторым и третьим параметром, в которых вместо .. и у следует задавать имена переменных. Пользовательскую функцию можно определять непосредственно в команде, но в этом случае задавать имена переменных не надо: > р1отза( (х,е( — >пса (х(*з1п("(,-1..1,-1..1( ( Отметим, что и выражение, и функция, представляю(цие параметр ехрт, не должны содержать неопределенных символьных переменных, кроме двух упомянутых независимых переменных. Границы диапазонов представляются числами, хотя для второй независимой переменной они могут быть выражениями, зависящими от первой переменной.
В этом случае график функции двух переменных отображается не на прямоугольной области, а на четырехугольной, у которой две противоположные границы являются криволинейными. Например, следующая команда > р1оеЗО(спз (х(*а1п(т(, х=-1.. 1, С=-З..х 2(; отображает график функции на области, у которой одна из границ представлена тгараболой. Опции для команд трехмерной графики определяются так же, как и лля команд графического отображения на плоскости, в виде уравнения, в левой части которого стоит имя опции, а в правой ее значение. Многие опции команд пространственной графики полностью соответствуют своим двумерным аналогам, правда в некоторых опциях добавлена дополнительная функцио- НаЛЬНОСтЬ (СМОтрИ, НаПрИМЕр, ОПЦИЮ сп1пт), НО ЕСТЬ И СПЕцнаЛЬНЫЕ ОПцнн, отражающие специфику пространственной графики.