Changeset 1036 for trunk/LMDZ.MARS/libf/aeronomars/calchim.F90
- Timestamp:
- Sep 11, 2013, 2:34:44 PM (11 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/LMDZ.MARS/libf/aeronomars/calchim.F90
r658 r1036 1 subroutine calchim(ptimestep,pplay,pplev,pt,pdt,dist_sol,mu0, & 1 subroutine calchim(nq, & 2 ptimestep,pplay,pplev,pt,pdt,dist_sol,mu0, & 2 3 zzlev,zzlay,zday,pq,pdq,dqchim,dqschim,dqcloud, & 3 4 dqscloud,tauref,co2ice, & 4 5 pu,pdu,pv,pdv,surfdust,surfice) 5 6 7 use tracer_mod, only: igcm_co2, igcm_co, igcm_o, igcm_o1d, igcm_o2, & 8 igcm_o3, igcm_h, igcm_h2, igcm_oh, igcm_ho2, & 9 igcm_h2o2, igcm_ch4, igcm_n2, igcm_h2o_vap, & 10 igcm_no, igcm_n, igcm_no2, igcm_n2d, & 11 igcm_o2plus, igcm_co2plus, igcm_oplus, & 12 igcm_coplus, igcm_cplus, igcm_nplus, & 13 igcm_noplus, igcm_n2plus, igcm_hplus, & 14 igcm_hco2plus, igcm_elec, mmol 6 15 implicit none 7 16 … … 56 65 #include "dimphys.h" 57 66 #include "chimiedata.h" 58 #include "tracer.h"67 !#include "tracer.h" 59 68 #include "comcstfi.h" 60 69 #include "callkeys.h" … … 63 72 ! input: 64 73 74 integer,intent(in) :: nq ! number of tracers 65 75 real :: ptimestep 66 76 real :: pplay(ngridmx,nlayermx) ! pressure at the middle of the layers … … 76 86 real :: dist_sol ! distance of the sun (AU) 77 87 real :: mu0(ngridmx) ! cos of solar zenith angle (=1 when sun at zenith) 78 real :: pq(ngridmx,nlayermx,nq mx) ! tracers mass mixing ratio79 real :: pdq(ngridmx,nlayermx,nq mx) ! previous tendencies88 real :: pq(ngridmx,nlayermx,nq) ! tracers mass mixing ratio 89 real :: pdq(ngridmx,nlayermx,nq) ! previous tendencies 80 90 real :: zday ! date (time since Ls=0, in martian days) 81 91 real :: tauref(ngridmx) ! optical depth at 7 hPa … … 86 96 ! output: 87 97 88 real :: dqchim(ngridmx,nlayermx,nq mx) ! tendencies on pq due to chemistry89 real :: dqschim(ngridmx,nq mx) ! tendencies on qsurf90 real :: dqcloud(ngridmx,nlayermx,nq mx)! tendencies on pq due to condensation91 real :: dqscloud(ngridmx,nq mx) ! tendencies on qsurf98 real :: dqchim(ngridmx,nlayermx,nq) ! tendencies on pq due to chemistry 99 real :: dqschim(ngridmx,nq) ! tendencies on qsurf 100 real :: dqcloud(ngridmx,nlayermx,nq)! tendencies on pq due to condensation 101 real :: dqscloud(ngridmx,nq) ! tendencies on qsurf 92 102 93 103 ! local variables: 94 104 95 105 integer,save :: nbq ! number of tracers used in the chemistry 96 integer, save :: niq(nqmx)! array storing the indexes of the tracers106 integer,allocatable,save :: niq(:) ! array storing the indexes of the tracers 97 107 integer :: iloc(1) ! index of major species 98 108 integer :: ig,l,i,iq,iqmax … … 133 143 134 144 real :: latvl1, lonvl1 135 real :: zq(ngridmx,nlayermx,nq mx) ! pq+pdq*ptimestep before chemistry145 real :: zq(ngridmx,nlayermx,nq) ! pq+pdq*ptimestep before chemistry 136 146 ! new mole fraction after 137 147 real :: zt(ngridmx,nlayermx) ! temperature … … 149 159 real :: ztemp(nlayermx) ! Temperature (K) 150 160 real :: zlocal(nlayermx) ! Altitude (km) 151 real :: zycol(nlayermx,nq mx) ! Composition (mole fractions)161 real :: zycol(nlayermx,nq) ! Composition (mole fractions) 152 162 real :: szacol ! Solar zenith angle 153 163 real :: surfice1d(nlayermx) ! Ice surface area (cm2/cm3) … … 172 182 end if 173 183 ! find index of chemical tracers to use 184 allocate(niq(nq)) 174 185 ! Listed here are all tracers that can go into photochemistry 175 186 nbq = 0 ! to count number of tracers
Note: See TracChangeset
for help on using the changeset viewer.