Skip to content

Commit eaa1192

Browse files
authored
Merge pull request #28 from natcap/bugfix/intake-27-revised-max-intake
correct calculation of revised max intake
2 parents a8e0592 + 95e4427 commit eaa1192

File tree

1 file changed

+9
-8
lines changed

1 file changed

+9
-8
lines changed

src/rangeland_production/forage.py

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -12168,17 +12168,18 @@ def revise_max_intake(
1216812168
(CRD1 != _IC_NODATA) &
1216912169
(CRD2 != _IC_NODATA))
1217012170

12171-
corrected_protein_intake = degr_protein_intake
12171+
corrected_protein_intake = degr_protein_intake.copy()
12172+
feeding_level = numpy.zeros(max_intake.shape, dtype=numpy.float32)
12173+
feeding_level[valid_mask] = (
12174+
energy_intake[valid_mask] / energy_maintenance[valid_mask]) - 1
1217212175
high_intake_mask = (
12173-
(((energy_intake / energy_maintenance) - 1) > 0) &
12176+
(feeding_level > 0) &
1217412177
valid_mask)
1217512178
corrected_protein_intake[high_intake_mask] = (
12176-
degr_protein_intake[high_intake_mask] *
12177-
(1. - (
12178-
CRD1[high_intake_mask] - CRD2[high_intake_mask] *
12179+
degr_protein_intake[high_intake_mask] * (
12180+
1. - CRD1[high_intake_mask] - CRD2[high_intake_mask] *
1217912181
total_digestibility[high_intake_mask]) *
12180-
(energy_intake[high_intake_mask] /
12181-
energy_maintenance[high_intake_mask]) - 1.))
12182+
feeding_level[high_intake_mask])
1218212183

1218312184
reduction_factor = numpy.empty(max_intake.shape, dtype=numpy.float32)
1218412185
reduction_factor[valid_mask] = 1.
@@ -12201,7 +12202,7 @@ def revise_max_intake(
1220112202
corrected_protein_intake[insuff_cross_mask] /
1220212203
protein_req[insuff_cross_mask])) * 0.75))
1220312204
# apply the reduction factor
12204-
max_intake_revised = max_intake
12205+
max_intake_revised = max_intake.copy()
1220512206
max_intake_revised[valid_mask] = (
1220612207
max_intake[valid_mask] * reduction_factor[valid_mask])
1220712208
return max_intake_revised

0 commit comments

Comments
 (0)