103 int NB, IB, IBNB, NT;
111 if (plasma == NULL) {
112 plasma_error(
"PLASMA_zheevd",
"PLASMA not initialized");
120 NT = (N%NB==0) ? (N/NB) : (N/NB+1);
135 if (LDA <
max(1, N)) {
140 ( descT->m != NT*IB ) || (descT->n != NT*NB) ) {
144 if (LDQ <
max(1, N)) {
153 plasma_error(
"PLASMA_zheevd",
"computing the eigenvectors is not supported in this version");
167 plasma_zooplap2tile( descA, A, NB, NB, LDA, N, 0, 0, N, N,
plasma_desc_mat_free(&(descA)) );
203 status = sequence->
status;
286 if (plasma == NULL) {
293 status = sequence->
status;
335 int NB, IB, IBNB, NT, INFO;
342 if (plasma == NULL) {
346 if (sequence == NULL) {
350 if (request == NULL) {
364 NT = (descA.
ln%NB==0) ? (descA.
ln/NB) : (descA.
ln/NB+1);
368 plasma_error(
"PLASMA_zheevd_Tile_Async",
"invalid descriptor");
372 plasma_error(
"PLASMA_zheevd_Tile_Async",
"invalid descriptor");
377 plasma_error(
"PLASMA_zheevd_Tile_Async",
"invalid descriptor");
383 plasma_error(
"PLASMA_zheevd_Tile_Async",
"illegal value of jobz");
386 if (descA.
m != descA.
n) {
387 plasma_error(
"PLASMA_zheevd_Tile_Async",
"matrix need to be square");
390 if (descA.
nb != descA.
mb) {
391 plasma_error(
"PLASMA_zheevd_Tile_Async",
"only square tiles supported");
395 plasma_error(
"PLASMA_zheevd_Tile_Async",
"computing the eigenvectors is not supported in this version");
399 if (Q->
nb != Q->
mb) {
400 plasma_error(
"PLASMA_zheevd_Tile_Async",
"only square tiles supported");
473 descA.
n, W, E, NULL, 1);
476 descA.
n, W, E, NULL, 1);