import yaml from Utilities.Time import get_start_time from Utilities.LoadProfile import get_load_profiles import matplotlib.pyplot as pl import pandas as pd # read config file c = yaml.safe_load(open("YAMLs/config.yml")) ## simulation time setup # get current time c["sim_start_time"] = get_start_time() # get time step in minutes, then convert to seconds dt = c["sim_time"]["time_step_minutes"] * 60 # compute end time based on duration in days duration = c["sim_time"]["duration_days"] * 24 * 60 * 60 c["sim_end_time"] = c["sim_start_time"] + duration # batch process hours in seconds c["sim_time"]["batch_process_seconds"] = c["sim_time"]["batch_process_hours"] * 60 * 60 # load site info c["site_info"] = yaml.safe_load(open(c["paths"]["site_info"])) cumulative_load_profiles = pd.DataFrame() # loop through timesteps for i in range( c["sim_start_time"], c["sim_end_time"], c["sim_time"]["batch_process_seconds"] ): # generate load profiles load_profiles = get_load_profiles( c, dt, c["sim_start_time"], c["sim_time"]["batch_process_seconds"] ) # add to cumulative load profiles cumulative_load_profiles = pd.concat([cumulative_load_profiles, load_profiles], axis=1