LAPACK  3.10.1
LAPACK: Linear Algebra PACKage

◆ LAPACKE_shs_trans()

void LAPACKE_shs_trans ( int  matrix_layout,
lapack_int  n,
const float *  in,
lapack_int  ldin,
float *  out,
lapack_int  ldout 
)

Definition at line 39 of file lapacke_shs_trans.c.

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