Created
June 13, 2015 18:41
-
-
Save jmmauricio/1198491fa8223572881a to your computer and use it in GitHub Desktop.
PowerFactory DigSILENT Python Script to load flow, set variables to save, set event, initialize, run and save results to a txt file
This file contains hidden or 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
import sys | |
sys.path.append(r"C:\DigSILENT15p1p7\python") | |
# import PowerFactory module | |
import powerfactory | |
# start PowerFactory in engine mode | |
app = powerfactory.GetApplication() | |
user = app.GetCurrentUser() | |
# activate project | |
project = app.ActivateProject("Nine Bus System") | |
prj = app.GetActiveProject() | |
ldf = app.GetFromStudyCase("ComLdf") | |
ini = app.GetFromStudyCase('ComInc') | |
sim = app.GetFromStudyCase('ComSim') | |
Shc_folder = app.GetFromStudyCase('IntEvt'); | |
terminals = app.GetCalcRelevantObjects("*.ElmTerm") | |
lines = app.GetCalcRelevantObjects("*.ElmTerm") | |
syms = app.GetCalcRelevantObjects("*.ElmSym") | |
Shc_folder.CreateObject('EvtSwitch', 'evento de generacion'); | |
EventSet = Shc_folder.GetContents(); | |
evt = EventSet[0]; | |
evt.time =1.0 | |
evt.p_target = syms[1] | |
ldf.iopt_net = 0 | |
ldf.Execute() | |
elmres = app.GetFromStudyCase('Results.ElmRes') | |
for terminal in terminals: | |
elmres.AddVars(terminal,'m:u','m:phiu','m:fehz') | |
for sym in syms: | |
elmres.AddVars(sym,'s:xspeed') | |
ini.Execute() | |
sim.Execute() | |
evt.Delete() | |
comres = app.GetFromStudyCase('ComRes'); | |
comres.iopt_csel = 0 | |
comres.iopt_tsel = 0 | |
comres.iopt_locn = 2 | |
comres.ciopt_head = 1 | |
comres.pResult=elmres | |
comres.f_name = r'C:\Users\jmmauricio\hola.txt' | |
comres.iopt_exp=4 | |
comres.Execute() |
thank u so much for the replies.
now I am wondering why my calculations are differ from the simulation result. I calculate Ploss using I^2 R, which R replaced by Z (R+XL for <80km line), Z calculation are similar than in simulation "resulting values" in line data (6.8 vs 6.78 ohm), Current are similar (both 85A) since Power are similar (both 21-22 MW), using I^2 Z, simulation differ up to 2x-4x value of calculation.
I don't know how the procedure that you are using to calculate Ploss. However, If you only calculate Ploss(active power losses), you should using I^2 R, not I^2 Z.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Managed to get the Ploss data from attribute c:Ploss, does anyone know how to get the active power each line? tried using Pline, Plinu(from chatgpt), P, none of them works