RUFAS.biophysical.manure.handler.handler module#

class RUFAS.biophysical.manure.handler.handler.Handler(name: str, processor_type: str, cleaning_water_use_amount: float, cleaning_water_recycle_fraction: float, use_parlor_flush: bool)#

Bases: Processor

Base class for all handlers.

Parameters#

namestr

Unique identifier of the processor.

cleaning_water_use_amountfloat

Amount of cleaning water used per animal per day (L).

cleaning_water_recycle_fractionfloat

Fraction of cleaning water that is from recycled (not fresh) water sources.

use_parlor_flushbool

Indication for if a parlor flush is used in addition to routine parlor water cleaning with fresh water.

Attributes#

manure_streamManureStream

The ManureStream instance being checked for compatibility.

handler_type: str

The type of manure handler.

cleaning_water_use_amountfloat

Amount of cleaning water used per animal per day (L).

cleaning_water_recycle_fractionfloat

Fraction of cleaning water that is from recycled (not fresh) water sources.

use_parlor_flushbool

Indication for if a parlor flush is used in addition to routine parlor water cleaning with fresh water.

__init__(name: str, processor_type: str, cleaning_water_use_amount: float, cleaning_water_recycle_fraction: float, use_parlor_flush: bool)#

Initializes a new Processor.

receive_manure(manure_stream: ManureStream) None#

Implements the basic checks for receiving manure stream.

Parameters#

manure_streamManureStream

The ManureStream instance being checked for compatibility.

process_manure(conditions: CurrentDayConditions, time: RufasTime) dict[str, ManureStream]#

Executes the daily manure processing operations.

Parameters#

conditionsCurrentDayConditions

Current weather and environmental conditions that manure is being processed in.

timeRufasTime

RufasTime instance containing the simulations temporal information.

Returns#

dict[str, ManureStream]

Mapping between classification of manure coming out of this handler to the ManureStream containing the manure information.

determine_handler_cleaning_water_volume(num_animals: int, cleaning_water_use_rate: float, cleaning_water_recycle_fraction: float) float#
Calculates the volume of fresh (non-recycled) cleaning water used for, and ultimately added to, a single manure

stream on a single simulation day by the manure handler.

Parameters#

num_animalsint

Number of animals.

cleaning_water_use_ratefloat

Rate of cleaning water used per animal per day (unitless).

cleaning_water_recycle_fractionfloat

The fraction of cleaning water recycled (unitless).

Returns#

float

The volume of fresh (non-recycled) cleaning water (L).

Notes#

For parlor cleaning handlers, this water volume
represents an optional parlor flush (separate from fresh water only cleaning water). For all other handler

types, this water volume represents water use by handlers in the pen, such as a barn floor flush system.

check_manure_stream_compatibility(manure_stream: ManureStream) bool#

Basic checks for receiving manure stream.

Parameters#

manure_streamManureStream

The ManureStream instance being checked for compatibility.

static determine_ammonia_resistance(temp: float) float#

Calculate resistance of ammonia transport to the atmosphere in a barn.

Parameters#

tempfloat

Temperature in Celsius (C).

Returns#

float

Resistance of ammonia transport to the atmosphere in a barn (s/m).

static determine_fresh_water_volume_used_for_milking(num_animals: int) float#

Calculates the volume of fresh water used for milking. Parameters ———- num_animals : int

Number of animals.

Returns#

float The volume of fresh water used for milking (L).

static determine_total_cleaning_water_volume(cleaning_water_volume: float, fresh_water_volume_used_for_milking: float) float#

Calculates the total volume of cleaning water.

Parameters#

cleaning_water_volumefloat

Volume of cleaning water (L).

fresh_water_volume_used_for_milkingfloat

Volume of fresh water used for milking (L).

Returns#

float

The total volume of cleaning water (m^3).

static determine_manure_water(manure_stream_water: float, total_cleaning_water_volume: float) float#

Calculates the amount of manure water.

Parameters#

manure_stream_waterfloat

The amount of water in manure stream (KG).

total_cleaning_water_volumefloat

The amount of total_cleaning_water_volume (L).

Returns#

The amount of manure water (KG).

_abc_impl = <_abc._abc_data object>#