09 May 2025 9:17:01.135 PM lapack_test(): Fortran90 version Test lapack(): dgbtrf_test(): dgbtrf() factors a general band matrix. dgbtrs() solves a factored system. For a double precision real matrix (D) in general band storage mode (GB): Bandwidth is 3 Partial solution (all should be 1) 1 1.0000000 2 1.0000000 3 1.0000000 4 1.0000000 5 1.0000000 dgecon_test(): dgecon() computes the condition number of a factored matrix dgetrf() computes the LU factorization; For a double precision real matrix (D) in general storage mode (GE): The matrix A: Col 1 2 3 Row 1 1. 2. 3. 2 4. 5. 6. 3 7. 8. 0. Matrix reciprocal condition number = 0.240000E-01 dgeev_test(): dgeev() computes eigenvalues and eigenvectors: (D): for a double precision real matrix, (GE): in general storage mode, (EV): compute eigenvalues and eigenvectors. The matrix A: Col 1 2 3 4 5 Row 1 0. 2.44949 0. 0. 0. 2 2.44949 0. 3.16228 0. 0. 3 0. 3.16228 0. 3.46410 0. 4 0. 0. 3.46410 0. 3.46410 5 0. 0. 0. 3.46410 0. 6 0. 0. 0. 0. 3.16228 7 0. 0. 0. 0. 0. Col 6 7 Row 1 0. 0. 2 0. 0. 3 0. 0. 4 0. 0. 5 3.16228 0. 6 0. 2.44949 7 2.44949 0. The eigenvalues: 1 -6.00000 0.00000 2 -4.00000 0.00000 3 6.00000 0.00000 4 -2.00000 0.00000 5 0.501558E-15 0.00000 6 4.00000 0.00000 7 2.00000 0.00000 dgeqrf_test() dgeqrf() computes the QR factorization: A = Q * R dorgqr() computes the explicit form of the Q factor. For a double precision real matrix (D) in general storage mode (GE): In this case, our M x N matrix A has more rows than columns: M = 8 N = 6 The matrix A: Col 1 2 3 4 5 Row 1 0.326775 0.275920 0.667723 0.534394E-01 0.107611E-01 2 0.171735 0.361801 0.122275 0.943051 0.374004 3 0.271776 0.191289 0.569278 0.697893E-01 0.500430 4 0.703974 0.497080 0.206240 0.223178 0.378741 5 0.209247 0.752806 0.947819 0.588290 0.934026 6 0.317100 0.613754 0.222856 0.496134 0.381691 7 0.850048 0.421763 0.231132 0.311752 0.189022 8 0.426068 0.197441 0.842334E-01 0.647316E-01 0.538526 Col 6 Row 1 0.759545 2 0.689629 3 0.193303 4 0.310559 5 0.880104 6 0.117040 7 0.670297 8 0.540459 The Q factor: Col 1 2 3 4 5 Row 1 -0.246725 -0.314323E-01 -0.569270 0.161095E-01 -0.553820 2 -0.129665 -0.293284 0.260542 0.880111 0.273315E-03 3 -0.205199 0.226154E-01 -0.538713 0.151921 0.365703 4 -0.531522 0.565482E-01 0.212303 -0.263455 0.196126E-01 5 -0.157988 -0.755629 -0.304964 -0.121224 0.208513 6 -0.239420 -0.472223 0.417092 -0.300243 -0.190165 7 -0.641812 0.296112 0.565492E-01 0.156435 -0.228377 8 -0.321694 0.166240 0.509697E-01 -0.578258E-01 0.653731 Col 6 Row 1 0.329411 2 0.328079E-01 3 -0.683553 4 -0.172708 5 0.225449 6 -0.266178 7 0.109231E-01 8 0.521098 The R factor: Col 1 2 3 4 5 Row 1 -1.32445 -1.01854 -0.785576 -0.701047 -0.888654 2 0. -0.783307 -0.771306 -0.839804 -0.817817 3 0. 0. -0.789885 0.273523 -0.185369 4 0. 0. 0. 0.607405 0.761862E-01 5 0. 0. 0. 0. 0.615634 6 0. 0. 0. 0. 0. Col 6 Row 1 -1.25269 2 -0.636170 3 -0.445043 4 0.498510 5 0.178100E-01 6 0.543277 The product Q * R: Col 1 2 3 4 5 Row 1 0.326775 0.275920 0.667723 0.534394E-01 0.107611E-01 2 0.171735 0.361801 0.122275 0.943051 0.374004 3 0.271776 0.191289 0.569278 0.697893E-01 0.500430 4 0.703974 0.497080 0.206240 0.223178 0.378741 5 0.209247 0.752806 0.947819 0.588290 0.934026 6 0.317100 0.613754 0.222856 0.496134 0.381691 7 0.850048 0.421763 0.231132 0.311752 0.189022 8 0.426068 0.197441 0.842334E-01 0.647316E-01 0.538526 Col 6 Row 1 0.759545 2 0.689629 3 0.193303 4 0.310559 5 0.880104 6 0.117040 7 0.670297 8 0.540459 dgesvd_test(): dgesvd() computes the singular value decomposition: A = U * S * V' for a double precision real matrix (D) in general storage mode (GE): The matrix A: Col 1 2 3 4 Row 1 0.387144 0.733711 0.454081 0.601660 2 0.902308E-01 0.423827 0.713225 0.485630 3 0.378240 0.271929 0.604991 0.755486 4 0.303088 0.570721 0.850972 0.975327 5 0.272580 0.992832 0.826926 0.626624 6 0.339884 0.980660 0.689528 0.504740 Singular values 1 2.9738979 2 0.64000992 3 0.33845109 4 0.10561432 Left singular vectors U: Col 1 2 3 4 5 Row 1 -0.368115 0.178835 -0.621683 -0.227397 -0.366656 2 -0.313742 -0.148394 0.675693 0.194843 -0.483928 3 -0.336997 -0.572972 -0.303707 0.624397 0.269241 4 -0.475014 -0.476537 0.532580E-01 -0.606039 -0.508696E-01 5 -0.484180 0.370486 0.242825 -0.128358 0.696523 6 -0.438659 0.503342 -0.539437E-01 0.369724 -0.266750 Col 6 Row 1 -0.509778 2 -0.388374 3 -0.594547E-01 4 0.417812 5 -0.260243 6 0.586058 Right singular vectors V': Col 1 2 3 4 Row 1 -0.243226 -0.563801 -0.572271 -0.543576 2 -0.519423E-01 0.784331 -0.192751 -0.587345 3 -0.681310 -0.997684E-01 0.664233 -0.290960 4 0.688448 -0.238747 0.440622 -0.524302 The product U * S * V': Col 1 2 3 4 Row 1 0.387144 0.733711 0.454081 0.601660 2 0.902308E-01 0.423827 0.713225 0.485630 3 0.378240 0.271929 0.604991 0.755486 4 0.303088 0.570721 0.850972 0.975327 5 0.272580 0.992832 0.826926 0.626624 6 0.339884 0.980660 0.689528 0.504740 dgetrf_test(): DGETRF factors a general matrix; DGETRS solves a linear system; For a double precision real matrix (D) in general storage mode (GE): Partial solution (all should be 1) 1 1.0000000 2 1.0000000 3 1.0000000 4 1.0000000 5 1.0000000 DGETRI_TEST DGETRI computes the inverse of a double precision real matrix (D) in general storage mode (GE): The matrix A: Col 1 2 3 Row 1 1. 2. 3. 2 4. 5. 6. 3 7. 8. 0. The inverse matrix: Col 1 2 3 Row 1 -1.77778 0.888889 -0.111111 2 1.55556 -0.777778 0.222222 3 -0.111111 0.222222 -0.111111 DGTSV_TEST DGTSV factors and solves a linear system with a general tridiagonal matrix for a double precision real matrix (D) in general tridiagonal storage mode (GT). The system is of order N = 100 Partial solution (Should be 1,2,3...) 1 1.0000000 2 2.0000000 3 3.0000000 4 4.0000000 5 5.0000000 dormgqr_test(): dormqr() computes Q' * b. after dgeqrf() computes the QR factorization: A = Q * R storing a double precision real matrix (D) in general storage mode (GE). We use these routines to carry out a QR solve of an M by N linear system A * x = b. In this case, our M x N matrix A has more rows than columns: M = 8 N = 6 The matrix A: Col 1 2 3 4 5 Row 1 0.996699 0.933983 0.236533 0.730911 0.771945E-01 2 0.130342 0.247019 0.904290 0.518478 0.850084 3 0.513486 0.402980 0.197634 0.958056 0.148232 4 0.838639 0.333700 0.904215 0.602091 0.963556 5 0.274335 0.467368 0.494935E-01 0.263570E-01 0.345251E-01 6 0.779699 0.228662 0.885106 0.244453E-01 0.834229 7 0.523698 0.273541 0.278910 0.580545 0.925807 8 0.700296 0.248948 0.631200 0.598730 0.136400 Col 6 Row 1 0.202767 2 0.570996 3 0.221878E-01 4 0.754794 5 0.565139 6 0.889179 7 0.408892 8 0.236561 The solution X: 1 1.0000000 2 2.0000000 3 3.0000000 4 4.0000000 5 5.0000000 6 6.0000000 DPBTRF_TEST DPBTRF computes the lower Cholesky factor A = L*L' or the upper Cholesky factor A = U'*U; For a double precision real matrix (D) in positive definite band storage mode (PB): The lower Cholesky factor L: 1.414214 0.000000 0.000000 0.000000 0.000000 -0.707107 1.224745 0.000000 0.000000 0.000000 0.000000 -0.816497 1.154701 0.000000 0.000000 0.000000 0.000000 -0.866025 1.118034 0.000000 0.000000 0.000000 0.000000 -0.894427 1.095445 DPBTRS_TEST DPBTRS solves linear systems for a positive definite symmetric band matrix, stored as a double precision real matrix (D) in positive definite band storage mode (PB): Partial solution (all should be 1) 1 1.0000000 2 1.0000000 3 1.0000000 4 1.0000000 5 1.0000000 DPOTRF_TEST DPOTRF computes the Cholesky factorization R'*R for a double precision real matrix (D) in positive definite storage mode (PO). The matrix A: Col 1 2 3 4 5 Row 1 2. -1. 0. 0. 0. 2 -1. 2. -1. 0. 0. 3 0. -1. 2. -1. 0. 4 0. 0. -1. 2. -1. 5 0. 0. 0. -1. 2. The Cholesky factor R: Col 1 2 3 4 5 Row 1 1.41421 -0.707107 0. 0. 0. 2 0. 1.22474 -0.816497 0. 0. 3 0. 0. 1.15470 -0.866025 0. 4 0. 0. 0. 1.11803 -0.894427 5 0. 0. 0. 0. 1.09545 The product R' * R Col 1 2 3 4 5 Row 1 2.00000 -1. 0. 0. 0. 2 -1. 2.00000 -1. 0. 0. 3 0. -1. 2. -1. 0. 4 0. 0. -1. 2.00000 -1. 5 0. 0. 0. -1. 2.00000 dpotri_test(): dpotri() computes the inverse for a double precision real matrix (D) in positive definite storage mode (PO). The matrix A: Col 1 2 3 4 5 Row 1 2. -1. 0. 0. 0. 2 -1. 2. -1. 0. 0. 3 0. -1. 2. -1. 0. 4 0. 0. -1. 2. -1. 5 0. 0. 0. -1. 2. The Cholesky factor R: Col 1 2 3 4 5 Row 1 1.41421 -0.707107 0. 0. 0. 2 0. 1.22474 -0.816497 0. 0. 3 0. 0. 1.15470 -0.866025 0. 4 0. 0. 0. 1.11803 -0.894427 5 0. 0. 0. 0. 1.09545 The product R' * R Col 1 2 3 4 5 Row 1 2.00000 -1. 0. 0. 0. 2 -1. 2.00000 -1. 0. 0. 3 0. -1. 2. -1. 0. 4 0. 0. -1. 2.00000 -1. 5 0. 0. 0. -1. 2.00000 The inverse matrix B: Col 1 2 3 4 5 Row 1 0.833333 0.666667 0.500000 0.333333 0.166667 2 0.666667 1.33333 1.00000 0.666667 0.333333 3 0.500000 1.00000 1.50000 1. 0.500000 4 0.333333 0.666667 1. 1.33333 0.666667 5 0.166667 0.333333 0.500000 0.666667 0.833333 The product B * A Col 1 2 3 4 5 Row 1 1.00000 0.444089E-15 0. -0.111022E-15 0. 2 -0.444089E-15 1.00000 0. 0.555112E-16 -0.111022E-15 3 -0.444089E-15 0.444089E-15 1.00000 -0.444089E-15 0. 4 -0.444089E-15 0.666134E-15 0. 1.00000 0. 5 -0.166533E-15 0.222045E-15 0. -0.222045E-15 1. dsbgvx_test(): dsbgvx() solves the generalized eigenvalue problem A * X = LAMBDA * B * X for a symmetric banded NxN matrix A, and a symmetric banded positive definite NxN matrix B, Computed eigenvalues 1 1.0581164 Computed eigenvalues 1 4.7709121 dsyev_test() dsyev() computes eigenvalues and eigenvectors For a double precision real matrix (D) in symmetric storage mode (SY). The matrix A: Col 1 2 3 4 5 Row 1 0. 2.44949 0. 0. 0. 2 2.44949 0. 3.16228 0. 0. 3 0. 3.16228 0. 3.46410 0. 4 0. 0. 3.46410 0. 3.46410 5 0. 0. 0. 3.46410 0. 6 0. 0. 0. 0. 3.16228 7 0. 0. 0. 0. 0. Col 6 7 Row 1 0. 0. 2 0. 0. 3 0. 0. 4 0. 0. 5 3.16228 0. 6 0. 2.44949 7 2.44949 0. The eigenvalues: 1 -6.0000000 2 -4.0000000 3 -2.0000000 4 -0.19194523E-15 5 2.0000000 6 4.0000000 7 6.0000000 The eigenvector matrix: Col 1 2 3 4 5 Row 1 0.125000 0.306186 0.484123 -0.559017 0.484123 2 -0.306186 -0.500000 -0.395285 0.132008E-15 0.395285 3 0.484123 0.395285 -0.125000 0.433013 -0.125000 4 -0.559017 0.117123E-15 0.433013 -0.350963E-16 -0.433013 5 0.484123 -0.395285 -0.125000 -0.433013 -0.125000 6 -0.306186 0.500000 -0.395285 0.252279E-15 0.395285 7 0.125000 -0.306186 0.484123 0.559017 0.484123 Col 6 7 Row 1 -0.306186 0.125000 2 -0.500000 0.306186 3 -0.395285 0.484123 4 -0.225514E-15 0.559017 5 0.395285 0.484123 6 0.500000 0.306186 7 0.306186 0.125000 lapack_test(): Normal end of execution. 09 May 2025 9:17:01.137 PM