aero_condsoa.F:     1                     RGRID,  AERONUM,     XROW,      NTR,    NTP,
aero_condsoa.F:      REAL RGRID(ILG, ILEV, NTR), RTH(ILG,ILEV,ISIZE)   
aero_condsoa.F:     1                XROW,    RGRID,      NTR,      NTP,   IAE1,
aero_intrsec.F:     1                      XROW,    RGRID,      NTR,      NTP,   IAE1,
aero_intrsec.F:C     RGRID - INITIAL CONCENTRATION OF TRACERS IN EACH BIN
aero_intrsec.F:      REAL XROW (ILG, LEV, NTR), RGRID(ILG, ILEV, NTR)
aero_intrsec.F:                 RGRID(IL,L,IK)=XROW(IL,L+1,IK)
aero_intrsec.F:     1                                     XROW(I,L+1,NO)-RGRID(I,L,NO))
aero_intrsec.F:                  XROW(I,L+1,NK)=XROW(I,L+1,NK)+RGRID(I,L,NO)*RTH(I,L,K)
aeroact.F:C     ACCUMULATE NUMBER OF AEROSOLS[/M^3] FOR EACH GRID
aeroact.F:C     DISTRIBUTE CLOUD LIQUID WATER [KG/KG] INTO ACTIVATED BINS
aerocld.F:     3                  RADCLD,    RGRID, RTICLD,   ZFPREC,
aerocld.F:     6                   GDREM,   ROAROW,     ID,       JD, 
aerocld.F:     E                       Z,   IDEEP,      JT,     MAXG,      JDC,
aerocld.F:C     *                           (1) SUB-GRID VERTICAL VELOCITY
aerocld.F:C     *                               OXIDATION
aerocld.F:      REAL RADCLD(ILG,ILEV), RGRID(ILG,ILEV,NTR)
aerocld.F:      INTEGER IDEEP(ILG),JT(ILG),MAXG(ILG),JDC(ILG),LENGATH
aerocld.F:      INTEGER ID1,ID2,ID3,ID4,ID5,ID6,ID7,ID8,ID9,ID10,ID11,ID12,ID13,
aerocld.F:     +        ID14,ID15,ID16,ID17,ID18,ID19,ID20,ID21,ID22,ID23,ID24,
aerocld.F:     +        ID25,ID26,ID27,ID28,ID29,ID30,ID31,ID32,ID33,ID34,ID35,
aerocld.F:     +        ID36,ID37,ID38,ID39,ID40,ID41,ID42,ID43,ID44,ID45,ID46,
aerocld.F:     +        ID47,ID48,ID49,ID50,ID51,ID52,ID53,ID54,ID55,ID56,ID57,
aerocld.F:     +        ID58,ID59,ID60,ID61,ID62,ID63,ID64,ID65,ID66,ID67,ID68,
aerocld.F:     +        ID69,ID70,ID71,ID72,ID73,ID74,ID75,ID76,ID77,ID78,ID79,
aerocld.F:     +        ID80,ID81,ID82,ID83,ID84,ID85,ID86,ID87,ID88,ID89,ID90,
aerocld.F:     +        ID91,ID92,ID93,ID94,ID95,ID96,ID97,ID98,ID99
aerocld.F:      COMMON /DCPOINT/  ID1, ID2, ID3, ID4, ID5, ID6, ID7, ID8, ID9,
aerocld.F:     1                  ID10,ID11,ID12,ID13,ID14,ID15,ID16,ID17,ID18,
aerocld.F:     2                  ID19,ID20,ID21,ID22,ID23,ID24,ID25,ID26,ID27,
aerocld.F:     3                  ID28,ID29,ID30,ID31,ID32,ID33,ID34,ID35,ID36,
aerocld.F:     4                  ID37,ID38,ID39,ID40,ID41,ID42,ID43,ID44,ID45,
aerocld.F:     5                  ID46,ID47,ID48,ID49,ID50,ID51,ID52,ID53,ID54,
aerocld.F:     6                  ID55,ID56,ID57,ID58,ID59,ID60,ID61,ID62,ID63,
aerocld.F:     7                  ID64,ID65,ID66,ID67,ID68,ID69,ID70,ID71,ID72,
aerocld.F:     8                  ID73,ID74,ID75,ID76,ID77,ID78,ID79,ID80,ID81,
aerocld.F:     9                  ID82,ID83,ID84,ID85,ID86,ID87,ID88,ID89,ID90,
aerocld.F:     A                  ID91,ID92,ID93,ID94,ID95,ID96,ID97,ID98,ID99
aerocld.F:     1                NDAYS,NSECS,IDAY,LDAY,MDAY,MDAYT,INCD
aerocld.F:C    SECTION 1 CLOUD SUB-GRID VERTICAL VELOCITY [QUAM SCHEME]
aerocld.F:     4              ,NH3ROW,    O3ROW,   CO2ROW,   RGRID,   RTHPO
aerocld.F:     6              ,     G,     DSHJ,    IDEEP,      JT,    MAXG
aerocld.F:     *           ,WRA(ID1 ),WRA(ID2 ),WRA(ID3 ),WRA(ID4 ),WRA(ID5 )
aerocld.F:     1           ,WRA(ID6 ),WRA(ID7 ),WRA(ID8 ),WRA(ID9 ),WRA(ID10)
aerocld.F:     2           ,WRA(ID11),WRA(ID12),WRA(ID13),WRA(ID14),WRA(ID15)
aerocld.F:     3           ,WRA(ID16),WRA(ID17),WRA(ID18),WRA(ID19),WRA(ID20)
aerocld.F:     4           ,WRA(ID21),WRA(ID22),WRA(ID23),WRA(ID24),WRA(ID25)
aerocld.F:     5           ,WRA(ID26),WRA(ID27),WRA(ID28),WRA(ID29),WRA(ID30)
aerocld.F:     6           ,WRA(ID31),WRA(ID32),WRA(ID33),WRA(ID34),WRA(ID35)
aerocld.F:     7           ,WRA(ID36),WRU,WRW(1,1,1,1),WRW(1,1,1,2),WRW(1,1,1,3)
aerocld.F:     2 ,THLEV, RTBCLD, ID, GDREM, MAE)
aeroexe1.F:     +      dsubcld,ideep, jt, maxg, jd, lengath) 
aeroexe1.F:!   trnch          | integer | Number of grid points in y-direction(latitude),slice number
aeroexe1.F:!   t(ni*nk)       |   real  | Temperature at grid slice of mid-layer[K] 
aeroexe1.F:!   q(ni*nk)       |   real  | specific humidity [g/g]                
aeroexe1.F:!   fws(ni*nk)     |   real  | grid vertical velocity [m/s ]
aeroexe1.F:!   fmodv (NI*NK)  |   real  | wind speed at grid     [m/s] 
aeroexe1.F:!   flwc (NI*NK)   |   real  | Cloud liquid water[unit?]
aeroexe1.F:!   lat_deg (NI    |   real  | Grid latitude value    
aeroexe1.F:!   long_deg(NI)   |   real  | Grid longitude value     
aeroexe1.F:      integer ID
aeroexe1.F:       integer ideep (ni)
aeroexe1.F:       REAL RGRID (NI,NK-1,ntr)
aeroexe1.F:!Added by wang to seolve fohra is divided by zero 
aeroexe1.F:     &                        ID,       JD,    ITI,  ITR,  ISLEV,   CAM,
aeroexe1.F:       CALL PUTZERO(RGRID,NI*(NK-1)*ntr)
aeroexe1.F:          if (IDEBUG.EQ.1) then
aeroexe1.F:!     &            'CAM -> IDD,JDD,ITI,ISCAM,INT(CAM),IDEBUG,ISLEV,ICOB,
aeroexe1.F:!     &            '      ',IDD,JDD,ITI,ISCAM,INT(CAM),IDEBUG,ISLEV,ICOB,
aeroexe1.F:         DSHJ(:,ik1) = sig(:,k)-sig(:,ik1)   !zhjh: from underside to upside.DSHJ>0.
aeroexe1.F:!      if (IDEBUG.EQ.1) write(*,*)'in aeroexe1 SO2 0i',IDD,trnch,ISLEV,
aeroexe1.F:!     &	aero_tr(IDD,ISLEV,cncaSO2)
aeroexe1.F:            rgrid(i,ik1,l) = aero_tr(i,k,l)  !instead of all tracers  HP!!!
aeroexe1.F:          rgrid(i,ik1,cncaOH) = rgrid(i,ik1,cncaOH) * 17./28.97
aeroexe1.F:          rgrid(i,ik1,cncaO3) = rgrid(i,ik1,cncaO3) * 48./28.97
aeroexe1.F:          rgrid(i,ik1,cncaH2O2) = rgrid(i,ik1,cncaH2O2) * 34./28.97
aeroexe1.F:!P    rgrid(i,ik1,cncaSO2) = rgrid(i,ik1,cncaSO2) * 64./28.97             !if using geia_full emission data, stop this  HP
aeroexe1.F:          rgrid(i,ik1,cncaHNO3) = rgrid(i,ik1,cncaHNO3) * 63./28.97
aeroexe1.F:          OHROW(i,ik1) = rgrid(i,ik1,cncaOH)
aeroexe1.F:          h2o2row(i,ik1) = rgrid(i,ik1,cncaH2O2)
aeroexe1.F:          o3row(i,ik1) = rgrid(i,ik1,cncaO3)
aeroexe1.F:          no3row(i,ik1) = rgrid(i,ik1,cncaNO3)
aeroexe1.F:          co2row(i,ik1) = rgrid(i,ik1,cncaCO2)
aeroexe1.F:          nh3row(i,ik1) = rgrid(i,ik1,cncaNH3)
aeroexe1.F:          hno3row(i,ik1) = rgrid(i,ik1,cncaHNO3)
aeroexe1.F:          do isub=1, NSUB                !added this loop for sub-grid
aeroexe1.F:           WSUB(i,ik1,isub) = fws(i,k)!now set its sub-grid with same wsub() !HP
aeroexe1.F:     9             NH3ROW,  HNO3ROW,   TOTMAS,     NSUB,      IDD,
aeroexe1.F:     6            PRETROW,   RADCLD,    RGRID,  TRWTROW,   ROAROW,
aeroexe1.F:     E                VDG,    FFDSS, AQ_DATE2,  T(1,NK),T(1,NK-1),  !if this aq_date2(2)=IDAY, have to check it  HP
aeroexe1.F:     E                 ZZ,    IDEEP,       JT,     MAXG,       jd,   ! knut
aeroexe1.F:c      if (IDEBUG.EQ.1) write(*,*)'in aeroexe1 SO2 2i',IDD,trnch,ISLEV,aero_tr(IDD,ISLEV,cncaSO2)
aeroexe1.F:c      if (IDEBUG.EQ.1) write(*,*)'end of aeroexe1 kount,trnch=',kount,trnch
aerosol_driver.F:                         ids,ide, jds,jde, kds,kde,                      &
aerosol_driver.F:! Grid structure in physics part of WRF
aerosol_driver.F:! Grid structure in physics part of WRF
aerosol_driver.F:!-- rvovrd	  R_v divided by R_d (dimensionless)
aerosol_driver.F:!-- ids           start index for i in domain
aerosol_driver.F:!-- ide           end index for i in domain
aerosol_driver.F:   TYPE(grid_config_rec_type),  INTENT(IN   )    :: config_flags
aerosol_driver.F:   INTEGER,      INTENT(IN   )    ::   ids,ide, jds,jde, kds,kde, &
aerosol_driver.F:!                   ids,ide, jds,jde, kds,kde,              &
aerosol_driver.F:                     ids,ide, jds,jde, kds,kde,                    &
aerovis.F:!     * (1) Guidance for Estimating Natural Visibility Conditions Under 
aodepth.F:!       and relative humidities at ILEV levels. AODEPTH 
aodepth.F:!     PRESSG | Grid row of surface pressure [Pa]         
aodepth.F:!     RH     | The nominal relative humidity values at which cross sections are computed
aodepth.F:!     RHROW  | relative humidity matrix [0 to .99]            
aodepth.F:!              M = mass density = mass mixing ratio (RGRID) * rho_air
aodepth.F:!        The RH data are the nominal relative humidity values at 
aodepth.F:!     (preparation for interpolating EXCOEF in terms of relative humidity 
aodepth.F:!       dry volume) interpolated to the current relative humidity 
aodepth.F:!       all divided by RHOP(NT)*1.E-3)
cam_aero_sulfate.F:     1                      IH2S,     IDMS,     ISO2,     ISO4,  RGRID,    
cam_aero_sulfate.F:C       (2) OXIDATION OF SO2 BY OH
cam_aero_sulfate.F:      REAL RGRID(ILG, ILEV, NTR),CLDCV(ILG,ILEV,2)                     !SLG
cam_aero_sulfate.F:      PARAMETER (Y4PID3 = 4.18879)
cam_aero_sulfate.F:C       SO2 OXIDATION RATE
cam_aero_sulfate.F:c            RTDMS(I,L)=XROW(I,L+1,IDMS)*RTO                            !SLG
cam_aero_sulfate.F:c       if( abs(RTDMS(I,L)).gt.1.0e-8)  print *, XROW(I,L+1,IDMS),RTO
cam_aero_sulfate.F:c            XROW(I,L+1,IDMS)=AMAX1(TMIN,
cam_aero_sulfate.F:c     1                          XROW(I,L+1,IDMS)+RTDMS(I,L)*ADT2*TCLR)
cam_aero_sulfate.F:            AFAK = AFAK * Y4PID3 * RHOP0(NN) *AVESIZE*AVESIZE*AVESIZE
cam_aero_sulfate.F:C  THE MEAN FREE PATH OF VAPOUR SULPHURIC ACID
cam_aero_sulfate.F:     1                XROW,    RGRID,      NTR,    ICOMP,   IAE1,
cam_aeroprop.F:     2                   RHOP0,    RHROW,    THROW,    RGRID,  AERONUM,
cam_aeroprop.F:C     *                         VALID FOR ALL SIZES AND RH
cam_aeroprop.F:C     ILG - NUMBER OF LONGITUDE GRID POINTS
cam_aeroprop.F:C     RHROW - RELATIVE HUMIDITY
cam_aeroprop.F:C     RGRID - MASS MIXING RATIO FOR EACH TRACE SUBSTANCE
cam_aeroprop.F:C     TRWTROW - AEROSOL LIQUID WATER CONTENT FOR EACH BIN. 
cam_aeroprop.F:C     FR1 - ESTIMATED RADIUS RATIO AT RELATIVE HUMIDITY=1
cam_aeroprop.F:C     FC - CRITICAL RELATIVE HUMIDITY (SUPERSATURATED)
cam_aeroprop.F:      REAL AEROSIZE (2,ISIZE),RGRID(ILG,ILEV,NTR),TOTMAS(ILG,ILEV,ISIZE)
cam_aeroprop.F:C DELIQ IS THE DELIQUESCENCE RELATIVE HUMIDITY
cam_aeroprop.F:C RECRY IS THE RECRYSTALLIZATION RELATIVE HUMIDITY
cam_aeroprop.F:                 TRAMASS=AMAX1(1.0E-33, RGRID(I,L,NO))
cam_aeroprop.F:                 TRAMASS=AMAX1(1.0E-33, RGRID(I,L,NO))
cam_aeroprop.F:C  COMPUTE CRITICAL RELATIVE HUMIDITY (FC)    
cam_aeroprop.F:C    IN COMPUTING THE CRITICAL RADIUS AND CRITICAL RELATIVE HUMIDITY
cam_aeroprop.F:C COMPUTE THE AEROSOL LIQUID WATER CONTENT OF EACH SIZE BIN: WATE
cam_aeroprop.F:C . . . . MID LAYER PRESSURE IN [PASCAL].
cam_blcld.F:C       1/10 OF LIQUID WATER. THE FACTOR 1.0E-2 IN THE WETDEP
cam_cas.F:C       1/10 OF LIQUID WATER. THE FACTOR 1.0E-2 IN THE WETDEP
cam_condsoa.F:     1                     RGRID,  AERONUM,     XROW,      NTR,    NTP,
cam_condsoa.F:      REAL RGRID(ILG, ILEV, NTR), RTH(ILG,ILEV,ISIZE)   
cam_condsoa.F:     1                XROW,    RGRID,      NTR,      NTP,   IAE1,
cam_drydepo.F:     6                   IDMS,    FLAND,     XROW,   SURFDG,   PDEPV,
cam_drydepo.F:     8                  CLDCV,    RHROW,     IDAY,     JLAT,   PDIFF,
cam_drydepo.F:     3            IDAY,     IL1,    IL2, SICNROW,    FSNOROW,
cam_drygas.F:     3                 IDAY,    IL1,    IL2,  PICE,  PSNOW,
cam_drygas.F:C     GLAT   - CENTER LATITUDE OF GRID CELL (DEG)
cam_drygas.F:C     PICE   - ICE COVER OF ENTIRE GRID CELL (0.0-1.0)
cam_drygas.F:C     RH     - RELATIVE HUMIDITY OF AIR AT 10M. (0.0-1.0)
cam_drygas.F:C       3  DECIDUOUS NEEDLELEAF FOREST
cam_drygas.F:C       4  DECIDUOUS BROADLEAF FOREST
cam_drygas.F:      IF (IDAY.LE.59 .OR. IDAY.GE.335) THEN           !Jan. Feb. Dec.
cam_drygas.F:      IF (IDAY.GE.60.AND. IDAY.LE.90)  THEN           !Mar.
cam_drygas.F:      IF (IDAY.GE.91.AND. IDAY.LE.120) THEN           !Apr.
cam_drygas.F:      IF (IDAY.GE.121.AND. IDAY.LE.151) THEN           !May.
cam_drygas.F:      IF (IDAY.GE.152.AND. IDAY.LE.181) THEN           !Jun.
cam_drygas.F:      IF (IDAY.GE.182.AND. IDAY.LE.212) THEN           !Jul.
cam_drygas.F:      IF (IDAY.GE.213.AND. IDAY.LE.243) THEN           !Aug.
cam_drygas.F:      IF (IDAY.GE.244.AND. IDAY.LE.273) THEN           !Sep.
cam_drygas.F:      IF (IDAY.GE.274.AND. IDAY.LE.304) THEN           !Oct.
cam_drygas.F:      IF (IDAY.GE.305.AND. IDAY.LE.334) THEN           !Nov.
cam_drygas.F:      IF (IDAY.GE.152.AND. IDAY.LE.243) THEN           !Jun. Jul. Aug.
cam_drygas.F:      IF (IDAY.GE.244.AND. IDAY.LE.273) THEN           !SEp.
cam_drygas.F:      IF (IDAY.GE.274.AND. IDAY.LE.304) THEN           !Oct.
cam_drygas.F:      IF (IDAY.GE.305.AND. IDAY.LE.334) THEN           !Nov.
cam_drygas.F:      IF (IDAY.GE.335) THEN                            !Dec.
cam_drygas.F:      IF (IDAY.LE.31) THEN                            !Jan.
cam_drygas.F:      IF (IDAY.GE.32.AND. IDAY.LE.59) THEN           !Feb   
cam_drygas.F:      IF (IDAY.GE.60.AND. IDAY.LE.90)  THEN            !Mar.
cam_drygas.F:      IF (IDAY.GE.91.AND. IDAY.LE.120) THEN           !Apr.
cam_drygas.F:      IF (IDAY.GE.121.AND. IDAY.LE.151) THEN           !May.
cam_drygas.F:C J for species, I for LUC, IL for grids.
cam_drygas.F:C --- CONSIDER ONLY LAND USE CATEGORIES .GT. 0.005
cam_drygas.F:C --- PERCENTAGE OF GRID AREA OVER WATER [SPECIFIC!!, CHANGE WITH LANDUSE]
cam_drygas.F:C --- PERCENTAGE OF GRID AREA OVER LAND
cam_drygas.F:C --- GRID CELL AREA AND NOT FRACTION OF WATER SURFACE AREA.  CHECK
cam_drygas.F:C --- END OF GRID LOOP
cam_drypar.F:C ILG    | Number of grid points in x-direction | I |            |  I  |
cam_drypar.F:C RHROW  | Slice of relative humidity [%]       | R | ILG*LEV    |  I  |
cam_drypar.F:C THROW  | Grid slice of mid-layer tempt. [K]   | R | ILG*LEV    |  I  |
cam_drypar.F:C PRESSG | Grid row of surface pressure [Pa]    | R | ILG        |  I  |
cam_drypar.F:C SHJ    | Local mid-layer sigma value          | R | ILG*ILEV   |  O  |
cam_drypar.F:C     * CALCULATE middle-variles needed for EB,EIN,EM, etc., then Ra, Rs, VDF
cam_inaero.F:     1                        ID,       JD,    IT,  ITR,  ISLEV,   CAM,
cam_inaero.F:!          ID                      
cam_inaero.F:      COMMON /AEROSWTH/ IDEBUG,   IMM,    IMA,   INU,  ICOB,IDRYDEP,           
cam_inaero.F:!     RGASi    REAL UNIVERSAL ideal GAS CONSTANT.[J K-1 MOL-1]                      
cam_inaero.F:          IDEBUG        = 0
cam_inaero.F:          ID            = 35
cam_inaero.F:          IDRYDEP       = 1
cam_sfbc.F:     1                NDAYS,NSECS,IDAY,LDAY,MDAY,INCD                   
cam_sfbc.F:      DO 900 IDP=1,3
cam_sfbc.F:             HII=BLCROW(IL,IDP,2)          !Fossil Fuel Height
cam_sfbc.F:            IF (BLCROW(IL,IDP,1) .GT. 0.0 .AND. 
cam_sfbc.F:             IF (BLCROW(IL,IDP,1) .GT. 0.0 .AND. 
cam_sfbc.F:c               print *, BLCROW(IL,IDP,1),HII
cam_sfbc.F:                 TL=BLCROW(I,IDP,1)*PBC(N)/PTOT*FX(L,INT(HI(I)))*TT
cam_sfflux.F:     5                   IAE1,   IH2S,  IDMS,   ISO2,   ISO4, IREST,LUC,
cam_sfflux.F:     5                      GT,   IH2S,    IDMS,   ISO2,  LUC)
cam_sfflux.F:C     * SOLID DUSTS AEROSOLS
cam_sfnt.F:     1                NDAYS,NSECS,IDAY,LDAY,MDAY,INCD                   !          SF
cam_sfoc.F:     1                NDAYS,NSECS,IDAY,LDAY,MDAY,INCD
cam_sfoc.F:     1                NDAYS,NSECS,IDAY,LDAY,MDAY,INCD                   
cam_sfoc.F:      DO 900 IDP=1,3
cam_sfoc.F:             IF (OMCROW(IL,IDP,1) .GT. 0.0 .AND. 
cam_sfoc.F:     1           OMCROW(IL,IDP,2).GT.ZHLEV(IL,L) .AND. 
cam_sfoc.F:     2           OMCROW(IL,IDP,2).LE.ZHLEV(IL,L-1))    THEN
cam_sfoc.F:             IF (OMCROW(IL,IDP,1) .GT. 0.0 .AND. 
cam_sfoc.F:     1           OMCROW(IL,IDP,2).GT.0.0 .AND. 
cam_sfoc.F:     2           OMCROW(IL,IDP,2).LE.ZHLEV(IL,ILEV))    THEN
cam_sfoc.F:                 TL=OMCROW(I,IDP,1)*PBC(N)/PTOT*FX(L,INT(HI(I)))*TT
cam_sfsd.F:     1                NDAYS,NSECS,IDAY,LDAY,MDAY,INCD
cam_sfsd.F:!      CLAYROW IN CHINA IS CONSIDERED. 
cam_sfsd.F:CZ    IF CLAYROW IN CHINA IS CONSIDERED, CLAYROW=CLAYROW*100. FOR CHINESE AREA.
cam_sfsd.F:!        NOW, ONLY ONE SOIL TYPE IS CONSIDERED
cam_sfsd.F:!   INSIDE OF CHINA    ELSE
cam_sfsd.F:!     SOIL DUST FLUX (HORIZONTAL) CALCULATIONS - ONLY ON DESERT GRID LUC=8
cam_sfsd.F:!     INDIVIDUAL KINETIC ENERGY FOR AN AGGREGATE OF SIZE DP
cam_sfsf.F:     5                   GT,   IH2S,   IDMS,   ISO2,     LUC)
cam_sfsf.F:     1                NDAYS,NSECS,IDAY,LDAY,MDAY,INCD                   !          SF
cam_sfsf.F:c            RDMS=AMAX1(RGD(IL,ILEV,IDMS),0.0)
cam_sfsf.F:c            RSFROW(IL,IDMS)=ZKL*(DMSOROW(IL)*62.128E-9-
cam_sfsf.F:c            RSFROW(IL,IDMS)= AMAX1(RSFROW(IL,IDMS),0.0)*FLAND(IL,14)
cam_sfsf.F:c         RSFROW(IL,IDMS)=RSFROW(IL,IDMS)+DMSLROW(IL)*TT*62.128/32.0
cam_sfsf.F:c         TRAC(IL,ILEV+1,IDMS)=TRAC(IL,ILEV+1,IDMS)+RSFROW(IL,IDMS)
cam_sfss.F:!     * OCT 31/01 - S.L. GONG   THE PARTICLE MASS OF EACH SUB-DEVIDED
cam_sfss.F:!     *                         ADDED WITH OCEAN COVER LESS THAN 20% GRID.
cam_sfss.F:     1                NDAYS,NSECS,IDAY,LDAY,MDAY,INCD                  
cam_utili.F:C     *        TYPE CONVERSION MUST BE AVOIDED WHEN THE RESULT IS
cam_utili.F:      FUNCTION RANDOM(idum)
cam_utili.F:      INTEGER idum
cam_utili.F:      if (idum.eq.0) then
cam_v01.F:     9                   NH3ROW,  HNO3ROW,   TOTMAS,     NSUB,       ID,
cam_v01.F:     6                       QR,   RADCLD,    RGRID,  TRWTROW,   ROAROW,
cam_v01.F:     D                     IDMS,     ISO2,     ISO4,     IAE1,     ICAM,
cam_v01.F:     E                      VDG,   FSGROL,     IDAY,    GTROW,  SFCTROW,
cam_v01.F:     E                        Z,    IDEEP,       JT,     MAXG,      JDC,   ! knut
cam_v01.F:C CO2ROW | CARBON DIOXIDE CONCENTR. [M^3/M^3]   | R | ILG*ILEV   |  I  |
cam_v01.F:C DEGLAT | Grid latitude value                  | I | ILG        |  I  |
cam_v01.F:C DEGLON | Grid longitude value                 | I | ILG        |  I  |
cam_v01.F:C GMT    | Greenwich meridian time of the day[s]| R |            |  I  |
cam_v01.F:C IDEEP  | holds position of gathered           | I | ILG        |  L  |
cam_v01.F:C IDAY   | Julian day                           | I |            |  I  |
cam_v01.F:C IDEEP  | working array                        | R | ILG        |  L  |
cam_v01.F:C ILG    | Number of grid points in x-direction | I |            |  I  |
cam_v01.F:C JLAT   | Number of grid points in y-direction | I |            |  I  |
cam_v01.F:C LON    | Number of grid points in x-direction | I |            |  I  |
cam_v01.F:C NSUB   | No. of subgrid for caculating        | I |            |  I  |
cam_v01.F:C PRESSG | Grid row of surface pressure [Pa]    | R | ILG        |  I  |
cam_v01.F:C QROW   | specific humidity                    | R | ILG*LEV    |  I  |
cam_v01.F:C RHROW  | Slice of relative humidity [%]       | R | ILG*LEV    |  I  |
cam_v01.F:C RGRID  | working arrey for aerosol species-bin|   |            |     |
cam_v01.F:C RTSO2  | SULPHUR DIOXIDE TENDENCY             | R | ILG*ILEV*2 |  L  |
cam_v01.F:C SHJ    | Local mid-layer sigma value          | R | ILG*ILEV   |  O  |
cam_v01.F:C THROW  | Grid slice of mid-layer tempt. [K]   | R | ILG*LEV    |  I  |
cam_v01.F:C TRACG  | Grid slice of tracer amount  [kg/kg] | R |ILG,ILEV,NTR|  I  |
cam_v01.F:C WSUB   | sub-grid vertical velocity           | R | ILGVSUB ## |  I  |
cam_v01.F:C Z      | grid slice of ambient mid-layer      | R | ILG*ILEV   |  I  |
cam_v01.F:C ZMLWC  | Cloud liquid water [kg/kg]           | R | ILG*ILEV*2 |  I  |
cam_v01.F:      COMMON /AEROSWTH/ IDEBUG,   IMM,    IMA,   INU,  ICOB,IDRYDEP,   
cam_v01.F:      REAL RADCLD(ILG,ILEV),RGRID(ILG,ILEV,NTR),TRWTROW(ILG,ILEV,ISIZE)
cam_v01.F:      INTEGER IDEEP(ILG),JT(ILG),MAXG(ILG),JDC(ILG),LENGATH             ! knut
cam_v01.F:      INTEGER  IDEBUG, DLEV,IVIS,IAMM1,IAMM2,IAMM3
cam_v01.F:czch      IF (IDEBUG .GE. 4 ) WRITE (*,*) ' CAM --> START'
cam_v01.F:                RGRID(I,L,N)=XROW(I,L+1,N)
cam_v01.F:                IF (RGRID(I,L,N) .GT. 0.1 .OR. 
cam_v01.F:     1              RGRID(I,L,N) .LT. 0.            )           THEN
cam_v01.F:                   IDEBUG=10
cam_v01.F:                   ID=I
cam_v01.F:     2             RHOP0,    RHROW,    THROW,    RGRID, AERONUM,
cam_v01.F:      IF (IDEBUG .GE. 1 .AND. JLAT.EQ. JD)                    THEN
cam_v01.F:         WRITE (*,*) ' AEROPROP -> AERONUM  ', AERONUM(ID,DLEV,ISIZE)
cam_v01.F:         WRITE (*,*) ' AEROPROP -> TOTMAS   ', TOTMAS(ID,DLEV,ISIZE)
cam_v01.F:         WRITE (*,*) ' AEROPROP -> RSFROW   ', RSFROW(ID,ITR), NTP,ITR
cam_v01.F:         WRITE (*,*) ' AEROPROP -> XROW   ', XROW(ID,DLEV+1,ITR)
cam_v01.F:C                  B - IN-CLOUD OXIDATION OF SO2
cam_v01.F:     3            RADCLD,    RGRID,   RTICLD,   ZFPREC,
cam_v01.F:     6             GDREM,   ROAROW,       ID,       JD,
cam_v01.F:     E                Z,     IDEEP,       JT,     MAXG,      JDC,   ! knut
cam_v01.F:      IF (IDEBUG .GE. 1 .AND. JLAT.EQ. JD)                  THEN
cam_v01.F:         WRITE (*,*) ' AEROCLD -> RTICLD  ', RTICLD(ID,DLEV,ITR)
cam_v01.F:         WRITE (*,*) ' AEROCLD -> CLD FR  ', CLDCV(ID,DLEV,1),
cam_v01.F:     1                                                  CLDCV(ID,DLEV,2)
cam_v01.F:         WRITE (*,*) ' AEROCLD -> CLD WT  ', ZMLWC(ID,DLEV,1),
cam_v01.F:     1                                                  ZMLWC(ID,DLEV,2)
cam_v01.F:         WRITE (*,*) ' AEROCLD -> PRECIP  ', QR(ID,DLEV,1),QR(ID,DLEV,2)
cam_v01.F:         WRITE (*,*) ' AEROCLD -> EP & SV ', WPEVPA(ID,DLEV),
cam_v01.F:     1                                                 WRSCAV(ID,DLEV)
cam_v01.F:         WRITE (*,*) ' AEROCLD -> RTSO4   ', RTSO4(ID,DLEV,ISIZE)
cam_v01.F:         WRITE (*,*) ' AEROCLD -> RTSO2   ', RTSO2(ID,DLEV,2)
cam_v01.F:         WRITE (*,*) ' AEROCLD -> XROW   ', XROW(ID,DLEV+1,ITR)
cam_v01.F:     1                     IH2S,     IDMS,     ISO2,     ISO4,  RGRID,
cam_v01.F:           IF (IDEBUG .GE. 1 .AND. JLAT.EQ. JD)               THEN
cam_v01.F:               WRITE (*,*) ' SULFATE -> RTNUCL  ', RTNUCL(ID,DLEV)
cam_v01.F:               WRITE (*,*) ' SULFATE -> RTCON   ', RTCOND(ID,DLEV,ISIZE)
cam_v01.F:               WRITE (*,*) ' SULFATE -> RTSO2   ', RTSO2(ID,DLEV,1)
cam_v01.F:               WRITE (*,*) ' SULFATE -> XROW    ', XROW(ID,DLEV+1,ITR)
cam_v01.F:     1                    RGRID,  AERONUM,     XROW,      NTR,    NTP,
cam_v01.F:c      print*,'cam',icoag,iblcld,idrydep
cam_v01.F:      IF (IDEBUG .GE. 1 .AND. JLAT.EQ. JD)               THEN
cam_v01.F:         WRITE (*,*) ' COAGD -> RTCOA  ', RTCOA(ID,DLEV,ITR),ICOB
cam_v01.F:         WRITE (*,*) ' COAGD -> XROW   ', XROW(ID,DLEV+1,ITR)
cam_v01.F:      IF (IDEBUG .GE. 1 .AND. JLAT.EQ. JD)                THEN
cam_v01.F:         WRITE (*,*) ' SCAVENG -> RTBCLD  ', RTBCLD(ID,DLEV,ITR)
cam_v01.F:         WRITE (*,*) ' SCAVENG -> XROW    ', XROW(ID,DLEV+1,ITR)
cam_v01.F:  120 IF (IDRYDEP .EQ. 0) GOTO 150
cam_v01.F:     6             IDMS,    FLAND,     XROW,   SURFDG,    PDEPV,
cam_v01.F:     8            CLDCV,    RHROW,     IDAY,     JLAT,    PDIFF,
cam_v01.F:      IF (IDEBUG .GE. 1 .AND. JLAT.EQ. JD)              THEN
cam_v01.F:         WRITE (*,*) ' DRYDEPO -> RTDRY  ', RTDRY(ID,DLEV,ITR)
cam_v01.F:         WRITE (*,*) ' DRYDEPO -> XROW    ', XROW(ID,DLEV+1,ITR)
cam_v01.F:      IF (IDEBUG .EQ. 10) THEN
cam_v01.F:c          WRITE (*,*) ' TRACER ',ITR, '= ', RGRID(ID,DLEV,ITR)
cam_v01.F:c          WRITE (*,*) ' DLEV    ID      JD    ITR      IT '
cam_v01.F:c          WRITE (*,*) DLEV,    ID,      JD,    ITR,      IT
cas.F:C       1/10 OF LIQUID WATER. THE FACTOR 1.0E-2 IN THE WETDEP
chem_trvdiff2.F:* (1) CONSTRUIRE L'OPERATEUR TRIDIAGONAL DE DIFFUSION N=(A,B,C)
chem_trvdiff2.F:* (4) RESOUDRE SYSTEME TRIDIAGONAL [A,B,C] X = D. METTRE X DANS TU.
cldchem.F:     4                  , NH3ROW,    O3ROW,   CO2ROW,   RGRID,   RTHPO
cldchem.F:     6                  ,   GRAV,     DSHJ,    IDEEP,      JT,    MAXG
cldchem.F:     *                  , ASPRVA,   AGAMMA,   ARESID,  ASPECI,  AGTSO2
cldchem.F:     2                  ,  THLEV,   RTBCLD,       ID,   GDREM, MAE)
cldchem.F:C     Calculates incloud-oxidation and hydrogen peroxide production
cldchem.F:C     This subroutine calculates the modifications of sulphur dioxide
cldchem.F:C     and aerosol-sulphate concentrations due to incloud-oxidation.
cldchem.F:C     It also calculates modifications of hydrogen peroxide concentratio
cldchem.F:C     due to in-cloud oxidation and quasi-gas-phase production.
cldchem.F:C     Sub-grid-scale stratiform and sub-grid-scale convective clouds
cldchem.F:C     are considered.
cldchem.F:C                        grid point values; oxidation is calculated at e
cldchem.F:C                        grid point for "closed-box"-boundary-values wit
cldchem.F:C                        and hydrogen peroxide with stationary source/si
cldchem.F:C     ARESID  REAL    WORK ARRAY
cldchem.F:C     CO2ROW  REAL    INPUT - CARBON DIOXIDE CONCENTRATION IN M**3/M**3
cldchem.F:C     HNO3ROW REAL    INPUT - NITRIC ACID CONCENTRATION IN M**3/M**3
cldchem.F:C     HPOXROW REAL    WORK ARRAY - BACKGROUND HYDROGEN PEROXIDE CONCENTR
cldchem.F:C     H2O2ROW REAL    INPUT - BACKGROUND HYDROGEN PEROXIDE CONCENTRATION
cldchem.F:C     IDEEP   INTEGER INPUT
cldchem.F:C     ILEV    INTEGER INPUT - VERTICAL GRID COORDINATE
cldchem.F:C     ILG     INTEGER INPUT - HORIZONTAL GRID COORDINATE
cldchem.F:C     IL1     INTEGER INPUT - HORIZONTAL GRID COORDINATE
cldchem.F:C     IL2     INTEGER INPUT - HORIZONTAL GRID COORDINATE
cldchem.F:C     IHPO    INTEGER INPUT - TRACER INDEX FOR HYDROGEN PEROXIDE
cldchem.F:C     ISO2    INTEGER INPUT - TRACER INDEX FOR SULPHUR DIOXIDE
cldchem.F:C     RGRID   REAL    INPUT - WORK SPACES
cldchem.F:C     RTHPO   REAL    INPUT/OUTPUT - HYDROGEN PEROXIDE TENDENCY
cldchem.F:C     RTSO2   REAL    INPUT/OUTPUT - SULPHUR DIOXIDE TENDENCY
cldchem.F:      INTEGER IDEEP(ILG),JT(ILG),MAXG(ILG),JD(ILG)
cldchem.F:     1    ,ARESID(ILG,ILEV),ASPECI(ILG,ILEV),AGTSO2(ILG,ILEV)
cldchem.F:      REAL RGRID(ILG,ILEV,ISIZE),RTSO4(ILG,ILEV,ISIZE),RTSO2(ILG,ILEV,2)
cldchem.F:         AGTHNO3(IL,JK) = HNO3ROW(IL,JK)*ROCON         ! nitric acid
cldchem.F:         AGTCO2 (IL,JK) = CO2ROW(IL,JK) *ROCON         ! carbon dioxide
cldchem.F:C---  call to perform stratiform cloud oxidation of sulphur dioxide
cldchem.F:     7            ,ANTSO4,     XROW,   AOH2O2,  ARESID,
cldchem.F:C---  call tp perform convective cloud oxidation of sulphur dioxide
cldchem.F:      CALL PUTZERO(RGRID,ILG*ILEV*ISIZE)
cldchem.F:      CALL OXICON(   IL1,    IL2,    NTR,    ILEV,      ID
cldchem.F:     7          ,  IDEEP,   EPS0,     JT,    MAXG,      JD
cldchem.F:     4          ,    AMH,  KCALC,  RGRID,  ASPRVA,   RTHPO
cldchem.F:               XROW(I,L+1,NF)=XROW(I,L+1,NF)+2.*DELT*(RGRID(I,L,N)+
cldchem.F:               RTSO4(I,L,N)=RTSO4(I,L,N)+RGRID(I,L,N)
cldchem.F:C     (2) hydrogen peroxide production
difuvd2.F:* D        right side
incld.F:C     FROM GIORGI AND CHAMEIDES [1986]
module_ae_cam.F:                    ids,ide, jds,jde, kds,kde,                    & 
module_ae_cam.F:   INTEGER,    INTENT(IN   ) ::        ids,ide, jds,jde, kds,kde, &
module_ae_cam.F:! SH2D specific humidity
oequip.F:C     Calculates Equilibrium Constants and Oxidation Rates.
oxicon.F:      SUBROUTINE OXICON (     IL1,    IL2,  NTRAC,    ILEV,      ID
oxicon.F:     7                   ,  IDEEP,   EPS0,     JT,    MAXG,      JD
oxicon.F:C     Calculates transport and oxidation in convective clouds
oxicon.F:C     AGTHP     REAL     WORK ARRAY (UNITS: MOL HYDROGEN PEROXIDE
oxicon.F:C     AGTSO2    REAL     WORK ARRAY (UNITS: MOL SULPHUR SULPHUR DIOXIDE
oxicon.F:C     IDEEP     INTEGER  INPUT-FROM->CONV4
oxicon.F:      COMMON /AEROSWTH/ IDEBUG,   IMM,    IMA,   INU,  ICOB,IDRYDEP,           
oxicon.F:      INTEGER IDEEP(ILG),JT(ILG),MAXG(ILG),JD(ILG)
oxicon.F:C---  scavenging ratios sulphate and carbon dioxide
oxicon.F:C---     IDEEP(K) contains indices where convection occurs
oxicon.F:            XG(K,L,N) = X(IDEEP(K),L,N)
oxicon.F:            AFAKT = YCOM3L / ROAROW(IDEEP(K),L)
oxicon.F:            XGA(K,L,INH3)  = AGTNH3(IDEEP(K),L)  * AFAKT
oxicon.F:            XGA(K,L,IHNO3) = AGTHNO3(IDEEP(K),L) * AFAKT
oxicon.F:            XGA(K,L,IO3)   = AGTO3(IDEEP(K),L)   * AFAKT
oxicon.F:            XGA(K,L,ICO2)  = AGTCO2(IDEEP(K),L)  * AFAKT
oxicon.F:               IF (N .EQ. INT(RCRIT(IDEEP(K),L)))  THEN
oxicon.F:     1                          *(1.-AMOD(RCRIT(IDEEP(K),L),1.))
oxicon.F:               ELSE IF (N .GT. INT(RCRIT(IDEEP(K),L))) THEN
oxicon.F:C---     restrict chemical reactions to grid cells with
oxicon.F:               IF (      (INT(RCRIT(IDEEP(IL),J)) .GE. 1)
oxicon.F:     1             .AND. (INT(RCRIT(IDEEP(IL),J)) .LE. ISIZE)
oxicon.F:C     2             .AND. (ZMLWC(IDEEP(IL),J) .GT. 1.E-04)
oxicon.F:C     3             .AND. (CLDCV(IDEEP(IL),J) .GT. 1.E-04) ) THEN
oxicon.F:     2             .AND. (ZMLWC(IDEEP(IL),J) .GT. 1.E-09) ) THEN
oxicon.F:                  AGAMMA(IL,J) = ZMLWC(IDEEP(IL),J)
oxicon.F:     1                         *.5*(ROAROW(IDEEP(IL),J-1)
oxicon.F:     2                             +ROAROW(IDEEP(IL),J)) / YRHOW
oxicon.F:C     total sulphate, sulphur dioxide and hydrogen peroxide
oxicon.F:C---        sulphur dioxide
oxicon.F:C---        hydrogen peroxide
oxicon.F:                  AFAKT = .5*(ROAROW(IDEEP(IL),J-1)+ROAROW(IDEEP(IL),J))
oxicon.F:     1                  *.5*(AEQCHO(IDEEP(IL),J-1)+AEQCHO(IDEEP(IL),J)))
oxicon.F:                  AMO3 = ACO3 * .5*(AEQCHO(IDEEP(IL),J-1)
oxicon.F:     1                 + AEQCHO(IDEEP(IL),J)) * ATVO3
oxicon.F:                  AMNA  = AGTNA(IDEEP(IL),J) / AGAMMA(IL,J)
oxicon.F:     1                      + 4.*(1.E-14 + .5*(AEQCB(IDEEP(IL),J-1)
oxicon.F:     2                      + AEQCB(IDEEP(IL),J)) * ACSO2
oxicon.F:     3                      + .5*(AEQCBI(IDEEP(IL),J-1)
oxicon.F:     4                      + AEQCBI(IDEEP(IL),J)) * ACCO2)))
oxicon.F:C---              restrict pH to avoid numerical problems
oxicon.F:                  ATVAL=.5*(AEQCA(IDEEP(IL),J-1)+AEQCA(IDEEP(IL),J))
oxicon.F:     1                 +.5*(AEQCB(IDEEP(IL),J-1)+AEQCB(IDEEP(IL),J))
oxicon.F:     3                 +.5*(AEQCC(IDEEP(IL),J-1)+AEQCC(IDEEP(IL),J))
oxicon.F:                  AFNH4 = (1.+ACNH4/(1./(.5*(AEQNH3(IDEEP(IL),J-1)
oxicon.F:     1                  + AEQNH3(IDEEP(IL),J))) + AGAMMA(IL,J)
oxicon.F:                  AFNO3 = ACNO3 / ( 1./(.5*(AEQHNO(IDEEP(IL),J-1)
oxicon.F:     1                  + AEQHNO(IDEEP(IL),J))) + AGAMMA(IL,J)
oxicon.F:                     AFCL  = AGTHCL / ( 1./(.5*(AEQHCL(IDEEP(IL),J-1)
oxicon.F:     1                     + AEQHCL(IDEEP(IL),J))) + AGAMMA(IL,J)
oxicon.F:     1                     *.5*(AEQCB(IDEEP(IL),J-1)+AEQCB(IDEEP(IL),J))
oxicon.F:     1                   *.5*(AEQCBI(IDEEP(IL),J-1)+AEQCBI(IDEEP(IL),J))
oxicon.F:     1                     * (AEQCC(IDEEP(IL),J-1)+AEQCC(IDEEP(IL),J)) )
oxicon.F:C---                 restrict pH to avoid numerical problems
oxicon.F:                     ATVAL=.5*(AEQCA(IDEEP(IL),J-1)+AEQCA(IDEEP(IL),J))
oxicon.F:     1                    +.5*(AEQCB(IDEEP(IL),J-1)+AEQCB(IDEEP(IL),J))
oxicon.F:     3                    +.5*(AEQCC(IDEEP(IL),J-1)+AEQCC(IDEEP(IL),J))
oxicon.F:                     AFNH4 = (1.+ACNH4/(1./(.5*(AEQNH3(IDEEP(IL),J-1)
oxicon.F:     1                     + AEQNH3(IDEEP(IL),J))) + AGAMMA(IL,J)
oxicon.F:                     AFNO3 = ACNO3 / ( 1./(.5*(AEQHNO(IDEEP(IL),J-1)
oxicon.F:     1                     + AEQHNO(IDEEP(IL),J))) + AGAMMA(IL,J)
oxicon.F:                  ATAEQ = .5*(AEQCHP(IDEEP(IL),J-1)+AEQCHP(IDEEP(IL),J))
oxicon.F:C---              O3-oxidation rate parameter AFO3
oxicon.F:                  AFO3 = (.5*(AORHP1(IDEEP(IL),J-1)+AORHP1(IDEEP(IL),J))
oxicon.F:     1                  + .5*(AORHP2(IDEEP(IL),J-1)+AORHP2(IDEEP(IL),J))
oxicon.F:C---              H2O2-oxidation rate parameter AFH2O2
oxicon.F:                  AFH2O2 =(.5*(AORHO(IDEEP(IL),J-1)+AORHO(IDEEP(IL),J))
oxicon.F:     2                   *.5*(AEQCA(IDEEP(IL),J-1)+AEQCA(IDEEP(IL),J))
oxicon.F:     3                   *.5*(AEQCHP(IDEEP(IL),J-1)+AEQCHP(IDEEP(IL),J))
oxicon.F:C---              chemical tendency parameters for sulphur dioxide
oxicon.F:C---              and hydrogen peroxide in mbar/(s*m*MB)
oxicon.F:                  AFAKT = CLDCV(IDEEP(IL),J)
oxicon.F:C                SHOULD T(IDEEP(IL)) be USED?
oxicon.F:C---     to avoid numerical instabilities
oxicon.F:     1                   * AGTSO2(IL,J) * AFRAC(IDEEP(IL),J,N)
oxicon.F:                  IF (N .EQ. INT(RCRIT(IDEEP(IL),J)))  THEN
oxicon.F:                  IF (N .GT. INT(RCRIT(IDEEP(IL),J))) THEN
oxicon.F:C---     hydrogen peroxide
oxicon.F:               TMP2(K)=RTHPO(IDEEP(K),L)
oxicon.F:C---           hydrogen peroxide tendency
oxicon.F:               RTHPO(IDEEP(K),L) = TMP2(K)
oxicon.F:C     calculate in-cloud oxidation (OU) and washout rates (RU)
oxicon.F:            AFAKT = MB(IL)*ROAROW(IDEEP(IL),J)/DP(IL,J)
oxicon.F:               AFAKT = MB(IL)*ROAROW(IDEEP(IL),J)/DP(IL,J)
oxicon.F:     1                * AGTSO4(IL,J) * AFRAC(IDEEP(IL),J,N)
oxicon.F:            TMP1(IL) = TMP1(IL)+DZT(IDEEP(IL),J)*DXDT(IL,J,ISO2)
oxicon.F:     1                      *ROAROW(IDEEP(IL),J)
oxicon.F:            TMP2(IL) = TMP2(IL)+DZT(IDEEP(IL),J)*RU(IL,J,ISO2)
oxicon.F:            TMP3(IL) = TMP3(IL)+DZT(IDEEP(IL),J)*OU(IL,J,ISO2)
oxicon.F:            TMP1(IL) = TMP1(IL)+DZT(IDEEP(IL),J)*DXDT(IL,J,IHPO)
oxicon.F:     1             *ROAROW(IDEEP(IL),J)
oxicon.F:            TMP2(IL) = TMP2(IL)+DZT(IDEEP(IL),J)*RU(IL,J,IHPO)
oxicon.F:            TMP3(IL) = TMP3(IL)+DZT(IDEEP(IL),J)*OU(IL,J,IHPO)
oxicon.F:            OU(IL,J,NF) = -OU(IL,J,ISO2) * AFRAC(IDEEP(IL),J,N)
oxicon.F:               TMP1(IL) = TMP1(IL)+DZT(IDEEP(IL),J)*DXDT(IL,J,NF)
oxicon.F:     1                     *ROAROW(IDEEP(IL),J)
oxicon.F:               TMP2(IL) = TMP2(IL)+DZT(IDEEP(IL),J)*RU(IL,J,NF)
oxicon.F:               TMP3(IL) = TMP3(IL)+DZT(IDEEP(IL),J)*OU(IL,J,NF)
oxicon.F:            TMP1(IDEEP(IL)) = RU(IL,J,ISO2) * AMASPE(2) 
oxicon.F:     1                      / ROAROW(IDEEP(IL),J)
oxicon.F:            TMP2(IDEEP(IL)) = OU(IL,J,ISO2) * AMASPE(2)
oxicon.F:     1                      / ROAROW(IDEEP(IL),J)
oxicon.F:            TMP3(IDEEP(IL)) = DXDT(IL,J,ISO2) * AMASPE(2) 
oxicon.F:     1                      - TMP1(IDEEP(IL)) - TMP2(IDEEP(IL))
oxicon.F:C---           sulphur dioxide removal rate
oxicon.F:            TMP1(IDEEP(IL)) = RU(IL,J,IHPO) * AMASPE(3)
oxicon.F:     1                      / ROAROW(IDEEP(IL),J)
oxicon.F:            TMP2(IDEEP(IL)) = OU(IL,J,IHPO) * AMASPE(3)
oxicon.F:     1                      / ROAROW(IDEEP(IL),J)
oxicon.F:            TMP3(IDEEP(IL)) = DXDT(IL,J,IHPO) * AMASPE(3) 
oxicon.F:     1                      - TMP1(IDEEP(IL)) - TMP2(IDEEP(IL))
oxicon.F:               TMP1(IDEEP(IL)) = RU(IL,J,NF) * AMASPE(1) 
oxicon.F:     1                         / ROAROW(IDEEP(IL),J)
oxicon.F:               TMP2(IDEEP(IL)) = OU(IL,J,NF) * AMASPE(1)
oxicon.F:     1                         / ROAROW(IDEEP(IL),J)
oxicon.F:               TMP3(IDEEP(IL)) = DXDT(IL,J,NF) * AMASPE(1) 
oxicon.F:     1                         - TMP1(IDEEP(IL)) - TMP2(IDEEP(IL))
oxicon.F:      IF (IDEBUG .GT. 1) THEN
oxicon.F:              GO=DZT(ID,L)*ROAROW(ID,L)
oxicon.F:              TTSO4=TTSO4+RTSO4(ID,L,N)*GO
oxicon.F:              TTRU=TTRU+RU(ID,L,NF)*GO
oxicon.F:              DDDV=DDDV+DXDT(ID,L,NF)*GO
oxicon.F:              TTOV=TTOV+OU(ID,L,NF)*GO
oxicon.F:                TTSO2 = TTSO2 + RTSO2(ID,L)*GO
oxicon.F:                TTOU = TTOU + OU(ID,L,ISO2)*GO
oxicon.F:                SORU = SORU + RU(ID,L,ISO2)*GO
oxicon.F:                DDDT = DDDT+DXDT(ID,L,ISO2)*GO
oxistr.F:     7                  , ANTSO4,    XROW,  AOH2O2, ARESID,  ZMLWC
oxistr.F:C     Calculates incloud-oxidation for stratiform clouds.
oxistr.F:     1    ,ARESID(ILG,ILEV),ASPECI(ILG,ILEV),AGTSO2(ILG,ILEV)
oxistr.F:C---     sulphur dioxide. Conversion kg/kg -> mol/l
oxistr.F:         ARESID(IL,JK) = 0.
oxistr.F:!         print *, AGTHO2(IL,JK),AOH2O2(IL,JK),ARESID(IL,JK),
oxistr.F:C---              restrict pH to avoid numerical problems
oxistr.F:C---           O3-oxidation rate parameter AFO3
oxistr.F:C---           H2O2-oxidation rate parameter AFH2O2
oxistr.F:               ARESID(IL,JK) = ARESID(IL,JK) + ADELTA
oxistr.F:C---        sulphate fraction produced by hydrogen peroxide
oxistr.F:            ASPECI(IL,JK) = ASPECI(IL,JK) / MAX (ARESID(IL,JK),1.E-33)
oxistr.F:C---        limitation of oxidation due to too low hydrogen peroxide
oxistr.F:     +           'in OXISTR 2222',ARESID(IL,JK),AGTHO2(IL,JK)
oxistr.F:               ARESID(IL,JK) = ARESID(IL,JK) + AGTHO2(IL,JK)
oxistr.F:C---        limitation of oxidation due to too low sulphur dioxide
oxistr.F:     1             / (AMASPE(2)*YCOM3L) - ARESID(IL,JK)
oxistr.F:               ARESID(IL,JK) = ADELMS + ARESID(IL,JK)
oxistr.F:            ADELTA = CLDCV(IL,JK) * ARESID(IL,JK) * YCOM3L
oxistr.F:C---        sulphur dioxide in kg/kg/s
oxistr.F:C---        hydrogen peroxide
oxistr.F:       print *, I, L, AFRAC(I,L,N),CLDCV(I,L),ARESID(I,L),YCOM3L,
oxistr.F:       if(ARESID(I,L).ne.0)  then 
oxistr.F:       print *, I, L, AFRAC(I,L,N),CLDCV(I,L),ARESID(I,L),YCOM3L,
oxistr.F:     1                            * CLDCV(I,L) * ARESID(I,L) * YCOM3L
