def load_state(): storage = get_storage() user_config.update(storage['configuration'].to_dict()) # set up the times startidx = int(storage['times'][0].strip('t')) times = TimeIndex(storage['times'].index, startidx) intervalhrs = (times.strings.index[1] - times.strings.index[0]).total_seconds() / 3600.0 times._int_division = user_config.hours_commitment / intervalhrs times._int_overlap = user_config.hours_overlap / intervalhrs if len(times) <= times._int_division: # dont set overlap for last stage times._int_overlap = 0 # create power_system power_system, times, scenario_tree = parse_standalone(storage, times) generators = power_system.generators() # set up initial state t = times.initialTime status = correct_status(storage['status']).ix[t] for gen in generators: g = str(gen) gen.set_initial_condition(power=storage['power'][g][t], status=status[g], hoursinstatus=storage['hrsinstatus'][g][t]) return power_system, times, scenario_tree
def load_state(): storage = get_storage() user_config.update(storage['configuration'].to_dict()) # set up the times startidx = int(storage['times'][0].strip('t')) times = TimeIndex(storage['times'].index, startidx) intervalhrs = (times.strings.index[1] - times.strings.index[0] ).total_seconds() / 3600.0 times._int_division = user_config.hours_commitment / intervalhrs times._int_overlap = user_config.hours_overlap / intervalhrs if len(times) <= times._int_division: # dont set overlap for last stage times._int_overlap = 0 # create power_system power_system, times, scenario_tree = parse_standalone(storage, times) generators = power_system.generators() # set up initial state t = times.initialTime status = correct_status(storage['status']).ix[t] for gen in generators: g = str(gen) gen.set_initial_condition( power=storage['power'][g][t], status=status[g], hoursinstatus=storage['hrsinstatus'][g][t]) return power_system, times, scenario_tree
def _get_outputs(self, resolve=False): if resolve: # observed generator power # resolved on the first scenario instance # -- no more scenario labeling is needed self.generators_power = self.gen_time_df('power', None) self.generators_status = self.gen_time_df('status', None) else: self.generators_power_scenarios = self.stg_panel('power') self.generators_status_scenarios = \ correct_status(self.stg_panel('status')) self.expected_status = \ self.generators_status_scenarios[self.scenarios[0]] self.generators_status = self.expected_status.copy() self.expected_power = self.generators_power = self._calc_expected( self.generators_power_scenarios) return
def _get_outputs(self): self.generators_power = self.gen_time_df('power') self.generators_status = correct_status(self.gen_time_df('status'))