Module nemo.sim
The core of the simulation engine.
Functions
def run(context, starthour=None, endhour=None)
-
Expand source code
def run(context, starthour=None, endhour=None): """Run the simulation.""" if not isinstance(context.regions, list): raise TypeError if starthour is None: starthour = context.demand.index.min() if endhour is None: endhour = context.demand.index.max() date_range = pd.date_range(starthour, endhour, freq='h') _sim(context, date_range) # Calculate unserved energy. agg_demand = context.demand.sum(axis=1) agg_generation = context.generation.sum(axis=1) unserved = agg_demand - agg_generation # Ignore unserved events very close to 0 (rounding errors) context.unserved = unserved[~np.isclose(unserved, 0)]
Run the simulation.