Sliding partitions¶
SlidePartitionUp¶
Simultaneously slide and merge the partition
into
- void SlidePartitionUp(Matrix<T>& AT, Matrix<T>& A0, Matrix<T>& A1, Matrix<T>& AB, Matrix<T>& A2)¶
- void SlideLockedPartitionUp(Matrix<T>& AT, const Matrix<T>& A0, const Matrix<T>& A1, Matrix<T>& AB, const Matrix<T>& A2)¶
Templated over the datatype, T.
- void SlidePartitionUp(DistMatrix<T, U, V>& AT, DistMatrix<T, U, V>& A0, DistMatrix<T, U, V>& A1, DistMatrix<T, U, V>& AB, DistMatrix<T, U, V>& A2)¶
- void SlideLockedPartitionUp(DistMatrix<T, U, V>& AT, const DistMatrix<T, U, V>& A0, const DistMatrix<T, U, V>& A1, DistMatrix<T, U, V>& AB, const DistMatrix<T, U, V>& A2)¶
Templated over the datatype, T, and distribution scheme, (U,V).
Note that each of the above routines is meant to be used in a manner similar to the following:
SlidePartitionUp( AT, A0,
/**/ /**/
A1,
AB, A2 );
SlidePartitionDown¶
Simultaneously slide and merge the partition
into
- void SlidePartitionDown(Matrix<T>& AT, Matrix<T>& A0, Matrix<T>& A1, Matrix<T>& AB, Matrix<T>& A2)¶
- void SlideLockedPartitionDown(Matrix<T>& AT, const Matrix<T>& A0, const Matrix<T>& A1, Matrix<T>& AB, const Matrix<T>& A2)¶
Templated over the datatype, T.
- void SlidePartitionDown(DistMatrix<T, U, V>& AT, DistMatrix<T, U, V>& A0, DistMatrix<T, U, V>& A1, DistMatrix<T, U, V>& AB, DistMatrix<T, U, V>& A2)¶
- void SlideLockedPartitionDown(DistMatrix<T, U, V>& AT, const DistMatrix<T, U, V>& A0, const DistMatrix<T, U, V>& A1, DistMatrix<T, U, V>& AB, const DistMatrix<T, U, V>& A2)¶
Templated over the datatype, T, and distribution scheme, (U,V).
Note that each of the above routines is meant to be used in a manner similar to the following:
SlidePartitionDown( AT, A0,
A1,
/**/ /**/
AB, A2 );
SlidePartitionLeft¶
Simultaneously slide and merge the partition
into
- void SlidePartitionLeft(Matrix<T>& AL, Matrix<T>& AR, Matrix<T>& A0, Matrix<T>& A1, Matrix<T>& A2)¶
- void SlidePartitionLeft(DistMatrix<T, U, V>& AL, DistMatrix<T, U, V>& AR, DistMatrix<T, U, V>& A0, DistMatrix<T, U, V>& A1, DistMatrix<T, U, V>& A2)¶
Templated over the datatype, T.
- void SlideLockedPartitionLeft(Matrix<T>& AL, Matrix<T>& AR, const Matrix<T>& A0, const Matrix<T>& A1, const Matrix<T>& A2)¶
- void SlideLockedPartitionLeft(DistMatrix<T, U, V>& AL, DistMatrix<T, U, V>& AR, const DistMatrix<T, U, V>& A0, const DistMatrix<T, U, V>& A1, const DistMatrix<T, U, V>& A2)¶
Templated over the datatype, T, and distribution scheme, (U,V).
Note that each of the above routines is meant to be used in a manner similar to the following:
SlidePartitionLeft( AL, /**/ AR,
A0, /**/ A1, A2 );
SlidePartitionRight¶
Simultaneously slide and merge the partition
into
- void SlidePartitionRight(Matrix<T>& AL, Matrix<T>& AR, Matrix<T>& A0, Matrix<T>& A1, Matrix<T>& A2)¶
- void SlidePartitionRight(DistMatrix<T, U, V>& AL, DistMatrix<T, U, V>& AR, DistMatrix<T, U, V>& A0, DistMatrix<T, U, V>& A1, DistMatrix<T, U, V>& A2)¶
Templated over the datatype, T.
- void SlideLockedPartitionRight(Matrix<T>& AL, Matrix<T>& AR, const Matrix<T>& A0, const Matrix<T>& A1, const Matrix<T>& A2)¶
- void SlideLockedPartitionRight(DistMatrix<T, U, V>& AL, DistMatrix<T, U, V>& AR, const DistMatrix<T, U, V>& A0, const DistMatrix<T, U, V>& A1, const DistMatrix<T, U, V>& A2)¶
Templated over the datatype, T, and distribution scheme, (U,V).
Note that each of the above routines is meant to be used in a manner similar to the following:
SlidePartitionRight( AL, /**/ AR,
A0, A1, /**/ A2 );
SlidePartitionUpDiagonal¶
Simultaneously slide and merge the partition
into
Note that the above routines are meant to be used as:
SlidePartitionUpDiagonal( ATL, /**/ ATR, A00, /**/ A01, A02,
/*************/ /******************/
/**/ A10, /**/ A11, A12,
ABL, /**/ ABR, A20, /**/ A21, A22 );
SlidePartitionDownDiagonal¶
Simultaneously slide and merge the partition
into
Note that the above routines are meant to be used as:
SlidePartitionDownDiagonal( ATL, /**/ ATR, A00, A01, /**/ A02,
/**/ A10, A11, /**/ A12,
/*************/ /******************/
ABL, /**/ ABR, A20, A21, /**/ A22 );