laswp#
Functions
-
void slaswp(const INT n, f32 *restrict A, const INT lda, const INT k1, const INT k2, const INT *restrict ipiv, const INT incx)#
Performs a series of row interchanges on a general rectangular matrix.
Interchanges row i with row
ipiv[k1 + (i - k1) * |incx|]for each of rowsk1throughk2ofA.Note
This function is typically called after
sgetrf()orsgetrf2()to apply the same row permutations to other matrices (e.g., the right-hand side matrix B when solving Ax = B).Parameters
innThe number of columns of the matrix
A.inoutAArray of dimension (
lda,n). On entry, them-by-nmatrix to which the row interchanges will be applied. On exit, the permuted matrix.inldaThe leading dimension of the array
A.lda>=max(1,m).ink1The first row of
Ato which a row interchange will be applied.ink2The last row of
Ato which a row interchange will be applied.k2>=k1.inipivThe vector of pivot indices. Row i is interchanged with row
ipiv[k1 + (i - k1) * |incx|].inincxThe increment between successive values of
ipiv. Ifincx>0, pivots are applied fromk1tok2. Ifincx<0, pivots are applied fromk2tok1. Ifincx=0, returns immediately.
void slaswp(
const INT n,
f32* restrict A,
const INT lda,
const INT k1,
const INT k2,
const INT* restrict ipiv,
const INT incx
);
Functions
-
void dlaswp(const INT n, f64 *restrict A, const INT lda, const INT k1, const INT k2, const INT *restrict ipiv, const INT incx)#
Performs a series of row interchanges on a general rectangular matrix.
Interchanges row i with row
ipiv[k1 + (i - k1) * |incx|]for each of rowsk1throughk2ofA.Note
This function is typically called after
dgetrf()ordgetrf2()to apply the same row permutations to other matrices (e.g., the right-hand side matrix B when solving Ax = B).Parameters
innThe number of columns of the matrix
A.inoutAArray of dimension (
lda,n). On entry, them-by-nmatrix to which the row interchanges will be applied. On exit, the permuted matrix.inldaThe leading dimension of the array
A.lda>=max(1,m).ink1The first row of
Ato which a row interchange will be applied.ink2The last row of
Ato which a row interchange will be applied.k2>=k1.inipivThe vector of pivot indices. Row i is interchanged with row
ipiv[k1 + (i - k1) * |incx|].inincxThe increment between successive values of
ipiv. Ifincx>0, pivots are applied fromk1tok2. Ifincx<0, pivots are applied fromk2tok1. Ifincx=0, returns immediately.
void dlaswp(
const INT n,
f64* restrict A,
const INT lda,
const INT k1,
const INT k2,
const INT* restrict ipiv,
const INT incx
);
Functions
-
void claswp(const INT n, c64 *restrict A, const INT lda, const INT k1, const INT k2, const INT *restrict ipiv, const INT incx)#
Performs a series of row interchanges on a general rectangular matrix.
Interchanges row i with row
ipiv[k1 + (i - k1) * |incx|]for each of rowsk1throughk2ofA.Note
This function is typically called after
cgetrf()orcgetrf2()to apply the same row permutations to other matrices (e.g., the right-hand side matrix B when solving Ax = B).Parameters
innThe number of columns of the matrix
A.inoutAArray of dimension (
lda,n). On entry, them-by-nmatrix to which the row interchanges will be applied. On exit, the permuted matrix.inldaThe leading dimension of the array
A.lda>=max(1,m).ink1The first row of
Ato which a row interchange will be applied.ink2The last row of
Ato which a row interchange will be applied.k2>=k1.inipivThe vector of pivot indices. Row i is interchanged with row
ipiv[k1 + (i - k1) * |incx|].inincxThe increment between successive values of
ipiv. Ifincx>0, pivots are applied fromk1tok2. Ifincx<0, pivots are applied fromk2tok1. Ifincx=0, returns immediately.
void claswp(
const INT n,
c64* restrict A,
const INT lda,
const INT k1,
const INT k2,
const INT* restrict ipiv,
const INT incx
);
Functions
-
void zlaswp(const INT n, c128 *restrict A, const INT lda, const INT k1, const INT k2, const INT *restrict ipiv, const INT incx)#
Performs a series of row interchanges on a general rectangular matrix.
Interchanges row i with row
ipiv[k1 + (i - k1) * |incx|]for each of rowsk1throughk2ofA.Note
This function is typically called after
zgetrf()orzgetrf2()to apply the same row permutations to other matrices (e.g., the right-hand side matrix B when solving Ax = B).Parameters
innThe number of columns of the matrix
A.inoutAArray of dimension (
lda,n). On entry, them-by-nmatrix to which the row interchanges will be applied. On exit, the permuted matrix.inldaThe leading dimension of the array
A.lda>=max(1,m).ink1The first row of
Ato which a row interchange will be applied.ink2The last row of
Ato which a row interchange will be applied.k2>=k1.inipivThe vector of pivot indices. Row i is interchanged with row
ipiv[k1 + (i - k1) * |incx|].inincxThe increment between successive values of
ipiv. Ifincx>0, pivots are applied fromk1tok2. Ifincx<0, pivots are applied fromk2tok1. Ifincx=0, returns immediately.
void zlaswp(
const INT n,
c128* restrict A,
const INT lda,
const INT k1,
const INT k2,
const INT* restrict ipiv,
const INT incx
);