Построение двумерных и трехмерных графиков с помощью компьютерной математической системы Mathcad

 

 

 

 

 

Построение двумерных и трехмерных графиков

с помощью компьютерной математической системы Mathcad

 

 

Выпускная квалификационная работа

 

 

 

 

 

 

 

Введение

 

В настоящее время машинная графика уже вполне сформировалась как наука. Существует аппаратное и программное обеспечение для получения разнообразных изображений - от простых чертежей до реалистичных образов естественных объектов. Машинная графика используется почти во всех научных и инженерных дисциплинах для наглядности восприятия и передачи информации. Знание её основ в наше время необходимо любому ученому или инженеру. Машинная графика властно вторгается в бизнес, медицину, рекламу, индустрию развлечений. Применение во время деловых совещаний демонстрационных слайдов, подготовленных методами машинной графики и другими средствам автоматизации конторского труда, считается нормой. В медицине становится обычным получение трехмерных изображений внутренних органов по данным компьютерных томографов. В наши дни телевидение и другие рекламные предприятия часто прибегают к услугам машинной графики и компьютерной мультипликации. Использование машинной графики в индустрии развлечений охватывает такие несхожие области как видеоигры и полнометражные художественные фильмы.

Среди многообразия возможностей, предоставляемых современными вычислительными средствами, те, что основаны на пространственно-образном мышлении человека, занимают особое место. Современные программно-оперативные средства компьютерной графики представляют собой весьма эффективный инструмент поддержки такого мышления при выполнении работ самых разных видов. С другой стороны именно пространственно-образное мышление является неформальной творческой основой для расширения изобразительных возможностей компьютеров. Это важное обстоятельство предполагает взаимно обогащающее сотрудничество всё более совершенной техники и человека со всем богатством знания, накопленного предшествующими поколениями. Глаз и раньше был эффективным средством познания человеком мира и себя. Поэтому столь привлекательной оказывается компьютерная визуализация, особенно визуализация динамическая, которую следует рассматривать как важнейший инструмент для обучения наукам. Примером такой программы может служить программа Mathcad.

Mathcad – это популярная система компьютерной математики, предназначенная для автоматизации решения массовых математических задач в самых различных областях науки, техники и образования. Название системы происходит от двух слов – MATHematica (математика) и CAD (Computer Aided Design – системы автоматического проектирования).

MathCAD является интегрированной системой программирования, ориентированной на проведение математических и инженерно-технических расчетов. Система MathCAD содержит текстовый редактор, вычислитель и графический процессор.

Графический процессор - служит для создания графиков. Он сочетает простоту общения с пользователем с большими возможностями графических средств. Графика ориентирована на решение типичных математических задач. Возможно быстрое изменение размеров графиков, наложение их на текстовые надписи и перемещение их в любое место документа. MathCAD автоматически поддерживает работу с математическим процессором. Последний заметно повышает скорость расчетов и вывода графиков, что существенно в связи с тем, что MathCAD всегда работает в графическом режиме. Это связано с тем, что только в этом режиме можно формировать на экране специальные математические символы и одновременно применять их вместе с графиками и текстом.

MathCAD - система универсальная, т.е. она  может использоваться в любой области науки и техники, везде, где применяются математические методы. Запись команд в системе MathCAD на языке, очень близком к стандартному языку математических расчетов, упрощает постановку и решение задач.

Целью данной работы явилась необходимость представления решения математических задач в графическом виде. Очень часто решение задачи в графическом виде сложно представить на обыкновенном листе бумаги, и в тоже время это можно сделать с помощью компьютерных математических систем. В данной работе такая проблема решается с помощью компьютерной системы MathCAD. Выбор данной темы обоснован тем, что в настоящее время большинство пользователей испытывают огромные затруднения при работе с компьютерными математическими программами для решения математических задач.

  Основная задача данного проекта - облегчить работу графических построений в программе MathCAD. Особое внимание мы уделили построению двумерных и трехмерных графиков в MathCAD. В работе подробно рассмотрены множество примеров с иллюстрациями. После каждой темы предложен список тренировочных упражнений.

 

 

Глава 1. Начало работы с графикой

 

§1. Построение двумерного графика одной функции

 

Простые вычисления в Mathcad выполняются почти мгновенно, и это вполне естественно. Столь же просто можно построить графики функций самого различного вида. Нередко к ним сводится нужные результаты вычислений. Начнем с построения графика функции sin(x)^3. Для этого достаточно выполнить следующие простые действия.

Введите функцию, набрав выражение sin(x)^3.

На панели математических знаков щелкните на кнопке с изображением графика – на экране появится палитра графиков.

В палитре графиков щелкните на кнопке с изображением двумерного графика – на экране появится шаблон графика с уже выведенной по оси Y функцией.

Введите в место ввода шаблон по оси X имя независимого аргумента – X.

Щелкните вне пределов графика левой кнопкой мыши – график построен.

 

 

 

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

Теперь предположим, мы хотим увеличить график и немного сместить его. Для этого проделайте следующее.

1. Поместите указатель мыши в  область графика и щелкните  левой клавишей мыши – вокруг графика появится рамка из черных линий, обрамляющая блок графика.

2. Подведите указатель мыши к черному квадратику в правом нижнем углу рамки, при этом указатель мыши должен превратиться в двухстороннюю диагональную стрелку.

3. Нажав левую кнопку мыши, растяните  график по диагонали.

4. Завершив расширение графика, отпустите кнопку мыши.

5. Наведите указатель мыши на  любую сторону рамки, при этом  указатель должен превратиться в черную ладошку.

6. Нажав левую кнопку мыши, передвиньте  весь блок графика в желаемое  место экрана.

7. Завершив перемещение, отпустите  кнопку мыши.

 

 

В результате этих действий мы увидим увеличенный и перемещенный в другое место экрана график с обрамляющей его рамкой. Убрать рамку можно, отведя указатель мыши в сторону от графика и щелкнув левой кнопкой мыши.

Обратите внимание: когда график находится в рамке, на нем в черных уголках появляются числа, указывающие масштаб графика по оси Y и по оси X.

По умолчанию график по оси X строится на отрезке изменения аргумента x от -10 до +10. Масштаб по оси Y Mathcad устанавливает автоматически. Изменив эти числа, можно задать свой масштаб графика.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

§2. Построение графиков ряда функций

 

А теперь рассмотрим, как в полученном графике отобразить еще две функции, например sin(x)2 и cos(x)2 для этого их надо просто перечислить после первой функции у оси Y графика, отделяя выражения функций запятыми. Вот как это делается.

    1. Подведите указатель мыши точно в конце выражения sin(x)2.
    2. Щелкните левой кнопкой мыши - появится синий уголок в конце выражения.
    3. Клавишами перемещения курсора по горизонтали переместите уголок точно в конец выражения и нажатием клавиши пробел добейтесь, чтобы уголок охватил все выражение.
    4. Введите знак запятой, при этом вы заметите, что первое выражение ушло вверх, а под ним появилось новое место ввода.
    5. Введите выражение sin(x)2.
    6. Нажимая клавишу пробел, добейтесь, чтобы это выражение тоже было полностью охвачено синим уголком.
    7. Введите знак запятой, и вы заметите, что два первых выражения ушли вверх, а под ним появилось новое место ввода.
    8. Введите в него выражение cos(x).
    9. Отведите указатель мыши за пределы графика и щелкните левой кнопкой мыши – появится график с тремя кривыми.

 

 

 

 

 

 

 

 

§3. Построение графиков поверхностей

 

Построение графиков поверхности (их называют также трехмерным или 3D- графиками) всегда было ахиллесовой пятой систем класса Mathcad. Связано это с тем, что такие графики даже в простейшем случае требуют создания матрицы точек зависимости z(x,y), то есть функции двух переменных. Создание большой матрицы нетривиальная задача, что приводило не только усложнению построений, но и потере их наглядности.

Однако в новейшей версии Mathcad 2000 эта трудность блестяще преодолена. Теперь трехмерный график построить даже проще, чем двумерный.

Определите функцию z(x,y) двух переменных x и y.

Используя палитру графики, введите шаблон трехмерного графика.

На единственное место ввода под шаблоном введите z.

Щелкните вне пределов графика – будет построен график в виде “проволочного каркаса“.

Растяните (или сожмите) график и поместите его в нужное место экрана.

А теперь рассмотрим новейший трюк с трехмерной графикой, впервые введенный в систему Mathcad 8 и, естественно, сохраненный в Mathcad 2000. Он заключается во вращении в пространстве трехмерной фигуры с помощью мыши.

Вид трехмерных фигур сильно зависит от того, под какими углами относительно осей X,Y и Z фигуру рассматривают. Нередко небольшие пики, впадины или лепестки фигуры просто не видны на фоне высоких пиков или глубоких впадин. Вращение фигуры эквивалентно ее просмотру с разных сторон. Вы можете заглянуть внутрь впадины или посмотреть, что находится за пиком.

Для этого и иных действий надо просто поместить указатель мыши в область графика, нажать левую кнопку мыши и, удерживая ее, начать двигать мышь по столу в том или ином направлении. Вы увидите, что фигура вместе с осями координат и призмой, в которой она находится, начнет вращаться.

Однако поворотом фигуры в пространстве возможности этого метода не исчерпываются. Если оперировать мышью при нажатой клавише Ctrl, можно удалять или приближать объект к наблюдателю. Если проделать те же действия с нажатой клавишей Shift, то после отпускания левой кнопки можно вообще наблюдать анимированную(“живую”) картину вращения в любом заданном предварительно направлении. Для остановки вращения надо щелкнуть левой кнопкой мыши.

Есть еще один приятный сюрприз новых версий Mathcad – возможность построения на одном графике ряда поверхностей. В Mathcad 2000 это делается предельно просто – определите ряд функций двух переменных, описывающих поверхности, и введите через запятую имена этих функций в месте ввода шаблона трехмерного графика. При этом фигуры могут как пересекаться, так и соприкасаться. В случае пересекающихся фигур Mathcad автоматически опредеделяет линии пересечения и обеспечения алгоритм удаления невидимых частей фигур.

 

 

 

 

 

Упражнения.

  1. Постройте графики функций exp(x), ln(x) и tan(x) раздельно и совместно.
  2. Попытайтесь отформатировать эти графики на свой вкус.
  3. Попробуйте перемещать графики по окну и менять их размеры.
  4. Попробуйте вращать построенные ранее графики мышью.

 

 

 

 

 

 

 

 

 

 

 

Глава 2. Начало работы с графикой

 

§1. Знакомство с меню Insert

 

Введение любого объекта в окно редактирования называется вставкой (insert). Mathcad реализует различные механизмы вставки – от просто ввода шаблона объекта до вставки объекта со связыванием его с приложением, создавшим объект, и возможностью редактирования объекта с помощью этого приложения. В последних версиях Mathcad 8.0 и Mathcad 2000 все команды вставки включены в новый пункт строки меню Insert (вставка):

Graph (график) – подменю вставки шаблонов графики;

Matrix (матрица) – вставка шаблонов матриц и векторов;

Function (функция) – вставка шаблонов встроенных функций;

Unit (единицы) – вставка единиц измерения размерных величин;

Picture (рисунок) - вставка шаблона импортируемого рисунка;

Math Region (математическая область) – вставка в текстовую область шаблона математической области;

Text Region (текстовая область) – вставка текстовой области;

Page Break (разрыв страницы) – вставка символа разрыва страницы;

Hyperlink (гиперссылка) – вставка гиперссылки;

Reference (ссылка) – вставка кнопки обращения к заданному файлу путем щелчка на ней;

Component (компонент) – вставка других компонентов системы;

Object (объект) – вставка объекта с установлением динамической связи с порождающим его приложением.

Для создания графика в системе Mathcad имеется программный графический процессор. Основное внимание при его разработке было уделено обеспечению простоты задания графиков и их модификации с помощью соответствующих параметров. Процессор позволяет строить самые разные графики, например, в декартовой и полярной системе координат, графики поверхностей, трехмерная фигура, графики уровней и т.д.

Для построения графиков используются шаблоны. Их перечень представлен в подменю Graph меню Insert. Большинство параметров графического процессора, необходимых для построения графиков, задаются автоматически, Поэтому для начального построения графика того или иного вида достаточно задать тип:

X-Y Plot@ (декартов график) – создание шаблона двумерного графика декартовой системы координат;

Polar Plot (полярный график) – создание шаблона графика полярных координат;

3D Plot Wizard (мастер трехмерной графики) – запуск мастера для построения трехмерных графиков с заданными свойствами;

Surface Plot (график поверхности) – создание шаблона для построения трехмерного графика;

Contour Plot (контурный график) – создание шаблона для контурного графика трехмерной поверхности;

3D Scatter Plot (точечный график) – создание шаблона для графика в виде точек в трехмерном пространстве;

Vector Field Plot (векторное поле) – создание шаблона для графика векторного поля на плоскости;

3D Bar Chart (трехмерная гистограмма) – создание шаблона для изображения в виде совокупности столбиков в трехмерном пространстве.

Графики в системе Mathcad могут иметь различные размеры и перемещаться в окне редактирования документа. Для вывода шаблона двумерной графики в декартовой системе координат служит команда X-Y Plot или клавиша @. Она выводит в текущее положение курсора шаблон двумерного графика. Напоминанием, что это обычный график на плоскости с воображаемыми (или действительно нарисованными) осями X (горизонтальная) и Y (вертикальная), расположенными под прямым углом друг к другу.

Каждая точка графика в декартовой системе координат характеризуется своими координатами x и y = f(x). Точки соединяются друг с другом разнообразными линиями. Могут быть показаны исходные точки графика в виде жирных точек, квадратиков, кружков и т.д., возможны также построения на одном рисунке графиков нескольких функций.

Незаполненный шаблон графика представляет собой большой пустой прямоугольник с шаблонами ввода данных в виде темных маленьких прямоугольников, расположенных около осей абсцисс и ординат будущего графика. В них необходимо ввести выражения, задающие координаты точек графика по осям X и Y.

Если график уже построен, то при его выделении появляются крайние места ввода с автоматически введенными числами, которые служат для указания предельных значений абсцисс и ординат, то есть задают масштаб графика. Масштаб графика можно задавать самостоятельно.

 

 

 

 

§2. Особенности построения графиков функции одной

переменной

 

Для наиболее распространенных графиков в декартовой системе координат Mathcad предусматривает два способа построения графиков функций одной переменной f(x):

- упрощенный способ без задания ранжированной переменной x (пределы изменения x автоматически задаются от –10 до 10);

- обычный способ с заданием ранжированной переменной x.

Напомним, что для упрощенного построения двумерного графиков некоторой функции f(x) надо ввести выражение для правой части этой функции, отметить его курсором ввода (синим уголком) и затем вывести шаблон двумерного графика. Останется ввести x в место ввода горизонтальной оси и, отведя указатель мыши в сторону и щелкнув левой кнопкой, получить готовый график. Таким же образом можно строить на одном рисунке и графики нескольких функций – просто опишите их у вертикальной оси, используя запятые для разделения функций. Графики будут построены линиями разного типа и цвета.

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

Начинающие пользователи обычно задают ранжированную переменную x целочисленной, например: x:= -15..15. При этом они забывают, что в данном случае график задается небольшим числом значений x: -15,-14,-13,…,-1,0,1,2,3,…,14,15. В некоторых случаях это ведет к грубому искажению формы графиков.

 

Чтобы построить график в автоматическом режиме вычислений, достаточно вывести указатель мыши за пределы графического объекта и щелкнуть левой кнопкой. При построении во время вычислений ординат функций область графика покрывается зеленной штриховкой, затем графики  функций появляются в шаблоне.

Если что-либо в построенном графике не вполне удовлетворяет пользователя, можно применить описанные ниже операции изменения формата графиков. Эти операции позволяют изменять заданные по умолчанию параметры графиков. Заметим, что окно задания форматов графиков появляется, если дважды щелкнуть мышью на графике, либо щелкнуть один раз, если график выделен. Графики можно перемещать по полю окна документа и изменять их размеры.

Обширные возможности форматирования графиков дает окно форматирования, которое появляется, если дважды щелкнуть мышью на графике, либо один раз, если график выделен. Кроме того, ряд команд форматирования графиков имеется в контекстном меню. Оно появляется при щелчке на графике правой кнопкой мыши.

§3. Графики с параметрическим заданием функций

 

Допускается строить двумерные графики с параметрическим заданием функций по осям координат. При этом в местах ввода могут стоять произвольные функции одной переменной x. На рисунке показаны 4 графика наглядно иллюстрирующих, что, в сущности, двумерная графика – это графика с параметрическим заданием функции по осям координат. Два первых графика иллюстрируют эффект от перемены функций, заданных по осям X и Y. В результате функция синуса оказывается повернутой на угол 90°. На третьем графике показано построение параметрически заданной окружности по формулам R cos(x) и R sin(x), где R=0.8 – радиус окружности. На последнем графике показано построение спирали по формулам x·cos(x) и x·sin(x).

Все графики, представленные на рисунке, строятся после задания независимой переменной x как ранжированной. Однако можно и не задавать переменную x. В этом случае диапазон ее изменений автоматически устанавливается в интервале от –10 до 10.

 

 

Здесь можно применить и трассировку графиков.

 Если щелкнуть в области  графика правой кнопкой мыши, появляется контекстное меню. В нем есть интересная команда Trace(трассировка). Ее можно найти также в подменю Graph(график) меню Format(формат).

Эта команда выводит окно трассировки двумерных графиков. Трассировка начинает работать после выделения графика. При этом в окне графика появляется большое перекрытие из двух черных пунктирных линий. С помощью указателя мыши его можно перемещать по графику с дискретностью, определяемой заданным шагом изменения абсциссы x. При этом координаты текущей точки ближайшей кривой графика.

Кнопки Copy X и Copy Y позволяют занести соответствующие координаты текущей точки графика в буфер обмена. Кнопка Close завершает трассировку и закрывает окно трассировки.

Если установлен флажок Trace Data Point, то при трассировке указатель автоматически устанавливается на точку ближайшей кривой, отслеживая ее ход. При снятом флажке указатель может быть установлен в любую точку графика, при этом координаты этой точки отображаются в окне трассировки.

 

 

 

Просмотр участков двумерных графиков.

Некоторые графики представляют собой довольно любопытные кривые. Выбор в контекстном меню команды Zoom(масштаб) ведет к открытию диалогового окна, с помощью которого можно увеличить любой участок графика. Для того чтобы воспользоваться этим окном, надо предварительно выделить фрагмент графика функций.

При этом в окне просмотра отображаются минимальные и максимальные значения X и Y, определяющие область просмотра. Кнопки Zoom, Unzoom и Full View позволят увеличить выделенную часть графика, снять выделение и вернуться к просмотру всего графика.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

§4.Построение графиков в полярной системе координат

 

В полярной системе координат каждая точка задается углом w и длиной его радиус-вектора R(w). График функции обычно строится при изменении угла w в определенных пределах, чаще всего от 0 до 2p. Команда Polar Plot(полярный график) выводит шаблон таких графиков. Этот шаблон имеет форму окружности и содержит места ввода данных.

Перед построением таких графиков надо задать приделы изменения ранжированной переменной w. После вывода шаблона следует ввести w в место ввода снизу и функцию R(w) в место ввода справа, а также указать нижний  предел изменения длинны радиус-вектора R(w) – R min – в место ввода справа снизу и верхний предел – R max – в место ввода справа сверху.

Надо также отметить возможность прямого построения графиков функций в полярной системе координат без определения диапазона изменения независимой переменной x.

При прямом построении графика достаточно просто заполнить место ввода функции. Саму функцию надо описать ее уравнениями, которые вписываются в соответствующие место ввода. Можно также задать построение графика нескольких функций в одном шаблоне. Стоит щелкнуть мышью вне области графика, как последний будет построен.

В отношении графиков, построенных в полярной системе координат, также возможны их трассировка и просмотр выделенного фрагмента в увеличенном виде.   

 

 

 

Упражнения.

    1. Какие типы двумерных графиков позволяет строить Mathcad?
    2. Опишите шаблон двумерного графика.
    3. Какими способами можно вывести шаблон двумерного графика?
    4. Постройте графики нескольких функций и отформатируйте их для получения наибольшей наглядности.
    5. Как строится график параметрически заданной функции?
    6. Как вывести панель форматирования двумерного графика?
    7. Как можно посмотреть небольшой участок графика?
    8. Что такое трассировка графика?
    9. Как построить график в полярной системе координат?

 

 

 

 

Глава 3. Работа с трехмерной графикой

 

§1. Построение параметрически заданных поверхностей

 

Большие возможности дает способ задания поверхностей – в параметрическом виде. При этом приходится формировать три матрицы X,Y и Z и указывать их в шаблоне в виде (X,Y,Z). Блок матриц надо указывать в скобках, поскольку в противном случае Mathcad попытается построить три поверхности по данным матриц X,Y и Z.

На рисунке показаны построенные таким способом сферы – одна при параметрах формирования, заданных по умолчанию, другая – после простого форматирования путем введения обрамляющего параллелепипеда, применения алгоритма удаления невидимых линий и использования функциональной окраски, зависящей от значений координаты x.

Подобный способ построения пространственных фигур открывает новые возможности для наглядной визуализации трехмерных объектов различной формы.

 

§2. Построение трехмерных фигур с вырезом

 

Параметрическая форма задания трехмерных фигур открывает еще одну возможность – представление объемных фигур с вырезом. Такие фигуры отличаются повышенной наглядностью, ибо в вырезе видна внутренняя поверхность фигур. Все, что надо для такого построения, - ограничить диапазон изменения параметрических углов, сделав его меньше обычного 2π.

Рекомендуется внимательно сравнивать представленные рисунки. Вся разница заключается в уменьшении диапазона изменения индекса j – на первом рисунке он меняется от 0 до N-4, а на втором – от 0 до N.

Mathcad 2000 обладает принципиально новой возможностью – допускается построение трехмерных графиков без задания матрицы аппликат поверхностей. В результате построение выполняется столь же просто, как и построение двумерных графиков.

Единственным недостатком такого упрощенного метода построения поверхностей является неопределенность в масштабировании, поэтому для получения приемлемого вида графиков требуется форматирование.

 

§3. Построение графика поверхности, заданной в векторной

 параметрической форме

 

Описанный выше метод быстрого построения поверхности может иметь множество вариантов. Один из них – задание поверхности в векторной параметрической форме. Примером такого построения является фигура, напоминающая «бублик».

Обратите внимание на особую наглядность задания поверхности в такой форме с помощью единственной формулы и простоту построения графика. В данном случае не требуется никаких промежуточных операций для создания исходного графика. Вид графика можно улучшить, используя форматирование и поворот графика мышью.

 

 

 

Построение объемных фигур с помощью функции Polyhendron.

В Mathcad 2000 PRO появилась новая функция для построения объемных фигур полиэдров – Polyhendron(“name”), где  name – имя фигуры. Имя ряда фигур можно задавать явно, например Polyhedron (“cube”) для куба, но можно задавать его и в виде “ # N ”, где N – номер фигуры. Рисунок иллюстрирует применение данной функции в месте ввода данных шаблона для построения графиков трехмерных поверхностей.

Построенная фигура может форматироваться, как и другие графики трехмерной поверхности, а также вращаться, приближаться и удаляться с помощью мыши.

Построение двумерных и трехмерных графиков с помощью компьютерной математической системы Mathcad