CMAQv5.1 Isorropia
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