RUFAS.routines.manure.manure_separators.manure_separator_classes module#

class RUFAS.routines.manure.manure_separators.manure_separator_classes.ManureSeparatorType(*values)#

Bases: Enum

Enumerates the different types of manure separators.

Attributes#

ROTARY_SCREENstr

The rotary screen method of manure separation.

SCREW_PRESSstr

The screw press method of manure separation.

BELT_PRESSstr

The belt press method of manure separation.

DECANTING_CENTRIFUGEstr

The decanting centrifuge method of manure separation.

MOVING_DISC_PRESSstr

The moving disc press method of manure separation.

SLOPE_SCREENstr

The slope screen method of manure separation.

MECHANICAL_SAND_SEPARATORstr

The mechanical sand separator method of sand-manure separation.

SAND_LANE_MANURE_SEPARATIONstr

The sand lane method of sand-manure separation.

ROTARY_SCREEN = 'rotary screen'#
SCREW_PRESS = 'screw press'#
BELT_PRESS = 'belt press'#
DECANTING_CENTRIFUGE = 'decanting centrifuge'#
MOVING_DISC_PRESS = 'moving disc press'#
SLOPE_SCREEN = 'slope screen'#
MECHANICAL_SAND_SEPARATOR = 'mechanical sand separator'#
SAND_LANE_MANURE_SEPARATION = 'sand lane manure separation'#
class RUFAS.routines.manure.manure_separators.manure_separator_classes.BaseManureSeparator(name: str, manure_separator_config: ManureSeparatorConfig)#

Bases: object

Base class for all manure separators.

Attributes#

namestr

The unique name for the separator configuration used in this separator.

configManureSeparatorConfig

The configuration for the manure separator.

__init__(name: str, manure_separator_config: ManureSeparatorConfig) None#
daily_update(manure_separator_daily_input: LiquidManurePortionProtocol) ManureSeparatorDailyOutput#

Calculates the daily output of the manure separator.

Notes:

“pseudocode_manure_management” MS.4

Args:

manure_separator_daily_input: A daily output object that can come from a reception pit or an anaerobic digester.

Returns:

ManureSeparatorDailyOutput object containing the daily output of the manure separator.

class RUFAS.routines.manure.manure_separators.manure_separator_classes.BeltPress(name: str, manure_separator_config: ManureSeparatorConfig)#

Bases: BaseManureSeparator

Class for a belt press manure separator.

Attributes:

All inherited from BaseManureSeparator.

class RUFAS.routines.manure.manure_separators.manure_separator_classes.DecantingCentrifuge(name: str, manure_separator_config: ManureSeparatorConfig)#

Bases: BaseManureSeparator

Class for a decanting centrifuge manure separator.

Attributes:

All inherited from BaseManureSeparator.

class RUFAS.routines.manure.manure_separators.manure_separator_classes.MechanicalSeparator(name: str, manure_separator_config: ManureSeparatorConfig)#

Bases: BaseManureSeparator

Class for a mechanical separator manure separator.

Attributes:

All inherited from BaseManureSeparator.

class RUFAS.routines.manure.manure_separators.manure_separator_classes.MovingDiscPress(name: str, manure_separator_config: ManureSeparatorConfig)#

Bases: BaseManureSeparator

Class for a moving disc press manure separator.

Attributes:

All inherited from BaseManureSeparator.

class RUFAS.routines.manure.manure_separators.manure_separator_classes.RotaryScreen(name: str, manure_separator_config: ManureSeparatorConfig)#

Bases: BaseManureSeparator

Class for a rotary screen manure separator.

Attributes:

All inherited from BaseManureSeparator.

class RUFAS.routines.manure.manure_separators.manure_separator_classes.ScrewPress(name: str, manure_separator_config: ManureSeparatorConfig)#

Bases: BaseManureSeparator

Class for a screw press manure separator.

Attributes:

All inherited from BaseManureSeparator.

class RUFAS.routines.manure.manure_separators.manure_separator_classes.Sedimentation(name: str, manure_separator_config: ManureSeparatorConfig)#

Bases: BaseManureSeparator

Class for a sedimentation manure separator.

Attributes:

All inherited from BaseManureSeparator.

class RUFAS.routines.manure.manure_separators.manure_separator_classes.SlopeScreen(name: str, manure_separator_config: ManureSeparatorConfig)#

Bases: BaseManureSeparator

Class for a slope screen manure separator.

Attributes:

All inherited from BaseManureSeparator.

class RUFAS.routines.manure.manure_separators.manure_separator_classes.SandLaneSystem(name: str, manure_separator_config: ManureSeparatorConfig)#

Bases: BaseManureSeparator

Class for a sand lane system manure separator.

Attributes:

All inherited from BaseManureSeparator.

class RUFAS.routines.manure.manure_separators.manure_separator_classes.MechanicalSandSeparator(name: str, manure_separator_config: ManureSeparatorConfig)#

Bases: BaseManureSeparator

Class for a mechanical sand separator manure separator.

Attributes:

All inherited from BaseManureSeparator.

class RUFAS.routines.manure.manure_separators.manure_separator_classes.ManureSeparatorConfig(manure_separator_type: ManureSeparatorType, percent_dry_solids: float = 1.0, total_solids_removal_efficiency_for_separator: float = 0.0, volatile_solids_removal_efficiency_for_separator: float = 0.0, nitrogen_removal_efficiency_for_separator: float = 0.0, total_ammoniacal_nitrogen_removal_efficiency_for_separator: float = 0.0, phosphorus_removal_efficiency_for_separator: float = 0.0, potassium_removal_efficiency_for_separator: float = 0.0)#

Bases: object

Class for storing manure separator configuration data.

Attributes#

manure_separator_typeManureSeparatorType

The type of manure separator that will be created with this configuration.

percent_dry_solidsfloat, default 1.0

Percent dry content in manure solids.

total_solids_removal_efficiency_for_separatorfloat, default 0.0

Percent of total solids removed from manure.

volatile_solids_removal_efficiency_for_separatorfloat, default 0.0

Percent of volatile solids removed from manure.

nitrogen_removal_efficiency_for_separatorfloat, default 0.0

Percent of nitrogen removed from manure.

total_ammoniacal_nitrogen_removal_efficiency_for_separatorfloat, default 0.0

Percent of total ammonia nitrogen removed from manure.

phosphorus_removal_efficiency_for_separatorfloat, default 0.0

Percent of phosphorus removed from manure.

potassium_removal_efficiency_for_separatorfloat, default 0.0

Percent of potassium removed from manure.

manure_separator_type: ManureSeparatorType#
percent_dry_solids: float = 1.0#
total_solids_removal_efficiency_for_separator: float = 0.0#
volatile_solids_removal_efficiency_for_separator: float = 0.0#
nitrogen_removal_efficiency_for_separator: float = 0.0#
total_ammoniacal_nitrogen_removal_efficiency_for_separator: float = 0.0#
phosphorus_removal_efficiency_for_separator: float = 0.0#
potassium_removal_efficiency_for_separator: float = 0.0#
__init__(manure_separator_type: ManureSeparatorType, percent_dry_solids: float = 1.0, total_solids_removal_efficiency_for_separator: float = 0.0, volatile_solids_removal_efficiency_for_separator: float = 0.0, nitrogen_removal_efficiency_for_separator: float = 0.0, total_ammoniacal_nitrogen_removal_efficiency_for_separator: float = 0.0, phosphorus_removal_efficiency_for_separator: float = 0.0, potassium_removal_efficiency_for_separator: float = 0.0) None#
class RUFAS.routines.manure.manure_separators.manure_separator_classes.ManureSeparatorFactory#

Bases: object

A class that contains the logic for creating different types of manure separators.

classmethod get_instance(configuration_name: str, manure_separator_config: ManureSeparatorConfig) BaseManureSeparator#

Return an instance of a specific subtype of BaseManureSeparator.

Parameters#

configuration_namestr

The name of the manure separator type.

manure_separator_configManureSeparatorConfig

A manure separator config to be used to manufacture the separator.

Returns#

BaseManureSeparator

An instance of a specific subtype of BaseManureSeparator.