-
Notifications
You must be signed in to change notification settings - Fork 361
ctsm5.4.051: Update compsets to use DGLC adjust Fates compsets/tests, remove clm4_5/VIC/BGCDV/NWP%BGC compsets/tests #4110
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
ekluzek
wants to merge
109
commits into
ESCOMP:master
Choose a base branch
from
ekluzek:update_compsets_to_use_dglc
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Changes from 11 commits
Commits
Show all changes
109 commits
Select commit
Hold shift + click to select a range
5229e4b
Change Clm60 compsets that use SGLC to use DGLC%NOEVOLVE except for t…
ekluzek 9cb37c3
Make Fates compsets more consistent so that those with Gs have stub g…
ekluzek 455495e
Make Clm60Fates tests consistently use RsGs compsets for single-point…
ekluzek 3ef1aec
Have Fates compsets be consistent in having RsGs to be used for singl…
ekluzek 72088a8
Fix the compsets used in a couple of tests
ekluzek dad2c6c
CISM used to have two modes one for evolving and one for non-evolving…
ekluzek d8fb7f8
Update the list of compsets, since DGLC needs to be mentioned
ekluzek 790b4d1
Make sure single point cases use an existing compset (and in some cas…
ekluzek 9505cb7
Have 5x5_amazon regional tests use a RsGs compset so that both ROF an…
ekluzek 9784174
Change global Fates tests to include MOSART
ekluzek a2a02be
For spinup testmods check if the ROF component is MOSART and then set…
ekluzek 93341ff
Switch CAM grid tests away from stub ROF so remove the Rs in the comp…
ekluzek 9688587
Change Clm60 tests with CISM to ones with Crujra forcing as that's wh…
ekluzek 78f095a
Update science support to remove from pre-CLM60 compsets and have on …
ekluzek 5ae5aca
Change all I1Pt compsets to have a RsGs for stub ROF and stub GLC end…
ekluzek 0ca3907
Change Clm50 compsets refererences to Clm60 compsets and update resol…
ekluzek 9e54d47
Add a new Clm60 BgcCrop spinup compset for CPLHIST forcing that can b…
ekluzek 540b981
Change the CPLHIST 1850 spinup compset to Clm60
ekluzek 26977d0
Change Clm50 compsets to use DGLC, and make them consistently use Gs …
ekluzek f6fed61
Fix a few things to make sure Gs is in the compset name when needed a…
ekluzek 6e8e8df
Update compset name, which isn't strictly needed, but just to make su…
ekluzek 3bcedb2
Fix #4129 remove izumi_nag tests from aux_cime_baselines testlist and…
ekluzek 5fa559c
Fix a couple Fates compsets and tests
ekluzek 20e0ffa
Remove the VIC compsets and mention of use_vichydro from the user_nl_…
ekluzek 8b80af9
Correct compset name so that the python sys tests will pass
ekluzek e4da344
Remove mention of VIC in the documentation
ekluzek 389f76d
Indent the namelist which is needed for the doc build to be happy
ekluzek 7bc975f
Remove instances of BGCDV and use_cndv in compsets and tests
ekluzek afcb4f4
Remove references to the BGCDV model that's being deprecated, also re…
ekluzek 33277a1
A few more clarifications on DGVM things
ekluzek 38d4a8d
Update note on use_cndv
ekluzek 78f8dcd
Remove NWP-BGC or NWP-BGC-Crop compsets and tests
ekluzek 5feb38c
Update notes about clm4_5 namelist items that may be retained, or dep…
ekluzek e69e1e0
Add a simple physics testmod to test the clm4_5 physics options that …
ekluzek cee030e
Move the clm45cam4 test to clm50cam4
ekluzek e2ecc82
Change test for CMIP6 ndep for one stream to two streams since one is…
ekluzek 68f0f00
Change name of testmod to be more descriptive
ekluzek 7e8e3ba
Remove the oldhyd test and testmod
ekluzek e165c2c
Remove the no_subgrid_fluxes test and testmod
ekluzek 6fef9f7
Update the tillage/remove-residue test to Clm60, these are features t…
ekluzek 96204a5
Add note about the namelist options in oldhyd and no_subgrid_fluxes t…
ekluzek 2c3a293
Merge branch 'master' into update_compsets_to_use_dglc
ekluzek 04dbe51
Seperate the bgcCropSimplePhysics testmod into two so the base versio…
ekluzek c35af13
Merge branch 'update_compsets_to_use_dglc' of github.com:ekluzek/CTSM…
ekluzek 1bc367b
Move the finundated setting from SimplePhysics to bgcCropSimplePhysic…
ekluzek dae78dd
Remove all of the Clm45 tests and remove the FireLi2014Qian testmod t…
ekluzek 71f6eab
Remove all of the Clm45 compsets
ekluzek 6a7ffe1
Remove ability to set CLM45 in the long compset name and remove the c…
ekluzek 01d1a8f
Remove mention of CLM45
ekluzek 374e846
Try to fix the doc-build problem
ekluzek ed6f6cf
Add blank line before the literal block which seems to be needed for …
ekluzek 25db569
Update remaining Clm50 compsets to use DGLC if they aren't Gs, or add…
ekluzek 71f104d
Update doc/source/tech_note/Glacier/CLM50_Tech_Note_Glacier.rst
ekluzek d3ef3cc
Changes from the code review with @slevis-lmwg remove some of the dyn…
ekluzek f1e1164
Merge branch 'update_compsets_to_use_dglc' of github.com:ekluzek/CTSM…
ekluzek de54133
Update doc/source/tech_note/Glacier/CLM50_Tech_Note_Glacier.rst
ekluzek 4008844
Fix case of MOSART to lowercase so will work
ekluzek dab47db
Correct mizuRoute compsets and tests with the nldas and 5x5_amazon on…
ekluzek ddf5f05
Correct the new mizuRoute alias with stub GLC
ekluzek bdecf28
Remove mention of clm4_5 physics for the purpose of tracking major an…
ekluzek 985abf1
Add notes on the testlists included
ekluzek dceff12
Rename the check compset files
ekluzek a1cedb4
Turn into a subroutine that can be called with different patterns and…
ekluzek a31ec70
Update names referenced to the new name
ekluzek dbf7e3d
Add exec permission to script
ekluzek 022b76c
Add checking for CISM options
ekluzek 1b5f737
Make all NoAnthro alises explicit that they use Rtm
ekluzek 1f0bd43
Add another function that checks if something is NOT in the alias tha…
ekluzek 9f23a17
Make sure DGLC is used unless GLC is specified
ekluzek 15daf21
If forcing not specified make sure GSWP3 is being used
ekluzek 1d7099c
Get the checks that were failing to work by shortening the string
ekluzek 7fccaf0
Merge tag 'ctsm5.4.048' into update_compsets_to_use_dglc
ekluzek 7542359
Add a comment for each of the Clm50 tests with Cruv7, most of them sh…
ekluzek 9d67fcf
Remove a duplicated test, we don't need a GSWP3 forcing version
ekluzek 1a2d12e
Make most of the Clm50 Cruv7 compsets tests with default forcing (exc…
ekluzek be58dbd
Remove a duplicated test
ekluzek 558b48f
Remove all but one of the Cruv7 compsets
ekluzek caac0d0
Remove some unneeded tests as pointed out by #4148
ekluzek 66d5fad
Merge tag 'ctsm5.4.049' into update_compsets_to_use_dglc
ekluzek 5ca0c73
Set DGLC coupling to half a day so the 12hour test will work
ekluzek 43c110c
Add the missing Clm50 compset
ekluzek 58bf331
Set GLC_NCPL for the compsets that set ROF_NCPL to so that they will…
ekluzek e9c570c
Make FatesCru tests to use default forcing, and update Cruv7 tests in…
ekluzek 813ddcb
More work to make expected fails and testlist consistent with each other
ekluzek ca9ddc1
Update .github/workflows/check-compset-aliases.sh
ekluzek ea15174
Update doc/source/users_guide/overview/introduction.rst
ekluzek 4f8d62a
Update doc/source/users_guide/overview/introduction.rst
ekluzek 967294e
Remove math equation for population density
ekluzek 2c5f9e4
Merge branch 'update_compsets_to_use_dglc' of github.com:ekluzek/CTSM…
ekluzek 76999d0
Fix compset names in two fates tests
ekluzek 9b58012
Update doc/source/users_guide/overview/introduction.rst
ekluzek a65f1fd
Add some clarification notes about the SSP and SSPMATRIX tests as not…
ekluzek fb6ee74
Merge branch 'update_compsets_to_use_dglc' of github.com:ekluzek/CTSM…
ekluzek 56488ea
Remove the rtmColdSSP testmod and change tests that use it to default
ekluzek 9a2d457
Clarify that SSP tests can be used for both clm50 and clm60, but they…
ekluzek b6d20f9
Add a standard resolution SSPMATRIX test to ctsm_sci so that we have …
ekluzek a095666
Add the multi-instances tests that fail due to DGLC to Expected fails
ekluzek 48ed6ab
Remove the CMIP6ndepTwoVars testmod and test, since CTSM doesn't know…
ekluzek 730319d
Add missing setting for GLC_NCPL
ekluzek d0db659
Merge tag 'ctsm5.4.050' into update_compsets_to_use_dglc
ekluzek 9a62c5c
A few more notes on compsets that aren't tested or being deprecated
ekluzek 5aaa487
Clarify that the flexCN_FUN test runs with flexCN and FUN on, but LUN…
ekluzek 3a1fea4
Add the mizu testlist to the list of tests-suites to run for release
ekluzek f8eea1f
Start working on Change files
ekluzek cb2eaba
Merge branch 'update_compsets_to_use_dglc' of github.com:ekluzek/CTSM…
ekluzek 90c3321
Make changes as suggested by Co-pilot in VS-code. Make sure IFS is se…
ekluzek a4e695d
OK doing the CO-pilot recommendations (mostly putting variables in qu…
ekluzek 438cd85
A few more final changes recommended by co-pilot, more variables with…
ekluzek ce08f29
Add new fails to expected fails, remove a test that was duplicated in…
ekluzek File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Some comments aren't visible on the classic Files Changed page.
There are no files selected for viewing
Large diffs are not rendered by default.
Oops, something went wrong.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Large diffs are not rendered by default.
Oops, something went wrong.
6 changes: 5 additions & 1 deletion
6
cime_config/testdefs/testmods_dirs/clm/ADspinup/shell_commands
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,5 +1,9 @@ | ||
| #!/bin/bash | ||
|
|
||
| ./xmlchange CLM_ACCELERATED_SPINUP="on" | ||
| ./xmlchange MOSART_MODE="NULL" | ||
|
|
||
| COMP_ROF=`./xmlquery --value COMP_ROF` | ||
| if [[ $COMP_ROF == "MOSART" ]]; then | ||
| ./xmlchange MOSART_MODE="NULL" | ||
| fi | ||
|
|
6 changes: 5 additions & 1 deletion
6
cime_config/testdefs/testmods_dirs/clm/ciso_monthly_matrixcn_spinup/shell_commands
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,2 +1,6 @@ | ||
| ./xmlchange CLM_ACCELERATED_SPINUP=sasu | ||
| ./xmlchange MOSART_MODE=NULL | ||
|
|
||
| COMP_ROF=`./xmlquery --value COMP_ROF` | ||
| if [[ $COMP_ROF == "MOSART" ]]; then | ||
| ./xmlchange MOSART_MODE="NULL" | ||
| fi |
5 changes: 4 additions & 1 deletion
5
cime_config/testdefs/testmods_dirs/clm/monthly_matrixcn_fast_spinup/shell_commands
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,4 +1,7 @@ | ||
| ./xmlchange CLM_ACCELERATED_SPINUP=sasu | ||
| ./xmlchange DATM_YR_START=1901,DATM_YR_END=1902 | ||
| ./xmlchange MOSART_MODE=NULL | ||
|
|
||
| COMP_ROF=`./xmlquery --value COMP_ROF` | ||
| if [[ $COMP_ROF == "MOSART" ]]; then | ||
| ./xmlchange MOSART_MODE="NULL" | ||
| fi |
5 changes: 4 additions & 1 deletion
5
cime_config/testdefs/testmods_dirs/clm/rtmColdSSP/shell_commands
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,3 +1,6 @@ | ||
| #!/bin/bash | ||
|
|
||
| ./xmlchange MOSART_MODE="NULL" | ||
| COMP_ROF=`./xmlquery --value COMP_ROF` | ||
| if [[ $COMP_ROF == "MOSART" ]]; then | ||
| ./xmlchange MOSART_MODE="NULL" | ||
| fi |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -16,11 +16,11 @@ Compared with CLM4.5 (:ref:`Oleson et al. 2013 <Olesonetal2013>`), CLM5.0 contai | |
|
|
||
| - A number of namelist parameters offer fine-grained control over glacier behavior in different regions of the world (section :numref:`Glacier regions`). (The options used outside of Greenland and Antarctica reproduce the standard CLM4.5 glacier behavior.) | ||
|
|
||
| - CLM can now keep its glacier areas and elevations in sync with CISM when running with an evolving ice sheet. (However, in typical configurations, the ice sheet geometry still remains fixed throughout the run.) | ||
| - CLM can now keep its glacier areas and elevations in sync with CISM as the ice sheet is evolving. (However, in typical configurations, the ice sheet geometry still remains fixed throughout the run, since the data glacier model is used [DGLC as part of CDEPS].) | ||
|
|
||
| - The downscaling to elevation classes now includes downwelling longwave radiation and partitioning of precipitation into rain vs. snow (section :numref:`Multiple elevation class scheme`). | ||
|
|
||
| - Other land units within the CISM domain undergo the same downscaling as the glacier land unit, and surface mass balance is computed for the natural vegetated land unit. This allows CLM to produce glacial inception when running with an evolving ice sheet model. | ||
| - Other land units within the CISM domain undergo the same downscaling as the glacier land unit, and surface mass balance is computed for the natural vegetated land unit. This allows CLM to produce glacial inception when running with the CISM evolving ice sheet model. | ||
|
|
||
| - There have also been substantial improvements to CLM's snow physics, as described in other chapters of this document. | ||
|
|
||
|
|
@@ -29,27 +29,27 @@ Compared with CLM4.5 (:ref:`Oleson et al. 2013 <Olesonetal2013>`), CLM5.0 contai | |
| Overview | ||
| -------- | ||
|
|
||
| CLM is responsible for computing two quantities that are passed to the ice sheet model: | ||
| CLM is responsible for computing two quantities that are passed to the ice sheet model (either CISM, DGLC or SGLC): | ||
|
|
||
| #. Surface mass balance (SMB) - the net annual accumulation/ablation of mass at the upper surface (section :numref:`Computation of the surface mass balance`) | ||
|
|
||
| #. Ground surface temperature, which serves as an upper boundary condition for CISM's temperature calculation The ice sheet model is typically run at much higher resolution than CLM (e.g., :math:`\sim`\ 5 km rather than :math:`\sim`\ 100 km). To improve the downscaling from CLM's grid to the ice sheet grid, the glaciated portion of each grid cell is divided into multiple elevation classes (section :numref:`Multiple elevation class scheme`). The above quantities are computed separately in each elevation class. The CESM coupler then computes high-resolution quantities via horizontal and vertical interpolation, and passes these high-resolution quantities to CISM. | ||
|
|
||
| There are several reasons for computing the SMB in CLM rather than in CISM: | ||
| There are several reasons for computing the SMB in CLM rather than in CISM/DGLC: | ||
|
|
||
| #. It is much cheaper to compute the SMB in CLM for :math:`\sim`\ 10 elevation classes than in CISM. For example, suppose we are running CLM at a resolution of :math:`\sim`\ 50 km and CISM at :math:`\sim`\ 5 km. Greenland has dimensions of about 1000 x 2000 km. For CLM we would have 20 x 40 x 10 = 8,000 columns, whereas for CISM we would have 200 x 400 = 80,000 columns. | ||
|
|
||
| #. We can use the sophisticated snow physics parameterization already in CLM instead of implementing a separate scheme for CISM. Any improvements to CLM are applied to ice sheets automatically. | ||
| #. We can use the sophisticated snow physics parameterization already in CLM instead of implementing a separate scheme for CISM/DGLC. Any improvements to CLM are applied to ice sheets automatically. | ||
|
|
||
| #. The atmosphere model can respond during runtime to ice-sheet surface changes (even in the absence of two-way feedbacks with CISM). As shown by :ref:`Pritchard et al. (2008)<Pritchardetal2008>`, runtime albedo feedback from the ice sheet is critical for simulating ice-sheet retreat on paleoclimate time scales. Without this feedback the atmosphere warms much less, and the retreat is delayed. | ||
| #. The atmosphere model can respond during runtime to ice-sheet surface changes (even in the absence of two-way feedbacks when DGLC is used rather than CISM). As shown by :ref:`Pritchard et al. (2008)<Pritchardetal2008>`, runtime albedo feedback from the ice sheet is critical for simulating ice-sheet retreat on paleoclimate time scales. Without this feedback the atmosphere warms much less, and the retreat is delayed. | ||
|
|
||
| #. The improved SMB is potentially available in CLM for all glaciated grid cells (e.g., in the Alps, Rockies, Andes, and Himalayas), not just those which are part of ice sheets. | ||
|
|
||
| In typical runs, CISM is not evolving; CLM computes the SMB and sends it to CISM, but CISM's ice sheet geometry remains fixed over the course of the run. In these runs, CISM serves two roles in the system: | ||
| In typical runs, DGLC is used and the ice sheet is not evolving; CLM computes the SMB and sends it to DGLC, but DGLC's ice sheet geometry remains fixed over the course of the run. In these runs, DGLC serves two roles in the system: | ||
|
|
||
| #. Over the CISM domain (typically Greenland in CESM2), CISM dictates glacier areas and topographic elevations, overriding the values on CLM's surface dataset. CISM also dictates the elevation of non-glacier land units in its domain, and only in this domain are atmospheric fields downscaled to non-glacier land units. (So if you run with a stub glacier model - SGLC - then glacier areas and elevations will be taken entirely from CLM's surface dataset, and no downscaling will be done over non-glacier land units.) | ||
| #. Over the DGLC domain (typically Greenland in CESM), DGLC dictates glacier areas and topographic elevations, overriding the values on CLM's surface dataset. DGLC also dictates the elevation of non-glacier land units in its domain, and only in this domain are atmospheric fields downscaled to non-glacier land units. (So if you run with a stub glacier model - SGLC - then glacier areas and elevations will be taken entirely from CLM's surface dataset, and no downscaling will be done over non-glacier land units.) | ||
|
Contributor
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I think this needs some adjustment as well. The last part applies to both SGLC and DGLC. |
||
|
|
||
| #. CISM provides the grid onto which SMB is downscaled. (If you run with SGLC then SMB will still be computed in CLM, but it won't be downscaled to a high-resolution ice sheet grid.) | ||
| #. DGLC provides the grid onto which SMB is downscaled. (If you run with SGLC then SMB will still be computed in CLM, but it won't be downscaled to a high-resolution ice sheet grid.) | ||
|
ekluzek marked this conversation as resolved.
|
||
|
|
||
| It is also possible to run CESM with an evolving ice sheet. In this case, CLM responds to CISM's evolution by adjusting the areas of the glacier land unit and each elevation class within this land unit, as well as the mean topographic heights of each elevation class. Thus, CLM's glacier areas and elevations remain in sync with CISM's. Conservation of mass and energy is done as for other landcover change (see Chapter :numref:`rst_Transient Landcover Change`). | ||
|
|
||
|
|
@@ -80,7 +80,7 @@ The world's glaciers and ice sheets are broken down into a number of different r | |
|
|
||
| b. Ice runoff from snow capping is melted (generating a negative sensible heat flux) and runs off as liquid. This matches the behavior for non-glacier columns. This is appropriate in regions that have little iceberg calving in reality. This can be important to avoid unrealistic cooling of the ocean and consequent runaway sea ice growth. | ||
|
|
||
| The default behaviors for the world's glacier and ice sheet regions are described in :numref:`Table Glacier region behaviors`. Note that the Greenland region stops at the edge of Greenland as defined by CISM. This means that, by default, SMB is not computed for grid cells outside Greenland but within the CISM domain. (This treatment of the non-Greenland portion of the CISM domain as being the same as the world's mountain glaciers rather than like Greenland itself is mainly for the sake of avoiding unrealistic fluxes from the Canadian archipelago that can potentially result in runaway sea ice growth in that region.) | ||
| The default behaviors for the world's glacier and ice sheet regions are described in :numref:`Table Glacier region behaviors`. Note that the Greenland region stops at the edge of Greenland as defined by CISM/DGLC. This means that, by default, SMB is not computed for grid cells outside Greenland but within the CISM/DGC domain. (This treatment of the non-Greenland portion of the CISM/DGC domain as being the same as the world's mountain glaciers rather than like Greenland itself is mainly for the sake of avoiding unrealistic fluxes from the Canadian archipelago that can potentially result in runaway sea ice growth in that region.) | ||
|
ekluzek marked this conversation as resolved.
Outdated
|
||
|
|
||
| .. _Table Glacier region behaviors: | ||
|
|
||
|
|
@@ -119,7 +119,7 @@ The atmospheric surface temperature, potential temperature, specific humidity, d | |
|
|
||
| This downscaling allows lower-elevation columns to undergo surface melting while columns at higher elevations remain frozen. This gives a more accurate simulation of summer melting, which is a highly nonlinear function of air temperature. | ||
|
|
||
| Within the CISM domain, this same downscaling procedure is also applied to all non-urban land units. The elevation of non-glacier land units is taken from the mean elevation of ice-free grid cells in CISM. This is done in order to keep the glaciated and non-glaciated portions of the CISM domain as consistent as possible. | ||
| Within the CISM/DGLC domain, this same downscaling procedure is also applied to all non-urban land units. The elevation of non-glacier land units is taken from the mean elevation of ice-free grid cells in CISM/DGLC. This is done in order to keep the glaciated and non-glaciated portions of the CISM/DGLC domain as consistent as possible. | ||
|
|
||
| In contrast to most CLM subgrid units, glacier\_mec columns can be active (i.e., have model calculations run there) even if their area is zero. These are known as "virtual" columns. This is done because the ice sheet model may require a SMB for some grid cells where CLM has zero glacier area in that elevation range. Virtual columns also facilitate glacial advance and retreat in the two-way coupled case. Virtual columns do not affect energy exchange between the land and the atmosphere. | ||
|
|
||
|
|
@@ -132,9 +132,9 @@ This section describes the computation of surface mass balance and associated ru | |
|
|
||
| The SMB of a glacier or ice sheet is the net annual accumulation/ablation of mass at the upper surface. Ablation is defined as the mass of water that runs off to the ocean. Not all the surface meltwater runs off; some of the melt percolates into the snow and refreezes. Accumulation is primarily by snowfall and deposition, and ablation is primarily by melting and evaporation/sublimation. CLM uses a surface-energy-balance (SEB) scheme to compute the SMB. In this scheme, the melting depends on the sum of the radiative, turbulent, and conductive fluxes reaching the surface, as described elsewhere in this document. | ||
|
|
||
| Note that the SMB typically is defined as the total accumulation of ice and snow, minus the total ablation. The SMB flux passed to CISM is the mass balance for ice alone, not snow. We can think of CLM as owning the snow, whereas CISM owns the underlying ice. Fluctuations in snow depth between 0 and 10 m water equivalent are not reflected in the SMB passed to CISM. In transient runs, this can lead to delays of a few decades in the onset of accumulation or ablation in a given glacier column. | ||
| Note that the SMB typically is defined as the total accumulation of ice and snow, minus the total ablation. The SMB flux passed to CISM/DGLC is the mass balance for ice alone, not snow. We can think of CLM as owning the snow, whereas CISM/DGLC owns the underlying ice. Fluctuations in snow depth between 0 and 10 m water equivalent are not reflected in the SMB passed to CISM/DGLC. In transient runs, this can lead to delays of a few decades in the onset of accumulation or ablation in a given glacier column. | ||
|
|
||
| SMB is computed and sent to the CESM coupler regardless of whether and where CISM is operating. However, the effect of SMB terms on runoff fluxes differs depending on whether and where CISM is evolving in two-way-coupled mode. This is described by the variable *glc\_dyn\_runoff\_routing*. (This is real-valued in the code to handle the edge case where a CLM grid cell partially overlaps with the CISM grid, but we describe it as a logical variable here for simplicity.) In typical cases where CISM is not evolving, *glc\_dyn\_runoff\_routing* will be false everywhere; in these cases, CISM's mass is not considered to be part of the coupled system. In cases where CISM is evolving and sending its own calving flux to the coupler, *glc\_dyn\_runoff\_routing* will be true over the CISM domain and false elsewhere. | ||
| SMB is computed and sent to the CESM coupler regardless of whether and where CISM/DGLC is operating. However, the effect of SMB terms on runoff fluxes differs depending on if CISM is used as the ice sheet is evolving in a two-way-coupled mode. This is described by the variable *glc\_dyn\_runoff\_routing*. (This is real-valued in the code to handle the edge case where a CLM grid cell partially overlaps with the CISM grid, but we describe it as a logical variable here for simplicity.) In typical cases where DGLC is used and the ice sheet is not evolving, *glc\_dyn\_runoff\_routing* will be false everywhere; in these cases, DGLC's mass is not considered to be part of the coupled system. In cases where CISM is used and the ice sheet is evolving and sending its own calving flux to the coupler, *glc\_dyn\_runoff\_routing* will be true over the CISM domain and false elsewhere. | ||
|
ekluzek marked this conversation as resolved.
Outdated
|
||
|
|
||
| Any snow capping (section :numref:`Runoff from glaciers and snow-capped surfaces`) is added to :math:`q_{ice,frz}`. Any liquid water (i.e., melted ice) below the snow pack in the glacier column is added to :math:`q_{ice,melt}`, then is converted back to ice to maintain a pure-ice column. Then the total SMB is given by :math:`q_{ice,tot}`: | ||
|
|
||
|
|
||
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@billsacks I misinterpreted this line here that with SGLC no downscaling will be done. Reading it again it's saying that with CISM the elevation of non-glacier land units is determined and atmospheric fields within are downscaled, but with SGLC this downscaling over non-glacier land units is NOT done. But, since line 48 says that it's talking about CISM in NOEVOLVE mode it appears that this downscaling now refers to DGLC in NOEVOLVE mode. But, I don't think that's true either. I think this really applies only when running with CISM.
So I took it to mean that no downscaling over glacier land units will happen with SGLC, but it's really that this special downscaling over non-glacier land units happens when running with CISM over glacier regions (so in Greenland). So both SGLC and DGLC%NOEVOLVE work the same way in that regard there is no special downscaling over non-glacier land units. And also both SGLC and DGLC will downscale over glacier land-units, because that's dictated by the surface dataset.
This means some of the changes I made to the Tech Note about DGLC%NOEVOLVE need to change a bit. But, also line 50 shouldn't be listed as applying to NOEVOLVE mode, it should appear somewhere else as a general statement that applies when the ice sheet is evolving as you are running with CISM.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@ekluzek - I think your current text is correct... I think your comments about needing to make adjustments are not right: from the perspective of CTSM, DGLC%NOEVOLVE should be the same as the old CISM%NOEVOLVE in these respects:
If I remember correctly, there is one key difference between DGLC%NOEVOLVE and CISM%NOEVOLVE: DGLC%NOEVOLVE handles the fluxes, and so glc_dyn_runoff_routing is true for DGLC%NOEVOLVE, whereas it was false for CISM%NOEVOLVE. This could require some adjustment to the text in the "Computation of surface mass balance" section, if you haven't already adjusted it: I think it's now the case that glc_dyn_runoff_routing will typically be true for any run with either DGLC or CISM (given that CISM is now typically just used for EVOLVE runs).
It would be good to check all of this with @Katetc .
Thank you for your work on this!!!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
One thing I confirmed in looking at what's different between cases with DGLC%NOEVOLVE and SGLC is that gld_do_dynglacier==.true. because GLC_TWO_WAY_COUPLING==TRUE for DGLC and is FALSE for SGLC. This is something set in CMEPS.
I think the upshot with that is that DGLC is providing the topographic heights. Which goes along with one thing that @billsacks says above here
I had trouble isolating a point over greenland that didn't have any glacier. But, in comparing TBOT (which is downscaled over greenland) I see differences in it over the Greenland coastline. So I think this sufficiently confirms that question.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
In terms of this:
Yes, I could confirm this by going through the code. glc_dyn_runoff_routing gets set by the glacier region, so over Greenland it'll be TRUE for either DGLC or CISM.