Главная Случайная страница


Полезное:

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


Категории:

АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника






Функции meshgrid, surf и mesh





Обращение к функции meshgrid имеет вид:

[X, Y [Z]] = meshgrid(x, y [z])

здесь (x, y [z]) -массивы 2 (3) исходных параметров X, Y (Z), указываемые через запятую;

[X, Y [Z]] -матрицы в случае 2 и массивы в случае 3 входных величин.

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

Таким образом, mesh является полным аналогом функции surf со значением параметров Сolor mode=индекс белого цвета в текущей палитре цветов и Сolor flag=0.

Обращение к функциям имеет вид:

surf([X,Y],Z,[color,keyn=valuen])

mesh([X,Y],Z,[color,])

здесь

X,Y - массивы, задающие прямоугольную сетку;

Z - матрица значений функции;

color - матрица действительных чисел, устанавливающих цвет для каждого узла сети;

keyn=valuen - последовательность значений свойств графика

key1=value1, key2=value2,..., keyn=valuen, определяющих его внешний вид.

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

Пример 5. Построить график функции , где с помощью команды mesh,

C помощью команды meshgrid создадим прямоугольную сетку. Здесь −2:2 определяет положение прямых, параллельных оси , а −3:3 оси .

[x y]=meshgrid(-2:2,-3:3) y = - 3. - 3. - 3. - 3. - 3. - 2. - 2. - 2. - 2. - 2. - 1. - 1. - 1. - 1. - 1. 0. 0. 0. 0. 0. 1. 1. 1. 1. 1. 2. 2. 2. 2. 2. 3. 3. 3. 3. 3. x = - 2. - 1. 0. 1. 2. - 2. - 1. 0. 1. 2. - 2. - 1. 0. 1. 2. - 2. - 1. 0. 1. 2. - 2. - 1. 0. 1. 2. - 2. - 1. 0. 1. 2. - 2. - 1. 0. 1. 2.

После формирования сетки вычислим значение z во всех узлах

z=5*y.^2-x.^2 z = 41. 44. 45. 44. 41. 16. 19. 20. 19. 16. 1. 4. 5. 4. 1. - 4. - 1. 0. - 1. - 4. 1. 4. 5. 4. 1. 16. 19. 20. 19. 16. 41. 44. 45. 44. 41.

Обратимся к функции mesh для построения графика

mesh(x,y,z);

Программа будет иметь вид:

[x y]=meshgrid(-2:2,-3:3);z=5*y.^2-x.^2;mesh(x,y,z);

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

Пример 6. Построить график функции с помощью команды surf.

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

Далее вычисляем значения функции Z и вызываем surf для построения поверхности.

[x y]=meshgrid(-2:0.1:2,-3:0.1:3);z=5*y.^2-x.^2;surf(x,y,z)

Пример 7. Построить график системы функций:

Сформируем плотную прямоугольную сетку с помощью команды meshgrid.

Пусть и .

Вычислим значения функций во всех узлах сетки.

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

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

[x y]=meshgrid(-2:0.2:2,-2:0.2:2);z=3*x.^2+4*y.^2-1;z1=-3*x.^2-4*y.^2-1;surf(x,y,z);mesh(x,y,z1);

Date: 2015-07-27; view: 2121; Нарушение авторских прав; Помощь в написании работы --> СЮДА...



mydocx.ru - 2015-2024 year. (0.006 sec.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав - Пожаловаться на публикацию