source: trunk/LMDZ.MARS/libf/dyn3d/test_period.F @ 1005

Last change on this file since 1005 was 1005, checked in by emillour, 11 years ago

Mars GCM:

  • Bug fix: when running with photochemistry, ccns did not sediment! Fixed initracer.F. Also added that callsedim/newsedim use updated temperatures.
  • Converted run0 and run_mcd scripts to bash.

EM

File size: 2.8 KB
Line 
1      SUBROUTINE test_period ( ucov, vcov, teta, q, p, phis )
2c
3c     Auteur : P. Le Van 
4c    ---------
5c  ....  Cette routine teste la periodicite en longitude des champs   ucov,
6c                           teta, q , p et phis                 ..........
7c
8c     IMPLICIT NONE
9c
10#include "dimensions.h"
11#include "paramet.h"
12c
13c    ......  Arguments   ......
14c
15      REAL ucov(ip1jmp1,llm), vcov(ip1jm,llm), teta(ip1jmp1,llm) ,
16     ,      q(ip1jmp1,llm,nqmx), p(ip1jmp1,llmp1), phis(ip1jmp1)
17c
18c   .....  Variables  locales  .....
19c
20      INTEGER ij,l,nq
21c
22      DO l = 1, llm
23         DO ij = 1, ip1jmp1, iip1
24          IF( ucov(ij,l).NE.ucov(ij+iim,l) )  THEN
25          PRINT *,'STOP dans test_period car ---  UCOV  ---  n est pas', 
26     ,  ' periodique en longitude ! '
27          PRINT *,' l,  ij, ij+iim = ', l, ij, ij+iim
28          write(*,*) "ucov(ij,l)=",ucov(ij,l)," ucov(ij+iim,l)=",
29     &                ucov(ij+iim,l)
30          STOP
31          ENDIF
32          IF( teta(ij,l).NE.teta(ij+iim,l) )  THEN
33          PRINT *,'STOP dans test_period car ---  TETA  ---  n est pas', 
34     ,   ' periodique en longitude ! '
35          PRINT *,' l,  ij, ij+iim = ', l, ij, ij+iim
36          write(*,*) "teta(ij,l)=",teta(ij,l)," teta(ij+iim,l)=",
37     &                teta(ij+iim,l)
38          STOP
39          ENDIF
40         ENDDO
41      ENDDO
42
43c
44      DO l = 1, llm
45         DO ij = 1, ip1jm, iip1
46          IF( vcov(ij,l).NE.vcov(ij+iim,l) )  THEN
47          PRINT *,'STOP dans test_period car ---  VCOV  ---  n est pas', 
48     ,   ' periodique en longitude !'
49          PRINT *,' l,  ij, ij+iim = ', l, ij, ij+iim
50          write(*,*) "vcov(ij,l)=",vcov(ij,l),
51     &               " vcov(ij+iim,l)",vcov(ij+iim,l)
52          STOP
53          ENDIF
54         ENDDO
55      ENDDO
56     
57c
58      DO nq =1, nqmx
59        DO l =1, llm
60          DO ij = 1, ip1jmp1, iip1
61          IF( q(ij,l,nq).NE.q(ij+iim,l,nq) )  THEN
62          PRINT *,'STOP dans test_period car ---  Q  ---  n est pas ', 
63     ,   'periodique en longitude !'
64          PRINT *,' nq , l,  ij, ij+iim = ', nq, l, ij, ij+iim
65        PRINT *,'q(ij,l,nq) q(ij+iim,l,nq) ',q(ij,l,nq),q(ij+iim,l,nq)
66          STOP
67          ENDIF
68          ENDDO
69        ENDDO
70      ENDDO
71c
72       DO l = 1, llm
73         DO ij = 1, ip1jmp1, iip1
74          IF( p(ij,l).NE.p(ij+iim,l) )  THEN
75          PRINT *,'STOP dans test_period car ---  P  ---  n est pas', 
76     ,    ' periodique en longitude !'
77          PRINT *,' l ij = ',l, ij, ij+iim
78          STOP
79          ENDIF
80          IF( phis(ij).NE.phis(ij+iim) )  THEN
81          PRINT *,'STOP dans test_period car ---  PHIS  ---  n est pas', 
82     ,   ' periodique en longitude !  l, IJ = ', l, ij,ij+iim
83          PRINT *,' ij = ', ij, ij+iim
84          STOP
85          ENDIF
86         ENDDO
87       ENDDO
88c
89c
90         RETURN
91         END
Note: See TracBrowser for help on using the repository browser.