Skip to content

Conversation

@gmao-rreichle
Copy link
Contributor

@gmao-rreichle gmao-rreichle commented Sep 11, 2024

Supersedes #918. Adds optional numerical derivatives of Monin-Obukhov exchange coefficients over land in offline mode. Numerical derivatives implemented for Louis and Helfand. Also cleans up and documents surface turbulence code in Catchment GridComp. Numerical derivatives not yet implemented for CatchCN.

New resource parameter MOSFC_EXTRA_DERIVS_LAND replaces incl_Louis_extra_derivs:

     ! MOSFC_EXTRA_DERIVS_LAND: Resource parameter for *offline* (LDAS) mode.
     !
     !  Over *land*, use derivatives of exchange coeffs w.r.t. temp. & humidity.
     !    
     !    0 : None,               default for Helfand.  
     !    1 : Analytical derivs,  default for Louis,    *not* available for Helfand.
     !    2 : Numerical  derivs. 
     !    3 : Numerical  derivs,  via virtual temp.,    *not* available for Helfand,  same as 2 but faster than 2.
     !
     !  Runtimes: Helfand takes ~10 times longer than Louis.  In offline mode, Helfand consumes
     !            about as much CPU as Catchment.  Option 2 triples the runtime of the MOSFC scheme.
     !            Option 3 doubles the runtime of the Louis scheme.  

Successfully 0-diff tested for GEOSldas Intel standard tests at 3b6cced

biljanaorescanin and others added 24 commits January 18, 2024 15:33
- changed default to NOT use extra derivs
- renamed resource variable for extra derivs
- reordered and moved variable declarations etc for consistency
@gmao-rreichle gmao-rreichle added documentation Improvements or additions to documentation enhancement New feature or request 0 diff The changes in this pull request have verified to be zero-diff with the target branch. labels Sep 11, 2024
@gmao-rreichle gmao-rreichle self-assigned this Sep 11, 2024
@biljanaorescanin
Copy link
Contributor

@gmao-rreichle here is testing summary:

  1. All GEOSldas regression tests passed.
  2. Regression tests for AGCM all failed for change of long name.
    Fail is same for all 1 day AMIP, REPLAY, And no inc REPLAY.
    Here is example from AMIP:
    Comparing NC4 catch_internal_checkpoint using nccmp...
    Failure!
    Checking for data differences
    Checking for metadata differences
    DIFFER : VARIABLE : CQ : ATTRIBUTE : long_name : VALUES : "surface_moisture_exchange_coffiecient" <> "surface_moisture_exchange_coefficient"
  3. Running regression script was a pass.

@biljanaorescanin
Copy link
Contributor

biljanaorescanin commented May 27, 2025

I've redone tests since it has been a while:

  1. GCM AMIP, REPLAY and INC REPLAY all have just this difference in change of the long name:

Comparing NC4 catch_internal_checkpoint using nccmp...
Failure!
Checking for data differences
Checking for metadata differences
DIFFER : VARIABLE : CQ : ATTRIBUTE : long_name : VALUES : "surface_moisture_exchange_coffiecient" <> "surface_moisture_exchange_coefficient"

  1. Regression tests for GEOSldas: GLOBACS/assim test fails to run unless the rc variable MOSFC_EXTRA_DERIVS_OFFL_LAND: 0 is added to the test's "exeinp" config file (globalcs.assim.exec). With this change, the test passes.
    All other tests were zero diff.

@gmao-rreichle gmao-rreichle marked this pull request as ready for review May 27, 2025 21:46
@gmao-rreichle gmao-rreichle requested a review from a team as a code owner May 27, 2025 21:46
@biljanaorescanin
Copy link
Contributor

@sdrabenh this is ready for you
@mathomp4 once merged we will have to add rc variable MOSFC_EXTRA_DERIVS_OFFL_LAND: 0 to test's "exeinp" config file (globalcs.assim.exec).

@sdrabenh sdrabenh merged commit 61829e8 into develop Jun 25, 2025
10 checks passed
@sdrabenh sdrabenh deleted the feature/rreichle/surfturb_numerical_derivatives branch June 25, 2025 21:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

0 diff The changes in this pull request have verified to be zero-diff with the target branch. documentation Improvements or additions to documentation enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants