17 #ifndef dealii_lapack_templates_h 18 #define dealii_lapack_templates_h 20 #include <deal.II/base/config.h> 22 #include <deal.II/lac/lapack_support.h> 24 #ifdef DEAL_II_HAVE_FP_EXCEPTIONS 31 saxpy_(const ::types::blas_int *n,
34 const ::types::blas_int *incx,
36 const ::types::blas_int *incy);
39 daxpy_(const ::types::blas_int *n,
42 const ::types::blas_int *incx,
44 const ::types::blas_int *incy);
47 caxpy_(const ::types::blas_int *n,
48 const std::complex<float> * ca,
49 const std::complex<float> * cx,
50 const ::types::blas_int *incx,
51 std::complex<float> * cy,
52 const ::types::blas_int *incy);
55 zaxpy_(const ::types::blas_int *n,
56 const std::complex<double> * za,
57 const std::complex<double> * zx,
58 const ::types::blas_int *incx,
59 std::complex<double> * zy,
60 const ::types::blas_int *incy);
63 sgeev_(
const char * jobvl,
65 const ::types::blas_int *n,
67 const ::types::blas_int *lda,
71 const ::types::blas_int *ldvl,
73 const ::types::blas_int *ldvr,
75 const ::types::blas_int *lwork,
79 dgeev_(
const char * jobvl,
81 const ::types::blas_int *n,
83 const ::types::blas_int *lda,
87 const ::types::blas_int *ldvl,
89 const ::types::blas_int *ldvr,
91 const ::types::blas_int *lwork,
95 cgeev_(
const char * jobvl,
97 const ::types::blas_int *n,
98 std::complex<float> * a,
99 const ::types::blas_int *lda,
100 std::complex<float> * w,
101 std::complex<float> * vl,
102 const ::types::blas_int *ldvl,
103 std::complex<float> * vr,
104 const ::types::blas_int *ldvr,
105 std::complex<float> * work,
106 const ::types::blas_int *lwork,
111 zgeev_(
const char * jobvl,
113 const ::types::blas_int *n,
114 std::complex<double> * a,
115 const ::types::blas_int *lda,
116 std::complex<double> * w,
117 std::complex<double> * vl,
118 const ::types::blas_int *ldvl,
119 std::complex<double> * vr,
120 const ::types::blas_int *ldvr,
121 std::complex<double> * work,
122 const ::types::blas_int *lwork,
127 sgeevx_(
const char * balanc,
131 const ::types::blas_int *n,
133 const ::types::blas_int *lda,
137 const ::types::blas_int *ldvl,
139 const ::types::blas_int *ldvr,
147 const ::types::blas_int *lwork,
152 dgeevx_(
const char * balanc,
156 const ::types::blas_int *n,
158 const ::types::blas_int *lda,
162 const ::types::blas_int *ldvl,
164 const ::types::blas_int *ldvr,
172 const ::types::blas_int *lwork,
177 cgeevx_(
const char * balanc,
181 const ::types::blas_int *n,
182 std::complex<float> * a,
183 const ::types::blas_int *lda,
184 std::complex<float> * w,
185 std::complex<float> * vl,
186 const ::types::blas_int *ldvl,
187 std::complex<float> * vr,
188 const ::types::blas_int *ldvr,
195 std::complex<float> * work,
196 const ::types::blas_int *lwork,
201 zgeevx_(
const char * balanc,
205 const ::types::blas_int *n,
206 std::complex<double> * a,
207 const ::types::blas_int *lda,
208 std::complex<double> * w,
209 std::complex<double> * vl,
210 const ::types::blas_int *ldvl,
211 std::complex<double> * vr,
212 const ::types::blas_int *ldvr,
219 std::complex<double> * work,
220 const ::types::blas_int *lwork,
225 sgelsd_(const ::types::blas_int *m,
226 const ::types::blas_int *n,
227 const ::types::blas_int *nrhs,
229 const ::types::blas_int *lda,
231 const ::types::blas_int *ldb,
236 const ::types::blas_int *lwork,
241 dgelsd_(const ::types::blas_int *m,
242 const ::types::blas_int *n,
243 const ::types::blas_int *nrhs,
245 const ::types::blas_int *lda,
247 const ::types::blas_int *ldb,
249 const double * rcond,
252 const ::types::blas_int *lwork,
257 cgelsd_(const ::types::blas_int *m,
258 const ::types::blas_int *n,
259 const ::types::blas_int *nrhs,
260 std::complex<float> * a,
261 const ::types::blas_int *lda,
262 std::complex<float> * b,
263 const ::types::blas_int *ldb,
267 std::complex<float> * work,
268 const ::types::blas_int *lwork,
274 zgelsd_(const ::types::blas_int *m,
275 const ::types::blas_int *n,
276 const ::types::blas_int *nrhs,
277 std::complex<double> * a,
278 const ::types::blas_int *lda,
279 std::complex<double> * b,
280 const ::types::blas_int *ldb,
282 const double * rcond,
284 std::complex<double> * work,
285 const ::types::blas_int *lwork,
291 sgemm_(
const char * transa,
293 const ::types::blas_int *m,
294 const ::types::blas_int *n,
295 const ::types::blas_int *k,
298 const ::types::blas_int *lda,
300 const ::types::blas_int *ldb,
303 const ::types::blas_int *ldc);
306 dgemm_(
const char * transa,
308 const ::types::blas_int *m,
309 const ::types::blas_int *n,
310 const ::types::blas_int *k,
311 const double * alpha,
313 const ::types::blas_int *lda,
315 const ::types::blas_int *ldb,
318 const ::types::blas_int *ldc);
321 cgemm_(
const char * transa,
323 const ::types::blas_int *m,
324 const ::types::blas_int *n,
325 const ::types::blas_int *k,
326 const std::complex<float> * alpha,
327 const std::complex<float> * a,
328 const ::types::blas_int *lda,
329 const std::complex<float> * b,
330 const ::types::blas_int *ldb,
331 const std::complex<float> * beta,
332 std::complex<float> * c,
333 const ::types::blas_int *ldc);
336 zgemm_(
const char * transa,
338 const ::types::blas_int *m,
339 const ::types::blas_int *n,
340 const ::types::blas_int *k,
341 const std::complex<double> * alpha,
342 const std::complex<double> * a,
343 const ::types::blas_int *lda,
344 const std::complex<double> * b,
345 const ::types::blas_int *ldb,
346 const std::complex<double> * beta,
347 std::complex<double> * c,
348 const ::types::blas_int *ldc);
351 sgemv_(
const char * trans,
352 const ::types::blas_int *m,
353 const ::types::blas_int *n,
356 const ::types::blas_int *lda,
358 const ::types::blas_int *incx,
361 const ::types::blas_int *incy);
364 dgemv_(
const char * trans,
365 const ::types::blas_int *m,
366 const ::types::blas_int *n,
367 const double * alpha,
369 const ::types::blas_int *lda,
371 const ::types::blas_int *incx,
374 const ::types::blas_int *incy);
377 cgemv_(
const char * trans,
378 const ::types::blas_int *m,
379 const ::types::blas_int *n,
380 const std::complex<float> * alpha,
381 const std::complex<float> * a,
382 const ::types::blas_int *lda,
383 const std::complex<float> * x,
384 const ::types::blas_int *incx,
385 const std::complex<float> * beta,
386 std::complex<float> * y,
387 const ::types::blas_int *incy);
390 zgemv_(
const char * trans,
391 const ::types::blas_int *m,
392 const ::types::blas_int *n,
393 const std::complex<double> * alpha,
394 const std::complex<double> * a,
395 const ::types::blas_int *lda,
396 const std::complex<double> * x,
397 const ::types::blas_int *incx,
398 const std::complex<double> * beta,
399 std::complex<double> * y,
400 const ::types::blas_int *incy);
403 sgeqrf_(const ::types::blas_int *m,
404 const ::types::blas_int *n,
406 const ::types::blas_int *lda,
409 const ::types::blas_int *lwork,
413 dgeqrf_(const ::types::blas_int *m,
414 const ::types::blas_int *n,
416 const ::types::blas_int *lda,
419 const ::types::blas_int *lwork,
423 cgeqrf_(const ::types::blas_int *m,
424 const ::types::blas_int *n,
425 std::complex<float> * a,
426 const ::types::blas_int *lda,
427 std::complex<float> * tau,
428 std::complex<float> * work,
429 const ::types::blas_int *lwork,
433 zgeqrf_(const ::types::blas_int *m,
434 const ::types::blas_int *n,
435 std::complex<double> * a,
436 const ::types::blas_int *lda,
437 std::complex<double> * tau,
438 std::complex<double> * work,
439 const ::types::blas_int *lwork,
443 sgesdd_(
const char * jobz,
444 const ::types::blas_int *m,
445 const ::types::blas_int *n,
447 const ::types::blas_int *lda,
450 const ::types::blas_int *ldu,
452 const ::types::blas_int *ldvt,
454 const ::types::blas_int *lwork,
459 dgesdd_(
const char * jobz,
460 const ::types::blas_int *m,
461 const ::types::blas_int *n,
463 const ::types::blas_int *lda,
466 const ::types::blas_int *ldu,
468 const ::types::blas_int *ldvt,
470 const ::types::blas_int *lwork,
475 cgesdd_(
const char * jobz,
476 const ::types::blas_int *m,
477 const ::types::blas_int *n,
478 std::complex<float> * a,
479 const ::types::blas_int *lda,
481 std::complex<float> * u,
482 const ::types::blas_int *ldu,
483 std::complex<float> * vt,
484 const ::types::blas_int *ldvt,
485 std::complex<float> * work,
486 const ::types::blas_int *lwork,
492 zgesdd_(
const char * jobz,
493 const ::types::blas_int *m,
494 const ::types::blas_int *n,
495 std::complex<double> * a,
496 const ::types::blas_int *lda,
498 std::complex<double> * u,
499 const ::types::blas_int *ldu,
500 std::complex<double> * vt,
501 const ::types::blas_int *ldvt,
502 std::complex<double> * work,
503 const ::types::blas_int *lwork,
509 sgesvd_(
const char * jobu,
511 const ::types::blas_int *m,
512 const ::types::blas_int *n,
514 const ::types::blas_int *lda,
517 const ::types::blas_int *ldu,
519 const ::types::blas_int *ldvt,
521 const ::types::blas_int *lwork,
525 dgesvd_(
const char * jobu,
527 const ::types::blas_int *m,
528 const ::types::blas_int *n,
530 const ::types::blas_int *lda,
533 const ::types::blas_int *ldu,
535 const ::types::blas_int *ldvt,
537 const ::types::blas_int *lwork,
541 cgesvd_(
const char * jobu,
543 const ::types::blas_int *m,
544 const ::types::blas_int *n,
545 std::complex<float> * a,
546 const ::types::blas_int *lda,
548 std::complex<float> * u,
549 const ::types::blas_int *ldu,
550 std::complex<float> * vt,
551 const ::types::blas_int *ldvt,
552 std::complex<float> * work,
553 const ::types::blas_int *lwork,
558 zgesvd_(
const char * jobu,
560 const ::types::blas_int *m,
561 const ::types::blas_int *n,
562 std::complex<double> * a,
563 const ::types::blas_int *lda,
565 std::complex<double> * u,
566 const ::types::blas_int *ldu,
567 std::complex<double> * vt,
568 const ::types::blas_int *ldvt,
569 std::complex<double> * work,
570 const ::types::blas_int *lwork,
575 sgetrf_(const ::types::blas_int *m,
576 const ::types::blas_int *n,
578 const ::types::blas_int *lda,
583 dgetrf_(const ::types::blas_int *m,
584 const ::types::blas_int *n,
586 const ::types::blas_int *lda,
591 cgetrf_(const ::types::blas_int *m,
592 const ::types::blas_int *n,
593 std::complex<float> * a,
594 const ::types::blas_int *lda,
599 zgetrf_(const ::types::blas_int *m,
600 const ::types::blas_int *n,
601 std::complex<double> * a,
602 const ::types::blas_int *lda,
607 sgetri_(const ::types::blas_int *n,
609 const ::types::blas_int *lda,
610 const ::types::blas_int *ipiv,
612 const ::types::blas_int *lwork,
616 dgetri_(const ::types::blas_int *n,
618 const ::types::blas_int *lda,
619 const ::types::blas_int *ipiv,
621 const ::types::blas_int *lwork,
625 cgetri_(const ::types::blas_int *n,
626 std::complex<float> * a,
627 const ::types::blas_int *lda,
628 const ::types::blas_int *ipiv,
629 std::complex<float> * work,
630 const ::types::blas_int *lwork,
634 zgetri_(const ::types::blas_int *n,
635 std::complex<double> * a,
636 const ::types::blas_int *lda,
637 const ::types::blas_int *ipiv,
638 std::complex<double> * work,
639 const ::types::blas_int *lwork,
643 sgetrs_(
const char * trans,
644 const ::types::blas_int *n,
645 const ::types::blas_int *nrhs,
647 const ::types::blas_int *lda,
648 const ::types::blas_int *ipiv,
650 const ::types::blas_int *ldb,
654 dgetrs_(
const char * trans,
655 const ::types::blas_int *n,
656 const ::types::blas_int *nrhs,
658 const ::types::blas_int *lda,
659 const ::types::blas_int *ipiv,
661 const ::types::blas_int *ldb,
665 cgetrs_(
const char * trans,
666 const ::types::blas_int *n,
667 const ::types::blas_int *nrhs,
668 const std::complex<float> * a,
669 const ::types::blas_int *lda,
670 const ::types::blas_int *ipiv,
671 std::complex<float> * b,
672 const ::types::blas_int *ldb,
676 zgetrs_(
const char * trans,
677 const ::types::blas_int *n,
678 const ::types::blas_int *nrhs,
679 const std::complex<double> * a,
680 const ::types::blas_int *lda,
681 const ::types::blas_int *ipiv,
682 std::complex<double> * b,
683 const ::types::blas_int *ldb,
687 slamch_(
const char *cmach);
690 dlamch_(
const char *cmach);
693 slange_(
const char * norm,
694 const ::types::blas_int *m,
695 const ::types::blas_int *n,
697 const ::types::blas_int *lda,
701 dlange_(
const char * norm,
702 const ::types::blas_int *m,
703 const ::types::blas_int *n,
705 const ::types::blas_int *lda,
709 clange_(
const char * norm,
710 const ::types::blas_int *m,
711 const ::types::blas_int *n,
712 const std::complex<float> * a,
713 const ::types::blas_int *lda,
717 zlange_(
const char * norm,
718 const ::types::blas_int *m,
719 const ::types::blas_int *n,
720 const std::complex<double> * a,
721 const ::types::blas_int *lda,
725 slansy_(
const char * norm,
727 const ::types::blas_int *n,
729 const ::types::blas_int *lda,
733 dlansy_(
const char * norm,
735 const ::types::blas_int *n,
737 const ::types::blas_int *lda,
741 clansy_(
const char * norm,
743 const ::types::blas_int *n,
744 const std::complex<float> * a,
745 const ::types::blas_int *lda,
749 zlansy_(
const char * norm,
751 const ::types::blas_int *n,
752 const std::complex<double> * a,
753 const ::types::blas_int *lda,
757 slascl_(
const char * type,
758 const ::types::blas_int *kl,
759 const ::types::blas_int *ku,
762 const ::types::blas_int *m,
763 const ::types::blas_int *n,
765 const ::types::blas_int *lda,
769 dlascl_(
const char * type,
770 const ::types::blas_int *kl,
771 const ::types::blas_int *ku,
772 const double * cfrom,
774 const ::types::blas_int *m,
775 const ::types::blas_int *n,
777 const ::types::blas_int *lda,
781 clascl_(
const char * type,
782 const ::types::blas_int *kl,
783 const ::types::blas_int *ku,
786 const ::types::blas_int *m,
787 const ::types::blas_int *n,
788 std::complex<float> * a,
789 const ::types::blas_int *lda,
793 zlascl_(
const char * type,
794 const ::types::blas_int *kl,
795 const ::types::blas_int *ku,
796 const double * cfrom,
798 const ::types::blas_int *m,
799 const ::types::blas_int *n,
800 std::complex<double> * a,
801 const ::types::blas_int *lda,
805 sorgqr_(const ::types::blas_int *m,
806 const ::types::blas_int *n,
807 const ::types::blas_int *k,
809 const ::types::blas_int *lda,
812 const ::types::blas_int *lwork,
816 dorgqr_(const ::types::blas_int *m,
817 const ::types::blas_int *n,
818 const ::types::blas_int *k,
820 const ::types::blas_int *lda,
823 const ::types::blas_int *lwork,
827 sormqr_(
const char * side,
829 const ::types::blas_int *m,
830 const ::types::blas_int *n,
831 const ::types::blas_int *k,
833 const ::types::blas_int *lda,
836 const ::types::blas_int *ldc,
838 const ::types::blas_int *lwork,
842 dormqr_(
const char * side,
844 const ::types::blas_int *m,
845 const ::types::blas_int *n,
846 const ::types::blas_int *k,
848 const ::types::blas_int *lda,
851 const ::types::blas_int *ldc,
853 const ::types::blas_int *lwork,
857 spocon_(
const char * uplo,
858 const ::types::blas_int *n,
860 const ::types::blas_int *lda,
868 dpocon_(
const char * uplo,
869 const ::types::blas_int *n,
871 const ::types::blas_int *lda,
872 const double * anorm,
879 cpocon_(
const char * uplo,
880 const ::types::blas_int *n,
881 const std::complex<float> * a,
882 const ::types::blas_int *lda,
885 std::complex<float> * work,
890 zpocon_(
const char * uplo,
891 const ::types::blas_int *n,
892 const std::complex<double> * a,
893 const ::types::blas_int *lda,
894 const double * anorm,
896 std::complex<double> * work,
901 spotrf_(
const char * uplo,
902 const ::types::blas_int *n,
904 const ::types::blas_int *lda,
908 dpotrf_(
const char * uplo,
909 const ::types::blas_int *n,
911 const ::types::blas_int *lda,
915 cpotrf_(
const char * uplo,
916 const ::types::blas_int *n,
917 std::complex<float> * a,
918 const ::types::blas_int *lda,
922 zpotrf_(
const char * uplo,
923 const ::types::blas_int *n,
924 std::complex<double> * a,
925 const ::types::blas_int *lda,
929 spotri_(
const char * uplo,
930 const ::types::blas_int *n,
932 const ::types::blas_int *lda,
936 dpotri_(
const char * uplo,
937 const ::types::blas_int *n,
939 const ::types::blas_int *lda,
943 cpotri_(
const char * uplo,
944 const ::types::blas_int *n,
945 std::complex<float> * a,
946 const ::types::blas_int *lda,
950 zpotri_(
const char * uplo,
951 const ::types::blas_int *n,
952 std::complex<double> * a,
953 const ::types::blas_int *lda,
957 spotrs_(
const char * uplo,
958 const ::types::blas_int *n,
959 const ::types::blas_int *nrhs,
961 const ::types::blas_int *lda,
963 const ::types::blas_int *ldb,
967 dpotrs_(
const char * uplo,
968 const ::types::blas_int *n,
969 const ::types::blas_int *nrhs,
971 const ::types::blas_int *lda,
973 const ::types::blas_int *ldb,
977 cpotrs_(
const char * uplo,
978 const ::types::blas_int *n,
979 const ::types::blas_int *nrhs,
980 const std::complex<float> * a,
981 const ::types::blas_int *lda,
982 std::complex<float> * b,
983 const ::types::blas_int *ldb,
987 zpotrs_(
const char * uplo,
988 const ::types::blas_int *n,
989 const ::types::blas_int *nrhs,
990 const std::complex<double> * a,
991 const ::types::blas_int *lda,
992 std::complex<double> * b,
993 const ::types::blas_int *ldb,
997 sstev_(
const char * jobz,
998 const ::types::blas_int *n,
1002 const ::types::blas_int *ldz,
1007 dstev_(
const char * jobz,
1008 const ::types::blas_int *n,
1012 const ::types::blas_int *ldz,
1017 ssyev_(
const char * jobz,
1019 const ::types::blas_int *n,
1021 const ::types::blas_int *lda,
1024 const ::types::blas_int *lwork,
1028 dsyev_(
const char * jobz,
1030 const ::types::blas_int *n,
1032 const ::types::blas_int *lda,
1035 const ::types::blas_int *lwork,
1039 ssyevr_(
const char * jobz,
1042 const ::types::blas_int *n,
1044 const ::types::blas_int *lda,
1047 const ::types::blas_int *il,
1048 const ::types::blas_int *iu,
1049 const float * abstol,
1053 const ::types::blas_int *ldz,
1056 const ::types::blas_int *lwork,
1058 const ::types::blas_int *liwork,
1062 dsyevr_(
const char * jobz,
1065 const ::types::blas_int *n,
1067 const ::types::blas_int *lda,
1070 const ::types::blas_int *il,
1071 const ::types::blas_int *iu,
1072 const double * abstol,
1076 const ::types::blas_int *ldz,
1079 const ::types::blas_int *lwork,
1081 const ::types::blas_int *liwork,
1085 ssyevx_(
const char * jobz,
1088 const ::types::blas_int *n,
1090 const ::types::blas_int *lda,
1093 const ::types::blas_int *il,
1094 const ::types::blas_int *iu,
1095 const float * abstol,
1099 const ::types::blas_int *ldz,
1101 const ::types::blas_int *lwork,
1107 dsyevx_(
const char * jobz,
1110 const ::types::blas_int *n,
1112 const ::types::blas_int *lda,
1115 const ::types::blas_int *il,
1116 const ::types::blas_int *iu,
1117 const double * abstol,
1121 const ::types::blas_int *ldz,
1123 const ::types::blas_int *lwork,
1129 ssygv_(const ::types::blas_int *itype,
1132 const ::types::blas_int *n,
1134 const ::types::blas_int *lda,
1136 const ::types::blas_int *ldb,
1139 const ::types::blas_int *lwork,
1143 dsygv_(const ::types::blas_int *itype,
1146 const ::types::blas_int *n,
1148 const ::types::blas_int *lda,
1150 const ::types::blas_int *ldb,
1153 const ::types::blas_int *lwork,
1157 ssygvx_(const ::types::blas_int *itype,
1161 const ::types::blas_int *n,
1163 const ::types::blas_int *lda,
1165 const ::types::blas_int *ldb,
1168 const ::types::blas_int *il,
1169 const ::types::blas_int *iu,
1170 const float * abstol,
1174 const ::types::blas_int *ldz,
1176 const ::types::blas_int *lwork,
1182 dsygvx_(const ::types::blas_int *itype,
1186 const ::types::blas_int *n,
1188 const ::types::blas_int *lda,
1190 const ::types::blas_int *ldb,
1193 const ::types::blas_int *il,
1194 const ::types::blas_int *iu,
1195 const double * abstol,
1199 const ::types::blas_int *ldz,
1201 const ::types::blas_int *lwork,
1207 ssyr_(
const char * uplo,
1208 const ::types::blas_int *n,
1209 const float * alpha,
1211 const ::types::blas_int *incx,
1213 const ::types::blas_int *lda);
1216 dsyr_(
const char * uplo,
1217 const ::types::blas_int *n,
1218 const double * alpha,
1220 const ::types::blas_int *incx,
1222 const ::types::blas_int *lda);
1225 ssyrk_(
const char * uplo,
1227 const ::types::blas_int *n,
1228 const ::types::blas_int *k,
1229 const float * alpha,
1231 const ::types::blas_int *lda,
1234 const ::types::blas_int *ldc);
1237 dsyrk_(
const char * uplo,
1239 const ::types::blas_int *n,
1240 const ::types::blas_int *k,
1241 const double * alpha,
1243 const ::types::blas_int *lda,
1244 const double * beta,
1246 const ::types::blas_int *ldc);
1249 csyrk_(
const char * uplo,
1251 const ::types::blas_int *n,
1252 const ::types::blas_int *k,
1253 const std::complex<float> * alpha,
1254 const std::complex<float> * a,
1255 const ::types::blas_int *lda,
1256 const std::complex<float> * beta,
1257 std::complex<float> * c,
1258 const ::types::blas_int *ldc);
1261 zsyrk_(
const char * uplo,
1263 const ::types::blas_int *n,
1264 const ::types::blas_int *k,
1265 const std::complex<double> * alpha,
1266 const std::complex<double> * a,
1267 const ::types::blas_int *lda,
1268 const std::complex<double> * beta,
1269 std::complex<double> * c,
1270 const ::types::blas_int *ldc);
1273 strcon_(
const char * norm,
1276 const ::types::blas_int *n,
1278 const ::types::blas_int *lda,
1285 dtrcon_(
const char * norm,
1288 const ::types::blas_int *n,
1290 const ::types::blas_int *lda,
1297 ctrcon_(
const char * norm,
1300 const ::types::blas_int *n,
1301 const std::complex<float> * a,
1302 const ::types::blas_int *lda,
1304 std::complex<float> * work,
1309 ztrcon_(
const char * norm,
1312 const ::types::blas_int *n,
1313 const std::complex<double> * a,
1314 const ::types::blas_int *lda,
1316 std::complex<double> * work,
1321 strmv_(
const char * uplo,
1324 const ::types::blas_int *n,
1326 const ::types::blas_int *lda,
1328 const ::types::blas_int *incx);
1331 dtrmv_(
const char * uplo,
1334 const ::types::blas_int *n,
1336 const ::types::blas_int *lda,
1338 const ::types::blas_int *incx);
1341 ctrmv_(
const char * uplo,
1344 const ::types::blas_int *n,
1345 const std::complex<float> * a,
1346 const ::types::blas_int *lda,
1347 std::complex<float> * x,
1348 const ::types::blas_int *incx);
1351 ztrmv_(
const char * uplo,
1354 const ::types::blas_int *n,
1355 const std::complex<double> * a,
1356 const ::types::blas_int *lda,
1357 std::complex<double> * x,
1358 const ::types::blas_int *incx);
1361 strtrs_(
const char * uplo,
1364 const ::types::blas_int *n,
1365 const ::types::blas_int *nrhs,
1367 const ::types::blas_int *lda,
1369 const ::types::blas_int *ldb,
1373 dtrtrs_(
const char * uplo,
1376 const ::types::blas_int *n,
1377 const ::types::blas_int *nrhs,
1379 const ::types::blas_int *lda,
1381 const ::types::blas_int *ldb,
1385 ctrtrs_(
const char * uplo,
1388 const ::types::blas_int *n,
1389 const ::types::blas_int *nrhs,
1390 const std::complex<float> * a,
1391 const ::types::blas_int *lda,
1392 std::complex<float> * b,
1393 const ::types::blas_int *ldb,
1397 ztrtrs_(
const char * uplo,
1400 const ::types::blas_int *n,
1401 const ::types::blas_int *nrhs,
1402 const std::complex<double> * a,
1403 const ::types::blas_int *lda,
1404 std::complex<double> * b,
1405 const ::types::blas_int *ldb,
1409 DEAL_II_NAMESPACE_OPEN
1413 template <
typename number1,
typename number2,
typename number3>
1415 axpy(const ::types::blas_int *,
1418 const ::types::blas_int *,
1420 const ::types::blas_int *)
1428 axpy(const ::types::blas_int *n,
1431 const ::types::blas_int *incx,
1433 const ::types::blas_int *incy)
1435 #ifdef DEAL_II_WITH_LAPACK 1436 saxpy_(n, sa, sx, incx, sy, incy);
1445 #endif // DEAL_II_WITH_LAPACK 1451 axpy(const ::types::blas_int *n,
1454 const ::types::blas_int *incx,
1456 const ::types::blas_int *incy)
1458 #ifdef DEAL_II_WITH_LAPACK 1459 daxpy_(n, da, dx, incx, dy, incy);
1468 #endif // DEAL_II_WITH_LAPACK 1474 axpy(const ::types::blas_int *n,
1475 const std::complex<float> * ca,
1476 const std::complex<float> * cx,
1477 const ::types::blas_int *incx,
1478 std::complex<float> * cy,
1479 const ::types::blas_int *incy)
1481 #ifdef DEAL_II_WITH_LAPACK 1482 caxpy_(n, ca, cx, incx, cy, incy);
1491 #endif // DEAL_II_WITH_LAPACK 1497 axpy(const ::types::blas_int *n,
1498 const std::complex<double> * za,
1499 const std::complex<double> * zx,
1500 const ::types::blas_int *incx,
1501 std::complex<double> * zy,
1502 const ::types::blas_int *incy)
1504 #ifdef DEAL_II_WITH_LAPACK 1505 zaxpy_(n, za, zx, incx, zy, incy);
1514 #endif // DEAL_II_WITH_LAPACK 1519 template <
typename number1,
1528 const ::types::blas_int *,
1530 const ::types::blas_int *,
1534 const ::types::blas_int *,
1536 const ::types::blas_int *,
1538 const ::types::blas_int *,
1547 geev(
const char * jobvl,
1549 const ::types::blas_int *n,
1551 const ::types::blas_int *lda,
1555 const ::types::blas_int *ldvl,
1557 const ::types::blas_int *ldvr,
1559 const ::types::blas_int *lwork,
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 1587 geev(
const char * jobvl,
1589 const ::types::blas_int *n,
1591 const ::types::blas_int *lda,
1595 const ::types::blas_int *ldvl,
1597 const ::types::blas_int *ldvr,
1599 const ::types::blas_int *lwork,
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 1627 geev(
const char * jobvl,
1629 const ::types::blas_int *n,
1630 std::complex<float> * a,
1631 const ::types::blas_int *lda,
1632 std::complex<float> * w,
1633 std::complex<float> * vl,
1634 const ::types::blas_int *ldvl,
1635 std::complex<float> * vr,
1636 const ::types::blas_int *ldvr,
1637 std::complex<float> * work,
1638 const ::types::blas_int *lwork,
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 1667 geev(
const char * jobvl,
1669 const ::types::blas_int *n,
1670 std::complex<double> * a,
1671 const ::types::blas_int *lda,
1672 std::complex<double> * w,
1673 std::complex<double> * vl,
1674 const ::types::blas_int *ldvl,
1675 std::complex<double> * vr,
1676 const ::types::blas_int *ldvr,
1677 std::complex<double> * work,
1678 const ::types::blas_int *lwork,
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,
1721 const ::types::blas_int *,
1723 const ::types::blas_int *,
1727 const ::types::blas_int *,
1729 const ::types::blas_int *,
1737 const ::types::blas_int *,
1747 geevx(
const char * balanc,
1751 const ::types::blas_int *n,
1753 const ::types::blas_int *lda,
1757 const ::types::blas_int *ldvl,
1759 const ::types::blas_int *ldvr,
1767 const ::types::blas_int *lwork,
1771 #ifdef DEAL_II_WITH_LAPACK 1820 #endif // DEAL_II_WITH_LAPACK 1826 geevx(
const char * balanc,
1830 const ::types::blas_int *n,
1832 const ::types::blas_int *lda,
1836 const ::types::blas_int *ldvl,
1838 const ::types::blas_int *ldvr,
1846 const ::types::blas_int *lwork,
1850 #ifdef DEAL_II_WITH_LAPACK 1899 #endif // DEAL_II_WITH_LAPACK 1905 geevx(
const char * balanc,
1909 const ::types::blas_int *n,
1910 std::complex<float> * a,
1911 const ::types::blas_int *lda,
1912 std::complex<float> * w,
1913 std::complex<float> * vl,
1914 const ::types::blas_int *ldvl,
1915 std::complex<float> * vr,
1916 const ::types::blas_int *ldvr,
1923 std::complex<float> * work,
1924 const ::types::blas_int *lwork,
1928 #ifdef DEAL_II_WITH_LAPACK 1975 #endif // DEAL_II_WITH_LAPACK 1981 geevx(
const char * balanc,
1985 const ::types::blas_int *n,
1986 std::complex<double> * a,
1987 const ::types::blas_int *lda,
1988 std::complex<double> * w,
1989 std::complex<double> * vl,
1990 const ::types::blas_int *ldvl,
1991 std::complex<double> * vr,
1992 const ::types::blas_int *ldvr,
1999 std::complex<double> * work,
2000 const ::types::blas_int *lwork,
2004 #ifdef DEAL_II_WITH_LAPACK 2051 #endif // DEAL_II_WITH_LAPACK 2056 template <
typename number1,
2062 gelsd(const ::types::blas_int *,
2063 const ::types::blas_int *,
2064 const ::types::blas_int *,
2066 const ::types::blas_int *,
2068 const ::types::blas_int *,
2073 const ::types::blas_int *,
2083 gelsd(const ::types::blas_int *m,
2084 const ::types::blas_int *n,
2085 const ::types::blas_int *nrhs,
2087 const ::types::blas_int *lda,
2089 const ::types::blas_int *ldb,
2091 const float * rcond,
2094 const ::types::blas_int *lwork,
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 2122 gelsd(const ::types::blas_int *m,
2123 const ::types::blas_int *n,
2124 const ::types::blas_int *nrhs,
2126 const ::types::blas_int *lda,
2128 const ::types::blas_int *ldb,
2130 const double * rcond,
2133 const ::types::blas_int *lwork,
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 2161 gelsd(const ::types::blas_int *m,
2162 const ::types::blas_int *n,
2163 const ::types::blas_int *nrhs,
2164 std::complex<float> * a,
2165 const ::types::blas_int *lda,
2166 std::complex<float> * b,
2167 const ::types::blas_int *ldb,
2169 const float * rcond,
2171 std::complex<float> * work,
2172 const ::types::blas_int *lwork,
2177 #ifdef DEAL_II_WITH_LAPACK 2210 #endif // DEAL_II_WITH_LAPACK 2216 gelsd(const ::types::blas_int *m,
2217 const ::types::blas_int *n,
2218 const ::types::blas_int *nrhs,
2219 std::complex<double> * a,
2220 const ::types::blas_int *lda,
2221 std::complex<double> * b,
2222 const ::types::blas_int *ldb,
2224 const double * rcond,
2226 std::complex<double> * work,
2227 const ::types::blas_int *lwork,
2232 #ifdef DEAL_II_WITH_LAPACK 2265 #endif // DEAL_II_WITH_LAPACK 2270 template <
typename number1,
2278 const ::types::blas_int *,
2279 const ::types::blas_int *,
2280 const ::types::blas_int *,
2283 const ::types::blas_int *,
2285 const ::types::blas_int *,
2288 const ::types::blas_int *)
2296 gemm(
const char * transa,
2297 const char * transb,
2298 const ::types::blas_int *m,
2299 const ::types::blas_int *n,
2300 const ::types::blas_int *k,
2301 const float * alpha,
2303 const ::types::blas_int *lda,
2305 const ::types::blas_int *ldb,
2308 const ::types::blas_int *ldc)
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 2333 gemm(
const char * transa,
2334 const char * transb,
2335 const ::types::blas_int *m,
2336 const ::types::blas_int *n,
2337 const ::types::blas_int *k,
2338 const double * alpha,
2340 const ::types::blas_int *lda,
2342 const ::types::blas_int *ldb,
2343 const double * beta,
2345 const ::types::blas_int *ldc)
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 2370 gemm(
const char * transa,
2371 const char * transb,
2372 const ::types::blas_int *m,
2373 const ::types::blas_int *n,
2374 const ::types::blas_int *k,
2375 const std::complex<float> * alpha,
2376 const std::complex<float> * a,
2377 const ::types::blas_int *lda,
2378 const std::complex<float> * b,
2379 const ::types::blas_int *ldb,
2380 const std::complex<float> * beta,
2381 std::complex<float> * c,
2382 const ::types::blas_int *ldc)
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 2407 gemm(
const char * transa,
2408 const char * transb,
2409 const ::types::blas_int *m,
2410 const ::types::blas_int *n,
2411 const ::types::blas_int *k,
2412 const std::complex<double> * alpha,
2413 const std::complex<double> * a,
2414 const ::types::blas_int *lda,
2415 const std::complex<double> * b,
2416 const ::types::blas_int *ldb,
2417 const std::complex<double> * beta,
2418 std::complex<double> * c,
2419 const ::types::blas_int *ldc)
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,
2450 const ::types::blas_int *,
2451 const ::types::blas_int *,
2454 const ::types::blas_int *,
2456 const ::types::blas_int *,
2459 const ::types::blas_int *)
2467 gemv(
const char * trans,
2468 const ::types::blas_int *m,
2469 const ::types::blas_int *n,
2470 const float * alpha,
2472 const ::types::blas_int *lda,
2474 const ::types::blas_int *incx,
2477 const ::types::blas_int *incy)
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 2500 gemv(
const char * trans,
2501 const ::types::blas_int *m,
2502 const ::types::blas_int *n,
2503 const double * alpha,
2505 const ::types::blas_int *lda,
2507 const ::types::blas_int *incx,
2508 const double * beta,
2510 const ::types::blas_int *incy)
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 2533 gemv(
const char * trans,
2534 const ::types::blas_int *m,
2535 const ::types::blas_int *n,
2536 const std::complex<float> * alpha,
2537 const std::complex<float> * a,
2538 const ::types::blas_int *lda,
2539 const std::complex<float> * x,
2540 const ::types::blas_int *incx,
2541 const std::complex<float> * beta,
2542 std::complex<float> * y,
2543 const ::types::blas_int *incy)
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 2566 gemv(
const char * trans,
2567 const ::types::blas_int *m,
2568 const ::types::blas_int *n,
2569 const std::complex<double> * alpha,
2570 const std::complex<double> * a,
2571 const ::types::blas_int *lda,
2572 const std::complex<double> * x,
2573 const ::types::blas_int *incx,
2574 const std::complex<double> * beta,
2575 std::complex<double> * y,
2576 const ::types::blas_int *incy)
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>
2600 geqrf(const ::types::blas_int *,
2601 const ::types::blas_int *,
2603 const ::types::blas_int *,
2606 const ::types::blas_int *,
2615 geqrf(const ::types::blas_int *m,
2616 const ::types::blas_int *n,
2618 const ::types::blas_int *lda,
2621 const ::types::blas_int *lwork,
2624 #ifdef DEAL_II_WITH_LAPACK 2625 sgeqrf_(m, n, a, lda, tau, work, lwork, info);
2636 #endif // DEAL_II_WITH_LAPACK 2642 geqrf(const ::types::blas_int *m,
2643 const ::types::blas_int *n,
2645 const ::types::blas_int *lda,
2648 const ::types::blas_int *lwork,
2651 #ifdef DEAL_II_WITH_LAPACK 2652 dgeqrf_(m, n, a, lda, tau, work, lwork, info);
2663 #endif // DEAL_II_WITH_LAPACK 2669 geqrf(const ::types::blas_int *m,
2670 const ::types::blas_int *n,
2671 std::complex<float> * a,
2672 const ::types::blas_int *lda,
2673 std::complex<float> * tau,
2674 std::complex<float> * work,
2675 const ::types::blas_int *lwork,
2678 #ifdef DEAL_II_WITH_LAPACK 2679 cgeqrf_(m, n, a, lda, tau, work, lwork, info);
2690 #endif // DEAL_II_WITH_LAPACK 2696 geqrf(const ::types::blas_int *m,
2697 const ::types::blas_int *n,
2698 std::complex<double> * a,
2699 const ::types::blas_int *lda,
2700 std::complex<double> * tau,
2701 std::complex<double> * work,
2702 const ::types::blas_int *lwork,
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,
2729 const ::types::blas_int *,
2730 const ::types::blas_int *,
2732 const ::types::blas_int *,
2735 const ::types::blas_int *,
2737 const ::types::blas_int *,
2739 const ::types::blas_int *,
2749 gesdd(
const char * jobz,
2750 const ::types::blas_int *m,
2751 const ::types::blas_int *n,
2753 const ::types::blas_int *lda,
2756 const ::types::blas_int *ldu,
2758 const ::types::blas_int *ldvt,
2760 const ::types::blas_int *lwork,
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 2788 gesdd(
const char * jobz,
2789 const ::types::blas_int *m,
2790 const ::types::blas_int *n,
2792 const ::types::blas_int *lda,
2795 const ::types::blas_int *ldu,
2797 const ::types::blas_int *ldvt,
2799 const ::types::blas_int *lwork,
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 2827 gesdd(
const char * jobz,
2828 const ::types::blas_int *m,
2829 const ::types::blas_int *n,
2830 std::complex<float> * a,
2831 const ::types::blas_int *lda,
2833 std::complex<float> * u,
2834 const ::types::blas_int *ldu,
2835 std::complex<float> * vt,
2836 const ::types::blas_int *ldvt,
2837 std::complex<float> * work,
2838 const ::types::blas_int *lwork,
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 2869 gesdd(
const char * jobz,
2870 const ::types::blas_int *m,
2871 const ::types::blas_int *n,
2872 std::complex<double> * a,
2873 const ::types::blas_int *lda,
2875 std::complex<double> * u,
2876 const ::types::blas_int *ldu,
2877 std::complex<double> * vt,
2878 const ::types::blas_int *ldvt,
2879 std::complex<double> * work,
2880 const ::types::blas_int *lwork,
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,
2918 const ::types::blas_int *,
2919 const ::types::blas_int *,
2921 const ::types::blas_int *,
2924 const ::types::blas_int *,
2926 const ::types::blas_int *,
2928 const ::types::blas_int *,
2937 gesvd(
const char * jobu,
2939 const ::types::blas_int *m,
2940 const ::types::blas_int *n,
2942 const ::types::blas_int *lda,
2945 const ::types::blas_int *ldu,
2947 const ::types::blas_int *ldvt,
2949 const ::types::blas_int *lwork,
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 2976 gesvd(
const char * jobu,
2978 const ::types::blas_int *m,
2979 const ::types::blas_int *n,
2981 const ::types::blas_int *lda,
2984 const ::types::blas_int *ldu,
2986 const ::types::blas_int *ldvt,
2988 const ::types::blas_int *lwork,
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 3015 gesvd(
const char * jobu,
3017 const ::types::blas_int *m,
3018 const ::types::blas_int *n,
3019 std::complex<float> * a,
3020 const ::types::blas_int *lda,
3022 std::complex<float> * u,
3023 const ::types::blas_int *ldu,
3024 std::complex<float> * vt,
3025 const ::types::blas_int *ldvt,
3026 std::complex<float> * work,
3027 const ::types::blas_int *lwork,
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 3057 gesvd(
const char * jobu,
3059 const ::types::blas_int *m,
3060 const ::types::blas_int *n,
3061 std::complex<double> * a,
3062 const ::types::blas_int *lda,
3064 std::complex<double> * u,
3065 const ::types::blas_int *ldu,
3066 std::complex<double> * vt,
3067 const ::types::blas_int *ldvt,
3068 std::complex<double> * work,
3069 const ::types::blas_int *lwork,
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>
3100 getrf(const ::types::blas_int *,
3101 const ::types::blas_int *,
3103 const ::types::blas_int *,
3113 getrf(const ::types::blas_int *m,
3114 const ::types::blas_int *n,
3116 const ::types::blas_int *lda,
3120 #ifdef DEAL_II_WITH_LAPACK 3121 sgetrf_(m, n, a, lda, ipiv, info);
3130 #endif // DEAL_II_WITH_LAPACK 3136 getrf(const ::types::blas_int *m,
3137 const ::types::blas_int *n,
3139 const ::types::blas_int *lda,
3143 #ifdef DEAL_II_WITH_LAPACK 3144 dgetrf_(m, n, a, lda, ipiv, info);
3153 #endif // DEAL_II_WITH_LAPACK 3159 getrf(const ::types::blas_int *m,
3160 const ::types::blas_int *n,
3161 std::complex<float> * a,
3162 const ::types::blas_int *lda,
3166 #ifdef DEAL_II_WITH_LAPACK 3167 cgetrf_(m, n, a, lda, ipiv, info);
3176 #endif // DEAL_II_WITH_LAPACK 3182 getrf(const ::types::blas_int *m,
3183 const ::types::blas_int *n,
3184 std::complex<double> * a,
3185 const ::types::blas_int *lda,
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>
3206 getri(const ::types::blas_int *,
3208 const ::types::blas_int *,
3209 const ::types::blas_int *,
3211 const ::types::blas_int *,
3220 getri(const ::types::blas_int *n,
3222 const ::types::blas_int *lda,
3223 const ::types::blas_int *ipiv,
3225 const ::types::blas_int *lwork,
3228 #ifdef DEAL_II_WITH_LAPACK 3229 sgetri_(n, a, lda, ipiv, work, lwork, info);
3239 #endif // DEAL_II_WITH_LAPACK 3245 getri(const ::types::blas_int *n,
3247 const ::types::blas_int *lda,
3248 const ::types::blas_int *ipiv,
3250 const ::types::blas_int *lwork,
3253 #ifdef DEAL_II_WITH_LAPACK 3254 dgetri_(n, a, lda, ipiv, work, lwork, info);
3264 #endif // DEAL_II_WITH_LAPACK 3270 getri(const ::types::blas_int *n,
3271 std::complex<float> * a,
3272 const ::types::blas_int *lda,
3273 const ::types::blas_int *ipiv,
3274 std::complex<float> * work,
3275 const ::types::blas_int *lwork,
3278 #ifdef DEAL_II_WITH_LAPACK 3279 cgetri_(n, a, lda, ipiv, work, lwork, info);
3289 #endif // DEAL_II_WITH_LAPACK 3295 getri(const ::types::blas_int *n,
3296 std::complex<double> * a,
3297 const ::types::blas_int *lda,
3298 const ::types::blas_int *ipiv,
3299 std::complex<double> * work,
3300 const ::types::blas_int *lwork,
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>
3322 const ::types::blas_int *,
3323 const ::types::blas_int *,
3325 const ::types::blas_int *,
3326 const ::types::blas_int *,
3328 const ::types::blas_int *,
3337 getrs(
const char * trans,
3338 const ::types::blas_int *n,
3339 const ::types::blas_int *nrhs,
3341 const ::types::blas_int *lda,
3342 const ::types::blas_int *ipiv,
3344 const ::types::blas_int *ldb,
3347 #ifdef DEAL_II_WITH_LAPACK 3348 sgetrs_(trans, n, nrhs, a, lda, ipiv, b, ldb, info);
3360 #endif // DEAL_II_WITH_LAPACK 3366 getrs(
const char * trans,
3367 const ::types::blas_int *n,
3368 const ::types::blas_int *nrhs,
3370 const ::types::blas_int *lda,
3371 const ::types::blas_int *ipiv,
3373 const ::types::blas_int *ldb,
3376 #ifdef DEAL_II_WITH_LAPACK 3377 dgetrs_(trans, n, nrhs, a, lda, ipiv, b, ldb, info);
3389 #endif // DEAL_II_WITH_LAPACK 3395 getrs(
const char * trans,
3396 const ::types::blas_int *n,
3397 const ::types::blas_int *nrhs,
3398 const std::complex<float> * a,
3399 const ::types::blas_int *lda,
3400 const ::types::blas_int *ipiv,
3401 std::complex<float> * b,
3402 const ::types::blas_int *ldb,
3405 #ifdef DEAL_II_WITH_LAPACK 3406 cgetrs_(trans, n, nrhs, a, lda, ipiv, b, ldb, info);
3418 #endif // DEAL_II_WITH_LAPACK 3424 getrs(
const char * trans,
3425 const ::types::blas_int *n,
3426 const ::types::blas_int *nrhs,
3427 const std::complex<double> * a,
3428 const ::types::blas_int *lda,
3429 const ::types::blas_int *ipiv,
3430 std::complex<double> * b,
3431 const ::types::blas_int *ldb,
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>
3464 lamch(
const char *cmach)
3466 #ifdef DEAL_II_WITH_LAPACK 3467 return slamch_(cmach);
3472 #endif // DEAL_II_WITH_LAPACK 3479 lamch(
const char *cmach)
3481 #ifdef DEAL_II_WITH_LAPACK 3482 return dlamch_(cmach);
3487 #endif // DEAL_II_WITH_LAPACK 3492 template <
typename number1,
typename number2>
3495 const ::types::blas_int *,
3496 const ::types::blas_int *,
3498 const ::types::blas_int *,
3508 lange(
const char * norm,
3509 const ::types::blas_int *m,
3510 const ::types::blas_int *n,
3512 const ::types::blas_int *lda,
3515 #ifdef DEAL_II_WITH_LAPACK 3516 return slange_(norm, m, n, a, lda, work);
3526 #endif // DEAL_II_WITH_LAPACK 3532 lange(
const char * norm,
3533 const ::types::blas_int *m,
3534 const ::types::blas_int *n,
3536 const ::types::blas_int *lda,
3539 #ifdef DEAL_II_WITH_LAPACK 3540 return dlange_(norm, m, n, a, lda, work);
3550 #endif // DEAL_II_WITH_LAPACK 3556 lange(
const char * norm,
3557 const ::types::blas_int *m,
3558 const ::types::blas_int *n,
3559 const std::complex<float> * a,
3560 const ::types::blas_int *lda,
3563 #ifdef DEAL_II_WITH_LAPACK 3564 return clange_(norm, m, n, a, lda, work);
3574 #endif // DEAL_II_WITH_LAPACK 3580 lange(
const char * norm,
3581 const ::types::blas_int *m,
3582 const ::types::blas_int *n,
3583 const std::complex<double> * a,
3584 const ::types::blas_int *lda,
3587 #ifdef DEAL_II_WITH_LAPACK 3588 return zlange_(norm, m, n, a, lda, work);
3598 #endif // DEAL_II_WITH_LAPACK 3603 template <
typename number1,
typename number2>
3607 const ::types::blas_int *,
3609 const ::types::blas_int *,
3619 lansy(
const char * norm,
3621 const ::types::blas_int *n,
3623 const ::types::blas_int *lda,
3626 #ifdef DEAL_II_WITH_LAPACK 3627 return slansy_(norm, uplo, n, a, lda, work);
3637 #endif // DEAL_II_WITH_LAPACK 3643 lansy(
const char * norm,
3645 const ::types::blas_int *n,
3647 const ::types::blas_int *lda,
3650 #ifdef DEAL_II_WITH_LAPACK 3651 return dlansy_(norm, uplo, n, a, lda, work);
3661 #endif // DEAL_II_WITH_LAPACK 3667 lansy(
const char * norm,
3669 const ::types::blas_int *n,
3670 const std::complex<float> * a,
3671 const ::types::blas_int *lda,
3674 #ifdef DEAL_II_WITH_LAPACK 3675 return clansy_(norm, uplo, n, a, lda, work);
3685 #endif // DEAL_II_WITH_LAPACK 3691 lansy(
const char * norm,
3693 const ::types::blas_int *n,
3694 const std::complex<double> * a,
3695 const ::types::blas_int *lda,
3698 #ifdef DEAL_II_WITH_LAPACK 3699 return zlansy_(norm, uplo, n, a, lda, work);
3709 #endif // DEAL_II_WITH_LAPACK 3714 template <
typename number1,
typename number2,
typename number3>
3717 const ::types::blas_int *,
3718 const ::types::blas_int *,
3721 const ::types::blas_int *,
3722 const ::types::blas_int *,
3724 const ::types::blas_int *,
3733 lascl(
const char * type,
3734 const ::types::blas_int *kl,
3735 const ::types::blas_int *ku,
3736 const float * cfrom,
3738 const ::types::blas_int *m,
3739 const ::types::blas_int *n,
3741 const ::types::blas_int *lda,
3744 #ifdef DEAL_II_WITH_LAPACK 3745 slascl_(type, kl, ku, cfrom, cto, m, n, a, lda, info);
3758 #endif // DEAL_II_WITH_LAPACK 3764 lascl(
const char * type,
3765 const ::types::blas_int *kl,
3766 const ::types::blas_int *ku,
3767 const double * cfrom,
3769 const ::types::blas_int *m,
3770 const ::types::blas_int *n,
3772 const ::types::blas_int *lda,
3775 #ifdef DEAL_II_WITH_LAPACK 3776 dlascl_(type, kl, ku, cfrom, cto, m, n, a, lda, info);
3789 #endif // DEAL_II_WITH_LAPACK 3795 lascl(
const char * type,
3796 const ::types::blas_int *kl,
3797 const ::types::blas_int *ku,
3798 const float * cfrom,
3800 const ::types::blas_int *m,
3801 const ::types::blas_int *n,
3802 std::complex<float> * a,
3803 const ::types::blas_int *lda,
3806 #ifdef DEAL_II_WITH_LAPACK 3807 clascl_(type, kl, ku, cfrom, cto, m, n, a, lda, info);
3820 #endif // DEAL_II_WITH_LAPACK 3826 lascl(
const char * type,
3827 const ::types::blas_int *kl,
3828 const ::types::blas_int *ku,
3829 const double * cfrom,
3831 const ::types::blas_int *m,
3832 const ::types::blas_int *n,
3833 std::complex<double> * a,
3834 const ::types::blas_int *lda,
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>
3858 orgqr(const ::types::blas_int *,
3859 const ::types::blas_int *,
3860 const ::types::blas_int *,
3862 const ::types::blas_int *,
3865 const ::types::blas_int *,
3874 orgqr(const ::types::blas_int *m,
3875 const ::types::blas_int *n,
3876 const ::types::blas_int *k,
3878 const ::types::blas_int *lda,
3881 const ::types::blas_int *lwork,
3884 #ifdef DEAL_II_WITH_LAPACK 3885 sorgqr_(m, n, k, a, lda, tau, work, lwork, info);
3897 #endif // DEAL_II_WITH_LAPACK 3903 orgqr(const ::types::blas_int *m,
3904 const ::types::blas_int *n,
3905 const ::types::blas_int *k,
3907 const ::types::blas_int *lda,
3910 const ::types::blas_int *lwork,
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,
3938 const ::types::blas_int *,
3939 const ::types::blas_int *,
3940 const ::types::blas_int *,
3942 const ::types::blas_int *,
3945 const ::types::blas_int *,
3947 const ::types::blas_int *,
3956 ormqr(
const char * side,
3958 const ::types::blas_int *m,
3959 const ::types::blas_int *n,
3960 const ::types::blas_int *k,
3962 const ::types::blas_int *lda,
3965 const ::types::blas_int *ldc,
3967 const ::types::blas_int *lwork,
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 3993 ormqr(
const char * side,
3995 const ::types::blas_int *m,
3996 const ::types::blas_int *n,
3997 const ::types::blas_int *k,
3999 const ::types::blas_int *lda,
4002 const ::types::blas_int *ldc,
4004 const ::types::blas_int *lwork,
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,
4035 const ::types::blas_int *,
4037 const ::types::blas_int *,
4050 pocon(
const char * uplo,
4051 const ::types::blas_int *n,
4053 const ::types::blas_int *lda,
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 4079 pocon(
const char * uplo,
4080 const ::types::blas_int *n,
4082 const ::types::blas_int *lda,
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 4108 pocon(
const char * uplo,
4109 const ::types::blas_int *n,
4110 const std::complex<float> * a,
4111 const ::types::blas_int *lda,
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 4137 pocon(
const char * uplo,
4138 const ::types::blas_int *n,
4139 const std::complex<double> * a,
4140 const ::types::blas_int *lda,
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>
4168 const ::types::blas_int *,
4170 const ::types::blas_int *,
4179 potrf(
const char * uplo,
4180 const ::types::blas_int *n,
4182 const ::types::blas_int *lda,
4185 #ifdef DEAL_II_WITH_LAPACK 4186 spotrf_(uplo, n, a, lda, info);
4194 #endif // DEAL_II_WITH_LAPACK 4200 potrf(
const char * uplo,
4201 const ::types::blas_int *n,
4203 const ::types::blas_int *lda,
4206 #ifdef DEAL_II_WITH_LAPACK 4207 dpotrf_(uplo, n, a, lda, info);
4215 #endif // DEAL_II_WITH_LAPACK 4221 potrf(
const char * uplo,
4222 const ::types::blas_int *n,
4223 std::complex<float> * a,
4224 const ::types::blas_int *lda,
4227 #ifdef DEAL_II_WITH_LAPACK 4228 cpotrf_(uplo, n, a, lda, info);
4236 #endif // DEAL_II_WITH_LAPACK 4242 potrf(
const char * uplo,
4243 const ::types::blas_int *n,
4244 std::complex<double> * a,
4245 const ::types::blas_int *lda,
4248 #ifdef DEAL_II_WITH_LAPACK 4249 zpotrf_(uplo, n, a, lda, info);
4257 #endif // DEAL_II_WITH_LAPACK 4262 template <
typename number1>
4265 const ::types::blas_int *,
4267 const ::types::blas_int *,
4276 potri(
const char * uplo,
4277 const ::types::blas_int *n,
4279 const ::types::blas_int *lda,
4282 #ifdef DEAL_II_WITH_LAPACK 4283 spotri_(uplo, n, a, lda, info);
4291 #endif // DEAL_II_WITH_LAPACK 4297 potri(
const char * uplo,
4298 const ::types::blas_int *n,
4300 const ::types::blas_int *lda,
4303 #ifdef DEAL_II_WITH_LAPACK 4304 dpotri_(uplo, n, a, lda, info);
4312 #endif // DEAL_II_WITH_LAPACK 4318 potri(
const char * uplo,
4319 const ::types::blas_int *n,
4320 std::complex<float> * a,
4321 const ::types::blas_int *lda,
4324 #ifdef DEAL_II_WITH_LAPACK 4325 cpotri_(uplo, n, a, lda, info);
4333 #endif // DEAL_II_WITH_LAPACK 4339 potri(
const char * uplo,
4340 const ::types::blas_int *n,
4341 std::complex<double> * a,
4342 const ::types::blas_int *lda,
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>
4362 const ::types::blas_int *,
4363 const ::types::blas_int *,
4365 const ::types::blas_int *,
4367 const ::types::blas_int *,
4376 potrs(
const char * uplo,
4377 const ::types::blas_int *n,
4378 const ::types::blas_int *nrhs,
4380 const ::types::blas_int *lda,
4382 const ::types::blas_int *ldb,
4385 #ifdef DEAL_II_WITH_LAPACK 4386 spotrs_(uplo, n, nrhs, a, lda, b, ldb, info);
4397 #endif // DEAL_II_WITH_LAPACK 4403 potrs(
const char * uplo,
4404 const ::types::blas_int *n,
4405 const ::types::blas_int *nrhs,
4407 const ::types::blas_int *lda,
4409 const ::types::blas_int *ldb,
4412 #ifdef DEAL_II_WITH_LAPACK 4413 dpotrs_(uplo, n, nrhs, a, lda, b, ldb, info);
4424 #endif // DEAL_II_WITH_LAPACK 4430 potrs(
const char * uplo,
4431 const ::types::blas_int *n,
4432 const ::types::blas_int *nrhs,
4433 const std::complex<float> * a,
4434 const ::types::blas_int *lda,
4435 std::complex<float> * b,
4436 const ::types::blas_int *ldb,
4439 #ifdef DEAL_II_WITH_LAPACK 4440 cpotrs_(uplo, n, nrhs, a, lda, b, ldb, info);
4451 #endif // DEAL_II_WITH_LAPACK 4457 potrs(
const char * uplo,
4458 const ::types::blas_int *n,
4459 const ::types::blas_int *nrhs,
4460 const std::complex<double> * a,
4461 const ::types::blas_int *lda,
4462 std::complex<double> * b,
4463 const ::types::blas_int *ldb,
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,
4489 const ::types::blas_int *,
4493 const ::types::blas_int *,
4503 stev(
const char * jobz,
4504 const ::types::blas_int *n,
4508 const ::types::blas_int *ldz,
4512 #ifdef DEAL_II_WITH_LAPACK 4513 sstev_(jobz, n, d, e, z, ldz, work, info);
4524 #endif // DEAL_II_WITH_LAPACK 4530 stev(
const char * jobz,
4531 const ::types::blas_int *n,
4535 const ::types::blas_int *ldz,
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>
4560 const ::types::blas_int *,
4562 const ::types::blas_int *,
4565 const ::types::blas_int *,
4574 syev(
const char * jobz,
4576 const ::types::blas_int *n,
4578 const ::types::blas_int *lda,
4581 const ::types::blas_int *lwork,
4584 #ifdef DEAL_II_WITH_LAPACK 4585 ssyev_(jobz, uplo, n, a, lda, w, work, lwork, info);
4597 #endif // DEAL_II_WITH_LAPACK 4603 syev(
const char * jobz,
4605 const ::types::blas_int *n,
4607 const ::types::blas_int *lda,
4610 const ::types::blas_int *lwork,
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,
4642 const ::types::blas_int *,
4644 const ::types::blas_int *,
4647 const ::types::blas_int *,
4648 const ::types::blas_int *,
4653 const ::types::blas_int *,
4656 const ::types::blas_int *,
4658 const ::types::blas_int *,
4667 syevr(
const char * jobz,
4670 const ::types::blas_int *n,
4672 const ::types::blas_int *lda,
4675 const ::types::blas_int *il,
4676 const ::types::blas_int *iu,
4677 const float * abstol,
4681 const ::types::blas_int *ldz,
4684 const ::types::blas_int *lwork,
4686 const ::types::blas_int *liwork,
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 4751 syevr(
const char * jobz,
4754 const ::types::blas_int *n,
4756 const ::types::blas_int *lda,
4759 const ::types::blas_int *il,
4760 const ::types::blas_int *iu,
4761 const double * abstol,
4765 const ::types::blas_int *ldz,
4768 const ::types::blas_int *lwork,
4770 const ::types::blas_int *liwork,
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,
4845 const ::types::blas_int *,
4847 const ::types::blas_int *,
4850 const ::types::blas_int *,
4851 const ::types::blas_int *,
4856 const ::types::blas_int *,
4858 const ::types::blas_int *,
4869 syevx(
const char * jobz,
4872 const ::types::blas_int *n,
4874 const ::types::blas_int *lda,
4877 const ::types::blas_int *il,
4878 const ::types::blas_int *iu,
4879 const float * abstol,
4883 const ::types::blas_int *ldz,
4885 const ::types::blas_int *lwork,
4890 #ifdef DEAL_II_WITH_LAPACK 4933 #endif // DEAL_II_WITH_LAPACK 4939 syevx(
const char * jobz,
4942 const ::types::blas_int *n,
4944 const ::types::blas_int *lda,
4947 const ::types::blas_int *il,
4948 const ::types::blas_int *iu,
4949 const double * abstol,
4953 const ::types::blas_int *ldz,
4955 const ::types::blas_int *lwork,
4960 #ifdef DEAL_II_WITH_LAPACK 5003 #endif // DEAL_II_WITH_LAPACK 5008 template <
typename number1,
5013 sygv(const ::types::blas_int *,
5016 const ::types::blas_int *,
5018 const ::types::blas_int *,
5020 const ::types::blas_int *,
5023 const ::types::blas_int *,
5032 sygv(const ::types::blas_int *itype,
5035 const ::types::blas_int *n,
5037 const ::types::blas_int *lda,
5039 const ::types::blas_int *ldb,
5042 const ::types::blas_int *lwork,
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 5067 sygv(const ::types::blas_int *itype,
5070 const ::types::blas_int *n,
5072 const ::types::blas_int *lda,
5074 const ::types::blas_int *ldb,
5077 const ::types::blas_int *lwork,
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,
5110 sygvx(const ::types::blas_int *,
5114 const ::types::blas_int *,
5116 const ::types::blas_int *,
5118 const ::types::blas_int *,
5121 const ::types::blas_int *,
5122 const ::types::blas_int *,
5127 const ::types::blas_int *,
5129 const ::types::blas_int *,
5140 sygvx(const ::types::blas_int *itype,
5144 const ::types::blas_int *n,
5146 const ::types::blas_int *lda,
5148 const ::types::blas_int *ldb,
5151 const ::types::blas_int *il,
5152 const ::types::blas_int *iu,
5153 const float * abstol,
5157 const ::types::blas_int *ldz,
5159 const ::types::blas_int *lwork,
5164 #ifdef DEAL_II_WITH_LAPACK 5213 #endif // DEAL_II_WITH_LAPACK 5219 sygvx(const ::types::blas_int *itype,
5223 const ::types::blas_int *n,
5225 const ::types::blas_int *lda,
5227 const ::types::blas_int *ldb,
5230 const ::types::blas_int *il,
5231 const ::types::blas_int *iu,
5232 const double * abstol,
5236 const ::types::blas_int *ldz,
5238 const ::types::blas_int *lwork,
5243 #ifdef DEAL_II_WITH_LAPACK 5292 #endif // DEAL_II_WITH_LAPACK 5297 template <
typename number1,
typename number2,
typename number3>
5300 const ::types::blas_int *,
5303 const ::types::blas_int *,
5305 const ::types::blas_int *)
5313 syr(
const char * uplo,
5314 const ::types::blas_int *n,
5315 const float * alpha,
5317 const ::types::blas_int *incx,
5319 const ::types::blas_int *lda)
5321 #ifdef DEAL_II_WITH_LAPACK 5322 ssyr_(uplo, n, alpha, x, incx, a, lda);
5332 #endif // DEAL_II_WITH_LAPACK 5338 syr(
const char * uplo,
5339 const ::types::blas_int *n,
5340 const double * alpha,
5342 const ::types::blas_int *incx,
5344 const ::types::blas_int *lda)
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,
5369 const ::types::blas_int *,
5370 const ::types::blas_int *,
5373 const ::types::blas_int *,
5376 const ::types::blas_int *)
5384 syrk(
const char * uplo,
5386 const ::types::blas_int *n,
5387 const ::types::blas_int *k,
5388 const float * alpha,
5390 const ::types::blas_int *lda,
5393 const ::types::blas_int *ldc)
5395 #ifdef DEAL_II_WITH_LAPACK 5396 ssyrk_(uplo, trans, n, k, alpha, a, lda, beta, c, ldc);
5409 #endif // DEAL_II_WITH_LAPACK 5415 syrk(
const char * uplo,
5417 const ::types::blas_int *n,
5418 const ::types::blas_int *k,
5419 const double * alpha,
5421 const ::types::blas_int *lda,
5422 const double * beta,
5424 const ::types::blas_int *ldc)
5426 #ifdef DEAL_II_WITH_LAPACK 5427 dsyrk_(uplo, trans, n, k, alpha, a, lda, beta, c, ldc);
5440 #endif // DEAL_II_WITH_LAPACK 5446 syrk(
const char * uplo,
5448 const ::types::blas_int *n,
5449 const ::types::blas_int *k,
5450 const std::complex<float> * alpha,
5451 const std::complex<float> * a,
5452 const ::types::blas_int *lda,
5453 const std::complex<float> * beta,
5454 std::complex<float> * c,
5455 const ::types::blas_int *ldc)
5457 #ifdef DEAL_II_WITH_LAPACK 5458 csyrk_(uplo, trans, n, k, alpha, a, lda, beta, c, ldc);
5471 #endif // DEAL_II_WITH_LAPACK 5477 syrk(
const char * uplo,
5479 const ::types::blas_int *n,
5480 const ::types::blas_int *k,
5481 const std::complex<double> * alpha,
5482 const std::complex<double> * a,
5483 const ::types::blas_int *lda,
5484 const std::complex<double> * beta,
5485 std::complex<double> * c,
5486 const ::types::blas_int *ldc)
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>
5512 const ::types::blas_int *,
5514 const ::types::blas_int *,
5526 trcon(
const char * norm,
5529 const ::types::blas_int *n,
5531 const ::types::blas_int *lda,
5537 #ifdef DEAL_II_WITH_LAPACK 5538 strcon_(norm, uplo, diag, n, a, lda, rcond, work, iwork, info);
5551 #endif // DEAL_II_WITH_LAPACK 5557 trcon(
const char * norm,
5560 const ::types::blas_int *n,
5562 const ::types::blas_int *lda,
5568 #ifdef DEAL_II_WITH_LAPACK 5569 dtrcon_(norm, uplo, diag, n, a, lda, rcond, work, iwork, info);
5582 #endif // DEAL_II_WITH_LAPACK 5588 trcon(
const char * norm,
5591 const ::types::blas_int *n,
5592 const std::complex<float> * a,
5593 const ::types::blas_int *lda,
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 5619 trcon(
const char * norm,
5622 const ::types::blas_int *n,
5623 const std::complex<double> * a,
5624 const ::types::blas_int *lda,
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>
5654 const ::types::blas_int *,
5656 const ::types::blas_int *,
5658 const ::types::blas_int *)
5666 trmv(
const char * uplo,
5669 const ::types::blas_int *n,
5671 const ::types::blas_int *lda,
5673 const ::types::blas_int *incx)
5675 #ifdef DEAL_II_WITH_LAPACK 5676 strmv_(uplo, trans, diag, n, a, lda, x, incx);
5687 #endif // DEAL_II_WITH_LAPACK 5693 trmv(
const char * uplo,
5696 const ::types::blas_int *n,
5698 const ::types::blas_int *lda,
5700 const ::types::blas_int *incx)
5702 #ifdef DEAL_II_WITH_LAPACK 5703 dtrmv_(uplo, trans, diag, n, a, lda, x, incx);
5714 #endif // DEAL_II_WITH_LAPACK 5720 trmv(
const char * uplo,
5723 const ::types::blas_int *n,
5724 const std::complex<float> * a,
5725 const ::types::blas_int *lda,
5726 std::complex<float> * x,
5727 const ::types::blas_int *incx)
5729 #ifdef DEAL_II_WITH_LAPACK 5730 ctrmv_(uplo, trans, diag, n, a, lda, x, incx);
5741 #endif // DEAL_II_WITH_LAPACK 5747 trmv(
const char * uplo,
5750 const ::types::blas_int *n,
5751 const std::complex<double> * a,
5752 const ::types::blas_int *lda,
5753 std::complex<double> * x,
5754 const ::types::blas_int *incx)
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>
5778 const ::types::blas_int *,
5779 const ::types::blas_int *,
5781 const ::types::blas_int *,
5783 const ::types::blas_int *,
5792 trtrs(
const char * uplo,
5795 const ::types::blas_int *n,
5796 const ::types::blas_int *nrhs,
5798 const ::types::blas_int *lda,
5800 const ::types::blas_int *ldb,
5803 #ifdef DEAL_II_WITH_LAPACK 5804 strtrs_(uplo, trans, diag, n, nrhs, a, lda, b, ldb, info);
5817 #endif // DEAL_II_WITH_LAPACK 5823 trtrs(
const char * uplo,
5826 const ::types::blas_int *n,
5827 const ::types::blas_int *nrhs,
5829 const ::types::blas_int *lda,
5831 const ::types::blas_int *ldb,
5834 #ifdef DEAL_II_WITH_LAPACK 5835 dtrtrs_(uplo, trans, diag, n, nrhs, a, lda, b, ldb, info);
5848 #endif // DEAL_II_WITH_LAPACK 5854 trtrs(
const char * uplo,
5857 const ::types::blas_int *n,
5858 const ::types::blas_int *nrhs,
5859 const std::complex<float> * a,
5860 const ::types::blas_int *lda,
5861 std::complex<float> * b,
5862 const ::types::blas_int *ldb,
5865 #ifdef DEAL_II_WITH_LAPACK 5866 ctrtrs_(uplo, trans, diag, n, nrhs, a, lda, b, ldb, info);
5879 #endif // DEAL_II_WITH_LAPACK 5885 trtrs(
const char * uplo,
5888 const ::types::blas_int *n,
5889 const ::types::blas_int *nrhs,
5890 const std::complex<double> * a,
5891 const ::types::blas_int *lda,
5892 std::complex<double> * b,
5893 const ::types::blas_int *ldb,
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>
5919 DEAL_II_DEPRECATED
inline void 5920 lamch(
const char *, number &)
5929 lamch(
const char *cmach,
float &precision)
5931 #ifdef DEAL_II_WITH_LAPACK 5932 precision = slamch_(cmach);
5937 #endif // DEAL_II_WITH_LAPACK 5944 lamch(
const char *cmach,
double &precision)
5946 #ifdef DEAL_II_WITH_LAPACK 5947 precision = dlamch_(cmach);
5952 #endif // DEAL_II_WITH_LAPACK 5955 DEAL_II_NAMESPACE_CLOSE
__global__ void scale(Number *val, const Number *V_val, const size_type N)
#define Assert(cond, exc)
static ::ExceptionBase & ExcMissing(std::string arg1)
static ::ExceptionBase & ExcNotImplemented()