Главная

Популярная публикация

Научная публикация

Случайная публикация

Обратная связь

ТОР 5 статей:

Методические подходы к анализу финансового состояния предприятия

Проблема периодизации русской литературы ХХ века. Краткая характеристика второй половины ХХ века

Ценовые и неценовые факторы

Характеристика шлифовальных кругов и ее маркировка

Служебные части речи. Предлог. Союз. Частицы

КАТЕГОРИИ:






colormap( copper ) ,

Plot3(X, Y, Z)

где X, Y и Z – матрицы со значениями функции (точками z) в наборах (x,y).

В системе MATLAB имеется специальная функция для получения двумерных массивов X и Y по одномерным массивам x, y.

В MATLAB существует функция построения двумерных массивов X и Y по одномерным x,y.

Рис.1

Пусть по оси x задан вектор

u = -2: 0.1: 2,

а по оси y диапазон

v = -1: 0.1: 1.

Для получения матриц X и Y, содержащих значения точек в этой прямоугольной сетке, используется функция:

[ X, Y ] = meshgrid(u, v)

Вычислим теперь на полученной прямоугольной сетке значение функции exp:

Z = exp(- X.^2 - Y.^2)

Теперь применим функцию plot3, которая была описана выше, и получим следующий график:

Рис.2

Чтобы построить трехмерные линии, заданные параметрически, применяется другая форма вызова функции plot3:

Plot3(x, y, z)

здесь x, y и z - одномерные массивы координат точек, которые надо последовательно соединить отрезками прямых.

Следующий пример позволяет построить винтовую линию:

t = 0: pi/50: 10*pi;

x = sin(t);

y = cos(t);

Plot3(x, y, t);

Grid on

Рис.3

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

Кроме этой простейшей функции построения графиков в MATLAB есть набор инструментов, позволяющий сделать отображаемые объекты более наглядными. Это функции mesh, surf и surfl.

Функция mesh соединяет вычисленные соседние точки поверхности графика отрезками прямых и показывает в графическом окне системы MATLAB плоскую проекцию такого объёмного "каркасно-ребристого" (по-английски зовётся wireframe mesh) тела. Вместо ранее показанного при помощи функции plot3 графика функции

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

Hidden off

Для примера рассмотрим использование функции mesh в случае построения того же графика функции

exp(- X.^2 - Y.^2)

 

Рис.4

Вызов же функции

Surf(X, Y, Z)

позволяет получить следующее изображение, представляющее собой поверхность, а не набор линий.

 

Рис.5

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

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

colormap(copper),

то есть набор цветов (colormap), соответствующий меди (copper), то после вызова функции

Surfl(X, Y, Z)

мы получим следующий график:

Рис.6

 

Убрать черные линии и добиться более лпавного света позволяет команда

Shading interp

 

<== предыдущая лекция | следующая лекция ==>
Работа с графиками в пакете Matlab. | Гора Алмыс Туу Боом


Не нашли, что искали? Воспользуйтесь поиском:

vikidalka.ru - 2015-2024 год. Все права принадлежат их авторам! Нарушение авторских прав | Нарушение персональных данных