I’m trying to dig a bit deeper on how CMAQ solves the transport equation for aerosols by looking at the literature and the code itself.
The User’s Guide doesn’t go into much detail and some recent papers did not clarify much. I went back to to the Byun and Schere’s paper (Review of the Governing Equations, Computational Algorithms, and Other Components of the Models-3 Community Multiscale Air Quality CMAQ Modeling System), which provides a clearer explanation (at least to me). [Note: I also checked Binkowski and Roselle paper, but that seems to be a bit older]. However, I have doubts on whether CMAQ v5.4 is still solving eq. (41) from Byun and Schere’s paper and how the sedimentation velocity is defined. Also, and in a different paper (The Community Multiscale Air Quality (CMAQ) Model Versions 5.3 and 5.3.1: System Updates and Evaluation), there’s mention that the gravitational settling algorithm in CMAQ53 was also updated but the focus is on discussing the code enhancements, not the solved equations.
As for the code, I was looking at the AERO_DATA.F file and noticed the definition of def_sigma_g for each mode, but couldn’t figure out how the values (1.7, 2.0, 2.2) were evaluated. I’m trying to find the relationship between the variables used in the AERO module and the equations describing the physics system.
The treatment of gravitational settling was modified in CMAQv5.1 (release notes). There is some discussion of this in Section 5.3 of Nolte et al. (2015), which refers to Binkowski and Shankar (1995), as well as in a conference proceeding (Pleim et al., 2015: Recent Advances in Modeling of the Atmospheric Boundary Layer and Land Surface in the Coupled WRF-CMAQ Model, 34th International Technical Meeting on Air Pollution Modelling and its Application, 4-8 May, 2015, Montpellier, France).
I do not understand your question regarding def_sigma_g. The modal values (1.7, 2.0, 2.2) are assumed input parameters that are used in setting other quantities, including def_l2sg, aeromode_minNum, and aeromode_minM2.
Thank you for the references (will try to read them before the end of the day). Maybe I misunderstood the input parameters so let me ask you the question from a different perspective: If one wants to modify the strength of gravitational settling, which parameters would need to be modified? Let me use 2 examples: If I wanted to run a case with no gravitational settling, do I just need to turn CTM_GRAV_SETL to ‘N’? This would be a straightforward solution, but what if I wanted to double up the gravitational field (i.e. 19.62 m/s^2) or halve it (i.e. 4.905 m/s^2)? I know the latter cases sound odd but I would like to know if this option is available by simply manipulating some parameters.
Gravitational settling applies only to J and K mode aerosol species. See SEDIMENTATION.F and aero_sedv.F.
I believe it is the case that setting CTM_GRAV_SETL to N would turn off gravitational settling for layers above layer 1 (i.e., revert to the pre-v5.1 treatment), but I have not investigated that myself.
You can see in aero_sedv.F where the gravitational constant ‘grav’ is referenced. You could introduce a new constant there that has a different value to do the sort of test you are describing. ‘grav’ is defined in CONST.EXT, but it is used elsewhere so you may not want to change that value globally.