source: codes/icosagcm/devel/src/kernels_unst/compute_rhodz.k90 @ 913

Last change on this file since 913 was 906, checked in by dubos, 5 years ago

devel : compute_rhodz for unstructured mesh

File size: 1010 bytes
Line 
1   !--------------------------------------------------------------------------
2   !---------------------------- compute_rhodz ----------------------------------
3   IF(comp) THEN
4      !$OMP DO SCHEDULE(STATIC)
5      DO ij = 1, primal_num
6         !DIR$ SIMD
7         DO l = 1, llm
8            m = ( AP(l,ij)-AP(l+1,ij) + (BP(l,ij)-BP(l+1,ij))*ps(ij) )/g
9            rhodz(l,ij)=m
10         END DO
11      END DO
12      !$OMP END DO
13   ELSE
14      err=0.
15      !$OMP DO SCHEDULE(STATIC)
16      DO ij = 1, primal_num
17         !DIR$ SIMD
18         DO l = 1, llm
19            m = ( AP(l,ij)-AP(l+1,ij) + (BP(l,ij)-BP(l+1,ij))*ps(ij) )/g
20            err = MAX(err, ABS(m-rhodz(l,ij)))
21         END DO
22      END DO
23      !$OMP END DO
24      IF(err>1e-10) THEN
25         PRINT *, 'Discrepancy between ps and rhodz detected', err
26         STOP
27      END IF
28   END IF
29   !---------------------------- compute_rhodz ----------------------------------
30   !--------------------------------------------------------------------------
Note: See TracBrowser for help on using the repository browser.