Skip to content
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

First pass at getting fates-sp mode to run without soil BGC #1723

Merged
merged 35 commits into from
May 9, 2022
Merged
Show file tree
Hide file tree
Changes from 10 commits
Commits
Show all changes
35 commits
Select commit Hold shift + click to select a range
741d819
First pass at getting fates-sp mode to run without soil BGC
ekluzek Apr 26, 2022
bde25ef
Remove variable that isn't there in fates for fates_sp user-mod
ekluzek Apr 26, 2022
363ef9d
A few more history variables that aren't there
ekluzek Apr 26, 2022
8e6489a
Correct name of decomp_method, and add missing implicit none
ekluzek Apr 26, 2022
658b1dc
Explicitly set spitfire to off for fates_sp mode user-mod, and have t…
ekluzek Apr 26, 2022
cb62b6c
Remove some more fields as suggested by @wweider
ekluzek Apr 26, 2022
6fb369d
Merge tag 'ctsm5.1.dev093' into fates_sp_w_no_soil_decomp
ekluzek May 4, 2022
56625c1
Update to cesm2_3_alpha09b externals (ccs_config one version beyond t…
ekluzek May 4, 2022
41155ab
Move cdeps version back to before coszen change that changes answers
ekluzek May 4, 2022
e814c12
Properly indent the if statement
ekluzek May 4, 2022
b4fc9e2
Most of the changes needed to respond to the cime python directory re…
ekluzek May 5, 2022
00f65e4
Merge remote-tracking branch 'billsacks/workaround_for_python_systest…
ekluzek May 5, 2022
e3b14d9
Add a check that the decomp method is not none to a SoilBGC call to m…
ekluzek May 5, 2022
240a33f
Update externals to get past issues
ekluzek May 6, 2022
e60568e
Merge tag 'ctsm5.1.dev094' into fates_sp_w_no_soil_decomp
ekluzek May 7, 2022
2a6bb3e
Start adding a FatesSp compset, and some more tests for FatesSp mode,…
ekluzek May 8, 2022
5609528
Merge remote-tracking branch 'briandobbins/dobbins-neon-fix' into fat…
ekluzek May 8, 2022
072d757
Refactor if statement so check on Ph isn't in the statement if usephf…
ekluzek May 8, 2022
6fa05e3
Start adding a FatesSp compset, and some more tests for FatesSp mode,…
ekluzek May 8, 2022
5058998
Replace izumi_pgi tests with cheyenne_nvhpc fixing #1610
ekluzek May 8, 2022
8c5e186
Switch out a ERS DEBUG test for prebeta with a SMS test that is also …
ekluzek May 8, 2022
de956d7
Change izumi_pgi expected fails to cheyenne_nvhpc just for the DEBUG …
ekluzek May 8, 2022
3d49557
Fix missing P for PE layout count in testname
ekluzek May 9, 2022
7128c01
Add some black formatter options to ignore from #1577
ekluzek May 9, 2022
da5a015
Have the line length match in pylint for black
ekluzek May 9, 2022
7e29778
Add a new file to set the python environment for conda
ekluzek May 9, 2022
dd71a61
pylint is still clean with an updated version
ekluzek May 9, 2022
58bf3d4
Add expected fail
ekluzek May 9, 2022
6ed71c9
Add setting of soildecomp method for fates_sp test
ekluzek May 9, 2022
73bb617
Merge branch 'fates_sp_w_no_soil_decomp' of github.com:ekluzek/CTSM i…
ekluzek May 9, 2022
3f560dd
Change file update
ekluzek May 9, 2022
ec8a992
Update the CIME and externals directories for LILAC
ekluzek May 9, 2022
4bfdd45
Add DAE tests to expected fails
ekluzek May 9, 2022
0784398
Update change files
ekluzek May 9, 2022
5388508
Merge remote-tracking branch 'escomp/master' into fates_sp_w_no_soil_…
ekluzek May 9, 2022
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
10 changes: 5 additions & 5 deletions Externals.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ hash = 34723c2
required = True

[ccs_config]
tag = ccs_config_cesm0.0.15
tag = ccs_config_cesm0.0.30
protocol = git
repo_url = https://github.com/ESMCI/ccs_config_cesm.git
local_path = ccs_config
Expand All @@ -44,11 +44,11 @@ required = True
local_path = cime
protocol = git
repo_url = https://github.com/ESMCI/cime
tag = cime6.0.15
tag = cime6.0.23
required = True

[cmeps]
tag = cmeps0.13.47
tag = cmeps0.13.63
protocol = git
repo_url = https://github.com/ESCOMP/CMEPS.git
local_path = components/cmeps
Expand All @@ -70,7 +70,7 @@ local_path = components/cpl7
required = True

[share]
tag = share1.0.10
tag = share1.0.11
protocol = git
repo_url = https://github.com/ESCOMP/CESM_share
local_path = share
Expand All @@ -84,7 +84,7 @@ local_path = libraries/mct
required = True

[parallelio]
tag = pio2_5_6
tag = pio2_5_7
protocol = git
repo_url = https://github.com/NCAR/ParallelIO
local_path = libraries/parallelio
Expand Down
9 changes: 7 additions & 2 deletions bld/CLMBuildNamelist.pm
Original file line number Diff line number Diff line change
Expand Up @@ -870,9 +870,14 @@ sub setup_cmdl_bgc {
'phys'=>$nl_flags->{'phys'}, 'use_cn'=>$nl_flags->{'use_cn'}, 'use_fates'=>$nl_flags->{'use_fates'} );
my $soil_decomp_method = remove_leading_and_trailing_quotes( $nl->get_value( $var ) );

if ( &value_is_true($nl_flags->{'use_cn'}) || &value_is_true($nl_flags->{'use_fates'})) {
if ( &value_is_true($nl_flags->{'use_cn'}) ) {
if ( $soil_decomp_method eq "None" ) {
$log->fatal_error("$var must NOT be None if use_cn or use_fates are on");
$log->fatal_error("$var must NOT be None if use_cn is on");
}
} elsif ( &value_is_true($nl_flags->{'use_fates'}) && (not &value_is_true($nl->get_value('use_fates_sp'))) ) {
print "use_fates_sp = ", $nl_flags->{'use_fates_sp'}, "\n";
if ( $soil_decomp_method eq "None" ) {
$log->fatal_error("$var must NOT be None if use_fates is on and use_fates_sp is not TRUE");
}
} elsif ( $soil_decomp_method ne "None" ) {
$log->fatal_error("$var must be None if use_cn and use_fates are off");
Expand Down
Original file line number Diff line number Diff line change
@@ -1 +1,2 @@
../FatesColdDef
../../../../usermods_dirs/fates_sp
35 changes: 35 additions & 0 deletions cime_config/usermods_dirs/fates_sp/user_nl_clm
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
use_fates_sp = .true.
soil_decomp_method = 'None'
use_lch4 = .false.
fates_spitfire_mode = 0
hist_fexcl1 = 'FATES_TRIMMING', 'FATES_COLD_STATUS', 'FATES_DROUGHT_STATUS', 'FATES_GDD', 'FATES_NCHILLDAYS',
'FATES_NCOLDDAYS', 'FATES_DAYSINCE_COLDLEAFOFF', 'FATES_DAYSINCE_COLDLEAFON', 'FATES_DAYSINCE_DROUGHTLEAFOFF',
'FATES_DAYSINCE_DROUGHTLEAFON', 'FATES_MEANLIQVOL_DROUGHTPHEN', 'FATES_CANOPY_SPREAD', 'FATES_VEGC_PF',
'FATES_STOREC_PF', 'FATES_RECRUITMENT_PF', 'FATES_MORTALITY_PF', 'FATES_PATCHAREA_AP', 'FATES_LAI_AP',
'FATES_CANOPYAREA_AP', 'FATES_NESTEROV_INDEX', 'FATES_IGNITIONS', 'FATES_FDI', 'FATES_ROS', 'FATES_EFFECT_WSPEED',
'FATES_FUELCONSUMED', 'FATES_FIRE_INTENSITY', 'FATES_FIRE_INTENSITY_BURNFRAC', 'FATES_BURNFRAC', 'FATES_FUEL_MEF',
'FATES_FUEL_BULKD', 'FATES_FUEL_EFF_MOIST', 'FATES_FUEL_SAV', 'FATES_FUEL_AMOUNT', 'FATES_FRAGMENTATION_SCALER_SL',
'FATES_FUEL_MOISTURE_FC', 'FATES_FUEL_AMOUNT_FC', 'FATES_BURNFRAC_AP', 'FATES_FIRE_INTENSITY_BURNFRAC_AP',
'FATES_FUEL_AMOUNT_AP', 'FATES_FUEL_BURNT_BURNFRAC_FC', 'FATES_LITTER_IN', 'FATES_LITTER_OUT', 'FATES_SEED_BANK',
'FATES_SEEDS_IN', 'FATES_LITTER_IN_EL', 'FATES_LITTER_OUT_EL', 'FATES_SEED_BANK_EL', 'FATES_SEEDS_IN_LOCAL_EL',
'FATES_SEEDS_IN_EXTERN_EL', 'FATES_SEED_GERM_EL', 'FATES_SEED_DECAY_EL', 'FATES_STOREC', 'FATES_VEGC',
'FATES_SAPWOODC', 'FATES_FROOTC', 'FATES_REPROC', 'FATES_CEFFLUX', 'FATES_STRUCTC', 'FATES_NONSTRUCTC',
'FATES_VEGC_ABOVEGROUND', 'FATES_CANOPY_VEGC', 'FATES_USTORY_VEGC', 'FATES_PRIMARY_PATCHFUSION_ERR',
'FATES_DISTURBANCE_RATE_P2P', 'FATES_DISTURBANCE_RATE_P2S', 'FATES_DISTURBANCE_RATE_S2S',
'FATES_DISTURBANCE_RATE_FIRE', 'FATES_DISTURBANCE_RATE_LOGGING', 'FATES_DISTURBANCE_RATE_TREEFALL',
'FATES_DISTURBANCE_RATE_POTENTIAL', 'FATES_HARVEST_CARBON_FLUX', 'FATES_GPP_CANOPY', 'FATES_AUTORESP_CANOPY',
'FATES_GPP_UNDERSTORY', 'FATES_AUTORESP_UNDERSTORY', 'FATES_CROWNAREA_CL', 'FATES_DEMOTION_CARBONFLUX',
'FATES_PROMOTION_CARBONFLUX', 'FATES_MORTALITY_CFLUX_CANOPY', 'FATES_MORTALITY_CFLUX_UNDERSTORY',
'FATES_DDBH_CANOPY_SZ', 'FATES_DDBH_USTORY_SZ', 'FATES_BASALAREA_SZ',
'FATES_VEGC_ABOVEGROUND_SZ', 'FATES_LAI_CANOPY_SZ', 'FATES_MORTALITY_CANOPY_SZ', 'FATES_NPLANT_USTORY_SZ',
'FATES_LAI_USTORY_SZ', 'FATES_NPLANT_SZ', 'FATES_NPLANT_AC', 'FATES_MORTALITY_BACKGROUND_SZ',
'FATES_MORTALITY_HYDRAULIC_SZ', 'FATES_MORTALITY_CSTARV_SZ', 'FATES_MORTALITY_IMPACT_SZ',
'FATES_MORTALITY_FIRE_SZ', 'FATES_MORTALITY_TERMINATION_SZ', 'FATES_MORTALITY_LOGGING_SZ',
'FATES_MORTALITY_FREEZING_SZ', 'FATES_MORTALITY_SENESCENCE_SZ', 'FATES_MORTALITY_AGESCEN_SZ',
'FATES_MORTALITY_AGESCEN_AC', 'FATES_MORTALITY_USTORY_SZ', 'FATES_FROOTMAINTAR', 'FATES_CROOTMAINTAR',
'FATES_LSTEMMAINTAR', 'FATES_NEP', 'FATES_HET_RESP', 'FATES_FIRE_CLOSS', 'FATES_FIRE_FLUX_EL',
'FATES_LITTER_AG_FINE_EL', 'FATES_LITTER_BG_FINE_EL', 'FATES_LITTER_BG_CWD_EL', 'FATES_LITTER_AG_CWD_EL',
'FATES_LITTER_CWD_ELDC', 'FATES_LEAF_ALLOC', 'FATES_SEED_ALLOC', 'FATES_STEM_ALLOC', 'FATES_FROOT_ALLOC',
'FATES_CROOT_ALLOC', 'FATES_STORE_ALLOC', 'FATES_AUTORESP', 'FATES_GROWTH_RESP',
'FATES_LEAFMAINTAR', 'FATES_MAINT_RESP', 'FATES_NPP', 'FATES_NPP_PF',
'FATES_c_to_litr_cel_c', 'FATES_c_to_litr_lab_c', 'FATES_c_to_litr_lig_c'
42 changes: 22 additions & 20 deletions src/biogeochem/CNCStateUpdate1Mod.F90
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ module CNCStateUpdate1Mod
use SoilBiogeochemCarbonFluxType , only : soilbiogeochem_carbonflux_type
use SoilBiogeochemCarbonStateType , only : soilbiogeochem_carbonstate_type
use PatchType , only : patch
use clm_varctl , only : use_fates, use_cn, iulog
use clm_varctl , only : use_fates, use_cn, iulog, use_fates_sp
!
implicit none
private
Expand Down Expand Up @@ -200,7 +200,7 @@ subroutine CStateUpdate1( num_soilc, filter_soilc, num_soilp, filter_soilp, &
cf_soil%decomp_cpools_sourcesink_col(c,j,i_cwd) = 0._r8
end do
end do
else !use_fates
else if ( .not. use_fates_sp ) then !use_fates
! here add all fates litterfall and CWD breakdown to litter fluxes
do j = 1,nlevdecomp
do fc = 1,num_soilc
Expand All @@ -215,29 +215,31 @@ subroutine CStateUpdate1( num_soilc, filter_soilc, num_soilp, filter_soilp, &
end do
endif

! litter and SOM HR fluxes
do k = 1, ndecomp_cascade_transitions
do j = 1,nlevdecomp
do fc = 1,num_soilc
c = filter_soilc(fc)
cf_soil%decomp_cpools_sourcesink_col(c,j,cascade_donor_pool(k)) = &
cf_soil%decomp_cpools_sourcesink_col(c,j,cascade_donor_pool(k)) &
- ( cf_soil%decomp_cascade_hr_vr_col(c,j,k) + cf_soil%decomp_cascade_ctransfer_vr_col(c,j,k)) *dt
end do
end do
end do
do k = 1, ndecomp_cascade_transitions
if ( cascade_receiver_pool(k) /= 0 ) then ! skip terminal transitions
if ( .not. use_fates_sp ) then !use_fates
! litter and SOM HR fluxes
do k = 1, ndecomp_cascade_transitions
do j = 1,nlevdecomp
do fc = 1,num_soilc
c = filter_soilc(fc)
cf_soil%decomp_cpools_sourcesink_col(c,j,cascade_receiver_pool(k)) = &
cf_soil%decomp_cpools_sourcesink_col(c,j,cascade_receiver_pool(k)) &
+ cf_soil%decomp_cascade_ctransfer_vr_col(c,j,k)*dt
cf_soil%decomp_cpools_sourcesink_col(c,j,cascade_donor_pool(k)) = &
cf_soil%decomp_cpools_sourcesink_col(c,j,cascade_donor_pool(k)) &
- ( cf_soil%decomp_cascade_hr_vr_col(c,j,k) + cf_soil%decomp_cascade_ctransfer_vr_col(c,j,k)) *dt
end do
end do
end if
end do
end do
do k = 1, ndecomp_cascade_transitions
if ( cascade_receiver_pool(k) /= 0 ) then ! skip terminal transitions
do j = 1,nlevdecomp
do fc = 1,num_soilc
c = filter_soilc(fc)
cf_soil%decomp_cpools_sourcesink_col(c,j,cascade_receiver_pool(k)) = &
cf_soil%decomp_cpools_sourcesink_col(c,j,cascade_receiver_pool(k)) &
+ cf_soil%decomp_cascade_ctransfer_vr_col(c,j,k)*dt
end do
end do
end if
end do
end if

if (.not. use_fates) then
do fp = 1,num_soilp
Expand Down
84 changes: 45 additions & 39 deletions src/biogeochem/EDBGCDynMod.F90
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ module EDBGCDynMod
use perf_mod , only : t_startf, t_stopf
use shr_log_mod , only : errMsg => shr_log_errMsg
use abortutils , only : endrun
use SoilBiogeochemDecompCascadeConType , only : mimics_decomp, century_decomp, decomp_method
use SoilBiogeochemDecompCascadeConType , only : no_soil_decomp, mimics_decomp, century_decomp, decomp_method
use CNVegCarbonStateType , only : cnveg_carbonstate_type
use CNVegCarbonFluxType , only : cnveg_carbonflux_type
use SoilBiogeochemStateType , only : soilbiogeochem_state_type
Expand All @@ -29,6 +29,7 @@ module EDBGCDynMod
use ch4Mod , only : ch4_type
use CLMFatesInterfaceMod , only : hlm_fates_interface_type

implicit none

! public :: EDBGCDynInit ! BGC dynamics: initialization
public :: EDBGCDyn ! BGC Dynamics
Expand Down Expand Up @@ -139,21 +140,23 @@ subroutine EDBGCDyn(bounds, &
! zero the column-level C and N fluxes
! --------------------------------------------------

call t_startf('BGCZero')
if ( decomp_method /= no_soil_decomp )then
call t_startf('SoilBGCZero')

call soilbiogeochem_carbonflux_inst%SetValues( &
num_soilc, filter_soilc, 0._r8)
if ( use_c13 ) then
call c13_soilbiogeochem_carbonflux_inst%SetValues( &
num_soilc, filter_soilc, 0._r8)
end if
if ( use_c14 ) then
call c14_soilbiogeochem_carbonflux_inst%SetValues( &
call soilbiogeochem_carbonflux_inst%SetValues( &
num_soilc, filter_soilc, 0._r8)
if ( use_c13 ) then
call c13_soilbiogeochem_carbonflux_inst%SetValues( &
num_soilc, filter_soilc, 0._r8)
end if
if ( use_c14 ) then
call c14_soilbiogeochem_carbonflux_inst%SetValues( &
num_soilc, filter_soilc, 0._r8)
end if

call t_stopf('SoilBGCZero')
end if

call t_stopf('BGCZero')

! --------------------------------------------------
! Nitrogen Deposition, Fixation and Respiration
! --------------------------------------------------
Expand Down Expand Up @@ -187,16 +190,17 @@ subroutine EDBGCDyn(bounds, &
soilbiogeochem_carbonflux_inst, soilbiogeochem_carbonstate_inst)
end if

! calculate potential decomp rates and total immobilization demand (previously inlined in CNDecompAlloc)
call SoilBiogeochemPotential (bounds, num_soilc, filter_soilc, &
soilbiogeochem_state_inst, soilbiogeochem_carbonstate_inst, soilbiogeochem_carbonflux_inst, &
soilbiogeochem_nitrogenstate_inst, soilbiogeochem_nitrogenflux_inst, &
cn_decomp_pools=cn_decomp_pools(begc:endc,1:nlevdecomp,1:ndecomp_pools), &
p_decomp_cpool_loss=p_decomp_cpool_loss(begc:endc,1:nlevdecomp,1:ndecomp_cascade_transitions), &
p_decomp_cn_gain=p_decomp_cn_gain(begc:endc,1:nlevdecomp,1:ndecomp_pools), &
pmnf_decomp_cascade=pmnf_decomp_cascade(begc:endc,1:nlevdecomp,1:ndecomp_cascade_transitions), &
p_decomp_npool_to_din=p_decomp_npool_to_din(begc:endc,1:nlevdecomp,1:ndecomp_cascade_transitions))

if ( decomp_method /= no_soil_decomp )then
! calculate potential decomp rates and total immobilization demand (previously inlined in CNDecompAlloc)
call SoilBiogeochemPotential (bounds, num_soilc, filter_soilc, &
soilbiogeochem_state_inst, soilbiogeochem_carbonstate_inst, soilbiogeochem_carbonflux_inst, &
soilbiogeochem_nitrogenstate_inst, soilbiogeochem_nitrogenflux_inst, &
cn_decomp_pools=cn_decomp_pools(begc:endc,1:nlevdecomp,1:ndecomp_pools), &
p_decomp_cpool_loss=p_decomp_cpool_loss(begc:endc,1:nlevdecomp,1:ndecomp_cascade_transitions), &
p_decomp_cn_gain=p_decomp_cn_gain(begc:endc,1:nlevdecomp,1:ndecomp_pools), &
pmnf_decomp_cascade=pmnf_decomp_cascade(begc:endc,1:nlevdecomp,1:ndecomp_cascade_transitions), &
p_decomp_npool_to_din=p_decomp_npool_to_din(begc:endc,1:nlevdecomp,1:ndecomp_cascade_transitions))
end if

!--------------------------------------------
! Resolve the competition between plants and soil heterotrophs
Expand All @@ -212,17 +216,18 @@ subroutine EDBGCDyn(bounds, &
! Calculation of actual immobilization and decomp rates, following
! resolution of plant/heterotroph competition for mineral N (previously inlined in CNDecompAllocation in CNDecompMod)

call t_startf('SoilBiogeochemDecomp')
if ( decomp_method /= no_soil_decomp )then
call t_startf('SoilBiogeochemDecomp')

call SoilBiogeochemDecomp (bounds, num_soilc, filter_soilc, &
soilbiogeochem_state_inst, soilbiogeochem_carbonstate_inst, soilbiogeochem_carbonflux_inst, &
soilbiogeochem_nitrogenstate_inst, soilbiogeochem_nitrogenflux_inst, &
cn_decomp_pools=cn_decomp_pools(begc:endc,1:nlevdecomp,1:ndecomp_pools), &
p_decomp_cpool_loss=p_decomp_cpool_loss(begc:endc,1:nlevdecomp,1:ndecomp_cascade_transitions), &
pmnf_decomp_cascade=pmnf_decomp_cascade(begc:endc,1:nlevdecomp,1:ndecomp_cascade_transitions), &
p_decomp_npool_to_din=p_decomp_npool_to_din(begc:endc,1:nlevdecomp,1:ndecomp_cascade_transitions))
call SoilBiogeochemDecomp (bounds, num_soilc, filter_soilc, &
soilbiogeochem_state_inst, soilbiogeochem_carbonstate_inst, soilbiogeochem_carbonflux_inst, &
soilbiogeochem_nitrogenstate_inst, soilbiogeochem_nitrogenflux_inst, &
cn_decomp_pools=cn_decomp_pools(begc:endc,1:nlevdecomp,1:ndecomp_pools), &
p_decomp_cpool_loss=p_decomp_cpool_loss(begc:endc,1:nlevdecomp,1:ndecomp_cascade_transitions), &
pmnf_decomp_cascade=pmnf_decomp_cascade(begc:endc,1:nlevdecomp,1:ndecomp_cascade_transitions), &
p_decomp_npool_to_din=p_decomp_npool_to_din(begc:endc,1:nlevdecomp,1:ndecomp_cascade_transitions))

call t_stopf('SoilBiogeochemDecomp')
call t_stopf('SoilBiogeochemDecomp')


!--------------------------------------------
Expand All @@ -243,16 +248,17 @@ subroutine EDBGCDyn(bounds, &
! Calculate vertical mixing of soil and litter pools
!--------------------------------------------

call t_startf('SoilBiogeochemLittVertTransp')
call t_startf('SoilBiogeochemLittVertTransp')

call SoilBiogeochemLittVertTransp(bounds, num_soilc, filter_soilc, &
active_layer_inst, soilbiogeochem_state_inst, &
soilbiogeochem_carbonstate_inst, soilbiogeochem_carbonflux_inst, &
c13_soilbiogeochem_carbonstate_inst, c13_soilbiogeochem_carbonflux_inst, &
c14_soilbiogeochem_carbonstate_inst, c14_soilbiogeochem_carbonflux_inst, &
soilbiogeochem_nitrogenstate_inst, soilbiogeochem_nitrogenflux_inst)
call SoilBiogeochemLittVertTransp(bounds, num_soilc, filter_soilc, &
active_layer_inst, soilbiogeochem_state_inst, &
soilbiogeochem_carbonstate_inst, soilbiogeochem_carbonflux_inst, &
c13_soilbiogeochem_carbonstate_inst, c13_soilbiogeochem_carbonflux_inst, &
c14_soilbiogeochem_carbonstate_inst, c14_soilbiogeochem_carbonflux_inst, &
soilbiogeochem_nitrogenstate_inst, soilbiogeochem_nitrogenflux_inst)

call t_stopf('SoilBiogeochemLittVertTransp')
call t_stopf('SoilBiogeochemLittVertTransp')
end if

end associate

Expand Down
19 changes: 11 additions & 8 deletions src/main/clm_driver.F90
Original file line number Diff line number Diff line change
Expand Up @@ -81,6 +81,7 @@ module clm_driver
use clm_instMod
use EDBGCDynMod , only : EDBGCDyn, EDBGCDynSummary
use SoilMoistureStreamMod , only : PrescribedSoilMoistureInterp, PrescribedSoilMoistureAdvance
use SoilBiogeochemDecompCascadeConType , only : no_soil_decomp, decomp_method
!
! !PUBLIC TYPES:
implicit none
Expand Down Expand Up @@ -1090,14 +1091,16 @@ subroutine clm_drv(doalb, nextsw_cday, declinp1, declin, rstwr, nlend, rdate, ro
active_layer_inst, atm2lnd_inst, water_inst%waterfluxbulk_inst, &
canopystate_inst, soilstate_inst, temperature_inst, crop_inst, ch4_inst)

call EDBGCDynSummary(bounds_clump, &
filter(nc)%num_soilc, filter(nc)%soilc, &
filter(nc)%num_soilp, filter(nc)%soilp, &
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, &
nc)
if ( decomp_method /= no_soil_decomp )then
call EDBGCDynSummary(bounds_clump, &
filter(nc)%num_soilc, filter(nc)%soilc, &
filter(nc)%num_soilp, filter(nc)%soilp, &
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, &
nc)
end if

call clm_fates%wrap_update_hifrq_hist(bounds_clump, &
soilbiogeochem_carbonflux_inst, &
Expand Down
Loading