ethos_penalps.process_nodes.process_step#

Module Contents#

Classes#

ProcessStep

Is a class which represents an individual process step of an industry process.

Attributes#

logger

ethos_penalps.process_nodes.process_step.logger#
class ethos_penalps.process_nodes.process_step.ProcessStep(name: str, stream_handler: ethos_penalps.stream_handler.StreamHandler, production_plan: ethos_penalps.production_plan.ProductionPlan, load_profile_handler: ethos_penalps.load_profile_calculator.LoadProfileHandler, enterprise_time_data: ethos_penalps.time_data.TimeData)#

Bases: ethos_penalps.process_nodes.process_node.ProcessNode

Is a class which represents an individual process step of an industry process. Its two main components are the process_state_handler and the production_branch_dict. The production branch dict contains production branches which are used to check the coherence of the production activity of this process step and the upstream and downstream nodes. The process states handler contains all features which determine the temporal and logical behavior of a process step during production and idle time.

__str__() str#
process_input_order(input_node_operation: ethos_penalps.node_operations.NodeOperation) ethos_penalps.node_operations.NodeOperation#

Conducts the incoming node operations. Currently DownstreamValidationOperation and UpstreamNewProductionOrder are supported

  1. For DownstreamValidationOperation it is checked if the production branch of the current node is fulfilled.
    • branch_is_fulfilled==True:
      1. The current branch is stored to the production plan

      2. A new DownstreamValidationOperation is created for the downstream node

    • branch_is_fulfilled==False:
      1. A new UpstreamNewProductionOrders is created to produce the missing product

  2. From a new UpstreamNewProductionOrder
    1. A new Production branch is created

    2. A new UpstreamNewProductionOrder is created and returned

Returns:

_description_

Return type:

list[ProductionOrder]

create_down_stream_validation_operation(current_production_branch: ethos_penalps.process_node_communicator.ProcessNodeCommunicator, downstream_validation_operation: ethos_penalps.node_operations.DownstreamValidationOrder) ethos_penalps.node_operations.DownstreamValidationOrder#
get_last_fulfilled_production_branch() ethos_penalps.process_node_communicator.ProcessNodeCommunicator | ethos_penalps.process_node_communicator.EmptyProductionBranch#
get_downstream_node_name() str#
get_upstream_node_name() str#
create_main_mass_balance(commodity: ethos_penalps.data_classes.Commodity, input_to_output_conversion_factor: float, main_input_stream: ethos_penalps.stream.ContinuousStream | ethos_penalps.stream.BatchStream, main_output_stream: ethos_penalps.stream.ContinuousStream | ethos_penalps.stream.BatchStream) ethos_penalps.mass_balance.MassBalance#

Mass balance is an output mass balance

get_input_stream_name() str#
get_output_stream_name()#