A Generator is a Power Conversion element similar to a Load object. Its rating is basically defined by its nominal kW and PF or its kW and kvar. Then it may be modified by a number of multipliers, including the global circuit load multiplier, yearly load shape, daily load shape, and a dutycycle load shape.

For power flow studies, the generator is essentially a negative load that can be dispatched. For Harmonics mode, the generator is converted to a voltage source behind the value specified for Xd” that approximately matches the power flow solution. For dynamics mode, the generator is converted to a voltage source behind an impedance with the impedance dependent on the model chosen.

If the dispatch value (DispValue property) is 0, the generator always follows the appropriate dispatch curve, which is simply a Loadshape object. If DispValue>0 then the generator only comes on when the global circuit load multiplier exceeds DispValue. When the generator is on, it always follows the dispatch curve appropriate for the type of solution being performed.

If you want to model a generator that is fully on whenever it is dispatched on, simply designate "Status=Fixed". The default is "Status=Variable" (i.e., it follows a dispatch curve. You could also define a dispatch curve that is always 1.0.

The Generator object is an excellent host for user-defined PCElement models supplied as User-written DLLs (generator model=6). You can use this to research models of various DER elements that produce power as well as those that consume power for which specific OpenDSS models do not exist. A template is provided with the installation of the OpenDSS program in the IndMach012a.DLL. The source code for this DLL is available.

Generators have their own energy meters that record:

1. Total kwh

2. Total kvarh

3. Max kW

4. Max kVA

5. Hours in operation

6. $ (Price signal * energy generated)

Generator meters reset with the circuit energy meters and take a sample with the circuit energy meters as well. The Energy meters also used trapezoidal integration so that they are compatible with Load-Duration simulations.

Generator power models for power flow simulations are:

1. Constant P, Q (* dispatch curve, if appropriate).
2. Constant Z (For simple, approximate solution)

3. Constant P, |V| somewhat like a standard power flow with voltage magnitudes and angles as the variables instead of P and Q.

4. Constant P, fixed Q. P follows dispatch; Q is always the same.

5. Constant P, fixed reactance. P follows dispatch, Q is computed as if it were a fixed reactance.

6. User-written model

7. Current-limited constant P, Q model (like some inverters).

Most of the time you will use #1 for planning studies, assuming you want to specify a specific power. All load models can follow Loadshapes. Some follow only the P component while the Type 1 can follow both a P and Q characteristic.

The default is for the generator to be a current injection source (Norton equivalent). Thus, its primitive Y matrix is similar to a Load object with a nominal equivalent admittance at rated voltage included in the primitive Y matrix and the injection current representing the amount required to compensate the Norton equivalent to achieve the desired terminal current. However, if the generator model is switched to Admittance from PowerFlow (see Set Mode command), the generator terminal current is computed simply from equivalent admittance that is included in the system Y matrix.

Generator powers are assumed balanced over the number of phases specified. If you would like unbalanced generators, enter separate single-phase generators.

The properties, in numerical order, are:


Name of bus to which the generator is connected. Include node definitions if the terminal conductors are connected unusually. 3-phase Wye-connected generators have 4 conductors; Delta-connected have 3. Wye-connected generators, in general, have one more conductor than phases. 1-phase Delta has 2 conductors; 2-phase has 3. The remaining Delta, or line-line, connections have the same number of conductors as phases.


No. of phases this generator.


Base voltage for generator. For 2- or 3-phase generators, specified in phase-to-phase kV. For all other generators, the actual kV across the generator branch. If wye (star) connected, specify the phase-to-neutral (L-N) kV. If delta or phase-to-phase connected, specify the phase-to-phase (L-L) kV.


nominal kW for generator. Total of all phases.


nominal Power Factor for generator. Negative PF is leading (absorbing vars). Specify either PF or kvar (see below). If both are specified, the last one specified takes precedence.


Integer defining how the generator will vary with voltage. Presently defined models are:

1: Generator injects a constant kW at specified power factor.

2: Generator is modeled as a constant admittance.
3: Const kW, constant kV. Somewhat like a conventional transmission power flow P-V generator.

4: Const kW, Fixed Q (Q never varies)

5: Const kW, Fixed Q(as a constant reactance)

6: Compute load injection from User-written Model.(see usage of Xd, Xdp)

7: Constant kW, kvar, but current is limited when voltage is below Vminpu


Name of Yearly load shape.


Name of Daily load shape.


name of Duty cycle load shape. Defaults to Daily load shape if not defined.


Dispatch value. If = 0.0 then Generator follows dispatch curves. If > 0 then Generator is ON only when the global load multiplier exceeds this value. Then the generatorfollows dispatch curves (see also Status)


{wye | y | LN} for Wye (Line-Neutral) connection; {delta | LL} for Delta (Line-Line) connection. Default = wye.


Base kvar. If this is specified, will supercede PF. (see PF)


Neutral resistance ohms. If entered as negative, non-zero number, neutral is assumed open, or ungrounded. Ignored for delta or line-line connected generators. Default is 0.


Neutral reactance, ohms. Ignored for delta or line-line connected generators. Assumed to be in series with Rneut value.


{fixed | variable}. If Fixed, then dispatch multipliers do not apply. The generator is always at full power when it is ON. Default is Variable (follows curves).


Integer number segregating the generator according to a particular user-defined class. Can be any number.


Maximum kvar limit for Model = 3. Defaults to twice the specified load kvar. Always reset this if you change PF or kvar properties.


Minimum kvar limit for Model = 3. Enter a negative number if generator can absorb vars. Defaults to negative of Maxkvar. Always reset this if you change PF or kvar properties.


Convergence deceleration factor for P-V generator model (Model=3). Default is 0.1. If the circuit converges easily, you may want to use a higher number such as 1.0. Use a lower number if solution diverges. Use Debugtrace=yes to create a file that will trace the convergence of a generator model.


{Yes | No } Default is no. Turn this on to capture the progress of the generator model for each iteration. Creates a separate file for each generator named "GEN_name.CSV".


Default = 0.95. Minimum per unit voltage for which the Model is assumed to apply. Below this value, the generator model reverts to a constant impedance model. For Model 7, this is used to determine the upper current limit. For example, if Vminpu is 0.90 then the current limit is (1/0.90) = 111%.


Default = 1.05. Maximum per unit voltage for which the Model is assumed to apply.
Above this value, the generator model reverts to a constant impedance model.


{Yes | No} Forces generator ON despite requirements of other dispatch modes. Stays ON until this property is set to NO, or an internal algorithm cancels the forced ON state.


kVA rating of electrical machine. Defaults to 1.2* kW if not specified. Applied to machine or inverter definition for Dynamics mode solutions.


MVA rating of electrical machine. Alternative to using kVA=.


Per unit synchronous reactance of machine. Presently used only for Thevinen impedance for power flow calcs of user models (model=6). Typically use a value from 0.4 to 1.0. Default is 1.0


Per unit transient reactance of the machine. Used for Dynamics mode and Fault studies. Default is 0.27.For user models, this value is used for the Thevinen/Norton impedance for Dynamics Mode.


Per unit subtransient reactance of the machine. Used for Harmonics. Default is 0.20.


Per unit mass constant of the machine. MW-sec/MVA. Default is 1.0.


Damping constant. Usual range is 0 to 4. Default is 1.0. Adjust to get damping


Name of DLL containing user-written model, which computes the terminal currents for Dynamics studies, overriding the default model. Set to "none" to negate previous setting.


String (in quotes or parentheses) that gets passed to user-written model for defining the data required for that model.


Name of user-written DLL containing a Shaft model, which models the prime mover and determines the power on the shaft for Dynamics studies. Models additional mass elements other than the single-mass model in the DSS default model. Set to "none" to negate previous setting.


String (in quotes or parentheses) that gets passed to user-written shaft dynamic model for defining the data for that model.


Starting time offset [hours] into the duty cycle shape for this generator, defaults to 0.


{Yes | No*} Default is No. For Model=7, force balanced current only for 3-phase generators. Force zero- and negative-sequence to zero.


Default is 20. X/R ratio for Xdp property for FaultStudy and Dynamic modes. Required to match published textbook fault study cases that have generators with both R and X specified.

Inherited Properties


Name of harmonic voltage or current spectrum for this generator. Voltage behind Xd" for machine - default. Current injection for inverter. Default value is "default", which is defined when the DSS starts.


Base frequency for which this generator is defined. Default is 60.0


Name of another Generator object on which to base this one