Swap¶
Entire matrices¶
The following routines replace \(A\) and \(B\) with each other, their transpose, or their adjoint.
C++ API¶
-
void
Swap(Orientation orientation, Matrix<T> &A, Matrix<T> &B)¶
-
void
Swap(Orientation orientation, AbstractDistMatrix<T> &A, AbstractDistMatrix<T> &B)¶
C API¶
-
ElError
ElSwap_i(ElOrientation orientation, ElMatrix_i X, ElMatrix_i Y)¶
-
ElError
ElSwap_s(ElOrientation orientation, ElMatrix_s X, ElMatrix_s Y)¶
-
ElError
ElSwap_d(ElOrientation orientation, ElMatrix_d X, ElMatrix_d Y)¶
-
ElError
ElSwap_c(ElOrientation orientation, ElMatrix_c X, ElMatrix_c Y)¶
-
ElError
ElSwap_z(ElOrientation orientation, ElMatrix_z X, ElMatrix_z Y)¶
-
ElError
ElSwapDist_i(ElOrientation orientation, ElDistMatrix_i X, ElDistMatrix_i Y)¶
-
ElError
ElSwapDist_s(ElOrientation orientation, ElDistMatrix_s X, ElDistMatrix_s Y)¶
-
ElError
ElSwapDist_d(ElOrientation orientation, ElDistMatrix_d X, ElDistMatrix_d Y)¶
-
ElError
ElSwapDist_c(ElOrientation orientation, ElDistMatrix_c X, ElDistMatrix_c Y)¶
-
ElError
ElSwapDist_z(ElOrientation orientation, ElDistMatrix_z X, ElDistMatrix_z Y)¶
Pairs of rows¶
Swap rows to and from in the matrix.
C++ API¶
-
void
RowSwap(AbstractDistMatrix<T> &A, Int to, Int from)¶
C API¶
Pairs of columns¶
Swap columns to and from in the matrix.
C++ API¶
-
void
ColSwap(AbstractDistMatrix<T> &A, Int to, Int from)¶
C API¶
Symmetric/Hermitian swap¶
Symmetrically permute the to and from degrees of freedom within the implicitly symmetric (Hermitian) matrix \(A\) which stores its data in the specified triangle.
C++ API¶
-
void
SymmetricSwap(UpperOrLower uplo, Matrix<T> &A, Int to, Int from, bool conjugate = false)¶
-
void
SymmetricSwap(UpperOrLower uplo, AbstractDistMatrix<T> &A, Int to, Int from, bool conjugate = false)¶
-
void
HermitianSwap(UpperOrLower uplo, Matrix<T> &A, Int to, Int from)¶
-
void
HermitianSwap(UpperOrLower uplo, AbstractDistMatrix<T> &A, Int to, Int from)¶
C API¶
-
ElError
ElSymmetricSwap_i(ElUpperOrLower uplo, ElMatrix_i A, ElInt to, ElInt from)¶
-
ElError
ElSymmetricSwap_s(ElUpperOrLower uplo, ElMatrix_s A, ElInt to, ElInt from)¶
-
ElError
ElSymmetricSwap_d(ElUpperOrLower uplo, ElMatrix_d A, ElInt to, ElInt from)¶
-
ElError
ElSymmetricSwap_c(ElUpperOrLower uplo, ElMatrix_c A, ElInt to, ElInt from)¶
-
ElError
ElSymmetricSwap_z(ElUpperOrLower uplo, ElMatrix_z A, ElInt to, ElInt from)¶
-
ElError
ElSymmetricSwapDist_i(ElUpperOrLower uplo, ElDistMatrix_i A, ElInt to, ElInt from)¶
-
ElError
ElSymmetricSwapDist_s(ElUpperOrLower uplo, ElDistMatrix_s A, ElInt to, ElInt from)¶
-
ElError
ElSymmetricSwapDist_d(ElUpperOrLower uplo, ElDistMatrix_d A, ElInt to, ElInt from)¶
-
ElError
ElSymmetricSwapDist_c(ElUpperOrLower uplo, ElDistMatrix_c A, ElInt to, ElInt from)¶
-
ElError
ElSymmetricSwapDist_z(ElUpperOrLower uplo, ElDistMatrix_z A, ElInt to, ElInt from)¶
-
ElError
ElHermitianSwap_c(ElUpperOrLower uplo, ElMatrix_c A, ElInt to, ElInt from)¶
-
ElError
ElHermitianSwap_z(ElUpperOrLower uplo, ElMatrix_z A, ElInt to, ElInt from)¶
-
ElError
ElHermitianSwapDist_c(ElUpperOrLower uplo, ElDistMatrix_c A, ElInt to, ElInt from)¶
-
ElError
ElHermitianSwapDist_z(ElUpperOrLower uplo, ElDistMatrix_z A, ElInt to, ElInt from)¶
