Использование программы Mathematica в учебном процессе

Дипломная работа - Компьютеры, программирование

Другие дипломы по предмету Компьютеры, программирование



(PostScript). Он может оказаться предпочтителен, например, если предполагается печать графика монохромным принтером.

Построение графиков плотности

Функцией двух переменных f(x, у) может описываться плотность некоторой среды. Для построения графиков плотности используются следующие графические функции:

DensityGraphics [array] - является представлением графика плотности;

DensityPlot[f, {х, xmin, xmax}, {у, ymin, ymax}] - строит график плотности f как функции от х и у;

ListDensityPlot [array] - формирует график плотности из массива величин высот.

С этими функциями используется множество (в основном уже рассмотренных) опций. Их перечень можно получить с помощью функции Options.

Внешне график плотности похож на контурный график. Однако для него характерно выделение элементарных участков (с равной плотностью) в форме квадратиков (рис. 2.18).

Рис. 2.18. График плотности

График плотности (рис. 2.18) также дан в режиме PostScript. Цветная функциональная раскраска таких графиков тоже возможна (см. опции, указанные выше для контурных графиков).

Построение графиков поверхностей - функция Plot 3D

Функция двух переменных z = f(x, у) образует в пространстве некоторую трехмерную поверхность или фигуру. Для их построения приходится использовать координатную систему с тремя осями координат: х, у и z. Поскольку экран дисплея плоский, то на самом деле объемность фигур лишь имитируется - используется хорошо известный способ наглядного представления трехмерных фигур с помощью аксонометрической проекции. Вместо построения всех точек фигуры обычно строится ее каркасная модель, содержащая линии разреза фигуры по взаимно перпендикулярным плоскостям. В результате фигура представляется в виде совокупности множества криволинейных четырехугольников. Для придания фигуре большей естественности используются алгоритм удаления невидимых линий каркаса и функциональная закраска четырехугольников с целью имитации бокового освещения фигуры.

Для построения графиков трехмерных поверхностей используется основная графическая функция Plot 3D:

Plot3D[f, {x, xmin, xmax), {у, ymin, ymax}] - строит трехмерный график функции f переменных х и у;

Plot3D[{f, s}, {x, xmin, xmax}, {y, ymin, ymax}] - строит трехмерный график, в котором высоту поверхности определяет параметр f, а затенение - параметр s.

На рис. 2.19 показан пример построения поверхности, описываемой функцией двух переменных cos(x у) при х и у, меняющихся от -3 до 3. Поверхность строится в виде каркаса с прямоугольными ячейками с использованием функциональной окраски. Все опции заданы по умолчанию.

Этот график будем считать исходным для демонстрации его модификаций, получаемых путем изменения опций.

Рис. 2.19. Пример построения поверхности cos(xy) функцией Plot3D с опциями по умолчанию

Опции и директивы трехмерной графики

Для модификации трехмерных графиков могут использоваться многочисленные опции и директивы, список которых дан в приложении. Их применение позволяет строить большое число графиков различных типов даже при задании одной и той же поверхности. В качестве примера рассмотрим отдельные кадры документа, демонстрирующего влияние опций на вид трехмерной математической поверхности. На рис.2.20 показана исходная поверхность (см. рис.2.19), построенная с применением опции PlotPoint->50. Это означает, что поверхность по каждой оси делится на 50 частей (в исходном графике по умолчанию используется деление на 10 частей). Масштаб по вертикали задается автоматически, с тем чтобы все высоты поверхности не ограничивались.

На рис. 2.21 показана та же поверхность, полученная с применением опции PlotRange-> {0, 0.5}, срезающей верхнюю часть поверхности (точки с ординатами выше 0.5). График поверхности при этом существенно меняется (сравните с рис. 2.20).

Опция Boxed -> False удаляет ограничивающие рамки, образующие "ящик", в который вписывается построенная трехмерная поверхность (рис. 2.22). Остаются лишь координатные оси.

Рис. 2.20. Поверхность рис. 2.19 с большим числом ячеек

Рис. 2.21. Математическая поверхность с отсеченной верхней частью

Рис. 2.22. Построение трехмерной поверхности без ограничительного "ящика"

Рис. 2.23. Математическая поверхность, построенная с учетом перспективы

Опция Viewpoint позволяет включить при построении отображение перспективы и изменять углы, под которыми рассматривается фигура. Рисунок 2.23 иллюстрирует применение этой опции.

Опция Mesh -> False позволяет удалить линии каркаса фигуры. Нередко это придает фигуре более естественный вид (рис. 2.24) - обычно мы наблюдаем такие фигуры без линий каркаса.

Рис. 2.24. Математическая поверхность с удаленными линиями каркаса

В ряде случаев, напротив, именно линии каркаса несут важную информацию. Система строит каркас трехмерных поверхностей двумя способами - с использованием и без использования алгоритма удаления невидимых линий. Рисунок 2.25 показывает результат построения при использовании алгоритма удаления невидимых линий. Нетрудно заметить, что в этом случае поверхность выглядит достаточно эстетично даже без применения функциональной закраски.

Рис.2.25. Построение каркаса математической поверхности с использованием алгоритма удаления невидимых линий

На рис. 2.26 показано построение каркаса без удаления невидимых линий. Такой вид математическая поверхность имеет, если представить ее построенной из тонких проволочек, висящих в пространстве. Эт