Skip to content

Introduce namelist option for thermal conductivity of snow: Jordan vs. Sturm#2148

Closed
AdrienDams wants to merge 7 commits intoESCOMP:masterfrom
AdrienDams:Sturm
Closed

Introduce namelist option for thermal conductivity of snow: Jordan vs. Sturm#2148
AdrienDams wants to merge 7 commits intoESCOMP:masterfrom
AdrienDams:Sturm

Conversation

@AdrienDams
Copy link
Copy Markdown
Contributor

Description of changes

We have replaced the snow thermal conductivity calculations from Jordan (1991) with Sturm et al. (1997) discussed here and described for single point runs by Dutch et al 2022.

Specific notes

Contributors: Victoria Dutch, Leanne Wake

Testing in progress here

Copy link
Copy Markdown
Contributor

@wwieder wwieder left a comment

Choose a reason for hiding this comment

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

Thanks for contributing this @AdrienDams we're investigating the impact of the change to arctic soil temperatures and productivity now.

Assuming the results seem promising, I suggest we add Jordan vs. Sturm namelist options for calculating snow thermal conductivity thk. Updates for Sturm will also need to be added to the technote (e.q. 2.6.85)

Comment thread src/biogeophys/SoilTemperatureMod.F90 Outdated
if (snl(c)+1 < 1 .AND. (j >= snl(c)+1) .AND. (j <= 0)) then
bw(c,j) = (h2osoi_ice(c,j)+h2osoi_liq(c,j))/(frac_sno(c)*dz(c,j))
thk(c,j) = tkair + (7.75e-5_r8 *bw(c,j) + 1.105e-6_r8*bw(c,j)*bw(c,j))*(tkice-tkair)
bw(c,j) = ((h2osoi_ice(c,j)*1)+h2osoi_liq(c,j))/(frac_sno(c)*dz(c,j)) ! ==RHOS
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

This line is actually is the same for both approaches.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Returning line 740 to the original. Is the comment at the end ==RHOS helpful to keep?

Comment thread src/biogeophys/SoilTemperatureMod.F90 Outdated
! the algorithm of Johansen (as reported by Farouki 1981), and the
! conductivity of snow is from the formulation used in
! SNTHERM (Jordan 1991).
! Sturm (1997).
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Why is there so much documentation in the code itself here? If we keep all the notes (here and below) snow conductivity should reference both Jordan and Sturm papers.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Half of the notes here and below are about the thermal conductivity of soil, so I will keep them and reference both papers.

Comment thread src/biogeophys/SoilTemperatureMod.F90 Outdated
thk(c,j) = tkair + (7.75e-5_r8 *bw(c,j) + 1.105e-6_r8*bw(c,j)*bw(c,j))*(tkice-tkair)
bw(c,j) = ((h2osoi_ice(c,j)*1)+h2osoi_liq(c,j))/(frac_sno(c)*dz(c,j)) ! ==RHOS
! thk(c,j) = tkair + (7.75e-5_r8 *bw(c,j) + 1.105e-6_r8*bw(c,j)*bw(c,j))*(tkice-tkair) ! Original (Jordan) Parameterisation
if (bw(c,j) <= 156) then !LMW or 0.156 ?
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Here is where I think we'll want to use a namelist option to chose between Jornand and Sturm formulations for thk

@wwieder
Copy link
Copy Markdown
Contributor

wwieder commented Oct 20, 2023

Thanks for your presentation yesterday @AdrienDams. Given results from your presentation and tests done by @olyson and @slevis-lmwg it seems like we should bring this in as a namelist option to let users chose between Jordan and Sturm snow conductivity formulations. Adrien, can you add Keith and Sam as collaborators to your github PR so they can work on this PR and bring it to main?

@slevis-lmwg
Copy link
Copy Markdown
Contributor

slevis-lmwg commented Oct 30, 2023

Notes to self:

  • For git push to this PR's branch from my branch, I'm using
    git push AdrienDams HEAD:Sturm

Comment thread src/biogeophys/SoilTemperatureMod.F90 Outdated
! select case (thermal_cond_snow)
! case ('Jordan1991')
! thk(c,j) = tkair + (7.75e-5_r8 *bw(c,j) + 1.105e-6_r8*bw(c,j)*bw(c,j))*(tkice-tkair)
! case ('Sturm1997')
Copy link
Copy Markdown
Contributor

@slevis-lmwg slevis-lmwg Nov 1, 2023

Choose a reason for hiding this comment

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

@wwieder
I wanted to make sure I had the default value correct... Are we keeping Jordan1991 as default or changing it to Sturm1997?

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

...and maybe the right answer is Jordan1991 for now to get bfb same answers and we change the default later in an answer changing tag.

@slevis-lmwg
Copy link
Copy Markdown
Contributor

slevis-lmwg commented Nov 1, 2023

Test-suites

Add GRAINN outputs

In response to a user request for GRAINN_TO_FOOD outputs, this adds *_N_TO_FOOD(_ANN) and *_N_TO_SEED(_ANN) outputs for reproductive N pools. These are off by default, unlike their C counterparts. Note that the results are not scientifically supported, and tests have revealed unrealistic values. (Also adds GRAINC_TO_SEED_ANN output.)
@slevis-lmwg slevis-lmwg self-assigned this Nov 6, 2023
@slevis-lmwg slevis-lmwg added PR status: ready PR: this is ready to merge in, with all tests satisfactory and reviews complete tag: simple bfb labels Nov 6, 2023
@slevis-lmwg
Copy link
Copy Markdown
Contributor

Labeled as bfb because I made Jordan1991 the default option.

@slevis-lmwg slevis-lmwg changed the title Replace thermal conductivity of snow of Jordan with Sturm Introduce namelist option for thermal conductivity of snow: Jordan vs. Sturm Nov 7, 2023
@slevis-lmwg slevis-lmwg deleted the Sturm branch November 15, 2023 00:45
@samsrabin samsrabin added simple b4b bit-for-bit enhancement new capability or improved behavior of existing capability science Enhancement to or bug impacting science labels Aug 8, 2024
kvrigor added a commit to HPSCTerrSys/eCLM that referenced this pull request Mar 25, 2026
This PR implements @AdrienDams snow thermal conductivity fixes in CLM5.

> Damseaux, A., Matthes, H., Dutch, V. R., Wake, L., and Rutter, N.: **Impact of snow thermal conductivity schemes on pan-Arctic permafrost dynamics in the Community Land Model version 5.0**, The Cryosphere, 19, 1539–1558, https://doi.org/10.5194/tc-19-1539-2025, 2025.

## New namelist parameters in `lnd_in`

These fixes allow changing the snow thermal conductivity per land unit type. New namelist switches must be added in the `lnd_in` with defaults set to [CLM6 defaults](https://github.com/ESCOMP/CTSM/blob/9f5c3602f9efea2ade07a8f5dcf9eb2b0425d540/bld/namelist_files/namelist_defaults_ctsm.xml#L576-L583).

```fortran
&clm_inparm
 snow_thermal_cond_method = 'Sturm1997'
 snow_thermal_cond_glc_method = 'Sturm1997'
 snow_thermal_cond_lake_method = 'Jordan1991'
```

For reference the namelist parameters reproducing the **old defaults**

```fortran
&clm_inparm
 snow_thermal_cond_method = 'Jordan1991'
 snow_thermal_cond_glc_method = 'Jordan1991'
 snow_thermal_cond_lake_method = 'Jordan1991'
```

## Code changes

Changes were based from these upstream PRs:

- ESCOMP/CTSM#2148
- ESCOMP/CTSM#3072
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

b4b bit-for-bit enhancement new capability or improved behavior of existing capability PR status: ready PR: this is ready to merge in, with all tests satisfactory and reviews complete science Enhancement to or bug impacting science

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants