42{
45
46 LAPACK_dhsein( &job, &eigsrc, &initv, select, &n, h, &ldh, wr, wi, vl,
47 &ldvl, vr, &ldvr, &mm, m, work, ifaill, ifailr, &info );
48 if( info < 0 ) {
49 info = info - 1;
50 }
55 double* h_t = NULL;
56 double* vl_t = NULL;
57 double* vr_t = NULL;
58
59 if( ldh < n ) {
60 info = -8;
62 return info;
63 }
64 if( ldvl < mm ) {
65 info = -12;
67 return info;
68 }
69 if( ldvr < mm ) {
70 info = -14;
72 return info;
73 }
74
76 if( h_t == NULL ) {
78 goto exit_level_0;
79 }
81 vl_t = (double*)
83 if( vl_t == NULL ) {
85 goto exit_level_1;
86 }
87 }
89 vr_t = (double*)
91 if( vr_t == NULL ) {
93 goto exit_level_2;
94 }
95 }
96
101 }
105 }
106
107 LAPACK_dhsein( &job, &eigsrc, &initv, select, &n, h_t, &ldh_t, wr, wi,
108 vl_t, &ldvl_t, vr_t, &ldvr_t, &mm, m, work, ifaill,
109 ifailr, &info );
110 if( info < 0 ) {
111 info = info - 1;
112 }
113
116 ldvl );
117 }
120 ldvr );
121 }
122
125 }
126exit_level_2:
129 }
130exit_level_1:
132exit_level_0:
135 }
136 } else {
137 info = -1;
139 }
140 return info;
141}
#define LAPACK_dhsein(...)
#define LAPACKE_malloc(size)
#define LAPACK_TRANSPOSE_MEMORY_ERROR
lapack_logical LAPACKE_lsame(char ca, char cb)
void LAPACKE_xerbla(const char *name, lapack_int info)
void LAPACKE_dge_trans(int matrix_layout, lapack_int m, lapack_int n, const double *in, lapack_int ldin, double *out, lapack_int ldout)