Changeset 2461 for trunk/LMDZ.MARS/libf/aeronomars/moldiff_red.F90
- Timestamp:
- Feb 16, 2021, 12:31:33 PM (4 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/LMDZ.MARS/libf/aeronomars/moldiff_red.F90
r2157 r2461 43 43 real*8 masseU,kBolt,RgazP,Rmars,Grav,Mmars 44 44 real*8 rho0,D0,T0,H0,time0,dZ,time,dZraf,tdiff,Zmin,Zmax 45 real*8 FacEsc,invsgmu,PhiEscH,PhiEscH2 45 real*8 FacEsc,invsgmu,PhiEscH,PhiEscH2,PhiEscD 46 46 real*8 hp(nlayer) 47 47 real*8 pp(nlayer) … … 64 64 real*8,dimension(:),allocatable,save :: wi,Wad,Uthermal,Lambdaexo,Hspecie 65 65 real*8,dimension(:),allocatable,save :: Mtot1,Mtot2,Mraf1,Mraf2 66 integer,parameter :: ListeDiffNb=1 566 integer,parameter :: ListeDiffNb=16 67 67 character(len=20),dimension(ListeDiffNb) :: ListeDiff 68 68 real*8,parameter :: pi=3.141592653 … … 75 75 integer,save :: i_h2 76 76 integer,save :: i_h 77 integer,save :: i_d 77 78 ! vertical index limit for the molecular diffusion 78 79 integer,save :: il0 … … 130 131 ListeDiff(14)='n' 131 132 ListeDiff(15)='he' 133 ListeDiff(16)='hdo_vap' 132 134 i_h=1000 133 135 i_h2=1000 136 i_d=1000 134 137 ! On regarde quelles especes diffusables sont presentes 135 138 … … 162 165 if (noms(nn) .eq. 'h') i_h=n 163 166 if (noms(nn) .eq. 'h2') i_h2=n 167 if (noms(nn) .eq. 'd') i_d=n 164 168 endif 165 169 enddo … … 222 226 PhiEscH=0D0 223 227 PhiEscH2=0D0 228 PhiEscD=0D0 224 229 225 230 do ig=1,ngrid … … 403 408 & (Rmars+Zraf(nlraf))/kbolt/Traf(nlraf) 404 409 wi(nn)=0D0 405 if (nn .eq. i_h .or. nn .eq. i_h2 ) then410 if (nn .eq. i_h .or. nn .eq. i_h2 .or. nn .eq. i_d) then 406 411 wi(nn)=Uthermal(nn)/2d0/sqrt(PI)*exp(-Lambdaexo(nn))* & 407 412 & (Lambdaexo(nn)+1d0) … … 409 414 enddo 410 415 411 ! print*,'wi',wi(i_h),wi(i_h2), Uthermal,Lambdaexo,mmol(gcmind(:))416 ! print*,'wi',wi(i_h),wi(i_h2),wi(i_d),Uthermal,Lambdaexo,mmol(gcmind(:)) 412 417 ! print*,'wi',wi 413 ! stop414 418 415 419 ! Compute time step for diffusion … … 594 598 ! the trend only at the end 595 599 596 PhiEscH=PhiEscH+wi(i_h)*Nrafk(nlraf,i_h)*cell_area(ig) ! in s-1 597 PhiEscH2=PhiEscH2+wi(i_h2)*Nrafk(nlraf,i_h2)*cell_area(ig) ! in s-1 (U in m/s, aire in m2, Nrafk in m-3) 598 ! print*,'test',ig,wi(i_h),Nrafk(nlraf,i_h),wi(i_h2),Nrafk(nlraf,i_h2),cell_area(ig),PhiEscH,PhiEscH2,i_h,i_h2 600 if (i_h .ne. 1000) PhiEscH=PhiEscH+wi(i_h)*Nrafk(nlraf,i_h)*cell_area(ig) ! in s-1 601 if (i_h2 .ne. 1000) PhiEscH2=PhiEscH2+wi(i_h2)*Nrafk(nlraf,i_h2)*cell_area(ig) ! in s-1 (U in m/s, aire in m2, Nrafk in m-3) 602 if (i_d .ne. 1000) PhiEscD=PhiEscD+wi(i_d)*Nrafk(nlraf,i_d)*cell_area(ig) 603 ! print*,'test',ig,wi(i_h),wi(i_h2),Nrafk(nlraf,i_h),Nrafk(nlraf,i_h2),Nrafk(nlraf,i_d),cell_area(ig),PhiEscH,PhiEscH2,i_h,i_h2,i_d,PhiEscD 599 604 ! stop 600 605 … … 651 656 652 657 enddo ! ig loop 653 ! print*,'Escape flux H, H2 (s-1)',PhiEscH,PhiEscH2658 ! print*,'Escape flux H, H2,D (s-1)',PhiEscH,PhiEscH2,PhiEscD 654 659 655 660 return
Note: See TracChangeset
for help on using the changeset viewer.