RUFAS.biophysical.animal.digestive_system.manure_excretion_calculator module#
- class RUFAS.biophysical.animal.digestive_system.manure_excretion_calculator.ManureExcretionCalculator#
Bases:
object
- static calculate_calf_manure(body_weight: float, fecal_phosphorus: float, urine_phosphorus_required: float, nutrient_amounts: NutritionSupply) Tuple[float, AnimalManureExcretions] #
Calculates the manure excretion values for a calf with information from the ration formulation.
Notes#
Manure excretion: [AN.EXC.1] Urine excretion: [AN.EXC.2] Manure total solids excretion: [AN.EXC.3] Total volatile solids: [AN.EXC.4] Degradable volatile solids excretion: [AN.EXC.5] Non-degradable volatile solids excretion: [AN.EXC.6] Manure nitrogen excretion: [AN.EXC.7] Urine N excretion: [AN.EXC.8] Manure total ammoniacal nitrogen: [AN.EXC.9]
Parameters#
- body_weightfloat
Body weight of the current animal, kg.
- fecal_phosphorusfloat
Amount of fecal phosphorus excreted by the current animal, g.
- urine_phosphorus_requiredfloat
Amount of phosphorus required for urine production, g.
- nutrient_amountsNutritionSupply
Amounts of nutrients in pen ration, calculated per animal, see Notes section for units.
Returns#
- float
Total amount of phosphorus excreted by the given animal, g.
- AnimalManureExcretions
- A dictionary that contains the manure excretion values as specified
in the AnimalManureExcretions class definition.
References#
(ASABE, 2003; Nennich et al., 2005)
- static calculate_heifer_manure(body_weight: float, fecal_phosphorus: float, urine_phosphorus_required: float, nutrient_amount: NutritionSupply) Tuple[float, AnimalManureExcretions] #
Calculates the manure excretion values for a growing and close-up heifer with information from the ration formulation.
Notes#
Urine excretion: [AN.EXC.10] Total manure excretion: [AN.EXC.11] Total solids excretion: [AN.EXC.12] Total volatile solids excretion: [AN.EXC.13] Degradable volatile solids excretion: [AN.EXC.5] Non-degradable volatile solids excretion: [AN.EXC.6] Manure N excretion: [AN.EXC.14] Fecal N excretion: [AN.EXC.15] Urine N excretion: [AN.EXC.16] Manure total ammoniacal nitrogen: [AN.EXC.9] Manure K excretion: [AN.EXC.17]
Parameters#
- body_weightfloat
Body weight of the current animal, kg.
- fecal_phosphorusfloat
Amount of fecal phosphorus excreted by the current animal, g.
- urine_phosphorus_requiredfloat
Amount of phosphorus required for urine production, g.
- nutrient_amountNutritionSupply
Amounts of nutrients in pen ration, calculated per animal, see Notes section for units.
Returns#
- float
Total amount of phosphorus excreted by the given animal, g.
- AnimalManureExcretions
- A dictionary that contains the manure excretion values as specified
in the AnimalManureExcretions class definition.
Notes#
The dry matter (“dm”) unit is kg per animal. Crude protein (“CP”), ADF, NDF, lignin, ash, phosphorus, potassium, and nitrogen (“N”) are all percentages of dry matter.
References#
(ASABE, 2005; Nennich et al., 2005; Reed et al., 2015; Johnson et al., 2016; NASEM, 2021)
- static calculate_cow_manure(is_lactating: bool, body_weight: float, days_in_milk: int, milk_protein: float, daily_milk_production: float, fecal_phosphorus: float, urine_phosphorus_required: float, nutrient_amounts: NutritionSupply) Tuple[float, AnimalManureExcretions] #
Calculates the manure excretion values for a cow with information from the ration formulation.
Notes#
The dry matter (“dm”) unit is kg per animal. Crude protein (“CP”), ADF, NDF, lignin, ash, phosphorus, potassium, and nitrogen (“N”) are all percentages of dry matter.
Parameters#
- is_lactating: bool
Indicates cow’s lactating status.
- body_weight: float
Body weight of the current animal (kg).
- days_in_milk: int
Days in milk.
- milk_protein: float
Milk protein (from animal input), % of milk.
- daily_milk_production: float
Daily milk production of the current cow (kg).
- fecal_phosphorus: float
Amount of fecal phosphorus excreted by the current cow (g).
- urine_phosphorus_required: float
Amount of phosphorus required for urine production (g).
- nutrient_amounts: NutritionSupply
Amounts of nutrients in pen ration, calculated per animal, see Notes section for units.
Returns#
- float
Total amount of phosphorus excreted by the given animal (g).
- AnimalManureExcretions
- A dictionary that contains the manure excretion values as specified
in the AnimalManureExcretions class definition.
- static _calculate_lactating_cow_manure(days_in_milk: int, milk_protein: float, daily_milk_production: float, fecal_phosphorus: float, urine_phosphorus_required: float, nutrient_amounts: NutritionSupply) Tuple[float, AnimalManureExcretions] #
Calculates the manure excretion values for a lactating cow with information from the ration formulation.
Notes#
Fecal water excretion: [AN.EXC.18] Total solids/Fecal dry matter: [AN.EXC.19] Urine excretion: [AN.EXC.20] Total manure excretion: [AN.EXC.21] Organic matter intake: [AN.EXC.22] Degradable volatile solids: [AN.EXC.23] Total volatile solids excretion: [AN.EXC.24] Non-degradable volatile solids excretion: [AN.EXC.6] Manure N excretion: [AN.EXC.25] Fecal nitrogen: [AN.EXC.26] Urinary nitrogen: [AN.EXC.16] Manure total ammoniacal nitrogen: [AN.EXC.9] Manure K excretion: [AN.EXC.27]
The dry matter (“dm”) unit is kg per animal. Crude protein (“CP”), ADF, NDF, lignin, ash, phosphorus, potassium, and nitrogen (“N”) are all percentages of dry matter.
Parameters#
- days_in_milkint
Days in milk, days.
- milk_proteinfloat
Milk protein (from animal input), % of milk.
- daily_milk_productionfloat
Daily milk production of the current cow, kg.
- fecal_phosphorusfloat
Amount of fecal phosphorus excreted by the current cow, g.
- urine_phosphorus_requiredfloat
Amount of phosphorus required for urine production, g.
- nutrient_amountsDict[str, float]
Amounts of nutrients in pen ration, calculated per animal, see Notes section for units.
- nutrient_concentrationsDict[str, float]
Concentrations of nutrients in pen ration, calculated per animal, percentages.
Returns#
- float
Total amount of phosphorus excreted by the given animal, g.
- AnimalManureExcretions
- A dictionary that contains the manure excretion values as specified
in the AnimalManureExcretions class definition.
References#
(Nennich et al., 2005; Appuhamy et al., 2014; Reed et al., 2015; Appuhamy et al., 2018)
- static _calculate_dry_cow_manure(body_weight: float, daily_milk_production: float, fecal_phosphorus: float, urine_phosphorus_required: float, nutrient_amounts: NutritionSupply) Tuple[float, AnimalManureExcretions] #
Calculates the manure excretion values for a non-lactating cow with information from the ration formulation.
Notes#
Urine excretion: [AN.EXC.28] Total manure excretion: [AN.EXC.29] Total solids excretion: [AN.EXC.12] Organic matter intake: [AN.EXC.22] Degradable volatile solids: [AN.EXC.23] Total volatile solids excretion: [AN.EXC.24] Non-degradable volatile solids excretion: [AN.EXC.6] Manure N excretion: [AN.EXC.14] Fecal nitrogen: [AN.EXC.15] Urinary nitrogen: [AN.EXC.16] Manure total ammoniacal nitrogen: [AN.EXC.9] Manure K excretion: [AN.EXC.17]
The dry matter (“dm”) unit is kg per animal. Crude protein (“CP”), ADF, NDF, lignin, ash, phosphorus, potassium, and nitrogen (“N”) are all percentages of dry matter.
Parameters#
- body_weightfloat
Body weight of the current animal, kg.
- daily_milk_productionfloat
Daily milk production of the current animal, kg.
- fecal_phosphorusfloat
Amount of fecal phosphorus excreted by the current animal, g.
- urine_phosphorus_requiredfloat
Amount of phosphorus required for urine production, g.
- nutrient_amounts: Dict[str, float]
Amounts of nutrients in pen ration, calculated per animal, see Notes section for units.
- nutrient_concentrations: Dict[str, float]
Concentrations of nutrients in pen ration, calculated per animal, percentages.
Returns#
- float
Total amount of phosphorus excreted by the given animal, g.
- AnimalManureExcretions
- A dictionary that contains the manure excretion values as specified
in the AnimalManureExcretions class definition.
References#
(Wilkerson et al., 1997; Nennich et al., 2005; Appuhamy et al., 2014; Reed et al., 2015; Johnson et al., 2016; Appuhamy et al., 2018; NASEM, 2021)
- static _calculate_phosphorus_excretion_values(daily_milk_production: float, total_manure_excreted: float, fecal_phosphorus: float, urine_phosphorus_required: float) Tuple[float, float, float, float, float] #
Calculates a set of phosphorus excretion values produced by a given animal.
Notes#
Total phosphorus fraction of feces: [AN.EXC.30] Inorganic phosphorus fraction: [AN.EXC.31] Organic phosphorus fraction: [AN.EXC.32] Milk phosphorus: [AN.EXC.33] Manure P excreted by a cow: [AN.EXC.34] Total P excreted by a cow: [AN.EXC.35]
Parameters#
- daily_milk_productionfloat
Amount of daily milk produced by the animal, kg. This parameter should be set to 0 if this function is called for a non-cow animal.
- total_manure_excretedfloat
Amount of manure excreted by the animal, kg.
- fecal_phosphorusfloat
Amount of fecal phosphorus excreted by the animal, g.
- urine_phosphorus_requiredfloat
Amount of phosphorus required for urine production, g.
Returns#
- float
Total amount of phosphorus excreted by the animal, g.
- float
Fraction of extractable inorganic phosphorus, unitless.
- float
Fraction of water extractable organic phosphorus, unitless.
- float
Amount of manure phosphorus excreted, g.
- float
Fraction of phosphorus in the manure, unitless.
References#
(NRC, 2001; Vadas et al., 2007)