diff --git a/ipss.plugin.3phase/.classpath b/ipss.plugin.3phase/.classpath index a879e2c..8f02c78 100644 --- a/ipss.plugin.3phase/.classpath +++ b/ipss.plugin.3phase/.classpath @@ -4,7 +4,7 @@ - + @@ -19,6 +19,8 @@ - + + + diff --git a/ipss.plugin.3phase/.settings/org.eclipse.core.resources.prefs b/ipss.plugin.3phase/.settings/org.eclipse.core.resources.prefs new file mode 100644 index 0000000..6e4adb8 --- /dev/null +++ b/ipss.plugin.3phase/.settings/org.eclipse.core.resources.prefs @@ -0,0 +1,6 @@ +=\=\=\=\=\=\= +<<<<<<<=HEAD +>>>>>>>=refs/heads/master +eclipse.preferences.version=1 +encoding//src/org/interpss/threePhase/dynamic/model/impl/SinglePhaseACMotor.java=UTF-8 +encoding//src/org/interpss/threePhase/test/IEEE_13BusFeeder_Test.java=UTF-8 diff --git a/ipss.plugin.3phase/src/org/ipss/sparse/Matrix3x3/TestSparseEqnComplexMatrix3x3Impl.java b/ipss.plugin.3phase/src/org/interpss/sparse/Matrix3x3/TestSparseEqnComplexMatrix3x3Impl.java similarity index 91% rename from ipss.plugin.3phase/src/org/ipss/sparse/Matrix3x3/TestSparseEqnComplexMatrix3x3Impl.java rename to ipss.plugin.3phase/src/org/interpss/sparse/Matrix3x3/TestSparseEqnComplexMatrix3x3Impl.java index e02372e..0ff4519 100644 --- a/ipss.plugin.3phase/src/org/ipss/sparse/Matrix3x3/TestSparseEqnComplexMatrix3x3Impl.java +++ b/ipss.plugin.3phase/src/org/interpss/sparse/Matrix3x3/TestSparseEqnComplexMatrix3x3Impl.java @@ -1,4 +1,4 @@ -package org.ipss.sparse.Matrix3x3; +package org.interpss.sparse.Matrix3x3; import static org.junit.Assert.assertTrue; @@ -37,7 +37,7 @@ public void testReal(){ try { - matrix3x3.luMatrixAndSolveEqn(1.0e-5); + matrix3x3.solveEqn(1.0e-5); } catch (IpssNumericException e) { // TODO Auto-generated catch block e.printStackTrace(); @@ -79,7 +79,7 @@ public void testComplex(){ try { - matrix3x3.luMatrixAndSolveEqn(1.0e-5); + matrix3x3.solveEqn(1.0e-5); } catch (IpssNumericException e) { // TODO Auto-generated catch block e.printStackTrace(); diff --git a/ipss.plugin.3phase/src/org/ipss/threePhase/basic/Branch3Phase.java b/ipss.plugin.3phase/src/org/interpss/threePhase/basic/Branch3Phase.java similarity index 94% rename from ipss.plugin.3phase/src/org/ipss/threePhase/basic/Branch3Phase.java rename to ipss.plugin.3phase/src/org/interpss/threePhase/basic/Branch3Phase.java index 6d14944..485569d 100644 --- a/ipss.plugin.3phase/src/org/ipss/threePhase/basic/Branch3Phase.java +++ b/ipss.plugin.3phase/src/org/interpss/threePhase/basic/Branch3Phase.java @@ -1,4 +1,4 @@ -package org.ipss.threePhase.basic; +package org.interpss.threePhase.basic; import org.apache.commons.math3.complex.Complex; import org.interpss.numeric.datatype.Complex3x1; diff --git a/ipss.plugin.3phase/src/org/ipss/threePhase/basic/Branch3W3Phase.java b/ipss.plugin.3phase/src/org/interpss/threePhase/basic/Branch3W3Phase.java similarity index 68% rename from ipss.plugin.3phase/src/org/ipss/threePhase/basic/Branch3W3Phase.java rename to ipss.plugin.3phase/src/org/interpss/threePhase/basic/Branch3W3Phase.java index afa5792..e4c1a9c 100644 --- a/ipss.plugin.3phase/src/org/ipss/threePhase/basic/Branch3W3Phase.java +++ b/ipss.plugin.3phase/src/org/interpss/threePhase/basic/Branch3W3Phase.java @@ -1,4 +1,4 @@ -package org.ipss.threePhase.basic; +package org.interpss.threePhase.basic; import com.interpss.dstab.DStab3WBranch; diff --git a/ipss.plugin.3phase/src/org/ipss/threePhase/basic/Bus3Phase.java b/ipss.plugin.3phase/src/org/interpss/threePhase/basic/Bus3Phase.java similarity index 75% rename from ipss.plugin.3phase/src/org/ipss/threePhase/basic/Bus3Phase.java rename to ipss.plugin.3phase/src/org/interpss/threePhase/basic/Bus3Phase.java index b689889..fee106c 100644 --- a/ipss.plugin.3phase/src/org/ipss/threePhase/basic/Bus3Phase.java +++ b/ipss.plugin.3phase/src/org/interpss/threePhase/basic/Bus3Phase.java @@ -1,18 +1,15 @@ -package org.ipss.threePhase.basic; +package org.interpss.threePhase.basic; import java.util.List; import org.interpss.numeric.datatype.Complex3x1; import org.interpss.numeric.datatype.Complex3x3; -import org.ipss.threePhase.dynamic.model.DynLoadModel1Phase; -import org.ipss.threePhase.dynamic.model.DynLoadModel3Phase; +import org.interpss.threePhase.dynamic.model.DynLoadModel1Phase; +import org.interpss.threePhase.dynamic.model.DynLoadModel3Phase; -import com.interpss.core.aclf.AclfBus; -import com.interpss.core.acsc.AcscBus; -import com.interpss.dstab.DStabBus; -import com.interpss.dstab.dynLoad.DynLoadModel; +import com.interpss.dstab.BaseDStabBus; -public interface Bus3Phase extends DStabBus { +public interface Bus3Phase extends BaseDStabBus { public Complex3x1 get3PhaseVotlages(); diff --git a/ipss.plugin.3phase/src/org/ipss/threePhase/basic/Gen3Phase.java b/ipss.plugin.3phase/src/org/interpss/threePhase/basic/Gen3Phase.java similarity index 84% rename from ipss.plugin.3phase/src/org/ipss/threePhase/basic/Gen3Phase.java rename to ipss.plugin.3phase/src/org/interpss/threePhase/basic/Gen3Phase.java index 93e6e25..d57ebf4 100644 --- a/ipss.plugin.3phase/src/org/ipss/threePhase/basic/Gen3Phase.java +++ b/ipss.plugin.3phase/src/org/interpss/threePhase/basic/Gen3Phase.java @@ -1,14 +1,14 @@ -package org.ipss.threePhase.basic; +package org.interpss.threePhase.basic; import org.apache.commons.math3.complex.Complex; import org.interpss.numeric.datatype.Complex3x1; import org.interpss.numeric.datatype.Complex3x3; import org.interpss.numeric.datatype.Unit.UnitType; -import com.interpss.core.acsc.AcscGen; import com.interpss.dstab.DStabGen; +import com.interpss.dstab.GeneratorType; -public interface Gen3Phase extends DStabGen{ +public interface Gen3Phase extends DStabGen { /** * directly set the generator 3x3 impedance matrix on machine MVA base @@ -50,9 +50,9 @@ public interface Gen3Phase extends DStabGen{ public Complex3x1 getPowerflowEquivCurrInj(); - public GenType getGenType(); + public GeneratorType getGenType(); - public void setGenType(GenType type); + public void setGenType(GeneratorType type); diff --git a/ipss.plugin.3phase/src/org/ipss/threePhase/basic/IEEEFeederLineCode.java b/ipss.plugin.3phase/src/org/interpss/threePhase/basic/IEEEFeederLineCode.java similarity index 97% rename from ipss.plugin.3phase/src/org/ipss/threePhase/basic/IEEEFeederLineCode.java rename to ipss.plugin.3phase/src/org/interpss/threePhase/basic/IEEEFeederLineCode.java index 4eec1cf..d327226 100644 --- a/ipss.plugin.3phase/src/org/ipss/threePhase/basic/IEEEFeederLineCode.java +++ b/ipss.plugin.3phase/src/org/interpss/threePhase/basic/IEEEFeederLineCode.java @@ -1,4 +1,4 @@ -package org.ipss.threePhase.basic; +package org.interpss.threePhase.basic; import org.apache.commons.math3.complex.Complex; import org.interpss.numeric.datatype.Complex3x3; diff --git a/ipss.plugin.3phase/src/org/ipss/threePhase/basic/Load3Phase.java b/ipss.plugin.3phase/src/org/interpss/threePhase/basic/Load3Phase.java similarity index 85% rename from ipss.plugin.3phase/src/org/ipss/threePhase/basic/Load3Phase.java rename to ipss.plugin.3phase/src/org/interpss/threePhase/basic/Load3Phase.java index 38116a4..b1daafa 100644 --- a/ipss.plugin.3phase/src/org/ipss/threePhase/basic/Load3Phase.java +++ b/ipss.plugin.3phase/src/org/interpss/threePhase/basic/Load3Phase.java @@ -1,13 +1,14 @@ -package org.ipss.threePhase.basic; +package org.interpss.threePhase.basic; import org.apache.commons.math3.complex.Complex; import org.interpss.numeric.datatype.Complex3x1; import org.interpss.numeric.datatype.Complex3x3; -import com.interpss.core.aclf.AclfLoad; +import com.interpss.core.acsc.AcscLoad; import com.interpss.core.acsc.PhaseCode; +import com.interpss.dstab.DStabLoad; -public interface Load3Phase extends AclfLoad { +public interface Load3Phase extends DStabLoad { /** * calcuate the Yabc from Y120 diff --git a/ipss.plugin.3phase/src/org/ipss/threePhase/basic/Network3Phase.java b/ipss.plugin.3phase/src/org/interpss/threePhase/basic/Network3Phase.java similarity index 87% rename from ipss.plugin.3phase/src/org/ipss/threePhase/basic/Network3Phase.java rename to ipss.plugin.3phase/src/org/interpss/threePhase/basic/Network3Phase.java index 70b7649..cdf757b 100644 --- a/ipss.plugin.3phase/src/org/ipss/threePhase/basic/Network3Phase.java +++ b/ipss.plugin.3phase/src/org/interpss/threePhase/basic/Network3Phase.java @@ -1,4 +1,4 @@ -package org.ipss.threePhase.basic; +package org.interpss.threePhase.basic; import org.interpss.numeric.sparse.ISparseEqnComplexMatrix3x3; diff --git a/ipss.plugin.3phase/src/org/ipss/threePhase/basic/Transformer3Phase.java b/ipss.plugin.3phase/src/org/interpss/threePhase/basic/Transformer3Phase.java similarity index 93% rename from ipss.plugin.3phase/src/org/ipss/threePhase/basic/Transformer3Phase.java rename to ipss.plugin.3phase/src/org/interpss/threePhase/basic/Transformer3Phase.java index 5e676f1..fd8ea9e 100644 --- a/ipss.plugin.3phase/src/org/ipss/threePhase/basic/Transformer3Phase.java +++ b/ipss.plugin.3phase/src/org/interpss/threePhase/basic/Transformer3Phase.java @@ -1,4 +1,4 @@ -package org.ipss.threePhase.basic; +package org.interpss.threePhase.basic; import org.apache.commons.math3.complex.Complex; import org.interpss.numeric.datatype.Complex3x3; diff --git a/ipss.plugin.3phase/src/org/ipss/threePhase/basic/impl/AclfNetwork3Phase.java b/ipss.plugin.3phase/src/org/interpss/threePhase/basic/impl/AclfNetwork3Phase.java similarity index 88% rename from ipss.plugin.3phase/src/org/ipss/threePhase/basic/impl/AclfNetwork3Phase.java rename to ipss.plugin.3phase/src/org/interpss/threePhase/basic/impl/AclfNetwork3Phase.java index 9dbaeaa..0217fda 100644 --- a/ipss.plugin.3phase/src/org/ipss/threePhase/basic/impl/AclfNetwork3Phase.java +++ b/ipss.plugin.3phase/src/org/interpss/threePhase/basic/impl/AclfNetwork3Phase.java @@ -1,26 +1,26 @@ -package org.ipss.threePhase.basic.impl; +package org.interpss.threePhase.basic.impl; import java.util.Queue; import org.apache.commons.math3.complex.Complex; import org.interpss.numeric.datatype.Complex3x1; import org.interpss.numeric.sparse.ISparseEqnComplexMatrix3x3; -import org.ipss.threePhase.basic.Branch3Phase; -import org.ipss.threePhase.basic.Bus3Phase; -import org.ipss.threePhase.basic.Network3Phase; +import org.interpss.threePhase.basic.Branch3Phase; +import org.interpss.threePhase.basic.Bus3Phase; +import org.interpss.threePhase.basic.Network3Phase; import com.interpss.common.exp.InterpssException; import com.interpss.core.aclf.AclfBus; import com.interpss.core.acsc.AcscBranch; import com.interpss.core.acsc.AcscBus; +import com.interpss.core.acsc.BaseAcscBus; import com.interpss.core.acsc.XfrConnectCode; -import com.interpss.core.acsc.impl.AcscNetworkImpl; import com.interpss.core.acsc.impl.BaseAcscNetworkImpl; import com.interpss.core.net.Branch; import com.interpss.core.net.Bus; import com.interpss.core.sparse.impl.SparseEqnComplexMatrix3x3Impl; -public class AclfNetwork3Phase extends BaseAcscNetworkImpl implements +public class AclfNetwork3Phase extends BaseAcscNetworkImpl implements Network3Phase { protected ISparseEqnComplexMatrix3x3 yMatrixAbc =null; @@ -83,7 +83,7 @@ private Complex phaseShiftCplxFactor(double shiftDeg){ public ISparseEqnComplexMatrix3x3 formYMatrixABC() throws Exception { yMatrixAbc = new SparseEqnComplexMatrix3x3Impl(getNoBus()); - for(AcscBus b:this.getBusList()){ + for(BaseAcscBus b:this.getBusList()){ if(b instanceof Bus3Phase){ int i = b.getSortNumber(); Bus3Phase ph3Bus = (Bus3Phase) b; diff --git a/ipss.plugin.3phase/src/org/ipss/threePhase/basic/impl/Branch3PhaseImpl.java b/ipss.plugin.3phase/src/org/interpss/threePhase/basic/impl/Branch3PhaseImpl.java similarity index 93% rename from ipss.plugin.3phase/src/org/ipss/threePhase/basic/impl/Branch3PhaseImpl.java rename to ipss.plugin.3phase/src/org/interpss/threePhase/basic/impl/Branch3PhaseImpl.java index e76a6ef..59c3a72 100644 --- a/ipss.plugin.3phase/src/org/ipss/threePhase/basic/impl/Branch3PhaseImpl.java +++ b/ipss.plugin.3phase/src/org/interpss/threePhase/basic/impl/Branch3PhaseImpl.java @@ -1,14 +1,14 @@ -package org.ipss.threePhase.basic.impl; +package org.interpss.threePhase.basic.impl; -import static org.ipss.threePhase.util.ThreePhaseUtilFunction.threePhaseXfrAptr; +import static org.interpss.threePhase.util.ThreePhaseUtilFunction.threePhaseXfrAptr; import org.apache.commons.math3.complex.Complex; import org.interpss.numeric.datatype.Complex3x1; import org.interpss.numeric.datatype.Complex3x3; -import org.ipss.threePhase.basic.Branch3Phase; -import org.ipss.threePhase.basic.Transformer3Phase; +import org.interpss.threePhase.basic.Branch3Phase; +import org.interpss.threePhase.basic.Transformer3Phase; import com.interpss.dstab.impl.DStabBranchImpl; diff --git a/ipss.plugin.3phase/src/org/ipss/threePhase/basic/impl/Branch3W3PhaseImpl.java b/ipss.plugin.3phase/src/org/interpss/threePhase/basic/impl/Branch3W3PhaseImpl.java similarity index 83% rename from ipss.plugin.3phase/src/org/ipss/threePhase/basic/impl/Branch3W3PhaseImpl.java rename to ipss.plugin.3phase/src/org/interpss/threePhase/basic/impl/Branch3W3PhaseImpl.java index 8c94100..6d86d6e 100644 --- a/ipss.plugin.3phase/src/org/ipss/threePhase/basic/impl/Branch3W3PhaseImpl.java +++ b/ipss.plugin.3phase/src/org/interpss/threePhase/basic/impl/Branch3W3PhaseImpl.java @@ -1,13 +1,13 @@ -package org.ipss.threePhase.basic.impl; +package org.interpss.threePhase.basic.impl; -import org.ipss.threePhase.basic.Branch3W3Phase; -import org.ipss.threePhase.dynamic.DStabNetwork3Phase; -import org.ipss.threePhase.util.ThreePhaseObjectFactory; +import org.interpss.threePhase.basic.Branch3Phase; +import org.interpss.threePhase.basic.Branch3W3Phase; +import org.interpss.threePhase.dynamic.DStabNetwork3Phase; +import org.interpss.threePhase.util.ThreePhaseObjectFactory; import com.interpss.common.exp.InterpssException; import com.interpss.core.aclf.AclfBranchCode; import com.interpss.core.aclf.AclfBus; -import com.interpss.dstab.DStabBranch; import com.interpss.dstab.impl.DStab3WBranchImpl; public class Branch3W3PhaseImpl extends DStab3WBranchImpl implements Branch3W3Phase{ @@ -36,7 +36,7 @@ public void create2WBranches(AclfBranchCode branchCode, String[] properties) thr ((AclfBus)starBus).setVoltage(this.voltageStarBus); // create the from branch: fromBudId -> starBusId - DStabBranch branch = ThreePhaseObjectFactory.create3PBranch(); + Branch3Phase branch = ThreePhaseObjectFactory.create3PBranch(); net.addBranch(branch, fromId, starBusId, properties[1]); this.setFromBranch(branch); branch.setBranchCode(branchCode); diff --git a/ipss.plugin.3phase/src/org/ipss/threePhase/basic/impl/Bus3PhaseImpl.java b/ipss.plugin.3phase/src/org/interpss/threePhase/basic/impl/Bus3PhaseImpl.java similarity index 87% rename from ipss.plugin.3phase/src/org/ipss/threePhase/basic/impl/Bus3PhaseImpl.java rename to ipss.plugin.3phase/src/org/interpss/threePhase/basic/impl/Bus3PhaseImpl.java index ac519e3..3a732c0 100644 --- a/ipss.plugin.3phase/src/org/ipss/threePhase/basic/impl/Bus3PhaseImpl.java +++ b/ipss.plugin.3phase/src/org/interpss/threePhase/basic/impl/Bus3PhaseImpl.java @@ -1,6 +1,4 @@ -package org.ipss.threePhase.basic.impl; - -import static org.ipss.threePhase.util.ThreePhaseUtilFunction.threePhaseGenAptr; +package org.interpss.threePhase.basic.impl; import java.util.ArrayList; import java.util.List; @@ -8,24 +6,20 @@ import org.apache.commons.math3.complex.Complex; import org.interpss.numeric.datatype.Complex3x1; import org.interpss.numeric.datatype.Complex3x3; -import org.ipss.threePhase.basic.Branch3Phase; -import org.ipss.threePhase.basic.Bus3Phase; -import org.ipss.threePhase.basic.Gen3Phase; -import org.ipss.threePhase.basic.Load3Phase; -import org.ipss.threePhase.dynamic.model.DStabGen3PhaseAdapter; -import org.ipss.threePhase.dynamic.model.DynLoadModel1Phase; -import org.ipss.threePhase.dynamic.model.DynLoadModel3Phase; -import org.ipss.threePhase.util.ThreeSeqLoadProcessor; +import org.interpss.threePhase.basic.Branch3Phase; +import org.interpss.threePhase.basic.Bus3Phase; +import org.interpss.threePhase.basic.Gen3Phase; +import org.interpss.threePhase.basic.Load3Phase; +import org.interpss.threePhase.dynamic.model.DynLoadModel1Phase; +import org.interpss.threePhase.dynamic.model.DynLoadModel3Phase; +import org.interpss.threePhase.util.ThreeSeqLoadProcessor; -import com.interpss.core.aclf.AclfGen; import com.interpss.core.net.Branch; -import com.interpss.dstab.DStabGen; -import com.interpss.dstab.dynLoad.DynLoadModel; -import com.interpss.dstab.impl.DStabBusImpl; +import com.interpss.dstab.impl.BaseDStabBusImpl; -public class Bus3PhaseImpl extends DStabBusImpl implements Bus3Phase{ +public class Bus3PhaseImpl extends BaseDStabBusImpl implements Bus3Phase{ private Complex3x1 Vabc = null; private Complex3x1 initVabc = null; diff --git a/ipss.plugin.3phase/src/org/ipss/threePhase/basic/impl/Gen3PhaseImpl.java b/ipss.plugin.3phase/src/org/interpss/threePhase/basic/impl/Gen3PhaseImpl.java similarity index 86% rename from ipss.plugin.3phase/src/org/ipss/threePhase/basic/impl/Gen3PhaseImpl.java rename to ipss.plugin.3phase/src/org/interpss/threePhase/basic/impl/Gen3PhaseImpl.java index a0f78cd..c5b7df4 100644 --- a/ipss.plugin.3phase/src/org/ipss/threePhase/basic/impl/Gen3PhaseImpl.java +++ b/ipss.plugin.3phase/src/org/interpss/threePhase/basic/impl/Gen3PhaseImpl.java @@ -1,13 +1,13 @@ -package org.ipss.threePhase.basic.impl; +package org.interpss.threePhase.basic.impl; import org.apache.commons.math3.complex.Complex; import org.interpss.numeric.datatype.Complex3x1; import org.interpss.numeric.datatype.Complex3x3; import org.interpss.numeric.datatype.Unit.UnitType; -import org.ipss.threePhase.basic.Bus3Phase; -import org.ipss.threePhase.basic.Gen3Phase; -import org.ipss.threePhase.basic.GenType; +import org.interpss.threePhase.basic.Bus3Phase; +import org.interpss.threePhase.basic.Gen3Phase; +import com.interpss.dstab.GeneratorType; import com.interpss.dstab.impl.DStabGenImpl; /** @@ -30,7 +30,7 @@ public class Gen3PhaseImpl extends DStabGenImpl implements Gen3Phase { private Complex3x1 igen3Ph = null; - private GenType genType = GenType.Inverter_based; // inverter-based by default + private GeneratorType genType = GeneratorType.INVERTER_BASED; // inverter-based by default @@ -140,10 +140,10 @@ public Complex3x1 getPowerflowEquivCurrInj() { // calculate the equivalent current injection based on the GenType - if(this.getGenType().equals(GenType.Synchrounous_machine)){ + if(this.getGenType().equals(GeneratorType.SYNCH_MACHINE)){ currInj = this.getPower3Phase(UnitType.PU).divide(this.getParentBus().get3PhaseVotlages()).conjugate(); } - else if(this.getGenType().equals(GenType.Inverter_based)){ + else if(this.getGenType().equals(GeneratorType.INVERTER_BASED)){ //TODO here assuming the inverter based DG only produces positive sequence current. negative sequence current is based on //negative sequence impedance of the generator @@ -187,13 +187,13 @@ else if(this.getGenType().equals(GenType.Inverter_based)){ } @Override - public GenType getGenType() { + public GeneratorType getGenType() { return this.genType; } @Override - public void setGenType(GenType type) { + public void setGenType(GeneratorType type) { this.genType = type; } diff --git a/ipss.plugin.3phase/src/org/ipss/threePhase/basic/impl/Load3PhaseImpl.java b/ipss.plugin.3phase/src/org/interpss/threePhase/basic/impl/Load3PhaseImpl.java similarity index 82% rename from ipss.plugin.3phase/src/org/ipss/threePhase/basic/impl/Load3PhaseImpl.java rename to ipss.plugin.3phase/src/org/interpss/threePhase/basic/impl/Load3PhaseImpl.java index 9d54620..80a585d 100644 --- a/ipss.plugin.3phase/src/org/ipss/threePhase/basic/impl/Load3PhaseImpl.java +++ b/ipss.plugin.3phase/src/org/interpss/threePhase/basic/impl/Load3PhaseImpl.java @@ -1,15 +1,15 @@ -package org.ipss.threePhase.basic.impl; +package org.interpss.threePhase.basic.impl; import org.apache.commons.math3.complex.Complex; import org.interpss.numeric.datatype.Complex3x1; import org.interpss.numeric.datatype.Complex3x3; -import org.ipss.threePhase.basic.Bus3Phase; -import org.ipss.threePhase.basic.Load3Phase; +import org.interpss.threePhase.basic.Bus3Phase; +import org.interpss.threePhase.basic.Load3Phase; -import com.interpss.core.aclf.impl.AclfLoadImpl; import com.interpss.core.acsc.PhaseCode; +import com.interpss.dstab.impl.DStabLoadImpl; -public class Load3PhaseImpl extends AclfLoadImpl implements Load3Phase { +public class Load3PhaseImpl extends DStabLoadImpl implements Load3Phase { Complex3x1 ph3Load = new Complex3x1(); Complex3x3 equivYabc = new Complex3x3(); diff --git a/ipss.plugin.3phase/src/org/ipss/threePhase/basic/impl/Transformer3PhaseImpl.java b/ipss.plugin.3phase/src/org/interpss/threePhase/basic/impl/Transformer3PhaseImpl.java similarity index 96% rename from ipss.plugin.3phase/src/org/ipss/threePhase/basic/impl/Transformer3PhaseImpl.java rename to ipss.plugin.3phase/src/org/interpss/threePhase/basic/impl/Transformer3PhaseImpl.java index 4f04393..1a70511 100644 --- a/ipss.plugin.3phase/src/org/ipss/threePhase/basic/impl/Transformer3PhaseImpl.java +++ b/ipss.plugin.3phase/src/org/interpss/threePhase/basic/impl/Transformer3PhaseImpl.java @@ -1,9 +1,9 @@ -package org.ipss.threePhase.basic.impl; +package org.interpss.threePhase.basic.impl; import org.apache.commons.math3.complex.Complex; import org.interpss.numeric.datatype.Complex3x3; -import org.ipss.threePhase.basic.Branch3Phase; -import org.ipss.threePhase.basic.Transformer3Phase; +import org.interpss.threePhase.basic.Branch3Phase; +import org.interpss.threePhase.basic.Transformer3Phase; import com.interpss.core.acsc.XfrConnectCode; import com.interpss.core.acsc.adpter.impl.AcscXformerImpl; @@ -89,7 +89,7 @@ public Complex3x3 getYabc() { ////////////////////////////////////////////////////////////////////////////////////////////////////////////// @Override - public Complex3x3 getYffabc() { + public Complex3x3 getYffabc() { Complex3x3 yffabc = null; //Yg if(this.ph3Branch.getXfrFromConnectCode() == XfrConnectCode.WYE_SOLID_GROUNDED){ diff --git a/ipss.plugin.3phase/src/org/ipss/threePhase/dynamic/DStabNetwork3Phase.java b/ipss.plugin.3phase/src/org/interpss/threePhase/dynamic/DStabNetwork3Phase.java similarity index 71% rename from ipss.plugin.3phase/src/org/ipss/threePhase/dynamic/DStabNetwork3Phase.java rename to ipss.plugin.3phase/src/org/interpss/threePhase/dynamic/DStabNetwork3Phase.java index df4b0fb..f6500e8 100644 --- a/ipss.plugin.3phase/src/org/ipss/threePhase/dynamic/DStabNetwork3Phase.java +++ b/ipss.plugin.3phase/src/org/interpss/threePhase/dynamic/DStabNetwork3Phase.java @@ -1,13 +1,15 @@ -package org.ipss.threePhase.dynamic; +package org.interpss.threePhase.dynamic; import java.util.Hashtable; import org.interpss.numeric.datatype.Complex3x1; -import org.ipss.threePhase.basic.Network3Phase; +import org.interpss.threePhase.basic.Branch3Phase; +import org.interpss.threePhase.basic.Bus3Phase; +import org.interpss.threePhase.basic.Network3Phase; -import com.interpss.dstab.DStabilityNetwork; +import com.interpss.dstab.BaseDStabNetwork; -public interface DStabNetwork3Phase extends Network3Phase, DStabilityNetwork{ +public interface DStabNetwork3Phase extends Network3Phase, BaseDStabNetwork{ diff --git a/ipss.plugin.3phase/src/org/interpss/threePhase/dynamic/IDynamicModel1Phase.java b/ipss.plugin.3phase/src/org/interpss/threePhase/dynamic/IDynamicModel1Phase.java new file mode 100644 index 0000000..5ba1e9d --- /dev/null +++ b/ipss.plugin.3phase/src/org/interpss/threePhase/dynamic/IDynamicModel1Phase.java @@ -0,0 +1,13 @@ +package org.interpss.threePhase.dynamic; + +import com.interpss.core.acsc.PhaseCode; +import com.interpss.dstab.device.DynamicBusDevice; + +public interface IDynamicModel1Phase extends DynamicBusDevice { + + + PhaseCode getPhase(); + + void setPhase(PhaseCode p); + +} diff --git a/ipss.plugin.3phase/src/org/ipss/threePhase/dynamic/IDynamicModel3Phase.java b/ipss.plugin.3phase/src/org/interpss/threePhase/dynamic/IDynamicModel3Phase.java similarity index 93% rename from ipss.plugin.3phase/src/org/ipss/threePhase/dynamic/IDynamicModel3Phase.java rename to ipss.plugin.3phase/src/org/interpss/threePhase/dynamic/IDynamicModel3Phase.java index 2e77429..4f36046 100644 --- a/ipss.plugin.3phase/src/org/ipss/threePhase/dynamic/IDynamicModel3Phase.java +++ b/ipss.plugin.3phase/src/org/interpss/threePhase/dynamic/IDynamicModel3Phase.java @@ -1,10 +1,10 @@ -package org.ipss.threePhase.dynamic; +package org.interpss.threePhase.dynamic; import org.apache.commons.math3.complex.Complex; import org.interpss.numeric.datatype.Complex3x1; import org.interpss.numeric.datatype.Complex3x3; import org.interpss.numeric.datatype.Unit.UnitType; -import org.ipss.threePhase.basic.Bus3Phase; +import org.interpss.threePhase.basic.Bus3Phase; import com.interpss.core.net.ref.BusRef; import com.interpss.dstab.algo.IDynamicSimulation; diff --git a/ipss.plugin.3phase/src/org/ipss/threePhase/dynamic/algo/DynamicEventProcessor3Phase.java b/ipss.plugin.3phase/src/org/interpss/threePhase/dynamic/algo/DynamicEventProcessor3Phase.java similarity index 94% rename from ipss.plugin.3phase/src/org/ipss/threePhase/dynamic/algo/DynamicEventProcessor3Phase.java rename to ipss.plugin.3phase/src/org/interpss/threePhase/dynamic/algo/DynamicEventProcessor3Phase.java index f01d65b..a62030f 100644 --- a/ipss.plugin.3phase/src/org/ipss/threePhase/dynamic/algo/DynamicEventProcessor3Phase.java +++ b/ipss.plugin.3phase/src/org/interpss/threePhase/dynamic/algo/DynamicEventProcessor3Phase.java @@ -1,4 +1,4 @@ -package org.ipss.threePhase.dynamic.algo; +package org.interpss.threePhase.dynamic.algo; import static com.interpss.common.util.IpssLogger.ipssLogger; @@ -6,11 +6,11 @@ import org.interpss.numeric.NumericConstant; import org.interpss.numeric.datatype.Complex3x3; import org.interpss.numeric.exp.IpssNumericException; -import org.ipss.threePhase.dynamic.DStabNetwork3Phase; +import org.interpss.threePhase.dynamic.DStabNetwork3Phase; import com.interpss.common.exp.InterpssRuntimeException; import com.interpss.common.msg.IpssMessage; -import com.interpss.core.acsc.AcscBus; +import com.interpss.core.acsc.BaseAcscBus; import com.interpss.core.acsc.fault.AcscBusFault; import com.interpss.core.acsc.fault.SimpleFaultCode; import com.interpss.dstab.algo.defaultImpl.DynamicEventProcessor; @@ -130,7 +130,7 @@ protected void applyDynamicEventAfter(DynamicEvent e, double t) throws IpssNumer if (e.isActive()) { if (e.getType() == DynamicEventType.BUS_FAULT) { AcscBusFault fault = e.getBusFault(); - AcscBus bus = fault.getBus(); + BaseAcscBus bus = fault.getBus(); int i = bus.getSortNumber(); diff --git a/ipss.plugin.3phase/src/org/ipss/threePhase/dynamic/impl/DStabNetwork3phaseImpl.java b/ipss.plugin.3phase/src/org/interpss/threePhase/dynamic/impl/DStabNetwork3phaseImpl.java similarity index 89% rename from ipss.plugin.3phase/src/org/ipss/threePhase/dynamic/impl/DStabNetwork3phaseImpl.java rename to ipss.plugin.3phase/src/org/interpss/threePhase/dynamic/impl/DStabNetwork3phaseImpl.java index fad36b7..0bef5d9 100644 --- a/ipss.plugin.3phase/src/org/ipss/threePhase/dynamic/impl/DStabNetwork3phaseImpl.java +++ b/ipss.plugin.3phase/src/org/interpss/threePhase/dynamic/impl/DStabNetwork3phaseImpl.java @@ -1,7 +1,7 @@ -package org.ipss.threePhase.dynamic.impl; +package org.interpss.threePhase.dynamic.impl; import static com.interpss.common.util.IpssLogger.ipssLogger; -import static org.ipss.threePhase.util.ThreePhaseUtilFunction.threePhaseGenAptr; +import static org.interpss.threePhase.util.ThreePhaseUtilFunction.threePhaseGenAptr; import java.util.Hashtable; import java.util.LinkedList; @@ -13,15 +13,15 @@ import org.interpss.numeric.datatype.Unit.UnitType; import org.interpss.numeric.exp.IpssNumericException; import org.interpss.numeric.sparse.ISparseEqnComplexMatrix3x3; -import org.ipss.threePhase.basic.Branch3Phase; -import org.ipss.threePhase.basic.Bus3Phase; -import org.ipss.threePhase.basic.Gen3Phase; -import org.ipss.threePhase.basic.Load3Phase; -import org.ipss.threePhase.dynamic.DStabNetwork3Phase; -import org.ipss.threePhase.dynamic.model.DStabGen3PhaseAdapter; -import org.ipss.threePhase.dynamic.model.DynLoadModel1Phase; -import org.ipss.threePhase.dynamic.model.DynLoadModel3Phase; -import org.ipss.threePhase.util.ThreeSeqLoadProcessor; +import org.interpss.threePhase.basic.Branch3Phase; +import org.interpss.threePhase.basic.Bus3Phase; +import org.interpss.threePhase.basic.Gen3Phase; +import org.interpss.threePhase.basic.Load3Phase; +import org.interpss.threePhase.dynamic.DStabNetwork3Phase; +import org.interpss.threePhase.dynamic.model.DStabGen3PhaseAdapter; +import org.interpss.threePhase.dynamic.model.DynLoadModel1Phase; +import org.interpss.threePhase.dynamic.model.DynLoadModel3Phase; +import org.interpss.threePhase.util.ThreeSeqLoadProcessor; import com.interpss.common.datatype.Constants; import com.interpss.common.exp.InterpssException; @@ -30,19 +30,18 @@ import com.interpss.core.aclf.AclfGen; import com.interpss.core.aclf.AclfLoad; import com.interpss.core.acsc.AcscBranch; -import com.interpss.core.acsc.AcscBus; -import com.interpss.core.acsc.SequenceCode; +import com.interpss.core.acsc.BaseAcscBus; import com.interpss.core.acsc.XfrConnectCode; import com.interpss.core.net.Branch; import com.interpss.core.net.Bus; import com.interpss.core.net.NetworkType; import com.interpss.core.sparse.impl.SparseEqnComplexMatrix3x3Impl; -import com.interpss.dstab.DStabBus; +import com.interpss.dstab.BaseDStabBus; import com.interpss.dstab.DStabGen; import com.interpss.dstab.dynLoad.DynLoadModel; -import com.interpss.dstab.impl.DStabilityNetworkImpl; +import com.interpss.dstab.impl.BaseDStabNetworkImpl; -public class DStabNetwork3phaseImpl extends DStabilityNetworkImpl implements DStabNetwork3Phase { +public class DStabNetwork3phaseImpl extends BaseDStabNetworkImpl implements DStabNetwork3Phase { protected ISparseEqnComplexMatrix3x3 yMatrixAbc = null; protected boolean is3PhaseNetworkInitialized = false; @@ -137,7 +136,7 @@ public boolean initThreePhaseFromLfResult() { // initialize the phase voltages of those which are not set before, three-phase generation power output and load - for(AcscBus b: this.getBusList()){ + for(BaseAcscBus b: this.getBusList()){ if(b.isActive() && !b.isBooleanFlag()){ Complex vpos = b.getVoltage(); @@ -206,13 +205,13 @@ private void BFSSubTransmission (double phaseShiftDeg, Queue onceVisi onceVisitedBuses.add((Bus3Phase) findBus); // update the phase voltage - Complex vpos = ((AclfBus)findBus).getVoltage(); + Complex vpos = ((BaseDStabBus)findBus).getVoltage(); Complex va = vpos.multiply(phaseShiftCplxFactor(phaseShiftDeg)); Complex vb = va.multiply(phaseShiftCplxFactor(-120.0d)); Complex vc = va.multiply(phaseShiftCplxFactor(120.0d)); ((Bus3Phase) findBus).set3PhaseVoltages(new Complex3x1(va,vb,vc)); - ((AclfBus)findBus).setVoltage(((Bus3Phase) findBus).getThreeSeqVoltage().b_1); + ((Bus3Phase)findBus).setVoltage(((Bus3Phase) findBus).getThreeSeqVoltage().b_1); } } catch (InterpssException e) { @@ -242,7 +241,7 @@ public ISparseEqnComplexMatrix3x3 formYMatrixABC() throws Exception { yMatrixAbc = new SparseEqnComplexMatrix3x3Impl(getNoBus()); - for(DStabBus b:this.getBusList()){ + for(BaseDStabBus b:this.getBusList()){ if(b.isActive()){ if(b instanceof Bus3Phase){ int i = b.getSortNumber(); @@ -289,7 +288,7 @@ public ISparseEqnComplexMatrix3x3 formYMatrixABC() throws Exception { //TODO append the equivalent admittance of dynamic loads to YMatrixABC - for ( DStabBus bus : getBusList() ) { + for ( BaseDStabBus bus : getBusList() ) { if(bus.isActive() && bus.isLoad()){ Bus3Phase bus3p = (Bus3Phase) bus; @@ -370,7 +369,7 @@ public ISparseEqnComplexMatrix3x3 formYMatrixABC() throws Exception { } private void convertLoadModel() { - for ( DStabBus busi : getBusList() ) { + for ( BaseDStabBus busi : getBusList() ) { //only the active buses will be initialized if(busi.isActive()){ //init three sequence load @@ -397,13 +396,13 @@ public boolean solveNetEqn() { try { if(isYMatrixDirty()){ - getYMatrixABC().luMatrix(Constants.Matrix_LU_Tolerance); + getYMatrixABC().factorization(Constants.Matrix_LU_Tolerance); setYMatrixDirty(false); } // Calculate and set generator injection current for( Bus b : getBusList()) { - DStabBus bus = (DStabBus)b; + BaseDStabBus bus = (BaseDStabBus)b; if(bus.isActive()){ Bus3Phase bus3p = (Bus3Phase) bus; @@ -433,7 +432,7 @@ public boolean solveNetEqn() { for(DynLoadModel1Phase load1p:bus3p.getPhaseADynLoadList()){ if(load1p.isActive()){ - iPhAInj = iPhAInj.add(load1p.getCompensateCurInj()); + iPhAInj = iPhAInj.add(load1p.getNortonCurInj()); // System.out.println("Iinj@Load-"+bus3p.getId()+", "+ load1p.getId()+","+load1p.getCompensateCurInj().toString()); } } @@ -448,7 +447,7 @@ public boolean solveNetEqn() { for(DynLoadModel1Phase load1p:bus3p.getPhaseBDynLoadList()){ if(load1p.isActive()){ - iPhBInj = iPhBInj.add(load1p.getCompensateCurInj()); + iPhBInj = iPhBInj.add(load1p.getNortonCurInj()); // System.out.println("Iinj@Load-"+bus3p.getId()+", "+ load1p.getId()+","+load1p.getCompensateCurInj().toString()); } } @@ -463,7 +462,7 @@ public boolean solveNetEqn() { for(DynLoadModel1Phase load1p:bus3p.getPhaseCDynLoadList()){ if(load1p.isActive()){ - iPhCInj = iPhCInj.add(load1p.getCompensateCurInj()); + iPhCInj = iPhCInj.add(load1p.getNortonCurInj()); // System.out.println("Iinj@Load-"+bus3p.getId()+", "+ load1p.getId()+","+load1p.getCompensateCurInj().toString()); } } @@ -504,7 +503,7 @@ public boolean solveNetEqn() { // update bus voltage and machine Pe for( Bus b : getBusList()) { - DStabBus bus = (DStabBus)b; + BaseDStabBus bus = (BaseDStabBus)b; if(bus.isActive()){ Complex3x1 vabc = getYMatrixABC().getX(bus.getSortNumber()); //if(bus.getId().equals("Bus12")) @@ -548,7 +547,7 @@ public boolean initDStabNet() { if(this.getNetworkType()==NetworkType.TRANSMISSION && !is3PhaseNetworkInitialized) initThreePhaseFromLfResult(); - for ( DStabBus b : getBusList() ) { + for ( BaseDStabBus b : getBusList() ) { if( b instanceof Bus3Phase){ Bus3Phase bus =(Bus3Phase) b; @@ -572,7 +571,8 @@ public boolean initDStabNet() { //TODO add the three-phase dynamic generation list to the bus bus.getContributeGenList().addAll(bus.getThreePhaseGenList()); - for(AclfGen gen: bus.getContributeGenList()){ + for(Object obj: bus.getContributeGenList()){ + AclfGen gen = (AclfGen)obj; if(gen.isActive() && gen instanceof DStabGen){ DStabGen dynGen = (DStabGen) gen; //TODO 11/19/2015 consider generic generation models @@ -604,7 +604,8 @@ public boolean initDStabNet() { Complex totalPosSeqDynLoadPQ = new Complex(0,0); if( b.getDynLoadModelList().size()>0){ - for(DynLoadModel load:bus.getDynLoadModelList()){ + for(Object obj:bus.getDynLoadModelList()){ + DynLoadModel load = (DynLoadModel)obj; if(load.isActive()){ totalDynLoadPercent += load.getLoadPercent(); @@ -614,7 +615,8 @@ public boolean initDStabNet() { // check the value of totalDynLoadPercent, it must be <=100.0; otherwise rescale it down to 100. if(totalDynLoadPercent>100.0){ ipssLogger.severe("The total dynamic loads accout for more than 100% of the bus load. Rescaled down to 100%"); - for(DynLoadModel load:bus.getDynLoadModelList()){ + for(Object obj :bus.getDynLoadModelList()){ + DynLoadModel load = (DynLoadModel)obj; if(load.isActive()){ load.setLoadPercent(load.getLoadPercent()*100.0/totalDynLoadPercent); } @@ -623,7 +625,8 @@ public boolean initDStabNet() { } // the init load is only available after initialization - for(DynLoadModel load:bus.getDynLoadModelList()){ + for(Object obj :bus.getDynLoadModelList()){ + DynLoadModel load = (DynLoadModel)obj; if(load.isActive()){ load.initStates(); totalPosSeqDynLoadPQ = totalPosSeqDynLoadPQ.add(load.getInitLoadPQ()); diff --git a/ipss.plugin.3phase/src/org/ipss/threePhase/dynamic/model/DStabGen3PhaseAdapter.java b/ipss.plugin.3phase/src/org/interpss/threePhase/dynamic/model/DStabGen3PhaseAdapter.java similarity index 59% rename from ipss.plugin.3phase/src/org/ipss/threePhase/dynamic/model/DStabGen3PhaseAdapter.java rename to ipss.plugin.3phase/src/org/interpss/threePhase/dynamic/model/DStabGen3PhaseAdapter.java index 05d4122..a9e4f52 100644 --- a/ipss.plugin.3phase/src/org/ipss/threePhase/dynamic/model/DStabGen3PhaseAdapter.java +++ b/ipss.plugin.3phase/src/org/interpss/threePhase/dynamic/model/DStabGen3PhaseAdapter.java @@ -1,6 +1,6 @@ -package org.ipss.threePhase.dynamic.model; +package org.interpss.threePhase.dynamic.model; -import org.ipss.threePhase.dynamic.IDynamicModel3Phase; +import org.interpss.threePhase.dynamic.IDynamicModel3Phase; import com.interpss.core.aclf.ref.GenRef; import com.interpss.dstab.DStabGen; diff --git a/ipss.plugin.3phase/src/org/ipss/threePhase/dynamic/model/DynGenModel3Phase.java b/ipss.plugin.3phase/src/org/interpss/threePhase/dynamic/model/DynGenModel3Phase.java similarity index 92% rename from ipss.plugin.3phase/src/org/ipss/threePhase/dynamic/model/DynGenModel3Phase.java rename to ipss.plugin.3phase/src/org/interpss/threePhase/dynamic/model/DynGenModel3Phase.java index 158759b..6170ef0 100644 --- a/ipss.plugin.3phase/src/org/ipss/threePhase/dynamic/model/DynGenModel3Phase.java +++ b/ipss.plugin.3phase/src/org/interpss/threePhase/dynamic/model/DynGenModel3Phase.java @@ -1,11 +1,11 @@ -package org.ipss.threePhase.dynamic.model; +package org.interpss.threePhase.dynamic.model; import org.apache.commons.math3.complex.Complex; import org.interpss.numeric.datatype.Complex3x1; import org.interpss.numeric.datatype.Complex3x3; import org.interpss.numeric.datatype.Unit.UnitType; -import org.ipss.threePhase.basic.Bus3Phase; -import org.ipss.threePhase.basic.Gen3Phase; +import org.interpss.threePhase.basic.Bus3Phase; +import org.interpss.threePhase.basic.Gen3Phase; public abstract class DynGenModel3Phase extends DynamicModel3Phase{ diff --git a/ipss.plugin.3phase/src/org/ipss/threePhase/dynamic/model/DynLoadModel1Phase.java b/ipss.plugin.3phase/src/org/interpss/threePhase/dynamic/model/DynLoadModel1Phase.java similarity index 71% rename from ipss.plugin.3phase/src/org/ipss/threePhase/dynamic/model/DynLoadModel1Phase.java rename to ipss.plugin.3phase/src/org/interpss/threePhase/dynamic/model/DynLoadModel1Phase.java index 13cce95..19f930c 100644 --- a/ipss.plugin.3phase/src/org/ipss/threePhase/dynamic/model/DynLoadModel1Phase.java +++ b/ipss.plugin.3phase/src/org/interpss/threePhase/dynamic/model/DynLoadModel1Phase.java @@ -1,10 +1,8 @@ -package org.ipss.threePhase.dynamic.model; +package org.interpss.threePhase.dynamic.model; import org.apache.commons.math3.complex.Complex; -import org.interpss.numeric.datatype.Complex3x1; -import org.ipss.threePhase.basic.Bus3Phase; -import com.interpss.dstab.DStabBus; +import com.interpss.dstab.BaseDStabBus; import com.interpss.dstab.dynLoad.DynLoadModel; public abstract class DynLoadModel1Phase extends DynamicModel1Phase implements DynLoadModel{ @@ -15,12 +13,12 @@ public abstract class DynLoadModel1Phase extends DynamicModel1Phase implements D protected double loadFactor = 0.85; - protected DStabBus bus; + protected BaseDStabBus bus; protected Complex equivY = null; - protected Complex compensateCurrInj; + protected Complex nortonCurrInj; protected Complex currInj2Net = null; protected Complex initLoadPQ = null; @@ -40,13 +38,13 @@ public void setLoadPercent(double percentOfTotalLoad) { } @Override - public double getMVABase() { + public double getMvaBase() { return this.mva; } @Override - public void setMVABase(double loadMVABase) { + public void setMvaBase(double loadMVABase) { this.mva = loadMVABase; } @@ -64,6 +62,11 @@ public void setLoadFactor(double loadFactor) { public Complex getPosSeqEquivY() { throw new UnsupportedOperationException(); } + + @Override + public boolean changeLoad(double factor) { + throw new UnsupportedOperationException(); + } public Complex getEquivY(){ return this.equivY ; @@ -116,7 +119,7 @@ public void setLoadPQ(Complex loadPQ) { @Override public Complex getCurrInj2Net() { - return this.currInj2Net = getCompensateCurInj().subtract(getBusPhaseVoltage().multiply( getCompensateShuntY())); + return this.currInj2Net = getNortonCurInj().subtract(getBusPhaseVoltage().multiply( getCompensateShuntY())); } @Override @@ -126,13 +129,13 @@ public void setCurrInj2Net(Complex value) { } @Override - public Complex getCompensateCurInj(){ - return this.compensateCurrInj; + public Complex getNortonCurInj(){ + return this.nortonCurrInj; } @Override - public void setCompensateCurInj(Complex compCurrent){ - this.compensateCurrInj = compCurrent; + public void setNortonCurInj(Complex compCurrent){ + this.nortonCurrInj = compCurrent; } diff --git a/ipss.plugin.3phase/src/org/ipss/threePhase/dynamic/model/DynLoadModel3Phase.java b/ipss.plugin.3phase/src/org/interpss/threePhase/dynamic/model/DynLoadModel3Phase.java similarity index 87% rename from ipss.plugin.3phase/src/org/ipss/threePhase/dynamic/model/DynLoadModel3Phase.java rename to ipss.plugin.3phase/src/org/interpss/threePhase/dynamic/model/DynLoadModel3Phase.java index f62292a..0594909 100644 --- a/ipss.plugin.3phase/src/org/ipss/threePhase/dynamic/model/DynLoadModel3Phase.java +++ b/ipss.plugin.3phase/src/org/interpss/threePhase/dynamic/model/DynLoadModel3Phase.java @@ -1,7 +1,6 @@ -package org.ipss.threePhase.dynamic.model; +package org.interpss.threePhase.dynamic.model; import org.interpss.numeric.datatype.Complex3x1; -import org.interpss.numeric.datatype.Complex3x3; /** * There are many aspects that are different from the dynLoadModel, which is mainly defined for positive sequence and 1-phase scenarios. diff --git a/ipss.plugin.3phase/src/org/ipss/threePhase/dynamic/model/DynamicModel1Phase.java b/ipss.plugin.3phase/src/org/interpss/threePhase/dynamic/model/DynamicModel1Phase.java similarity index 87% rename from ipss.plugin.3phase/src/org/ipss/threePhase/dynamic/model/DynamicModel1Phase.java rename to ipss.plugin.3phase/src/org/interpss/threePhase/dynamic/model/DynamicModel1Phase.java index c3af4c6..351180c 100644 --- a/ipss.plugin.3phase/src/org/ipss/threePhase/dynamic/model/DynamicModel1Phase.java +++ b/ipss.plugin.3phase/src/org/interpss/threePhase/dynamic/model/DynamicModel1Phase.java @@ -1,17 +1,16 @@ -package org.ipss.threePhase.dynamic.model; +package org.interpss.threePhase.dynamic.model; import java.util.Hashtable; import java.util.List; import org.apache.commons.math3.complex.Complex; import org.interpss.numeric.datatype.Complex3x1; -import org.ipss.threePhase.basic.Bus3Phase; -import org.ipss.threePhase.basic.Phase; -import org.ipss.threePhase.dynamic.IDynamicModel1Phase; +import org.interpss.threePhase.basic.Bus3Phase; +import org.interpss.threePhase.dynamic.IDynamicModel1Phase; +import com.interpss.core.acsc.PhaseCode; import com.interpss.core.net.Network; -import com.interpss.core.net.impl.NameTagImpl; -import com.interpss.dstab.DStabBus; +import com.interpss.dstab.BaseDStabBus; import com.interpss.dstab.algo.DynamicSimuMethod; import com.interpss.dstab.device.impl.DynamicBusDeviceImpl; import com.interpss.dstab.mach.Machine; @@ -19,7 +18,7 @@ public abstract class DynamicModel1Phase extends DynamicBusDeviceImpl implements IDynamicModel1Phase { - protected Phase connectPhase = null; + protected PhaseCode connectPhase = null; protected Bus3Phase parentBus = null; public Bus3Phase getParentBus(){ @@ -30,12 +29,12 @@ public Bus3Phase getParentBus(){ } @Override - public Phase getPhase() { + public PhaseCode getPhase() { return this.connectPhase; } @Override - public void setPhase(Phase p) { + public void setPhase(PhaseCode p) { this.connectPhase = p; } @@ -70,7 +69,7 @@ public boolean initStates() { * * @generated */ - public boolean initStates(DStabBus abus) { + public boolean initStates(BaseDStabBus abus) { // TODO: implement this method // Ensure that you remove @generated or mark it @generated NOT throw new UnsupportedOperationException(); @@ -81,7 +80,7 @@ public boolean initStates(DStabBus abus) { * * @generated */ - public boolean initStates(DStabBus abus, Machine mach) { + public boolean initStates(BaseDStabBus abus, Machine mach) { // TODO: implement this method // Ensure that you remove @generated or mark it @generated NOT throw new UnsupportedOperationException(); diff --git a/ipss.plugin.3phase/src/org/ipss/threePhase/dynamic/model/DynamicModel3Phase.java b/ipss.plugin.3phase/src/org/interpss/threePhase/dynamic/model/DynamicModel3Phase.java similarity index 86% rename from ipss.plugin.3phase/src/org/ipss/threePhase/dynamic/model/DynamicModel3Phase.java rename to ipss.plugin.3phase/src/org/interpss/threePhase/dynamic/model/DynamicModel3Phase.java index b560388..3c33c04 100644 --- a/ipss.plugin.3phase/src/org/ipss/threePhase/dynamic/model/DynamicModel3Phase.java +++ b/ipss.plugin.3phase/src/org/interpss/threePhase/dynamic/model/DynamicModel3Phase.java @@ -1,19 +1,14 @@ -package org.ipss.threePhase.dynamic.model; +package org.interpss.threePhase.dynamic.model; import java.util.Hashtable; import java.util.List; -import org.apache.commons.math3.complex.Complex; -import org.interpss.numeric.datatype.Complex3x1; import org.interpss.numeric.datatype.Complex3x3; -import org.interpss.numeric.datatype.Unit.UnitType; -import org.ipss.threePhase.basic.Bus3Phase; -import org.ipss.threePhase.basic.Phase; -import org.ipss.threePhase.dynamic.IDynamicModel3Phase; +import org.interpss.threePhase.basic.Bus3Phase; +import org.interpss.threePhase.dynamic.IDynamicModel3Phase; import com.interpss.core.net.Network; -import com.interpss.core.net.impl.NameTagImpl; -import com.interpss.dstab.DStabBus; +import com.interpss.dstab.BaseDStabBus; import com.interpss.dstab.algo.DynamicSimuMethod; import com.interpss.dstab.device.impl.DynamicBusDeviceImpl; import com.interpss.dstab.mach.Machine; @@ -59,7 +54,7 @@ public boolean initStates() { * * @generated */ - public boolean initStates(DStabBus abus) { + public boolean initStates(BaseDStabBus abus) { // TODO: implement this method // Ensure that you remove @generated or mark it @generated NOT throw new UnsupportedOperationException(); @@ -70,7 +65,7 @@ public boolean initStates(DStabBus abus) { * * @generated */ - public boolean initStates(DStabBus abus, Machine mach) { + public boolean initStates(BaseDStabBus abus, Machine mach) { // TODO: implement this method // Ensure that you remove @generated or mark it @generated NOT throw new UnsupportedOperationException(); diff --git a/ipss.plugin.3phase/src/org/ipss/threePhase/dynamic/model/InductionMotor3PhaseAdapter.java b/ipss.plugin.3phase/src/org/interpss/threePhase/dynamic/model/InductionMotor3PhaseAdapter.java similarity index 89% rename from ipss.plugin.3phase/src/org/ipss/threePhase/dynamic/model/InductionMotor3PhaseAdapter.java rename to ipss.plugin.3phase/src/org/interpss/threePhase/dynamic/model/InductionMotor3PhaseAdapter.java index 912dde4..f6b6b2d 100644 --- a/ipss.plugin.3phase/src/org/ipss/threePhase/dynamic/model/InductionMotor3PhaseAdapter.java +++ b/ipss.plugin.3phase/src/org/interpss/threePhase/dynamic/model/InductionMotor3PhaseAdapter.java @@ -1,4 +1,4 @@ -package org.ipss.threePhase.dynamic.model; +package org.interpss.threePhase.dynamic.model; import java.util.Hashtable; @@ -6,12 +6,10 @@ import org.interpss.numeric.datatype.Complex3x1; import org.interpss.numeric.datatype.Complex3x3; import org.interpss.numeric.datatype.Unit.UnitType; -import org.ipss.threePhase.basic.Bus3Phase; -import org.ipss.threePhase.dynamic.model.DynLoadModel3Phase; -import org.ipss.threePhase.dynamic.model.InductionMotor3PhaseAdapter; +import org.interpss.threePhase.basic.Bus3Phase; import com.interpss.dstab.algo.DynamicSimuMethod; -import com.interpss.dstab.dynLoad.InductionMotor; +import org.interpss.dstab.dynLoad.InductionMotor; /** @@ -69,7 +67,7 @@ public Complex3x3 getZabc(boolean machineMVABase) { public Complex3x3 getYabc(boolean machineMVABase) { double sysMVABase = this.indMotor.getDStabBus().getNetwork().getBaseMva(); - double zMultiFactor=sysMVABase/this.indMotor.getMVABase(); // convert z from motor base to system base + double zMultiFactor=sysMVABase/this.indMotor.getMvaBase(); // convert z from motor base to system base if(Yabc == null){ // y1 = y2 = equivYSysBase, y0 = 0.0; @@ -164,5 +162,11 @@ public Hashtable getStates(Object ref) { return this.indMotor.getStates(ref); } + + //TODO to implement + @Override + public boolean updateAttributes(boolean netChange) { + return true; + } } diff --git a/ipss.plugin.3phase/src/org/ipss/threePhase/dynamic/model/PVDistGen3Phase.java b/ipss.plugin.3phase/src/org/interpss/threePhase/dynamic/model/PVDistGen3Phase.java similarity index 93% rename from ipss.plugin.3phase/src/org/ipss/threePhase/dynamic/model/PVDistGen3Phase.java rename to ipss.plugin.3phase/src/org/interpss/threePhase/dynamic/model/PVDistGen3Phase.java index 5fe97c9..e28a456 100644 --- a/ipss.plugin.3phase/src/org/ipss/threePhase/dynamic/model/PVDistGen3Phase.java +++ b/ipss.plugin.3phase/src/org/interpss/threePhase/dynamic/model/PVDistGen3Phase.java @@ -1,13 +1,13 @@ -package org.ipss.threePhase.dynamic.model; +package org.interpss.threePhase.dynamic.model; import java.util.Hashtable; import org.apache.commons.math3.complex.Complex; import org.interpss.numeric.datatype.ComplexFunc; -import org.ipss.threePhase.basic.Gen3Phase; +import org.interpss.threePhase.basic.Gen3Phase; -import com.interpss.core.acsc.AcscBus; -import com.interpss.dstab.DStabBus; +import com.interpss.core.acsc.BaseAcscBus; +import com.interpss.dstab.BaseDStabBus; import com.interpss.dstab.algo.DynamicSimuMethod; import com.interpss.dstab.common.DStabOutSymbol; @@ -87,8 +87,7 @@ public Complex getPosSeqGenPQ(){ return this.posSeqGenPQ; } - @Override - public boolean initStates(DStabBus abus){ + public boolean initStates(BaseDStabBus abus){ if(this.getPosSeqGenPQ() == null) return false; this.genPQInit = new Complex(this.posSeqGenPQ.getReal(),this.posSeqGenPQ.getImaginary()); @@ -118,7 +117,7 @@ public boolean nextStep(double dt, DynamicSimuMethod method){ } private Complex getPosSeqVt(){ - Complex vt = ((AcscBus)this.getParentGen().getParentBus()).getThreeSeqVoltage().b_1; + Complex vt = ((BaseAcscBus)this.getParentGen().getParentBus()).getThreeSeqVoltage().b_1; return vt; } @@ -127,7 +126,7 @@ private Complex getPosSeqVt(){ // in power flow and dynamics" report private Complex calcPosSeqCurInjection(){ - double freq = ((DStabBus)this.getParentGen().getParentBus()).getFreq(); + double freq = ((BaseDStabBus)this.getParentGen().getParentBus()).getFreq(); //calculate Idq with reference to the terminal voltage angle @@ -340,5 +339,6 @@ public double getOverFreqTripAll() { public void setOverFreqTripAll(double overFreqTripAll) { this.overFreqTripAll = overFreqTripAll; } - + + } diff --git a/ipss.plugin.3phase/src/org/ipss/threePhase/dynamic/model/impl/DStabGen3PhaseAdapterImpl.java b/ipss.plugin.3phase/src/org/interpss/threePhase/dynamic/model/impl/DStabGen3PhaseAdapterImpl.java similarity index 90% rename from ipss.plugin.3phase/src/org/ipss/threePhase/dynamic/model/impl/DStabGen3PhaseAdapterImpl.java rename to ipss.plugin.3phase/src/org/interpss/threePhase/dynamic/model/impl/DStabGen3PhaseAdapterImpl.java index 46958e1..22e39c0 100644 --- a/ipss.plugin.3phase/src/org/ipss/threePhase/dynamic/model/impl/DStabGen3PhaseAdapterImpl.java +++ b/ipss.plugin.3phase/src/org/interpss/threePhase/dynamic/model/impl/DStabGen3PhaseAdapterImpl.java @@ -1,12 +1,12 @@ -package org.ipss.threePhase.dynamic.model.impl; +package org.interpss.threePhase.dynamic.model.impl; import org.apache.commons.math3.complex.Complex; import org.interpss.numeric.datatype.Complex3x1; import org.interpss.numeric.datatype.Complex3x3; import org.interpss.numeric.datatype.Unit.UnitType; -import org.ipss.threePhase.basic.Bus3Phase; -import org.ipss.threePhase.dynamic.model.DStabGen3PhaseAdapter; -import org.ipss.threePhase.dynamic.model.DynamicModel3Phase; +import org.interpss.threePhase.basic.Bus3Phase; +import org.interpss.threePhase.dynamic.model.DStabGen3PhaseAdapter; +import org.interpss.threePhase.dynamic.model.DynamicModel3Phase; import com.interpss.core.net.impl.NameTagImpl; import com.interpss.dstab.DStabGen; diff --git a/ipss.plugin.3phase/src/org/ipss/threePhase/dynamic/model/impl/SinglePhaseACMotor.java b/ipss.plugin.3phase/src/org/interpss/threePhase/dynamic/model/impl/SinglePhaseACMotor.java similarity index 89% rename from ipss.plugin.3phase/src/org/ipss/threePhase/dynamic/model/impl/SinglePhaseACMotor.java rename to ipss.plugin.3phase/src/org/interpss/threePhase/dynamic/model/impl/SinglePhaseACMotor.java index 3526947..6406f75 100644 --- a/ipss.plugin.3phase/src/org/ipss/threePhase/dynamic/model/impl/SinglePhaseACMotor.java +++ b/ipss.plugin.3phase/src/org/interpss/threePhase/dynamic/model/impl/SinglePhaseACMotor.java @@ -1,12 +1,11 @@ -package org.ipss.threePhase.dynamic.model.impl; +package org.interpss.threePhase.dynamic.model.impl; import java.util.Hashtable; import org.apache.commons.math3.complex.Complex; import org.interpss.numeric.datatype.Complex3x1; -import org.ipss.threePhase.basic.Bus3Phase; -import org.ipss.threePhase.basic.Phase; -import org.ipss.threePhase.dynamic.model.DynLoadModel1Phase; +import org.interpss.threePhase.basic.Bus3Phase; +import org.interpss.threePhase.dynamic.model.DynLoadModel1Phase; import com.interpss.common.util.IpssLogger; import com.interpss.dstab.DStabBus; @@ -39,7 +38,7 @@ Initialization calculations: Qo = Po * tan ( acos(CompPF) ) - 6 * (1-0.86) ^2 - V’stall is calculated to determine the voltage level at which there is an intersection between the stall power characteristic and the transition characteristic used for V < 0.86: + V芒鈧劉stall is calculated to determine the voltage level at which there is an intersection between the stall power characteristic and the transition characteristic used for V < 0.86: for ( V = 0.4; V < Vstall; V += 0.01 ) { pst = Gstall * V2 @@ -226,14 +225,14 @@ public boolean initStates() { this.setLoadPQ(new Complex(pac,qac)); // if mva is not defined and loading factor is available - if(this.getMVABase()==0.0){ + if(this.getMvaBase()==0.0){ if(this.loadFactor >0 && this.loadFactor<=1.0) IpssLogger.getLogger().fine("AC motor MVABase will be calculated based on load factor"); else this.loadFactor = 1.0; // phase mva base is the 1/3 of the system 3phaes mva base double calcMva = this.pac*this.getDStabBus().getNetwork().getBaseMva()/3.0d/this.loadFactor; - this.setMVABase(calcMva); + this.setMvaBase(calcMva); } @@ -422,47 +421,29 @@ private double getMotor2SysMVARatio(){ @Override - public Complex getCompensateCurInj() { + public Complex getNortonCurInj() { - if(this.compensateCurrInj == null) calculateCompensateCurInj(); + if(this.nortonCurrInj == null) calculateCompensateCurInj(); Complex v = this.getBusPhaseVoltage(); - //TODO based on the WECC Dynamic Composite Load Model (CMPLDW) Specifications published 01-27-2015 - // A/C are modeled as like "stalled A/C", if V distNet = null; + private BaseAclfNetwork,? extends AclfBranch> distNet = null; private DistributionPFMethod pfMethod = DistributionPFMethod.Forward_Backword_Sweep; @@ -57,7 +60,7 @@ public boolean orderDistributionBuses(boolean radialOnly) { Queue onceVisitedBuses = new LinkedList<>(); // find the source bus, which is the swing bus for radial feeders; - for(AclfBus b: distNet.getBusList()){ + for(BaseAclfBus b: distNet.getBusList()){ if(b.isActive() && b.isSwing()){ onceVisitedBuses.add((Bus3Phase) b); } @@ -121,7 +124,7 @@ private void BFS (Queue onceVisitedBuses){ public boolean initBusVoltages() { - for(AclfBus b: distNet.getBusList()){ + for(BaseAclfBus b: distNet.getBusList()){ Bus3Phase bus = (Bus3Phase) b; if(b.isSwing()) @@ -228,7 +231,7 @@ private boolean FBSPowerflow(){ //----------------------------------------------------------------------- for(int sortNum =this.distNet.getNoBus()-1;sortNum>0;sortNum--){ - AclfBus bus = this.distNet.getBus(sortNum); + BaseAclfBus bus = this.distNet.getBus(sortNum); if(bus==null){ throw new Error(" The bus sort num # "+sortNum +" returns null bus object in distribution #"+this.distNet.getId()); @@ -428,7 +431,7 @@ else if (upStreamBranch.isXfr()){ double mis = 0; this.pfFlag =true; - for(AclfBus bus: this.distNet.getBusList()){ + for(BaseAclfBus bus: this.distNet.getBusList()){ if(bus.isActive()){ Bus3Phase bus3P = (Bus3Phase) bus; if(i>=1){ @@ -458,7 +461,7 @@ else if (upStreamBranch.isXfr()){ for(int sortNum2 = 0;sortNum2 bus: this.distNet.getBusList()){ if(bus.isActive() && bus.isSwing()){ Bus3Phase bus3p = (Bus3Phase) bus; Complex3x1 sumOfBranchCurrents = new Complex3x1(); diff --git a/ipss.plugin.3phase/src/org/ipss/threePhase/test/IEEE9Bus_3phase_LF_init_test.java b/ipss.plugin.3phase/src/org/interpss/threePhase/test/IEEE9Bus_3phase_LF_init_test.java similarity index 91% rename from ipss.plugin.3phase/src/org/ipss/threePhase/test/IEEE9Bus_3phase_LF_init_test.java rename to ipss.plugin.3phase/src/org/interpss/threePhase/test/IEEE9Bus_3phase_LF_init_test.java index 465b159..c4759a5 100644 --- a/ipss.plugin.3phase/src/org/ipss/threePhase/test/IEEE9Bus_3phase_LF_init_test.java +++ b/ipss.plugin.3phase/src/org/interpss/threePhase/test/IEEE9Bus_3phase_LF_init_test.java @@ -1,4 +1,4 @@ -package org.ipss.threePhase.test; +package org.interpss.threePhase.test; import static com.interpss.core.funcImpl.AcscFunction.acscXfrAptr; import static org.junit.Assert.assertTrue; @@ -6,46 +6,30 @@ import java.util.logging.Level; import org.apache.commons.math3.complex.Complex; -import org.apache.commons.math3.complex.ComplexUtils; -import org.ieee.odm.adapter.IODMAdapter.NetType; -import org.ieee.odm.adapter.psse.PSSEAdapter; -import org.ieee.odm.adapter.psse.PSSEAdapter.PsseVersion; -import org.ieee.odm.model.dstab.DStabModelParser; import org.interpss.IpssCorePlugin; import org.interpss.display.AclfOutFunc; -import org.interpss.display.AclfOutFunc.BusIdStyle; -import org.interpss.display.impl.AclfOut_BusStyle; import org.interpss.numeric.datatype.Complex3x3; import org.interpss.numeric.datatype.Unit.UnitType; import org.interpss.numeric.util.PerformanceTimer; -import org.ipss.threePhase.basic.Branch3Phase; -import org.ipss.threePhase.basic.Bus3Phase; -import org.ipss.threePhase.basic.Gen3Phase; -import org.ipss.threePhase.basic.Load3Phase; -import org.ipss.threePhase.basic.Network3Phase; -import org.ipss.threePhase.basic.Phase; -import org.ipss.threePhase.basic.impl.AclfNetwork3Phase; -import org.ipss.threePhase.dynamic.DStabNetwork3Phase; -import org.ipss.threePhase.dynamic.algo.DynamicEventProcessor3Phase; -import org.ipss.threePhase.dynamic.impl.DStabNetwork3phaseImpl; -import org.ipss.threePhase.dynamic.model.impl.SinglePhaseACMotor; -import org.ipss.threePhase.odm.ODM3PhaseDStabParserMapper; -import org.ipss.threePhase.util.ThreePhaseAclfOutFunc; -import org.ipss.threePhase.util.ThreePhaseObjectFactory; +import org.interpss.threePhase.basic.Branch3Phase; +import org.interpss.threePhase.basic.Bus3Phase; +import org.interpss.threePhase.basic.Gen3Phase; +import org.interpss.threePhase.basic.Load3Phase; +import org.interpss.threePhase.dynamic.DStabNetwork3Phase; +import org.interpss.threePhase.dynamic.algo.DynamicEventProcessor3Phase; +import org.interpss.threePhase.dynamic.impl.DStabNetwork3phaseImpl; +import org.interpss.threePhase.util.ThreePhaseAclfOutFunc; +import org.interpss.threePhase.util.ThreePhaseObjectFactory; import org.junit.Test; import com.interpss.CoreObjectFactory; import com.interpss.DStabObjectFactory; -import com.interpss.SimuObjectFactory; import com.interpss.common.exp.InterpssException; import com.interpss.common.util.IpssLogger; import com.interpss.core.aclf.AclfBranchCode; import com.interpss.core.aclf.AclfGenCode; import com.interpss.core.aclf.AclfLoadCode; -import com.interpss.core.aclf.adpter.AclfLoadBusAdapter; -import com.interpss.core.aclf.adpter.AclfPVGenBus; -import com.interpss.core.aclf.adpter.AclfSwingBus; -import com.interpss.core.acsc.AcscBus; +import com.interpss.core.acsc.BaseAcscBus; import com.interpss.core.acsc.XfrConnectCode; import com.interpss.core.acsc.adpter.AcscXformer; import com.interpss.core.acsc.fault.SimpleFaultCode; @@ -54,8 +38,6 @@ import com.interpss.dstab.algo.DynamicSimuAlgorithm; import com.interpss.dstab.algo.DynamicSimuMethod; import com.interpss.dstab.cache.StateMonitor; -import com.interpss.simu.SimuContext; -import com.interpss.simu.SimuCtxType; public class IEEE9Bus_3phase_LF_init_test { @@ -149,7 +131,7 @@ BusID Code Volt(pu) Angle(deg) P(pu) Q(pu) Bus net.initThreePhaseFromLfResult(); - for(AcscBus bus: net.getBusList()){ + for(BaseAcscBus bus: net.getBusList()){ if(bus instanceof Bus3Phase){ Bus3Phase ph3Bus = (Bus3Phase) bus; diff --git a/ipss.plugin.3phase/src/org/ipss/threePhase/test/IEEE9_3Phase_1PAC_test.java b/ipss.plugin.3phase/src/org/interpss/threePhase/test/IEEE9_3Phase_1PAC_test.java similarity index 91% rename from ipss.plugin.3phase/src/org/ipss/threePhase/test/IEEE9_3Phase_1PAC_test.java rename to ipss.plugin.3phase/src/org/interpss/threePhase/test/IEEE9_3Phase_1PAC_test.java index bff8ab9..97e0ed7 100644 --- a/ipss.plugin.3phase/src/org/ipss/threePhase/test/IEEE9_3Phase_1PAC_test.java +++ b/ipss.plugin.3phase/src/org/interpss/threePhase/test/IEEE9_3Phase_1PAC_test.java @@ -1,4 +1,4 @@ -package org.ipss.threePhase.test; +package org.interpss.threePhase.test; import static com.interpss.core.funcImpl.AcscFunction.acscXfrAptr; import static org.junit.Assert.assertTrue; @@ -15,18 +15,14 @@ import org.interpss.numeric.datatype.Complex3x1; import org.interpss.numeric.datatype.Unit.UnitType; import org.interpss.numeric.util.PerformanceTimer; -import org.interpss.util.FileUtil; -import org.ipss.threePhase.basic.Branch3Phase; -import org.ipss.threePhase.basic.Bus3Phase; -import org.ipss.threePhase.basic.Load3Phase; -import org.ipss.threePhase.basic.Phase; -import org.ipss.threePhase.basic.impl.Load3PhaseImpl; -import org.ipss.threePhase.dynamic.DStabNetwork3Phase; -import org.ipss.threePhase.dynamic.algo.DynamicEventProcessor3Phase; -import org.ipss.threePhase.dynamic.model.impl.SinglePhaseACMotor; -import org.ipss.threePhase.odm.ODM3PhaseDStabParserMapper; -import org.ipss.threePhase.util.ThreePhaseAclfOutFunc; -import org.ipss.threePhase.util.ThreePhaseObjectFactory; +import org.interpss.threePhase.basic.Branch3Phase; +import org.interpss.threePhase.basic.Bus3Phase; +import org.interpss.threePhase.dynamic.DStabNetwork3Phase; +import org.interpss.threePhase.dynamic.algo.DynamicEventProcessor3Phase; +import org.interpss.threePhase.dynamic.model.impl.SinglePhaseACMotor; +import org.interpss.threePhase.odm.ODM3PhaseDStabParserMapper; +import org.interpss.threePhase.util.ThreePhaseAclfOutFunc; +import org.interpss.threePhase.util.ThreePhaseObjectFactory; import org.junit.Test; import com.interpss.DStabObjectFactory; @@ -36,6 +32,7 @@ import com.interpss.core.aclf.AclfBranchCode; import com.interpss.core.aclf.AclfGenCode; import com.interpss.core.aclf.AclfLoadCode; +import com.interpss.core.acsc.PhaseCode; import com.interpss.core.acsc.XfrConnectCode; import com.interpss.core.acsc.adpter.AcscXformer; import com.interpss.core.acsc.fault.SimpleFaultCode; @@ -87,24 +84,24 @@ public void test_IEEE9_1pac_Network_solution() throws InterpssException{ SinglePhaseACMotor ac1 = new SinglePhaseACMotor(bus5,"1"); ac1.setLoadPercent(50); - ac1.setPhase(Phase.A); - ac1.setMVABase(25); + ac1.setPhase(PhaseCode.A); + ac1.setMvaBase(25); bus5.getPhaseADynLoadList().add(ac1); SinglePhaseACMotor ac2 = new SinglePhaseACMotor(bus5,"2"); ac2.setLoadPercent(50); - ac2.setPhase(Phase.B); - ac2.setMVABase(25); + ac2.setPhase(PhaseCode.B); + ac2.setMvaBase(25); bus5.getPhaseBDynLoadList().add(ac2); SinglePhaseACMotor ac3 = new SinglePhaseACMotor(bus5,"3"); ac3.setLoadPercent(50); - ac3.setPhase(Phase.C); - ac3.setMVABase(25); + ac3.setPhase(PhaseCode.C); + ac3.setMvaBase(25); bus5.getPhaseCDynLoadList().add(ac3); @@ -380,16 +377,16 @@ public void test_IEEE9_addFeeder_1pac_Dstab() throws InterpssException{ SinglePhaseACMotor ac1 = new SinglePhaseACMotor(bus12,"1"); ac1.setLoadPercent(100); - ac1.setPhase(Phase.A); - ac1.setMVABase(25); + ac1.setPhase(PhaseCode.A); + ac1.setMvaBase(25); bus12.getPhaseADynLoadList().add(ac1); ac1.setVstall(0.65); ac1.setTstall(0.05); SinglePhaseACMotor ac2 = new SinglePhaseACMotor(bus12,"2"); ac2.setLoadPercent(100); - ac2.setPhase(Phase.B); - ac2.setMVABase(25); + ac2.setPhase(PhaseCode.B); + ac2.setMvaBase(25); bus12.getPhaseBDynLoadList().add(ac2); ac2.setVstall(0.65); ac2.setTstall(0.05); @@ -397,8 +394,8 @@ public void test_IEEE9_addFeeder_1pac_Dstab() throws InterpssException{ SinglePhaseACMotor ac3 = new SinglePhaseACMotor(bus12,"3"); ac3.setLoadPercent(100); - ac3.setPhase(Phase.C); - ac3.setMVABase(25); + ac3.setPhase(PhaseCode.C); + ac3.setMvaBase(25); bus12.getPhaseCDynLoadList().add(ac3); ac3.setVstall(0.65); ac3.setTstall(0.05); diff --git a/ipss.plugin.3phase/src/org/ipss/threePhase/test/IEEE_13BusFeeder_Test.java b/ipss.plugin.3phase/src/org/interpss/threePhase/test/IEEE_13BusFeeder_Test.java similarity index 92% rename from ipss.plugin.3phase/src/org/ipss/threePhase/test/IEEE_13BusFeeder_Test.java rename to ipss.plugin.3phase/src/org/interpss/threePhase/test/IEEE_13BusFeeder_Test.java index f8e62da..d01fd16 100644 --- a/ipss.plugin.3phase/src/org/ipss/threePhase/test/IEEE_13BusFeeder_Test.java +++ b/ipss.plugin.3phase/src/org/interpss/threePhase/test/IEEE_13BusFeeder_Test.java @@ -1,4 +1,4 @@ -package org.ipss.threePhase.test; +package org.interpss.threePhase.test; import static com.interpss.core.funcImpl.AcscFunction.acscXfrAptr; import static org.junit.Assert.assertTrue; @@ -10,17 +10,17 @@ import org.interpss.numeric.datatype.Complex3x1; import org.interpss.numeric.datatype.Complex3x3; import org.interpss.numeric.datatype.Unit.UnitType; -import org.ipss.threePhase.basic.Branch3Phase; -import org.ipss.threePhase.basic.Bus3Phase; -import org.ipss.threePhase.basic.IEEEFeederLineCode; -import org.ipss.threePhase.basic.Load3Phase; -import org.ipss.threePhase.basic.impl.Load3PhaseImpl; -import org.ipss.threePhase.dynamic.DStabNetwork3Phase; -import org.ipss.threePhase.dynamic.algo.DynamicEventProcessor3Phase; -import org.ipss.threePhase.powerflow.DistributionPowerFlowAlgorithm; -import org.ipss.threePhase.powerflow.impl.DistPowerFlowOutFunc; -import org.ipss.threePhase.util.ThreePhaseAclfOutFunc; -import org.ipss.threePhase.util.ThreePhaseObjectFactory; +import org.interpss.threePhase.basic.Branch3Phase; +import org.interpss.threePhase.basic.Bus3Phase; +import org.interpss.threePhase.basic.Gen3Phase; +import org.interpss.threePhase.basic.IEEEFeederLineCode; +import org.interpss.threePhase.basic.Load3Phase; +import org.interpss.threePhase.basic.impl.Load3PhaseImpl; +import org.interpss.threePhase.dynamic.DStabNetwork3Phase; +import org.interpss.threePhase.dynamic.algo.DynamicEventProcessor3Phase; +import org.interpss.threePhase.powerflow.DistributionPowerFlowAlgorithm; +import org.interpss.threePhase.powerflow.impl.DistPowerFlowOutFunc; +import org.interpss.threePhase.util.ThreePhaseObjectFactory; import org.junit.Test; import com.interpss.DStabObjectFactory; @@ -31,14 +31,13 @@ import com.interpss.core.acsc.XfrConnectCode; import com.interpss.core.acsc.adpter.AcscXformer; import com.interpss.core.net.NetworkType; +import com.interpss.dstab.BaseDStabBus; import com.interpss.dstab.DStabBranch; -import com.interpss.dstab.DStabBus; -import com.interpss.dstab.DStabGen; import com.interpss.dstab.algo.DynamicSimuAlgorithm; import com.interpss.dstab.algo.DynamicSimuMethod; import com.interpss.dstab.cache.StateMonitor; import com.interpss.dstab.mach.EConstMachine; -import com.interpss.dstab.mach.MachineType; +import com.interpss.dstab.mach.MachineModelType; public class IEEE_13BusFeeder_Test { @@ -57,14 +56,14 @@ public void test_ieee13feeder_powerflow() throws InterpssException{ assertTrue(distPFAlgo.powerflow()); - for(DStabBus bus: net.getBusList()){ + for(BaseDStabBus bus: net.getBusList()){ System.out.println("id, sortNum: "+bus.getId()+","+bus.getSortNumber()); } System.out.println(DistPowerFlowOutFunc.powerflowResultSummary(net)); System.out.println(DistPowerFlowOutFunc.busLfSummary(net)); - } + } @Test public void test_ieee13feeder_dstab() throws InterpssException{ @@ -79,7 +78,7 @@ public void test_ieee13feeder_dstab() throws InterpssException{ assertTrue(distPFAlgo.powerflow()); - for(DStabBus bus: net.getBusList()){ + for(BaseDStabBus bus: net.getBusList()){ System.out.println("id, sortNum: "+bus.getId()+","+bus.getSortNumber()); } @@ -90,7 +89,7 @@ public void test_ieee13feeder_dstab() throws InterpssException{ for(DStabBranch bra: net.getBranchList()){ Branch3Phase bra3p = (Branch3Phase) bra; - System.out.println(bra.getId()+": "+bra3p.getBranchYabc().toString()); + System.out.println(bra.getId()+"锛� "+bra3p.getBranchYabc().toString()); } @@ -157,8 +156,7 @@ public DStabNetwork3Phase createIEEE13BusFeeder4DStab() throws InterpssException source.setVoltage(new Complex(1.0,0)); //source.set3PhaseVoltages(new Complex()); - DStabGen constantGen = DStabObjectFactory.createDStabGen(); - constantGen.setId("Source"); + Gen3Phase constantGen = ThreePhaseObjectFactory.create3PGenerator("Source"); constantGen.setMvaBase(1.0); constantGen.setPosGenZ(new Complex(0.0,0.05)); constantGen.setNegGenZ(new Complex(0.0,0.05)); @@ -167,7 +165,7 @@ public DStabNetwork3Phase createIEEE13BusFeeder4DStab() throws InterpssException EConstMachine mach = (EConstMachine)DStabObjectFactory. - createMachine("MachId", "MachName", MachineType.ECONSTANT, net, "SubBus", "Source"); + createMachine("MachId", "MachName", MachineModelType.ECONSTANT, net, "SubBus", "Source"); mach.setRating(1, UnitType.mVA, net.getBaseKva()); mach.setRatedVoltage(baseVolt115kV); diff --git a/ipss.plugin.3phase/src/org/ipss/threePhase/test/Test3PhaseInductionMotor.java b/ipss.plugin.3phase/src/org/interpss/threePhase/test/Test3PhaseInductionMotor.java similarity index 79% rename from ipss.plugin.3phase/src/org/ipss/threePhase/test/Test3PhaseInductionMotor.java rename to ipss.plugin.3phase/src/org/interpss/threePhase/test/Test3PhaseInductionMotor.java index 2c7fbac..9d50103 100644 --- a/ipss.plugin.3phase/src/org/ipss/threePhase/test/Test3PhaseInductionMotor.java +++ b/ipss.plugin.3phase/src/org/interpss/threePhase/test/Test3PhaseInductionMotor.java @@ -1,25 +1,25 @@ -package org.ipss.threePhase.test; +package org.interpss.threePhase.test; import static org.junit.Assert.assertTrue; import org.interpss.IpssCorePlugin; -import org.ipss.threePhase.basic.Bus3Phase; -import org.ipss.threePhase.dynamic.DStabNetwork3Phase; -import org.ipss.threePhase.dynamic.model.InductionMotor3PhaseAdapter; -import org.ipss.threePhase.powerflow.DistributionPowerFlowAlgorithm; -import org.ipss.threePhase.powerflow.impl.DistPowerFlowOutFunc; -import org.ipss.threePhase.util.ThreePhaseObjectFactory; +import org.interpss.threePhase.basic.Bus3Phase; +import org.interpss.threePhase.dynamic.DStabNetwork3Phase; +import org.interpss.threePhase.dynamic.model.InductionMotor3PhaseAdapter; +import org.interpss.threePhase.powerflow.DistributionPowerFlowAlgorithm; +import org.interpss.threePhase.powerflow.impl.DistPowerFlowOutFunc; +import org.interpss.threePhase.util.ThreePhaseObjectFactory; import org.junit.Test; import com.interpss.DStabObjectFactory; import com.interpss.common.exp.InterpssException; -import com.interpss.core.aclf.AclfBus; +import com.interpss.core.aclf.BaseAclfBus; import com.interpss.core.net.NetworkType; import com.interpss.dstab.algo.DynamicSimuAlgorithm; import com.interpss.dstab.algo.DynamicSimuMethod; import com.interpss.dstab.cache.StateMonitor; -import com.interpss.dstab.dynLoad.InductionMotor; -import com.interpss.dstab.dynLoad.impl.InductionMotorImpl; +import org.interpss.dstab.dynLoad.InductionMotor; +import org.interpss.dstab.dynLoad.impl.InductionMotorImpl; public class Test3PhaseInductionMotor extends TestBase{ @@ -51,7 +51,7 @@ public void testIndMotor() throws InterpssException{ assertTrue(distPFAlgo.powerflow()); - for(AclfBus bus:net.getBusList()){ + for(BaseAclfBus bus:net.getBusList()){ Bus3Phase bus3P = (Bus3Phase) bus; System.out.println("Vabc of bus -"+bus3P.getId()+","+bus3P.get3PhaseVotlages().toString()); } @@ -62,8 +62,8 @@ public void testIndMotor() throws InterpssException{ * create the 3phase induction motor model */ - Bus3Phase bus1 = (Bus3Phase) net.getDStabBus("Bus1"); - InductionMotor indMotor= DStabObjectFactory.createInductionMotor("1"); + Bus3Phase bus1 = (Bus3Phase) net.getBus("Bus1"); + InductionMotor indMotor= new InductionMotorImpl(bus1, "1"); indMotor.setDStabBus(bus1); indMotor.setXm(3.0); @@ -73,7 +73,7 @@ public void testIndMotor() throws InterpssException{ indMotor.setRr1(0.01); - indMotor.setMVABase(50); + indMotor.setMvaBase(50); indMotor.setH(1.0); InductionMotor3PhaseAdapter indMotor3Phase = new InductionMotor3PhaseAdapter(indMotor); diff --git a/ipss.plugin.3phase/src/org/ipss/threePhase/test/Test6BusFeeder.java b/ipss.plugin.3phase/src/org/interpss/threePhase/test/Test6BusFeeder.java similarity index 88% rename from ipss.plugin.3phase/src/org/ipss/threePhase/test/Test6BusFeeder.java rename to ipss.plugin.3phase/src/org/interpss/threePhase/test/Test6BusFeeder.java index d02e89c..79f7fe6 100644 --- a/ipss.plugin.3phase/src/org/ipss/threePhase/test/Test6BusFeeder.java +++ b/ipss.plugin.3phase/src/org/interpss/threePhase/test/Test6BusFeeder.java @@ -1,4 +1,4 @@ -package org.ipss.threePhase.test; +package org.interpss.threePhase.test; import static com.interpss.core.funcImpl.AcscFunction.acscXfrAptr; import static org.junit.Assert.assertTrue; @@ -8,16 +8,17 @@ import org.interpss.numeric.datatype.Complex3x1; import org.interpss.numeric.datatype.Complex3x3; import org.interpss.numeric.datatype.Unit.UnitType; -import org.ipss.threePhase.basic.Branch3Phase; -import org.ipss.threePhase.basic.Bus3Phase; -import org.ipss.threePhase.basic.Load3Phase; -import org.ipss.threePhase.basic.impl.Load3PhaseImpl; -import org.ipss.threePhase.dynamic.DStabNetwork3Phase; -import org.ipss.threePhase.dynamic.algo.DynamicEventProcessor3Phase; -import org.ipss.threePhase.powerflow.DistributionPowerFlowAlgorithm; -import org.ipss.threePhase.powerflow.impl.DistPowerFlowOutFunc; -import org.ipss.threePhase.util.ThreePhaseAclfOutFunc; -import org.ipss.threePhase.util.ThreePhaseObjectFactory; +import org.interpss.threePhase.basic.Branch3Phase; +import org.interpss.threePhase.basic.Bus3Phase; +import org.interpss.threePhase.basic.Gen3Phase; +import org.interpss.threePhase.basic.Load3Phase; +import org.interpss.threePhase.basic.impl.Load3PhaseImpl; +import org.interpss.threePhase.dynamic.DStabNetwork3Phase; +import org.interpss.threePhase.dynamic.algo.DynamicEventProcessor3Phase; +import org.interpss.threePhase.powerflow.DistributionPowerFlowAlgorithm; +import org.interpss.threePhase.powerflow.impl.DistPowerFlowOutFunc; +import org.interpss.threePhase.util.ThreePhaseAclfOutFunc; +import org.interpss.threePhase.util.ThreePhaseObjectFactory; import org.junit.Test; import com.interpss.DStabObjectFactory; @@ -35,7 +36,7 @@ import com.interpss.dstab.cache.StateMonitor; import com.interpss.dstab.cache.StateMonitor.MonitorRecord; import com.interpss.dstab.mach.EConstMachine; -import com.interpss.dstab.mach.MachineType; +import com.interpss.dstab.mach.MachineModelType; public class Test6BusFeeder { @@ -137,8 +138,7 @@ public DStabNetwork3Phase createFeeder() throws InterpssException{ bus1.setLoadCode(AclfLoadCode.NON_LOAD); bus1.setVoltage(new Complex(1.01,0)); - DStabGen constantGen = DStabObjectFactory.createDStabGen(); - constantGen.setId("Source"); + Gen3Phase constantGen = ThreePhaseObjectFactory.create3PGenerator("Source"); constantGen.setMvaBase(100); constantGen.setPosGenZ(new Complex(0.0,0.05)); constantGen.setNegGenZ(new Complex(0.0,0.05)); @@ -147,7 +147,7 @@ public DStabNetwork3Phase createFeeder() throws InterpssException{ EConstMachine mach = (EConstMachine)DStabObjectFactory. - createMachine("MachId", "MachName", MachineType.ECONSTANT, net, "Bus1", "Source"); + createMachine("MachId", "MachName", MachineModelType.ECONSTANT, net, "Bus1", "Source"); mach.setRating(100, UnitType.mVA, net.getBaseKva()); mach.setRatedVoltage(69000.0); diff --git a/ipss.plugin.3phase/src/org/ipss/threePhase/test/Test6BusFeederCompositeLoadModel.java b/ipss.plugin.3phase/src/org/interpss/threePhase/test/Test6BusFeederCompositeLoadModel.java similarity index 75% rename from ipss.plugin.3phase/src/org/ipss/threePhase/test/Test6BusFeederCompositeLoadModel.java rename to ipss.plugin.3phase/src/org/interpss/threePhase/test/Test6BusFeederCompositeLoadModel.java index c13bec0..d5bab4d 100644 --- a/ipss.plugin.3phase/src/org/ipss/threePhase/test/Test6BusFeederCompositeLoadModel.java +++ b/ipss.plugin.3phase/src/org/interpss/threePhase/test/Test6BusFeederCompositeLoadModel.java @@ -1,36 +1,34 @@ -package org.ipss.threePhase.test; +package org.interpss.threePhase.test; import static org.junit.Assert.assertTrue; import org.apache.commons.math3.complex.Complex; import org.interpss.IpssCorePlugin; -import org.interpss.numeric.datatype.Complex3x1; -import org.ipss.threePhase.basic.Bus3Phase; -import org.ipss.threePhase.basic.Gen3Phase; -import org.ipss.threePhase.basic.Load3Phase; -import org.ipss.threePhase.basic.Phase; -import org.ipss.threePhase.basic.impl.Gen3PhaseImpl; -import org.ipss.threePhase.basic.impl.Load3PhaseImpl; -import org.ipss.threePhase.dynamic.DStabNetwork3Phase; -import org.ipss.threePhase.dynamic.algo.DynamicEventProcessor3Phase; -import org.ipss.threePhase.dynamic.model.InductionMotor3PhaseAdapter; -import org.ipss.threePhase.dynamic.model.PVDistGen3Phase; -import org.ipss.threePhase.dynamic.model.impl.SinglePhaseACMotor; -import org.ipss.threePhase.powerflow.DistributionPowerFlowAlgorithm; -import org.ipss.threePhase.powerflow.impl.DistPowerFlowOutFunc; -import org.ipss.threePhase.util.ThreePhaseAclfOutFunc; -import org.ipss.threePhase.util.ThreePhaseObjectFactory; +import org.interpss.dstab.dynLoad.impl.InductionMotorImpl; +import org.interpss.threePhase.basic.Bus3Phase; +import org.interpss.threePhase.basic.Gen3Phase; +import org.interpss.threePhase.basic.impl.Gen3PhaseImpl; +import org.interpss.threePhase.dynamic.DStabNetwork3Phase; +import org.interpss.threePhase.dynamic.algo.DynamicEventProcessor3Phase; +import org.interpss.threePhase.dynamic.model.InductionMotor3PhaseAdapter; +import org.interpss.threePhase.dynamic.model.PVDistGen3Phase; +import org.interpss.threePhase.dynamic.model.impl.SinglePhaseACMotor; +import org.interpss.threePhase.powerflow.DistributionPowerFlowAlgorithm; +import org.interpss.threePhase.powerflow.impl.DistPowerFlowOutFunc; +import org.interpss.threePhase.util.ThreePhaseAclfOutFunc; +import org.interpss.threePhase.util.ThreePhaseObjectFactory; import org.junit.Test; import com.interpss.DStabObjectFactory; import com.interpss.common.exp.InterpssException; +import com.interpss.core.acsc.PhaseCode; import com.interpss.core.acsc.fault.SimpleFaultCode; import com.interpss.core.net.NetworkType; import com.interpss.dstab.algo.DynamicSimuAlgorithm; import com.interpss.dstab.algo.DynamicSimuMethod; import com.interpss.dstab.cache.StateMonitor; import com.interpss.dstab.cache.StateMonitor.MonitorRecord; -import com.interpss.dstab.dynLoad.InductionMotor; +import org.interpss.dstab.dynLoad.InductionMotor; /** * This test case serves to test more detailed load modeling at the feeder level @@ -64,8 +62,8 @@ public void testFeederCompositeLoad() throws InterpssException{ SinglePhaseACMotor ac1 = new SinglePhaseACMotor(loadBus,"1"); ac1.setLoadPercent(50); - ac1.setPhase(Phase.A); - ac1.setMVABase(5); + ac1.setPhase(PhaseCode.A); + ac1.setMvaBase(5); ac1.setTstall(99); // disable ac stalling loadBus.getPhaseADynLoadList().add(ac1); @@ -73,8 +71,8 @@ public void testFeederCompositeLoad() throws InterpssException{ SinglePhaseACMotor ac2 = new SinglePhaseACMotor(loadBus,"2"); ac2.setLoadPercent(50); - ac2.setPhase(Phase.B); - ac2.setMVABase(5); + ac2.setPhase(PhaseCode.B); + ac2.setMvaBase(5); ac2.setTstall(99); // disable ac stalling loadBus.getPhaseBDynLoadList().add(ac2); @@ -82,16 +80,17 @@ public void testFeederCompositeLoad() throws InterpssException{ SinglePhaseACMotor ac3 = new SinglePhaseACMotor(loadBus,"3"); ac3.setLoadPercent(50); - ac3.setPhase(Phase.C); - ac3.setMVABase(5); + ac3.setPhase(PhaseCode.C); + ac3.setMvaBase(5); ac3.setTstall(99); // disable ac stalling loadBus.getPhaseCDynLoadList().add(ac3); // 3 phase motor, 20% - - InductionMotor indMotor= DStabObjectFactory.createInductionMotor("1"); - indMotor.setDStabBus(loadBus); + + //InductionMotor indMotor= DStabObjectFactory.createInductionMotor("1"); + //indMotor.setDStabBus(loadBus); + InductionMotor indMotor= new InductionMotorImpl(loadBus,"1"); indMotor.setXm(3.0); indMotor.setXl(0.07); @@ -100,7 +99,7 @@ public void testFeederCompositeLoad() throws InterpssException{ indMotor.setRr1(0.01); - indMotor.setMVABase(8); + indMotor.setMvaBase(8); indMotor.setH(1.0); InductionMotor3PhaseAdapter indMotor3Phase = new InductionMotor3PhaseAdapter(indMotor); diff --git a/ipss.plugin.3phase/src/org/ipss/threePhase/test/Test8BusFeeder.java b/ipss.plugin.3phase/src/org/interpss/threePhase/test/Test8BusFeeder.java similarity index 85% rename from ipss.plugin.3phase/src/org/ipss/threePhase/test/Test8BusFeeder.java rename to ipss.plugin.3phase/src/org/interpss/threePhase/test/Test8BusFeeder.java index ee6da47..cc72363 100644 --- a/ipss.plugin.3phase/src/org/ipss/threePhase/test/Test8BusFeeder.java +++ b/ipss.plugin.3phase/src/org/interpss/threePhase/test/Test8BusFeeder.java @@ -1,4 +1,4 @@ -package org.ipss.threePhase.test; +package org.interpss.threePhase.test; import static com.interpss.core.funcImpl.AcscFunction.acscXfrAptr; import static org.junit.Assert.assertTrue; @@ -8,17 +8,18 @@ import org.interpss.numeric.datatype.Complex3x1; import org.interpss.numeric.datatype.Complex3x3; import org.interpss.numeric.datatype.Unit.UnitType; -import org.ipss.threePhase.basic.Branch3Phase; -import org.ipss.threePhase.basic.Bus3Phase; -import org.ipss.threePhase.basic.IEEEFeederLineCode; -import org.ipss.threePhase.basic.Load3Phase; -import org.ipss.threePhase.basic.impl.Load3PhaseImpl; -import org.ipss.threePhase.dynamic.DStabNetwork3Phase; -import org.ipss.threePhase.dynamic.algo.DynamicEventProcessor3Phase; -import org.ipss.threePhase.powerflow.DistributionPowerFlowAlgorithm; -import org.ipss.threePhase.powerflow.impl.DistPowerFlowOutFunc; -import org.ipss.threePhase.util.ThreePhaseAclfOutFunc; -import org.ipss.threePhase.util.ThreePhaseObjectFactory; +import org.interpss.threePhase.basic.Branch3Phase; +import org.interpss.threePhase.basic.Bus3Phase; +import org.interpss.threePhase.basic.Gen3Phase; +import org.interpss.threePhase.basic.IEEEFeederLineCode; +import org.interpss.threePhase.basic.Load3Phase; +import org.interpss.threePhase.basic.impl.Load3PhaseImpl; +import org.interpss.threePhase.dynamic.DStabNetwork3Phase; +import org.interpss.threePhase.dynamic.algo.DynamicEventProcessor3Phase; +import org.interpss.threePhase.powerflow.DistributionPowerFlowAlgorithm; +import org.interpss.threePhase.powerflow.impl.DistPowerFlowOutFunc; +import org.interpss.threePhase.util.ThreePhaseAclfOutFunc; +import org.interpss.threePhase.util.ThreePhaseObjectFactory; import org.junit.Test; import com.interpss.DStabObjectFactory; @@ -36,7 +37,7 @@ import com.interpss.dstab.cache.StateMonitor; import com.interpss.dstab.cache.StateMonitor.MonitorRecord; import com.interpss.dstab.mach.EConstMachine; -import com.interpss.dstab.mach.MachineType; +import com.interpss.dstab.mach.MachineModelType; public class Test8BusFeeder { @@ -126,8 +127,7 @@ public DStabNetwork3Phase createFeeder(double baseVolt, int BusNum, double total bus1.setLoadCode(AclfLoadCode.NON_LOAD); bus1.setVoltage(new Complex(1.02,0)); - DStabGen constantGen = DStabObjectFactory.createDStabGen(); - constantGen.setId("Source"); + Gen3Phase constantGen = ThreePhaseObjectFactory.create3PGenerator("Source"); constantGen.setMvaBase(100); constantGen.setPosGenZ(new Complex(0.0,0.05)); constantGen.setNegGenZ(new Complex(0.0,0.05)); @@ -136,7 +136,7 @@ public DStabNetwork3Phase createFeeder(double baseVolt, int BusNum, double total EConstMachine mach = (EConstMachine)DStabObjectFactory. - createMachine("MachId", "MachName", MachineType.ECONSTANT, net, "Bus1", "Source"); + createMachine("MachId", "MachName", MachineModelType.ECONSTANT, net, "Bus1", "Source"); mach.setRating(100, UnitType.mVA, net.getBaseKva()); mach.setRatedVoltage(baseVolt); diff --git a/ipss.plugin.3phase/src/org/ipss/threePhase/test/TestBase.java b/ipss.plugin.3phase/src/org/interpss/threePhase/test/TestBase.java similarity index 87% rename from ipss.plugin.3phase/src/org/ipss/threePhase/test/TestBase.java rename to ipss.plugin.3phase/src/org/interpss/threePhase/test/TestBase.java index 96b844b..a7f6f43 100644 --- a/ipss.plugin.3phase/src/org/ipss/threePhase/test/TestBase.java +++ b/ipss.plugin.3phase/src/org/interpss/threePhase/test/TestBase.java @@ -1,4 +1,4 @@ -package org.ipss.threePhase.test; +package org.interpss.threePhase.test; import static com.interpss.core.funcImpl.AcscFunction.acscXfrAptr; @@ -6,13 +6,14 @@ import org.interpss.numeric.datatype.Complex3x1; import org.interpss.numeric.datatype.Complex3x3; import org.interpss.numeric.datatype.Unit.UnitType; -import org.ipss.threePhase.basic.Branch3Phase; -import org.ipss.threePhase.basic.Bus3Phase; -import org.ipss.threePhase.basic.Load3Phase; -import org.ipss.threePhase.basic.impl.Load3PhaseImpl; -import org.ipss.threePhase.dynamic.DStabNetwork3Phase; -import org.ipss.threePhase.dynamic.impl.DStabNetwork3phaseImpl; -import org.ipss.threePhase.util.ThreePhaseObjectFactory; +import org.interpss.threePhase.basic.Branch3Phase; +import org.interpss.threePhase.basic.Bus3Phase; +import org.interpss.threePhase.basic.Gen3Phase; +import org.interpss.threePhase.basic.Load3Phase; +import org.interpss.threePhase.basic.impl.Load3PhaseImpl; +import org.interpss.threePhase.dynamic.DStabNetwork3Phase; +import org.interpss.threePhase.dynamic.impl.DStabNetwork3phaseImpl; +import org.interpss.threePhase.util.ThreePhaseObjectFactory; import com.interpss.DStabObjectFactory; import com.interpss.common.exp.InterpssException; @@ -24,7 +25,7 @@ import com.interpss.core.net.NetworkType; import com.interpss.dstab.DStabGen; import com.interpss.dstab.mach.EConstMachine; -import com.interpss.dstab.mach.MachineType; +import com.interpss.dstab.mach.MachineModelType; public class TestBase { @@ -69,7 +70,7 @@ public DStabNetwork3Phase create2BusSys() throws InterpssException{ bus3.setSortNumber(1); bus3.setVoltage(new Complex(1.025,0)); - DStabGen gen2 = DStabObjectFactory.createDStabGen("Gen2"); + Gen3Phase gen2 = ThreePhaseObjectFactory.create3PGenerator("Gen2"); gen2.setMvaBase(100.0); gen2.setDesiredVoltMag(1.025); //gen2.setGen(new Complex(0.7164,0.2710)); @@ -81,7 +82,7 @@ public DStabNetwork3Phase create2BusSys() throws InterpssException{ bus3.getContributeGenList().add(gen2); EConstMachine mach2 = (EConstMachine)DStabObjectFactory. - createMachine("1", "Mach-1", MachineType.ECONSTANT, net, "Bus3", "Gen2"); + createMachine("1", "Mach-1", MachineModelType.ECONSTANT, net, "Bus3", "Gen2"); mach2.setRating(100, UnitType.mVA, net.getBaseKva()); mach2.setRatedVoltage(230000.0); @@ -123,8 +124,7 @@ public DStabNetwork3Phase create6BusFeeder() throws InterpssException{ bus1.setLoadCode(AclfLoadCode.NON_LOAD); bus1.setVoltage(new Complex(1.01,0)); - DStabGen constantGen = DStabObjectFactory.createDStabGen(); - constantGen.setId("Source"); + Gen3Phase constantGen = ThreePhaseObjectFactory.create3PGenerator("Source"); constantGen.setMvaBase(100); constantGen.setPosGenZ(new Complex(0.0,0.05)); constantGen.setNegGenZ(new Complex(0.0,0.05)); @@ -133,7 +133,7 @@ public DStabNetwork3Phase create6BusFeeder() throws InterpssException{ EConstMachine mach = (EConstMachine)DStabObjectFactory. - createMachine("MachId", "MachName", MachineType.ECONSTANT, net, "Bus1", "Source"); + createMachine("MachId", "MachName", MachineModelType.ECONSTANT, net, "Bus1", "Source"); mach.setRating(100, UnitType.mVA, net.getBaseKva()); mach.setRatedVoltage(69000.0); diff --git a/ipss.plugin.3phase/src/org/ipss/threePhase/test/TestDistributionPowerflowAlgo.java b/ipss.plugin.3phase/src/org/interpss/threePhase/test/TestDistributionPowerflowAlgo.java similarity index 93% rename from ipss.plugin.3phase/src/org/ipss/threePhase/test/TestDistributionPowerflowAlgo.java rename to ipss.plugin.3phase/src/org/interpss/threePhase/test/TestDistributionPowerflowAlgo.java index 25fc91f..9848830 100644 --- a/ipss.plugin.3phase/src/org/ipss/threePhase/test/TestDistributionPowerflowAlgo.java +++ b/ipss.plugin.3phase/src/org/interpss/threePhase/test/TestDistributionPowerflowAlgo.java @@ -1,23 +1,23 @@ -package org.ipss.threePhase.test; +package org.interpss.threePhase.test; -import static org.junit.Assert.*; import static com.interpss.core.funcImpl.AcscFunction.acscXfrAptr; +import static org.junit.Assert.assertTrue; import org.apache.commons.math3.complex.Complex; import org.interpss.numeric.datatype.Complex3x1; import org.interpss.numeric.datatype.Complex3x3; import org.interpss.numeric.datatype.Unit.UnitType; -import org.ipss.threePhase.basic.Branch3Phase; -import org.ipss.threePhase.basic.Bus3Phase; -import org.ipss.threePhase.basic.Gen3Phase; -import org.ipss.threePhase.basic.Load3Phase; -import org.ipss.threePhase.basic.Transformer3Phase; -import org.ipss.threePhase.basic.impl.AclfNetwork3Phase; -import org.ipss.threePhase.basic.impl.Gen3PhaseImpl; -import org.ipss.threePhase.basic.impl.Load3PhaseImpl; -import org.ipss.threePhase.powerflow.DistributionPowerFlowAlgorithm; -import org.ipss.threePhase.powerflow.impl.DistPowerFlowOutFunc; -import org.ipss.threePhase.util.ThreePhaseObjectFactory; +import org.interpss.threePhase.basic.Branch3Phase; +import org.interpss.threePhase.basic.Bus3Phase; +import org.interpss.threePhase.basic.Gen3Phase; +import org.interpss.threePhase.basic.Load3Phase; +import org.interpss.threePhase.basic.Transformer3Phase; +import org.interpss.threePhase.basic.impl.AclfNetwork3Phase; +import org.interpss.threePhase.basic.impl.Gen3PhaseImpl; +import org.interpss.threePhase.basic.impl.Load3PhaseImpl; +import org.interpss.threePhase.powerflow.DistributionPowerFlowAlgorithm; +import org.interpss.threePhase.powerflow.impl.DistPowerFlowOutFunc; +import org.interpss.threePhase.util.ThreePhaseObjectFactory; import org.junit.Test; import com.interpss.common.exp.InterpssException; @@ -25,6 +25,7 @@ import com.interpss.core.aclf.AclfBus; import com.interpss.core.aclf.AclfGenCode; import com.interpss.core.aclf.AclfLoadCode; +import com.interpss.core.aclf.BaseAclfBus; import com.interpss.core.aclf.BaseAclfNetwork; import com.interpss.core.acsc.XfrConnectCode; import com.interpss.core.acsc.adpter.AcscXformer; @@ -33,7 +34,7 @@ public class TestDistributionPowerflowAlgo { - //@Test + @Test public void testLineAndXfrGeneralizedMatrices() throws InterpssException { AclfNetwork3Phase net = createDistNetNoDG(); @@ -270,7 +271,7 @@ public void testDistBusOrdering() throws InterpssException { } - //@Test + @Test public void testDistBusPF() throws InterpssException { AclfNetwork3Phase net = createDistNetNoDG(); @@ -285,7 +286,7 @@ public void testDistBusPF() throws InterpssException { Vabc of bus -Bus3,0.99075 + j-0.07914 -0.56392 + j-0.81844 -0.42683 + j0.89759 Vabc of bus -Bus4,0.98834 + j-0.09907 -0.57997 + j-0.80639 -0.40837 + j0.90546 */ - for(AclfBus bus:net.getBusList()){ + for(BaseAclfBus bus:net.getBusList()){ Bus3Phase bus3P = (Bus3Phase) bus; System.out.println("Vabc of bus -"+bus3P.getId()+","+bus3P.get3PhaseVotlages().toString()); } @@ -309,7 +310,7 @@ public void testDistPFWithDG() throws InterpssException { Vabc of bus -Bus3,0.99075 + j-0.07914 -0.56392 + j-0.81844 -0.42683 + j0.89759 Vabc of bus -Bus4,0.98834 + j-0.09907 -0.57997 + j-0.80639 -0.40837 + j0.90546 */ - for(AclfBus bus:net.getBusList()){ + for(BaseAclfBus bus:net.getBusList()){ Bus3Phase bus3P = (Bus3Phase) bus; System.out.println("Vabc of bus -"+bus3P.getId()+","+bus3P.get3PhaseVotlages().toString()); } diff --git a/ipss.plugin.3phase/src/org/ipss/threePhase/test/TestODM3PhaseDstabMapper.java b/ipss.plugin.3phase/src/org/interpss/threePhase/test/TestODM3PhaseDstabMapper.java similarity index 83% rename from ipss.plugin.3phase/src/org/ipss/threePhase/test/TestODM3PhaseDstabMapper.java rename to ipss.plugin.3phase/src/org/interpss/threePhase/test/TestODM3PhaseDstabMapper.java index b59d316..8bb3ff2 100644 --- a/ipss.plugin.3phase/src/org/ipss/threePhase/test/TestODM3PhaseDstabMapper.java +++ b/ipss.plugin.3phase/src/org/interpss/threePhase/test/TestODM3PhaseDstabMapper.java @@ -1,6 +1,6 @@ -package org.ipss.threePhase.test; +package org.interpss.threePhase.test; -import static org.ipss.threePhase.util.ThreePhaseUtilFunction.threePhaseGenAptr; +import static org.interpss.threePhase.util.ThreePhaseUtilFunction.threePhaseGenAptr; import static org.junit.Assert.assertTrue; import java.util.logging.Level; @@ -15,13 +15,13 @@ import org.interpss.mapper.odm.ODMDStabParserMapper; import org.interpss.numeric.datatype.Complex3x1; import org.interpss.numeric.util.PerformanceTimer; +import org.interpss.threePhase.basic.Bus3Phase; +import org.interpss.threePhase.dynamic.DStabNetwork3Phase; +import org.interpss.threePhase.dynamic.algo.DynamicEventProcessor3Phase; +import org.interpss.threePhase.dynamic.model.DStabGen3PhaseAdapter; +import org.interpss.threePhase.odm.ODM3PhaseDStabParserMapper; +import org.interpss.threePhase.util.ThreePhaseAclfOutFunc; import org.interpss.util.FileUtil; -import org.ipss.threePhase.basic.Bus3Phase; -import org.ipss.threePhase.dynamic.DStabNetwork3Phase; -import org.ipss.threePhase.dynamic.algo.DynamicEventProcessor3Phase; -import org.ipss.threePhase.dynamic.model.DStabGen3PhaseAdapter; -import org.ipss.threePhase.odm.ODM3PhaseDStabParserMapper; -import org.ipss.threePhase.util.ThreePhaseAclfOutFunc; import org.junit.Test; import com.interpss.DStabObjectFactory; @@ -33,7 +33,7 @@ import com.interpss.core.algo.LoadflowAlgorithm; import com.interpss.core.net.Bus; import com.interpss.dstab.DStabGen; -import com.interpss.dstab.DStabilityNetwork; +import com.interpss.dstab.BaseDStabNetwork; import com.interpss.dstab.algo.DynamicSimuAlgorithm; import com.interpss.dstab.algo.DynamicSimuMethod; import com.interpss.dstab.cache.StateMonitor; @@ -132,7 +132,8 @@ public void test_IEEE9Bus_3phase_Dstab() throws InterpssException{ Complex3x1 iInject = new Complex3x1(); if(bus.getContributeGenList().size()>0){ - for(AclfGen gen: bus.getContributeGenList()){ + for(Object obj: bus.getContributeGenList()){ + AclfGen gen = (AclfGen)obj; if(gen.isActive() && gen instanceof DStabGen){ DStabGen dynGen = (DStabGen)gen; if( dynGen.getMach()!=null){ @@ -162,9 +163,9 @@ public void test_IEEE9Bus_3phase_Dstab() throws InterpssException{ // System.out.println(sm.toCSVString(sm.getMachPeTable())); - FileUtil.writeText2File("E://Dropbox//PhD project//test data and results//comprehensive_ch7//ieee9_3Phase_SLG@bus5_machAngle.csv",sm.toCSVString(sm.getMachAngleTable())); - FileUtil.writeText2File("E://Dropbox//PhD project//test data and results//comprehensive_ch7//ieee9_3Phase_SLG@bus5_machSpd.csv",sm.toCSVString(sm.getMachSpeedTable())); - FileUtil.writeText2File("E://Dropbox//PhD project//test data and results//comprehensive_ch7//ieee9_3Phase_SLG@bus5_busVolt.csv",sm.toCSVString(sm.getBusVoltTable())); +// FileUtil.writeText2File("E://Dropbox//PhD project//test data and results//comprehensive_ch7//ieee9_3Phase_SLG@bus5_machAngle.csv",sm.toCSVString(sm.getMachAngleTable())); +// FileUtil.writeText2File("E://Dropbox//PhD project//test data and results//comprehensive_ch7//ieee9_3Phase_SLG@bus5_machSpd.csv",sm.toCSVString(sm.getMachSpeedTable())); +// FileUtil.writeText2File("E://Dropbox//PhD project//test data and results//comprehensive_ch7//ieee9_3Phase_SLG@bus5_busVolt.csv",sm.toCSVString(sm.getBusVoltTable())); // FileUtil.writeText2File("output/ieee9_bus5_machAngle_v5_03172015.csv",sm.toCSVString(sm.getMachAngleTable())); // FileUtil.writeText2File("output/ieee9_bus5_machSpd_v5_03172015.csv",sm.toCSVString(sm.getMachSpeedTable())); // FileUtil.writeText2File("output/ieee9_bus5_busVolt_v5_03172015.csv",sm.toCSVString(sm.getBusVoltTable())); @@ -197,7 +198,7 @@ public void test_IEEE9Bus_posSeq_Dstab() throws InterpssException{ } - DStabilityNetwork dsNet =simuCtx.getDStabilityNet(); + BaseDStabNetwork dsNet =simuCtx.getDStabilityNet(); // build sequence network @@ -248,9 +249,9 @@ public void test_IEEE9Bus_posSeq_Dstab() throws InterpssException{ System.out.println(sm.toCSVString(sm.getBusVoltTable())); - FileUtil.writeText2File("E://Dropbox//PhD project//test data and results//comprehensive_ch7//ieee9_pos_SLG@bus5_machAngle.csv",sm.toCSVString(sm.getMachAngleTable())); - FileUtil.writeText2File("E://Dropbox//PhD project//test data and results//comprehensive_ch7//ieee9_pos_SLG@bus5_machSpd.csv",sm.toCSVString(sm.getMachSpeedTable())); - FileUtil.writeText2File("E://Dropbox//PhD project//test data and results//comprehensive_ch7//ieee9_pos_SLG@bus5_busVolt.csv",sm.toCSVString(sm.getBusVoltTable())); +// FileUtil.writeText2File("E://Dropbox//PhD project//test data and results//comprehensive_ch7//ieee9_pos_SLG@bus5_machAngle.csv",sm.toCSVString(sm.getMachAngleTable())); +// FileUtil.writeText2File("E://Dropbox//PhD project//test data and results//comprehensive_ch7//ieee9_pos_SLG@bus5_machSpd.csv",sm.toCSVString(sm.getMachSpeedTable())); +// FileUtil.writeText2File("E://Dropbox//PhD project//test data and results//comprehensive_ch7//ieee9_pos_SLG@bus5_busVolt.csv",sm.toCSVString(sm.getBusVoltTable())); // FileUtil.writeText2File("output/ieee9_bus5_machPe_v5_03172015.csv",sm.toCSVString(sm.getMachPeTable())); // FileUtil.writeText2File("output/ieee9_bus5_machAngle_v5_03172015.csv",sm.toCSVString(sm.getMachAngleTable())); diff --git a/ipss.plugin.3phase/src/org/ipss/threePhase/test/TestPVDistGen3Phase.java b/ipss.plugin.3phase/src/org/interpss/threePhase/test/TestPVDistGen3Phase.java similarity index 91% rename from ipss.plugin.3phase/src/org/ipss/threePhase/test/TestPVDistGen3Phase.java rename to ipss.plugin.3phase/src/org/interpss/threePhase/test/TestPVDistGen3Phase.java index e699c1e..c2d73c5 100644 --- a/ipss.plugin.3phase/src/org/ipss/threePhase/test/TestPVDistGen3Phase.java +++ b/ipss.plugin.3phase/src/org/interpss/threePhase/test/TestPVDistGen3Phase.java @@ -1,4 +1,4 @@ -package org.ipss.threePhase.test; +package org.interpss.threePhase.test; import static com.interpss.core.funcImpl.AcscFunction.acscXfrAptr; import static org.junit.Assert.assertTrue; @@ -10,19 +10,19 @@ import org.interpss.numeric.datatype.Unit.UnitType; import org.interpss.numeric.sparse.ISparseEqnComplexMatrix3x3; import org.interpss.numeric.util.MatrixOutputUtil; -import org.ipss.threePhase.basic.Branch3Phase; -import org.ipss.threePhase.basic.Bus3Phase; -import org.ipss.threePhase.basic.Gen3Phase; -import org.ipss.threePhase.basic.Load3Phase; -import org.ipss.threePhase.basic.impl.Gen3PhaseImpl; -import org.ipss.threePhase.basic.impl.Load3PhaseImpl; -import org.ipss.threePhase.dynamic.DStabNetwork3Phase; -import org.ipss.threePhase.dynamic.algo.DynamicEventProcessor3Phase; -import org.ipss.threePhase.dynamic.model.PVDistGen3Phase; -import org.ipss.threePhase.powerflow.DistributionPowerFlowAlgorithm; -import org.ipss.threePhase.powerflow.impl.DistPowerFlowOutFunc; -import org.ipss.threePhase.util.ThreePhaseAclfOutFunc; -import org.ipss.threePhase.util.ThreePhaseObjectFactory; +import org.interpss.threePhase.basic.Branch3Phase; +import org.interpss.threePhase.basic.Bus3Phase; +import org.interpss.threePhase.basic.Gen3Phase; +import org.interpss.threePhase.basic.Load3Phase; +import org.interpss.threePhase.basic.impl.Gen3PhaseImpl; +import org.interpss.threePhase.basic.impl.Load3PhaseImpl; +import org.interpss.threePhase.dynamic.DStabNetwork3Phase; +import org.interpss.threePhase.dynamic.algo.DynamicEventProcessor3Phase; +import org.interpss.threePhase.dynamic.model.PVDistGen3Phase; +import org.interpss.threePhase.powerflow.DistributionPowerFlowAlgorithm; +import org.interpss.threePhase.powerflow.impl.DistPowerFlowOutFunc; +import org.interpss.threePhase.util.ThreePhaseAclfOutFunc; +import org.interpss.threePhase.util.ThreePhaseObjectFactory; import org.junit.Test; import com.interpss.CoreObjectFactory; @@ -43,7 +43,7 @@ import com.interpss.dstab.cache.StateMonitor.DynDeviceType; import com.interpss.dstab.cache.StateMonitor.MonitorRecord; import com.interpss.dstab.mach.EConstMachine; -import com.interpss.dstab.mach.MachineType; +import com.interpss.dstab.mach.MachineModelType; public class TestPVDistGen3Phase { @@ -354,6 +354,7 @@ public void testThreeBusWithPVDstabSim() throws InterpssException{ dstabAlgo.performSimulation(); } + //System.out.println(sm.toCSVString(sm.getBusAngleTable())); System.out.println(sm.toCSVString(sm.getBusVoltTable())); MonitorRecord rec1 = sm.getBusVoltTable().get("Bus2").get(1); @@ -384,8 +385,7 @@ private DStabNetwork3Phase createDistNetWithDG() throws InterpssException{ bus1.setLoadCode(AclfLoadCode.NON_LOAD); bus1.setVoltage(new Complex(1.01,0)); - DStabGen constantGen = DStabObjectFactory.createDStabGen(); - constantGen.setId("Source"); + Gen3Phase constantGen = ThreePhaseObjectFactory.create3PGenerator("Source"); constantGen.setMvaBase(100); constantGen.setPosGenZ(new Complex(0.0,0.05)); constantGen.setNegGenZ(new Complex(0.0,0.05)); @@ -394,7 +394,7 @@ private DStabNetwork3Phase createDistNetWithDG() throws InterpssException{ EConstMachine mach = (EConstMachine)DStabObjectFactory. - createMachine("MachId", "MachName", MachineType.ECONSTANT, net, "Bus1", "Source"); + createMachine("MachId", "MachName", MachineModelType.ECONSTANT, net, "Bus1", "Source"); mach.setRating(100, UnitType.mVA, net.getBaseKva()); mach.setRatedVoltage(69000.0); @@ -489,8 +489,7 @@ private DStabNetwork3Phase createDistNetNoDG() throws InterpssException{ bus1.setLoadCode(AclfLoadCode.NON_LOAD); bus1.setVoltage(new Complex(1.01,0)); - DStabGen constantGen = DStabObjectFactory.createDStabGen(); - constantGen.setId("Source"); + Gen3Phase constantGen = ThreePhaseObjectFactory.create3PGenerator("Source"); constantGen.setMvaBase(100); constantGen.setPosGenZ(new Complex(0.0,0.05)); constantGen.setNegGenZ(new Complex(0.0,0.05)); @@ -499,7 +498,7 @@ private DStabNetwork3Phase createDistNetNoDG() throws InterpssException{ EConstMachine mach = (EConstMachine)DStabObjectFactory. - createMachine("MachId", "MachName", MachineType.ECONSTANT, net, "Bus1", "Source"); + createMachine("MachId", "MachName", MachineModelType.ECONSTANT, net, "Bus1", "Source"); mach.setRating(100, UnitType.mVA, net.getBaseKva()); mach.setRatedVoltage(69000.0); diff --git a/ipss.plugin.3phase/src/org/ipss/threePhase/test/TestSinglePhaseACMotorModel.java b/ipss.plugin.3phase/src/org/interpss/threePhase/test/TestSinglePhaseACMotorModel.java similarity index 85% rename from ipss.plugin.3phase/src/org/ipss/threePhase/test/TestSinglePhaseACMotorModel.java rename to ipss.plugin.3phase/src/org/interpss/threePhase/test/TestSinglePhaseACMotorModel.java index 3add918..ac460ab 100644 --- a/ipss.plugin.3phase/src/org/ipss/threePhase/test/TestSinglePhaseACMotorModel.java +++ b/ipss.plugin.3phase/src/org/interpss/threePhase/test/TestSinglePhaseACMotorModel.java @@ -1,4 +1,4 @@ -package org.ipss.threePhase.test; +package org.interpss.threePhase.test; import static org.junit.Assert.assertTrue; @@ -7,18 +7,18 @@ import org.interpss.numeric.datatype.Complex3x1; import org.interpss.numeric.datatype.Unit.UnitType; import org.interpss.numeric.util.NumericUtil; -import org.ipss.threePhase.basic.Branch3Phase; -import org.ipss.threePhase.basic.Bus3Phase; -import org.ipss.threePhase.basic.Load3Phase; -import org.ipss.threePhase.basic.Phase; -import org.ipss.threePhase.basic.impl.Load3PhaseImpl; -import org.ipss.threePhase.dynamic.DStabNetwork3Phase; -import org.ipss.threePhase.dynamic.algo.DynamicEventProcessor3Phase; -import org.ipss.threePhase.dynamic.impl.DStabNetwork3phaseImpl; -import org.ipss.threePhase.dynamic.model.impl.SinglePhaseACMotor; -import org.ipss.threePhase.powerflow.DistributionPowerFlowAlgorithm; -import org.ipss.threePhase.powerflow.impl.DistPowerFlowOutFunc; -import org.ipss.threePhase.util.ThreePhaseObjectFactory; +import org.interpss.threePhase.basic.Branch3Phase; +import org.interpss.threePhase.basic.Bus3Phase; +import org.interpss.threePhase.basic.Gen3Phase; +import org.interpss.threePhase.basic.Load3Phase; +import org.interpss.threePhase.basic.impl.Load3PhaseImpl; +import org.interpss.threePhase.dynamic.DStabNetwork3Phase; +import org.interpss.threePhase.dynamic.algo.DynamicEventProcessor3Phase; +import org.interpss.threePhase.dynamic.impl.DStabNetwork3phaseImpl; +import org.interpss.threePhase.dynamic.model.impl.SinglePhaseACMotor; +import org.interpss.threePhase.powerflow.DistributionPowerFlowAlgorithm; +import org.interpss.threePhase.powerflow.impl.DistPowerFlowOutFunc; +import org.interpss.threePhase.util.ThreePhaseObjectFactory; import org.junit.Test; import com.interpss.DStabObjectFactory; @@ -26,15 +26,15 @@ import com.interpss.core.aclf.AclfBranchCode; import com.interpss.core.aclf.AclfGenCode; import com.interpss.core.aclf.AclfLoadCode; +import com.interpss.core.acsc.PhaseCode; import com.interpss.core.acsc.fault.SimpleFaultCode; import com.interpss.core.net.NetworkType; -import com.interpss.dstab.DStabGen; import com.interpss.dstab.algo.DynamicSimuAlgorithm; import com.interpss.dstab.algo.DynamicSimuMethod; import com.interpss.dstab.cache.StateMonitor; import com.interpss.dstab.cache.StateMonitor.DynDeviceType; import com.interpss.dstab.mach.EConstMachine; -import com.interpss.dstab.mach.MachineType; +import com.interpss.dstab.mach.MachineModelType; public class TestSinglePhaseACMotorModel { @@ -62,24 +62,24 @@ public void test_dstab_1PAC() throws InterpssException{ SinglePhaseACMotor ac1 = new SinglePhaseACMotor(bus1,"1"); ac1.setLoadPercent(25); - ac1.setPhase(Phase.A); - ac1.setMVABase(25); + ac1.setPhase(PhaseCode.A); + ac1.setMvaBase(25); bus1.getPhaseADynLoadList().add(ac1); SinglePhaseACMotor ac2 = new SinglePhaseACMotor(bus1,"2"); ac2.setLoadPercent(30); - ac2.setPhase(Phase.B); - ac2.setMVABase(30); + ac2.setPhase(PhaseCode.B); + ac2.setMvaBase(30); bus1.getPhaseBDynLoadList().add(ac2); SinglePhaseACMotor ac3 = new SinglePhaseACMotor(bus1,"3"); ac3.setLoadPercent(20); - ac3.setPhase(Phase.C); - ac3.setMVABase(20); + ac3.setPhase(PhaseCode.C); + ac3.setMvaBase(20); bus1.getPhaseCDynLoadList().add(ac3); // run dstab to test 1-phase ac model @@ -164,24 +164,24 @@ public void test1PAC() throws InterpssException{ SinglePhaseACMotor ac1 = new SinglePhaseACMotor(bus1,"1"); ac1.setLoadPercent(50); - ac1.setPhase(Phase.A); - ac1.setMVABase(50); + ac1.setPhase(PhaseCode.A); + ac1.setMvaBase(50); bus1.getPhaseADynLoadList().add(ac1); SinglePhaseACMotor ac2 = new SinglePhaseACMotor(bus1,"2"); ac2.setLoadPercent(50); - ac2.setPhase(Phase.B); - ac2.setMVABase(50); + ac2.setPhase(PhaseCode.B); + ac2.setMvaBase(50); bus1.getPhaseBDynLoadList().add(ac2); SinglePhaseACMotor ac3 = new SinglePhaseACMotor(bus1,"3"); ac3.setLoadPercent(50); - ac3.setPhase(Phase.C); - ac3.setMVABase(50); + ac3.setPhase(PhaseCode.C); + ac3.setMvaBase(50); bus1.getPhaseCDynLoadList().add(ac3); // run dstab to test 1-phase ac model @@ -238,7 +238,7 @@ public void test1PAC() throws InterpssException{ // check the current injection compensation under normal running condition Complex Iinj = ac1.getLoadPQ().subtract(ac1.getEquivY().multiply(v*v).conjugate()); Iinj = Iinj.divide( bus1.get3PhaseVotlages().a_0).conjugate().multiply(-1.0); - assertTrue(ac1.getCompensateCurInj().subtract(Iinj).abs()<1.0E-6); + assertTrue(ac1.getNortonCurInj().subtract(Iinj).abs()<1.0E-6); ac1.nextStep(0.005, DynamicSimuMethod.MODIFIED_EULER); @@ -248,7 +248,7 @@ public void test1PAC() throws InterpssException{ System.out.println(ac1.getLoadPQ()); // check the current injection compesation under stalling condition - assertTrue(ac1.getCompensateCurInj().abs()==0.0); + assertTrue(ac1.getNortonCurInj().abs()==0.0); } } @@ -292,7 +292,7 @@ private DStabNetwork3Phase create2BusSys() throws InterpssException{ bus3.setSortNumber(1); - DStabGen gen2 = DStabObjectFactory.createDStabGen("Gen2"); + Gen3Phase gen2 = ThreePhaseObjectFactory.create3PGenerator("Gen2"); gen2.setMvaBase(100.0); gen2.setDesiredVoltMag(1.025); //gen2.setGen(new Complex(0.7164,0.2710)); @@ -304,7 +304,7 @@ private DStabNetwork3Phase create2BusSys() throws InterpssException{ bus3.getContributeGenList().add(gen2); EConstMachine mach2 = (EConstMachine)DStabObjectFactory. - createMachine("1", "Mach-1", MachineType.ECONSTANT, net, "Bus3", "Gen2"); + createMachine("1", "Mach-1", MachineModelType.ECONSTANT, net, "Bus3", "Gen2"); mach2.setRating(100, UnitType.mVA, net.getBaseKva()); mach2.setRatedVoltage(230000.0); diff --git a/ipss.plugin.3phase/src/org/ipss/threePhase/test/Test_oneSource_multiFeeder.java b/ipss.plugin.3phase/src/org/interpss/threePhase/test/Test_oneSource_multiFeeder.java similarity index 94% rename from ipss.plugin.3phase/src/org/ipss/threePhase/test/Test_oneSource_multiFeeder.java rename to ipss.plugin.3phase/src/org/interpss/threePhase/test/Test_oneSource_multiFeeder.java index 1e4adaa..e62ac1c 100644 --- a/ipss.plugin.3phase/src/org/ipss/threePhase/test/Test_oneSource_multiFeeder.java +++ b/ipss.plugin.3phase/src/org/interpss/threePhase/test/Test_oneSource_multiFeeder.java @@ -1,4 +1,4 @@ -package org.ipss.threePhase.test; +package org.interpss.threePhase.test; import static com.interpss.core.funcImpl.AcscFunction.acscXfrAptr; import static org.junit.Assert.assertTrue; @@ -10,15 +10,15 @@ import org.interpss.numeric.datatype.Complex3x1; import org.interpss.numeric.datatype.Complex3x3; import org.interpss.numeric.datatype.Unit.UnitType; -import org.ipss.threePhase.basic.Branch3Phase; -import org.ipss.threePhase.basic.Bus3Phase; -import org.ipss.threePhase.basic.IEEEFeederLineCode; -import org.ipss.threePhase.basic.Load3Phase; -import org.ipss.threePhase.basic.impl.Load3PhaseImpl; -import org.ipss.threePhase.dynamic.DStabNetwork3Phase; -import org.ipss.threePhase.powerflow.DistributionPowerFlowAlgorithm; -import org.ipss.threePhase.powerflow.impl.DistPowerFlowOutFunc; -import org.ipss.threePhase.util.ThreePhaseObjectFactory; +import org.interpss.threePhase.basic.Branch3Phase; +import org.interpss.threePhase.basic.Bus3Phase; +import org.interpss.threePhase.basic.IEEEFeederLineCode; +import org.interpss.threePhase.basic.Load3Phase; +import org.interpss.threePhase.basic.impl.Load3PhaseImpl; +import org.interpss.threePhase.dynamic.DStabNetwork3Phase; +import org.interpss.threePhase.powerflow.DistributionPowerFlowAlgorithm; +import org.interpss.threePhase.powerflow.impl.DistPowerFlowOutFunc; +import org.interpss.threePhase.util.ThreePhaseObjectFactory; import org.junit.Test; import com.interpss.common.exp.InterpssException; @@ -28,6 +28,7 @@ import com.interpss.core.acsc.XfrConnectCode; import com.interpss.core.acsc.adpter.AcscXformer; import com.interpss.core.net.NetworkType; +import com.interpss.dstab.BaseDStabBus; import com.interpss.dstab.DStabBus; public class Test_oneSource_multiFeeder { @@ -68,7 +69,7 @@ public void test_oneSource_multiFeeder() throws InterpssException{ assertTrue(distPFAlgo.powerflow()); - for(DStabBus bus: net.getBusList()){ + for(BaseDStabBus bus: net.getBusList()){ System.out.println("id, sortNum: "+bus.getId()+","+bus.getSortNumber()); } diff --git a/ipss.plugin.3phase/src/org/ipss/threePhase/test/ThreeBus_3Phase_Test.java b/ipss.plugin.3phase/src/org/interpss/threePhase/test/ThreeBus_3Phase_Test.java similarity index 91% rename from ipss.plugin.3phase/src/org/ipss/threePhase/test/ThreeBus_3Phase_Test.java rename to ipss.plugin.3phase/src/org/interpss/threePhase/test/ThreeBus_3Phase_Test.java index 847586e..d44d227 100644 --- a/ipss.plugin.3phase/src/org/ipss/threePhase/test/ThreeBus_3Phase_Test.java +++ b/ipss.plugin.3phase/src/org/interpss/threePhase/test/ThreeBus_3Phase_Test.java @@ -1,7 +1,7 @@ -package org.ipss.threePhase.test; +package org.interpss.threePhase.test; import static com.interpss.core.funcImpl.AcscFunction.acscXfrAptr; -import static org.ipss.threePhase.util.ThreePhaseUtilFunction.threePhaseXfrAptr; +import static org.interpss.threePhase.util.ThreePhaseUtilFunction.threePhaseXfrAptr; import static org.junit.Assert.assertTrue; import java.util.logging.Level; @@ -21,20 +21,20 @@ import org.interpss.numeric.sparse.ISparseEqnComplexMatrix3x3; import org.interpss.numeric.util.MatrixOutputUtil; import org.interpss.numeric.util.NumericUtil; -import org.ipss.threePhase.basic.Branch3Phase; -import org.ipss.threePhase.basic.Bus3Phase; -import org.ipss.threePhase.basic.Gen3Phase; -import org.ipss.threePhase.basic.IEEEFeederLineCode; -import org.ipss.threePhase.basic.Load3Phase; -import org.ipss.threePhase.basic.Transformer3Phase; -import org.ipss.threePhase.basic.impl.Load3PhaseImpl; -import org.ipss.threePhase.dynamic.DStabNetwork3Phase; -import org.ipss.threePhase.dynamic.algo.DynamicEventProcessor3Phase; -import org.ipss.threePhase.dynamic.impl.DStabNetwork3phaseImpl; -import org.ipss.threePhase.powerflow.DistributionPowerFlowAlgorithm; -import org.ipss.threePhase.powerflow.impl.DistPowerFlowOutFunc; -import org.ipss.threePhase.util.ThreePhaseAclfOutFunc; -import org.ipss.threePhase.util.ThreePhaseObjectFactory; +import org.interpss.threePhase.basic.Branch3Phase; +import org.interpss.threePhase.basic.Bus3Phase; +import org.interpss.threePhase.basic.Gen3Phase; +import org.interpss.threePhase.basic.IEEEFeederLineCode; +import org.interpss.threePhase.basic.Load3Phase; +import org.interpss.threePhase.basic.Transformer3Phase; +import org.interpss.threePhase.basic.impl.Load3PhaseImpl; +import org.interpss.threePhase.dynamic.DStabNetwork3Phase; +import org.interpss.threePhase.dynamic.algo.DynamicEventProcessor3Phase; +import org.interpss.threePhase.dynamic.impl.DStabNetwork3phaseImpl; +import org.interpss.threePhase.powerflow.DistributionPowerFlowAlgorithm; +import org.interpss.threePhase.powerflow.impl.DistPowerFlowOutFunc; +import org.interpss.threePhase.util.ThreePhaseAclfOutFunc; +import org.interpss.threePhase.util.ThreePhaseObjectFactory; import org.junit.Test; import com.interpss.CoreObjectFactory; @@ -56,21 +56,22 @@ import com.interpss.dstab.DStabBranch; import com.interpss.dstab.DStabBus; import com.interpss.dstab.DStabGen; -import com.interpss.dstab.DStabilityNetwork; +import com.interpss.dstab.BaseDStabBus; +import com.interpss.dstab.BaseDStabNetwork; import com.interpss.dstab.algo.DynamicSimuAlgorithm; import com.interpss.dstab.algo.DynamicSimuMethod; import com.interpss.dstab.cache.StateMonitor; import com.interpss.dstab.devent.DynamicEvent; import com.interpss.dstab.devent.DynamicEventType; import com.interpss.dstab.mach.EConstMachine; -import com.interpss.dstab.mach.MachineType; +import com.interpss.dstab.mach.MachineModelType; import com.interpss.dstab.mach.RoundRotorMachine; import com.interpss.simu.SimuContext; import com.interpss.simu.SimuCtxType; public class ThreeBus_3Phase_Test { - //@Test + @Test public void testYMatrixabc() throws Exception{ IpssCorePlugin.init(); @@ -97,7 +98,7 @@ public void testYMatrixabc() throws Exception{ //System.out.println(Yabc.getSparseEqnComplex()); // MatrixOutputUtil.matrixToMatlabMFile("output/ThreeBusYabc.m", Yabc.getSparseEqnComplex()); - DStabBus bus1 = net.getBus("Bus1"); + BaseDStabBus bus1 = net.getBus("Bus1"); Bus3Phase bus13p = (Bus3Phase) bus1; Gen3Phase gen1 = (Gen3Phase) bus1.getContributeGen("Gen1"); Complex3x3 yg1abc= gen1.getYabc(false); @@ -175,7 +176,7 @@ public void testYMatrixabc() throws Exception{ assertTrue(NumericUtil.equals(ytfabc.ab, yftabc.ba,1.0E-5)); assertTrue(NumericUtil.equals(ytfabc.ba, yftabc.ab,1.0E-5)); - DStabBus bus3 = net.getBus("Bus3"); + BaseDStabBus bus3 = net.getBus("Bus3"); Bus3Phase bus33p = (Bus3Phase) bus3; Gen3Phase gen2 = (Gen3Phase) bus3.getContributeGen("Gen2"); Complex3x3 yg2abc= gen2.getYabc(false); @@ -218,7 +219,7 @@ public void testYMatrixabc() throws Exception{ } - //@Test + @Test public void testDstab3Phase() throws Exception{ IpssCorePlugin.init(); @@ -279,7 +280,7 @@ public void test_3busfeeder_unbalanced_dstab() throws Exception{ assertTrue(distPFAlgo.powerflow()); - for(DStabBus bus: net.getBusList()){ + for(BaseDStabBus bus: net.getBusList()){ System.out.println("id, sortNum: "+bus.getId()+","+bus.getSortNumber()); } @@ -289,7 +290,7 @@ public void test_3busfeeder_unbalanced_dstab() throws Exception{ for(DStabBranch bra: net.getBranchList()){ Branch3Phase bra3p = (Branch3Phase) bra; - System.out.println(bra.getId()+": "+bra3p.getBranchYabc().toString()); + System.out.println(bra.getId()+"锛� "+bra3p.getBranchYabc().toString()); } DynamicSimuAlgorithm dstabAlgo =DStabObjectFactory.createDynamicSimuAlgorithm( @@ -344,7 +345,7 @@ public void test_3busfeeder_unbalanced_dstab() throws Exception{ System.out.println(sm.toCSVString(sm.getBusPhCVoltTable())); } - //@Test + @Test public void testDstabPosSeq() throws Exception{ IpssCorePlugin.init(); @@ -369,7 +370,7 @@ public void testDstabPosSeq() throws Exception{ } - DStabilityNetwork net =simuCtx.getDStabilityNet(); + BaseDStabNetwork net =simuCtx.getDStabilityNet(); // initGenLoad-- summarize the effects of contributive Gen/Load to make equivGen/load for power flow calculation @@ -408,7 +409,7 @@ public void testDstabPosSeq() throws Exception{ System.out.println(sm.toCSVString(sm.getBusVoltTable())); } - //@Test + @Test public void testSolvNetwork() throws Exception{ IpssCorePlugin.init(); @@ -444,7 +445,7 @@ public void testSolvNetwork() throws Exception{ net.initDStabNet(); - for(DStabBus bus: net.getBusList()){ + for(BaseDStabBus bus: net.getBusList()){ if(bus instanceof Bus3Phase){ Bus3Phase ph3Bus = (Bus3Phase) bus; @@ -472,7 +473,7 @@ public void testSolvNetwork() throws Exception{ System.out.println(ThreePhaseAclfOutFunc.busLfSummary(net)); - for(DStabBus bus: net.getBusList()){ + for(BaseDStabBus bus: net.getBusList()){ if(bus instanceof Bus3Phase){ Bus3Phase bus3p = (Bus3Phase) bus; @@ -518,8 +519,7 @@ private DStabNetwork3Phase create3BusFeeder_unbalanced() throws InterpssExceptio source.setVoltage(new Complex(1.0,0)); //source.set3PhaseVoltages(new Complex()); - DStabGen constantGen = DStabObjectFactory.createDStabGen(); - constantGen.setId("1"); + Gen3Phase constantGen = ThreePhaseObjectFactory.create3PGenerator("1"); constantGen.setMvaBase(1.0); constantGen.setPosGenZ(new Complex(0.0,0.05)); constantGen.setNegGenZ(new Complex(0.0,0.05)); @@ -528,7 +528,7 @@ private DStabNetwork3Phase create3BusFeeder_unbalanced() throws InterpssExceptio EConstMachine mach = (EConstMachine)DStabObjectFactory. - createMachine("MachId", "MachName", MachineType.ECONSTANT, net, "SubBus", "1"); + createMachine("MachId", "MachName", MachineModelType.ECONSTANT, net, "SubBus", "1"); mach.setRating(1, UnitType.mVA, net.getBaseKva()); mach.setRatedVoltage(baseVolt115kV); @@ -710,7 +710,7 @@ private DStabNetwork3Phase create3BusSys() throws InterpssException{ bus1.setSortNumber(0); RoundRotorMachine mach = (RoundRotorMachine)DStabObjectFactory. - createMachine("1", "Mach-1", MachineType.EQ11_ED11_ROUND_ROTOR, net, "Bus1", "Gen1"); + createMachine("1", "Mach-1", MachineModelType.EQ11_ED11_ROUND_ROTOR, net, "Bus1", "Gen1"); mach.setRating(100, UnitType.mVA, net.getBaseKva()); mach.setRatedVoltage(16500.0); @@ -778,7 +778,7 @@ private DStabNetwork3Phase create3BusSys() throws InterpssException{ bus3.getContributeGenList().add(gen2); EConstMachine mach2 = (EConstMachine)DStabObjectFactory. - createMachine("1", "Mach-1", MachineType.ECONSTANT, net, "Bus3", "Gen2"); + createMachine("1", "Mach-1", MachineModelType.ECONSTANT, net, "Bus3", "Gen2"); mach2.setRating(100, UnitType.mVA, net.getBaseKva()); mach2.setRatedVoltage(230000.0); @@ -816,7 +816,7 @@ private DStabNetwork3Phase create3BusSys() throws InterpssException{ } - private DynamicEvent create3PhaseFaultEvent(String faultBusId, DStabilityNetwork net,double startTime, double durationTime){ + private DynamicEvent create3PhaseFaultEvent(String faultBusId, BaseDStabNetwork net,double startTime, double durationTime){ // define an event, set the event id and event type. DynamicEvent event1 = DStabObjectFactory.createDEvent("BusFault3P@"+faultBusId, "Bus Fault 3P@"+faultBusId, DynamicEventType.BUS_FAULT, net); @@ -824,7 +824,7 @@ private DynamicEvent create3PhaseFaultEvent(String faultBusId, DStabilityNetwork event1.setDurationSec(durationTime); // define a bus fault - DStabBus faultBus = net.getDStabBus(faultBusId); + BaseDStabBus faultBus = net.getDStabBus(faultBusId); AcscBusFault fault = CoreObjectFactory.createAcscBusFault("Bus Fault 3P@"+faultBusId, net); fault.setBus(faultBus); fault.setFaultCode(SimpleFaultCode.GROUND_3P); diff --git a/ipss.plugin.3phase/src/org/ipss/threePhase/test/TwoBus_3Phase_Test.java b/ipss.plugin.3phase/src/org/interpss/threePhase/test/TwoBus_3Phase_Test.java similarity index 86% rename from ipss.plugin.3phase/src/org/ipss/threePhase/test/TwoBus_3Phase_Test.java rename to ipss.plugin.3phase/src/org/interpss/threePhase/test/TwoBus_3Phase_Test.java index a58d985..9c134da 100644 --- a/ipss.plugin.3phase/src/org/ipss/threePhase/test/TwoBus_3Phase_Test.java +++ b/ipss.plugin.3phase/src/org/interpss/threePhase/test/TwoBus_3Phase_Test.java @@ -1,6 +1,6 @@ -package org.ipss.threePhase.test; +package org.interpss.threePhase.test; -import static org.ipss.threePhase.util.ThreePhaseUtilFunction.threePhaseXfrAptr; +import static org.interpss.threePhase.util.ThreePhaseUtilFunction.threePhaseXfrAptr; import static org.junit.Assert.assertTrue; import java.util.logging.Level; @@ -13,13 +13,13 @@ import org.interpss.numeric.sparse.ISparseEqnComplexMatrix3x3; import org.interpss.numeric.util.MatrixOutputUtil; import org.interpss.numeric.util.NumericUtil; -import org.ipss.threePhase.basic.Branch3Phase; -import org.ipss.threePhase.basic.Bus3Phase; -import org.ipss.threePhase.basic.Gen3Phase; -import org.ipss.threePhase.basic.Transformer3Phase; -import org.ipss.threePhase.dynamic.DStabNetwork3Phase; -import org.ipss.threePhase.dynamic.impl.DStabNetwork3phaseImpl; -import org.ipss.threePhase.util.ThreePhaseObjectFactory; +import org.interpss.threePhase.basic.Branch3Phase; +import org.interpss.threePhase.basic.Bus3Phase; +import org.interpss.threePhase.basic.Gen3Phase; +import org.interpss.threePhase.basic.Transformer3Phase; +import org.interpss.threePhase.dynamic.DStabNetwork3Phase; +import org.interpss.threePhase.dynamic.impl.DStabNetwork3phaseImpl; +import org.interpss.threePhase.util.ThreePhaseObjectFactory; import org.junit.Test; import com.interpss.CoreObjectFactory; @@ -31,13 +31,14 @@ import com.interpss.core.acsc.AcscBus; import com.interpss.core.acsc.XfrConnectCode; import com.interpss.core.algo.LoadflowAlgorithm; +import com.interpss.dstab.BaseDStabBus; import com.interpss.dstab.DStabBus; import com.interpss.dstab.DStabGen; import com.interpss.dstab.algo.DynamicSimuAlgorithm; import com.interpss.dstab.algo.DynamicSimuMethod; import com.interpss.dstab.cache.StateMonitor; import com.interpss.dstab.mach.EConstMachine; -import com.interpss.dstab.mach.MachineType; +import com.interpss.dstab.mach.MachineModelType; import com.interpss.dstab.mach.RoundRotorMachine; public class TwoBus_3Phase_Test { @@ -76,7 +77,7 @@ BusID Code Volt(pu) Angle(deg) P(pu) Q(pu) Bus net.initThreePhaseFromLfResult(); - for(DStabBus bus: net.getBusList()){ + for(BaseDStabBus bus: net.getBusList()){ if(bus instanceof Bus3Phase){ Bus3Phase ph3Bus = (Bus3Phase) bus; @@ -187,12 +188,18 @@ public void testSolvNetwork() throws Exception{ assertTrue(algo.loadflow()) ; + StateMonitor sm = new StateMonitor(); + //sm.addGeneratorStdMonitor(new String[]{"Bus1-mach1","Bus2-mach1"}); + sm.addBusStdMonitor(new String[]{"Bus6","Bus2","Bus1"}); + // set the output handler + dstabAlgo.setSimuOutputHandler(sm); + assertTrue(dstabAlgo.initialization()); //assertTrue(net.initDStabNet()); assertTrue(net.solveNetEqn()); - for(DStabBus bus: net.getBusList()){ + for(BaseDStabBus bus: net.getBusList()){ if(bus instanceof Bus3Phase){ Bus3Phase ph3Bus = (Bus3Phase) bus; @@ -260,11 +267,11 @@ public void testDstab() throws Exception{ StateMonitor sm = new StateMonitor(); - sm.addGeneratorStdMonitor(new String[]{"Bus1-mach1","Bus3-mach1"}); - sm.addBusStdMonitor(new String[]{"Bus3","Bus1"}); + sm.addBusStdMonitor(new String[]{"Bus1"}); // set the output handler - dstabAlgo.setSimuOutputHandler(sm); - dstabAlgo.setOutPutPerSteps(1); + dstabAlgo.setSimuOutputHandler(sm); + dstabAlgo.setOutPutPerSteps(1); + if(dstabAlgo.initialization()){ dstabAlgo.performSimulation(); @@ -295,7 +302,7 @@ private DStabNetwork3Phase create2BusSys() throws InterpssException{ // create contribute generator // MVABase, power, sourceZ1/2/0 - DStabGen gen1 = DStabObjectFactory.createDStabGen("Gen1"); + Gen3Phase gen1 = ThreePhaseObjectFactory.create3PGenerator("Gen1"); gen1.setMvaBase(100.0); gen1.setDesiredVoltMag(1.04); gen1.setGen(new Complex(0.7164,0.2710)); @@ -308,7 +315,7 @@ private DStabNetwork3Phase create2BusSys() throws InterpssException{ bus1.setSortNumber(0); RoundRotorMachine mach = (RoundRotorMachine)DStabObjectFactory. - createMachine("1", "Mach-1", MachineType.EQ11_ED11_ROUND_ROTOR, net, "Bus1", "Gen1"); + createMachine("1", "Mach-1", MachineModelType.EQ11_ED11_ROUND_ROTOR, net, "Bus1", "Gen1"); mach.setRating(100, UnitType.mVA, net.getBaseKva()); mach.setRatedVoltage(230000.0); @@ -343,7 +350,7 @@ private DStabNetwork3Phase create2BusSys() throws InterpssException{ bus3.setSortNumber(1); - DStabGen gen2 = DStabObjectFactory.createDStabGen("Gen2"); + Gen3Phase gen2 = ThreePhaseObjectFactory.create3PGenerator("Gen2"); gen2.setMvaBase(100.0); gen2.setDesiredVoltMag(1.025); //gen2.setGen(new Complex(0.7164,0.2710)); @@ -355,7 +362,7 @@ private DStabNetwork3Phase create2BusSys() throws InterpssException{ bus3.getContributeGenList().add(gen2); EConstMachine mach2 = (EConstMachine)DStabObjectFactory. - createMachine("1", "Mach-1", MachineType.ECONSTANT, net, "Bus3", "Gen2"); + createMachine("1", "Mach-1", MachineModelType.ECONSTANT, net, "Bus3", "Gen2"); mach2.setRating(100, UnitType.mVA, net.getBaseKva()); mach2.setRatedVoltage(230000.0); diff --git a/ipss.plugin.3phase/src/org/ipss/threePhase/test/threePhaseTestSuite.java b/ipss.plugin.3phase/src/org/interpss/threePhase/test/threePhaseTestSuite.java similarity index 89% rename from ipss.plugin.3phase/src/org/ipss/threePhase/test/threePhaseTestSuite.java rename to ipss.plugin.3phase/src/org/interpss/threePhase/test/threePhaseTestSuite.java index fffb6b4..c657474 100644 --- a/ipss.plugin.3phase/src/org/ipss/threePhase/test/threePhaseTestSuite.java +++ b/ipss.plugin.3phase/src/org/interpss/threePhase/test/threePhaseTestSuite.java @@ -1,4 +1,4 @@ -package org.ipss.threePhase.test; +package org.interpss.threePhase.test; import org.junit.runner.RunWith; import org.junit.runners.Suite; diff --git a/ipss.plugin.3phase/src/org/ipss/threePhase/util/ThreePhaseAclfOutFunc.java b/ipss.plugin.3phase/src/org/interpss/threePhase/util/ThreePhaseAclfOutFunc.java similarity index 84% rename from ipss.plugin.3phase/src/org/ipss/threePhase/util/ThreePhaseAclfOutFunc.java rename to ipss.plugin.3phase/src/org/interpss/threePhase/util/ThreePhaseAclfOutFunc.java index 539707e..607d1b5 100644 --- a/ipss.plugin.3phase/src/org/ipss/threePhase/util/ThreePhaseAclfOutFunc.java +++ b/ipss.plugin.3phase/src/org/interpss/threePhase/util/ThreePhaseAclfOutFunc.java @@ -1,11 +1,11 @@ -package org.ipss.threePhase.util; +package org.interpss.threePhase.util; import org.interpss.numeric.datatype.Complex3x1; import org.interpss.numeric.datatype.ComplexFunc; -import org.ipss.threePhase.basic.Bus3Phase; -import org.ipss.threePhase.dynamic.DStabNetwork3Phase; +import org.interpss.threePhase.basic.Bus3Phase; +import org.interpss.threePhase.dynamic.DStabNetwork3Phase; -import com.interpss.dstab.DStabBus; +import com.interpss.dstab.BaseDStabBus; public class ThreePhaseAclfOutFunc { @@ -18,7 +18,7 @@ public static String busLfSummary(DStabNetwork3Phase net){ sb.append("--------------------------------------------------------------------\n"); sb.append("BusId Bus Name BaseKv Voltage A(Mag, Ang) Voltage B(Mag, Ang) Voltage C(Mag, Ang) \n"); sb.append("-------------------------------------------------------------------------------------------------\n"); - for(DStabBus bus: net.getBusList()){ + for(BaseDStabBus bus: net.getBusList()){ if( bus.isActive() && bus instanceof Bus3Phase){ Bus3Phase Bus3P = (Bus3Phase) bus; diff --git a/ipss.plugin.3phase/src/org/ipss/threePhase/util/ThreePhaseObjectFactory.java b/ipss.plugin.3phase/src/org/interpss/threePhase/util/ThreePhaseObjectFactory.java similarity index 74% rename from ipss.plugin.3phase/src/org/ipss/threePhase/util/ThreePhaseObjectFactory.java rename to ipss.plugin.3phase/src/org/interpss/threePhase/util/ThreePhaseObjectFactory.java index 2b44306..1129bdc 100644 --- a/ipss.plugin.3phase/src/org/ipss/threePhase/util/ThreePhaseObjectFactory.java +++ b/ipss.plugin.3phase/src/org/interpss/threePhase/util/ThreePhaseObjectFactory.java @@ -1,25 +1,25 @@ -package org.ipss.threePhase.util; +package org.interpss.threePhase.util; import org.interpss.numeric.NumericConstant; -import org.ipss.threePhase.basic.Branch3Phase; -import org.ipss.threePhase.basic.Branch3W3Phase; -import org.ipss.threePhase.basic.Bus3Phase; -import org.ipss.threePhase.basic.Gen3Phase; -import org.ipss.threePhase.basic.Load3Phase; -import org.ipss.threePhase.basic.Network3Phase; -import org.ipss.threePhase.basic.Transformer3Phase; -import org.ipss.threePhase.basic.impl.Branch3PhaseImpl; -import org.ipss.threePhase.basic.impl.Branch3W3PhaseImpl; -import org.ipss.threePhase.basic.impl.Bus3PhaseImpl; -import org.ipss.threePhase.basic.impl.Gen3PhaseImpl; -import org.ipss.threePhase.basic.impl.Load3PhaseImpl; -import org.ipss.threePhase.basic.impl.Transformer3PhaseImpl; -import org.ipss.threePhase.dynamic.DStabNetwork3Phase; -import org.ipss.threePhase.dynamic.impl.DStabNetwork3phaseImpl; -import org.ipss.threePhase.dynamic.model.DStabGen3PhaseAdapter; -import org.ipss.threePhase.dynamic.model.impl.DStabGen3PhaseAdapterImpl; -import org.ipss.threePhase.powerflow.DistributionPowerFlowAlgorithm; -import org.ipss.threePhase.powerflow.impl.DistributionPowerFlowAlgorithmImpl; +import org.interpss.threePhase.basic.Branch3Phase; +import org.interpss.threePhase.basic.Branch3W3Phase; +import org.interpss.threePhase.basic.Bus3Phase; +import org.interpss.threePhase.basic.Gen3Phase; +import org.interpss.threePhase.basic.Load3Phase; +import org.interpss.threePhase.basic.Network3Phase; +import org.interpss.threePhase.basic.Transformer3Phase; +import org.interpss.threePhase.basic.impl.Branch3PhaseImpl; +import org.interpss.threePhase.basic.impl.Branch3W3PhaseImpl; +import org.interpss.threePhase.basic.impl.Bus3PhaseImpl; +import org.interpss.threePhase.basic.impl.Gen3PhaseImpl; +import org.interpss.threePhase.basic.impl.Load3PhaseImpl; +import org.interpss.threePhase.basic.impl.Transformer3PhaseImpl; +import org.interpss.threePhase.dynamic.DStabNetwork3Phase; +import org.interpss.threePhase.dynamic.impl.DStabNetwork3phaseImpl; +import org.interpss.threePhase.dynamic.model.DStabGen3PhaseAdapter; +import org.interpss.threePhase.dynamic.model.impl.DStabGen3PhaseAdapterImpl; +import org.interpss.threePhase.powerflow.DistributionPowerFlowAlgorithm; +import org.interpss.threePhase.powerflow.impl.DistributionPowerFlowAlgorithmImpl; import com.interpss.DStabObjectFactory; import com.interpss.common.datatype.Constants; diff --git a/ipss.plugin.3phase/src/org/ipss/threePhase/util/ThreePhaseUtilFunction.java b/ipss.plugin.3phase/src/org/interpss/threePhase/util/ThreePhaseUtilFunction.java similarity index 65% rename from ipss.plugin.3phase/src/org/ipss/threePhase/util/ThreePhaseUtilFunction.java rename to ipss.plugin.3phase/src/org/interpss/threePhase/util/ThreePhaseUtilFunction.java index 2b14807..7168496 100644 --- a/ipss.plugin.3phase/src/org/ipss/threePhase/util/ThreePhaseUtilFunction.java +++ b/ipss.plugin.3phase/src/org/interpss/threePhase/util/ThreePhaseUtilFunction.java @@ -1,15 +1,14 @@ -package org.ipss.threePhase.util; +package org.interpss.threePhase.util; import java.util.function.Function; -import org.ipss.threePhase.basic.Branch3Phase; -import org.ipss.threePhase.basic.Transformer3Phase; +import org.interpss.threePhase.basic.Branch3Phase; +import org.interpss.threePhase.basic.Gen3Phase; +import org.interpss.threePhase.basic.Transformer3Phase; +import org.interpss.threePhase.dynamic.model.DStabGen3PhaseAdapter; import com.interpss.dstab.DStabGen; -import org.ipss.threePhase.basic.Gen3Phase; -import org.ipss.threePhase.dynamic.model.DStabGen3PhaseAdapter; - public class ThreePhaseUtilFunction { diff --git a/ipss.plugin.3phase/src/org/ipss/threePhase/util/ThreeSeqLoadProcessor.java b/ipss.plugin.3phase/src/org/interpss/threePhase/util/ThreeSeqLoadProcessor.java similarity index 70% rename from ipss.plugin.3phase/src/org/ipss/threePhase/util/ThreeSeqLoadProcessor.java rename to ipss.plugin.3phase/src/org/interpss/threePhase/util/ThreeSeqLoadProcessor.java index 148f51d..eea761d 100644 --- a/ipss.plugin.3phase/src/org/ipss/threePhase/util/ThreeSeqLoadProcessor.java +++ b/ipss.plugin.3phase/src/org/interpss/threePhase/util/ThreeSeqLoadProcessor.java @@ -1,15 +1,16 @@ -package org.ipss.threePhase.util; +package org.interpss.threePhase.util; import org.apache.commons.math3.complex.Complex; import org.interpss.numeric.datatype.Complex3x3; -import org.ipss.threePhase.basic.Bus3Phase; +import org.interpss.threePhase.basic.Bus3Phase; import com.interpss.core.acsc.SequenceCode; +import com.interpss.dstab.BaseDStabBus; import com.interpss.dstab.DStabBus; public class ThreeSeqLoadProcessor { - public static Complex3x3 getEquivLoadYabc(DStabBus bus){ + public static Complex3x3 getEquivLoadYabc(BaseDStabBus bus){ Complex loadEquivY1 = new Complex(1.0,0).divide(bus.getEquivZ1()); Complex loadEquivY2 = new Complex(1.0,0).divide(bus.getEquivZ2()); @@ -18,7 +19,7 @@ public static Complex3x3 getEquivLoadYabc(DStabBus bus){ return Complex3x3.z12_to_abc( new Complex3x3(loadEquivY1,loadEquivY2,loadEquivY0)); } - public static void initEquivLoadY120(DStabBus bus){ + public static void initEquivLoadY120(BaseDStabBus bus){ bus.initSeqEquivLoad(SequenceCode.POSITIVE); bus.initSeqEquivLoad(SequenceCode.NEGATIVE); bus.initSeqEquivLoad(SequenceCode.ZERO); diff --git a/ipss.plugin.3phase/src/org/ipss/threeSeq/algo/DStab3SeqSolverImpl.java b/ipss.plugin.3phase/src/org/interpss/threeSeq/algo/DStab3SeqSolverImpl.java similarity index 89% rename from ipss.plugin.3phase/src/org/ipss/threeSeq/algo/DStab3SeqSolverImpl.java rename to ipss.plugin.3phase/src/org/interpss/threeSeq/algo/DStab3SeqSolverImpl.java index 148f25a..14d4051 100644 --- a/ipss.plugin.3phase/src/org/ipss/threeSeq/algo/DStab3SeqSolverImpl.java +++ b/ipss.plugin.3phase/src/org/interpss/threeSeq/algo/DStab3SeqSolverImpl.java @@ -1,4 +1,4 @@ -package org.ipss.threeSeq.algo; +package org.interpss.threeSeq.algo; import java.util.Hashtable; import java.util.Map.Entry; @@ -8,7 +8,7 @@ import org.interpss.numeric.exp.IpssNumericException; import org.interpss.numeric.sparse.ISparseEqnComplex; import org.interpss.numeric.util.NumericUtil; -import org.ipss.threePhase.dynamic.DStabNetwork3Phase; +import org.interpss.threePhase.dynamic.DStabNetwork3Phase; import com.interpss.common.exp.InterpssException; import com.interpss.common.msg.IPSSMsgHub; @@ -18,9 +18,9 @@ import com.interpss.core.net.Branch; import com.interpss.core.net.Bus; import com.interpss.dstab.DStabBranch; -import com.interpss.dstab.DStabBus; +import com.interpss.dstab.BaseDStabBus; import com.interpss.dstab.DStabGen; -import com.interpss.dstab.DStabilityNetwork; +import com.interpss.dstab.BaseDStabNetwork; import com.interpss.dstab.algo.DynamicSimuAlgorithm; import com.interpss.dstab.algo.DynamicSimuMethod; import com.interpss.dstab.algo.defaultImpl.DStabSolverImpl; @@ -31,7 +31,7 @@ public class DStab3SeqSolverImpl extends DStabSolverImpl { - private DStabilityNetwork net = null; + private BaseDStabNetwork net = null; private double negZeroSeqCurrTolerance = 1.0E-3; @@ -80,7 +80,7 @@ public boolean networkSolutionStep() throws DStabSimuException{ throw new DStabSimuException("Exception in dstabNet.solveNetEqn()"); for ( Bus busi : dstabAlgo.getNetwork().getBusList() ) { - DStabBus bus = (DStabBus)busi; + BaseDStabBus bus = (BaseDStabBus)busi; if(bus.isActive()){ if(i>=1){ if(!NumericUtil.equals(bus.getVoltage(),voltageRecTable.get(bus.getId()),this.converge_tol)) @@ -156,13 +156,13 @@ public boolean networkSolutionStep() throws DStabSimuException{ } - @Override protected void output(DStabBus bus, double t, boolean plotOutput) throws DStabSimuException { + @Override protected void output(BaseDStabBus bus, double t, boolean plotOutput) throws DStabSimuException { super.output(bus, t, plotOutput); //TODO output three-sequence bus voltages } - private Hashtable solveSeqNetwork(DStabilityNetwork subnet, SequenceCode seq,Hashtable seqCurInjTable){ + private Hashtable solveSeqNetwork(BaseDStabNetwork subnet, SequenceCode seq,Hashtable seqCurInjTable){ Hashtable busVoltResults = new Hashtable<>(); // solve the Ymatrix @@ -189,7 +189,7 @@ private Hashtable solveSeqNetwork(DStabilityNetwork subnet, Seq e1.printStackTrace(); return null; } - for(DStabBus bus:subnet.getBusList()){ + for(BaseDStabBus bus:subnet.getBusList()){ busVoltResults.put(bus.getId(), subNetY.getX(bus.getSortNumber())); } @@ -201,7 +201,7 @@ private Hashtable solveSeqNetwork(DStabilityNetwork subnet, Seq ISparseEqnComplex negSeqYMatrix = subnet.getNegSeqYMatrix(); if(!negSeqYMatrix.isFactorized()){ try { - negSeqYMatrix.luMatrix(1.0E-8); + negSeqYMatrix.factorization(1.0E-8); } catch (IpssNumericException e2) { // TODO Auto-generated catch block e2.printStackTrace(); @@ -227,7 +227,7 @@ private Hashtable solveSeqNetwork(DStabilityNetwork subnet, Seq return null; } - for(DStabBus bus:subnet.getBusList()){ + for(BaseDStabBus bus:subnet.getBusList()){ busVoltResults.put(bus.getId(), negSeqYMatrix.getX(bus.getSortNumber())); } @@ -238,7 +238,7 @@ private Hashtable solveSeqNetwork(DStabilityNetwork subnet, Seq if(!zeroSeqYMatrix.isFactorized()){ try { - zeroSeqYMatrix.luMatrix(1.0E-8); + zeroSeqYMatrix.factorization(1.0E-8); } catch (IpssNumericException e2) { // TODO Auto-generated catch block e2.printStackTrace(); @@ -259,7 +259,7 @@ private Hashtable solveSeqNetwork(DStabilityNetwork subnet, Seq return null; } - for(DStabBus bus:subnet.getBusList()){ + for(BaseDStabBus bus:subnet.getBusList()){ busVoltResults.put(bus.getId(), zeroSeqYMatrix.getX(bus.getSortNumber())); } diff --git a/ipss.plugin.3phase/src/org/ipss/threePhase/basic/GenType.java b/ipss.plugin.3phase/src/org/ipss/threePhase/basic/GenType.java deleted file mode 100644 index c9d7b79..0000000 --- a/ipss.plugin.3phase/src/org/ipss/threePhase/basic/GenType.java +++ /dev/null @@ -1,5 +0,0 @@ -package org.ipss.threePhase.basic; - -public enum GenType { - Synchrounous_machine, Inverter_based; -} diff --git a/ipss.plugin.3phase/src/org/ipss/threePhase/basic/LoadType.java b/ipss.plugin.3phase/src/org/ipss/threePhase/basic/LoadType.java deleted file mode 100644 index 44efc60..0000000 --- a/ipss.plugin.3phase/src/org/ipss/threePhase/basic/LoadType.java +++ /dev/null @@ -1,7 +0,0 @@ -package org.ipss.threePhase.basic; - -public enum LoadType { - - Single_Phase, Three_Phase_Wye, Three_Phase_Delta; - -} diff --git a/ipss.plugin.3phase/src/org/ipss/threePhase/basic/Phase.java b/ipss.plugin.3phase/src/org/ipss/threePhase/basic/Phase.java deleted file mode 100644 index 8fa66f6..0000000 --- a/ipss.plugin.3phase/src/org/ipss/threePhase/basic/Phase.java +++ /dev/null @@ -1,7 +0,0 @@ -package org.ipss.threePhase.basic; - -public enum Phase { - - A,B,C - -} diff --git a/ipss.plugin.3phase/src/org/ipss/threePhase/dynamic/IDynamicModel1Phase.java b/ipss.plugin.3phase/src/org/ipss/threePhase/dynamic/IDynamicModel1Phase.java deleted file mode 100644 index b0ffd81..0000000 --- a/ipss.plugin.3phase/src/org/ipss/threePhase/dynamic/IDynamicModel1Phase.java +++ /dev/null @@ -1,14 +0,0 @@ -package org.ipss.threePhase.dynamic; - -import org.ipss.threePhase.basic.Phase; - -import com.interpss.dstab.device.DynamicBusDevice; - -public interface IDynamicModel1Phase extends DynamicBusDevice { - - - Phase getPhase(); - - void setPhase(Phase p); - -} diff --git a/ipss.plugin.3phase/testData/threeBusSys.raw b/ipss.plugin.3phase/testData/threeBusSys.raw index e7f0578..ad955e4 100644 --- a/ipss.plugin.3phase/testData/threeBusSys.raw +++ b/ipss.plugin.3phase/testData/threeBusSys.raw @@ -6,7 +6,7 @@ 3,'BUS-3 ', 230.000,3, 0.000, 0.000, 1, 1,1.02500, 0.00, 1 0 / END OF BUS DATA, BEGIN LOAD DATA 2,'1 ',1, 1, 1, 100.000, 20.000, 0.000, 0.000, 0.000, 0.000, 1 -0 / END OF Load, BEGIN GENERATOR DATA +0 / END OF Load DATA, BEGIN GENERATOR DATA 1,'1 ', 71.640, 27.050, 9999.000, -9999.000,1.04000, 0, 100.000, 0.003, 0.2, 0.00000, 0.00000,1.00000,1, 100.0, 9999.000, -9999.000, 1,1.0000, 0,0.0000, 0,0.0000, 0,0.0000 3,'1 ', 85.000, -10.860, 99990.000,-99990.000,1.02500, 0, 100.000, 0.02, 0.2, 0.00000, 0.00000,1.00000,1, 100.0, 9999.000, -9999.000, 1,1.0000, 0,0.0000, 0,0.0000, 0,0.0000 0 / END OF GENERATOR DATA, BEGIN NON-TRANSFORMER BRANCH DATA