CHAMELEON 1.4.0
Loading...
Searching...
No Matches
tile.c
Go to the documentation of this file.
1
28#include "control/common.h"
29#include "control/auxiliary.h"
30
54int
55CHAMELEON_Lapack_to_Tile( void *A, int LDA, CHAM_desc_t *descA )
56{
57 return CHAMELEON_Lap2Desc( ChamUpperLower, A, LDA, descA );
58}
59
83int
84CHAMELEON_Tile_to_Lapack( CHAM_desc_t *descA, void *A, int LDA )
85{
86 return CHAMELEON_Desc2Lap( ChamUpperLower, descA, A, LDA );
87}
88
117int CHAMELEON_Lap2Desc( cham_uplo_t uplo, void *A, int LDA, CHAM_desc_t *descA )
118{
119 switch( descA->dtyp ) {
120#if defined(PRECISION_z)
121 case ChamComplexDouble:
122 return CHAMELEON_zLap2Desc( uplo, (CHAMELEON_Complex64_t *)A, LDA, descA );
123 break;
124#endif
125#if defined(PRECISION_c)
126 case ChamComplexFloat:
127 return CHAMELEON_cLap2Desc( uplo, (CHAMELEON_Complex32_t *)A, LDA, descA );
128 break;
129#endif
130#if defined(PRECISION_s)
131 case ChamRealFloat:
132 return CHAMELEON_sLap2Desc( uplo, (float *)A, LDA, descA );
133 break;
134#endif
135#if defined(PRECISION_d)
136 case ChamRealDouble:
137 return CHAMELEON_dLap2Desc( uplo, (double *)A, LDA, descA );
138 break;
139#endif
140 default:
141 return CHAMELEON_ERR_ILLEGAL_VALUE;
142 }
143}
144
173int CHAMELEON_Desc2Lap( cham_uplo_t uplo, CHAM_desc_t *descA, void *A, int LDA )
174{
175 switch( descA->dtyp ) {
176#if defined(PRECISION_z)
177 case ChamComplexDouble:
178 return CHAMELEON_zDesc2Lap( uplo, descA, (CHAMELEON_Complex64_t *)A, LDA );
179 break;
180#endif
181#if defined(PRECISION_c)
182 case ChamComplexFloat:
183 return CHAMELEON_cDesc2Lap( uplo, descA, (CHAMELEON_Complex32_t *)A, LDA );
184 break;
185#endif
186#if defined(PRECISION_s)
187 case ChamRealFloat:
188 return CHAMELEON_sDesc2Lap( uplo, descA, (float *)A, LDA );
189 break;
190#endif
191#if defined(PRECISION_d)
192 case ChamRealDouble:
193 return CHAMELEON_dDesc2Lap( uplo, descA, (double *)A, LDA );
194 break;
195#endif
196 default:
197 return CHAMELEON_ERR_ILLEGAL_VALUE;
198 }
199}
int CHAMELEON_zLap2Desc(cham_uplo_t uplo, CHAMELEON_Complex64_t *A, int LDA, CHAM_desc_t *descA)
Conversion of a CHAMELEON_Complex64_t matrix from LAPACK layout to CHAM_desct_t.
Definition ztile.c:121
int CHAMELEON_zDesc2Lap(cham_uplo_t uplo, CHAM_desc_t *descA, CHAMELEON_Complex64_t *A, int LDA)
Conversion of CHAMELEON_Complex64_t matrix from LAPACK layout to tile layout. Deprecated function,...
Definition ztile.c:207
int CHAMELEON_Lapack_to_Tile(void *A, int LDA, CHAM_desc_t *descA)
Conversion from LAPACK layout to tile layout Deprecated function see CHAMELEON_Lap2Desc().
Definition tile.c:55
int CHAMELEON_Lap2Desc(cham_uplo_t uplo, void *A, int LDA, CHAM_desc_t *descA)
Conversion from LAPACK layout to CHAM_desc_t.
Definition tile.c:117
int CHAMELEON_Desc2Lap(cham_uplo_t uplo, CHAM_desc_t *descA, void *A, int LDA)
Conversion from CHAM_desc_t to LAPACK layout.
Definition tile.c:173
int CHAMELEON_Tile_to_Lapack(CHAM_desc_t *descA, void *A, int LDA)
Conversion from tile layout to LAPACK layout. Deprecated function, see CHAMELEON_Desc2Lap().
Definition tile.c:84