Source code for oemof.solph.options

# -*- coding: utf-8 -*-

"""Optional classes to be added to a network class."""

__copyright__ = "oemof developer group"
__license__ = "GPLv3"

[docs]class Investment: """ Parameters ---------- maximum : float Maximum of the additional invested capacity minimum : float Minimum of the addtional invested capacity ep_costs : float Equivalent periodical costs for the investment, if period is one year these costs are equal to the equivalent annual costs. """ def __init__(self, maximum=float('+inf'), minimum=0, ep_costs=0): self.maximum = maximum self.minimum = minimum self.ep_costs = ep_costs
[docs]class NonConvex: """ Parameters ---------- startup_costs : numeric Costs associated with a start of the flow (representing a unit). shutdown_costs : numeric Costs associated with the shutdown of the flow (representing a until). minimum_uptime : numeric Minimum time that a flow must be greater then its minimum flow after startup. minimum_downtime : numeric Minimum time a flow is forced to zero after shutting down. initial_status : numeric (0 or 1) Integer value indicating the status of the flow in the first time step (0 = off, 1 = on). """ def __init__(self, **kwargs): # super().__init__(self, **kwargs) self.startup_costs = kwargs.get('startup_costs') self.shutdown_costs = kwargs.get('shutdown_costs') self.minimum_uptime = kwargs.get('minimum_uptime') self.minimum_downtime = kwargs.get('minimum_downtime') self.initial_status = kwargs.get('initial_status', 0)