### Navigation

- index
- modules |
- modules |
- next |
- previous |
- NumPy v1.5 Manual (DRAFT) »
- NumPy Reference »
- Routines »
- Masked array operations »

# numpy.ma.vander

`numpy.ma.``vander`(x, n=None)

  Generate a Van der Monde matrix.

  The columns of the output matrix are decreasing powers of the input vector. Specifically, the i-th output column is the input vector raised element-wise to the power of `N - i - 1`. Such a matrix with a geometric progression in each row is named for Alexandre-Theophile Vandermonde.

  Parameters : | x : array_like 1-D input array. N : int, optional Order of (number of columns in) the output. If N is not specified, a square array is returned (`N = len(x)`).
  Returns : | out : ndarray Van der Monde matrix of order N. The first column is `x^(N-1)`, the second `x^(N-2)` and so forth.

  Notes

  Masked values in the input array result in rows of zeros.

  Examples

      >>> x = np.array([1, 2, 3, 5])
      >>> N = 3
      >>> np.vander(x, N)
      array([[ 1,  1,  1],
             [ 4,  2,  1],
             [ 9,  3,  1],
             [25,  5,  1]])

      >>> np.column_stack([x**(N-1-i) for i in range(N)])
      array([[ 1,  1,  1],
             [ 4,  2,  1],
             [ 9,  3,  1],
             [25,  5,  1]])

      >>> x = np.array([1, 2, 3, 5])
      >>> np.vander(x)
      array([[  1,   1,   1,   1],
             [  8,   4,   2,   1],
             [ 27,   9,   3,   1],
             [125,  25,   5,   1]])

  The determinant of a square Vandermonde matrix is the product of the differences between the values of the input vector:

      >>> np.linalg.det(np.vander(x))
      48.000000000000043
      >>> (5-3)*(5-2)*(5-1)*(3-2)*(3-1)*(2-1)
      48

### Navigation

- index
- modules |
- modules |
- next |
- previous |
- NumPy v1.5 Manual (DRAFT) »
- NumPy Reference »
- Routines »
- Masked array operations »