Skip to content

Conversation

@chrisb13
Copy link

This currently isn't used but will be in an upcoming commit
Use shr_wv_sat_qsat_liquid if aofluxes_use_shr_wv_sat is true, otherwise
use the old, inline formulation.

This just applies to the Large and COARE formulations.
3.9 is now the minimum supported by CIME
3.9 gives a warning, which seems to create a error in the GitHub
testing. So instead of 3.9 and 3.11, use 3.10 and 3.12.
Otherwise it's interpreted as 3.1
Add namelist control around the qsat calculation for atm-ocn fluxes

### Description of changes

The calculation of qsat in the atm-ocn fluxes was [recently changed](ESCOMP#589) to use the shr_wv_sat module. However, NorESM would like to continue to use the old formulation for now. This PR reintroduces the old code and introduces a new config variable that controls whether to use the old or new formulation for qsat.

The goal here is to allow NorESM and CESM to use the same code, so that Mariana doesn't need to maintain a separate fork of CMEPS for NorESM. For now, NorESM will need a one-line difference in the namelist definition file, setting the default value of aofluxes_use_shr_wv_sat to false instead of true.

Note that this only applies to ocn_surface_flux_scheme = 0 (Large) or 1 (COARE) (but see ESCOMP#624 regarding extending this at some point).

This PR also renames some arguments in the calls to shr_wv_sat_qsat_liquid to better match the argument names in that subroutine.

### Specific notes

Contributors other than yourself, if any:

CMEPS Issues Fixed (include github issue #):

Are changes expected to change answers? (specify if bfb, different at roundoff, more substantial)  No - bfb

Any User Interface Changes (namelist or namelist defaults changes)? Adds new namelist flag, aofluxes_use_shr_wv_sat.

### Testing performed
Ran these tests in the context of cesm3_0_alpha08a (but with share code updated to the latest, since that's a dependency of the latest CMEPS):
```
ERS_D_Ld3.ne30pg3_t232.B1850C_LTso.derecho_intel.allactive-defaultio
SMS_Ld1.ne30_ne30_mg17.FC2010climo.derecho_intel.cam-outfrq1d
ERP_D_Ln9.ne30pg3_ne30pg3_mt232.F1850C_MTso.derecho_intel.cam-outfrq9s
```

I ran 4 versions of these tests:
- ocn_surface_flux_scheme = 0, aofluxes_use_shr_wv_sat = true (out-of-the-box defaults): bit-for-bit
- ocn_surface_flux_scheme = 1, aofluxes_use_shr_wv_sat = true, comparing against baselines with ocn_surface_flux_scheme = 1: bit-for-bit
- ocn_surface_flux_scheme = 0, aofluxes_use_shr_wv_sat = false: changes answers, as expected
- ocn_surface_flux_scheme = 1, aofluxes_use_shr_wv_sat = false, comparing against baselines with ocn_surface_flux_scheme = 1: changes answers as expected
@chrisb13
Copy link
Author

A PR like this is not needed, see ACCESS-NRI/access-om3-configs#1028 (comment)

@anton-seaice anton-seaice deleted the main branch January 19, 2026 00:22
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.

3 participants