MAGMA  1.2.0
MatrixAlgebraonGPUandMulticoreArchitectures
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups
cpanel_to_q.cpp File Reference
#include "common_magma.h"
Include dependency graph for cpanel_to_q.cpp:

Go to the source code of this file.

Functions

void cpanel_to_q (char uplo, int ib, cuFloatComplex *A, int lda, cuFloatComplex *work)
void cq_to_panel (char uplo, int ib, cuFloatComplex *A, int lda, cuFloatComplex *work)

Function Documentation

void cpanel_to_q ( char  uplo,
int  ib,
cuFloatComplex *  A,
int  lda,
cuFloatComplex *  work 
)

Definition at line 17 of file cpanel_to_q.cpp.

References MAGMA_C_ONE, and MAGMA_C_ZERO.

{
int i, j, k = 0;
cuFloatComplex *col;
cuFloatComplex c_zero = MAGMA_C_ZERO;
cuFloatComplex c_one = MAGMA_C_ONE;
if (uplo == 'U' || uplo == 'u'){
for(i = 0; i < ib; ++i){
col = A + i*lda;
for(j = 0; j < i; ++j){
work[k] = col[j];
col [j] = c_zero;
++k;
}
work[k] = col[i];
col [j] = c_one;
++k;
}
}
else {
for(i=0; i<ib; ++i){
col = A + i*lda;
work[k] = col[i];
col [i] = c_one;
++k;
for(j=i+1; j<ib; ++j){
work[k] = col[j];
col [j] = c_zero;
++k;
}
}
}
}

Here is the caller graph for this function:

void cq_to_panel ( char  uplo,
int  ib,
cuFloatComplex *  A,
int  lda,
cuFloatComplex *  work 
)

Definition at line 57 of file cpanel_to_q.cpp.

{
int i, j, k = 0;
cuFloatComplex *col;
if (uplo == 'U' || uplo == 'u'){
for(i = 0; i < ib; ++i){
col = A + i*lda;
for(j = 0; j <= i; ++j){
col[j] = work[k];
++k;
}
}
}
else {
for(i = 0; i < ib; ++i){
col = A + i*lda;
for(j = i; j < ib; ++j){
col[j] = work[k];
++k;
}
}
}
}

Here is the caller graph for this function: