Changeset 1357
- Timestamp:
- Oct 20, 2014, 8:18:06 AM (10 years ago)
- Location:
- trunk/LMDZ.MARS
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/LMDZ.MARS/README
r1353 r1357 2147 2147 measurements, along with dustiropacity='mcs'. Future evolutions of this option 2148 2148 could include other instruments, or be used for water ice. 2149 2150 == 20/10/2014 == JYC 2151 - Update and bug correction on the escape fluxes of H and H2. -
trunk/LMDZ.MARS/libf/aeronomars/moldiff_red.F90
r1266 r1357 3 3 4 4 use tracer_mod, only: noms, mmol 5 USE comcstfi_h 6 5 use comgeomphy, only: airephy 7 6 implicit none 8 7 8 !#include "dimensions.h" 9 !#include "dimphys.h" 10 #include "comcstfi.h" 11 !#include "callkeys.h" 12 !#include "comdiurn.h" 13 !#include "chimiedata.h" 14 !#include "tracer.h" 15 !#include "conc.h" 9 16 #include "diffusion.h" 17 18 ! July 2014 JYC ADD BALISTIC Transport coupling to compute wup for H and H2 19 20 10 21 11 22 ! … … 39 50 real*8 masseU,kBolt,RgazP,Rmars,Grav,Mmars 40 51 real*8 rho0,D0,T0,H0,time0,dZ,time,dZraf,tdiff,Zmin,Zmax 41 real*8 FacEsc,invsgmu 52 real*8 FacEsc,invsgmu,PhiEscH,PhiEscH2 42 53 real*8 hp(nlayer) 43 54 real*8 pp(nlayer) … … 132 143 if (ListeDiff(n) .eq. noms(nn)) then 133 144 indic_diff(nn)=1 134 if (noms(nn) .eq. 'h') i_h=n135 if (noms(nn) .eq. 'h2') i_h2=n145 ! if (noms(nn) .eq. 'h') i_h=n 146 ! if (noms(nn) .eq. 'h2') i_h2=n 136 147 endif 137 148 … … 151 162 n=n+1 152 163 gcmind(n)=nn 153 endif 154 enddo 155 156 print*,'gcmind',gcmind 164 if (noms(nn) .eq. 'h') i_h=n 165 if (noms(nn) .eq. 'h2') i_h2=n 166 endif 167 enddo 168 169 ! print*,'gcmind',gcmind,i_h,i_h2 157 170 158 171 ! find vertical index above which diffusion is computed … … 207 220 invsgmu=1d0/g/masseU 208 221 209 ! print*,'moldiff',i_h2,i_h,ncompdiff 222 ! Compute the wup(ig) for H and H2 using the balistic code from R Yelle 223 224 PhiEscH=0D0 225 PhiEscH2=0D0 226 210 227 do ig=1,ngrid 211 228 pp=dble(pplay(ig,:)) … … 393 410 endif 394 411 enddo 412 413 ! print*,'wi',wi(i_h),wi(i_h2),Uthermal,Lambdaexo,mmol(gcmind(:)) 414 ! print*,'wi',wi 415 ! stop 395 416 396 417 ! Compute time step for diffusion … … 572 593 CALL RHOTOT(pp,tt,massemoy,qnew,RHOT,RHOK,nlayer,ncompdiff) 573 594 595 ! Update total escape flux of H and H2 (if q was really qnew, but not forget we will output 596 ! the trend only at the end 597 598 PhiEscH=PhiEscH+wi(i_h)*Nrafk(nlraf,i_h)*airephy(ig) ! in s-1 599 PhiEscH2=PhiEscH2+wi(i_h2)*Nrafk(nlraf,i_h2)*airephy(ig) ! in s-1 (U in m/s, aire in m2, Nrafk in m-3) 600 ! print*,'test',ig,wi(i_h),Nrafk(nlraf,i_h),wi(i_h2),Nrafk(nlraf,i_h2),airephy(ig),PhiEscH,PhiEscH2,i_h,i_h2 601 ! stop 602 603 574 604 if (ig .eq. ij0) then 575 605 do l=il0,nlayer … … 623 653 624 654 enddo ! ig loop 625 655 ! print*,'Escape flux H, H2 (s-1)',PhiEscH,PhiEscH2 626 656 627 657 return … … 1336 1366 Ytot=sum(Y) 1337 1367 1338 if (abs((Xtot-Ytot)/Xtot) .gt. 1d- 4) then1368 if (abs((Xtot-Ytot)/Xtot) .gt. 1d-3) then 1339 1369 print*,'no conservation for mass',Xtot,Ytot,nn 1340 1370 endif … … 1357 1387 ! print*,'l',l,qold(l,nn),qnew(l,nn),Mold,Mnew,DM,P(l),P(l+1) 1358 1388 ENDDO 1359 IF (abs(DM/Mold) .gt. 1d- 5) THEN1389 IF (abs(DM/Mold) .gt. 1d-2) THEN 1360 1390 Print*,'We dont conserve mas',nn,DM,Mold,Mnew,DM/Mold 1361 1391 ENDIF
Note: See TracChangeset
for help on using the changeset viewer.