|
Reference documentation for deal.II version 9.2.0
|
\(\newcommand{\dealvcentcolon}{\mathrel{\mathop{:}}}\)
\(\newcommand{\dealcoloneq}{\dealvcentcolon\mathrel{\mkern-1.2mu}=}\)
\(\newcommand{\jump}[1]{\left[\!\left[ #1 \right]\!\right]}\)
\(\newcommand{\average}[1]{\left\{\!\left\{ #1 \right\}\!\right\}}\)
Go to the documentation of this file.
17 #ifndef dealii_lapack_templates_h
18 #define dealii_lapack_templates_h
24 #ifdef DEAL_II_HAVE_FP_EXCEPTIONS
48 const std::complex<float> * ca,
49 const std::complex<float> * cx,
51 std::complex<float> * cy,
56 const std::complex<double> * za,
57 const std::complex<double> * zx,
59 std::complex<double> * zy,
98 std::complex<float> * a,
100 std::complex<float> *
w,
101 std::complex<float> * vl,
103 std::complex<float> * vr,
105 std::complex<float> * work,
111 zgeev_(
const char * jobvl,
114 std::complex<double> * a,
116 std::complex<double> *
w,
117 std::complex<double> * vl,
119 std::complex<double> * vr,
121 std::complex<double> * work,
182 std::complex<float> * a,
184 std::complex<float> *
w,
185 std::complex<float> * vl,
187 std::complex<float> * vr,
195 std::complex<float> * work,
206 std::complex<double> * a,
208 std::complex<double> *
w,
209 std::complex<double> * vl,
211 std::complex<double> * vr,
219 std::complex<double> * work,
249 const double * rcond,
260 std::complex<float> * a,
262 std::complex<float> *
b,
267 std::complex<float> * work,
277 std::complex<double> * a,
279 std::complex<double> *
b,
282 const double * rcond,
284 std::complex<double> * work,
291 sgemm_(
const char * transa,
306 dgemm_(
const char * transa,
311 const double * alpha,
321 cgemm_(
const char * transa,
326 const std::complex<float> * alpha,
327 const std::complex<float> * a,
329 const std::complex<float> *
b,
331 const std::complex<float> * beta,
332 std::complex<float> * c,
336 zgemm_(
const char * transa,
341 const std::complex<double> * alpha,
342 const std::complex<double> * a,
344 const std::complex<double> *
b,
346 const std::complex<double> * beta,
347 std::complex<double> * c,
351 sgemv_(
const char * trans,
364 dgemv_(
const char * trans,
367 const double * alpha,
377 cgemv_(
const char * trans,
380 const std::complex<float> * alpha,
381 const std::complex<float> * a,
383 const std::complex<float> * x,
385 const std::complex<float> * beta,
386 std::complex<float> * y,
390 zgemv_(
const char * trans,
393 const std::complex<double> * alpha,
394 const std::complex<double> * a,
396 const std::complex<double> * x,
398 const std::complex<double> * beta,
399 std::complex<double> * y,
425 std::complex<float> * a,
427 std::complex<float> * tau,
428 std::complex<float> * work,
435 std::complex<double> * a,
437 std::complex<double> * tau,
438 std::complex<double> * work,
478 std::complex<float> * a,
481 std::complex<float> * u,
483 std::complex<float> * vt,
485 std::complex<float> * work,
495 std::complex<double> * a,
498 std::complex<double> * u,
500 std::complex<double> * vt,
502 std::complex<double> * work,
545 std::complex<float> * a,
548 std::complex<float> * u,
550 std::complex<float> * vt,
552 std::complex<float> * work,
562 std::complex<double> * a,
565 std::complex<double> * u,
567 std::complex<double> * vt,
569 std::complex<double> * work,
593 std::complex<float> * a,
601 std::complex<double> * a,
626 std::complex<float> * a,
629 std::complex<float> * work,
635 std::complex<double> * a,
638 std::complex<double> * work,
668 const std::complex<float> * a,
671 std::complex<float> *
b,
679 const std::complex<double> * a,
682 std::complex<double> *
b,
712 const std::complex<float> * a,
720 const std::complex<double> * a,
744 const std::complex<float> * a,
752 const std::complex<double> * a,
772 const double * cfrom,
788 std::complex<float> * a,
796 const double * cfrom,
800 std::complex<double> * a,
872 const double * anorm,
881 const std::complex<float> * a,
885 std::complex<float> * work,
892 const std::complex<double> * a,
894 const double * anorm,
896 std::complex<double> * work,
917 std::complex<float> * a,
924 std::complex<double> * a,
945 std::complex<float> * a,
952 std::complex<double> * a,
980 const std::complex<float> * a,
982 std::complex<float> *
b,
990 const std::complex<double> * a,
992 std::complex<double> *
b,
1007 dstev_(
const char * jobz,
1017 ssyev_(
const char * jobz,
1028 dsyev_(
const char * jobz,
1049 const float * abstol,
1072 const double * abstol,
1095 const float * abstol,
1117 const double * abstol,
1170 const float * abstol,
1195 const double * abstol,
1207 ssyr_(
const char * uplo,
1209 const float * alpha,
1216 dsyr_(
const char * uplo,
1218 const double * alpha,
1225 ssyrk_(
const char * uplo,
1229 const float * alpha,
1237 dsyrk_(
const char * uplo,
1241 const double * alpha,
1244 const double * beta,
1249 csyrk_(
const char * uplo,
1253 const std::complex<float> * alpha,
1254 const std::complex<float> * a,
1256 const std::complex<float> * beta,
1257 std::complex<float> * c,
1261 zsyrk_(
const char * uplo,
1265 const std::complex<double> * alpha,
1266 const std::complex<double> * a,
1268 const std::complex<double> * beta,
1269 std::complex<double> * c,
1301 const std::complex<float> * a,
1304 std::complex<float> * work,
1313 const std::complex<double> * a,
1316 std::complex<double> * work,
1321 strmv_(
const char * uplo,
1331 dtrmv_(
const char * uplo,
1341 ctrmv_(
const char * uplo,
1345 const std::complex<float> * a,
1347 std::complex<float> * x,
1351 ztrmv_(
const char * uplo,
1355 const std::complex<double> * a,
1357 std::complex<double> * x,
1390 const std::complex<float> * a,
1392 std::complex<float> *
b,
1402 const std::complex<double> * a,
1404 std::complex<double> *
b,
1413 template <
typename number1,
typename number2,
typename number3>
1435 #ifdef DEAL_II_WITH_LAPACK
1436 saxpy_(n, sa, sx, incx, sy, incy);
1445 #endif // DEAL_II_WITH_LAPACK
1458 #ifdef DEAL_II_WITH_LAPACK
1468 #endif // DEAL_II_WITH_LAPACK
1475 const std::complex<float> * ca,
1476 const std::complex<float> * cx,
1478 std::complex<float> * cy,
1481 #ifdef DEAL_II_WITH_LAPACK
1482 caxpy_(n, ca, cx, incx, cy, incy);
1491 #endif // DEAL_II_WITH_LAPACK
1498 const std::complex<double> * za,
1499 const std::complex<double> * zx,
1501 std::complex<double> * zy,
1504 #ifdef DEAL_II_WITH_LAPACK
1505 zaxpy_(n, za, zx, incx, zy, incy);
1514 #endif // DEAL_II_WITH_LAPACK
1519 template <
typename number1,
1562 #ifdef DEAL_II_WITH_LAPACK
1564 jobvl, jobvr, n, a, lda, wr, wi, vl, ldvl, vr, ldvr, work, lwork, info);
1581 #endif // DEAL_II_WITH_LAPACK
1602 #ifdef DEAL_II_WITH_LAPACK
1604 jobvl, jobvr, n, a, lda, wr, wi, vl, ldvl, vr, ldvr, work, lwork, info);
1621 #endif // DEAL_II_WITH_LAPACK
1630 std::complex<float> * a,
1632 std::complex<float> *
w,
1633 std::complex<float> * vl,
1635 std::complex<float> * vr,
1637 std::complex<float> * work,
1642 #ifdef DEAL_II_WITH_LAPACK
1644 jobvl, jobvr, n, a, lda,
w, vl, ldvl, vr, ldvr, work, lwork, rwork, info);
1661 #endif // DEAL_II_WITH_LAPACK
1670 std::complex<double> * a,
1672 std::complex<double> *
w,
1673 std::complex<double> * vl,
1675 std::complex<double> * vr,
1677 std::complex<double> * work,
1682 #ifdef DEAL_II_WITH_LAPACK
1684 jobvl, jobvr, n, a, lda,
w, vl, ldvl, vr, ldvr, work, lwork, rwork, info);
1701 #endif // DEAL_II_WITH_LAPACK
1706 template <
typename number1,
1771 #ifdef DEAL_II_WITH_LAPACK
1820 #endif // DEAL_II_WITH_LAPACK
1850 #ifdef DEAL_II_WITH_LAPACK
1899 #endif // DEAL_II_WITH_LAPACK
1910 std::complex<float> * a,
1912 std::complex<float> *
w,
1913 std::complex<float> * vl,
1915 std::complex<float> * vr,
1923 std::complex<float> * work,
1928 #ifdef DEAL_II_WITH_LAPACK
1975 #endif // DEAL_II_WITH_LAPACK
1986 std::complex<double> * a,
1988 std::complex<double> *
w,
1989 std::complex<double> * vl,
1991 std::complex<double> * vr,
1999 std::complex<double> * work,
2004 #ifdef DEAL_II_WITH_LAPACK
2051 #endif // DEAL_II_WITH_LAPACK
2056 template <
typename number1,
2091 const float * rcond,
2098 #ifdef DEAL_II_WITH_LAPACK
2099 sgelsd_(m, n, nrhs, a, lda,
b, ldb, s, rcond, rank, work, lwork, iwork, info);
2116 #endif // DEAL_II_WITH_LAPACK
2130 const double * rcond,
2137 #ifdef DEAL_II_WITH_LAPACK
2138 dgelsd_(m, n, nrhs, a, lda,
b, ldb, s, rcond, rank, work, lwork, iwork, info);
2155 #endif // DEAL_II_WITH_LAPACK
2164 std::complex<float> * a,
2166 std::complex<float> *
b,
2169 const float * rcond,
2171 std::complex<float> * work,
2177 #ifdef DEAL_II_WITH_LAPACK
2210 #endif // DEAL_II_WITH_LAPACK
2219 std::complex<double> * a,
2221 std::complex<double> *
b,
2224 const double * rcond,
2226 std::complex<double> * work,
2232 #ifdef DEAL_II_WITH_LAPACK
2265 #endif // DEAL_II_WITH_LAPACK
2270 template <
typename number1,
2297 const char * transb,
2301 const float * alpha,
2310 #ifdef DEAL_II_WITH_LAPACK
2311 sgemm_(transa, transb, m, n, k, alpha, a, lda,
b, ldb, beta, c, ldc);
2327 #endif // DEAL_II_WITH_LAPACK
2334 const char * transb,
2338 const double * alpha,
2343 const double * beta,
2347 #ifdef DEAL_II_WITH_LAPACK
2348 dgemm_(transa, transb, m, n, k, alpha, a, lda,
b, ldb, beta, c, ldc);
2364 #endif // DEAL_II_WITH_LAPACK
2371 const char * transb,
2375 const std::complex<float> * alpha,
2376 const std::complex<float> * a,
2378 const std::complex<float> *
b,
2380 const std::complex<float> * beta,
2381 std::complex<float> * c,
2384 #ifdef DEAL_II_WITH_LAPACK
2385 cgemm_(transa, transb, m, n, k, alpha, a, lda,
b, ldb, beta, c, ldc);
2401 #endif // DEAL_II_WITH_LAPACK
2408 const char * transb,
2412 const std::complex<double> * alpha,
2413 const std::complex<double> * a,
2415 const std::complex<double> *
b,
2417 const std::complex<double> * beta,
2418 std::complex<double> * c,
2421 #ifdef DEAL_II_WITH_LAPACK
2422 zgemm_(transa, transb, m, n, k, alpha, a, lda,
b, ldb, beta, c, ldc);
2438 #endif // DEAL_II_WITH_LAPACK
2443 template <
typename number1,
2470 const float * alpha,
2479 #ifdef DEAL_II_WITH_LAPACK
2480 sgemv_(trans, m, n, alpha, a, lda, x, incx, beta, y, incy);
2494 #endif // DEAL_II_WITH_LAPACK
2503 const double * alpha,
2508 const double * beta,
2512 #ifdef DEAL_II_WITH_LAPACK
2513 dgemv_(trans, m, n, alpha, a, lda, x, incx, beta, y, incy);
2527 #endif // DEAL_II_WITH_LAPACK
2536 const std::complex<float> * alpha,
2537 const std::complex<float> * a,
2539 const std::complex<float> * x,
2541 const std::complex<float> * beta,
2542 std::complex<float> * y,
2545 #ifdef DEAL_II_WITH_LAPACK
2546 cgemv_(trans, m, n, alpha, a, lda, x, incx, beta, y, incy);
2560 #endif // DEAL_II_WITH_LAPACK
2569 const std::complex<double> * alpha,
2570 const std::complex<double> * a,
2572 const std::complex<double> * x,
2574 const std::complex<double> * beta,
2575 std::complex<double> * y,
2578 #ifdef DEAL_II_WITH_LAPACK
2579 zgemv_(trans, m, n, alpha, a, lda, x, incx, beta, y, incy);
2593 #endif // DEAL_II_WITH_LAPACK
2598 template <
typename number1,
typename number2,
typename number3>
2624 #ifdef DEAL_II_WITH_LAPACK
2625 sgeqrf_(m, n, a, lda, tau, work, lwork, info);
2636 #endif // DEAL_II_WITH_LAPACK
2651 #ifdef DEAL_II_WITH_LAPACK
2652 dgeqrf_(m, n, a, lda, tau, work, lwork, info);
2663 #endif // DEAL_II_WITH_LAPACK
2671 std::complex<float> * a,
2673 std::complex<float> * tau,
2674 std::complex<float> * work,
2678 #ifdef DEAL_II_WITH_LAPACK
2679 cgeqrf_(m, n, a, lda, tau, work, lwork, info);
2690 #endif // DEAL_II_WITH_LAPACK
2698 std::complex<double> * a,
2700 std::complex<double> * tau,
2701 std::complex<double> * work,
2705 #ifdef DEAL_II_WITH_LAPACK
2706 zgeqrf_(m, n, a, lda, tau, work, lwork, info);
2717 #endif // DEAL_II_WITH_LAPACK
2722 template <
typename number1,
2764 #ifdef DEAL_II_WITH_LAPACK
2765 sgesdd_(jobz, m, n, a, lda, s, u, ldu, vt, ldvt, work, lwork, iwork, info);
2782 #endif // DEAL_II_WITH_LAPACK
2803 #ifdef DEAL_II_WITH_LAPACK
2804 dgesdd_(jobz, m, n, a, lda, s, u, ldu, vt, ldvt, work, lwork, iwork, info);
2821 #endif // DEAL_II_WITH_LAPACK
2830 std::complex<float> * a,
2833 std::complex<float> * u,
2835 std::complex<float> * vt,
2837 std::complex<float> * work,
2843 #ifdef DEAL_II_WITH_LAPACK
2845 jobz, m, n, a, lda, s, u, ldu, vt, ldvt, work, lwork, rwork, iwork, info);
2863 #endif // DEAL_II_WITH_LAPACK
2872 std::complex<double> * a,
2875 std::complex<double> * u,
2877 std::complex<double> * vt,
2879 std::complex<double> * work,
2885 #ifdef DEAL_II_WITH_LAPACK
2887 jobz, m, n, a, lda, s, u, ldu, vt, ldvt, work, lwork, rwork, iwork, info);
2905 #endif // DEAL_II_WITH_LAPACK
2910 template <
typename number1,
2952 #ifdef DEAL_II_WITH_LAPACK
2953 sgesvd_(jobu, jobvt, m, n, a, lda, s, u, ldu, vt, ldvt, work, lwork, info);
2970 #endif // DEAL_II_WITH_LAPACK
2991 #ifdef DEAL_II_WITH_LAPACK
2992 dgesvd_(jobu, jobvt, m, n, a, lda, s, u, ldu, vt, ldvt, work, lwork, info);
3009 #endif // DEAL_II_WITH_LAPACK
3019 std::complex<float> * a,
3022 std::complex<float> * u,
3024 std::complex<float> * vt,
3026 std::complex<float> * work,
3031 #ifdef DEAL_II_WITH_LAPACK
3033 jobu, jobvt, m, n, a, lda, s, u, ldu, vt, ldvt, work, lwork, rwork, info);
3051 #endif // DEAL_II_WITH_LAPACK
3061 std::complex<double> * a,
3064 std::complex<double> * u,
3066 std::complex<double> * vt,
3068 std::complex<double> * work,
3073 #ifdef DEAL_II_WITH_LAPACK
3075 jobu, jobvt, m, n, a, lda, s, u, ldu, vt, ldvt, work, lwork, rwork, info);
3093 #endif // DEAL_II_WITH_LAPACK
3098 template <
typename number1>
3120 #ifdef DEAL_II_WITH_LAPACK
3121 sgetrf_(m, n, a, lda, ipiv, info);
3130 #endif // DEAL_II_WITH_LAPACK
3143 #ifdef DEAL_II_WITH_LAPACK
3144 dgetrf_(m, n, a, lda, ipiv, info);
3153 #endif // DEAL_II_WITH_LAPACK
3161 std::complex<float> * a,
3166 #ifdef DEAL_II_WITH_LAPACK
3167 cgetrf_(m, n, a, lda, ipiv, info);
3176 #endif // DEAL_II_WITH_LAPACK
3184 std::complex<double> * a,
3189 #ifdef DEAL_II_WITH_LAPACK
3190 zgetrf_(m, n, a, lda, ipiv, info);
3199 #endif // DEAL_II_WITH_LAPACK
3204 template <
typename number1,
typename number2>
3228 #ifdef DEAL_II_WITH_LAPACK
3229 sgetri_(n, a, lda, ipiv, work, lwork, info);
3239 #endif // DEAL_II_WITH_LAPACK
3253 #ifdef DEAL_II_WITH_LAPACK
3254 dgetri_(n, a, lda, ipiv, work, lwork, info);
3264 #endif // DEAL_II_WITH_LAPACK
3271 std::complex<float> * a,
3274 std::complex<float> * work,
3278 #ifdef DEAL_II_WITH_LAPACK
3279 cgetri_(n, a, lda, ipiv, work, lwork, info);
3289 #endif // DEAL_II_WITH_LAPACK
3296 std::complex<double> * a,
3299 std::complex<double> * work,
3303 #ifdef DEAL_II_WITH_LAPACK
3304 zgetri_(n, a, lda, ipiv, work, lwork, info);
3314 #endif // DEAL_II_WITH_LAPACK
3319 template <
typename number1,
typename number2>
3347 #ifdef DEAL_II_WITH_LAPACK
3348 sgetrs_(trans, n, nrhs, a, lda, ipiv,
b, ldb, info);
3360 #endif // DEAL_II_WITH_LAPACK
3376 #ifdef DEAL_II_WITH_LAPACK
3377 dgetrs_(trans, n, nrhs, a, lda, ipiv,
b, ldb, info);
3389 #endif // DEAL_II_WITH_LAPACK
3398 const std::complex<float> * a,
3401 std::complex<float> *
b,
3405 #ifdef DEAL_II_WITH_LAPACK
3406 cgetrs_(trans, n, nrhs, a, lda, ipiv,
b, ldb, info);
3418 #endif // DEAL_II_WITH_LAPACK
3427 const std::complex<double> * a,
3430 std::complex<double> *
b,
3434 #ifdef DEAL_II_WITH_LAPACK
3435 zgetrs_(trans, n, nrhs, a, lda, ipiv,
b, ldb, info);
3447 #endif // DEAL_II_WITH_LAPACK
3452 template <
typename number1>
3466 #ifdef DEAL_II_WITH_LAPACK
3472 #endif // DEAL_II_WITH_LAPACK
3479 lamch(
const char *cmach)
3481 #ifdef DEAL_II_WITH_LAPACK
3487 #endif // DEAL_II_WITH_LAPACK
3492 template <
typename number1,
typename number2>
3515 #ifdef DEAL_II_WITH_LAPACK
3526 #endif // DEAL_II_WITH_LAPACK
3539 #ifdef DEAL_II_WITH_LAPACK
3550 #endif // DEAL_II_WITH_LAPACK
3559 const std::complex<float> * a,
3563 #ifdef DEAL_II_WITH_LAPACK
3574 #endif // DEAL_II_WITH_LAPACK
3583 const std::complex<double> * a,
3587 #ifdef DEAL_II_WITH_LAPACK
3598 #endif // DEAL_II_WITH_LAPACK
3603 template <
typename number1,
typename number2>
3626 #ifdef DEAL_II_WITH_LAPACK
3637 #endif // DEAL_II_WITH_LAPACK
3650 #ifdef DEAL_II_WITH_LAPACK
3661 #endif // DEAL_II_WITH_LAPACK
3670 const std::complex<float> * a,
3674 #ifdef DEAL_II_WITH_LAPACK
3685 #endif // DEAL_II_WITH_LAPACK
3694 const std::complex<double> * a,
3698 #ifdef DEAL_II_WITH_LAPACK
3709 #endif // DEAL_II_WITH_LAPACK
3714 template <
typename number1,
typename number2,
typename number3>
3736 const float * cfrom,
3744 #ifdef DEAL_II_WITH_LAPACK
3745 slascl_(type, kl, ku, cfrom, cto, m, n, a, lda, info);
3758 #endif // DEAL_II_WITH_LAPACK
3767 const double * cfrom,
3775 #ifdef DEAL_II_WITH_LAPACK
3776 dlascl_(type, kl, ku, cfrom, cto, m, n, a, lda, info);
3789 #endif // DEAL_II_WITH_LAPACK
3798 const float * cfrom,
3802 std::complex<float> * a,
3806 #ifdef DEAL_II_WITH_LAPACK
3807 clascl_(type, kl, ku, cfrom, cto, m, n, a, lda, info);
3820 #endif // DEAL_II_WITH_LAPACK
3829 const double * cfrom,
3833 std::complex<double> * a,
3837 #ifdef DEAL_II_WITH_LAPACK
3838 zlascl_(type, kl, ku, cfrom, cto, m, n, a, lda, info);
3851 #endif // DEAL_II_WITH_LAPACK
3856 template <
typename number1,
typename number2,
typename number3>
3884 #ifdef DEAL_II_WITH_LAPACK
3885 sorgqr_(m, n, k, a, lda, tau, work, lwork, info);
3897 #endif // DEAL_II_WITH_LAPACK
3913 #ifdef DEAL_II_WITH_LAPACK
3914 dorgqr_(m, n, k, a, lda, tau, work, lwork, info);
3926 #endif // DEAL_II_WITH_LAPACK
3931 template <
typename number1,
3970 #ifdef DEAL_II_WITH_LAPACK
3971 sormqr_(side, trans, m, n, k, a, lda, tau, c, ldc, work, lwork, info);
3987 #endif // DEAL_II_WITH_LAPACK
4007 #ifdef DEAL_II_WITH_LAPACK
4008 dormqr_(side, trans, m, n, k, a, lda, tau, c, ldc, work, lwork, info);
4024 #endif // DEAL_II_WITH_LAPACK
4029 template <
typename number1,
4054 const float * anorm,
4060 #ifdef DEAL_II_WITH_LAPACK
4061 spocon_(uplo, n, a, lda, anorm, rcond, work, iwork, info);
4073 #endif // DEAL_II_WITH_LAPACK
4083 const double * anorm,
4089 #ifdef DEAL_II_WITH_LAPACK
4090 dpocon_(uplo, n, a, lda, anorm, rcond, work, iwork, info);
4102 #endif // DEAL_II_WITH_LAPACK
4110 const std::complex<float> * a,
4112 const float * anorm,
4114 std::complex<float> * work,
4118 #ifdef DEAL_II_WITH_LAPACK
4119 cpocon_(uplo, n, a, lda, anorm, rcond, work, rwork, info);
4131 #endif // DEAL_II_WITH_LAPACK
4139 const std::complex<double> * a,
4141 const double * anorm,
4143 std::complex<double> * work,
4147 #ifdef DEAL_II_WITH_LAPACK
4148 zpocon_(uplo, n, a, lda, anorm, rcond, work, rwork, info);
4160 #endif // DEAL_II_WITH_LAPACK
4165 template <
typename number1>
4185 #ifdef DEAL_II_WITH_LAPACK
4186 spotrf_(uplo, n, a, lda, info);
4194 #endif // DEAL_II_WITH_LAPACK
4206 #ifdef DEAL_II_WITH_LAPACK
4207 dpotrf_(uplo, n, a, lda, info);
4215 #endif // DEAL_II_WITH_LAPACK
4223 std::complex<float> * a,
4227 #ifdef DEAL_II_WITH_LAPACK
4228 cpotrf_(uplo, n, a, lda, info);
4236 #endif // DEAL_II_WITH_LAPACK
4244 std::complex<double> * a,
4248 #ifdef DEAL_II_WITH_LAPACK
4249 zpotrf_(uplo, n, a, lda, info);
4257 #endif // DEAL_II_WITH_LAPACK
4262 template <
typename number1>
4282 #ifdef DEAL_II_WITH_LAPACK
4283 spotri_(uplo, n, a, lda, info);
4291 #endif // DEAL_II_WITH_LAPACK
4303 #ifdef DEAL_II_WITH_LAPACK
4304 dpotri_(uplo, n, a, lda, info);
4312 #endif // DEAL_II_WITH_LAPACK
4320 std::complex<float> * a,
4324 #ifdef DEAL_II_WITH_LAPACK
4325 cpotri_(uplo, n, a, lda, info);
4333 #endif // DEAL_II_WITH_LAPACK
4341 std::complex<double> * a,
4345 #ifdef DEAL_II_WITH_LAPACK
4346 zpotri_(uplo, n, a, lda, info);
4354 #endif // DEAL_II_WITH_LAPACK
4359 template <
typename number1,
typename number2>
4385 #ifdef DEAL_II_WITH_LAPACK
4386 spotrs_(uplo, n, nrhs, a, lda,
b, ldb, info);
4397 #endif // DEAL_II_WITH_LAPACK
4412 #ifdef DEAL_II_WITH_LAPACK
4413 dpotrs_(uplo, n, nrhs, a, lda,
b, ldb, info);
4424 #endif // DEAL_II_WITH_LAPACK
4433 const std::complex<float> * a,
4435 std::complex<float> *
b,
4439 #ifdef DEAL_II_WITH_LAPACK
4440 cpotrs_(uplo, n, nrhs, a, lda,
b, ldb, info);
4451 #endif // DEAL_II_WITH_LAPACK
4460 const std::complex<double> * a,
4462 std::complex<double> *
b,
4466 #ifdef DEAL_II_WITH_LAPACK
4467 zpotrs_(uplo, n, nrhs, a, lda,
b, ldb, info);
4478 #endif // DEAL_II_WITH_LAPACK
4483 template <
typename number1,
4512 #ifdef DEAL_II_WITH_LAPACK
4513 sstev_(jobz, n,
d,
e, z, ldz, work, info);
4524 #endif // DEAL_II_WITH_LAPACK
4539 #ifdef DEAL_II_WITH_LAPACK
4540 dstev_(jobz, n,
d,
e, z, ldz, work, info);
4551 #endif // DEAL_II_WITH_LAPACK
4556 template <
typename number1,
typename number2,
typename number3>
4584 #ifdef DEAL_II_WITH_LAPACK
4585 ssyev_(jobz, uplo, n, a, lda,
w, work, lwork, info);
4597 #endif // DEAL_II_WITH_LAPACK
4613 #ifdef DEAL_II_WITH_LAPACK
4614 dsyev_(jobz, uplo, n, a, lda,
w, work, lwork, info);
4626 #endif // DEAL_II_WITH_LAPACK
4631 template <
typename number1,
4677 const float * abstol,
4689 #ifdef DEAL_II_WITH_LAPACK
4694 # ifdef DEAL_II_HAVE_FP_EXCEPTIONS
4695 fenv_t fp_exceptions;
4696 feholdexcept(&fp_exceptions);
4697 # endif // DEAL_II_HAVE_FP_EXCEPTIONS
4719 # ifdef DEAL_II_HAVE_FP_EXCEPTIONS
4720 fesetenv(&fp_exceptions);
4721 # endif // DEAL_II_HAVE_FP_EXCEPTIONS
4745 #endif // DEAL_II_WITH_LAPACK
4761 const double * abstol,
4773 #ifdef DEAL_II_WITH_LAPACK
4778 # ifdef DEAL_II_HAVE_FP_EXCEPTIONS
4779 fenv_t fp_exceptions;
4780 feholdexcept(&fp_exceptions);
4781 # endif // DEAL_II_HAVE_FP_EXCEPTIONS
4803 # ifdef DEAL_II_HAVE_FP_EXCEPTIONS
4804 fesetenv(&fp_exceptions);
4805 # endif // DEAL_II_HAVE_FP_EXCEPTIONS
4829 #endif // DEAL_II_WITH_LAPACK
4834 template <
typename number1,
4879 const float * abstol,
4890 #ifdef DEAL_II_WITH_LAPACK
4933 #endif // DEAL_II_WITH_LAPACK
4949 const double * abstol,
4960 #ifdef DEAL_II_WITH_LAPACK
5003 #endif // DEAL_II_WITH_LAPACK
5008 template <
typename number1,
5045 #ifdef DEAL_II_WITH_LAPACK
5046 ssygv_(itype, jobz, uplo, n, a, lda,
b, ldb,
w, work, lwork, info);
5061 #endif // DEAL_II_WITH_LAPACK
5080 #ifdef DEAL_II_WITH_LAPACK
5081 dsygv_(itype, jobz, uplo, n, a, lda,
b, ldb,
w, work, lwork, info);
5096 #endif // DEAL_II_WITH_LAPACK
5101 template <
typename number1,
5153 const float * abstol,
5164 #ifdef DEAL_II_WITH_LAPACK
5213 #endif // DEAL_II_WITH_LAPACK
5232 const double * abstol,
5243 #ifdef DEAL_II_WITH_LAPACK
5292 #endif // DEAL_II_WITH_LAPACK
5297 template <
typename number1,
typename number2,
typename number3>
5315 const float * alpha,
5321 #ifdef DEAL_II_WITH_LAPACK
5322 ssyr_(uplo, n, alpha, x, incx, a, lda);
5332 #endif // DEAL_II_WITH_LAPACK
5340 const double * alpha,
5346 #ifdef DEAL_II_WITH_LAPACK
5347 dsyr_(uplo, n, alpha, x, incx, a, lda);
5357 #endif // DEAL_II_WITH_LAPACK
5362 template <
typename number1,
5388 const float * alpha,
5395 #ifdef DEAL_II_WITH_LAPACK
5396 ssyrk_(uplo, trans, n, k, alpha, a, lda, beta, c, ldc);
5409 #endif // DEAL_II_WITH_LAPACK
5419 const double * alpha,
5422 const double * beta,
5426 #ifdef DEAL_II_WITH_LAPACK
5427 dsyrk_(uplo, trans, n, k, alpha, a, lda, beta, c, ldc);
5440 #endif // DEAL_II_WITH_LAPACK
5450 const std::complex<float> * alpha,
5451 const std::complex<float> * a,
5453 const std::complex<float> * beta,
5454 std::complex<float> * c,
5457 #ifdef DEAL_II_WITH_LAPACK
5458 csyrk_(uplo, trans, n, k, alpha, a, lda, beta, c, ldc);
5471 #endif // DEAL_II_WITH_LAPACK
5481 const std::complex<double> * alpha,
5482 const std::complex<double> * a,
5484 const std::complex<double> * beta,
5485 std::complex<double> * c,
5488 #ifdef DEAL_II_WITH_LAPACK
5489 zsyrk_(uplo, trans, n, k, alpha, a, lda, beta, c, ldc);
5502 #endif // DEAL_II_WITH_LAPACK
5507 template <
typename number1,
typename number2,
typename number3>
5537 #ifdef DEAL_II_WITH_LAPACK
5538 strcon_(
norm, uplo, diag, n, a, lda, rcond, work, iwork, info);
5551 #endif // DEAL_II_WITH_LAPACK
5568 #ifdef DEAL_II_WITH_LAPACK
5569 dtrcon_(
norm, uplo, diag, n, a, lda, rcond, work, iwork, info);
5582 #endif // DEAL_II_WITH_LAPACK
5592 const std::complex<float> * a,
5595 std::complex<float> * work,
5599 #ifdef DEAL_II_WITH_LAPACK
5600 ctrcon_(
norm, uplo, diag, n, a, lda, rcond, work, rwork, info);
5613 #endif // DEAL_II_WITH_LAPACK
5623 const std::complex<double> * a,
5626 std::complex<double> * work,
5630 #ifdef DEAL_II_WITH_LAPACK
5631 ztrcon_(
norm, uplo, diag, n, a, lda, rcond, work, rwork, info);
5644 #endif // DEAL_II_WITH_LAPACK
5649 template <
typename number1,
typename number2>
5675 #ifdef DEAL_II_WITH_LAPACK
5676 strmv_(uplo, trans, diag, n, a, lda, x, incx);
5687 #endif // DEAL_II_WITH_LAPACK
5702 #ifdef DEAL_II_WITH_LAPACK
5703 dtrmv_(uplo, trans, diag, n, a, lda, x, incx);
5714 #endif // DEAL_II_WITH_LAPACK
5724 const std::complex<float> * a,
5726 std::complex<float> * x,
5729 #ifdef DEAL_II_WITH_LAPACK
5730 ctrmv_(uplo, trans, diag, n, a, lda, x, incx);
5741 #endif // DEAL_II_WITH_LAPACK
5751 const std::complex<double> * a,
5753 std::complex<double> * x,
5756 #ifdef DEAL_II_WITH_LAPACK
5757 ztrmv_(uplo, trans, diag, n, a, lda, x, incx);
5768 #endif // DEAL_II_WITH_LAPACK
5773 template <
typename number1,
typename number2>
5803 #ifdef DEAL_II_WITH_LAPACK
5804 strtrs_(uplo, trans, diag, n, nrhs, a, lda,
b, ldb, info);
5817 #endif // DEAL_II_WITH_LAPACK
5834 #ifdef DEAL_II_WITH_LAPACK
5835 dtrtrs_(uplo, trans, diag, n, nrhs, a, lda,
b, ldb, info);
5848 #endif // DEAL_II_WITH_LAPACK
5859 const std::complex<float> * a,
5861 std::complex<float> *
b,
5865 #ifdef DEAL_II_WITH_LAPACK
5866 ctrtrs_(uplo, trans, diag, n, nrhs, a, lda,
b, ldb, info);
5879 #endif // DEAL_II_WITH_LAPACK
5890 const std::complex<double> * a,
5892 std::complex<double> *
b,
5896 #ifdef DEAL_II_WITH_LAPACK
5897 ztrtrs_(uplo, trans, diag, n, nrhs, a, lda,
b, ldb, info);
5910 #endif // DEAL_II_WITH_LAPACK
5918 template <
typename number>
5929 lamch(
const char *cmach,
float &precision)
5931 #ifdef DEAL_II_WITH_LAPACK
5937 #endif // DEAL_II_WITH_LAPACK
5944 lamch(
const char *cmach,
double &precision)
5946 #ifdef DEAL_II_WITH_LAPACK
5952 #endif // DEAL_II_WITH_LAPACK
void syrk(const char *, const char *, const ::types::blas_int *, const ::types::blas_int *, const number1 *, const number2 *, const ::types::blas_int *, const number3 *, number4 *, const ::types::blas_int *)
void ssygv_(const ::types::blas_int *itype, const char *jobz, const char *uplo, const ::types::blas_int *n, float *a, const ::types::blas_int *lda, float *b, const ::types::blas_int *ldb, float *w, float *work, const ::types::blas_int *lwork, ::types::blas_int *info)
void getri(const ::types::blas_int *, number1 *, const ::types::blas_int *, const ::types::blas_int *, number2 *, const ::types::blas_int *, ::types::blas_int *)
void sgetri_(const ::types::blas_int *n, float *a, const ::types::blas_int *lda, const ::types::blas_int *ipiv, float *work, const ::types::blas_int *lwork, ::types::blas_int *info)
void geqrf(const ::types::blas_int *, const ::types::blas_int *, number1 *, const ::types::blas_int *, number2 *, number3 *, const ::types::blas_int *, ::types::blas_int *)
void syevr(const char *, const char *, const char *, const ::types::blas_int *, number1 *, const ::types::blas_int *, const number2 *, const number3 *, const ::types::blas_int *, const ::types::blas_int *, const number4 *, ::types::blas_int *, number5 *, number6 *, const ::types::blas_int *, ::types::blas_int *, number7 *, const ::types::blas_int *, ::types::blas_int *, const ::types::blas_int *, ::types::blas_int *)
void getrs(const char *, const ::types::blas_int *, const ::types::blas_int *, const number1 *, const ::types::blas_int *, const ::types::blas_int *, number2 *, const ::types::blas_int *, ::types::blas_int *)
void dstev_(const char *jobz, const ::types::blas_int *n, double *d, double *e, double *z, const ::types::blas_int *ldz, double *work, ::types::blas_int *info)
void cgetrf_(const ::types::blas_int *m, const ::types::blas_int *n, std::complex< float > *a, const ::types::blas_int *lda, ::types::blas_int *ipiv, ::types::blas_int *info)
void potrf(const char *, const ::types::blas_int *, number1 *, const ::types::blas_int *, ::types::blas_int *)
void getrf(const ::types::blas_int *, const ::types::blas_int *, number1 *, const ::types::blas_int *, ::types::blas_int *, ::types::blas_int *)
void caxpy_(const ::types::blas_int *n, const std::complex< float > *ca, const std::complex< float > *cx, const ::types::blas_int *incx, std::complex< float > *cy, const ::types::blas_int *incy)
void dgemv_(const char *trans, const ::types::blas_int *m, const ::types::blas_int *n, const double *alpha, const double *a, const ::types::blas_int *lda, const double *x, const ::types::blas_int *incx, const double *beta, double *y, const ::types::blas_int *incy)
void sygv(const ::types::blas_int *, const char *, const char *, const ::types::blas_int *, number1 *, const ::types::blas_int *, number2 *, const ::types::blas_int *, number3 *, number4 *, const ::types::blas_int *, ::types::blas_int *)
void dpocon_(const char *uplo, const ::types::blas_int *n, const double *a, const ::types::blas_int *lda, const double *anorm, double *rcond, double *work, ::types::blas_int *iwork, ::types::blas_int *info)
void sgemv_(const char *trans, const ::types::blas_int *m, const ::types::blas_int *n, const float *alpha, const float *a, const ::types::blas_int *lda, const float *x, const ::types::blas_int *incx, const float *beta, float *y, const ::types::blas_int *incy)
void sgetrf_(const ::types::blas_int *m, const ::types::blas_int *n, float *a, const ::types::blas_int *lda, ::types::blas_int *ipiv, ::types::blas_int *info)
void strcon_(const char *norm, const char *uplo, const char *diag, const ::types::blas_int *n, const float *a, const ::types::blas_int *lda, float *rcond, float *work, ::types::blas_int *iwork, ::types::blas_int *info)
void zgeevx_(const char *balanc, const char *jobvl, const char *jobvr, const char *sense, const ::types::blas_int *n, std::complex< double > *a, const ::types::blas_int *lda, std::complex< double > *w, std::complex< double > *vl, const ::types::blas_int *ldvl, std::complex< double > *vr, const ::types::blas_int *ldvr, ::types::blas_int *ilo, ::types::blas_int *ihi, double *scale, double *abnrm, double *rconde, double *rcondv, std::complex< double > *work, const ::types::blas_int *lwork, double *rwork, ::types::blas_int *info)
void cgesvd_(const char *jobu, const char *jobvt, const ::types::blas_int *m, const ::types::blas_int *n, std::complex< float > *a, const ::types::blas_int *lda, float *s, std::complex< float > *u, const ::types::blas_int *ldu, std::complex< float > *vt, const ::types::blas_int *ldvt, std::complex< float > *work, const ::types::blas_int *lwork, float *rwork, ::types::blas_int *info)
static ::ExceptionBase & ExcNotImplemented()
float slange_(const char *norm, const ::types::blas_int *m, const ::types::blas_int *n, const float *a, const ::types::blas_int *lda, float *work)
void trcon(const char *, const char *, const char *, const ::types::blas_int *, const number1 *, const ::types::blas_int *, number2 *, number3 *, ::types::blas_int *, ::types::blas_int *)
void sstev_(const char *jobz, const ::types::blas_int *n, float *d, float *e, float *z, const ::types::blas_int *ldz, float *work, ::types::blas_int *info)
void pocon(const char *, const ::types::blas_int *, const number1 *, const ::types::blas_int *, const number2 *, number3 *, number4 *, ::types::blas_int *, ::types::blas_int *)
void ormqr(const char *, const char *, const ::types::blas_int *, const ::types::blas_int *, const ::types::blas_int *, const number1 *, const ::types::blas_int *, const number2 *, number3 *, const ::types::blas_int *, number4 *, const ::types::blas_int *, ::types::blas_int *)
void sgelsd_(const ::types::blas_int *m, const ::types::blas_int *n, const ::types::blas_int *nrhs, float *a, const ::types::blas_int *lda, float *b, const ::types::blas_int *ldb, float *s, const float *rcond, ::types::blas_int *rank, float *work, const ::types::blas_int *lwork, ::types::blas_int *iwork, ::types::blas_int *info)
void zgeqrf_(const ::types::blas_int *m, const ::types::blas_int *n, std::complex< double > *a, const ::types::blas_int *lda, std::complex< double > *tau, std::complex< double > *work, const ::types::blas_int *lwork, ::types::blas_int *info)
void zgetri_(const ::types::blas_int *n, std::complex< double > *a, const ::types::blas_int *lda, const ::types::blas_int *ipiv, std::complex< double > *work, const ::types::blas_int *lwork, ::types::blas_int *info)
SymmetricTensor< 2, dim, Number > e(const Tensor< 2, dim, Number > &F)
void sgetrs_(const char *trans, const ::types::blas_int *n, const ::types::blas_int *nrhs, const float *a, const ::types::blas_int *lda, const ::types::blas_int *ipiv, float *b, const ::types::blas_int *ldb, ::types::blas_int *info)
void cgetrs_(const char *trans, const ::types::blas_int *n, const ::types::blas_int *nrhs, const std::complex< float > *a, const ::types::blas_int *lda, const ::types::blas_int *ipiv, std::complex< float > *b, const ::types::blas_int *ldb, ::types::blas_int *info)
void zlascl_(const char *type, const ::types::blas_int *kl, const ::types::blas_int *ku, const double *cfrom, const double *cto, const ::types::blas_int *m, const ::types::blas_int *n, std::complex< double > *a, const ::types::blas_int *lda, ::types::blas_int *info)
void dsyevr_(const char *jobz, const char *range, const char *uplo, const ::types::blas_int *n, double *a, const ::types::blas_int *lda, const double *vl, const double *vu, const ::types::blas_int *il, const ::types::blas_int *iu, const double *abstol, ::types::blas_int *m, double *w, double *z, const ::types::blas_int *ldz, ::types::blas_int *isuppz, double *work, const ::types::blas_int *lwork, ::types::blas_int *iwork, const ::types::blas_int *liwork, ::types::blas_int *info)
void trtrs(const char *, const char *, const char *, const ::types::blas_int *, const ::types::blas_int *, const number1 *, const ::types::blas_int *, number2 *, const ::types::blas_int *, ::types::blas_int *)
void cgeqrf_(const ::types::blas_int *m, const ::types::blas_int *n, std::complex< float > *a, const ::types::blas_int *lda, std::complex< float > *tau, std::complex< float > *work, const ::types::blas_int *lwork, ::types::blas_int *info)
void cpotrs_(const char *uplo, const ::types::blas_int *n, const ::types::blas_int *nrhs, const std::complex< float > *a, const ::types::blas_int *lda, std::complex< float > *b, const ::types::blas_int *ldb, ::types::blas_int *info)
void dpotrf_(const char *uplo, const ::types::blas_int *n, double *a, const ::types::blas_int *lda, ::types::blas_int *info)
void gemv(const char *, const ::types::blas_int *, const ::types::blas_int *, const number1 *, const number2 *, const ::types::blas_int *, const number3 *, const ::types::blas_int *, const number4 *, number5 *, const ::types::blas_int *)
number1 lamch(const char *)
SymmetricTensor< 2, dim, Number > d(const Tensor< 2, dim, Number > &F, const Tensor< 2, dim, Number > &dF_dt)
void ztrmv_(const char *uplo, const char *trans, const char *diag, const ::types::blas_int *n, const std::complex< double > *a, const ::types::blas_int *lda, std::complex< double > *x, const ::types::blas_int *incx)
void ssyev_(const char *jobz, const char *uplo, const ::types::blas_int *n, float *a, const ::types::blas_int *lda, float *w, float *work, const ::types::blas_int *lwork, ::types::blas_int *info)
void cgetri_(const ::types::blas_int *n, std::complex< float > *a, const ::types::blas_int *lda, const ::types::blas_int *ipiv, std::complex< float > *work, const ::types::blas_int *lwork, ::types::blas_int *info)
float clange_(const char *norm, const ::types::blas_int *m, const ::types::blas_int *n, const std::complex< float > *a, const ::types::blas_int *lda, float *work)
void zgemv_(const char *trans, const ::types::blas_int *m, const ::types::blas_int *n, const std::complex< double > *alpha, const std::complex< double > *a, const ::types::blas_int *lda, const std::complex< double > *x, const ::types::blas_int *incx, const std::complex< double > *beta, std::complex< double > *y, const ::types::blas_int *incy)
void daxpy_(const ::types::blas_int *n, const double *da, const double *dx, const ::types::blas_int *incx, double *dy, const ::types::blas_int *incy)
void spotrf_(const char *uplo, const ::types::blas_int *n, float *a, const ::types::blas_int *lda, ::types::blas_int *info)
number1 lange(const char *, const ::types::blas_int *, const ::types::blas_int *, const number1 *, const ::types::blas_int *, number2 *)
void zaxpy_(const ::types::blas_int *n, const std::complex< double > *za, const std::complex< double > *zx, const ::types::blas_int *incx, std::complex< double > *zy, const ::types::blas_int *incy)
double dlange_(const char *norm, const ::types::blas_int *m, const ::types::blas_int *n, const double *a, const ::types::blas_int *lda, double *work)
void geev(const char *, const char *, const ::types::blas_int *, number1 *, const ::types::blas_int *, number2 *, number3 *, number4 *, const ::types::blas_int *, number5 *, const ::types::blas_int *, number6 *, const ::types::blas_int *, ::types::blas_int *)
void dsyev_(const char *jobz, const char *uplo, const ::types::blas_int *n, double *a, const ::types::blas_int *lda, double *w, double *work, const ::types::blas_int *lwork, ::types::blas_int *info)
void zgetrs_(const char *trans, const ::types::blas_int *n, const ::types::blas_int *nrhs, const std::complex< double > *a, const ::types::blas_int *lda, const ::types::blas_int *ipiv, std::complex< double > *b, const ::types::blas_int *ldb, ::types::blas_int *info)
double zlansy_(const char *norm, const char *uplo, const ::types::blas_int *n, const std::complex< double > *a, const ::types::blas_int *lda, double *work)
Tensor< 2, dim, Number > w(const Tensor< 2, dim, Number > &F, const Tensor< 2, dim, Number > &dF_dt)
void orgqr(const ::types::blas_int *, const ::types::blas_int *, const ::types::blas_int *, number1 *, const ::types::blas_int *, const number2 *, number3 *, const ::types::blas_int *, ::types::blas_int *)
void zgesdd_(const char *jobz, const ::types::blas_int *m, const ::types::blas_int *n, std::complex< double > *a, const ::types::blas_int *lda, double *s, std::complex< double > *u, const ::types::blas_int *ldu, std::complex< double > *vt, const ::types::blas_int *ldvt, std::complex< double > *work, const ::types::blas_int *lwork, double *rwork, ::types::blas_int *iwork, ::types::blas_int *info)
void zgesvd_(const char *jobu, const char *jobvt, const ::types::blas_int *m, const ::types::blas_int *n, std::complex< double > *a, const ::types::blas_int *lda, double *s, std::complex< double > *u, const ::types::blas_int *ldu, std::complex< double > *vt, const ::types::blas_int *ldvt, std::complex< double > *work, const ::types::blas_int *lwork, double *rwork, ::types::blas_int *info)
double zlange_(const char *norm, const ::types::blas_int *m, const ::types::blas_int *n, const std::complex< double > *a, const ::types::blas_int *lda, double *work)
void cpotri_(const char *uplo, const ::types::blas_int *n, std::complex< float > *a, const ::types::blas_int *lda, ::types::blas_int *info)
double dlamch_(const char *cmach)
void ctrcon_(const char *norm, const char *uplo, const char *diag, const ::types::blas_int *n, const std::complex< float > *a, const ::types::blas_int *lda, float *rcond, std::complex< float > *work, float *rwork, ::types::blas_int *info)
void zpotrs_(const char *uplo, const ::types::blas_int *n, const ::types::blas_int *nrhs, const std::complex< double > *a, const ::types::blas_int *lda, std::complex< double > *b, const ::types::blas_int *ldb, ::types::blas_int *info)
void spotri_(const char *uplo, const ::types::blas_int *n, float *a, const ::types::blas_int *lda, ::types::blas_int *info)
void sgeev_(const char *jobvl, const char *jobvr, const ::types::blas_int *n, float *a, const ::types::blas_int *lda, float *wr, float *wi, float *vl, const ::types::blas_int *ldvl, float *vr, const ::types::blas_int *ldvr, float *work, const ::types::blas_int *lwork, ::types::blas_int *info)
double dlansy_(const char *norm, const char *uplo, const ::types::blas_int *n, const double *a, const ::types::blas_int *lda, double *work)
void ssyr_(const char *uplo, const ::types::blas_int *n, const float *alpha, const float *x, const ::types::blas_int *incx, float *a, const ::types::blas_int *lda)
void zpotrf_(const char *uplo, const ::types::blas_int *n, std::complex< double > *a, const ::types::blas_int *lda, ::types::blas_int *info)
void dgetrf_(const ::types::blas_int *m, const ::types::blas_int *n, double *a, const ::types::blas_int *lda, ::types::blas_int *ipiv, ::types::blas_int *info)
void potri(const char *, const ::types::blas_int *, number1 *, const ::types::blas_int *, ::types::blas_int *)
double norm(const FEValuesBase< dim > &fe, const ArrayView< const std::vector< Tensor< 1, dim >>> &Du)
#define DEAL_II_NAMESPACE_OPEN
void zgetrf_(const ::types::blas_int *m, const ::types::blas_int *n, std::complex< double > *a, const ::types::blas_int *lda, ::types::blas_int *ipiv, ::types::blas_int *info)
SymmetricTensor< 2, dim, Number > b(const Tensor< 2, dim, Number > &F)
void dorgqr_(const ::types::blas_int *m, const ::types::blas_int *n, const ::types::blas_int *k, double *a, const ::types::blas_int *lda, const double *tau, double *work, const ::types::blas_int *lwork, ::types::blas_int *info)
float slansy_(const char *norm, const char *uplo, const ::types::blas_int *n, const float *a, const ::types::blas_int *lda, float *work)
void cgemv_(const char *trans, const ::types::blas_int *m, const ::types::blas_int *n, const std::complex< float > *alpha, const std::complex< float > *a, const ::types::blas_int *lda, const std::complex< float > *x, const ::types::blas_int *incx, const std::complex< float > *beta, std::complex< float > *y, const ::types::blas_int *incy)
void sgesvd_(const char *jobu, const char *jobvt, const ::types::blas_int *m, const ::types::blas_int *n, float *a, const ::types::blas_int *lda, float *s, float *u, const ::types::blas_int *ldu, float *vt, const ::types::blas_int *ldvt, float *work, const ::types::blas_int *lwork, ::types::blas_int *info)
void lascl(const char *, const ::types::blas_int *, const ::types::blas_int *, const number1 *, const number2 *, const ::types::blas_int *, const ::types::blas_int *, number3 *, const ::types::blas_int *, ::types::blas_int *)
void sgeqrf_(const ::types::blas_int *m, const ::types::blas_int *n, float *a, const ::types::blas_int *lda, float *tau, float *work, const ::types::blas_int *lwork, ::types::blas_int *info)
#define DEAL_II_DEPRECATED
void zgeev_(const char *jobvl, const char *jobvr, const ::types::blas_int *n, std::complex< double > *a, const ::types::blas_int *lda, std::complex< double > *w, std::complex< double > *vl, const ::types::blas_int *ldvl, std::complex< double > *vr, const ::types::blas_int *ldvr, std::complex< double > *work, const ::types::blas_int *lwork, double *rwork, ::types::blas_int *info)
void dgesvd_(const char *jobu, const char *jobvt, const ::types::blas_int *m, const ::types::blas_int *n, double *a, const ::types::blas_int *lda, double *s, double *u, const ::types::blas_int *ldu, double *vt, const ::types::blas_int *ldvt, double *work, const ::types::blas_int *lwork, ::types::blas_int *info)
void ssygvx_(const ::types::blas_int *itype, const char *jobz, const char *range, const char *uplo, const ::types::blas_int *n, float *a, const ::types::blas_int *lda, float *b, const ::types::blas_int *ldb, const float *vl, const float *vu, const ::types::blas_int *il, const ::types::blas_int *iu, const float *abstol, ::types::blas_int *m, float *w, float *z, const ::types::blas_int *ldz, float *work, const ::types::blas_int *lwork, ::types::blas_int *iwork, ::types::blas_int *ifail, ::types::blas_int *info)
void zpocon_(const char *uplo, const ::types::blas_int *n, const std::complex< double > *a, const ::types::blas_int *lda, const double *anorm, double *rcond, std::complex< double > *work, double *rwork, ::types::blas_int *info)
void sgemm_(const char *transa, const char *transb, const ::types::blas_int *m, const ::types::blas_int *n, const ::types::blas_int *k, const float *alpha, const float *a, const ::types::blas_int *lda, const float *b, const ::types::blas_int *ldb, const float *beta, float *c, const ::types::blas_int *ldc)
void ssyrk_(const char *uplo, const char *trans, const ::types::blas_int *n, const ::types::blas_int *k, const float *alpha, const float *a, const ::types::blas_int *lda, const float *beta, float *c, const ::types::blas_int *ldc)
void syevx(const char *, const char *, const char *, const ::types::blas_int *, number1 *, const ::types::blas_int *, const number2 *, const number3 *, const ::types::blas_int *, const ::types::blas_int *, const number4 *, ::types::blas_int *, number5 *, number6 *, const ::types::blas_int *, number7 *, const ::types::blas_int *, ::types::blas_int *, ::types::blas_int *, ::types::blas_int *)
void ztrtrs_(const char *uplo, const char *trans, const char *diag, const ::types::blas_int *n, const ::types::blas_int *nrhs, const std::complex< double > *a, const ::types::blas_int *lda, std::complex< double > *b, const ::types::blas_int *ldb, ::types::blas_int *info)
void cpocon_(const char *uplo, const ::types::blas_int *n, const std::complex< float > *a, const ::types::blas_int *lda, const float *anorm, float *rcond, std::complex< float > *work, float *rwork, ::types::blas_int *info)
void stev(const char *, const ::types::blas_int *, number1 *, number2 *, number3 *, const ::types::blas_int *, number4 *, ::types::blas_int *)
void dgeev_(const char *jobvl, const char *jobvr, const ::types::blas_int *n, double *a, const ::types::blas_int *lda, double *wr, double *wi, double *vl, const ::types::blas_int *ldvl, double *vr, const ::types::blas_int *ldvr, double *work, const ::types::blas_int *lwork, ::types::blas_int *info)
void slascl_(const char *type, const ::types::blas_int *kl, const ::types::blas_int *ku, const float *cfrom, const float *cto, const ::types::blas_int *m, const ::types::blas_int *n, float *a, const ::types::blas_int *lda, ::types::blas_int *info)
void cgeev_(const char *jobvl, const char *jobvr, const ::types::blas_int *n, std::complex< float > *a, const ::types::blas_int *lda, std::complex< float > *w, std::complex< float > *vl, const ::types::blas_int *ldvl, std::complex< float > *vr, const ::types::blas_int *ldvr, std::complex< float > *work, const ::types::blas_int *lwork, float *rwork, ::types::blas_int *info)
void gemm(const char *, const char *, const ::types::blas_int *, const ::types::blas_int *, const ::types::blas_int *, const number1 *, const number2 *, const ::types::blas_int *, const number3 *, const ::types::blas_int *, const number4 *, number5 *, const ::types::blas_int *)
void sgeevx_(const char *balanc, const char *jobvl, const char *jobvr, const char *sense, const ::types::blas_int *n, float *a, const ::types::blas_int *lda, float *wr, float *wi, float *vl, const ::types::blas_int *ldvl, float *vr, const ::types::blas_int *ldvr, ::types::blas_int *ilo, ::types::blas_int *ihi, float *scale, float *abnrm, float *rconde, float *rcondv, float *work, const ::types::blas_int *lwork, ::types::blas_int *iwork, ::types::blas_int *info)
void dpotrs_(const char *uplo, const ::types::blas_int *n, const ::types::blas_int *nrhs, const double *a, const ::types::blas_int *lda, double *b, const ::types::blas_int *ldb, ::types::blas_int *info)
void gelsd(const ::types::blas_int *, const ::types::blas_int *, const ::types::blas_int *, number1 *, const ::types::blas_int *, number2 *, const ::types::blas_int *, number3 *, const number4 *, ::types::blas_int *, number5 *, const ::types::blas_int *, ::types::blas_int *, ::types::blas_int *)
void axpy(const ::types::blas_int *, const number1 *, const number2 *, const ::types::blas_int *, number3 *, const ::types::blas_int *)
void syev(const char *, const char *, const ::types::blas_int *, number1 *, const ::types::blas_int *, number2 *, number3 *, const ::types::blas_int *, ::types::blas_int *)
void trmv(const char *, const char *, const char *, const ::types::blas_int *, const number1 *, const ::types::blas_int *, number2 *, const ::types::blas_int *)
#define Assert(cond, exc)
float slamch_(const char *cmach)
void dgelsd_(const ::types::blas_int *m, const ::types::blas_int *n, const ::types::blas_int *nrhs, double *a, const ::types::blas_int *lda, double *b, const ::types::blas_int *ldb, double *s, const double *rcond, ::types::blas_int *rank, double *work, const ::types::blas_int *lwork, ::types::blas_int *iwork, ::types::blas_int *info)
void dtrmv_(const char *uplo, const char *trans, const char *diag, const ::types::blas_int *n, const double *a, const ::types::blas_int *lda, double *x, const ::types::blas_int *incx)
void strtrs_(const char *uplo, const char *trans, const char *diag, const ::types::blas_int *n, const ::types::blas_int *nrhs, const float *a, const ::types::blas_int *lda, float *b, const ::types::blas_int *ldb, ::types::blas_int *info)
void dtrcon_(const char *norm, const char *uplo, const char *diag, const ::types::blas_int *n, const double *a, const ::types::blas_int *lda, double *rcond, double *work, ::types::blas_int *iwork, ::types::blas_int *info)
void spocon_(const char *uplo, const ::types::blas_int *n, const float *a, const ::types::blas_int *lda, const float *anorm, float *rcond, float *work, ::types::blas_int *iwork, ::types::blas_int *info)
void dsygvx_(const ::types::blas_int *itype, const char *jobz, const char *range, const char *uplo, const ::types::blas_int *n, double *a, const ::types::blas_int *lda, double *b, const ::types::blas_int *ldb, const double *vl, const double *vu, const ::types::blas_int *il, const ::types::blas_int *iu, const double *abstol, ::types::blas_int *m, double *w, double *z, const ::types::blas_int *ldz, double *work, const ::types::blas_int *lwork, ::types::blas_int *iwork, ::types::blas_int *ifail, ::types::blas_int *info)
void ztrcon_(const char *norm, const char *uplo, const char *diag, const ::types::blas_int *n, const std::complex< double > *a, const ::types::blas_int *lda, double *rcond, std::complex< double > *work, double *rwork, ::types::blas_int *info)
void sygvx(const ::types::blas_int *, const char *, const char *, const char *, const ::types::blas_int *, number1 *, const ::types::blas_int *, number2 *, const ::types::blas_int *, const number3 *, const number4 *, const ::types::blas_int *, const ::types::blas_int *, const number5 *, ::types::blas_int *, number6 *, number7 *, const ::types::blas_int *, number8 *, const ::types::blas_int *, ::types::blas_int *, ::types::blas_int *, ::types::blas_int *)
void dgetrs_(const char *trans, const ::types::blas_int *n, const ::types::blas_int *nrhs, const double *a, const ::types::blas_int *lda, const ::types::blas_int *ipiv, double *b, const ::types::blas_int *ldb, ::types::blas_int *info)
void spotrs_(const char *uplo, const ::types::blas_int *n, const ::types::blas_int *nrhs, const float *a, const ::types::blas_int *lda, float *b, const ::types::blas_int *ldb, ::types::blas_int *info)
void dgesdd_(const char *jobz, const ::types::blas_int *m, const ::types::blas_int *n, double *a, const ::types::blas_int *lda, double *s, double *u, const ::types::blas_int *ldu, double *vt, const ::types::blas_int *ldvt, double *work, const ::types::blas_int *lwork, ::types::blas_int *iwork, ::types::blas_int *info)
void zpotri_(const char *uplo, const ::types::blas_int *n, std::complex< double > *a, const ::types::blas_int *lda, ::types::blas_int *info)
void dsyevx_(const char *jobz, const char *range, const char *uplo, const ::types::blas_int *n, double *a, const ::types::blas_int *lda, const double *vl, const double *vu, const ::types::blas_int *il, const ::types::blas_int *iu, const double *abstol, ::types::blas_int *m, double *w, double *z, const ::types::blas_int *ldz, double *work, const ::types::blas_int *lwork, ::types::blas_int *iwork, ::types::blas_int *ifail, ::types::blas_int *info)
void zgelsd_(const ::types::blas_int *m, const ::types::blas_int *n, const ::types::blas_int *nrhs, std::complex< double > *a, const ::types::blas_int *lda, std::complex< double > *b, const ::types::blas_int *ldb, double *s, const double *rcond, ::types::blas_int *rank, std::complex< double > *work, const ::types::blas_int *lwork, double *rwork, ::types::blas_int *iwork, ::types::blas_int *info)
void dgeqrf_(const ::types::blas_int *m, const ::types::blas_int *n, double *a, const ::types::blas_int *lda, double *tau, double *work, const ::types::blas_int *lwork, ::types::blas_int *info)
void saxpy_(const ::types::blas_int *n, const float *sa, const float *sx, const ::types::blas_int *incx, float *sy, const ::types::blas_int *incy)
void potrs(const char *, const ::types::blas_int *, const ::types::blas_int *, const number1 *, const ::types::blas_int *, number2 *, const ::types::blas_int *, ::types::blas_int *)
void sormqr_(const char *side, const char *trans, const ::types::blas_int *m, const ::types::blas_int *n, const ::types::blas_int *k, const float *a, const ::types::blas_int *lda, const float *tau, float *c, const ::types::blas_int *ldc, float *work, const ::types::blas_int *lwork, ::types::blas_int *info)
void gesvd(const char *, const char *, const ::types::blas_int *, const ::types::blas_int *, number1 *, const ::types::blas_int *, number2 *, number3 *, const ::types::blas_int *, number4 *, const ::types::blas_int *, number5 *, const ::types::blas_int *, ::types::blas_int *)
void dsyrk_(const char *uplo, const char *trans, const ::types::blas_int *n, const ::types::blas_int *k, const double *alpha, const double *a, const ::types::blas_int *lda, const double *beta, double *c, const ::types::blas_int *ldc)
void zsyrk_(const char *uplo, const char *trans, const ::types::blas_int *n, const ::types::blas_int *k, const std::complex< double > *alpha, const std::complex< double > *a, const ::types::blas_int *lda, const std::complex< double > *beta, std::complex< double > *c, const ::types::blas_int *ldc)
void sorgqr_(const ::types::blas_int *m, const ::types::blas_int *n, const ::types::blas_int *k, float *a, const ::types::blas_int *lda, const float *tau, float *work, const ::types::blas_int *lwork, ::types::blas_int *info)
void ctrtrs_(const char *uplo, const char *trans, const char *diag, const ::types::blas_int *n, const ::types::blas_int *nrhs, const std::complex< float > *a, const ::types::blas_int *lda, std::complex< float > *b, const ::types::blas_int *ldb, ::types::blas_int *info)
void strmv_(const char *uplo, const char *trans, const char *diag, const ::types::blas_int *n, const float *a, const ::types::blas_int *lda, float *x, const ::types::blas_int *incx)
static ::ExceptionBase & ExcMissing(std::string arg1)
void dgetri_(const ::types::blas_int *n, double *a, const ::types::blas_int *lda, const ::types::blas_int *ipiv, double *work, const ::types::blas_int *lwork, ::types::blas_int *info)
void sgesdd_(const char *jobz, const ::types::blas_int *m, const ::types::blas_int *n, float *a, const ::types::blas_int *lda, float *s, float *u, const ::types::blas_int *ldu, float *vt, const ::types::blas_int *ldvt, float *work, const ::types::blas_int *lwork, ::types::blas_int *iwork, ::types::blas_int *info)
void cgelsd_(const ::types::blas_int *m, const ::types::blas_int *n, const ::types::blas_int *nrhs, std::complex< float > *a, const ::types::blas_int *lda, std::complex< float > *b, const ::types::blas_int *ldb, float *s, const float *rcond, ::types::blas_int *rank, std::complex< float > *work, const ::types::blas_int *lwork, float *rwork, ::types::blas_int *iwork, ::types::blas_int *info)
float clansy_(const char *norm, const char *uplo, const ::types::blas_int *n, const std::complex< float > *a, const ::types::blas_int *lda, float *work)
void ctrmv_(const char *uplo, const char *trans, const char *diag, const ::types::blas_int *n, const std::complex< float > *a, const ::types::blas_int *lda, std::complex< float > *x, const ::types::blas_int *incx)
void cpotrf_(const char *uplo, const ::types::blas_int *n, std::complex< float > *a, const ::types::blas_int *lda, ::types::blas_int *info)
#define DEAL_II_NAMESPACE_CLOSE
void csyrk_(const char *uplo, const char *trans, const ::types::blas_int *n, const ::types::blas_int *k, const std::complex< float > *alpha, const std::complex< float > *a, const ::types::blas_int *lda, const std::complex< float > *beta, std::complex< float > *c, const ::types::blas_int *ldc)
void cgeevx_(const char *balanc, const char *jobvl, const char *jobvr, const char *sense, const ::types::blas_int *n, std::complex< float > *a, const ::types::blas_int *lda, std::complex< float > *w, std::complex< float > *vl, const ::types::blas_int *ldvl, std::complex< float > *vr, const ::types::blas_int *ldvr, ::types::blas_int *ilo, ::types::blas_int *ihi, float *scale, float *abnrm, float *rconde, float *rcondv, std::complex< float > *work, const ::types::blas_int *lwork, float *rwork, ::types::blas_int *info)
void dpotri_(const char *uplo, const ::types::blas_int *n, double *a, const ::types::blas_int *lda, ::types::blas_int *info)
void dormqr_(const char *side, const char *trans, const ::types::blas_int *m, const ::types::blas_int *n, const ::types::blas_int *k, const double *a, const ::types::blas_int *lda, const double *tau, double *c, const ::types::blas_int *ldc, double *work, const ::types::blas_int *lwork, ::types::blas_int *info)
void geevx(const char *, const char *, const char *, const char *, const ::types::blas_int *, number1 *, const ::types::blas_int *, number2 *, number3 *, number4 *, const ::types::blas_int *, number5 *, const ::types::blas_int *, ::types::blas_int *, ::types::blas_int *, number6 *, number7 *, number8 *, number9 *, number10 *, const ::types::blas_int *, ::types::blas_int *, ::types::blas_int *)
void dgemm_(const char *transa, const char *transb, const ::types::blas_int *m, const ::types::blas_int *n, const ::types::blas_int *k, const double *alpha, const double *a, const ::types::blas_int *lda, const double *b, const ::types::blas_int *ldb, const double *beta, double *c, const ::types::blas_int *ldc)
void syr(const char *, const ::types::blas_int *, const number1 *, const number2 *, const ::types::blas_int *, number3 *, const ::types::blas_int *)
void cgesdd_(const char *jobz, const ::types::blas_int *m, const ::types::blas_int *n, std::complex< float > *a, const ::types::blas_int *lda, float *s, std::complex< float > *u, const ::types::blas_int *ldu, std::complex< float > *vt, const ::types::blas_int *ldvt, std::complex< float > *work, const ::types::blas_int *lwork, float *rwork, ::types::blas_int *iwork, ::types::blas_int *info)
number1 lansy(const char *, const char *, const ::types::blas_int *, const number1 *, const ::types::blas_int *, number2 *)
void dtrtrs_(const char *uplo, const char *trans, const char *diag, const ::types::blas_int *n, const ::types::blas_int *nrhs, const double *a, const ::types::blas_int *lda, double *b, const ::types::blas_int *ldb, ::types::blas_int *info)
void gesdd(const char *, const ::types::blas_int *, const ::types::blas_int *, number1 *, const ::types::blas_int *, number2 *, number3 *, const ::types::blas_int *, number4 *, const ::types::blas_int *, number5 *, const ::types::blas_int *, ::types::blas_int *, ::types::blas_int *)
void clascl_(const char *type, const ::types::blas_int *kl, const ::types::blas_int *ku, const float *cfrom, const float *cto, const ::types::blas_int *m, const ::types::blas_int *n, std::complex< float > *a, const ::types::blas_int *lda, ::types::blas_int *info)
void dgeevx_(const char *balanc, const char *jobvl, const char *jobvr, const char *sense, const ::types::blas_int *n, double *a, const ::types::blas_int *lda, double *wr, double *wi, double *vl, const ::types::blas_int *ldvl, double *vr, const ::types::blas_int *ldvr, ::types::blas_int *ilo, ::types::blas_int *ihi, double *scale, double *abnrm, double *rconde, double *rcondv, double *work, const ::types::blas_int *lwork, ::types::blas_int *iwork, ::types::blas_int *info)
void dsygv_(const ::types::blas_int *itype, const char *jobz, const char *uplo, const ::types::blas_int *n, double *a, const ::types::blas_int *lda, double *b, const ::types::blas_int *ldb, double *w, double *work, const ::types::blas_int *lwork, ::types::blas_int *info)
void dlascl_(const char *type, const ::types::blas_int *kl, const ::types::blas_int *ku, const double *cfrom, const double *cto, const ::types::blas_int *m, const ::types::blas_int *n, double *a, const ::types::blas_int *lda, ::types::blas_int *info)
void ssyevx_(const char *jobz, const char *range, const char *uplo, const ::types::blas_int *n, float *a, const ::types::blas_int *lda, const float *vl, const float *vu, const ::types::blas_int *il, const ::types::blas_int *iu, const float *abstol, ::types::blas_int *m, float *w, float *z, const ::types::blas_int *ldz, float *work, const ::types::blas_int *lwork, ::types::blas_int *iwork, ::types::blas_int *ifail, ::types::blas_int *info)
void cgemm_(const char *transa, const char *transb, const ::types::blas_int *m, const ::types::blas_int *n, const ::types::blas_int *k, const std::complex< float > *alpha, const std::complex< float > *a, const ::types::blas_int *lda, const std::complex< float > *b, const ::types::blas_int *ldb, const std::complex< float > *beta, std::complex< float > *c, const ::types::blas_int *ldc)
void zgemm_(const char *transa, const char *transb, const ::types::blas_int *m, const ::types::blas_int *n, const ::types::blas_int *k, const std::complex< double > *alpha, const std::complex< double > *a, const ::types::blas_int *lda, const std::complex< double > *b, const ::types::blas_int *ldb, const std::complex< double > *beta, std::complex< double > *c, const ::types::blas_int *ldc)
void ssyevr_(const char *jobz, const char *range, const char *uplo, const ::types::blas_int *n, float *a, const ::types::blas_int *lda, const float *vl, const float *vu, const ::types::blas_int *il, const ::types::blas_int *iu, const float *abstol, ::types::blas_int *m, float *w, float *z, const ::types::blas_int *ldz, ::types::blas_int *isuppz, float *work, const ::types::blas_int *lwork, ::types::blas_int *iwork, const ::types::blas_int *liwork, ::types::blas_int *info)
void dsyr_(const char *uplo, const ::types::blas_int *n, const double *alpha, const double *x, const ::types::blas_int *incx, double *a, const ::types::blas_int *lda)