ドキュメンテーション

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

ndgrid

N 次元空間での四角形のグリッド

構文

[X1,X2,...,Xn] = ndgrid(x1,x2,...,xn)
[X1,X2,...,Xn] = ndgrid(x1)

説明

[X1,X2,...,Xn] = ndgrid(x1,x2,...,xn) は、グリッド ベクトル x1,x2,...,xn を複製して、n 次元のフル グリッドを生成します。

[X1,X2,...,Xn] = ndgrid(x1) は、すべての次元に対して使用する 1 つのグリッド ベクトル x1 を指定します。指定する出力引数の数により、出力の次元 n が決定されます。

すべて折りたたむ

ベクトル [1 3 5 7 9 11 13 15 17 19] および [2 4 6 8 10 12] から 2 次元グリッドを作成します。

[X,Y] = ndgrid(1:2:19,2:2:12)
X = 

     1     1     1     1     1     1
     3     3     3     3     3     3
     5     5     5     5     5     5
     7     7     7     7     7     7
     9     9     9     9     9     9
    11    11    11    11    11    11
    13    13    13    13    13    13
    15    15    15    15    15    15
    17    17    17    17    17    17
    19    19    19    19    19    19

Y = 

     2     4     6     8    10    12
     2     4     6     8    10    12
     2     4     6     8    10    12
     2     4     6     8    10    12
     2     4     6     8    10    12
     2     4     6     8    10    12
     2     4     6     8    10    12
     2     4     6     8    10    12
     2     4     6     8    10    12
     2     4     6     8    10    12

関数

をグリッド定義域

および で評価します。

この定義域で値のグリッドを作成します。

[X1,X2] = ndgrid(-2:.2:2);

この定義域で関数を評価します。

Z = X1 .* exp(-X1.^2 - X2.^2);

関数のメッシュ プロットを生成します。

mesh(X1,X2,Z)

R2016b 以降のリリースの場合、このタスクでは ndgrid を使用する必要はありません。代わりに、以下のコマンドによる暗黙的な拡張を使用してグリッドを作成することができます。

x = -2:.2:2;

Z1 = x.' .* exp(-(x.').^2 - x.^2);

2 次元グリッドを作成し、このグリッド上で関数値を計算します。割り当てられた値の間に内挿して、グリッドを調整します。

の範囲内で、 の粗いグリッドを作成します。

[X,Y] = ndgrid(-5:0.5:5);

グリッド上で関数値を計算し、この関数をプロットします。

f = sin(X.^2) * cos(Y.^2);
surf(X,Y,f)

調整されたグリッドを使用して点の間に内挿し、結果をプロットします。

[X1,Y1] = ndgrid(-5:0.125:5);
F = interpn(X,Y,f,X1,Y1,'spline');
surf(X1,Y1,F)

入力引数

すべて折りたたむ

グリッド ベクトル。各次元のグリッド座標を含むベクトルとして指定します。グリッド ベクトルは暗黙的にグリッドを定義します。たとえば、2 次元の場合は次のようになります。

データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64
複素数のサポート: あり

出力引数

すべて折りたたむ

フル グリッド表現。個別の配列として返されます。出力配列 Xi のそれぞれについて、i 番目の次元にグリッド ベクトル xi のコピーが含まれます。

ヒント

  • 関数 ndgridmeshgrid と類似しています。ただし、ndgrid は 1 次元から N 次元までサポートしていますが、meshgrid は 2 次元と 3 次元に限られています。

    各関数で生成される座標は同じですが、最初の 2 つの次元における出力配列の形状は異なります。長さがそれぞれ MN および P であるグリッド ベクトル x1x2 および x3 では、コマンド ndgrid(x1,x2)MN 列の配列を出力し、meshgrid(x1,x2)NM 列の配列を出力します。

    同様に、ndgrid(x1,x2,x3)M × N × P の配列を出力し、meshgrid(x1,x2,x3)N × M × P の配列を出力します。

拡張機能

C/C++ コード生成
MATLAB® Coder™ を使用して C および C++ コードを生成します。

R2006a より前に導入

この情報は役に立ちましたか?