mindspore.ops.Eig
- class mindspore.ops.Eig(compute_v=False)[source]
Computes the eigenvalues and eigenvectors of a square matrix(batch square matrices).
- Parameters
compute_v (bool, optional) – If True, compute both eigenvalues and eigenvectors; If False, just eigenvalues will be computed. Default: False.
- Inputs:
x (Tensor) - Square matrices of shape \((*, N, N)\), with float32, float64, complex64 or complex128 data type.
- Outputs:
eigen_values (Tensor) - Shape \((*, N)\). Each inner most vector represents eigenvalues of the corresponding matrix. The eigenvalues may not have an order.
eigen_vectors (Tensor) - If compute_v is False, it’s an empty tensor. Otherwise, this tensor has shape \((*, N, N)\), whose columns represent normalized (unit length) eigenvectors of corresponding eigenvalues.
- Raises
TypeError – If compute_v is not a bool.
TypeError – If dtype of x is not one of: float64, float32, complex64 or complex128.
TypeError – If x is not a Tensor.
ValueError – If x is not a square(batch squares).
- Supported Platforms:
Ascend
CPU
Examples
>>> input_x = Tensor(np.array([[1.0, 0.0], [0.0, 2.0]]), mindspore.float32) >>> eig = ops.Eig(compute_v=True) >>> u, v = eig(input_x) >>> print(u) [1.+0.j 2.+0.j] >>> print(v) [[1.+0.j 0.+0.j] [0.+0.j 1.+0.j]]