CMAQv5.1 Isorropia

From CMASWIKI
Jump to: navigation, search

Brief Description

ISORROPIA algorithms for treating the partitioning of ammonia, nitrate, and chlorine between the gas and aerosol phases are updated from ISORROPIA version 2.1 to 2.2. ISORROPIA 2.2 is part of AERO6 and AERO6i.

Significance and Impact

No anticipated effect on runtime.

Changes occur mainly in routines affecting online activity coefficient calculations, which are not used in the CMAQ implementation.

The bisection method would not always find the root of the equation because of inaccuracies in the activity coefficients from previous steps, which influenced the current step of the solution-finding algorithm. Now, the activity coefficients are reset at select times throughout the bisection routines so as to ensure that they always reflect the mix of concentrations considered in commensurate portion of the solution algorithm.

Across a wide range of concentrations, relative humidities, and temperatures, the agreement with the previous version of ISORROPIA (2.1) is strong for forward cases with sodium, chloride, nitrate, sulfate, and ammonium.

The reverse routines are not revised. Partitioning in the presence of non-zero crustal concentrations is impacted only by the revisions to the relevant bisection portions of the code.

Affected files

Modified files

  • aero/aero6/isocom.f
  • aero/aero6/isofwd.f

Specific changes

File Name Subroutine Line(s) ISORROPIA v2.1 ISORROPIA v2.2
ISOFWD.F CALCD3 2028 MOLAL(5) = ZERO MOLAL(5) = PSI2
ISOFWD.F CALCD3 2084 MOLAL(5) = ZERO MOLAL(5) = PSI2
ISOCOM.F CALCACT 4703-22 Appears to call CALCACT1-4 Actually calls corrected CALCACT1-4
ISOCOM.F CALCMR 3685 MOLALR(4) = MOLAL(3) MOLALR(9) = MOLAL(3)
ISOCOM.F CALCMR 3711 MOLALR(4) = MOLAL(3) MOLALR(9) = MOLAL(3)
ISOCOM.F POLY3 16041 PI=3.14159265358932 PI=3.1415926535897932
ISOFWD.F CALCD2 2255 MOLAL(5) = ZERO MOLAL(5) = PSI2
ISOFWD.F CALCD2 2316 MOLAL(5) = ZERO MOLAL(5) = PSI2 J
ISOFWD.F ALL BISECTION ORIENTED CODE multiple Activity coefficients can cause values to stick high in objective function Insert RSTGAMP before FUNC* calls
ISOCOM.F AERSR,

ADEC10

2734, 16330 Separately defines parts of DATA arrays Lump all data into one

References

Fountoukis, C. and Nenes, A. (2007) ISORROPIA II: A Computationally Efficient Aerosol Thermodynamic Equilibrium Model for K+, Ca2+, Mg2+, NH4+, Na+, SO42-, NO3-, Cl-, H2O Aerosols, Atmos. Chem. Phys., 7, 4639–4659.

ISORROPIA website: http://isorropia.eas.gatech.edu/index.php?title=Main_Page

Contact

Havala Pye, National Exposure Research Laboratory, EPA