! ! Dimensions (remove for waccm): integer,parameter :: | pver = zkmxp, ! number of levels in a column | pcols = zimxp ! number of columns (usually longitude) ! ! Temperature-dependent reaction rates are latitude dependent, ! and therefore thread-private. /crates_com/ vars are set by ! rates_tdep (chemrates.f), which is called from dynamics. ! (10/00: rkm12,rkm18,rkm19 are unused) ! real :: rk1,rk2,rk3,rk11,rk19,rk20,rk26,ra1,ra2,ra3,beta1,beta3, | beta5,beta9,beta10,beta12,dnoeuv,rkm1,rkm2a,rkm2b,rkm6,rkm9, | rkm12,rkm18,rkm19,rkm20,rkm21,rkm22,rkm23,rkm24,rkm25,rkm26, | rkm27,rkm28,rkm29,rkm30,rkm31,rkm32,rkm33,rkm34,rkm35,rkm36, | rkm37,rkm39,rkm40,rkm41,rkm42,rkm43,rkm44,gam1,gam3,gam5, | gam6,gam7,gam8,gam9,gam11,gam12,gam13,gam14,del1,del2,del3, | xjh2o2,rin9,rin10,rin11,rin12,rin13,rin17,rin18,rin19,rin20, | rin21,rin40,ch3,ch3o2,ch3ooh,ch3o,ch2o,cho,xjch3oo,xjch2oa, | xjch2ob,xjn2o,xjco2d,xjho2,xjch4a,xjch4b ! common/crates_com/ | RK1 (pcols,pver), RK2 (pcols,pver), RK3 (pcols,pver), | RK11(pcols,pver), RK19(pcols,pver), RK20(pcols,pver), | RK26(pcols,pver), ! | RA1 (pcols,pver) ,RA2 (pcols,pver) ,RA3 (pcols,pver), ! | BETA1(pcols,pver), BETA3 (pcols,pver), BETA5 (pcols,pver), | BETA9(pcols,pver), BETA10(pcols,pver), BETA12(pcols,pver), ! | RKM1 (pcols,pver), RKM2A(pcols,pver), RKM2B(pcols,pver), | RKM6 (pcols,pver), RKM9 (pcols,pver), RKM12(pcols,pver), | RKM18(pcols,pver), RKM19(pcols,pver), RKM20(pcols,pver), | RKM21(pcols,pver), RKM22(pcols,pver), RKM23(pcols,pver), | RKM24(pcols,pver), RKM25(pcols,pver), RKM26(pcols,pver), | RKM27(pcols,pver), RKM28(pcols,pver), RKM29(pcols,pver), | RKM30(pcols,pver), RKM31(pcols,pver), RKM32(pcols,pver), | RKM33(pcols,pver), RKM34(pcols,pver), RKM35(pcols,pver), | RKM36(pcols,pver), RKM37(pcols,pver), RKM39(pcols,pver), | RKM40(pcols,pver), RKM41(pcols,pver), RKM42(pcols,pver), | RKM43(pcols,pver), RKM44(pcols,pver), ! | GAM1 (pcols,pver), GAM3 (pcols,pver), GAM5(pcols,pver), | GAM6 (pcols,pver), GAM7 (pcols,pver), GAM8(pcols,pver), | GAM9 (pcols,pver), GAM11(pcols,pver), GAM12(pcols,pver), | GAM13(pcols,pver), GAM14(pcols,pver), ! | DEL1(pcols,pver), DEL2(pcols,pver), DEL3(pcols,pver), ! | RIN9 (pcols,pver), RIN10(pcols,pver), RIN11(pcols,pver), | RIN12(pcols,pver), RIN13(pcols,pver), RIN17(pcols,pver), | RIN18(pcols,pver), RIN19(pcols,pver), RIN20(pcols,pver), | RIN21(pcols,pver), RIN40(pcols,pver) ! ! /chx_com/ vars are set by cmpmeta (thread-private): common/chx_com/ | CH3 (pcols,pver), CH3O2(pcols,pver), CH3OOH(pcols,pver), | CH3O(pcols,pver), CH2O (pcols,pver), CHO (pcols,pver) ! ! /xjx_com/ vars, including dnoeuv, are set by qrj (thread-private): common/xjx_com/ | XJCH3OO(pcols,pver), XJCH2OA(pcols,pver), XJCH2OB(pcols,pver), | XJN2O (pcols,pver), XJCO2D (pcols,pver), XJHO2 (pcols,pver), | XJCH4A (pcols,pver), XJCH4B (pcols,pver), XJH2O2 (pcols,pver), | DNOEUV(pcols,pver) C C **** MASS MIXING RATIOS OF METASTABLE SPECIES C **** ! xno1d,xno21s,xno21d,xnh2o2 are set by cmpmeta. ! xnhp,xiop2d,xiop2p, are set by oplus. ! rmcl,rmclo,rmn2o are set by cmpsolgar. ! real :: xno1d,xno21s,xno21d,xnhp,xiop2d,xiop2p,xnh2o2, | rmcl,rmclo,rmn2o COMMON/METAS/ | XNO1D (pcols,pver), XNO21S(pcols,pver), XNO21D(pcols,pver), | XNHP (pcols,pver), XIOP2D(pcols,pver), XIOP2P(pcols,pver), | XNH2O2(pcols,pver), | RMCL (pcols,pver), RMCLO (pcols,pver), RMN2O(pcols,pver) ! ! fs is set by cmpox, and referenced by comp. real :: fs COMMON/FSARAY/FS(pcols,pver,2,0:2) C **** C **** HOX PRODUCTION FROM ION CHEMISTRY C **** ! phoxic is set by hoxpion (as of 10/00, phoxic is constant 1.e-60), ! and referenced by cmph2o and cmphox. real :: phoxic COMMON/HOXION/PHOXIC(pcols,pver) C ! a1d,asg,adl set by sub rates_tdep. ! (a1d,asg,adl can be moved to parameters in crates_const.h) ! xnmbar is set by oplus.f. ! xj762,xjno2,xjnop,xjnopn,xjno are set by qrj.f. ! real :: xnmbar,xj762,xjno2,xjnop,xjnopn,xjno COMMON/NMBTRF/XNMBAR(pcols,pver), 1 XJ762(pcols,pver),XJNO2(pcols,pver), 2 XJNOP(pcols,pver),XJNOPN(pcols,pver), 3 XJNO (pcols,pver) ! ! 11/30/98 as per modsrc.kibo ! disn2p is set by orora, qinite,qrj, and xray, and read by qtieff ! tvib is set by rates_tdep real :: disn2p,tvib COMMON/DSN2PAR/DISN2P(pcols,pver),TVIB(pcols,pver) ! !$OMP THREADPRIVATE (/crates_com/,/metas/,/fsaray/,/hoxion/,/nmbtrf/, !$OMP+ /dsn2par/,/xjx_com/,/chx_com/) !DIR$ TASKCOMMON crates_com,METAS,FSARAY,HOXION,NMBTRF,DSN2PAR,xjx_com, !DIR$+ chx_com !