Skip to content

AWI-ESM3 CO2 coupling#806

Open
JanStreffing wants to merge 35 commits intomainfrom
fesom2.6_recom_awiesm3_co2_coupling
Open

AWI-ESM3 CO2 coupling#806
JanStreffing wants to merge 35 commits intomainfrom
fesom2.6_recom_awiesm3_co2_coupling

Conversation

@JanStreffing
Copy link
Collaborator

Not to be merge before: #802 is done.

ogurses and others added 29 commits October 15, 2024 15:08
Define new variables to track tracer changes
due to advection and diffusion.

We want to save for now diffusion and advection
contribution to the tracer changes. Horizontal and
vertical diffusion includes Redi
parametrization (if it is set .true.).
Fill __ciso directive to ensure that
carbon isotope code works. Medusa interface is
added.
Use __coccos in src/CMakeLists.txt to
include 2 more phytoplankton classes

FESOM2.6-REcoM setup with 4 phytoplankton,
3 zooplankton and 2 detritus functional types.

BREAKING CHANGE: FESOM2.6-REcoM setup with 4p3z2d
Correct temperature function for small phytoplankton and diatoms.

Previous update for the fouth phytoplankton class and
new temperature functions for small phytoplankton and diatoms
resulted in very low Phaeocystis biomass.
We recognised that this is related to missing code lines in the
temperature function which we correct with this update.
…ostics

Use namelist.io to activate diagnostics.

Sinking velocity of particle (fast and slow) are calculated but not written into a file before.
We fix the  missing diagnostics for sinking velocity of detritus classes. Besides we
Extracted the K0, solubility  which is computed
in gasx.F90.
@JanStreffing
Copy link
Collaborator Author

JanStreffing commented Nov 1, 2025

This branch still needs some cleanup. I very optimistically add it to 2.7 for now.

@JanStreffing JanStreffing added this to the FESOM 2.7 milestone Nov 1, 2025
@JanStreffing JanStreffing requested a review from a270105 November 1, 2025 15:49
@JanStreffing JanStreffing marked this pull request as ready for review November 12, 2025 11:10
@JanStreffing JanStreffing modified the milestones: FESOM 2.7, FESOM 2.7.1 Nov 17, 2025
The annual_event function incorrectly checked mod(yearnew, N) which tests
divisibility of the absolute calendar year, not the elapsed simulation time.
This caused restart_length to fail for multi-year runs when the calendar
year was not divisible by the restart frequency.

For example, with restart_length=2 starting in year 1900:
- Old: writes restarts only in years 1900, 1902, 1904... (even years)
- New: writes restarts after 1, 2, 3... elapsed years (1900, 1901, 1902...)

Changes:
- Added yearstart as module-level variable in g_clock
- Modified annual_event to calculate elapsed_years = yearnew - yearstart + 1
- Now correctly triggers restart output every N simulation years regardless
  of starting calendar year

This fix ensures restart_length works correctly for all frequencies (1, 2, 5,
10, 20, 50, etc.) and any starting year.
…ars' into fesom2.6_recom_awiesm3_co2_coupling
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants