|
| bool | mptensor::is_no_transpose (const Axes &axes, const Axes &axes_map, size_t rank) |
| |
| bool | mptensor::debug::check_total_size (const Shape &s1, const Shape &s2) |
| |
| bool | mptensor::debug::check_extend (const Shape &s_old, const Shape &s_new) |
| |
| bool | mptensor::debug::check_transpose_axes (const Axes &axes, size_t rank) |
| |
| bool | mptensor::debug::check_svd_axes (const Axes &axes_row, const Axes &axes_col, size_t rank) |
| |
| bool | mptensor::debug::check_trace_axes (const Axes &axes_1, const Axes &axes_2, size_t rank) |
| |
| bool | mptensor::debug::check_trace_axes (const Axes &axes_a, const Axes &axes_b, const Shape &shape_a, const Shape &shape_b) |
| |
| bool | mptensor::debug::check_contract_axes (const Axes &axes_1, const Axes &axes_2, size_t rank) |
| |
| bool | mptensor::debug::check_square (const Shape &shape, size_t urank) |
| |
|
| template<typename MatrixType > |
| Tensor< MatrixType > | mptensor::transpose (Tensor< MatrixType > T, const Axes &axes) |
| | Transposition of tensor with lazy evaluation.
|
| |
| template<typename MatrixType > |
| Tensor< MatrixType > | mptensor::transpose (const Tensor< MatrixType > &T, const Axes &axes, size_t urank_new) |
| | Transposition of tensor without lazy evaluation.
|
| |
| template<typename MatrixType > |
| Tensor< MatrixType > | mptensor::reshape (const Tensor< MatrixType > &T, const Shape &shape_new) |
| | Change the shape of tensor.
|
| |
| template<typename MatrixType > |
| Tensor< MatrixType > | mptensor::slice (const Tensor< MatrixType > &T, size_t n_axes, size_t i_begin, size_t i_end) |
| | Slice a tensor.
|
| |
| template<typename MatrixType > |
| Tensor< MatrixType > | mptensor::slice (const Tensor< MatrixType > &T, const Index &index_begin, const Index &index_end) |
| | Slice a tensor.
|
| |
| template<typename MatrixType > |
| Tensor< MatrixType > | mptensor::extend (const Tensor< MatrixType > &T, const Shape &shape_new) |
| | Extend the size of a tensor.
|
| |
|
| template<typename MatrixType > |
| MatrixType::value_type | mptensor::trace (const Tensor< MatrixType > &M) |
| | Trace of matrix (rank-2 tensor)
|
| |
| template<typename MatrixType > |
| MatrixType::value_type | mptensor::trace (const Tensor< MatrixType > &T, const Axes &axes_1, const Axes &axes_2) |
| | Full trace of tensor.
|
| |
| template<typename MatrixType > |
| MatrixType::value_type | mptensor::trace (const Tensor< MatrixType > &A, const Tensor< MatrixType > &B, const Axes &axes_a, const Axes &axes_b) |
| | Full contraction of two tensors.
|
| |
| template<typename MatrixType > |
| Tensor< MatrixType > | mptensor::contract (const Tensor< MatrixType > &T, const Axes &axes_1, const Axes &axes_2) |
| | Partial trace of tensor.
|
| |
| template<typename MatrixType > |
| Tensor< MatrixType > | mptensor::kron (const Tensor< MatrixType > &a, const Tensor< MatrixType > &b) |
| | Compute the Kronecker product.
|
| |
| template<typename MatrixType > |
| Tensor< MatrixType > | mptensor::tensordot (const Tensor< MatrixType > &a, const Tensor< MatrixType > &b, const Axes &axes_a, const Axes &axes_b) |
| | Compute tensor dot product.
|
| |
|
| template<typename MatrixType > |
| int | mptensor::svd (const Tensor< MatrixType > &a, std::vector< double > &s) |
| | Singular value decomposition for rank-2 tensor (matrix)
|
| |
| template<typename MatrixType > |
| int | mptensor::svd (const Tensor< MatrixType > &a, Tensor< MatrixType > &u, std::vector< double > &s, Tensor< MatrixType > &vt) |
| | Singular value decomposition for rank-2 tensor (matrix)
|
| |
| template<typename MatrixType > |
| int | mptensor::svd (const Tensor< MatrixType > &a, const Axes &axes_row, const Axes &axes_col, std::vector< double > &s) |
| | Singular value decomposition for tensor.
|
| |
| template<typename MatrixType > |
| int | mptensor::svd (const Tensor< MatrixType > &a, const Axes &axes_row, const Axes &axes_col, Tensor< MatrixType > &u, std::vector< double > &s, Tensor< MatrixType > &vt) |
| | Singular value decomposition for tensor.
|
| |
| template<typename MatrixType > |
| int | mptensor::psvd (const Tensor< MatrixType > &a, std::vector< double > &s, const size_t target_rank) |
| | Partial SVD for rank-2 tensor (matrix)
|
| |
| template<typename MatrixType > |
| int | mptensor::psvd (const Tensor< MatrixType > &a, Tensor< MatrixType > &u, std::vector< double > &s, Tensor< MatrixType > &vt, const size_t target_rank) |
| | Partial SVD for rank-2 tensor (matrix)
|
| |
| template<typename MatrixType > |
| int | mptensor::psvd (const Tensor< MatrixType > &a, const Axes &axes_row, const Axes &axes_col, std::vector< double > &s, const size_t target_rank) |
| | Partial SVD for tensor.
|
| |
| template<typename MatrixType > |
| int | mptensor::psvd (const Tensor< MatrixType > &a, const Axes &axes_row, const Axes &axes_col, Tensor< MatrixType > &u, std::vector< double > &s, Tensor< MatrixType > &vt, const size_t target_rank) |
| | Partial SVD for tensor.
|
| |
| template<typename MatrixType > |
| int | mptensor::qr (const Tensor< MatrixType > &a, Tensor< MatrixType > &q, Tensor< MatrixType > &r) |
| | QR decomposition of matrix (rank-2 tensor)
|
| |
| template<typename MatrixType > |
| int | mptensor::qr (const Tensor< MatrixType > &a, const Axes &axes_row, const Axes &axes_col, Tensor< MatrixType > &q, Tensor< MatrixType > &r) |
| | QR decomposition of tensor.
|
| |
| template<typename MatrixType > |
| int | mptensor::eigh (const Tensor< MatrixType > &a, std::vector< double > &eigval, Tensor< MatrixType > &eigvec) |
| |
| template<typename MatrixType > |
| int | mptensor::eigh (const Tensor< MatrixType > &a, std::vector< double > &eigval) |
| |
| template<typename MatrixType > |
| int | mptensor::eigh (const Tensor< MatrixType > &a, const Axes &axes_row, const Axes &axes_col, std::vector< double > &eigval, Tensor< MatrixType > &eigvec) |
| |
| template<typename MatrixType > |
| int | mptensor::eigh (const Tensor< MatrixType > &a, const Axes &axes_row, const Axes &axes_col, std::vector< double > &w) |
| | Compute the eigenvalues of a complex Hermitian or real symmetric tensor.
|
| |
| template<typename MatrixType > |
| int | mptensor::eigh (const Tensor< MatrixType > &a, const Axes &axes_row_a, const Axes &axes_col_a, const Tensor< MatrixType > &b, const Axes &axes_row_b, const Axes &axes_col_b, std::vector< double > &eigval, Tensor< MatrixType > &eigvec) |
| |
| template<typename MatrixType > |
| int | mptensor::eig (const Tensor< MatrixType > &a, std::vector< complex > &w, typename Tensor< MatrixType >::template rebind< complex > &z) |
| | Compute the eigenvalues and eigenvectors of a general matrix (rank-2 tensor)
|
| |
| template<typename MatrixType > |
| int | mptensor::eig (const Tensor< MatrixType > &a, std::vector< complex > &w) |
| | Compute only the eigenvalues of a general matrix (rank-2 tensor)
|
| |
| template<typename MatrixType > |
| int | mptensor::eig (const Tensor< MatrixType > &a, const Axes &axes_row, const Axes &axes_col, std::vector< complex > &w, typename Tensor< MatrixType >::template rebind< complex > &z) |
| | Compute the eigenvalues and eigenvectors of a general tensor.
|
| |
| template<typename MatrixType > |
| int | mptensor::eig (const Tensor< MatrixType > &a, const Axes &axes_row, const Axes &axes_col, std::vector< complex > &w) |
| | Compute the eigenvalues of a general tensor.
|
| |
|
| template<typename MatrixType > |
| int | mptensor::solve (const Tensor< MatrixType > &a, const std::vector< typename MatrixType::value_type > &b, std::vector< typename MatrixType::value_type > &x) |
| | Solve linear equation \( A\vec{x}=\vec{b}\).
|
| |
| template<typename MatrixType > |
| int | mptensor::solve (const Tensor< MatrixType > &a, const Tensor< MatrixType > &b, Tensor< MatrixType > &x) |
| | Solve linear equation \( AX=B\).
|
| |
| template<typename MatrixType > |
| int | mptensor::solve (const Tensor< MatrixType > &a, const Tensor< MatrixType > &b, Tensor< MatrixType > &x, const Axes &axes_row_a, const Axes &axes_col_a, const Axes &axes_row_b, const Axes &axes_col_b) |
| | Solve linear equation \( AX=B\).
|
| |
|
| template<typename MatrixType > |
| Tensor< MatrixType > | mptensor::operator+ (Tensor< MatrixType > rhs) |
| | Unary plus.
|
| |
| template<typename MatrixType > |
| Tensor< MatrixType > | mptensor::operator- (Tensor< MatrixType > rhs) |
| | Unary minus.
|
| |
| template<typename MatrixType > |
| Tensor< MatrixType > | mptensor::operator+ (Tensor< MatrixType > lhs, const Tensor< MatrixType > &rhs) |
| | Addition.
|
| |
| template<typename MatrixType > |
| Tensor< MatrixType > | mptensor::operator- (Tensor< MatrixType > lhs, const Tensor< MatrixType > &rhs) |
| | Subtraction.
|
| |
| template<typename MatrixType , typename D > |
| Tensor< MatrixType > | mptensor::operator* (Tensor< MatrixType > lhs, D rhs) |
| | Tensor-scalar multiplication.
|
| |
| template<typename MatrixType , typename D > |
| Tensor< MatrixType > | mptensor::operator/ (Tensor< MatrixType > lhs, D rhs) |
| | Scalar division.
|
| |
| template<typename MatrixType , typename D > |
| Tensor< MatrixType > | mptensor::operator* (D lhs, Tensor< MatrixType > rhs) |
| | Scalar-tensor multiplication.
|
| |
|
| template<typename MatrixType > |
| double | mptensor::max (const Tensor< MatrixType > &t) |
| | Return the maximum element. For complex, same as max_abs().
|
| |
| template<typename MatrixType > |
| double | mptensor::min (const Tensor< MatrixType > &t) |
| | Return the minimum element. For complex, same as min_abs().
|
| |
| template<typename MatrixType > |
| double | mptensor::max_abs (const Tensor< MatrixType > &t) |
| | Return maximum of the absolute value of an element.
|
| |
| template<typename MatrixType > |
| double | mptensor::min_abs (const Tensor< MatrixType > &t) |
| | Return minimum of the absolute value of an element.
|
| |
|
| template<typename MatrixType > |
| std::ostream & | mptensor::operator<< (std::ostream &out, const Tensor< MatrixType > &t) |
| | Output elements of tensor in numpy style.
|
| |