LAPACK  3.8.0
LAPACK: Linear Algebra PACKage

◆ LAPACKE_zhs_trans()

void LAPACKE_zhs_trans ( int  matrix_layout,
lapack_int  n,
const lapack_complex_double in,
lapack_int  ldin,
lapack_complex_double out,
lapack_int  ldout 
)

Definition at line 40 of file lapacke_zhs_trans.c.

43 {
44  if( in == NULL || out == NULL ) return;
45 
46  /* Convert subdiagonal first */
47  if( matrix_layout == LAPACK_COL_MAJOR ) {
48  LAPACKE_zge_trans( LAPACK_COL_MAJOR, 1, n-1, &in[1], ldin+1,
49  &out[ldout], ldout+1 );
50  } else if ( matrix_layout == LAPACK_ROW_MAJOR ) {
51  LAPACKE_zge_trans( LAPACK_ROW_MAJOR, n-1, 1, &in[ldin], ldin+1,
52  &out[1], ldout+1 );
53  } else {
54  return;
55  }
56 
57  /* Convert upper triangular. */
58  LAPACKE_ztr_trans( matrix_layout, 'u', 'n', n, in, ldin, out, ldout);
59 }
#define LAPACK_ROW_MAJOR
Definition: lapacke.h:119
void LAPACKE_ztr_trans(int matrix_layout, char uplo, char diag, lapack_int n, const lapack_complex_double *in, lapack_int ldin, lapack_complex_double *out, lapack_int ldout)
#define LAPACK_COL_MAJOR
Definition: lapacke.h:120
void LAPACKE_zge_trans(int matrix_layout, lapack_int m, lapack_int n, const lapack_complex_double *in, lapack_int ldin, lapack_complex_double *out, lapack_int ldout)
Here is the call graph for this function: