SMIB. Make sure to unselect the option
to save the contents of the package in one file.

SMIB create two
sub-packages named Experiments and BaseModels. Then add two sub-packages
inside BaseModels called
GenerationUnits and
BaseNetwork. Once again,
remember to keep the option to " save the contents of the
package in one file" unselected.Experiments package. Double-click the
Experiments package and go
to the text layer to add the following line of class extension:
package Experiments
extends Modelica.Icons.Example;
end Experiments;
BaseNetwork,
create a new partial model called SMIBPartial.OpenIPSL.Interfaces.Generator, and
right-click the icon to create a new model by class extension. Name
the new model InfiniteBus
and place it inside GenerationUnits.

GeneratorOnly. Your package should look
as follows:

InfiniteBus, drag
and drop a GENCLS generator
model from OpenIPSL.Electrical.Machines.PSSE.GENCLS component to
pwPin.GENROE generator model from OpenIPSL.Electrical.Machines.PSSE to
GeneratorOnly.

PMECH0 on the right to the input pin
PMECH on the left of the
GENROE block. Do the same
for the EFD0 output and
input EFD on the bottom.
Also, connect the blue pin to pwPin. Your connections should look as
follows

GENCLS
block inside the InfiniteBus
model. Be sure to enter all the machine parameters in the figure
below:

InfiniteBus model. Propagate the power
flow parameters one layer up as indicated in the highlighted text
of the following code chunk:
model InfiniteBus
extends OpenIPSL.Interfaces.Generator;
OpenIPSL.Electrical.Machines.PSSE.GENCLS gENCLS(P_0=P_0,
Q_0=Q_0,
v_0=v_0,
angle_0=angle_0,
M_b=100000000,
H=5.0000,
D=0.0000,
R_a=0.0000,
X_d=0.2000)
a..;
equation
connect(gENCLS.p, pwPin)
a..;
end InfiniteBus;
GeneratorOnly model, double click the
GENROE component and fill in
the power flow data fields. Notice that no explicit values should
be passed to v_0 (
V_0 in OpenIPSL 1.5),
angle_0, P_0, and Q_0. These values are propagated from an
upper layer.


SMIBPartial model. Drag and drop the
following components:
OpenIPSL.Buses.Bus (you could also work
with OpenIPSL.Buses.BusExt);OpenIPSL.Branches.PwLine;Load from OpenIPSL.Electrical.Loads.PSSE;PwFault from
OpenIPSL.Electrical.Events;SystemBase from
OpenIPSL.Electrical.SystemBase. Set the
base frequency to 50 Hz and the base to 100 MVA;InfiniteBus
generation unit.

B01 component
and select the option to display the power flow. Do the same for
the remaining buses and the generation unit component.pwFault
block and fill in the parameters as indicated below:

Experiments
create a new model named SMIB by extending the SMIBPartial model. Although not entirely
required, add the following line to the Modelica text to include an
icon to the model:
model SMIB
extends Modelica.Icons.Example;
extends BaseModels.BaseNetwork.SMIBPartial;
end SMIB;
📌 You should have a package structure similar to this:

GeneratorOnly component from the
GenerationUnits package to
the diagram layer of the SMIB model. Name it genunit and make sure
that the Display power flow option inside its parameters
window is checked.genunit to bus
B01. The model should look
as follows:

SMIB.