MAGMA  2.3.0
Matrix Algebra for GPU and Multicore Architectures
 All Classes Files Functions Friends Groups Pages
laswp_sym: Swap rows/cols

Functions

void magmablas_claswp_sym (magma_int_t n, magmaFloatComplex *dA, magma_int_t lda, magma_int_t k1, magma_int_t k2, const magma_int_t *ipiv, magma_int_t inci, magma_queue_t queue)
 

Purpose:

CLASWP_SYM applies a series of symmetric pivoting on a symmetric matrix A. More...
 
void magmablas_dlaswp_sym (magma_int_t n, double *dA, magma_int_t lda, magma_int_t k1, magma_int_t k2, const magma_int_t *ipiv, magma_int_t inci, magma_queue_t queue)
 

Purpose:

DLASWP_SYM applies a series of symmetric pivoting on a symmetric matrix A. More...
 
void magmablas_slaswp_sym (magma_int_t n, float *dA, magma_int_t lda, magma_int_t k1, magma_int_t k2, const magma_int_t *ipiv, magma_int_t inci, magma_queue_t queue)
 

Purpose:

SLASWP_SYM applies a series of symmetric pivoting on a symmetric matrix A. More...
 
void magmablas_zlaswp_sym (magma_int_t n, magmaDoubleComplex *dA, magma_int_t lda, magma_int_t k1, magma_int_t k2, const magma_int_t *ipiv, magma_int_t inci, magma_queue_t queue)
 

Purpose:

ZLASWP_SYM applies a series of symmetric pivoting on a symmetric matrix A. More...
 

Detailed Description

Function Documentation

void magmablas_claswp_sym ( magma_int_t  n,
magmaFloatComplex *  dA,
magma_int_t  lda,
magma_int_t  k1,
magma_int_t  k2,
const magma_int_t *  ipiv,
magma_int_t  inci,
magma_queue_t  queue 
)

Purpose:

CLASWP_SYM applies a series of symmetric pivoting on a symmetric matrix A.

Currently, it is only implemented for the lower-triangular part of the matrix.

Arguments:

Parameters
[in]nINTEGER The number of columns of the matrix A.
[in,out]dACOMPLEX array on GPU, dimension (*,*) On entry, the matrix of column dimension N to which the row interchanges will be applied. On exit, the permuted matrix.
[in]ldaINTEGER Stride between elements in same column.
[in]k1INTEGER The first element of IPIV for which a row interchange will be done. (One based index.)
[in]k2INTEGER The last element of IPIV for which a row interchange will be done. (One based index.)
[in]ipivINTEGER array, on CPU, dimension (K2*abs(INCI)) The vector of pivot indices. Only the elements in positions K1 through K2 of IPIV are accessed. IPIV(K) = L implies rows K and L are to be interchanged.
[in]inciINTEGER The increment between successive values of IPIV. Currently, IPIV > 0. TODO: If IPIV is negative, the pivots are applied in reverse order.
[in]queuemagma_queue_t Queue to execute in.
void magmablas_dlaswp_sym ( magma_int_t  n,
double *  dA,
magma_int_t  lda,
magma_int_t  k1,
magma_int_t  k2,
const magma_int_t *  ipiv,
magma_int_t  inci,
magma_queue_t  queue 
)

Purpose:

DLASWP_SYM applies a series of symmetric pivoting on a symmetric matrix A.

Currently, it is only implemented for the lower-triangular part of the matrix.

Arguments:

Parameters
[in]nINTEGER The number of columns of the matrix A.
[in,out]dADOUBLE PRECISION array on GPU, dimension (*,*) On entry, the matrix of column dimension N to which the row interchanges will be applied. On exit, the permuted matrix.
[in]ldaINTEGER Stride between elements in same column.
[in]k1INTEGER The first element of IPIV for which a row interchange will be done. (One based index.)
[in]k2INTEGER The last element of IPIV for which a row interchange will be done. (One based index.)
[in]ipivINTEGER array, on CPU, dimension (K2*abs(INCI)) The vector of pivot indices. Only the elements in positions K1 through K2 of IPIV are accessed. IPIV(K) = L implies rows K and L are to be interchanged.
[in]inciINTEGER The increment between successive values of IPIV. Currently, IPIV > 0. TODO: If IPIV is negative, the pivots are applied in reverse order.
[in]queuemagma_queue_t Queue to execute in.
void magmablas_slaswp_sym ( magma_int_t  n,
float *  dA,
magma_int_t  lda,
magma_int_t  k1,
magma_int_t  k2,
const magma_int_t *  ipiv,
magma_int_t  inci,
magma_queue_t  queue 
)

Purpose:

SLASWP_SYM applies a series of symmetric pivoting on a symmetric matrix A.

Currently, it is only implemented for the lower-triangular part of the matrix.

Arguments:

Parameters
[in]nINTEGER The number of columns of the matrix A.
[in,out]dAREAL array on GPU, dimension (*,*) On entry, the matrix of column dimension N to which the row interchanges will be applied. On exit, the permuted matrix.
[in]ldaINTEGER Stride between elements in same column.
[in]k1INTEGER The first element of IPIV for which a row interchange will be done. (One based index.)
[in]k2INTEGER The last element of IPIV for which a row interchange will be done. (One based index.)
[in]ipivINTEGER array, on CPU, dimension (K2*abs(INCI)) The vector of pivot indices. Only the elements in positions K1 through K2 of IPIV are accessed. IPIV(K) = L implies rows K and L are to be interchanged.
[in]inciINTEGER The increment between successive values of IPIV. Currently, IPIV > 0. TODO: If IPIV is negative, the pivots are applied in reverse order.
[in]queuemagma_queue_t Queue to execute in.
void magmablas_zlaswp_sym ( magma_int_t  n,
magmaDoubleComplex *  dA,
magma_int_t  lda,
magma_int_t  k1,
magma_int_t  k2,
const magma_int_t *  ipiv,
magma_int_t  inci,
magma_queue_t  queue 
)

Purpose:

ZLASWP_SYM applies a series of symmetric pivoting on a symmetric matrix A.

Currently, it is only implemented for the lower-triangular part of the matrix.

Arguments:

Parameters
[in]nINTEGER The number of columns of the matrix A.
[in,out]dACOMPLEX*16 array on GPU, dimension (*,*) On entry, the matrix of column dimension N to which the row interchanges will be applied. On exit, the permuted matrix.
[in]ldaINTEGER Stride between elements in same column.
[in]k1INTEGER The first element of IPIV for which a row interchange will be done. (One based index.)
[in]k2INTEGER The last element of IPIV for which a row interchange will be done. (One based index.)
[in]ipivINTEGER array, on CPU, dimension (K2*abs(INCI)) The vector of pivot indices. Only the elements in positions K1 through K2 of IPIV are accessed. IPIV(K) = L implies rows K and L are to be interchanged.
[in]inciINTEGER The increment between successive values of IPIV. Currently, IPIV > 0. TODO: If IPIV is negative, the pivots are applied in reverse order.
[in]queuemagma_queue_t Queue to execute in.