1225{
1226 bool ret = true;
1227 int info;
1228
1230
1231 double* copyA = (double*)A;
1233 double* copyb = (
double*)
x;
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244 zgesv_(&size, &bsize, copyA, &size, permutation, copyb, &size, &info);
1245
1246
1247
1248
1249
1250
1251 if (info > 0)
1252 {
1253
1254 ret = false;
1255 }
1256 else if (info < 0)
1257 {
1258 ERROR(
"argument passed to zgesv had an illegal value");
1259 ret = false;
1260 }
1261
1263
1264 return ret;
1265}
void copy_complex_array(int n, const typename Field::element_type *a, typename Field::element_type *b)
int zgesv_(int *n, int *nrhs, double *a, int *lda, int *ipiv, double *b, int *ldb, int *info)
#define newarray_atomic(T, len)