Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
12 / Методичка MachCard.doc
Скачиваний:
47
Добавлен:
10.06.2015
Размер:
3.23 Mб
Скачать

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

Условие задачи y=b2(x+1) – sin(x+1) x=[-2 … 2] b=2

Пример применения оператора Пример применения оператора

слокальным применением глобального присвоения

Рис1

Оператор if является оператором для создания условных выражений. Он задается в виде Выражение if Условие. Если условие выполняется, то возвращается значение выражения. Совместно с этим оператором часто используются операторы прерывания break и иного выбора otherwise

Пример вычисления функции с помощью оператора if и otherwise

Рис 2

Оператор for служит для организации циклов с заданным числом повторений. Он записывается в виде for Var є Nmin .. Nmax. Эта запись означает, что выражение, помещенное в расположенный ниже шаблон, будет выполняться для значений Var, меняющихся от Nmin до Nmax с шагом +1. Переменную счетчика Var можно использовать в исполняемом выражении.

Пример использования операторов цикла

Рис3

Оператор цикла while служит для организации циклов, действующих до тех пор, пока выполняется некоторое условие.

Оператор break вызывает прерывание работы программы всякий раз, как он встречается. Чаще всего он используется совместно с условным оператором if и операторами цикла while, for, обеспечивая переход в конец тела цикла.

Применение while и break для вычисления факториала

Рис4

Лабораторная №4

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

Подготовка к работе

По указанной литературе изучить:

  • построение графика поверхности, описанной функции;

  • задание и построение поверхности без удаления невидимых линий;

  • состав палитры Graph;

  • задание и построение поверхности с удалениемневидимых линий;

  • построение поверхностей с их параметрическим заданием

  • построение трехмерных графиков без задания матриц

Контрольные вопросы

  1. Что необходимо для построения трехмерного графика?

  2. Как построить график поверхности без удаления невидимых линий?

  3. Опишите состав палитры Graph.

  4. Как построить трехмерный график без задания матриц?

  5. Что приводит к усложнению алгоритма подготовки данных?

  6. От чего зависит наглядность представления поверхностей?

  7. Для чего используется функция CreateMesh?

  8. Как задается поверхность с удалением невидимых линий?

  9. Как построить поверхность вращения графика?

  10. Как ввести шаблон графика?

Задание и порядок выполнения работы.

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

    2. Построить график поверхности с удалением невидимых линий. Таблица 1.

    3. Построить график поверхности без задания матрицы. Таблица1.

    4. Построить сферу. Таблица 2

    5. Построить графической функции CreateMesh. Таблица 3.

    6. Построить фигуру полученную вращением кривой вокруг оси. Таблица 4.

Варианты задания Таблица 1

Функция

Функция

z(x,y)=3cos(x*y)

z(x,y)=sin(x)2 +cos(y)

z(x,y)=sin(x*y)

z(x,y)=cos(x)+sin(y)2

z(x,y)=tg(x*y)

z(x,y)=2sin(x*y)

z(x,y)=x2*y

z(x,y)=sin(y)*cos(x)

z(x,y)=5cos(x*y)

z(x,y)=3tg(x*y)

z(x,y)=2x+y2

z(x,y)=5(x*y2)

z(x,y)=sin(x+y)

z(x,y)=10sin(x*y)

z(x,y)=sin(x)+cos(y)

Варианты задания Таблица 2

Число вертикальных линий

Число вертикальных линий

N=25

N=54

N=30

N=43

N=35

N=52

N=40

N=55

N=26

N=39

N=38

N=27

N=45

N=24

N=50

Варианты задания Таблица 3

Функция

Функция

H(u,v)=3(u2*v)

H(u,v)=9cos(u*v)

H(u,v)=3sin(u*v)

H(u,v)=9(u*v)

H(u,v)=7cos(u*v)

H(u,v)=3tg(u*v)

H(u,v)=cos(u*v)

H(u,v)=2cos(u*v)

H(u,v)=tg(u*v)

H(u,v)=2sin(u*v)

H(u,v)=3(u*v2)

H(u,v)=2tg(u*v)

H(u,v)=5(u*v)

H(u,v)=5sin(u*v)

Варианты задания Таблица 4

Функции

Функции

f(x)=cos(x2 )

G(u,v)=f(u)*sin(v)

H(u,v)=f(u)*cos(v)

f(x)=2x*cos(x)

G(u,v)=f(u)*v*sin(v)

H(u,v)=f(u)*v*cos(v)

f(x)=3(x2 )

G(u,v)=f(u)*v

H(u,v)=f(u)*3cos(v)

f(x)=2cos(x2 )

G(u,v)=f(u)*3sin(v)

H(u,v)=f(u)*5cos(v)

f(x)=tg(x2 )

G(u,v)=f(u)*(v2)

H(u,v)=f(u)*3(v)

f(x)=tg(x)

G(u,v)=f(u)*(v2)

H(u,v)=f(u)*2*cos(v)

f(x)=3cos(x2 )

G(u,v)=f(u)*4sin(v)

H(u,v)=f(u)*6cos(v)

f(x)=x*cos(x2 )

G(u,v)=f(u)*tg(v)

H(u,v)=f(u)*sin(v)

f(x)=3x*cos(x2 )

G(u,v)=f(u)*(v2)

H(u,v)=f(u)*3(v)

f(x)=cos(x2 )

G(u,v)=f(u)*sin(v)

H(u,v)=f(u)*cos(v)

f(x)=x*tg(x2 )

G(u,v)=f(u)*tg(v)

H(u,v)=f(u)*sin(v)

f(x)=x*cos(x2 )

G(u,v)=f(u)*2sin(v)

H(u,v)=f(u)*5cos(v)

f(x)=3cos(x2 )

G(u,v)=f(u)*4*x*sin(v)

H(u,v)=f(u)*tg(v)

f(x)=2x*cos(x2)

G(u,v)=f(u)*v*sin(v)

H(u,v)=f(u)*tg(v)

f(x)=2*x*cos(x2 )

G(u,v)=f(u)*x*sin(v)

H(u,v)=f(u)*v*cos(v)

Методические указания

Построение поверхностей по матрице аппликат их точек. Поскольку элементы матрицы М – переменные с целочисленными индексами, то перед созданием матрицы требуется задать индексы в виде ранжированных переменных с целочисленными значениями, а затем уже из них формировать сетку значений x и y – координат для аппликат z(x,y). Значения x и y при этом обычно должны быть вещественными числами, нередко как положительными, так и отрицательными. После выполнения указанных выше определений вводится шаблон графика (команда Surface Plot). Рис 1.

Рис1 Построение поверхности без удаления невидимых линий.

На рис 2 показано как отформатировать график, применение алгоритма функциональной окраски поверхности и удаление невидимых линий

Рис 2. Построение поверхности с удалением невидимых линий и использованием функциональной окраски

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

Рис 3 Построение графика поверхности без задания матрицы

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

Существует способ задания поверхностей - в параметрическом виде. При этом приходится форматировать три матрицы X,Y,Z и указывать их в шаблоне в виде (X,Y,Z). Блок матриц надо указывать в скобках в противном случае Mathcard попытается построить три поверхности по данным отдельных матриц. На рис 4 показано построение сферы – одна при параметрах форматирования заданных по умолчанию, другая после простого форматирования., путем введения обрамляющего параллелепипеда, применения алгоритма удаления невидимых линий и использования функциональной окраски.

Рис4 Графическое изображение сферы.

Построение объемной фигуры, образованной вращением кривой.

В системе Mathcard есть графическая функция для задания поверхностей: CreateMesh (F,s0,s1,t0,t1,sgrid, tgrid, fmap). Эта функция возвращает массив из трех матриц, представляющих координаты переменных x, y, z для функции F, определенной в векторной параметрической форме в качестве функций двух параметров sgrid и tgrid. Параметры s0,s1,t0,t1 задают пределы изменения переменных sgrid и tgrid. Параметр fmap – трехэлементный вектор значений, задающих число линий в сетке изображаемой функции. Все аргументы F не обязательны. Создаваемый функцией CreateMesh массив можно использовать для ввода в шаблон трехмерной графики класса Surface Plot. Построение поверхности с применением функции CreateMesh иллюстрирует рис 5. Построение слева дано при форматировании по умолчанию, а справа – после ввода функциональной окраски и поворота фигуры мышью.

Рис5 Пример построения графика поверхности с применением функции CreateMesh

Еще один пример применения функции CreateMesh построение объемной фигуры, которая получается вращением кривой, заданной функцией f(x), вокруг оси X или Y. На рис 6 показан пример решения данной задачи.

37