lasyf_aa#

Functions

void slasyf_aa(
    const char*          uplo,
    const INT            j1,
    const INT            m,
    const INT            nb,
          f32*  restrict A,
    const INT            lda,
          INT*  restrict ipiv,
          f32*  restrict H,
    const INT            ldh,
          f32*  restrict work
);
void slasyf_aa(const char *uplo, const INT j1, const INT m, const INT nb, f32 *restrict A, const INT lda, INT *restrict ipiv, f32 *restrict H, const INT ldh, f32 *restrict work)#

SLASYF_AA factorizes a panel of a real symmetric matrix A using the Aasen’s algorithm.

The panel consists of a set of NB rows of A when UPLO is U, or a set of NB columns when UPLO is L.

In order to factorize the panel, the Aasen’s algorithm requires the last row, or column, of the previous panel. The first row, or column, of A is set to be the first row, or column, of an identity matrix, which is used to factorize the first panel.

The resulting J-th row of U, or J-th column of L, is stored in the (J-1)-th row, or column, of A (without the unit diagonals), while the diagonal and subdiagonal of A are overwritten by those of T.

Parameters

in
uplo

  • 'U': Upper triangle of A is stored

  • 'L': Lower triangle of A is stored

in
j1

The location of the first row, or column, of the panel within the submatrix of A, passed to this routine, e.g., when called by ssytrf_aa, for the first panel, j1 is 1, while for the remaining panels, j1 is 2.

in
m

The dimension of the submatrix. m>=0.

in
nb

The dimension of the panel to be factorized.

inout
A

Array of dimension (lda,m) for the first panel, while dimension (lda,m+1) for the remaining panels. On entry, A contains the last row, or column, of the previous panel, and the trailing submatrix of A to be factorized, except for the first panel, only the panel is passed. On exit, the leading panel is factorized.

in
lda

The leading dimension of the array A. lda>=max(1,m).

out
ipiv

Array of dimension m. Details of the row and column interchanges, the row and column k were interchanged with the row and column ipiv[k].

inout
H

Workspace of dimension (ldh,nb).

in
ldh

The leading dimension of the workspace H. ldh>=max(1,m).

out
work

Workspace of dimension m.

Functions

void dlasyf_aa(
    const char*          uplo,
    const INT            j1,
    const INT            m,
    const INT            nb,
          f64*  restrict A,
    const INT            lda,
          INT*  restrict ipiv,
          f64*  restrict H,
    const INT            ldh,
          f64*  restrict work
);
void dlasyf_aa(const char *uplo, const INT j1, const INT m, const INT nb, f64 *restrict A, const INT lda, INT *restrict ipiv, f64 *restrict H, const INT ldh, f64 *restrict work)#

DLASYF_AA factorizes a panel of a real symmetric matrix A using the Aasen’s algorithm.

The panel consists of a set of NB rows of A when UPLO is U, or a set of NB columns when UPLO is L.

In order to factorize the panel, the Aasen’s algorithm requires the last row, or column, of the previous panel. The first row, or column, of A is set to be the first row, or column, of an identity matrix, which is used to factorize the first panel.

The resulting J-th row of U, or J-th column of L, is stored in the (J-1)-th row, or column, of A (without the unit diagonals), while the diagonal and subdiagonal of A are overwritten by those of T.

Parameters

in
uplo

  • 'U': Upper triangle of A is stored

  • 'L': Lower triangle of A is stored

in
j1

The location of the first row, or column, of the panel within the submatrix of A, passed to this routine, e.g., when called by dsytrf_aa, for the first panel, j1 is 1, while for the remaining panels, j1 is 2.

in
m

The dimension of the submatrix. m>=0.

in
nb

The dimension of the panel to be factorized.

inout
A

Array of dimension (lda,m) for the first panel, while dimension (lda,m+1) for the remaining panels. On entry, A contains the last row, or column, of the previous panel, and the trailing submatrix of A to be factorized, except for the first panel, only the panel is passed. On exit, the leading panel is factorized.

in
lda

The leading dimension of the array A. lda>=max(1,m).

out
ipiv

Array of dimension m. Details of the row and column interchanges, the row and column k were interchanged with the row and column ipiv[k].

inout
H

Workspace of dimension (ldh,nb).

in
ldh

The leading dimension of the workspace H. ldh>=max(1,m).

out
work

Workspace of dimension m.

Functions

void clasyf_aa(
    const char*          uplo,
    const INT            j1,
    const INT            m,
    const INT            nb,
          c64*  restrict A,
    const INT            lda,
          INT*  restrict ipiv,
          c64*  restrict H,
    const INT            ldh,
          c64*  restrict work
);
void clasyf_aa(const char *uplo, const INT j1, const INT m, const INT nb, c64 *restrict A, const INT lda, INT *restrict ipiv, c64 *restrict H, const INT ldh, c64 *restrict work)#

CLASYF_AA factorizes a panel of a complex symmetric matrix A using the Aasen’s algorithm.

The panel consists of a set of NB rows of A when UPLO is U, or a set of NB columns when UPLO is L.

In order to factorize the panel, the Aasen’s algorithm requires the last row, or column, of the previous panel. The first row, or column, of A is set to be the first row, or column, of an identity matrix, which is used to factorize the first panel.

The resulting J-th row of U, or J-th column of L, is stored in the (J-1)-th row, or column, of A (without the unit diagonals), while the diagonal and subdiagonal of A are overwritten by those of T.

Parameters

in
uplo

  • 'U': Upper triangle of A is stored

  • 'L': Lower triangle of A is stored

in
j1

The location of the first row, or column, of the panel within the submatrix of A, passed to this routine, e.g., when called by csytrf_aa, for the first panel, j1 is 1, while for the remaining panels, j1 is 2.

in
m

The dimension of the submatrix. m>=0.

in
nb

The dimension of the panel to be factorized.

inout
A

Complex array of dimension (lda,m) for the first panel, while dimension (lda,m+1) for the remaining panels. On entry, A contains the last row, or column, of the previous panel, and the trailing submatrix of A to be factorized, except for the first panel, only the panel is passed. On exit, the leading panel is factorized.

in
lda

The leading dimension of the array A. lda>=max(1,m).

out
ipiv

Array of dimension m. Details of the row and column interchanges, the row and column k were interchanged with the row and column ipiv[k].

inout
H

Complex workspace of dimension (ldh,nb).

in
ldh

The leading dimension of the workspace H. ldh>=max(1,m).

out
work

Complex workspace of dimension m.

Functions

void zlasyf_aa(
    const char*          uplo,
    const INT            j1,
    const INT            m,
    const INT            nb,
          c128* restrict A,
    const INT            lda,
          INT*  restrict ipiv,
          c128* restrict H,
    const INT            ldh,
          c128* restrict work
);
void zlasyf_aa(const char *uplo, const INT j1, const INT m, const INT nb, c128 *restrict A, const INT lda, INT *restrict ipiv, c128 *restrict H, const INT ldh, c128 *restrict work)#

ZLASYF_AA factorizes a panel of a complex symmetric matrix A using the Aasen’s algorithm.

The panel consists of a set of NB rows of A when UPLO is U, or a set of NB columns when UPLO is L.

In order to factorize the panel, the Aasen’s algorithm requires the last row, or column, of the previous panel. The first row, or column, of A is set to be the first row, or column, of an identity matrix, which is used to factorize the first panel.

The resulting J-th row of U, or J-th column of L, is stored in the (J-1)-th row, or column, of A (without the unit diagonals), while the diagonal and subdiagonal of A are overwritten by those of T.

Parameters

in
uplo

  • 'U': Upper triangle of A is stored

  • 'L': Lower triangle of A is stored

in
j1

The location of the first row, or column, of the panel within the submatrix of A, passed to this routine, e.g., when called by zsytrf_aa, for the first panel, j1 is 1, while for the remaining panels, j1 is 2.

in
m

The dimension of the submatrix. m>=0.

in
nb

The dimension of the panel to be factorized.

inout
A

Complex array of dimension (lda,m) for the first panel, while dimension (lda,m+1) for the remaining panels. On entry, A contains the last row, or column, of the previous panel, and the trailing submatrix of A to be factorized, except for the first panel, only the panel is passed. On exit, the leading panel is factorized.

in
lda

The leading dimension of the array A. lda>=max(1,m).

out
ipiv

Array of dimension m. Details of the row and column interchanges, the row and column k were interchanged with the row and column ipiv[k].

inout
H

Complex workspace of dimension (ldh,nb).

in
ldh

The leading dimension of the workspace H. ldh>=max(1,m).

out
work

Complex workspace of dimension m.