Skip to content
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

Add driver to run SHiELD (and SHiEMOM) with the full FMS coupler #41

Merged
merged 5 commits into from
Aug 1, 2024

Conversation

JosephMouallem
Copy link
Contributor

Add files under /SHiELDFULL/ to compile and run SHiELD with the full FMS coupler.

The same files allow running the new model SHiEMOM (SHiELD+MOM6) as well.
The user should set fullcoupler_fluxes=.true. in the namelist atmos_model_nml to apply the fluxes (computed on the exchange grid in the full coupler) back on the atmosphere.

Tested on Gaea, Stellar and Orion.
(On Orion before the latest big environment update)

Checklist:

  • My code follows the style guidelines of this project
  • I have performed a self-review of my own code
  • I have commented my code, particularly in hard-to-understand areas
  • I have made corresponding changes to the documentation
  • My changes generate no new warnings
  • Any dependent changes have been merged and published in downstream modules
  • New check tests, if applicable, are included

@JosephMouallem
Copy link
Contributor Author

@lharris4 @bensonr

Copy link
Contributor

@lharris4 lharris4 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks fine to me. A couple of questions:

  • Are the new files principally to replicate functionality needed by the coupler that exists in AM4 but not in SHiELD?
  • Can we can now use the tracer_driver (ie. AM4 aerosols and chemistry) within SHiELD? I see that the tracer_driver routines are principally stubs and don't do anything.

@JosephMouallem
Copy link
Contributor Author

Hi Lucas, yes true.
I added all these files, which are taken from atmos_null, to compile the full coupler and satisfy its dependencies.
I think since we already have the routines here, we could probably take advantage of their functionality.

Copy link
Contributor

@bensonr bensonr left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Did the atmos_tracer_driver.html come from the repo you branched off? Or did you write this file yourself?

@JosephMouallem
Copy link
Contributor Author

It comes from NOAA-GFDL/atmos_null:
https://github.com/NOAA-GFDL/atmos_null

@bensonr
Copy link
Contributor

bensonr commented Jul 17, 2024

I think we can safely remove it as we tend to keep zero html files around anymore

Copy link
Member

@thomas-robinson thomas-robinson left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@JosephMouallem These updates needlessly clutter the atmos driver which is a fairly simple repo to only run the atmosphere. The code is mostly copy and paste from physics, so I think these updates should go in the physics.

The code does not follow the style guidelines, especially the documentation part about using doxygen style including descriptions for all routines and modules
https://github.com/NOAA-GFDL/atmos_drivers/blob/main/CODE_STYLE.md

@JosephMouallem
Copy link
Contributor Author

@thomas-robinson Thanks for your feedback, we can certainly move the extra files out of SHiELDFULL/ and only leave atmos_model.F90.

We could place them under SHiELD_physics/atmos_shared/ similar to what is done in NOAA-GFDL/atmos_phys.
@lharris4, @bensonr how does this sound?

@lharris4
Copy link
Contributor

@JosephMouallem @thomas-robinson I think SHiELD_physics/atmos_shared/ is the best place as it follows the construction of the AM4 Physics. In theory we could use this to bring in aerosol and chemistry routines from AM4 to SHiELD.

@JosephMouallem
Copy link
Contributor Author

@thomas-robinson The extra atmos files were removed and added to SHiELD_physics. Description of variables and subroutines is revised and now follows the code style of other atmos_model.F90 under coupled/ and SHiELD/

Copy link
Member

@thomas-robinson thomas-robinson left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ok. I set up #42 related to updating the comment/documentation in this repo.

@laurenchilutti laurenchilutti merged commit 6a620c6 into NOAA-GFDL:main Aug 1, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants