Meshgrid matlab что это
Перейти к содержимому

Meshgrid matlab что это

Meshgrid matlab что это

Generate X and Y matrices for three-dimensional plots

Description

[X,Y] = meshgrid(x,y) transforms the domain specified by vectors x and y into arrays X and Y , which can be used to evaluate functions of two variables and three-dimensional mesh/surface plots. The rows of the output array X are copies of the vector x ; columns of the output array Y are copies of the vector y .

[X,Y] = meshgrid(x) is the same as [X,Y] = meshgrid(x,x) .

[X,Y,Z] = meshgrid(x,y,z) produces three-dimensional arrays used to evaluate functions of three variables and three-dimensional volumetric plots.

The meshgrid function is similar to ndgrid except that the order of the first two input and output arguments is switched. That is, the statement

produces the same result as

Because of this, meshgrid is better suited to problems in two- or three-dimensional Cartesian space, while ndgrid is better suited to multidimensional problems that aren’t spatially based.

meshgrid is limited to two- or three-dimensional Cartesian space.

The following example shows how to use meshgrid to create a surface plot of a function.

Иллюстрированный самоучитель по MatLab

Трехмерные поверхности обычно описываются функцией двух переменных z(x, у). Специфика построения трехмерных графиков требует не просто задания ряда значений х и у, то есть векторов х и у. Она требует определения для X и Y двумерных массивов – матриц. Для создания таких массивов служит функция meshgrid. В основном она используется совместно с функциями построения графиков трехмерных поверхностей. Функция meshgrid записывается в следующих формах:

  • [X.Y] = meshgrid(x) – аналогична [X.Y] = meshgrid(x.x);
  • [X.Y.Z] = meshgrid(x.y,z) – возвращает трехмерные массивы, используемые для вычисления функций трех переменных и построения трехмерных графиков;
  • [X.Y] = meshgrid(x.y) – преобразует область, заданную векторами х и у, в массивы X и Y, которые могут быть использованы для вычисления функции двух переменных и построения трехмерных графиков. Строки выходного массива X являются копиями вектора х; а столбцы Y – копиями вектора у.

Приведем еще один пример применения функции meshgrid:

Такой вызов функции позволяет задать опорную плоскость для построения трехмерной поверхности при изменении от -2 до 2 с шагом 0.2. Дополнительные примеры применения функции meshgrid будут приведены далее при описании соответствующих команд. Рекомендуется ознакомиться с также командами surf и slice (ломтик).

Функция ndgrid является многомерным аналогом функции meshgrid:

meshgrid

[ X , Y ] = meshgrid( x , y ) возвращает 2D декартовы координаты на основе координат, содержавшихся в векторах x и y . X является матрицей, где каждая строка является копией x , и Y является матрицей, где каждый столбец является копией y . Сетка, представленная координатами X и Y , имеет строки length(y) и столбцы length(x) .

[ X , Y ] = meshgrid( x ) совпадает с [X,Y] = meshgrid(x,x) , возвращая квадратные декартовы координаты с размером сетки length(x) -by- length(x) .

[ X , Y , Z ] = meshgrid( x , y , z ) возвращает 3-D декартовы координаты, заданные векторами x , y и z . Сетка, представленная X , Y и Z , имеет размер length(y) -by-length(x)-by- length(z) .

[ X , Y , Z ] = meshgrid( x ) совпадает с [X,Y,Z] = meshgrid(x,x,x) , возвращая 3-D декартовы координаты с размером сетки length(x) -by-length(x)-by- length(x) .

Примеры

2D Сетка

Создайте 2D декартовы координаты с x-координатами , заданными векторным x и y-координатами , заданными векторным y .

Выполните выражение x 2 + y 2 по 2D сетке.

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

Создайте 2D сетку с однородно расположенными с интервалами x-координатами и y-координатами в интервале [-2,2].

Оцените и постройте функцию f ( x , y ) = x e — x 2 — y 2 по 2D сетке.

Начиная в R2016b, не всегда необходимо создать сетку прежде, чем действовать по нему. Например, вычисление выражения x e — x 2 — y 2 неявно расширяет векторы x и y . Для получения дополнительной информации о неявном расширении см. Массив по сравнению Матричные операции.

3-D Сетка

Создайте 3-D декартовы координаты из x- , y- , и z-координаты , заданные в интервале [0,6], и выполните выражение x 2 + y 2 + z 2 .

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

Используйте синтаксис с одним входом, чтобы сгенерировать однородно расположенную с интервалами 3-D сетку на основе координат, заданных в x . Новая сетка формирует куб узлов решетки.

Входные параметры

x x-координаты точек
вектор

x-координаты точек, заданных как вектор.

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

y y-координаты точек
вектор

y-координаты точек, заданных как вектор.

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

z z-координаты точек
вектор

z-координаты точек, заданных как вектор.

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Выходные аргументы

X x-координаты по сетке
2D или трехмерный массив

x-координаты по сетке, возвращенной как 2D (два входных параметров) или трехмерный массив (три входных параметров).

Y y-координаты по сетке
2D или трехмерный массив

y-координаты по сетке, возвращенной как 2D (два входных параметров) или трехмерный массив (три входных параметров).

Z z-координаты по сетке
Трехмерный массив

z-координаты по сетке, возвращенной как трехмерный массив.

Советы

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

Расширенные возможности

Генерация кода C/C++
Генерация кода C и C++ с помощью MATLAB® Coder™.

Массивы графического процессора
Ускорьте код путем работы графического процессора (GPU) с помощью Parallel Computing Toolbox™.

Указания и ограничения по применению:

Входные параметры должны быть с плавающей точкой двойной или один.

Для получения дополнительной информации смотрите функции MATLAB Выполнения на графическом процессоре (Parallel Computing Toolbox).

Распределенные массивы
Большие массивы раздела через объединенную память о вашем кластере с помощью Parallel Computing Toolbox™.

Указания и ограничения по применению:

Входные параметры должны быть с плавающей точкой двойной или один.

Для получения дополнительной информации смотрите функции MATLAB Выполнения с Распределенными Массивами (Parallel Computing Toolbox).

Смотрите также

Представлено до R2006a
Документация MATLAB
Поддержка

© 1994-2019 The MathWorks, Inc.

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

2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.

3. Сохраняйте структуру оригинального текста — например, не разбивайте одно предложение на два.

4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.

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

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *