Changeset 923 for codes/icosagcm/devel/src
- Timestamp:
- 06/19/19 16:06:19 (5 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
codes/icosagcm/devel/src/initial/etat0_venus.f90
r911 r923 182 182 END DO 183 183 ! Back substitution : 184 ! x(i) = D(i)-C(i +1)x(i+1), x(llm)=D(llm)184 ! x(i) = D(i)-C(i)x(i+1), x(llm)=D(llm) 185 185 !DIR$ SIMD 186 186 DO ij=1,ngrid … … 193 193 !DIR$ SIMD 194 194 DO ij=1,ngrid 195 xu(ij,l) = xu(ij,l) - C(ij,l +1)*xu(ij,l+1)196 xv(ij,l) = xv(ij,l) - C(ij,l +1)*xv(ij,l+1)195 xu(ij,l) = xu(ij,l) - C(ij,l)*xu(ij,l+1) 196 xv(ij,l) = xv(ij,l) - C(ij,l)*xv(ij,l+1) 197 197 du(ij,l) = (xu(ij,l)-u(ij,l))/dt_phys 198 198 dv(ij,l) = (xv(ij,l)-v(ij,l))/dt_phys 199 199 END DO 200 200 END DO 201 202 IF(.FALSE.) THEN 203 ! check correctness of solution of tridiagonal problem 204 PRINT *, 'Max 1 residual of tridiagonal solver', MAXVAL(ABS(Ru)) 205 DO l = 2,llm-1 206 !DIR$ SIMD 207 DO ij=1,ngrid 208 Ru(ij,l) = Ru(ij,l) - B(ij,l)*xu(ij,l) + A(ij,l)*xu(ij,l-1) + A(ij,l+1)*xu(ij,l+1) 209 END DO 210 END DO 211 DO ij=1,ngrid 212 Ru(ij,1) = Ru(ij,1) - B(ij,1)*xu(ij,1) + A(ij,2)*xu(ij,2) 213 Ru(ij,llm) = Ru(ij,llm) - B(ij,llm)*xu(ij,llm) + A(ij,llm)*xu(ij,llm-1) 214 END DO 215 PRINT *, 'Max 2 residual of tridiagonal solver', MAXVAL(ABS(Ru)) 216 END IF 217 201 218 ! bottom friction + thermal relaxation 202 219 du(:,1)=du(:,1)-kfrict*u(:,1)
Note: See TracChangeset
for help on using the changeset viewer.