lapmr#

Functions

void slapmr(
    const INT           forwrd,
    const INT           m,
    const INT           n,
          f32* restrict X,
    const INT           ldx,
          INT* restrict K
);
void slapmr(const INT forwrd, const INT m, const INT n, f32 *restrict X, const INT ldx, INT *restrict K)#

SLAPMR rearranges the rows of the M by N matrix X as specified by the permutation K(1),K(2),…,K(M) of the integers 1,…,M.

If FORWRD = 1, forward permutation:

 X(K(I),*) is moved X(I,*) for I = 1,2,...,M.
If FORWRD = 0, backward permutation:
 X(I,*) is moved to X(K(I),*) for I = 1,2,...,M.

Parameters

in
forwrd

= 1: forward permutation = 0: backward permutation

in
m

The number of rows of the matrix X. m >= 0.

in
n

The number of columns of the matrix X. n >= 0.

inout
X

Double precision array, dimension (ldx, n). On entry, the M by N matrix X. On exit, X contains the permuted matrix X.

in
ldx

The leading dimension of the array X, ldx >= max(1, m).

inout
K

Integer array, dimension (m). On entry, K contains the permutation vector (0-based indices). K is used as internal workspace, but reset to its original value on output.

Functions

void dlapmr(
    const INT           forwrd,
    const INT           m,
    const INT           n,
          f64* restrict X,
    const INT           ldx,
          INT* restrict K
);
void dlapmr(const INT forwrd, const INT m, const INT n, f64 *restrict X, const INT ldx, INT *restrict K)#

DLAPMR rearranges the rows of the M by N matrix X as specified by the permutation K(1),K(2),…,K(M) of the integers 1,…,M.

If FORWRD = 1, forward permutation:

 X(K(I),*) is moved X(I,*) for I = 1,2,...,M.
If FORWRD = 0, backward permutation:
 X(I,*) is moved to X(K(I),*) for I = 1,2,...,M.

Parameters

in
forwrd

= 1: forward permutation = 0: backward permutation

in
m

The number of rows of the matrix X. m >= 0.

in
n

The number of columns of the matrix X. n >= 0.

inout
X

Double precision array, dimension (ldx, n). On entry, the M by N matrix X. On exit, X contains the permuted matrix X.

in
ldx

The leading dimension of the array X, ldx >= max(1, m).

inout
K

Integer array, dimension (m). On entry, K contains the permutation vector (0-based indices). K is used as internal workspace, but reset to its original value on output.

Functions

void clapmr(
    const INT           forwrd,
    const INT           m,
    const INT           n,
          c64* restrict X,
    const INT           ldx,
          INT* restrict K
);
void clapmr(const INT forwrd, const INT m, const INT n, c64 *restrict X, const INT ldx, INT *restrict K)#

CLAPMR rearranges the rows of the M by N matrix X as specified by the permutation K(1),K(2),…,K(M) of the integers 1,…,M.

If FORWRD = 1, forward permutation:

 X(K(I),*) is moved X(I,*) for I = 1,2,...,M.
If FORWRD = 0, backward permutation:
 X(I,*) is moved to X(K(I),*) for I = 1,2,...,M.

Parameters

in
forwrd

= 1: forward permutation = 0: backward permutation

in
m

The number of rows of the matrix X. m >= 0.

in
n

The number of columns of the matrix X. n >= 0.

inout
X

Single complex array, dimension (ldx, n). On entry, the M by N matrix X. On exit, X contains the permuted matrix X.

in
ldx

The leading dimension of the array X, ldx >= max(1, m).

inout
K

Integer array, dimension (m). On entry, K contains the permutation vector (0-based indices). K is used as internal workspace, but reset to its original value on output.

Functions

void zlapmr(
    const INT            forwrd,
    const INT            m,
    const INT            n,
          c128* restrict X,
    const INT            ldx,
          INT*  restrict K
);
void zlapmr(const INT forwrd, const INT m, const INT n, c128 *restrict X, const INT ldx, INT *restrict K)#

ZLAPMR rearranges the rows of the M by N matrix X as specified by the permutation K(1),K(2),…,K(M) of the integers 1,…,M.

If FORWRD = 1, forward permutation:

 X(K(I),*) is moved X(I,*) for I = 1,2,...,M.
If FORWRD = 0, backward permutation:
 X(I,*) is moved to X(K(I),*) for I = 1,2,...,M.

Parameters

in
forwrd

= 1: forward permutation = 0: backward permutation

in
m

The number of rows of the matrix X. m >= 0.

in
n

The number of columns of the matrix X. n >= 0.

inout
X

Double complex array, dimension (ldx, n). On entry, the M by N matrix X. On exit, X contains the permuted matrix X.

in
ldx

The leading dimension of the array X, ldx >= max(1, m).

inout
K

Integer array, dimension (m). On entry, K contains the permutation vector (0-based indices). K is used as internal workspace, but reset to its original value on output.