Sample Loadflow in PSSL
from com.interpss.simu.dsl import IpssAclf;
from com.interpss.common.datatype import UnitType;
from org.apache.commons.math.complex import Complex;
from com.interpss.core.aclf import AclfGenCode;
from com.interpss.core.aclf import AclfLoadCode;
from com.interpss.core.aclf import AclfBranchCode;
from com.interpss.core.algorithm import AclfMethod;
from org.interpss.display import AclfOutFunc
aclfNet = IpssAclf.createAclfNetwork("Sample AclfNetwork") \
.setBaseKva(100000.0) \
.getAclfNet();
IpssAclf.addAclfBus("Bus1", "name-Bus 1", aclfNet) \
.setBaseVoltage(4000.0) \
.setGenCode(AclfGenCode.SWING) \
.setVoltage(1.0, UnitType.PU, 0.0, UnitType.Deg);
IpssAclf.addAclfBus("Bus2", "name-Bus 2", aclfNet) \
.setBaseVoltage(4000.0) \
.setLoadCode(AclfLoadCode.CONST_P) \
.setLoad(Complex(1.0, 0.8), UnitType.PU);
IpssAclf.addAclfBranch("Bus1", "Bus2", aclfNet) \
.setBranchCode(AclfBranchCode.LINE) \
.setZ(Complex(0.05, 0.1), UnitType.PU);
IpssAclf.createLoadflowAlgorithm(aclfNet) \
.setLfMethod(AclfMethod.NR) \
.setTolerance(0.0001, UnitType.PU) \
.runLoadflow();
print AclfOutFunc.loadFlowSummary(aclfNet);
Output
Load Flow Summary
Max Power Mismatches
Bus dPmax Bus dQmax
---------------------------------------------------
Bus2 0.000008 Bus2 0.000007 (pu)
0.795773 0.716587 (kva)
BusID Code Volt(pu) Angle(deg) P(pu) Q(pu)
----------------------------------------------------------------------------
Bus1 Swing 1.00000 0.0 1.1153 1.0306
Bus2 ConstP 0.84331 -4.1 -1.0000 -0.8000