## NDGRID Generate N-Dimensional Grid

Section: Array Generation and Manipulations

### Usage

Generates N-dimensional grids, each of which is constant in all but one dimension. The syntax for its use is either[y1, y2, ..., ym] = ndgrid(x1, x2, ..., xn)

where `m <= n`

or

[y1, y2, ..., ym] = ndgrid(x1)

which is equivalent to the first form, with `x1=x2=...=xn`

. Each
output `yi`

is an `n`

-dimensional array, with values such that

`ndgrid`

is useful for evaluating multivariate functionals over a
range of arguments. It is a generalization of `meshgrid`

, except
that `meshgrid`

transposes the dimensions corresponding to the
first two arguments to better fit graphical applications.

### Example

Here is a simple`ndgrid`

example
--> [a,b] = ndgrid(1:2,3:5) a = 1 1 1 2 2 2 b = 3 4 5 3 4 5 --> [a,b,c] = ndgrid(1:2,3:5,0:1) a = (:,:,1) = 1 1 1 2 2 2 (:,:,2) = 1 1 1 2 2 2 b = (:,:,1) = 3 4 5 3 4 5 (:,:,2) = 3 4 5 3 4 5 c = (:,:,1) = 0 0 0 0 0 0 (:,:,2) = 1 1 1 1 1 1

Here we use the second form

--> [a,b,c] = ndgrid(1:3) Warning: Newly defined variable nargin shadows a function of the same name. Use clear nargin to recover access to the function a = (:,:,1) = 1 1 1 2 2 2 3 3 3 (:,:,2) = 1 1 1 2 2 2 3 3 3 (:,:,3) = 1 1 1 2 2 2 3 3 3 b = (:,:,1) = 1 2 3 1 2 3 1 2 3 (:,:,2) = 1 2 3 1 2 3 1 2 3 (:,:,3) = 1 2 3 1 2 3 1 2 3 c = (:,:,1) = 1 1 1 1 1 1 1 1 1 (:,:,2) = 2 2 2 2 2 2 2 2 2 (:,:,3) = 3 3 3 3 3 3 3 3 3