Skip to content
Merged
Show file tree
Hide file tree
Changes from 31 commits
Commits
Show all changes
32 commits
Select commit Hold shift + click to select a range
f0199d7
Merging vertical N leaching with CTSM5.3.027
Mar 6, 2025
0b2e352
change the address in spin-up check tool
May 6, 2025
0bfeb0d
Merge tag 'ctsm5.3.040' into n-vertical-movement
May 6, 2025
c417cbb
Revert SpinupStability_BGC_v10.ncl changes as not pertinent to this PR
slevis-lmwg Jul 28, 2025
60b2aa0
Merge tag 'ctsm5.3.065' into n-vertical-movement
slevis-lmwg Aug 4, 2025
614487d
Make use_nvmovement a namelist parameter and make it default .false.
slevis-lmwg Aug 5, 2025
8d34bc7
Change comment to make consistent with the code
slevis-lmwg Aug 5, 2025
d175bb7
QIN & QOUT needed for b4b restarts and not needed in history
slevis-lmwg Aug 5, 2025
9e62984
Correct comment update committed earlier today
slevis-lmwg Aug 5, 2025
5b9c0e2
Reverting mistake: QIN & QOUT do not help with bit-for-bit restart
slevis-lmwg Aug 5, 2025
93ba4bb
New testdefs for aux_clm test with use_nvmovement = .true.
slevis-lmwg Aug 6, 2025
8ffd271
Remove namelist abort when both use_nvmovement and matrixcn are .true.
slevis-lmwg Aug 6, 2025
275dc23
Update testlist_clm.xml for Nvmovement tests with and without matrixcn
slevis-lmwg Aug 6, 2025
f3b4381
Draft ChangeLog/ChangeSum
slevis-lmwg Aug 6, 2025
51d6f02
Prevent use_nvmovement = .true. when use_nitrif_denitrif = .false.
slevis-lmwg Aug 7, 2025
9a5285e
Rename testmod directory Nvmovement --> nvmovement
slevis-lmwg Aug 20, 2025
9603a08
Change Nvmovement to nvmovement in test-suite tests
slevis-lmwg Aug 20, 2025
8646005
Update draft ChangeLog/Sum
slevis-lmwg Aug 20, 2025
dff95b9
Update comment as recommended in code review
slevis-lmwg Aug 20, 2025
04d32d3
Update/correct the nvmovement tests as suggested in the code review
slevis-lmwg Aug 20, 2025
0cebccd
Change h2o to H2O in comments for consistency with existing examples
slevis-lmwg Aug 20, 2025
b84826c
Correct dissove to dissolve in comment
slevis-lmwg Aug 20, 2025
1a31282
Split variable assignments to one line per assignment
slevis-lmwg Aug 20, 2025
57aeebf
Replace 0.001 with mmh2o_to_m3h2o_per_m2
slevis-lmwg Aug 20, 2025
169523b
Make comment clearer for wafc, wafc2
slevis-lmwg Aug 20, 2025
87ed1ea
Fix comment about use_nvmovement in namelist_definition_ctsm.xml
slevis-lmwg Aug 22, 2025
cda9e19
Add/correct a couple of comments in the code
slevis-lmwg Aug 22, 2025
7d946d9
Replace disp (dissolve percentage) with dissolve_frac
slevis-lmwg Aug 22, 2025
c473c49
Rename variables pcl1, pcl2, qflx1, qflx2, and Dw as recommended
slevis-lmwg Aug 22, 2025
1cf9859
Merge tag 'ctsm5.3.071' into n-vertical-movement
slevis-lmwg Aug 25, 2025
09dbc06
Rename variables as recommended in code review
slevis-lmwg Aug 25, 2025
f9195c5
Final ChangeLog/Sum
slevis-lmwg Aug 26, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 7 additions & 0 deletions bld/CLMBuildNamelist.pm
Original file line number Diff line number Diff line change
Expand Up @@ -1006,6 +1006,13 @@ sub setup_cmdl_bgc {
if ( &value_is_true($nl->get_value($var)) && $nl_flags->{'soil_decomp_method'} ne "CENTURYKoven2013" ) {
$log->fatal_error("$var can only be on with CENTURYKoven2013 soil decomposition");
}

# Set use_nvmovement
$var = "use_nvmovement";
add_default($opts, $nl_flags->{'inputdata_rootdir'}, $definition, $defaults, $nl, $var);
Comment thread
slevis-lmwg marked this conversation as resolved.
if ( &value_is_true($nl->get_value($var)) && !&value_is_true($nl_flags->{'use_nitrif_denitrif'}) ) {
$log->fatal_error("$var cannot be on with use_nitrif_denitrif = .false.");
}
} # end bgc


Expand Down
1 change: 1 addition & 0 deletions bld/namelist_files/namelist_defaults_ctsm.xml
Original file line number Diff line number Diff line change
Expand Up @@ -2431,6 +2431,7 @@ lnd/clm2/surfdata_esmf/NEON/ctsm5.3.0/surfdata_1x1_NEON_TOOL_hist_2000_78pfts_c2
<use_lch4 >.true.</use_lch4>
<use_nitrif_denitrif soil_decomp_method="None" >.false.</use_nitrif_denitrif>
<use_nitrif_denitrif >.true.</use_nitrif_denitrif>
<use_nvmovement >.false.</use_nvmovement>

<!-- ===== FATES DEFAULTS =========== -->
<fates_electron_transport_model use_fates=".true.">FvCB1980</fates_electron_transport_model>
Expand Down
6 changes: 6 additions & 0 deletions bld/namelist_files/namelist_definition_ctsm.xml
Original file line number Diff line number Diff line change
Expand Up @@ -1002,6 +1002,12 @@ How LUNA and Photosynthesis (if needed) will get Leaf nitrogen content
lnc_opt = true get from leaf N from CN model
lnc_opt = false get based on LAI and fixed CN ratio from parameter file
</entry>
<entry id="use_nvmovement" type="logical" category="bgc"
group="clm_inparm" value=".false.">
use_nvmovement = true use soil nitrogen vertical movement
use_nvmovement = false do not use soil nitrogen vertical movement
use_nvmovement cannot be true while use_nitrif_denitrif is false
</entry>

Comment thread
slevis-lmwg marked this conversation as resolved.
<entry id="paramfile" type="char*512" category="datasets"
input_pathname="abs" group="clm_inparm" valid_values="" >
Expand Down
18 changes: 18 additions & 0 deletions cime_config/testdefs/testlist_clm.xml
Original file line number Diff line number Diff line change
Expand Up @@ -595,6 +595,24 @@
<option name="wallclock">00:50:00</option>
</options>
</test>
<test name="ERP_D_Ld5" grid="f10_f10_mg37" compset="IHistClm60Bgc" testmods="clm/decStart--clm/nvmovement">
<machines>
<machine name="izumi" compiler="nag" category="aux_clm"/>
</machines>
<options>
<option name="wallclock">01:00:00</option>
<option name="comment">Confirms that use_nvmovement = .true. works with bit-for-bit restarts in IHist</option>
</options>
</test>
<test name="ERP_D_Ld5" grid="f10_f10_mg37" compset="I1850Clm60BgcCrop" testmods="clm/nvmovement--clm/matrixcnOn">
<machines>
<machine name="derecho" compiler="intel" category="aux_clm"/>
</machines>
<options>
<option name="wallclock">00:40:00</option>
<option name="comment">Confirms that use_nvmovement = .true. works with bit-for-bit restarts when matrixcnOn</option>
</options>
</test>
<test name="ERS_D" grid="f10_f10_mg37" compset="I1850Clm60Sp" testmods="clm/ExcessIceStreams">
<machines>
<machine name="izumi" compiler="nag" category="aux_clm"/>
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
../default
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
use_nvmovement = .true.
85 changes: 85 additions & 0 deletions doc/ChangeLog
Comment thread
slevis-lmwg marked this conversation as resolved.
Original file line number Diff line number Diff line change
@@ -1,4 +1,89 @@
===============================================================
Tag name: ctsm5.3.072
Originator(s): jinmuluo (Jinmu Luo, Cornell University)
Date: Mon 25 Aug 2025 11:04:53 AM MDT
One-line Summary: New vertical movement scheme for soil nitrate

Purpose and description of changes
----------------------------------

This tag introduces a new vertical movement scheme for soil nitrate but sets its use to .false. by default. Details about the new scheme in the PR #2992.

Significant changes to scientifically-supported configurations
--------------------------------------------------------------

Does this tag change answers significantly for any of the following physics configurations?
(Details of any changes will be given in the "Answer changes" section below.)

[Put an [X] in the box for any configuration with significant answer changes.]

[ ] clm6_0

[ ] clm5_0

[ ] ctsm5_0-nwp

[ ] clm4_5


Bugs fixed
----------
List of CTSM issues fixed (include CTSM Issue # and description) [one per line]:
No corresponding github issue

Notes of particular relevance for users
---------------------------------------
Changes to CTSM's user interface (e.g., new/renamed XML or namelist variables):
use_nvmovement can be set by user

Changes made to namelist defaults (e.g., changed parameter values):
use_nvmovement defaults to .false.

Changes to documentation:
Comment thread
slevis-lmwg marked this conversation as resolved.
Planned for Jinmu's NSF-NCAR visit this Fall

Notes of particular relevance for developers:
---------------------------------------------
Changes to tests or testing:
New tests with nvmovement testmods, one with matrixcnOn and one with it off
ERP_D_Ld5.f10_f10_mg37.I1850Clm60BgcCrop.derecho_intel.clm-nvmovement--clm-matrixcnOn
ERP_D.f10_f10_mg37.IHistClm60Bgc.derecho_intel.clm-decStart--clm-nvmovement

Testing summary:
----------------

[PASS means all tests PASS; OK means tests PASS other than expected fails.]

build-namelist tests (if CLMBuildNamelist.pm has changed):

derecho -

regular tests (aux_clm: https://github.com/ESCOMP/CTSM/wiki/System-Testing-Guide#pre-merge-system-testing):

derecho ----- OK
izumi -------

fates tests: (give name of baseline if different from CTSM tagname, normally fates baselines are fates-<FATES TAG>-<CTSM TAG>)
derecho -----
izumi -------

any other testing (give details below):

ctsm_sci
derecho ----

Answer changes
--------------

Changes answers relative to baseline: No

Other details
-------------
Pull Requests that document the changes (include PR ids):
https://github.com/ESCOMP/ctsm/pull/2992

===============================================================
===============================================================
Tag name: ctsm5.3.071
Originator(s): samrabin (Sam Rabin, UCAR/TSS)
Date: Fri Aug 22 13:49:25 MDT 2025
Expand Down
1 change: 1 addition & 0 deletions doc/ChangeSum
Comment thread
slevis-lmwg marked this conversation as resolved.
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
Tag Who Date Summary
============================================================================================================================
ctsm5.3.072 jinmuluo 08/xx/2025 New vertical movement scheme for soil nitrate
ctsm5.3.071 samrabin 08/22/2025 Merge b4b-dev to master
ctsm5.3.070 glemieux 08/22/2025 Update default FATES parameter file and add FATES managed fire namelist option
ctsm5.3.069 samrabin 08/12/2025 Add SystemTests to run subset_data and then CTSM
Expand Down
18 changes: 15 additions & 3 deletions src/biogeochem/CNDriverMod.F90
Original file line number Diff line number Diff line change
Expand Up @@ -44,6 +44,7 @@ module CNDriverMod
use SoilWaterRetentionCurveMod , only : soil_water_retention_curve_type
use CLMFatesInterfaceMod , only : hlm_fates_interface_type
use CropReprPoolsMod , only : nrepr
use SoilHydrologyType , only: soilhydrology_type
!
! !PUBLIC TYPES:
implicit none
Expand Down Expand Up @@ -1013,7 +1014,7 @@ subroutine CNDriverLeaching(bounds, &
c13_cnveg_carbonstate_inst,c14_cnveg_carbonstate_inst, &
c13_cnveg_carbonflux_inst,c14_cnveg_carbonflux_inst, &
c13_soilbiogeochem_carbonstate_inst,c14_soilbiogeochem_carbonstate_inst,&
c13_soilbiogeochem_carbonflux_inst,c14_soilbiogeochem_carbonflux_inst)
c13_soilbiogeochem_carbonflux_inst,c14_soilbiogeochem_carbonflux_inst, soilhydrology_inst)
!
! !DESCRIPTION:
! Update the nitrogen leaching rate as a function of soluble mineral N and total soil water outflow.
Expand All @@ -1028,6 +1029,8 @@ subroutine CNDriverLeaching(bounds, &
use clm_time_manager , only: is_first_step_of_this_run_segment,is_beg_curr_year,is_end_curr_year,get_curr_date
use CNSharedParamsMod , only: use_matrixcn
use SoilBiogeochemDecompCascadeConType, only: use_soil_matrixcn
use SoilNitrogenMovementMod , only: SoilNitrogenMovement
use clm_varctl, only : use_nvmovement
!
! !ARGUMENTS:
type(bounds_type) , intent(in) :: bounds
Expand All @@ -1045,6 +1048,7 @@ subroutine CNDriverLeaching(bounds, &
type(cnveg_carbonflux_type) , intent(inout) :: cnveg_carbonflux_inst
type(cnveg_carbonstate_type) , intent(inout) :: cnveg_carbonstate_inst
type(soilstate_type) , intent(inout) :: soilstate_inst
type(soilhydrology_type) , intent(in) :: soilhydrology_inst
type(soilbiogeochem_state_type) , intent(inout) :: soilbiogeochem_state_inst
type(soilbiogeochem_carbonflux_type) , intent(inout) :: soilbiogeochem_carbonflux_inst
type(soilbiogeochem_carbonstate_type) , intent(inout) :: soilbiogeochem_carbonstate_inst
Expand All @@ -1062,8 +1066,16 @@ subroutine CNDriverLeaching(bounds, &
type(soilbiogeochem_carbonflux_type) , intent(inout) :: c14_soilbiogeochem_carbonflux_inst
integer p,fp,yr,mon,day,sec
!-----------------------------------------------------------------------

! Mineral nitrogen dynamics (deposition, fixation, leaching)

! soil nitrate fast aqueous movement, leaching will be evaluted here
if (use_nitrif_denitrif .and. use_nvmovement) then
call t_startf('SoilNitrogenMovementMod')
call SoilNitrogenMovement(bounds, num_bgc_soilc, filter_bgc_soilc, waterstatebulk_inst, &
soilstate_inst, soilhydrology_inst, soilbiogeochem_nitrogenflux_inst, soilbiogeochem_nitrogenstate_inst)
call t_stopf('SoilNitrogenMovementMod')
end if

! Mineral nitrogen dynamics: deposition, fixation. If use_nvmoment false, also leaching.

call t_startf('SoilBiogeochemNLeaching')
call SoilBiogeochemNLeaching(bounds, num_bgc_soilc, filter_bgc_soilc, &
Expand Down
6 changes: 4 additions & 2 deletions src/biogeochem/CNVegetationFacade.F90
Original file line number Diff line number Diff line change
Expand Up @@ -96,6 +96,7 @@ module CNVegetationFacade
use SoilBiogeochemPrecisionControlMod , only: SoilBiogeochemPrecisionControl
use SoilWaterRetentionCurveMod , only : soil_water_retention_curve_type
use CLMFatesInterfaceMod , only : hlm_fates_interface_type
use SoilHydrologyType , only : soilhydrology_type
!
implicit none
private
Expand Down Expand Up @@ -1074,7 +1075,7 @@ subroutine EcosystemDynamicsPostDrainage(this, bounds, num_allc, filter_allc, &
soilbiogeochem_carbonflux_inst, soilbiogeochem_carbonstate_inst, &
c13_soilbiogeochem_carbonflux_inst, c13_soilbiogeochem_carbonstate_inst, &
c14_soilbiogeochem_carbonflux_inst, c14_soilbiogeochem_carbonstate_inst, &
soilbiogeochem_nitrogenflux_inst, soilbiogeochem_nitrogenstate_inst)
soilbiogeochem_nitrogenflux_inst, soilbiogeochem_nitrogenstate_inst, soilhydrology_inst)
!
! !DESCRIPTION:
! Do the main science for CN vegetation that needs to be done after hydrology-drainage
Expand Down Expand Up @@ -1113,6 +1114,7 @@ subroutine EcosystemDynamicsPostDrainage(this, bounds, num_allc, filter_allc, &
type(soilbiogeochem_carbonstate_type) , intent(inout) :: c14_soilbiogeochem_carbonstate_inst
type(soilbiogeochem_nitrogenflux_type) , intent(inout) :: soilbiogeochem_nitrogenflux_inst
type(soilbiogeochem_nitrogenstate_type) , intent(inout) :: soilbiogeochem_nitrogenstate_inst
type(soilhydrology_type) , intent(in) :: soilhydrology_inst
!
! !LOCAL VARIABLES:

Expand All @@ -1135,7 +1137,7 @@ subroutine EcosystemDynamicsPostDrainage(this, bounds, num_allc, filter_allc, &
this%c13_cnveg_carbonstate_inst,this%c14_cnveg_carbonstate_inst, &
this%c13_cnveg_carbonflux_inst,this%c14_cnveg_carbonflux_inst, &
c13_soilbiogeochem_carbonstate_inst,c14_soilbiogeochem_carbonstate_inst,&
c13_soilbiogeochem_carbonflux_inst,c14_soilbiogeochem_carbonflux_inst)
c13_soilbiogeochem_carbonflux_inst,c14_soilbiogeochem_carbonflux_inst, soilhydrology_inst)

! Set controls on very low values in critical state variables

Expand Down
17 changes: 15 additions & 2 deletions src/biogeophys/SoilHydrologyType.F90
Original file line number Diff line number Diff line change
Expand Up @@ -51,6 +51,8 @@ Module SoilHydrologyType
real(r8), pointer :: top_ice_col (:) ! col VIC ice len in top layers
real(r8), pointer :: top_moist_limited_col(:) ! col VIC soil moisture in top layers, limited to no greater than top_max_moist_col
real(r8), pointer :: ice_col (:,:) ! col VIC soil ice (kg/m2) for VIC soil layers
real(r8), pointer :: qout_col (:,:) ! flux of water out of soil layer [mm H2O/s]
real(r8), pointer :: qin_col (:,:) ! flux of water into soil layer [mm H2O/s]

contains

Expand Down Expand Up @@ -142,14 +144,16 @@ subroutine InitAllocate(this, bounds)
allocate(this%top_ice_col (begc:endc)) ; this%top_ice_col (:) = nan
allocate(this%top_moist_limited_col(begc:endc)) ; this%top_moist_limited_col(:) = nan
allocate(this%ice_col (begc:endc,nlayert)) ; this%ice_col (:,:) = nan
allocate(this%qout_col (begc:endc,nlevsoi)) ; this%qout_col (:,:) = nan
allocate(this%qin_col (begc:endc,nlevsoi)) ; this%qin_col (:,:) = nan

end subroutine InitAllocate

!------------------------------------------------------------------------
subroutine InitHistory(this, bounds, use_aquifer_layer)
!
! !USES:
use histFileMod , only : hist_addfld1d
use histFileMod , only : hist_addfld1d, hist_addfld2d
!
! !ARGUMENTS:
class(soilhydrology_type) :: this
Expand Down Expand Up @@ -192,6 +196,16 @@ subroutine InitHistory(this, bounds, use_aquifer_layer)
avgflag='A', long_name='perched water table depth (natural vegetated and crop landunits only)', &
ptr_col=this%zwt_perched_col, l2g_scale_type='veg')

this%qout_col(begc:endc, :) = spval
call hist_addfld2d (fname="QOUT", units='mm H2O/s', type2d='levsoi', &
avgflag='A', long_name='flux of water out of soil layer', &
ptr_col=this%qout_col, default='inactive')

this%qin_col(begc:endc, :) = spval
call hist_addfld2d (fname="QIN", units='mm H2O/s', type2d='levsoi', &
avgflag='A', long_name='flux of water into soil layer', &
ptr_col=this%qin_col, default='inactive')

end subroutine InitHistory

!-----------------------------------------------------------------------
Expand Down Expand Up @@ -287,7 +301,6 @@ subroutine Restart(this, bounds, ncid, flag)
character(len=*) , intent(in) :: flag ! 'read' or 'write'
!
! !LOCAL VARIABLES:
integer :: j,c ! indices
logical :: readvar ! determine if variable is on initial file
!-----------------------------------------------------------------------

Expand Down
19 changes: 14 additions & 5 deletions src/biogeophys/SoilWaterMovementMod.F90
Original file line number Diff line number Diff line change
Expand Up @@ -579,7 +579,8 @@ subroutine soilwater_zengdecker2009(bounds, num_hydrologyc, filter_hydrologyc, &
zwt => soilhydrology_inst%zwt_col , & ! Input: [real(r8) (:) ] water table depth (m)
icefrac => soilhydrology_inst%icefrac_col , & ! Input: [real(r8) (:,:) ] fraction of ice
hkdepth => soilhydrology_inst%hkdepth_col , & ! Input: [real(r8) (:) ] decay factor (m)

qout_col => soilhydrology_inst%qout_col , & ! Output: [real(r8) (:,:) ] soil water out of the bottom, mm h2o/s
qin_col => soilhydrology_inst%qin_col , & ! Output: [real(r8) (:,:) ] soil water into the bottom, mm h2o/s
smpmin => soilstate_inst%smpmin_col , & ! Input: [real(r8) (:) ] restriction for min of soil potential (mm)
watsat => soilstate_inst%watsat_col , & ! Input: [real(r8) (:,:) ] volumetric soil water at saturation (porosity)
hksat => soilstate_inst%hksat_col , & ! Input: [real(r8) (:,:) ] hydraulic conductivity at saturation (mm H2O /s)
Expand Down Expand Up @@ -787,7 +788,8 @@ subroutine soilwater_zengdecker2009(bounds, num_hydrologyc, filter_hydrologyc, &
amx(c,j) = 0._r8
bmx(c,j) = dzmm(c,j)*(sdamp+1._r8/dtime) + dqodw1(c,j)
cmx(c,j) = dqodw2(c,j)

qin_col(c,j) = qin(c,j)
qout_col(c,j) = qout(c,j)
end do

! Nodes j=2 to j=nlevsoi-1
Expand All @@ -811,7 +813,8 @@ subroutine soilwater_zengdecker2009(bounds, num_hydrologyc, filter_hydrologyc, &
amx(c,j) = -dqidw0(c,j)
bmx(c,j) = dzmm(c,j)/dtime - dqidw1(c,j) + dqodw1(c,j)
cmx(c,j) = dqodw2(c,j)

qin_col(c,j) = qin(c,j)
qout_col(c,j) = qout(c,j)
end do
end do

Expand All @@ -833,6 +836,8 @@ subroutine soilwater_zengdecker2009(bounds, num_hydrologyc, filter_hydrologyc, &
amx(c,j) = -dqidw0(c,j)
bmx(c,j) = dzmm(c,j)/dtime - dqidw1(c,j) + dqodw1(c,j)
cmx(c,j) = 0._r8
qin_col(c,j) = qin(c,j)
qout_col(c,j) = qout(c,j)

! next set up aquifer layer; hydrologically inactive
rmx(c,j+1) = 0._r8
Expand Down Expand Up @@ -883,6 +888,8 @@ subroutine soilwater_zengdecker2009(bounds, num_hydrologyc, filter_hydrologyc, &
amx(c,j+1) = -dqidw0(c,j+1)
bmx(c,j+1) = dzmm(c,j+1)/dtime - dqidw1(c,j+1) + dqodw1(c,j+1)
cmx(c,j+1) = 0._r8
qin_col(c,j) = qin(c,j)
qout_col(c,j) = qout(c,j)
endif
end do

Expand Down Expand Up @@ -1154,7 +1161,8 @@ subroutine soilwater_moisture_form(bounds, num_hydrologyc, &

qcharge => soilhydrology_inst%qcharge_col , & ! Input: [real(r8) (:) ] aquifer recharge rate (mm/s)
zwt => soilhydrology_inst%zwt_col , & ! Input: [real(r8) (:) ] water table depth (m)

qout_col => soilhydrology_inst%qout_col , & ! Output: [real(r8) (:,:) ] soil water out of the bottom, mm h2o/s
qin_col => soilhydrology_inst%qin_col , & ! Output: [real(r8) (:,:) ] soil water into the bottom, mm h2o/s
watsat => soilstate_inst%watsat_col , & ! Input: [real(r8) (:,:) ] volumetric soil water at saturation (porosity)
smp_l => soilstate_inst%smp_l_col , & ! Input: [real(r8) (:,:) ] soil matrix potential [mm]
hk_l => soilstate_inst%hk_l_col , & ! Input: [real(r8) (:,:) ] hydraulic conductivity (mm/s)
Expand Down Expand Up @@ -1402,7 +1410,8 @@ subroutine soilwater_moisture_form(bounds, num_hydrologyc, &
! call endrun(subname // ':: negative soil moisture values found!')
endif
end do

qin_col(c,1:nlayers) = qin(c,1:nlayers)
qout_col(c,1:nlayers) = qout(c,1:nlayers)
end do ! spatial loop


Expand Down
2 changes: 1 addition & 1 deletion src/main/clm_driver.F90
Original file line number Diff line number Diff line change
Expand Up @@ -1157,7 +1157,7 @@ subroutine clm_drv(doalb, nextsw_cday, declinp1, declin, rstwr, nlend, rdate, ro
soilbiogeochem_carbonflux_inst, soilbiogeochem_carbonstate_inst, &
c13_soilbiogeochem_carbonflux_inst, c13_soilbiogeochem_carbonstate_inst, &
c14_soilbiogeochem_carbonflux_inst, c14_soilbiogeochem_carbonstate_inst, &
soilbiogeochem_nitrogenflux_inst, soilbiogeochem_nitrogenstate_inst)
soilbiogeochem_nitrogenflux_inst, soilbiogeochem_nitrogenstate_inst, soilhydrology_inst)
call t_stopf('EcosysDynPostDrainage')
end if

Expand Down
1 change: 1 addition & 0 deletions src/main/clm_varcon.F90
Original file line number Diff line number Diff line change
Expand Up @@ -127,6 +127,7 @@ module clm_varcon
real(r8), public, parameter :: g_to_mg = 1.0e3_r8 ! coefficient to convert g to mg
real(r8), public, parameter :: cm3_to_m3 = 1.0e-6_r8 ! coefficient to convert cm3 to m3
real(r8), public, parameter :: pct_to_frac = 1.0e-2_r8 ! coefficient to convert % to fraction
real(r8), public, parameter :: mmh2o_to_m3h2o_per_m2 = 1.0e-3_r8 ! coefficient to convert mm H2O to m3 H2O/m2

!!! C13
real(r8), public, parameter :: preind_atm_del13c = -6.0_r8 ! preindustrial value for atmospheric del13C
Expand Down
1 change: 1 addition & 0 deletions src/main/clm_varctl.F90
Original file line number Diff line number Diff line change
Expand Up @@ -522,6 +522,7 @@ module clm_varctl

logical, public :: use_lch4 = .true.
logical, public :: use_nitrif_denitrif = .true.
logical, public :: use_nvmovement = .false.
logical, public :: use_extralakelayers = .false.
logical, public :: use_vichydro = .false.
logical, public :: use_cn = .false.
Expand Down
Loading