7 subroutine racm_driver(id,ktau,dtstep,config_flags, &
8 gmt,julday,t_phy,moist,p8w,t8w, &
9 p_phy,chem,rho_phy,dz8w,z,z_at_w,vdrog3, &
10 ph_macr,ph_o31d,ph_o33p,ph_no2,ph_no3o2,ph_no3o,ph_hno2,&
11 ph_hno3,ph_hno4,ph_h2o2,ph_ch2or,ph_ch2om,ph_ch3cho, &
12 ph_ch3coch3,ph_ch3coc2h5,ph_hcocho,ph_ch3cocho, &
13 ph_hcochest,ph_ch3o2h,ph_ch3coo2h,ph_ch3ono2,ph_hcochob,&
14 addt,addx,addc,etep,oltp,olip,cslp,limp,hc5p,hc8p,tolp, &
15 xylp,apip,isop,hc3p,ethp,o3p,tco3,mo2,o1d,olnn,rpho,xo2,&
17 ids,ide, jds,jde, kds,kde, &
18 ims,ime, jms,jme, kms,kme, &
19 its,ite, jts,jte, kts,kte )
23 USE module_state_description
24 USE module_model_constants
27 INTEGER, INTENT(IN ) :: id,julday, &
28 ids,ide, jds,jde, kds,kde, &
29 ims,ime, jms,jme, kms,kme, &
30 its,ite, jts,jte, kts,kte
31 INTEGER, INTENT(IN ) :: &
33 REAL, INTENT(IN ) :: &
36 ! advected moisture variables
38 REAL, DIMENSION( ims:ime, kms:kme, jms:jme, num_moist ), &
41 ! advected chemical tracers
43 REAL, DIMENSION( ims:ime, kms:kme, jms:jme, num_chem ), &
44 INTENT(INOUT ) :: chem
47 ! arrays that hold photolysis rates
49 REAL, DIMENSION( ims:ime, kms:kme, jms:jme ), &
51 ph_macr,ph_o31d,ph_o33p,ph_no2,ph_no3o2,ph_no3o,ph_hno2, &
52 ph_hno3,ph_hno4,ph_h2o2,ph_ch2or,ph_ch2om,ph_ch3cho, &
53 ph_ch3coch3,ph_ch3coc2h5,ph_hcocho,ph_ch3cocho, &
54 ph_hcochest,ph_ch3o2h,ph_ch3coo2h,ph_ch3ono2,ph_hcochob
56 ! arrays that hold the radicals
58 REAL, DIMENSION( ims:ime, kms:kme, jms:jme ), &
60 addt,addx,addc,etep,oltp,olip,cslp,limp,hc5p,hc8p,tolp, &
61 xylp,apip,isop,hc3p,ethp,o3p,tco3,mo2,o1d,olnn,rpho,xo2,&
64 ! on input from met model
66 REAL, DIMENSION( ims:ime , kms:kme , jms:jme ) , &
75 ! for interaction with aerosols (really is output)
77 real , INTENT(INOUT) :: &
78 vdrog3(ims:ime,kms:kme-0,jms:jme,ldrog)
79 TYPE(grid_config_rec_type), INTENT(IN ) :: config_flags
83 REAL :: clwchem, dt60, dtcmax, dtcmin, xtime
84 INTEGER :: i,j,k,iprt, jce, jcs, n, nr, ipr,jpr,nvr
87 REAL :: p(kts:kte-1), rh(kts:kte-1), &
88 t(kts:kte-1), vcinp(nspec),wlc(kts:kte-1),p1,wvap
89 REAL*8 :: t_in,t_end, rj(nphot)
91 REAL*8 :: ATOL,rtol,temp
92 ! real *8 :: saverad(its:ite,kts:kte,jts:jte,50)
93 real *8 :: rxylho,rtolho,rcslho,rcslno3,rhc8ho,roliho,rolino3, &
94 rolio3,roltho,roltno3,rolto3,rapiho,rapino3,rapio3, &
101 INTEGER :: ixhour,iaerosol_sorgam
102 real :: xhour,xmin,xtimin
103 real :: const2,tinv,pot,pt2
104 END SUBROUTINE racm_driver
109 END MODULE module_racm