Skip to content

Commit

Permalink
Enhanced sanity check for SOC profile setup
Browse files Browse the repository at this point in the history
This ensures model crashes earlier when input
soil organic profile is not right.
Also removed redundant screen outputs.
Answer change not incurred.
  • Loading branch information
“Jinyun committed Feb 21, 2025
1 parent 514c3da commit d98b1b9
Show file tree
Hide file tree
Showing 9 changed files with 40 additions and 86 deletions.
14 changes: 1 addition & 13 deletions f90src/APIs/MicBGCAPI.F90
Original file line number Diff line number Diff line change
Expand Up @@ -307,14 +307,7 @@ subroutine MicAPISend(I,J,L,NY,NX,micfor,micstt,micflx)
micstt%CH2GS = AZMAX1(trc_solcl_vr(idg_H2,L,NY,NX))
micstt%CCH4G = AZMAX1(trcg_gascl_vr(idg_CH4,L,NY,NX))
micstt%Lay = L
if(L<=3)then
write(113,*)'CNO2S',L,NY,NX,trc_solcl_vr(ids_NO2,L,NY,NX),trcs_solml_vr(ids_NO2,L,NY,NX),&
trc_solcl_vr(ids_NO3,L,NY,NX),trcs_solml_vr(ids_NO3,L,NY,NX)
endif
if(abs(trcs_solml_vr(ids_NO2,L,NY,NX))>100.)then
write(*,*)I*1000+J
call endrun(trim(mod_filename)//' at line',__LINE__)
endif

! write(115,*)I+J/24.,L,micstt%COXYG,micstt%COXYS,VLsoiAirPM(1,L,NY,NX)
micstt%O2GSolubility = GasSolbility_vr(idg_O2,L,NY,NX)
micstt%CH4AquaSolubility = GasSolbility_vr(idg_CH4,L,NY,NX)
Expand Down Expand Up @@ -399,11 +392,6 @@ subroutine MicAPIRecv(I,J,L,NY,NX,litrM,micstt,micflx,naqfdiag,nmicdiag)
tRHydlyBioReSOM_vr(1:NumPlantChemElms,L,NY,NX) = micflx%tRHydlyBioReSOM
tRHydlySoprtOM_vr(1:NumPlantChemElms,L,NY,NX) = micflx%tRHydlySoprtOM

write(*,*)L,NY,NX
write(*,*)'NO3, NO2',micflx%RNO3MicbTransfSoil,micflx%RNO2MicbTransfSoil
if(abs(micflx%RNO2MicbTransfSoil)>1.e3)then
call endrun(trim(mod_filename)//' at line',__LINE__)
endif
trcs_RMicbUptake_vr(idg_CO2,L,NY,NX) = micflx%RCO2NetUptkMicb
trcs_RMicbUptake_vr(idg_CH4,L,NY,NX) = micflx%RCH4UptkAutor
trcs_RMicbUptake_vr(idg_H2,L,NY,NX) = micflx%RH2NetUptkMicb
Expand Down
7 changes: 1 addition & 6 deletions f90src/IOutils/HistDataType.F90
Original file line number Diff line number Diff line change
Expand Up @@ -2884,12 +2884,7 @@ subroutine hist_update(this,I,J,bounds)
this%h2D_cNO3t_vr(ncol,L)= safe_adb(trcs_solml_vr(ids_NO3,L,NY,NX)+trcs_solml_vr(ids_NO3B,L,NY,NX) &
+trcs_solml_vr(ids_NO2,L,NY,NX)+trcs_solml_vr(ids_NO2B,L,NY,NX),&
VLSoilMicPMass_vr(L,NY,NX))
if(I>=51)then
write(*,*)I*1000+J,NY,NX,L
write(*,*)trcs_solml_vr(ids_NO3,L,NY,NX),trcs_solml_vr(ids_NO3B,L,NY,NX), &
trcs_solml_vr(ids_NO2,L,NY,NX),trcs_solml_vr(ids_NO2B,L,NY,NX), &
VLSoilMicPMass_vr(L,NY,NX)
endif

this%h2D_cPO4_vr(ncol,L) = safe_adb(trcs_solml_vr(ids_H1PO4,L,NY,NX)+trcs_solml_vr(ids_H1PO4B,L,NY,NX) &
+trcs_solml_vr(ids_H2PO4,L,NY,NX)+trcs_solml_vr(ids_H2PO4B,L,NY,NX),&
VLWatMicP_vr(L,NY,NX))
Expand Down
29 changes: 19 additions & 10 deletions f90src/IOutils/readimod.F90
Original file line number Diff line number Diff line change
Expand Up @@ -2,15 +2,17 @@ module readiMod
!!
! code to read site, topographic data
!
use data_kind_mod, only : r8 => DAT_KIND_R8
use abortutils , only : endrun
use data_kind_mod, only: r8 => DAT_KIND_R8
use abortutils, only: endrun
use fileUtil, only: open_safe, check_read
use minimathmod, only: isclose, AZMAX1, safe_adb
use MiniFuncMod, only: GetDayLength
use EcoSIMConfig, only: column_mode
use EcoSiMParDataMod, only: micpar
use SoilHydroParaMod, only: ComputeSoilHydroPars
use SoilPhysParaMod, only: SetDeepSoil
use ncdio_pio
use EcoSIMCtrlMod
use fileUtil , only : open_safe, check_read
use minimathmod , only : isclose, AZMAX1
use MiniFuncMod , only : GetDayLength
use EcoSIMConfig , only : column_mode
use EcoSiMParDataMod, only : micpar
use SOMDataType
use CanopyRadDataType
use EcosimConst
Expand All @@ -29,8 +31,6 @@ module readiMod
use SoilBGCDataType
use AqueChemDatatype
use GridDataType
use SoilHydroParaMod, only : ComputeSoilHydroPars
use SoilPhysParaMod, only : SetDeepSoil
implicit none
private

Expand Down Expand Up @@ -601,7 +601,16 @@ subroutine readTopoNC()

ENDDO
ENDIF

DO L=1,NL(NY,NX)
if(CSoilOrgM_vr(ielmn,L,NY,NX)*1.e-3_r8>CSoilOrgM_vr(ielmc,L,NY,NX))then
write(iulog,*)'Likely too larger N/C ratio',1.e-3_r8*safe_adb(CSoilOrgM_vr(ielmn,L,NY,NX),CSoilOrgM_vr(ielmc,L,NY,NX)), 'in L,NY,NX',L,NY,NX
call endrun(trim(mod_filename)//' at line',__LINE__)
endif
if(CSoilOrgM_vr(ielmp,L,NY,NX)>CSoilOrgM_vr(ielmn,L,NY,NX))then
write(iulog,*)'Likely too larger P/N ratio',safe_adb(CSoilOrgM_vr(ielmp,L,NY,NX),CSoilOrgM_vr(ielmn,L,NY,NX)), 'in L,NY,NX',L,NY,NX
call endrun(trim(mod_filename)//' at line',__LINE__)
endif
ENDDO
if(lverb)then
CALL Disp_topo_charc(NY,NX,NU(NY,NX),NM(NY,NX))
endif
Expand Down
11 changes: 2 additions & 9 deletions f90src/Microbial_bgc/Box_Micmodel/MicAutoCPLXMod.F90
Original file line number Diff line number Diff line change
Expand Up @@ -778,9 +778,7 @@ subroutine AerobicAutorO2Uptake(NGL,N,FOXYX,OXKX,RGOMP,RVOXP,RVOXPA,RVOXPB,&
RO2Uptk4RespAutor(NGL) = RO2Dmnd4RespAutor(NGL)*fLimO2Autor(NGL)
RSOxidSoilAutor(NGL) = RVOXPA*fLimO2Autor(NGL)
RSOxidBandAutor(NGL) = RVOXPB*fLimO2Autor(NGL)
if(micstt%Lay==2)then
write(120,*)'auto1',RVOXPA,fLimO2Autor(NGL)
endif

end associate
end subroutine AerobicAutorO2Uptake

Expand Down Expand Up @@ -902,9 +900,7 @@ subroutine AutotrophDenitrificCatabolism(NGL,N,XCO2,VOLWZ,micfor,micstt,&
!NH4 oxidation by NO2(-)
RSOxidSoilAutor(NGL)=RSOxidSoilAutor(NGL)+0.333_r8*RNO2ReduxAutorSoil(NGL)
RSOxidBandAutor(NGL)=RSOxidBandAutor(NGL)+0.333_r8*RNO2ReduxAutorBand(NGL)
if(micstt%Lay==2)then
write(120,*)'auto2',RSOxidSoilAutor(NGL),0.333_r8*RNO2ReduxAutorSoil(NGL)
endif

! TRN2ON=TRN2ON+RNO2ReduxAutorSoil(NGL)+RNO2ReduxAutorBand(NGL)
end associate
end subroutine AutotrophDenitrificCatabolism
Expand Down Expand Up @@ -1038,9 +1034,6 @@ subroutine NH3OxidizerCatabolism(NGL,N,XCO2,VOLWZ,TSensGrowth,ECHZ,RGOMP,RVOXP,R
RGOMP = AZMAX1(RVOXP*ECNH*ECHZ)
RNH3OxidAutor(NGL) = VMX4S
RNH3OxidAutorBand(NGL) = VMX4B
if(micstt%lay==2)then
write(121,*)'RVOXPA',VMXA,FCN4S,FNH4,ZNH4S,ZNFN4S,RNNH4
endif
!
! O2 DEMAND FROM NH3 OXIDATION
!
Expand Down
45 changes: 6 additions & 39 deletions f90src/Microbial_bgc/Box_Micmodel/MicBGCMod.F90
Original file line number Diff line number Diff line change
Expand Up @@ -1125,7 +1125,7 @@ subroutine ChemoDenitrification(micfor,micstt,nmicdiag,naqfdiag,micflx)
RNO2ReduxChemo = 0.10_r8*(RNO2ReduxSoilChemo+RNO2ReduxBandChemo)
RNO2DmndSoilChemo = VMXC4S
RNO2DmndBandChemo = VMXC4B
write(*,*)'ZNO2S*FNO2,VMXC4S',ZNO2S,FNO2,VMXC4S

end associate
end subroutine ChemoDenitrification
!------------------------------------------------------------------------------------------
Expand Down Expand Up @@ -1942,24 +1942,11 @@ subroutine HeterotrophAnabolicUpdate(I,J,micfor,micstt,nmicf,micflx)
+RH2PO4TransfSoilHeter(NGL,K)+RH2PO4TransfBandHeter(NGL,K)+RH1PO4TransfSoilHeter(NGL,K) &
+RH1PO4TransfBandHeter(NGL,K)

if(micstt%lay==1)then
write(311,*)'domnc',NGL,K,DOMuptk4GrothHeter(ielmn,NGL,K),CGROMC,safe_adb(DOMuptk4GrothHeter(ielmn,NGL,K),CGROMC),&
safe_adb(DOMuptk4GrothHeter(ielmn,NGL,K), DOMuptk4GrothHeter(ielmc,NGL,K))
elseif(micstt%lay==2)then
write(312,*)'domnc',NGL,K,DOMuptk4GrothHeter(ielmn,NGL,K),CGROMC,safe_adb(DOMuptk4GrothHeter(ielmn,NGL,K),CGROMC),&
safe_adb(DOMuptk4GrothHeter(ielmn,NGL,K), DOMuptk4GrothHeter(ielmc,NGL,K))
elseif(micstt%lay==3)then
write(313,*)'domnc',NGL,K,DOMuptk4GrothHeter(ielmn,NGL,K),CGROMC,safe_adb(DOMuptk4GrothHeter(ielmn,NGL,K),CGROMC),&
safe_adb(DOMuptk4GrothHeter(ielmn,NGL,K), DOMuptk4GrothHeter(ielmc,NGL,K))
endif
!fix negative microbial N by immobilization
if(mBiomeHeter(ielmn,MID3,K)<0._r8)then
RNH4TransfSoilHeter(NGL,K) = RNH4TransfSoilHeter(NGL,K)-mBiomeHeter(ielmn,MID3,K)
NetNH4Mineralize = NetNH4Mineralize-mBiomeHeter(ielmn,MID3,K)
mBiomeHeter(ielmn,MID3,K) = 0._r8
if(micstt%lay==2)then
write(235,*)'negb',NGL,K,RNH4TransfSoilHeter(NGL,K),-mBiomeHeter(ielmn,MID3,K)
endif
endif
!fix negative P biomass by immobilization
if(mBiomeHeter(ielmp,MID3,K)<0._r8)then
Expand Down Expand Up @@ -2155,9 +2142,7 @@ subroutine AggregateTransfOMBioResdue(micfor,micstt,nmicdiag,naqfdiag,nmicf,ncpl
naqfdiag%tRH2PO4MicrbTransfSoil = naqfdiag%tRH2PO4MicrbTransfSoil+RH2PO4TransfLitrHeter(NGL,K)
naqfdiag%tRH1PO4MicrbTransfSoil = naqfdiag%tRH1PO4MicrbTransfSoil+RH1PO4TransfLitrHeter(NGL,K)
ENDIF
if(micstt%Lay==2)then
write(214,*)'NH4trnsh',NGL,K,RNH4TransfSoilHeter(NGL,K)
endif

naqfdiag%tRCO2MicrbProd = naqfdiag%tRCO2MicrbProd+RCO2ProdHeter(NGL,K)
naqfdiag%tRCH4MicrbProd = naqfdiag%tRCH4MicrbProd+RCH4ProdHeter(NGL,K)
naqfdiag%tRNOxMicrbRedux = naqfdiag%tRNOxMicrbRedux+RNOxReduxRespDenitLim(NGL,K)
Expand Down Expand Up @@ -2192,9 +2177,7 @@ subroutine AggregateTransfOMBioResdue(micfor,micstt,nmicdiag,naqfdiag,nmicf,ncpl
naqfdiag%tRH2PO4MicrbTransfBand = naqfdiag%tRH2PO4MicrbTransfBand+RH2PO4TransfBandAutor(NGL)
naqfdiag%tRH1PO4MicrbTransfBand = naqfdiag%tRH1PO4MicrbTransfBand+RH1PO4TransfBandAutor(NGL)
naqfdiag%TFixN2 = naqfdiag%TFixN2+RN2FixAutor(NGL)
if(micstt%Lay==2)then
write(214,*)'NH4trnsa',NGL,RNH4TransfSoilAutor(NGL)
endif

IF(Lsurf)THEN
naqfdiag%tRNH4MicrbTransfSoil = naqfdiag%tRNH4MicrbTransfSoil+RNH4TransfLitrAutor(NGL)
naqfdiag%tRNO3MicrbTransfSoil = naqfdiag%tRNO3MicrbTransfSoil+RNO3TransfLitrAutor(NGL)
Expand Down Expand Up @@ -2330,29 +2313,19 @@ subroutine AggregateTransfOMBioResdue(micfor,micstt,nmicdiag,naqfdiag,nmicf,ncpl
RNO3MicbTransfBand=-naqfdiag%tRNO3MicrbTransfBand-naqfdiag%TReduxNO3Band+RNO3ProdBandChemo
RNO2MicbTransfBand=naqfdiag%TReduxNO3Band-naqfdiag%TReduxNO2Band-RNO2ReduxBandChemo


write(*,*)'NO3',naqfdiag%tRNO3MicrbTransfSoil,naqfdiag%TReduxNO3Soil,RNO3ProdSoilChemo
if(micstt%Lay==2)then
write(118,*)'NO2',naqfdiag%TReduxNO3Soil,-naqfdiag%TReduxNO2Soil,-RNO2ReduxSoilChemo
write(211,*)'NH41',-naqfdiag%tRNH4MicrbTransfSoil
endif

!mid_AmmoniaOxidBacter=1, mid_NitriteOxidBacter=2, mid_AerobicMethanotrofBacter=3
DO NGL=JGniA(mid_AmmoniaOxidBacter),JGnfA(mid_AmmoniaOxidBacter)
RNH4MicbTransfSoil=RNH4MicbTransfSoil-RSOxidSoilAutor(NGL)
RNO2MicbTransfSoil=RNO2MicbTransfSoil+RSOxidSoilAutor(NGL)
RNH4MicbTransfBand=RNH4MicbTransfBand-RSOxidBandAutor(NGL)
if(micstt%Lay==2)then
write(118,*)'NGL',NGL,RSOxidSoilAutor(NGL)
write(211,*)'nauto',-RSOxidSoilAutor(NGL)
endif

ENDDO
DO NGL=JGniA(mid_NitriteOxidBacter),JGnfA(mid_NitriteOxidBacter)
RNO3MicbTransfSoil=RNO3MicbTransfSoil+RSOxidSoilAutor(NGL)
RNO2MicbTransfSoil=RNO2MicbTransfSoil-RSOxidSoilAutor(NGL)
RNO3MicbTransfBand=RNO3MicbTransfBand+RSOxidBandAutor(NGL)
RNO2MicbTransfBand=RNO2MicbTransfBand-RSOxidBandAutor(NGL)
if(micstt%Lay==2)write(118,*)'ngl no3, no2',-RSOxidSoilAutor(NGL)

ENDDO

RH2PO4MicbTransfBand = -naqfdiag%tRH2PO4MicrbTransfBand
Expand Down Expand Up @@ -3474,13 +3447,7 @@ subroutine BiomassMineralization(NGL,N,K,FNH4X, &
RNH4DmndBandHeter(NGL,K) = 0.0_r8
RNH4TransfSoilHeter(NGL,K) = RINHP*FNH4S
RNH4TransfBandHeter(NGL,K) = RINHP*FNHBS
if(micstt%Lay==1)then
write(234,*)'realNH4',NGL,K, RINHP,FNH4S,mBiomeHeter(ielmc,MID3,K),rNCOMC(3,NGL,K),mBiomeHeter(ielmn,MID3,K)/mBiomeHeter(ielmc,MID3,K)
elseif(micstt%Lay==2)then
write(235,*)'realNH4',NGL,K, RINHP,FNH4S,mBiomeHeter(ielmc,MID3,K),rNCOMC(3,NGL,K),mBiomeHeter(ielmn,MID3,K)/mBiomeHeter(ielmc,MID3,K)
elseif(micstt%Lay==3)then
write(236,*)'realNH4',NGL,K, RINHP,FNH4S,mBiomeHeter(ielmc,MID3,K),rNCOMC(3,NGL,K),mBiomeHeter(ielmn,MID3,K)/mBiomeHeter(ielmc,MID3,K)
endif

ENDIF

NetNH4Mineralize=NetNH4Mineralize+(RNH4TransfSoilHeter(NGL,K)+RNH4TransfBandHeter(NGL,K))
Expand Down
2 changes: 1 addition & 1 deletion f90src/ModelDiags/BalancesMod.F90
Original file line number Diff line number Diff line change
Expand Up @@ -150,7 +150,7 @@ subroutine EndCheckBalances(I,J,NHW,NHE,NVN,NVS)
implicit none
integer, intent(in) :: I,J,NHW,NHE,NVN,NVS
integer :: NY,NX
real(r8), parameter :: err_h2o=1.e-6_r8
real(r8), parameter :: err_h2o=1.e-5_r8
real(r8), parameter :: err_engy=1.e-6_r8
real(r8) :: WaterErr_test
real(r8) :: HeatErr_test
Expand Down
10 changes: 8 additions & 2 deletions f90src/Modelforc/Hour1Mod.F90
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ module Hour1Mod
use SoilBGCNLayMod, only : sumORGMLayL
use PlantMgmtDataType, only : NP
use BalancesMod, only : SummarizeTracerMass,BegCheckBalances
use DebugToolMod
use ATSUtilsMod
use TracerPropMod
use TracerIDMod
Expand Down Expand Up @@ -1554,7 +1555,7 @@ subroutine ApplyFertilizerAtNoon(I,J,NHW,NHE,NVN,NVS)
D8990: DO NX=NHW,NHE
D8995: DO NY=NVN,NVS
IF(J.EQ.INT(SolarNoonHour_col(NY,NX)))THEN
write(114,*)'ApplyMineralFertilizer'

call ApplyMineralFertilizer(I,J,NY,NX,LFDPTH,OFC,OFN,OFP)
!
! SOIL LAYER NUMBER IN WHICH PLANT OR ANIMAL RESIDUES ARE APPLIED
Expand Down Expand Up @@ -1923,6 +1924,8 @@ subroutine ApplyMineralFertilizer(I,J,NY,NX,LFDPTH,OFC,OFN,OFP)
integer, intent(in) :: I,J,NY,NX
real(r8), intent(out) :: OFC(2),OFN(2),OFP(2)
integer, intent(out) :: LFDPTH

character(len=*), parameter :: subname='ApplyMineralFertilizer'
real(r8) :: BAREF
real(r8) :: CVRDF
real(r8) :: CAC
Expand Down Expand Up @@ -1953,6 +1956,7 @@ subroutine ApplyMineralFertilizer(I,J,NY,NX,LFDPTH,OFC,OFN,OFP)
! *A,*B=broadcast,banded
! Z4,Z3,ZU,ZO=NH4,NH3,urea,NO3
!
call PrintInfo('beg '//subname)
Z4A=FERT(1,I,NY,NX)
Z3A=FERT(2,I,NY,NX)
ZUA=FERT(3,I,NY,NX)
Expand Down Expand Up @@ -2005,7 +2009,7 @@ subroutine ApplyMineralFertilizer(I,J,NY,NX,LFDPTH,OFC,OFN,OFP)
ENDIF
ENDDO D65
ENDIF
write(114,*)'aaplyfert',LFDPTH

BAREF=1.0_r8-CVRDF
!
! RESET WIDTH AND DEPTH OF NH4 FERTILIZER BAND IF NEW BAND
Expand Down Expand Up @@ -2261,6 +2265,8 @@ subroutine ApplyMineralFertilizer(I,J,NY,NX,LFDPTH,OFC,OFN,OFP)
FertNFlx_CumYr_col(NY,NX)=FertNFlx_CumYr_col(NY,NX)+natomw*(Z4AX+Z4BX+Z3AX+Z3BX+ZUAX+ZUBX+ZOAX+ZOBX)
FerPFlx_CumYr_col(NY,NX)=FerPFlx_CumYr_col(NY,NX)+62.0_r8*(PMAX+PMBX)+93.0_r8*PHAX
ENDIF

call PrintInfo('end '//subname)
end subroutine ApplyMineralFertilizer
!------------------------------------------------------------------------------------------

Expand Down
2 changes: 1 addition & 1 deletion f90src/Modelpars/MicBGCPars.F90
Original file line number Diff line number Diff line change
Expand Up @@ -135,7 +135,7 @@ subroutine Init(this,nmicbguilds)
this%kiname(2) = 'cellulose'
this%kiname(3) = 'lignin'
this%cplxname(1) = 'woodylitr'
this%cplxname(2) = 'nwoodylit'
this%cplxname(2) = 'folialitr'
this%cplxname(3) = 'manure'
this%cplxname(4) = 'pom'
this%cplxname(5) = 'humus'
Expand Down
6 changes: 1 addition & 5 deletions f90src/Transport/Nonsalt/TranspNoSaltMod.F90
Original file line number Diff line number Diff line change
Expand Up @@ -638,11 +638,7 @@ subroutine ImportFluxFromOtherModules(I,NY,NX,trcsol_Irrig_flxM_vr)
RBGCSinkSoluteM_vr(ids_NO2,L,NY,NX) = (-RNut_MicbRelease_vr(ids_NO2,L,NY,NX)-trcn_GeoChem_soil_vr(ids_NO2,L,NY,NX))*dts_HeatWatTP
RBGCSinkSoluteM_vr(ids_H2PO4,L,NY,NX) = (-RNut_MicbRelease_vr(ids_H2PO4,L,NY,NX)-trcn_GeoChem_soil_vr(ids_H2PO4,L,NY,NX)+trcs_plant_uptake_vr(ids_H2PO4,L,NY,NX))*dts_HeatWatTP
RBGCSinkSoluteM_vr(ids_H1PO4,L,NY,NX) = (-RNut_MicbRelease_vr(ids_H1PO4,L,NY,NX)-trcn_GeoChem_soil_vr(ids_H1PO4,L,NY,NX)+trcs_plant_uptake_vr(ids_H1PO4,L,NY,NX))*dts_HeatWatTP
if(L<=3)then
write(115,*)L,NY,NX,ids_NH4,RBGCSinkSoluteM_vr(ids_NH4,L,NY,NX),RNut_MicbRelease_vr(ids_NH4,L,NY,NX),trcn_GeoChem_soil_vr(ids_NH4,L,NY,NX),trcs_plant_uptake_vr(ids_NH4,L,NY,NX)
write(116,*)L,NY,NX,ids_NO3,RBGCSinkSoluteM_vr(ids_NO3,L,NY,NX),RNut_MicbRelease_vr(ids_NO3,L,NY,NX),trcn_GeoChem_soil_vr(ids_NO3,L,NY,NX),trcs_plant_uptake_vr(ids_NO3,L,NY,NX)
write(117,*)L,NY,NX,ids_NO2,RBGCSinkSoluteM_vr(ids_NO2,L,NY,NX),RNut_MicbRelease_vr(ids_NO2,L,NY,NX),trcn_GeoChem_soil_vr(ids_NO2,L,NY,NX)
endif

RBGCSinkSoluteM_vr(ids_NH4B,L,NY,NX) = (-RNut_MicbRelease_vr(ids_NH4B,L,NY,NX)-trcn_RChem_band_soil_vr(ids_NH4B,L,NY,NX)+trcs_plant_uptake_vr(ids_NH4B,L,NY,NX))*dts_HeatWatTP
RBGCSinkSoluteM_vr(idg_NH3B,L,NY,NX) = (-trcn_RChem_band_soil_vr(idg_NH3B,L,NY,NX)+trcs_plant_uptake_vr(idg_NH3B,L,NY,NX))*dts_HeatWatTP
RBGCSinkSoluteM_vr(ids_NO3B,L,NY,NX) = (-RNut_MicbRelease_vr(ids_NO3B,L,NY,NX)-trcn_RChem_band_soil_vr(ids_NO3B,L,NY,NX)+trcs_plant_uptake_vr(ids_NO3B,L,NY,NX))*dts_HeatWatTP
Expand Down

0 comments on commit d98b1b9

Please sign in to comment.