ISORROPIA model for SIA#

Overview#

For the modelling of production of secondary inorganic aerosols (SIA), the user can choose to use subroutines directly from the third-party aerosol thermodynamic equilibrium models ISORROPIA (Nenes, 1998) and ISORROPIA II (Fountoukis and Nenes, 2007). For convenience, both ISORROPIA and ISORROPIA II will be referred to collectively as ISORROPIA, except in cases where distinction is necessary. Further information pertaining to the application of ISORROPIA can be found, for instance, in the ISORROPIA Reference Manual (Fountoukis et al, 2009).

The use of ISORROPIA in PALM can be activated from the namelist (_p3d file), where the ISORROPIA solver behavior can be further defined. Source codes of ISORROPIA and ISORROPIA II can be requested directly from the respective authors. While these options are designed to reflect the functionality of different aspects of the ISORROPIA solvers, some terminologies specific to ISORROPIA will be used for those who are already familiar with ISORROPIA. The present documentation will provide build instructions for ISORROPIA in PALM and to provide namelist options for activating and controlling the behavior of the ISORROPIA solver.

Build Instructions#

ISORROPIA must be compiled as a standalone shared library (.so) with the same toolchain used in building PALM. The make and version of the toolchain can be verified by inspecting the corresponding PALM build configuration file (.palm.config.*) under the entry %compiler_name% or %compiler_name_ser%. The code must be compiled as position-independent code into a shared object file, which can be accomplished respectively with the build switches -fPIC and -shared using the GNU or Intel compiler toolchain, for example.

Once the .so file has been successfully built, the PALM configuration must be modified so that the ISORROPIA library can be integrated, in which corresponding changes must be made in the entries for %compiler_options and %linker_options in the .palm.config file. The following table outlines the necessary changes.

Entry in .palm.config Additional Option
%compiler_options -D__ISORROPIA1 (ISORROPIA) or
-D__ISORROPIA2 (ISORROPIA II)
%linker_options Path to the ISORROPIA .so file

Once these changes have been made, palmbuild can be executed to include the ISORROPIA model. Please note that for each build either ISORROPIA or ISORROPIA II, but not both, can be integrated into PALM.

Namelist (_p3d) Options#

To activate the use ISORROPIA library subroutines in PALM, the namelist option chem_isorropia is to be set to .TRUE.. Optionally, the frequency at which the ISORROPIA solver is called can be set using the option chem_isorropia_update_interval, where a numerical value given indicates the simulation time in seconds between successive calls to the ISORROPIA solver. The default is set to 300 seconds.

In addition, while the ISORROPIA solver will operating using default parameters values, they can be customized from the namelist. These options are presented in the table below, along with the corresponding variable names in ISORROPIA as a reference for users who are familiar with ISORROPIA. Please note that all namelist items pertaining to ISORROPIA will begin with the prefix chem_isorropia. Detailed explanation of the different options can be found in the ISORROPIA Reference Manual (Fountoukis et al, 2009). Any invalid parameter input in the namelist will be replaced with the corresponding default value.

Namelist (p3d) Option (chem_isorropia) ISORROPIA Variable Function Possible Values (Default in Boldface)
_problem_type CNTRL(1) Solver mode 0.0, 1.0
_aerosol_state CNTRL(2) Aerosol state 0.0, 1.0
_max_iteration MAXITI Maximum solver iterations Any positive integer (100)
_solver_tolerance EPSI Solver convergence criterion Any positive floating point (1.0E-6)
_activity_coefficient_method IACALCI Activity coefficients algorithm 0, 1
_max_activity_sweep NSWEEPI Maximum activity coefficient sweeps Any positive integer (4)
_activity_tolerance EPSACTI Activity coefficient convergence criterion Any positive floating point (0.05)
_root_subdivisions NDIVI Number of subdivisions for root tracking Any positive integer (5)
_mdr_weight_method WFTYPI Type of weighting algorithm for mutual deliquescence regions (MDR) 0, 1, 2
_mass_conservation_mode NADJI Mass conservation enforcement (ISORROPIA II only) 0, 1

Aerosol Species in Chemical Mechanism#

PALM will collect output aqueous and solid aerosol species which are defined in the active chemical mechanism. The following table lists the aerosol species that are available form ISORROPIA. Please note that not all species listed below needed be included in the PALM chemical mechanism; only those that are required. In addition, computation of aerosol species involving Magnesium (Mg), potassium (K), and calcium (Ca) are only available in ISORROPIA II.

Aqueous Aerosol PALM Mechanism Name Solid Aerosol PALM Mechanism Name
H+ H_aq NaNO3 NANO3_s
Na+ NA_aq NH4NO3 NH4NO3_s
NH4+ NH4_aq NaCl NACL_s
Cl- CL_aq NH4Cl NH4CL_s
SO42- SO4_aq Na2SO4 NA2SO4_s
HSO4- HSO4_aq (NH4)2SO4 NH42SO4_s
NO3- NO3_aq NaHSO4 NAHSO4_s
H2O H2O_aq NH4HSO4 NH4HSO4_s
NH3 NH3_aq (NH4)4H(SO4)2 NH44HSO42_s
HCl HCL_aq CaSO4 CASO4_s
HNO3 HNO3_aq Ca(NO3)2 CANO32_s
OH- OH_aq CaCl2 CACL2_s
Ca2+ CA_aq K2SO4 K2SO4_s
K+ K_aq KHSO4 KHSO4_s
Mg2+ MG_aq KNO3 KNO3_s
KCl KCL_s
MgSO4 MGSO4_s
Mg(NO3)2 MGNO32_s
MgCl2 MGCL2_s

References#

  • Fountoukis, C., and Nenes, A.: ISORROPIA II: a computationally efficient thermodynamic equilibrium model for K+–Ca2+–Mg2+–NH+ 4 –Na+–SO2− 4 –NO− 3 –Cl−–H2O aerosols, Atmospheric Chemistry and Physics, 7, 4639–4659, 2007.
  • Fountoukis, C., Nenes, A., Pandis, S., and Pilinis, C.: ISORROPIA v 2.1 Reerence Manual, 2009.
  • Nenes, A., Pandis, S. N., and Pilinis, C.: ISORROPIA: A new thermodynamic equilibrium model for multiphase multicomponent inorganic aerosols, Aquatic Geochemistry, 4, 123–152, 1998.