Визуализация в Maple
Содержание
- Пакет Maplet………………………………………………………………
. 3 - В изуализация комплексных чисел………………………………………4
- Графика статистического пакета stats…………………………………..6
- Иллюстративная графика пакета student……………………………….8
- Пакет для работы с алгебраическими кривыми algcurves…………….9
- Пакет векторных вычислений VectorCalculus…………………………10
- Визуализация матриц……………………………………………………11
- Пакет планиметрии geometry……………………………………………12
- Пакет стереометрии geom3d…………………………………………….14
- Визуализация решения систем неравенств……………………………..17
- Визуализация вычисления определенных интегралов……………….17
- Визуализация дифференциальных параметров кривых………………17
- Список литературы……………………………………………………
…20
Пакет Maplet
Система компьютерной математики Maple является лидером среди систем символьной математики. Особенно широко она применяется в университетах и крупных научных центрах. Привлекательности системы, особенно новых реализаций Maple, во многом способствуют мощные средства визуализации вычислений и математических понятий.
В Maple был введен пакет расширения Maplets, который обеспечивает построение визуально-ориентированных элементов интерфейса для документов системы. Этот пакет создан на основе применения средств языка Java, так что для его использования надо позаботиться, чтобы Java был инсталлирован на компьютере, применяемом для работы с Maple.
О вызове пакета и его составе можно судить по приведенным ниже командам:
> restart; with(Maplets);
[Display, Elements, Examples, Tools]
> with(Maplets[Tools]);
[AddAttribute, AddContent, Get,
ListBoxSplit, ListJoin, ListSplit, Print,
Set, SetTimeout, StartEngine, StopEngine]
Пакет позволяет выводить на экран около 60-ти диалоговых окон и иных средств интерфейса — начиная от простейших кнопок и заканчивая диалоговыми окнами вычисления интегралов и построения графиков заданных функций.
Вызов простейшего окна с запросом «Хочешь дальше?» показан на рис. 1. Это окно используется для создания паузы в вычислениях — они возобновляются только после нажатия на клавишу с заданной надписью «Жми тут». При этом управление передается следующей строке ввода. Как надпись в окне, так и подпись на кнопке задаются пользователем.
Более солидные действия производит функция вызова диалогового окна вычисления интегралов, показанная во фрагменте документа, представленном на рис. 2. Это окно вначале вызывает появление окна с запросом типа вычисляемого интеграла — определенного или неопределенного.
Рис. 1. Создание кнопки для
остановки и запуска
Рис. 2.Вызов окна задания интегралов.
Задав, к примеру, вычисление неопределенного интеграла, можно получить окно с результатом. Но можно (см. рис. 3) задать в панели ввода любое подынтегральное выражение, а также указать переменную интегрирования. Кнопка Clear очищает окно, а кнопка Integrate обеспечивает вычисление интеграла.
Рис. 3.Вывод окна задания и вычисления неопределенных интегралов.
Еще один пример (рис. 4) обеспечивает вывод диалогового окна построения графиков трехмерных объектов, представленных функцией двух переменных.
Рис. 4. Вызов и применение окна построения трехмерного графика.
Из приведенных примеров функции пакета Maplets вполне очевидны. В разделе Examples читатель найдет множество других примеров применения этого пакета — в их названиях есть слово Maplet.
Визуализация комплексных чисел
В некоторых случаях полезна визуализация операций с комплексными числами. Для этого удобен пакет расширения plots, который позволяет представлять комплексные числа в виде стрелок на комплексной плоскости. Например, для иллюстрации операции умножения двух комплексных чисел
можно использовать следующие графические построения:
> with(plottools):
l1 := arrow([0,0], [1,2], .1, .3, .1, color=green):
l1a := arc([0,0],1.5,0..arctan(2),
color=green):
> l2 := arrow([0,0], [1,.8], .1, .3, .1,
color=green):
l2a := arc([0,0],.75,0..arctan(.8),
color=green):
> l3 := arrow([0,0], [_.6,2.8], .1, .3, .1,
color=black):
l3a := arc([0,0], 2.5, 0..arctan(2.8,_.6),
color=black):
> plots[display](l1, l2, l3, l1a, l2a, l3a,
axes=normal,
view=[_3..3,0..3], scaling=constrained);
Они создают график (рис. 5), наглядно иллюстрирующий операцию перемножения двух комплексных чисел, представленных своими радиус векторами.
Рис. 5. Иллюстрация перемножения двух комплексных чисел.
Графика статистического пакета stats
Статистический пакет stats имеет свою небольшую библиотечку для построения простых графиков. Она вызывается в следующем виде:
> stats[statplots, function](args)
или
> statplots[function](args)
Вид графика задается описанием function:boxplot, histogram, notchedbox, quantile, quantile2, scatter1d, scatter2d и symmetry. В качестве примера можно рассмотреть построение гистограмм. Для их создания пакет stats имеет функцию histogram. Детали применения этой простой функции поясняет рис. 6. На нем дано два примера — построение столбцов заданной ширины и высоты и построение гистограммы 100 случайных чисел с нормальным распределением. Обратите внимание на то, что для второго примера гистограмма будет несколько меняться от пуска к пуску, так как данные для ее построения генерируются случайным образом.
Рис. 6. Построение гистограмм.
Визуализация решения системы линейных уравнений Maple позволяет легко дать визуальное представление решения систем двух или трех линейных уравнений. К примеру, решение систем трехлинейных уравнений имеет наглядную геометрическую интерпретацию — в виде точки, в которой пересекаются три плоскости, каждая из которых описывается функцией двух переменных. Для наглядности желательно представить и линии пересечения плоскостей. Это позволяет сделать функция импликативной трехмерной графики implicitplot3d, что и показано на рис. 7. Для объединения графиков площадей использована функция display.
Рис. 7. Пример решения системы трех линейных уравнений с графической иллюстрацией решения.
Иллюстративная графика пакета student
При создании учебных курсов нередко нужны графики, иллюстрирующие выполнение операций математического анализа. Пакет student имеет три графические функции для иллюстрации интегрирования методом прямоугольников (левых, средних и правых). Кроме того, имеется функция построения касательной в заданной точке x = a к графику функции f (x). Все эти возможности пакета показаны на рис. 8. Четыре отмеченных вида графиков здесь построены в отдельных окнах.
Рис. 8. Примеры иллюстративной графики пакета student.
Пакет для работы с алгебраическими кривыми algcurves
Для работы с алгебраическими кривыми служит пакет расширения algcurves, который дает доступ к ряду новых функций. С их списком можно познакомиться, используя команду
> restart; with(algcurves);
Начиная с версии Maple 7, в пакет расширения algcurves добавлена новая функция импликативной графики plot_real_curve. Она строит алгебраическую кривую для действительной части полиномиального выражения (рис. 9).
Рис. 9. Примеры применения функции plot_real_curve.
Пакет векторных вычислений VectorCalculus
Начиная с Maple 8, существенно расширены возможности вычислений над векторами (пространственными объектами) и поверхностями.
Для этого введен пакет VectorCalculus. С его функциями можно познакомиться, исполнив команду:
> restart;
with(VectorCalculus);
interface(showassumed=0);
Пакет VectorCalculus ориентирован в первую очередь на решение задач математической физики на основе методов теории поля и приложений дифференциального исчисления. Он оперирует такими привычными для физиков и математиков понятиями, как поток векторного поля, градиент, торсион, векторный потенциал и др. В Интернете можно найти целую серию уроков по векторному анализу и теории поля в виде пакета Calculus IV или V (разработчик проф. J. Wagner). Одним из важнейших приложений пакета
VectorCalculus является вычисление длин дуг и площадей сложных поверхностей на основе при менения линейных и поверхностных интегралов.
Иногда при этом приходится сталкиваться с большими трудностями и использовать специальные подходы. Примером может служить поверхность:
> restart: with(plots):
with(LinearAlgebra):
with(VectorCalculus):
> f := <sin(x), sin(y), sin(x+y)>;
f := sin(x) + sin( y) + sin(x + y) x y z e e e
> plot3d(f, x=_Pi..Pi, y=_Pi..Pi,
axes=framed, grid=[70,70],
style=patchnogrid,
lightmodel=light2);
Эта поверхность с имитацией освещения от внешнего источника света показана на рис. 10.
Рис. 10. Сложная поверхность с эффектами освещения внешним источником света.
Визуализация матриц
В ряде вычислений используются матрицы. Иногда их можно наглядно изобразить графически, например, в виде гистограммы. Она представляет собой множество столбцов квадратного сечения, расположенных на плоскости, образованной осями строк (row) и столбцов (column) матрицы. При этом высота столбцов определяется содержимым ячеек матрицы. Такое построение обеспечивает графическая функция matrixplot из пакета plots. На рис. 11 показана графическая визуализация матрицы, полученной как разность специальных матриц A и B, сформированных функциями пакета linalg. Для усиления эффекта восприятия применяется функциональная закраска разными цветами. Для задания цвета введена процедура F.
Рис. 11. Графическое представление матрицы.
Пакет планиметрии geometry
Пакет геометрических расчетов geometry в последних версиях системы Maple получил как бы второе рождение — число его функций по сравнению с версией этого пакета в системе Maple V R5 возросло в несколько раз. Теперь загрузка пакета командой
> with(geometry)
возвращает весьма внушительный список из более чем ста функций для расчета основных параметров ряда геометрических объектов. Для каждого объекта возможно задание различных исходных величин, так что пакет охватывает практически все виды классических геометрических расчетов на плоскости. Приведем примеры применения пакета для визуализации геометрических понятий: рис. 12 дает графическую иллюстрацию к одной из теорем Фейербаха (здесь эффектно используются средства выделения геометрических фигур цветом); рис. 13 показывает гомологические преобразования квадрата. Заинтересовавшийся читатель может легко разобраться с деталями простого алгоритма этой программы.
Обратите особое внимание на последний параметр в функции draw. Он задает построение титульной надписи с заданными шрифтом и размером символов. Приятно, что в графике Maple нет преград для использования символов кириллицы и создания надписей на русском языке. Множество других примеров применения всех функций пакета geometry дано в одноименном с ним файле примеров.
Рис. 12. Графическая иллюстрация к теореме Фейербаха.
Рис. 13. Гомологические преобразования квадрата.
Пакет стереометрии geom3d
Пакет geom3d предназначен для решения задач в области стереометрии (трехмерной геометрии). При загрузке пакета командой
> with(geom3d)
появляется доступ к весьма большому (свыше 140)числу новых функций. Функции этого пакета обеспечивают задание и определение характеристик и параметров многих геометрических объектов: точек в пространстве, сегментов, отрезков линий и дуг, линий, плоскостей, треугольников, сфер, регулярных и квазирегулярных полиэдров, полиэдров общего типа и др.
Ограничимся парой примеров применения этого пакета, один из которых представлен на рис. 14. На нем построена сфера внутри «малого иглообразного» додекаэдра (SmallStelletedDodecahedron). Второй пример представлен на рис. 15. Здесь показаны еще две объемные фигуры, расположенные одна в другой.
Рис. 14. Иллюстрация применения пакета geom3d.
Рис. 15. Еще один пример применения пакета geom3d.
Визуализация решений дифференциальных уравнений
Важное место в математических расчетах занимает решение дифференциальных уравнений. К нему, в частности, обычно относится анализ поведения различных систем во времени (анализ динамики), а также вычисление различных полей (тяготения, электрических зарядов и т. д.). Возможности аналитического и численного решений дифференциальных уравнений в среде Maple трудно переоценить. Они достаточно подробно отражены как к книгах по этой системе, так и в ее огромной справочной системе. Отметим лишь наличие превосходных специальных средств визуализации решений. Они входят в пакет Detools и с ними можно ознакомиться, исполнив команду
> with(DEtools)
Этот пакет дает самые изысканные средства для аналитического и численного решения дифференциальных уравнений и систем. В пакет входит ряд функций для построения наиболее сложных графиков решения дифференциальных уравнений. Основной из этих функций является функция DEplot. Следует отметить, что функция DEplot может обращаться к другим функциям пакета DEtools для обеспечения специальных графических возможностей, таких как построение векторного поля или фазового портрета решения. В файле deplot.mws можно найти множество дополнительных примеров на применение функции Deplot.
Графическая функция dfieldplot служит для построения поля направления с помощью векторов по результатам решения дифференциальных уравнений. Фактически эта функция как бы входит в функцию DEplot и при необходимости вызывается последней. Но она может использоваться и самостоятельно.
Графическая функция phaseportrait служит для построения фазовых портретов по результатам решения одного дифференциального уравнения или системы дифференциальных уравнений.
В целом надо отметить, что возможности визуализации решений дифференциальных уравнений с помощью системы Maple весьма велики и
приведенные выше примеры лишь частично иллюстрируют сказанное.
Однако хотелось бы предостеречь читателя от чрезмерного увлечения
красочными визуализациями решений. Порой строгое «черно-белое решение» способно лучшим образом выявить смысл решаемой задачи.
Приведем пример этого. Многие наяву или в кино видели, как большие
волны в море или океане теряют свой гармонический характер. Их гребни явно движутся быстрее, чем впадины, в результате во времени гребень достигает предшествующую ему впадину и может даже перегнать ее. Радиотехники давно научились использовать распространение волн напряжения и тока в нелинейных средах для получения очень коротких их перепадов. Моделирование этого сложного явления (обострение фронта волн и потеря ими устойчивости) достаточно просто осуществляется с помощью волнового дифференциального уравнения Бюргерса. Что происходит в этом случае с морскими и океанскими волнами, мы знаем — гребень волны отрывается от нее и рассыпается на каскад брызг. Этот эффект (нарушение устойчивости волны) уравнение Бюргерса не учитывает. Тем не менее, оно показывает, что в данном случае мы сталкиваемся с новым интересным явлением — появлением отрицательного параметра — крутизны фронта волн, который и может вызвать их неустойчивость.
Визуализация решения систем неравенств
Мы уже рассмотрели визуализацию решения системы линейных уравнений. Не менее полезной является визуализация решения системы неравенств. В пакете plots имеется специальная графическая функция inequal, которая строит все граничные линии неравенств и позволяет раскрасить разделенные ими области различными цветами. График дает весьма наглядную интерпретацию действия ряда неравенств (или равенств).
Визуализация вычисления определенных интегралов
Часто возникает необходимость в геометрическом представлении в виде алгебраической суммы площадей определенных интегралов, ограниченных кривой подынтегральной функции. При этом желательно обеспечение закраски верхней и нижней (отрицательной и положительной) площадей разными цветами, например, зеленым для верхней площади и красным для нижней. Как известно, численное значение определенного интеграла есть разность этих площадей.
Поможет в этом процедура a_plot, решающая эту задачу. Параметрами процедуры являются интегрируемая функция f (x) (заданная как функция пользователя), пределы интегрирования a и b и пределы слева am и справа bm, задающие область построения графика f (x).
Визуализация дифференциальных параметров кривых
Дифференциальные параметры функции f (x), описывающей некоторую кривую, имеют большое значение для анализа ее особых точек и областей существования. Так, точки с нулевой первой производной задают области, где кривая нарастает (первая производная положительна) или убывает (первая производная отрицательна) с ростом аргумента x. Нули второй производной задают точки перегиба кривой. Для такого анализа удобен пакет Calculus 1, включенный в пакет расширения Student. На рис. 16 показано применение функции FunctionChart для визуализации дифференциальных параметров кривой, которая представляет собой сложную функцию. По умолчанию анализ ведется в интервале изменения x от –10 до +10. Экстремальные точки помечаются ромбиком, точки перегиба крестиком, нули кружочками, а области кривых — заливкой цветом.
Рекомендуется опробовать данную процедуру на других функциях. Поскольку процедура использует функции mimimize и maximize, она
может давать сбои при исследовании сложных функций, содержащих специальные математические функции или особенности. Данная процедура дает хорошие результаты при анализе функций, представленных полиномами. Функция FunctionChart может использоваться с многочисленными опциями, существенно влияющими на вид рисунка. Пример анализа функции sin(x) / x показан на рис. 17.
Рис. 16. Анализ и визуализация сложной функции, заданной пользователем.
Рис. 17. Визуализация функции sin(x) / x.
Список литературы
- Дьяконов В. П. Компьютерная математика. Теория и практика.— М.: Нолидж, 2001.
- Дьяконов В. П. Maple V— мощь и интеллект компьютерной алгебры! // Монитор Аспект, 1993.— №2.
- Прохоров Г. В., Леденев М. А., Колбеев В. В. Пакет символьных вычислений Maple V. — М.: Петит, 1997.
- Манзон Б. М. Maple V Power Edition.— М.: Филинъ,1998.
- Дьяконов В. П. Математическая система Maple V R3/R4/R5.— М.: Солон, 1998.
- Дьяконов В. П. Maple 6. Учебный курс.— СПб.: Питер, 2001.
- Дьяконов В. П. Maple 7. Учебный курс.— СПб.: Питер, 2002.
- Матросов А. Maple 6. Решение задач высшей математики и механики.— СПб.: БХВПетербург, 2001.
- Аладьев В. З., Шишаков М. Л. Автоматизированное рабочее место математика.— М.: Лаборатория базовых знаний, 2000.
- Аладьев В. З., Богдявичюс М. А. Maple 6: Решение математических, статистических и физико-технических задач.— М.: Лаборатория базовых знаний, 2001.

- Визуализация рекламной идеи
- Визуальная диагностика желтух
- Визуальная диагностика (рентгенография, КТ грудной клетки) респираторного дистресс – синдрома
- Визуальная коммуникация
- Визуальная коммуникация в рекламных кампаниях
- Визуальная культура 13 века
- Визуальная мультимедийная презентация на уроке иностранного языка
- Визовая поддержка туристов
- Визовая система США
- Визовые формальности
- Визовые формальности
- Визовый режим и порядок въезда иностранных граждан на территорию РФ
- Визрівання передумов і початок громадянського протистояння в Україні
- Визуализация