Fix typos in comment strings of [csdzd]chkdmd.f90

- intial/inital -> initial (K_traj loop and K_TRAJ==2 branch)
- eigencalues -> eigenvalues (GEDMD and GEDMDQ comment blocks)
- Rezidual -> Residual (WRITE output strings)
- rayleigh -> Rayleigh (proper noun, z/s/dchkdmd.f90)
- aigenvectors -> eigenvectors (s/dchkdmd.f90)
- localy -> locally (s/dchkdmd.f90 MKL note)
- whith -> with (s/dchkdmd.f90 MKL note)
- worksapce -> workspace (s/dchkdmd.f90 MKL note)
- ZGEDMDQ -> CGEDMDQ in comment blocks (cchkdmd.f90)
- ZGEDMD and ZGEDMDQ -> CGEDMD and CGEDMDQ in WRITE string (cchkdmd.f90)
This commit is contained in:
NAKATA Maho
2026-03-25 13:50:09 +09:00
parent 4486765327
commit 33ec2a652c
4 changed files with 48 additions and 48 deletions
+13 -13
View File
@@ -194,7 +194,7 @@
!.............
DO K_traj = 1, 2
! Number of intial conditions in the simulation/trajectories (1 or 2)
! Number of initial conditions in the simulation/trajectories (1 or 2)
COND = 1.0D4
CMAX = (1.0D1,1.0D1)
@@ -243,7 +243,7 @@
IF ( K_traj == 2 ) THEN
! generate data as two trajectories
! with two inital conditions
! with two initial conditions
CALL CLARNV(2, ISEED, M, F(1,1) )
DO i = 1, N/2
CALL CGEMV( 'N', M, M, CONE, A, LDA, F(1,i), 1, &
@@ -452,7 +452,7 @@
CALL CGEMM( 'N', 'N', M, K, M, CONE, A, LDA, Z, LDZ, CZERO, Y1, LDY )
! ... and then A*Z(:,i) - LAMBDA(i)*Z(:,i), using the real forms
! of the invariant subspaces that correspond to complex conjugate
! pairs of eigencalues. (See the description of Z in CGEDMD,)
! pairs of eigenvalues. (See the description of Z in CGEDMD,)
DO i=1, K
! have a real eigenvalue with real eigenvector
@@ -525,7 +525,7 @@
END IF
SINGVQX(1:N) =WORK(1:N)
!..... ZGEDMDQ check point
!..... CGEDMDQ check point
TMP = ZERO
DO i = 1, MIN(K, KQ)
@@ -556,16 +556,16 @@
NFAIL_F_QR = NFAIL_F_QR + 1
END IF
END IF
!..... ZGEDMDQ checkpoint
!..... ZGEDMDQ checkpoint
!..... CGEDMDQ checkpoint
!..... CGEDMDQ checkpoint
IF ( LSAME(RESIDS, 'R') ) THEN
! Compare the residuals returned by ZGEDMDQ with the
! Compare the residuals returned by CGEDMDQ with the
! explicitly computed residuals using the matrix A.
! Compute explicitly Y1 = A*Z
CALL CGEMM( 'N', 'N', M, KQ, M, CONE, A, LDA, Z, LDZ, CZERO, Y1, LDY )
! ... and then A*Z(:,i) - LAMBDA(i)*Z(:,i), using the real forms
! of the invariant subspaces that correspond to complex conjugate
! pairs of eigencalues. (See the description of Z in ZGEDMDQ)
! pairs of eigenvalues. (See the description of Z in CGEDMDQ)
DO i = 1, KQ
! have a real eigenvalue with real eigenvector
CALL CAXPY( M, -CEIGS(i), Z(1,i), 1, Y1(1,i), 1 )
@@ -659,9 +659,9 @@
IF ( NFAIL_REZ == 0 ) THEN
WRITE(*,*) '>>>> Rezidual computation test PASSED.'
WRITE(*,*) '>>>> Residual computation test PASSED.'
ELSE
WRITE(*,*) 'Rezidual computation test FAILED ', NFAIL_REZ, 'time(s)'
WRITE(*,*) 'Residual computation test FAILED ', NFAIL_REZ, 'time(s)'
WRITE(*,*) 'Max residual computing test adjusted error measure was ', TMP_REZ
WRITE(*,*) 'It should be up to O(M*N) times EPS, EPS = ', EPS
NFAIL_TOTAL = NFAIL_TOTAL + NFAIL_REZ
@@ -683,7 +683,7 @@
WRITE(*,*) '>>>> CGEDMD and CGEDMDQ computed singular &
&values test PASSED.'
ELSE
WRITE(*,*) 'ZGEDMD and ZGEDMDQ discrepancies in &
WRITE(*,*) 'CGEDMD and CGEDMDQ discrepancies in &
&the singular values unacceptable ', &
NFAIL_SVDIFF, ' times. Test FAILED.'
WRITE(*,*) 'The maximal discrepancy in the singular values (relative to the norm) was ', SVDIFF
@@ -700,9 +700,9 @@
END IF
IF ( NFAIL_REZQ == 0 ) THEN
WRITE(*,*) '>>>> Rezidual computation test PASSED.'
WRITE(*,*) '>>>> Residual computation test PASSED.'
ELSE
WRITE(*,*) 'Rezidual computation test FAILED ', NFAIL_REZQ, 'time(s)'
WRITE(*,*) 'Residual computation test FAILED ', NFAIL_REZQ, 'time(s)'
WRITE(*,*) 'Max residual computing test adjusted error measure was ', TMP_REZQ
WRITE(*,*) 'It should be up to O(M*N) times EPS, EPS = ', EPS
NFAILQ_TOTAL = NFAILQ_TOTAL + NFAIL_REZQ
+13 -13
View File
@@ -42,9 +42,9 @@
! work space query. (At least in our Windows 10 MSVS 2019.)
! The problem can be mitigated by downloading the source
! code of xGESVDQ from the LAPACK repository and use it
! localy instead of the one in the MKL. This seems to
! locally instead of the one in the MKL. This seems to
! indicate that the problem is indeed in the MKL.
! This problem did not appear whith Intel MKL 2022.2.0.
! This problem did not appear with Intel MKL 2022.2.0.
!
! NOTE:
! xGESDD seems to have a problem with workspace. In some
@@ -53,7 +53,7 @@
! code. As a precaution, all optimal workspaces are
! set as MAX(minimal, optimal).
! Latest implementations of complex xGESDD have different
! length of the real worksapce. We use max value over
! length of the real workspace. We use max value over
! two versions.
!............................................................
!............................................................
@@ -224,7 +224,7 @@
!.............
DO K_TRAJ = 1, 2
! Number of intial conditions in the simulation/trajectories (1 or 2)
! Number of initial conditions in the simulation/trajectories (1 or 2)
COND = 1.0D8
DMAX = 1.0D2
@@ -269,7 +269,7 @@
ANORM = DLANGE( 'F', N, N, A, M, WDUMMY )
IF ( K_TRAJ == 2 ) THEN
! generate data with two inital conditions
! generate data with two initial conditions
CALL DLARNV(2, ISEED, M, F1(1,1) )
F1(1:M,1) = 1.0E-10*F1(1:M,1)
DO i = 1, N/2
@@ -382,9 +382,9 @@
!...... DGEDMD check point
IF ( LSAME(JOBZ,'V') ) THEN
! Check that Z = X*W, on return from DGEDMD
! This checks that the returned aigenvectors in Z are
! This checks that the returned eigenvectors in Z are
! the product of the SVD'POD basis returned in X
! and the eigenvectors of the rayleigh quotient
! and the eigenvectors of the Rayleigh quotient
! returned in W
CALL DGEMM( 'N', 'N', M, K, K, ONE, X, LDX, W, LDW, &
ZERO, Z1, LDZ )
@@ -482,7 +482,7 @@
CALL DGEMM( 'N', 'N', M, K, M, ONE, A, LDA, Z, LDZ, ZERO, Y1, M )
! ... and then A*Z(:,i) - LAMBDA(i)*Z(:,i), using the real forms
! of the invariant subspaces that correspond to complex conjugate
! pairs of eigencalues. (See the description of Z in DGEDMD,)
! pairs of eigenvalues. (See the description of Z in DGEDMD,)
i = 1
DO WHILE ( i <= K )
IF ( IEIG(i) == ZERO ) THEN
@@ -615,7 +615,7 @@
CALL DGEMM( 'N', 'N', M, KQ, M, ONE, A, M, Z, M, ZERO, Y1, M )
! ... and then A*Z(:,i) - LAMBDA(i)*Z(:,i), using the real forms
! of the invariant subspaces that correspond to complex conjugate
! pairs of eigencalues. (See the description of Z in DGEDMDQ)
! pairs of eigenvalues. (See the description of Z in DGEDMDQ)
i = 1
DO WHILE ( i <= KQ )
IF ( IEIGQ(i) == ZERO ) THEN
@@ -746,9 +746,9 @@
END IF
IF ( NFAIL_REZ == 0 ) THEN
WRITE(*,*) '>>>> Rezidual computation test PASSED.'
WRITE(*,*) '>>>> Residual computation test PASSED.'
ELSE
WRITE(*,*) 'Rezidual computation test FAILED ', NFAIL_REZ, 'time(s)'
WRITE(*,*) 'Residual computation test FAILED ', NFAIL_REZ, 'time(s)'
WRITE(*,*) 'Max residual computing test adjusted error measure was ', TMP_REZ
WRITE(*,*) 'It should be up to O(M*N) times EPS, EPS = ', EPS
NFAIL_TOTAL = NFAIL_TOTAL + NFAIL_REZ
@@ -790,9 +790,9 @@
END IF
IF ( NFAIL_REZQ == 0 ) THEN
WRITE(*,*) '>>>> Rezidual computation test PASSED.'
WRITE(*,*) '>>>> Residual computation test PASSED.'
ELSE
WRITE(*,*) 'Rezidual computation test FAILED ', NFAIL_REZQ, 'time(s)'
WRITE(*,*) 'Residual computation test FAILED ', NFAIL_REZQ, 'time(s)'
WRITE(*,*) 'Max residual computing test adjusted error measure was ', TMP_REZQ
WRITE(*,*) 'It should be up to O(M*N) times EPS, EPS = ', EPS
NFAILQ_TOTAL = NFAILQ_TOTAL + NFAIL_REZQ
+13 -13
View File
@@ -42,9 +42,9 @@
! work space query. (At least in our Windows 10 MSVS 2019.)
! The problem can be mitigated by downloading the source
! code of xGESVDQ from the LAPACK repository and use it
! localy instead of the one in the MKL. This seems to
! locally instead of the one in the MKL. This seems to
! indicate that the problem is indeed in the MKL.
! This problem did not appear whith Intel MKL 2022.2.0.
! This problem did not appear with Intel MKL 2022.2.0.
!
! NOTE:
! xGESDD seems to have a problem with workspace. In some
@@ -53,7 +53,7 @@
! code. As a precaution, all optimal workspaces are
! set as MAX(minimal, optimal).
! Latest implementations of complex xGESDD have different
! length of the real worksapce. We use max value over
! length of the real workspace. We use max value over
! two versions.
!............................................................
!............................................................
@@ -224,7 +224,7 @@
!.............
DO K_TRAJ = 1, 2
! Number of intial conditions in the simulation/trajectories (1 or 2)
! Number of initial conditions in the simulation/trajectories (1 or 2)
COND = 1.0D8
DMAX = 1.0D2
@@ -269,7 +269,7 @@
ANORM = SLANGE( 'F', N, N, A, M, WDUMMY )
IF ( K_TRAJ == 2 ) THEN
! generate data with two inital conditions
! generate data with two initial conditions
CALL SLARNV(2, ISEED, M, F1(1,1) )
F1(1:M,1) = 1.0E-10*F1(1:M,1)
DO i = 1, N/2
@@ -383,9 +383,9 @@
!...... SGEDMD check point
IF ( LSAME(JOBZ,'V') ) THEN
! Check that Z = X*W, on return from SGEDMD
! This checks that the returned aigenvectors in Z are
! This checks that the returned eigenvectors in Z are
! the product of the SVD'POD basis returned in X
! and the eigenvectors of the rayleigh quotient
! and the eigenvectors of the Rayleigh quotient
! returned in W
CALL SGEMM( 'N', 'N', M, K, K, ONE, X, LDX, W, LDW, &
ZERO, Z1, LDZ )
@@ -473,7 +473,7 @@
CALL SGEMM( 'N', 'N', M, K, M, ONE, A, LDA, Z, LDZ, ZERO, Y1, M )
! ... and then A*Z(:,i) - LAMBDA(i)*Z(:,i), using the real forms
! of the invariant subspaces that correspond to complex conjugate
! pairs of eigencalues. (See the description of Z in SGEDMD,)
! pairs of eigenvalues. (See the description of Z in SGEDMD,)
i = 1
DO WHILE ( i <= K )
IF ( IEIG(i) == ZERO ) THEN
@@ -596,7 +596,7 @@
CALL SGEMM( 'N', 'N', M, KQ, M, ONE, A, M, Z, M, ZERO, Y1, M )
! ... and then A*Z(:,i) - LAMBDA(i)*Z(:,i), using the real forms
! of the invariant subspaces that correspond to complex conjugate
! pairs of eigencalues. (See the description of Z in SGEDMDQ)
! pairs of eigenvalues. (See the description of Z in SGEDMDQ)
i = 1
DO WHILE ( i <= KQ )
IF ( IEIGQ(i) == ZERO ) THEN
@@ -725,9 +725,9 @@
END IF
IF ( NFAIL_REZ == 0 ) THEN
WRITE(*,*) '>>>> Rezidual computation test PASSED.'
WRITE(*,*) '>>>> Residual computation test PASSED.'
ELSE
WRITE(*,*) 'Rezidual computation test FAILED ', NFAIL_REZ, 'time(s)'
WRITE(*,*) 'Residual computation test FAILED ', NFAIL_REZ, 'time(s)'
WRITE(*,*) 'Max residual computing test adjusted error measure was ', TMP_REZ
WRITE(*,*) 'It should be up to O(M*N) times EPS, EPS = ', EPS
NFAIL_TOTAL = NFAIL_TOTAL + NFAIL_REZ
@@ -769,9 +769,9 @@
END IF
IF ( NFAIL_REZQ == 0 ) THEN
WRITE(*,*) '>>>> Rezidual computation test PASSED.'
WRITE(*,*) '>>>> Residual computation test PASSED.'
ELSE
WRITE(*,*) 'Rezidual computation test FAILED ', NFAIL_REZQ, 'time(s)'
WRITE(*,*) 'Residual computation test FAILED ', NFAIL_REZQ, 'time(s)'
WRITE(*,*) 'Max residual computing test adjusted error measure was ', TMP_REZQ
WRITE(*,*) 'It should be up to O(M*N) times EPS, EPS = ', EPS
NFAILQ_TOTAL = NFAILQ_TOTAL + NFAIL_REZQ
+9 -9
View File
@@ -198,7 +198,7 @@
!.............
DO K_TRAJ = 1, 2
! Number of intial conditions in the simulation/trajectories (1 or 2)
! Number of initial conditions in the simulation/trajectories (1 or 2)
COND = 1.0D4
ZMAX = (1.0D1,1.0D1)
@@ -247,7 +247,7 @@
IF ( K_TRAJ == 2 ) THEN
! generate data as two trajectories
! with two inital conditions
! with two initial conditions
CALL ZLARNV(2, ISEED, M, ZF(1,1) )
DO i = 1, N/2
CALL ZGEMV( 'N', M, M, ZONE, ZA, LDA, ZF(1,i), 1, &
@@ -385,7 +385,7 @@
! Check that Z = X*W, on return from ZGEDMD
! This checks that the returned eigenvectors in Z are
! the product of the SVD'POD basis returned in X
! and the eigenvectors of the rayleigh quotient
! and the eigenvectors of the Rayleigh quotient
! returned in W
CALL ZGEMM( 'N', 'N', M, K, K, ZONE, ZX, LDX, ZW, LDW, &
ZZERO, ZZ1, LDZ )
@@ -462,7 +462,7 @@
CALL ZGEMM( 'N', 'N', M, K, M, ZONE, ZA, LDA, ZZ, LDZ, ZZERO, ZY1, LDY )
! ... and then A*Z(:,i) - LAMBDA(i)*Z(:,i), using the real forms
! of the invariant subspaces that correspond to complex conjugate
! pairs of eigencalues. (See the description of Z in ZGEDMD,)
! pairs of eigenvalues. (See the description of Z in ZGEDMD,)
DO i=1, K
! have a real eigenvalue with real eigenvector
@@ -582,7 +582,7 @@
CALL ZGEMM( 'N', 'N', M, KQ, M, ZONE, ZA, LDA, ZZ, LDZ, ZZERO, ZY1, LDY )
! ... and then A*Z(:,i) - LAMBDA(i)*Z(:,i), using the real forms
! of the invariant subspaces that correspond to complex conjugate
! pairs of eigencalues. (See the description of Z in ZGEDMDQ)
! pairs of eigenvalues. (See the description of Z in ZGEDMDQ)
DO i=1, KQ
! have a real eigenvalue with real eigenvector
@@ -678,9 +678,9 @@
END IF
IF ( NFAIL_REZ == 0 ) THEN
WRITE(*,*) '>>>> Rezidual computation test PASSED.'
WRITE(*,*) '>>>> Residual computation test PASSED.'
ELSE
WRITE(*,*) 'Rezidual computation test FAILED ', NFAIL_REZ, 'time(s)'
WRITE(*,*) 'Residual computation test FAILED ', NFAIL_REZ, 'time(s)'
WRITE(*,*) 'Max residual computing test adjusted error measure was ', TMP_REZ
WRITE(*,*) 'It should be up to O(M*N) times EPS, EPS = ', EPS
NFAIL_TOTAL = NFAIL_TOTAL + NFAIL_REZ
@@ -722,9 +722,9 @@
END IF
IF ( NFAIL_REZQ == 0 ) THEN
WRITE(*,*) '>>>> Rezidual computation test PASSED.'
WRITE(*,*) '>>>> Residual computation test PASSED.'
ELSE
WRITE(*,*) 'Rezidual computation test FAILED ', NFAIL_REZQ, 'time(s)'
WRITE(*,*) 'Residual computation test FAILED ', NFAIL_REZQ, 'time(s)'
WRITE(*,*) 'Max residual computing test adjusted error measure was ', TMP_REZQ
WRITE(*,*) 'It should be up to O(M*N) times EPS, EPS = ', EPS
NFAILQ_TOTAL = NFAILQ_TOTAL + NFAIL_REZQ