Changeset 972 for LMDZ4/trunk/libf/phylmd/add_phys_tend.F90
- Timestamp:
- Jun 19, 2008, 12:24:22 PM (16 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
LMDZ4/trunk/libf/phylmd/add_phys_tend.F90
r941 r972 18 18 use phys_state_var_mod 19 19 IMPLICIT none 20 #include "iniprint.h" 20 21 21 22 ! Arguments : … … 32 33 INTEGER jadrs(klon*klev), jbad 33 34 INTEGER jqadrs(klon*klev), jqbad 35 INTEGER kadrs(klon*klev) 36 INTEGER kqadrs(klon*klev) 34 37 35 38 integer debug_level 36 39 logical, save :: first=.true. 40 INTEGER, SAVE :: itap 37 41 !====================================================================== 38 42 ! Initialisations 39 43 40 44 debug_level=10 41 45 if (first) then 46 itap=0 47 first=.false. 48 endif 49 ! Incrementer le compteur de la physique 50 itap = itap + 1 42 51 !====================================================================== 43 52 ! Ajout des tendances sur le vent et l'eau liquide … … 62 71 jbad = jbad + 1 63 72 jadrs(jbad) = i 73 kadrs(jbad) = k 64 74 ENDIF 65 75 IF ( zq<0. .or. zq>0.1 .or. abs(zdq(i,k))>1.e-2 ) then 66 76 jqbad = jqbad + 1 67 77 jqadrs(jqbad) = i 78 kqadrs(jqbad) = k 68 79 ENDIF 69 80 t_seri(i,k)=zt … … 97 108 print*,'l T dT Q dQ ' 98 109 DO k = 1, klev 99 write(*,'(i3,2f14.4,2e14.2)') k,t_seri(i,k),zdt(i,k),q_seri(i,k),zdq(i,k) 110 zq=q_seri(i,k)+zdq(i,k) 111 if (zq.lt.1.e-15) then 112 if (q_seri(i,k).lt.1.e-15) then 113 ! print*,' cas q_seri<1.e-15 i k q_seri zq zdq :',i,k,q_seri(i,k),zq,zdq(i,k) 114 q_seri(i,k)=1.e-15 115 zdq(i,k)=(1.e-15-q_seri(i,k)) 116 endif 117 endif 100 118 ! zq=q_seri(i,k)+zdq(i,k) 101 119 ! if (zq.lt.1.e-15) then … … 103 121 ! endif 104 122 ENDDO 105 call print_debug_phys(i,debug_level,text)106 123 ENDDO 107 124 ENDIF 108 125 ! 109 126 127 !IM ajout memes tests pour reverifier les jbad, jqbad beg 128 jbad=0 129 jqbad=0 130 DO k = 1, klev 131 DO i = 1, klon 132 IF ( t_seri(i,k)>370. .or. t_seri(i,k)<130. .or. abs(zdt(i,k))>50. ) then 133 jbad = jbad + 1 134 jadrs(jbad) = i 135 ! if(prt_level.ge.10) THEN 136 ! print*,'cas2 i k t_seri zdt',i,k,t_seri(i,k),zdt(i,k) 137 ! endif 138 ENDIF 139 IF ( q_seri(i,k)<0. .or. q_seri(i,k)>0.1 .or. abs(zdq(i,k))>1.e-2 ) then 140 jqbad = jqbad + 1 141 jqadrs(jqbad) = i 142 kqadrs(jqbad) = k 143 ! if(prt_level.ge.10) THEN 144 ! print*,'cas2 i k q_seri zdq',i,k,q_seri(i,k),zdq(i,k) 145 ! endif 146 ENDIF 147 ENDDO 148 ENDDO 149 IF (jbad .GT. 0) THEN 150 DO j = 1, jbad 151 i=jadrs(j) 152 k=kadrs(j) 153 print*,'PLANTAGE2 POUR LE POINT i itap rlon rlat txt jbad zdt t',i,itap,rlon(i),rlat(i),text,jbad, & 154 & zdt(i,k),t_seri(i,k)-zdt(i,k) 155 ! if(prt_level.ge.10) THEN 156 if(prt_level.ge.10.and.itap.GE.229.and.i.EQ.3027) THEN 157 print*,'l T dT Q dQ ' 158 DO k = 1, klev 159 write(*,'(i3,2f14.4,2e14.2)') k,t_seri(i,k),zdt(i,k),q_seri(i,k),zdq(i,k) 160 ENDDO 161 call print_debug_phys(i,debug_level,text) 162 endif 163 ENDDO 164 ENDIF 165 ! 166 IF (jqbad .GT. 0) THEN 167 DO j = 1, jqbad 168 i=jqadrs(j) 169 k=kqadrs(j) 170 print*,'WARNING : EAU2 POUR LE POINT i itap rlon rlat txt jqbad zdq q zdql ql',i,itap,rlon(i),rlat(i),text,jqbad,& 171 & zdq(i,k), q_seri(i,k)-zdq(i,k), zdql(i,k), ql_seri(i,k)-zdql(i,k) 172 ! if(prt_level.ge.10) THEN 173 if(prt_level.ge.10.and.itap.GE.229.and.i.EQ.3027) THEN 174 print*,'l T dT Q dQ ' 175 DO k = 1, klev 176 write(*,'(i3,2f14.4,2e14.2)') k,t_seri(i,k),zdt(i,k),q_seri(i,k),zdq(i,k) 177 ENDDO 178 call print_debug_phys(i,debug_level,text) 179 endif 180 ENDDO 181 ENDIF 182 183 CALL hgardfou(t_seri,ftsol,text) 110 184 RETURN 111 185 END
Note: See TracChangeset
for help on using the changeset viewer.