@@ -246,7 +246,7 @@ subroutine Allocation1_PlantNPDemand (bounds, num_soilc, filter_soilc, num_soilp
246246 use shr_sys_mod , only: shr_sys_flush
247247 use elm_varctl , only: iulog,cnallocate_carbon_only,cnallocate_carbonnitrogen_only,&
248248 cnallocate_carbonphosphorus_only
249- use pftvarcon , only: npcropmin , declfact, bfact, aleaff, arootf, astemf, noveg
249+ use pftvarcon , only: iscft , declfact, bfact, aleaff, arootf, astemf, noveg
250250 use pftvarcon , only: arooti, fleafi, allconsl, allconss, grperc, grpnow, nsoybean
251251 use elm_varpar , only: nlevdecomp
252252 use elm_varcon , only: nitrif_n2o_loss_frac, secspday
@@ -645,7 +645,7 @@ subroutine Allocation1_PlantNPDemand (bounds, num_soilc, filter_soilc, num_soilp
645645 mr = leaf_mr(p) + froot_mr(p)
646646 if (woody(ivt(p)) >= 1.0_r8 ) then
647647 mr = mr + livestem_mr(p) + livecroot_mr(p)
648- else if (ivt(p) >= npcropmin ) then
648+ else if (iscft( ivt(p)) >= 1 ) then
649649 if (croplive(p)) mr = mr + livestem_mr(p) + grain_mr(p)
650650 end if
651651
@@ -726,7 +726,7 @@ subroutine Allocation1_PlantNPDemand (bounds, num_soilc, filter_soilc, num_soilp
726726
727727 f5 = 0._r8 ! continued intializations from above
728728
729- if (ivt(p) >= npcropmin ) then ! skip 2 generic crops
729+ if (iscft( ivt(p)) >= 1 ) then ! skip 2 generic crops
730730
731731 if (croplive(p)) then
732732 ! same phases appear in subroutine CropPhenology
@@ -859,7 +859,7 @@ subroutine Allocation1_PlantNPDemand (bounds, num_soilc, filter_soilc, num_soilp
859859 p_allometry(p) = 1._r8 / cpl + f1/ cpfr + (f3* f4* (1._r8 + f2))/ cplw + &
860860 (f3* (1._r8 - f4)* (1._r8 + f2))/ cpdw
861861
862- else if (ivt(p) >= npcropmin ) then ! skip generic crops
862+ else if (iscft( ivt(p)) >= 1 ) then ! skip generic crops
863863 cng = graincn(ivt(p))
864864 cpg = graincp(ivt(p))
865865 c_allometry(p) = (1._r8 + g1)* (1._r8 + f1+ f5+ f3* (1._r8 + f2))
@@ -889,10 +889,10 @@ subroutine Allocation1_PlantNPDemand (bounds, num_soilc, filter_soilc, num_soilp
889889 ! retransn pool has N from leaves, stems, and roots for
890890 ! retranslocation
891891
892- if (ivt(p) >= npcropmin .and. grain_flag(p) == 1._r8 ) then
892+ if (iscft( ivt(p)) >= 1 .and. grain_flag(p) == 1._r8 ) then
893893 avail_retransn(p) = plant_ndemand(p)
894894 avail_retransp(p) = plant_pdemand(p)
895- else if (ivt(p) < npcropmin .and. annsum_potential_gpp(p) > 0._r8 ) then
895+ else if (iscft( ivt(p)) < 1 .and. annsum_potential_gpp(p) > 0._r8 ) then
896896 avail_retransn(p) = (annmax_retransn(p)/ 2._r8 )* (gpp(p)/ annsum_potential_gpp(p))/ dt
897897 avail_retransp(p) = (annmax_retransp(p)/ 2._r8 )* (gpp(p)/ annsum_potential_gpp(p))/ dt
898898 else
@@ -1105,10 +1105,10 @@ subroutine Allocation3_PlantCNPAlloc (bounds , &
11051105 use shr_sys_mod , only: shr_sys_flush
11061106 use elm_varctl , only: iulog,cnallocate_carbon_only,cnallocate_carbonnitrogen_only,&
11071107 cnallocate_carbonphosphorus_only
1108- ! use pftvarcon , only: npcropmin , declfact, bfact, aleaff, arootf, astemf
1108+ ! use pftvarcon , only: iscft , declfact, bfact, aleaff, arootf, astemf
11091109! use pftvarcon , only: arooti, fleafi, allconsl, allconss, grperc, grpnow, nsoybean
11101110 use pftvarcon , only: noveg
1111- use pftvarcon , only: npcropmin , grperc, grpnow
1111+ use pftvarcon , only: iscft , grperc, grpnow
11121112 use elm_varpar , only: nlevdecomp ! !nlevsoi,
11131113 use elm_varcon , only: nitrif_n2o_loss_frac, secspday
11141114! use landunit_varcon , only: istsoil, istcrop
@@ -1393,7 +1393,7 @@ subroutine Allocation3_PlantCNPAlloc (bounds , &
13931393
13941394 fcur = fcur2(ivt(p))
13951395
1396- if (ivt(p) >= npcropmin ) then ! skip 2 generic crops
1396+ if (iscft( ivt(p)) >= 1 ) then ! skip 2 generic crops
13971397 if (croplive(p)) then
13981398 f1 = aroot(p) / aleaf(p)
13991399 f3 = astem(p) / aleaf(p)
@@ -1412,10 +1412,10 @@ subroutine Allocation3_PlantCNPAlloc (bounds , &
14121412 plant_n_buffer_patch(p) = plant_n_buffer_patch(p) * (1._r8 - dt/ taun)
14131413 plant_p_buffer_patch(p) = plant_p_buffer_patch(p) * (1._r8 - dt/ taun)
14141414
1415- if (ivt(p) >= npcropmin .and. grain_flag(p) == 1._r8 ) then
1415+ if (iscft( ivt(p)) >= 1 .and. grain_flag(p) == 1._r8 ) then
14161416 avail_retransn(p) = retransn(p)/ dt
14171417 avail_retransp(p) = retransp(p)/ dt
1418- else if (ivt(p) < npcropmin .and. annsum_potential_gpp(p) > 0._r8 ) then
1418+ else if (iscft( ivt(p)) < 1 .and. annsum_potential_gpp(p) > 0._r8 ) then
14191419 avail_retransn(p) = (annmax_retransn(p)/ 2._r8 )* (gpp(p)/ annsum_potential_gpp(p))/ dt
14201420 avail_retransp(p) = (annmax_retransp(p)/ 2._r8 )* (gpp(p)/ annsum_potential_gpp(p))/ dt
14211421 else
@@ -1436,7 +1436,7 @@ subroutine Allocation3_PlantCNPAlloc (bounds , &
14361436 mr = leaf_mr(p) + froot_mr(p)
14371437 if (woody(ivt(p)) >= 1.0_r8 ) then
14381438 mr = mr + livestem_mr(p) + livecroot_mr(p)
1439- else if (ivt(p) >= npcropmin ) then
1439+ else if (iscft( ivt(p)) >= 1 ) then
14401440 if (croplive(p)) mr = mr + livestem_mr(p) + grain_mr(p)
14411441 end if
14421442 ! try to take mr from xsmr storage pool first
@@ -1530,7 +1530,7 @@ subroutine Allocation3_PlantCNPAlloc (bounds , &
15301530 p_allometry(p) = 1._r8 / cpl + f1/ cpfr + (f3* f4* (1._r8 + f2))/ cplw + &
15311531 (f3* (1._r8 - f4)* (1._r8 + f2))/ cpdw
15321532
1533- else if (ivt(p) >= npcropmin ) then ! skip generic crops
1533+ else if (iscft( ivt(p)) >= 1 ) then ! skip generic crops
15341534 cng = graincn(ivt(p))
15351535 cpg = graincp(ivt(p))
15361536 c_allometry(p) = (1._r8 + g1)* (1._r8 + f1+ f5+ f3* (1._r8 + f2))
@@ -1614,7 +1614,7 @@ subroutine Allocation3_PlantCNPAlloc (bounds , &
16141614 cpool_to_xsmrpool(p) = cpool_to_xsmrpool(p) + nlc * f2 * f3 * (1._r8 - f4) * fcur * (1 + g1)
16151615 cpool_to_xsmrpool(p) = cpool_to_xsmrpool(p) + nlc * f2 * f3 * (1._r8 - f4) * (1._r8 - fcur) * (1 + g1)
16161616 end if
1617- if (ivt(p) >= npcropmin ) then ! skip 2 generic crops
1617+ if (iscft( ivt(p)) >= 1 ) then ! skip 2 generic crops
16181618 cpool_to_xsmrpool(p) = cpool_to_xsmrpool(p) + nlc * f3 * f4 * fcur * (1 + g1)
16191619 cpool_to_xsmrpool(p) = cpool_to_xsmrpool(p) + nlc * f3 * f4 * (1._r8 - fcur) * (1 + g1)
16201620 cpool_to_xsmrpool(p) = cpool_to_xsmrpool(p) + nlc * f3 * (1._r8 - f4) * fcur * (1 + g1)
@@ -1645,7 +1645,7 @@ subroutine Allocation3_PlantCNPAlloc (bounds , &
16451645 cpool_to_deadcrootc(p) = nlc * f2 * f3 * (1._r8 - f4) * fcur
16461646 cpool_to_deadcrootc_storage(p) = nlc * f2 * f3 * (1._r8 - f4) * (1._r8 - fcur)
16471647 end if
1648- if (ivt(p) >= npcropmin ) then ! skip 2 generic crops
1648+ if (iscft( ivt(p)) >= 1 ) then ! skip 2 generic crops
16491649 cpool_to_livestemc(p) = nlc * f3 * f4 * fcur
16501650 cpool_to_livestemc_storage(p) = nlc * f3 * f4 * (1._r8 - fcur)
16511651 cpool_to_deadstemc(p) = nlc * f3 * (1._r8 - f4) * fcur
@@ -1698,7 +1698,7 @@ subroutine Allocation3_PlantCNPAlloc (bounds , &
16981698 npool_to_deadcrootn(p) = (nlc * f2 * f3 * (1._r8 - f4) / cndw) * fcur
16991699 npool_to_deadcrootn_storage(p) = (nlc * f2 * f3 * (1._r8 - f4) / cndw) * (1._r8 - fcur)
17001700 end if
1701- if (ivt(p) >= npcropmin ) then ! skip 2 generic crops
1701+ if (iscft( ivt(p)) >= 1 ) then ! skip 2 generic crops
17021702 cng = graincn(ivt(p))
17031703 npool_to_livestemn(p) = (nlc * f3 * f4 / cnlw) * fcur
17041704 npool_to_livestemn_storage(p) = (nlc * f3 * f4 / cnlw) * (1._r8 - fcur)
@@ -1742,7 +1742,7 @@ subroutine Allocation3_PlantCNPAlloc (bounds , &
17421742 ppool_to_deadcrootp(p) = (nlc * f2 * f3 * (1._r8 - f4) / cpdw)* fcur
17431743 ppool_to_deadcrootp_storage(p) = (nlc * f2 * f3 * (1._r8 - f4) / cpdw)* (1._r8 - fcur)
17441744 end if
1745- if (ivt(p) >= npcropmin ) then ! skip 2 generic crops
1745+ if (iscft( ivt(p)) >= 1 ) then ! skip 2 generic crops
17461746 cpg = graincp(ivt(p))
17471747 ppool_to_livestemp(p) = (nlc * f3 * f4 / cplw) * fcur
17481748 ppool_to_livestemp_storage(p) = (nlc * f3 * f4 / cplw) * (1._r8 - fcur)
@@ -1772,7 +1772,7 @@ subroutine Allocation3_PlantCNPAlloc (bounds , &
17721772 gresp_storage = gresp_storage + cpool_to_livecrootc_storage(p)
17731773 gresp_storage = gresp_storage + cpool_to_deadcrootc_storage(p)
17741774 end if
1775- if (ivt(p) >= npcropmin ) then ! skip 2 generic crops
1775+ if (iscft( ivt(p)) >= 1 ) then ! skip 2 generic crops
17761776 gresp_storage = gresp_storage + cpool_to_livestemc_storage(p)
17771777 gresp_storage = gresp_storage + cpool_to_grainc_storage(p)
17781778 end if
@@ -1820,7 +1820,7 @@ subroutine Allocation3_PlantCNPAlloc (bounds , &
18201820 npool_to_deadcrootn(p) = cpool_to_deadcrootc(p) / cndw
18211821 npool_to_deadcrootn_storage(p) = cpool_to_deadcrootc_storage(p) / cndw
18221822 end if
1823- if (ivt(p) >= npcropmin ) then ! skip 2 generic crops
1823+ if (iscft( ivt(p)) >= 1 ) then ! skip 2 generic crops
18241824 cng = graincn(ivt(p))
18251825 supplement_to_sminn_vr(c,1 ) = supplement_to_sminn_vr(c,1 ) + cpool_to_livestemc(p) / cnlw - npool_to_livestemn(p)
18261826 supplement_to_sminn_vr(c,1 ) = supplement_to_sminn_vr(c,1 ) + cpool_to_livestemc_storage(p) / cnlw &
@@ -1891,7 +1891,7 @@ subroutine Allocation3_PlantCNPAlloc (bounds , &
18911891 ppool_to_deadcrootp(p) = cpool_to_deadcrootc(p) / cpdw
18921892 ppool_to_deadcrootp_storage(p) = cpool_to_deadcrootc_storage(p) / cpdw
18931893 end if
1894- if (ivt(p) >= npcropmin ) then ! skip 2 generic crops
1894+ if (iscft( ivt(p)) >= 1 ) then ! skip 2 generic crops
18951895 cpg = graincp(ivt(p))
18961896 supplement_to_sminp_vr(c,1 ) = supplement_to_sminp_vr(c,1 ) + max (cpool_to_livestemc(p) / cplw &
18971897 - ppool_to_livestemp(p),0._r8 )
0 commit comments