Create veg_soil_bgc_interface src subdirectory and have Veg-CN and soilbiogeochemistry interface modules in it
- Dominant language
- Fortran
- Stars
- 352
- Forks
- 361
- Avg merge
- 2d 21h
- Merged PRs (30d)
- 7
Description
Currently biogeochem and soilbiogeochem are separated, but have a set of modules that have both and provide an interface between the two. There are also some lower level modules that are deeper down and are exclusive to either biogeochem or soilbiogeochem. It would be helpful to make this design more obvious by making a subdirectory that contained the interfaces between the two, and being more explicit about which modules act as interfaces between the two and which really are only part of one or the other.
The other reason for doing this is so that FATES can share the soil-biogeochemistry calling sequence without having to have it's own copy of it. The soil-BGC calling sequence is complex enough that sharing this code makes sense. Right now if soil-BGC is changed, changes have to go into both FATES and the biogeochem calling sequences.
Doing this also makes the current design more obvious and gives an easy rule to know where to add modules (if they contain both biogeochem and soilbiogeochem it goes in veg_soil_vgc_interface and if it's confined to only one or the other it goes in the relevent one).
Contributor guide
Assessment
This issue has not been assessed yet.