110 if (plasma == NULL) {
125 NT = (N%NB==0) ? (N/NB) : (N/NB+1);
140 if (LDA <
max(1, N)) {
145 ( descT->
m != NT*IB ) || (descT->
n != NT*NB) ) {
149 if (LDQ <
max(1, N)) {
158 plasma_error(
"PLASMA_cheev",
"computing the eigenvectors is not supported in this version");
165 plasma_cooplap2tile( descA, A, NB, NB, LDA, N, 0, 0, N, N,
plasma_desc_mat_free(&(descA)) );
201 status = sequence->
status;
284 if (plasma == NULL) {
291 status = sequence->
status;
339 if (plasma == NULL) {
343 if (sequence == NULL) {
347 if (request == NULL) {
359 plasma_error(
"PLASMA_cheev_Tile_Async",
"invalid descriptor");
363 plasma_error(
"PLASMA_cheev_Tile_Async",
"invalid descriptor");
368 plasma_error(
"PLASMA_cheev_Tile_Async",
"invalid descriptor");
374 plasma_error(
"PLASMA_cheev_Tile_Async",
"illegal value of jobz");
378 plasma_error(
"PLASMA_cheev_Tile_Async",
"illegal value of uplo");
381 if (descA.
m != descA.
n) {
382 plasma_error(
"PLASMA_cheev_Tile_Async",
"matrix need to be square");
385 if (descA.
nb != descA.
mb) {
386 plasma_error(
"PLASMA_cheev_Tile_Async",
"only square tiles supported");
390 plasma_error(
"PLASMA_cheev_Tile_Async",
"computing the eigenvectors is not supported in this version");
394 if (Q->
nb != Q->
mb) {
395 plasma_error(
"PLASMA_cheev_Tile_Async",
"only square tiles supported");
469 LAPACKE_ssterf(descA.
n, W, E);
471 LAPACKE_ssterf(descA.
n, W, E);