-
Notifications
You must be signed in to change notification settings - Fork 65
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Trying to learn how to do timeseries with epri SecondaryTestCircuit
- Loading branch information
Showing
3 changed files
with
228 additions
and
20 deletions.
There are no files selected for viewing
173 changes: 173 additions & 0 deletions
173
omf/scratch/hostingcapacity/dsstestcircuit/Master copy.DSS
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,173 @@ | ||
Clear | ||
ClearAll | ||
|
||
New Circuit.SecondaryTestCircuit pu=1.0 bus1=bussource basekV=46.0 R1=1.036 X1=10.1433 R0=5.462 X0=34.1897 | ||
|
||
Redirect loadshapes_varysubv.dss | ||
edit vsource.source duty=SubVoltage | ||
|
||
Redirect loadshapes.dss | ||
Redirect linecodes.dss | ||
|
||
Redirect substation.dss | ||
Redirect linestrafosloads.dss | ||
|
||
MakeBusList | ||
Set Voltagebases=(46, 12.47, 0.41569219) | ||
CalcVoltagebases | ||
export voltages "volts.csv" | ||
Buscoords buscoords.dss | ||
|
||
New "EnergyMeter.feeder" element=line.MDV_SUB_1_HSB terminal=1 | ||
|
||
! set mode=snap controlmode=static maxcontroliter=50 maxiterations=25 miniterations=1 | ||
! solve | ||
new object=monitor.monitor-load-load4_2 element=Loadshape.load4_2 terminal=1 mode=6 | ||
new object=monitor.monitor-load-load10_2 element=Loadshape.load10_2 terminal=1 mode=6 | ||
new object=monitor.monitor-load-load3_3 element=Loadshape.load3_3 terminal=1 mode=6 | ||
new object=monitor.monitor-load-load9_1 element=Loadshape.load9_1 terminal=1 mode=6 | ||
new object=monitor.monitor-load-load8_1 element=Loadshape.load8_1 terminal=1 mode=6 | ||
new object=monitor.monitor-load-load8_3 element=Loadshape.load8_3 terminal=1 mode=6 | ||
new object=monitor.monitor-load-load8_1 element=Loadshape.load8_1 terminal=1 mode=6 | ||
new object=monitor.monitor-load-load5_3 element=Loadshape.load5_3 terminal=1 mode=6 | ||
new object=monitor.monitor-load-load1_2 element=Loadshape.load1_2 terminal=1 mode=6 | ||
new object=monitor.monitor-load-load9_2 element=Loadshape.load9_2 terminal=1 mode=6 | ||
new object=monitor.monitor-load-load10_2 element=Loadshape.load10_2 terminal=1 mode=6 | ||
new object=monitor.monitor-load-load1_1 element=Loadshape.load1_1 terminal=1 mode=6 | ||
new object=monitor.monitor-load-load6_3 element=Loadshape.load6_3 terminal=1 mode=6 | ||
new object=monitor.monitor-load-load6_1 element=Loadshape.load6_1 terminal=1 mode=6 | ||
new object=monitor.monitor-load-load3_2 element=Loadshape.load3_2 terminal=1 mode=6 | ||
new object=monitor.monitor-load-load3_2 element=Loadshape.load3_2 terminal=1 mode=6 | ||
new object=monitor.monitor-load-load7_1 element=Loadshape.load7_1 terminal=1 mode=6 | ||
new object=monitor.monitor-load-load4_5 element=Loadshape.load4_5 terminal=1 mode=6 | ||
new object=monitor.monitor-load-load3_5 element=Loadshape.load3_5 terminal=1 mode=6 | ||
new object=monitor.monitor-load-load3_3 element=Loadshape.load3_3 terminal=1 mode=6 | ||
new object=monitor.monitor-load-load6_1 element=Loadshape.load6_1 terminal=1 mode=6 | ||
new object=monitor.monitor-load-load4_3 element=Loadshape.load4_3 terminal=1 mode=6 | ||
new object=monitor.monitor-load-load5_2 element=Loadshape.load5_2 terminal=1 mode=6 | ||
new object=monitor.monitor-load-load6_2 element=Loadshape.load6_2 terminal=1 mode=6 | ||
new object=monitor.monitor-load-Source_V element=Loadshape.Source_V terminal=1 mode=6 | ||
new object=monitor.monitor-load-load7_2 element=Loadshape.load7_2 terminal=1 mode=6 | ||
new object=monitor.monitor-load-load5_1 element=Loadshape.load5_1 terminal=1 mode=6 | ||
new object=monitor.monitor-load-load3_4 element=Loadshape.load3_4 terminal=1 mode=6 | ||
new object=monitor.monitor-load-load8_4 element=Loadshape.load8_4 terminal=1 mode=6 | ||
new object=monitor.monitor-load-load1_5 element=Loadshape.load1_5 terminal=1 mode=6 | ||
new object=monitor.monitor-load-load7_1 element=Loadshape.load7_1 terminal=1 mode=6 | ||
new object=monitor.monitor-load-load2 element=Loadshape.load2 terminal=1 mode=6 | ||
new object=monitor.monitor-load-load2 element=Loadshape.load2 terminal=1 mode=6 | ||
new object=monitor.monitor-load-load7_3 element=Loadshape.load7_3 terminal=1 mode=6 | ||
new object=monitor.monitor-load-load4_1 element=Loadshape.load4_1 terminal=1 mode=6 | ||
new object=monitor.monitor-load-load9_1 element=Loadshape.load9_1 terminal=1 mode=6 | ||
new object=monitor.monitor-load-load5_2 element=Loadshape.load5_2 terminal=1 mode=6 | ||
new object=monitor.monitor-load-load7_2 element=Loadshape.load7_2 terminal=1 mode=6 | ||
new object=monitor.monitor-load-load8_3 element=Loadshape.load8_3 terminal=1 mode=6 | ||
new object=monitor.monitor-load-load7_4 element=Loadshape.load7_4 terminal=1 mode=6 | ||
new object=monitor.monitor-load-load5_4 element=Loadshape.load5_4 terminal=1 mode=6 | ||
new object=monitor.monitor-load-load4_4 element=Loadshape.load4_4 terminal=1 mode=6 | ||
new object=monitor.monitor-load-load10_1 element=Loadshape.load10_1 terminal=1 mode=6 | ||
new object=monitor.monitor-load-load5_4 element=Loadshape.load5_4 terminal=1 mode=6 | ||
new object=monitor.monitor-load-load1_4 element=Loadshape.load1_4 terminal=1 mode=6 | ||
new object=monitor.monitor-load-load3_5 element=Loadshape.load3_5 terminal=1 mode=6 | ||
new object=monitor.monitor-load-load3_4 element=Loadshape.load3_4 terminal=1 mode=6 | ||
new object=monitor.monitor-load-load8_4 element=Loadshape.load8_4 terminal=1 mode=6 | ||
new object=monitor.monitor-load-load4_5 element=Loadshape.load4_5 terminal=1 mode=6 | ||
new object=monitor.monitor-load-load3_1 element=Loadshape.load3_1 terminal=1 mode=6 | ||
new object=monitor.monitor-load-load1_3 element=Loadshape.load1_3 terminal=1 mode=6 | ||
new object=monitor.monitor-load-load1_4 element=Loadshape.load1_4 terminal=1 mode=6 | ||
new object=monitor.monitor-load-load6_2 element=Loadshape.load6_2 terminal=1 mode=6 | ||
new object=monitor.monitor-load-load6_4 element=Loadshape.load6_4 terminal=1 mode=6 | ||
new object=monitor.monitor-load-load4_1 element=Loadshape.load4_1 terminal=1 mode=6 | ||
new object=monitor.monitor-load-load10_1 element=Loadshape.load10_1 terminal=1 mode=6 | ||
new object=monitor.monitor-load-load4_3 element=Loadshape.load4_3 terminal=1 mode=6 | ||
new object=monitor.monitor-load-load1_5 element=Loadshape.load1_5 terminal=1 mode=6 | ||
new object=monitor.monitor-load-load7_3 element=Loadshape.load7_3 terminal=1 mode=6 | ||
new object=monitor.monitor-load-load8_2 element=Loadshape.load8_2 terminal=1 mode=6 | ||
new object=monitor.monitor-load-load6_4 element=Loadshape.load6_4 terminal=1 mode=6 | ||
new object=monitor.monitor-load-load7_4 element=Loadshape.load7_4 terminal=1 mode=6 | ||
new object=monitor.monitor-load-load9_2 element=Loadshape.load9_2 terminal=1 mode=6 | ||
new object=monitor.monitor-load-load5_3 element=Loadshape.load5_3 terminal=1 mode=6 | ||
new object=monitor.monitor-load-load4_4 element=Loadshape.load4_4 terminal=1 mode=6 | ||
new object=monitor.monitor-load-load8_2 element=Loadshape.load8_2 terminal=1 mode=6 | ||
new object=monitor.monitor-load-load1_3 element=Loadshape.load1_3 terminal=1 mode=6 | ||
new object=monitor.monitor-load-load1_2 element=Loadshape.load1_2 terminal=1 mode=6 | ||
new object=monitor.monitor-load-load5_1 element=Loadshape.load5_1 terminal=1 mode=6 | ||
new object=monitor.monitor-load-load1_1 element=Loadshape.load1_1 terminal=1 mode=6 | ||
new object=monitor.monitor-load-load6_3 element=Loadshape.load6_3 terminal=1 mode=6 | ||
new object=monitor.monitor-load-load3_1 element=Loadshape.load3_1 terminal=1 mode=6 | ||
new object=monitor.monitor-load-load4_2 element=Loadshape.load4_2 terminal=1 mode=6 | ||
set mode=yearly stepsize=15m | ||
set number=1 | ||
solve | ||
export monitors monitorname=monitor-load-load4_2 | ||
export monitors monitorname=monitor-load-load10_2 | ||
export monitors monitorname=monitor-load-load3_3 | ||
export monitors monitorname=monitor-load-load9_1 | ||
export monitors monitorname=monitor-load-load8_1 | ||
export monitors monitorname=monitor-load-load8_3 | ||
export monitors monitorname=monitor-load-load8_1 | ||
export monitors monitorname=monitor-load-load5_3 | ||
export monitors monitorname=monitor-load-load1_2 | ||
export monitors monitorname=monitor-load-load9_2 | ||
export monitors monitorname=monitor-load-load10_2 | ||
export monitors monitorname=monitor-load-load1_1 | ||
export monitors monitorname=monitor-load-load6_3 | ||
export monitors monitorname=monitor-load-load6_1 | ||
export monitors monitorname=monitor-load-load3_2 | ||
export monitors monitorname=monitor-load-load3_2 | ||
export monitors monitorname=monitor-load-load7_1 | ||
export monitors monitorname=monitor-load-load4_5 | ||
export monitors monitorname=monitor-load-load3_5 | ||
export monitors monitorname=monitor-load-load3_3 | ||
export monitors monitorname=monitor-load-load6_1 | ||
export monitors monitorname=monitor-load-load4_3 | ||
export monitors monitorname=monitor-load-load5_2 | ||
export monitors monitorname=monitor-load-load6_2 | ||
export monitors monitorname=monitor-load-Source_V | ||
export monitors monitorname=monitor-load-load7_2 | ||
export monitors monitorname=monitor-load-load5_1 | ||
export monitors monitorname=monitor-load-load3_4 | ||
export monitors monitorname=monitor-load-load8_4 | ||
export monitors monitorname=monitor-load-load1_5 | ||
export monitors monitorname=monitor-load-load7_1 | ||
export monitors monitorname=monitor-load-load2 | ||
export monitors monitorname=monitor-load-load2 | ||
export monitors monitorname=monitor-load-load7_3 | ||
export monitors monitorname=monitor-load-load4_1 | ||
export monitors monitorname=monitor-load-load9_1 | ||
export monitors monitorname=monitor-load-load5_2 | ||
export monitors monitorname=monitor-load-load7_2 | ||
export monitors monitorname=monitor-load-load8_3 | ||
export monitors monitorname=monitor-load-load7_4 | ||
export monitors monitorname=monitor-load-load5_4 | ||
export monitors monitorname=monitor-load-load4_4 | ||
export monitors monitorname=monitor-load-load10_1 | ||
export monitors monitorname=monitor-load-load5_4 | ||
export monitors monitorname=monitor-load-load1_4 | ||
export monitors monitorname=monitor-load-load3_5 | ||
export monitors monitorname=monitor-load-load3_4 | ||
export monitors monitorname=monitor-load-load8_4 | ||
export monitors monitorname=monitor-load-load4_5 | ||
export monitors monitorname=monitor-load-load3_1 | ||
export monitors monitorname=monitor-load-load1_3 | ||
export monitors monitorname=monitor-load-load1_4 | ||
export monitors monitorname=monitor-load-load6_2 | ||
export monitors monitorname=monitor-load-load6_4 | ||
export monitors monitorname=monitor-load-load4_1 | ||
export monitors monitorname=monitor-load-load10_1 | ||
export monitors monitorname=monitor-load-load4_3 | ||
export monitors monitorname=monitor-load-load1_5 | ||
export monitors monitorname=monitor-load-load7_3 | ||
export monitors monitorname=monitor-load-load8_2 | ||
export monitors monitorname=monitor-load-load6_4 | ||
export monitors monitorname=monitor-load-load7_4 | ||
export monitors monitorname=monitor-load-load9_2 | ||
export monitors monitorname=monitor-load-load5_3 | ||
export monitors monitorname=monitor-load-load4_4 | ||
export monitors monitorname=monitor-load-load8_2 | ||
export monitors monitorname=monitor-load-load1_3 | ||
export monitors monitorname=monitor-load-load1_2 | ||
export monitors monitorname=monitor-load-load5_1 | ||
export monitors monitorname=monitor-load-load1_1 | ||
export monitors monitorname=monitor-load-load6_3 | ||
export monitors monitorname=monitor-load-load3_1 | ||
export monitors monitorname=monitor-load-load4_2 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,55 @@ | ||
from pathlib import Path, PosixPath | ||
import time | ||
import pandas as pd | ||
import os | ||
|
||
import omf | ||
from omf.solvers import opendss | ||
from omf.models import hostingCapacity | ||
|
||
def run_trad( epri_file, modelDir ): | ||
tradHC = opendss.hosting_capacity_all( FNAME = epri_file, max_test_kw=50000, multiprocess=False) | ||
epri_df = pd.DataFrame( tradHC ) | ||
epri_df.to_csv('epri_outputs.csv') | ||
|
||
def create_testfile( modelDir: PosixPath ): | ||
|
||
monitor_names = [] | ||
load_profiles = os.path.join( modelDir, 'dsstestcircuit', 'Profiles' ) | ||
master_dss_file = os.path.join( modelDir, 'dsstestcircuit', 'Master copy.DSS') | ||
|
||
with open( os.path.join( modelDir, 'dsstestcircuit', 'Master copy.DSS' ) ) as file: | ||
for line in file: | ||
opendss.runDssCommand( line ) | ||
|
||
volt_df = pd.read_csv('volts.csv') | ||
|
||
# Need a meter at every load | ||
add_to_dss = '' | ||
for file in os.listdir(load_profiles): | ||
if file.endswith('.dbl'): | ||
load_file_name = Path(file).stem | ||
monitor_name = f'monitor-load-{load_file_name}' | ||
obj_loadshape = 'Loadshape' | ||
# need to get rid of the _P and _Q | ||
# don't know if this works. I deleted it with vim | ||
# load_file_name = load_file_name[:-2] | ||
add_to_dss += f'new object=monitor.{monitor_name} element={obj_loadshape}.{load_file_name} terminal=1 mode=6\n' | ||
monitor_names.append(monitor_name) | ||
|
||
add_to_dss += f'set mode=yearly stepsize=15m\n' | ||
add_to_dss += f'set number=1\n' | ||
add_to_dss += 'solve\n' | ||
for name in monitor_names: | ||
add_to_dss += f'export monitors monitorname={name}\n' | ||
# Write runner file and run. | ||
with open( os.path.join(modelDir, 'dsstestcircuit', 'Master copy.DSS'), 'a') as run_file: | ||
run_file.write(add_to_dss) | ||
|
||
if __name__ == '__main__': | ||
epri_file = Path( omf.omfDir, 'solvers', 'opendss', 'epriSecondaryTestCircuit.clean.dss' ) | ||
modelDir = Path(omf.omfDir, 'scratch', 'hostingcapacity') | ||
# run_trad( epri_file, modelDir ) | ||
# create_testfile( modelDir ) | ||
master_dss_file = os.path.join( modelDir, 'dsstestcircuit', 'Master copy.DSS') | ||
opendss.runDSS(master_dss_file) |
This file was deleted.
Oops, something went wrong.