Module nemo.costs.null

All-zero cost class suitable for testing.

Classes

class NullCosts (discount=0, coal_price=0, gas_price=0, ccs_price=0)
Expand source code
class NullCosts:
    """All costs are zero. Useful for debugging."""

    # pylint: disable=unused-argument
    def __init__(self, discount=0, coal_price=0, gas_price=0, ccs_price=0):
        """Construct an all-zero costs object."""
        self.capcost_per_kw = defaultdict(lambda: 0)
        self.fixed_om_costs = defaultdict(lambda: 0)
        self.opcost_per_mwh = defaultdict(lambda: 0)
        # a dictionary of dictionary of zeros
        self.totcost_per_kwh = defaultdict(lambda: defaultdict(lambda: 0))
        self.ccs_storage_per_t = 0
        self.bioenergy_price_per_gj = 0
        self.coal_price_per_gj = 0
        self.gas_price_per_gj = 0
        self.diesel_price_per_litre = 0
        self.carbon = 0

    def annuity_factor(self, lifetime):
        """Return the annuity factor for lifetime t."""
        return 1

All costs are zero. Useful for debugging.

Construct an all-zero costs object.

Methods

def annuity_factor(self, lifetime)
Expand source code
def annuity_factor(self, lifetime):
    """Return the annuity factor for lifetime t."""
    return 1

Return the annuity factor for lifetime t.