-
Notifications
You must be signed in to change notification settings - Fork 17
Fix TEMPO aerosol initialization #69
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fix TEMPO aerosol initialization #69
Conversation
…AP or the monthly climatology data. * Adds a config variable, config_tempo_rap, to the core_init_atmosphere Registry that must be set to true in the init_atmosphere namelist to use RAP aerosols. * Adds a logical function that check for config_tempo_rap = true and non-zero values of nwfa and nifa from RAP. This function will control whether to use RAP aerosols or the monthly climatology.
information from the first guess field (e.g., RAP) instead of the monthly climatology. This aerosol information, nwfa and nifa, is needed for the aerosol-aware TEMPO microphysics.
Use_rap_aerosols will now check for existing aerosols in the initial conditions if lbc_state is not present. Otherwise, it will check for existing aerosols in lbc_state (lateral boundary condition data type)
can be added to IC/LBC files.
lbc_state. * For qv, the lbc index is changed from index_qv to index_lbc_qv and state is changed to lbc_state * This is done for all LBC variables * Fixes a bug that caused an LBC variable (nwfa) to populate the incorrect variable name (lbc_nccn) since index_nwfa is NOT equal to index_lbc_nwfa
Thanks @AndersJensen-NOAA for adding options for how to initialize water- and ice-friendly aerosols, and for debugging and testing. I just ran tests with the CONUS 3-km MPAS domain, and results are good. Aerosol initialization is working for all of the following situations: (1) Initial conditions produced from a parent model that provides aerosols (config_tempo_rap = true) |
@@ -771,8 +771,8 @@ subroutine init_atm_thompson_aerosols_lbc(timestamp,timestart,block,mesh,diag,st | |||
call mpas_pool_get_dimension(mesh,'nVertLevels' ,nVertLevels ) | |||
call mpas_pool_get_dimension(mesh,'nMonths' ,nMonths ) | |||
|
|||
call mpas_pool_get_dimension(state,'index_nifa',index_nifa) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is a change to NCAR's code. I emailed Laura Fowler about this change.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Are you hoping to hear back before this is merged?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This has now been merged into NCAR's 8.2.3:
MPAS-Dev#1249
* Adds code to determine whether to use aerosols (nwfa and nifa) from RAP or the monthly climatology data. * Adds a config variable, config_tempo_rap, to the core_init_atmosphere Registry that must be set to true in the init_atmosphere namelist to use RAP aerosols. * Adds a logical function that check for config_tempo_rap = true and non-zero values of nwfa and nifa from RAP. This function will control whether to use RAP aerosols or the monthly climatology. * Modifies logic for creation of ICs/LBCs so that users can use aerosol information from the first guess field (e.g., RAP) instead of the monthly climatology. This aerosol information, nwfa and nifa, is needed for the aerosol-aware TEMPO microphysics. * Adds optional argument lbc_state to the use_rap_aerosols function Use_rap_aerosols will now check for existing aerosols in the initial conditions if lbc_state is not present. Otherwise, it will check for existing aerosols in lbc_state (lateral boundary condition data type) * Fix missing parentheses in if statement * Initialize tempo_aerosolaware package so that nwfa and nifa can be added to IC/LBC files. * Changes lbc code to use lbc-specific indexes when adding variables to lbc_state. * For qv, the lbc index is changed from index_qv to index_lbc_qv and state is changed to lbc_state * This is done for all LBC variables * Fixes a bug that caused an LBC variable (nwfa) to populate the incorrect variable name (lbc_nccn) since index_nwfa is NOT equal to index_lbc_nwfa * Fix typos
This PR fixes issue where initial water- and ice-friendly aerosol values from the RAP model are being overwritten by the monthly climatology. This PR adds logic to allow users to use either initial aerosols from a first guess model field if they exist or values from a monthly climatology.
To use RAP aerosol initial conditions, set
config_tempo_rap = .true.
in preproc_stages. If first guess values do not exist (global max values of zero), then the monthly climatology will be used as a backup.