-
Notifications
You must be signed in to change notification settings - Fork 170
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
Move aerosol_mod.F90 arrays to State_Chm%AerMass object #2015
Move aerosol_mod.F90 arrays to State_Chm%AerMass object #2015
Conversation
Tagging Aerosol WG Co-Chairs: @beckyalexander, @theloniuspunk, @wporter. Let me know if you have any questions/concerns. |
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.
Mostly looks good. I made a couple of review comments under Files Changed. Let me know what you think @lizziel.
…te_Chm Updates include: - New file aermass_container_mod.F90 to hold gridded arrays previously in aerosol_mod.F90, e.g. OCFPOA, BCPO, and other aerosol mass arrays computed in Aerosol_Conc - New derived type AerMassContainer defined in the new file - State_Chm%AerMass to point to the AerMassContainer object - Code updates to access the aerosol mass arrays via the State_Chm pointer, e.g. State_Chm%AerMass%OCFPOA - Removal of aerosol_mod.F90 subroutine Cleanup_Aerosol - Moved diagnostic submodule Set_AerMass_Diagnostic in aerosol_mod.F90 to be stored instead in diagnostics_mod.F90 - Remove the Transport library from GeosCore/CMakeLists.txt A note on the last update, to remove the Transport library from GeosCore: This code was put in years ago with the intention of making it easier to include GEOS-Chem in external models without GEOS-Chem Classic transport. However, the files in the library are built before GeosCore and include diagnostics_mod.F90. Excluding this built library in models would prevent using GEOS-Chem diagnostics. It also prevents using non-transport GeosCore modules within diagnostics_mod.F90, a problem that came up during this aerosols update. In practice we do not need this separately built library when porting GEOS-Chem to other models. There are simpler ways of not building the transport files for all cases thus far. Signed-off-by: Lizzie Lundgren <[email protected]>
In updating the aerosol mass arrays I changes code within oasave.F90. However, we actually do not need this anymore since it is for obsolute binary diagnostics. I am thus removing the file and the code that uses it. Signed-off-by: Lizzie Lundgren <[email protected]>
Signed-off-by: Lizzie Lundgren <[email protected]>
Signed-off-by: Lizzie Lundgren <[email protected]>
…ecks Signed-off-by: Lizzie Lundgren <[email protected]>
e74b04e
to
e749e5e
Compare
Signed-off-by: Lizzie Lundgren <[email protected]>
Thanks for the feedback @yantosca! I made the updates and now have it on top of the no-diff branch. Please review again at your convenience. |
…_arrays_to_state_chm # Conflicts: # CHANGELOG.md Signed-off-by: Lizzie Lundgren <[email protected]>
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.
Thanks @lizziel! Good to merge.
Name and Institution (Required)
Name: Lizzie Lundgren
Institution: Harvard University
Describe the update
This PR moves all gridded module arrays in
aerosol_mod.90
to new derived type objectState_Chm%AerMass
. Updates include:aermass_container_mod.F90
to hold gridded arrays previously inaerosol_mod.F90
, e.g. OCFPOA, BCPO, and other aerosol mass arrays computed inAerosol_Conc
subroutineAerMassContainer
defined in the new fileState_Chm%AerMass
to point to theAerMassContainer
objectState_Chm%AerMass%OCFPOA
aerosol_mod.F90
subroutineCleanup_Aerosol
Set_AerMass_Diagnostic
inaerosol_mod.F90
to be stored instead indiagnostics_mod.F90
oasave.F90
and code that references itTransport
library fromGeosCore/CMakeLists.txt
Regarding the last update, removal of the
Transport
library, this CMake code was put in years ago with the intention of making it easier to include GEOS-Chem in external models without GEOS-Chem Classic transport. However, the files in the library are built before otherGeosCore
files and includediagnostics_mod.F90
andcalc_met_mod.F90
. Excluding this built library in models would therefore break GEOS-Chem. The presence of this library also prevents using non-transportGeosCore
modules withindiagnostics_mod.F90
, a problem that came up during this aerosols update. In practice we do not need this separately built library when porting GEOS-Chem to other models. There are simpler ways of not building the transport files for all cases thus far.This is a zero diff update but I would like it to go into 14.3.0 so that it can be used in the interface to Cloud-J.
All integration tests passed for GC-Classic and GCHP except the TOMAS simulations which is a known issue unrelated to this update.
Expected changes
This is a no diff update for all simulations.
Reference(s)
None
Related Github Issue(s)
closes #1418