generated from arras-energy/gridlabd-old
-
Notifications
You must be signed in to change notification settings - Fork 5
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Fixes to support WECC 240 network solution (#285)
Signed-off-by: David P. Chassin <david.chassin@me.com>
- Loading branch information
Showing
22 changed files
with
1,688 additions
and
341 deletions.
There are no files selected for viewing
Large diffs are not rendered by default.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,67 @@ | ||
[[/GLM/Global/Random.md]] -- Generate a random number | ||
|
||
# Synopsis | ||
|
||
GLM: | ||
|
||
~~~ | ||
${RANDOM} | ||
${RANDOM SPEC} | ||
~~~ | ||
|
||
# Description | ||
|
||
If used without the `SPEC`, a random uniform number between 0 and 1 is | ||
generated. | ||
|
||
The following is permitted for `SPEC`: | ||
|
||
* `N`: generate a `N`-bit unsigned integer where $0 \lt N \le 64$. | ||
|
||
* `TYPE(A[,B])`: generate a random number of the specified distriction `TYPE` | ||
given the arguments provided. See [[/GLM/General/Random%20values.md]] for | ||
a list of distributions and their arguments. | ||
|
||
* `last`: return the last random number generated. | ||
|
||
If no random number has been previously generated and `last` is called, the | ||
value of the global `randomseed` is returned. | ||
|
||
# Example | ||
|
||
File `test.glm`: | ||
|
||
~~~ | ||
#set suppress_repeat_messages=FALSE | ||
#print Random uniform.......... ${RANDOM} | ||
#print Random 8-bit integer... ${RANDOM 8} | ||
#print Random 16-bit integer... ${RANDOM 16} | ||
#print Random 32-bit integer... ${RANDOM 32} | ||
#print Random 48-bit integer... ${RANDOM 48} | ||
#print Random 64-bit integer... ${RANDOM 64} | ||
#print Random normal........... ${RANDOM normal(0,1)} | ||
#print Last number generated... ${RANDOM last} | ||
~~~ | ||
|
||
Run the following: | ||
|
||
~~~ | ||
gridlabd test.glm | ||
~~~ | ||
|
||
Output: | ||
|
||
~~~ | ||
./test.glm(2): Random uniform.......... 0.196869 | ||
./test.glm(3): Random 8-bit integer... 156 | ||
./test.glm(4): Random 16-bit integer... 238 | ||
./test.glm(5): Random 32-bit integer... 996881412 | ||
./test.glm(6): Random 48-bit integer... 5506770547858 | ||
./test.glm(7): Random 64-bit integer... 8577238717949152431 | ||
./test.glm(8): Random normal........... 1.33329 | ||
./test.glm(9): Last number generated... 1.33329 | ||
~~~ | ||
|
||
# See Also | ||
|
||
* [[/GLM/General/Random%20values.md]] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,104 @@ | ||
[[/Module/Pypower/Shunt.md]] -- Shunt capacitor/reactor | ||
|
||
# Synopsis | ||
|
||
~~~ | ||
class shunt { | ||
enumeration {DISCRETE_V=1, FIXED=0} control_mode; // shunt control mode | ||
enumeration {ONLINE=1, OFFLINE=0} status; // shunt status | ||
double voltage_high[pu]; // controlled voltage upper limit | ||
double voltage_low[pu]; // controlled voltage lower limit | ||
object remote_bus; // remote bus name | ||
double admittance[MVAr]; // shunt admittance at unity voltage | ||
int32 steps_1; // numbers of steps in control block 1 | ||
double admittance_1[MVAr]; // control block 1 shunt admittance step at unity voltage | ||
} | ||
~~~ | ||
|
||
# Description | ||
|
||
Shunt objects are used to control voltage of its `parent` bus. Shunt capacitors can raise voltage and shunt reactors can lower voltage. Shunt devices can be controlled by monitoring voltage on a remote bus and stepping the reactive power injections up or down according to the voltage control limits. | ||
|
||
Each control block has a number of steps for the admittance steps allowed. Note: at this time, only 1 control block is supported. | ||
|
||
# Properties | ||
|
||
The following properties determine how a `shunt` device operates. | ||
|
||
## `enumeration control_mode` | ||
|
||
Determines the shunt device control mode. | ||
|
||
### `FIXED` | ||
|
||
The shunt device is fixed and does not change the shunt admittance of the parent bus. | ||
|
||
### `DISCRETE_V` | ||
|
||
The shunt device varies the shunt admittances of the `parent` bus according to the voltage control limits of the `remote_bus`, if specified. If the `remote_bus` is not specified then the `parent` bus is used as the control input. | ||
|
||
## `enumeration status` | ||
|
||
Shunt device status. | ||
|
||
### `ONLINE` | ||
|
||
The shunt device is active and will change the admittance of the `parent` bus. | ||
|
||
### `OFFLINE` | ||
|
||
The shunt device is inactive and will not change the admittance of the `parent` bus. | ||
|
||
## `double voltage_high[pu]` | ||
|
||
The upper voltage limit at which the shunt device's voltage lowering strategy will be engaged. | ||
|
||
## `double voltage_low[pu]` | ||
|
||
The lower voltage limit at which the shunt device's voltage raising strategy will be engaged. | ||
|
||
## `object remote_bus` | ||
|
||
The name of the remote bus from which voltage input is measured. If not specified, the `parent` bus is used as the voltage input. | ||
|
||
## `double admittance[MVAr]` | ||
|
||
The shunt admittance used when the shunt device is engaged, specified at unity voltage. | ||
|
||
## `int32 steps_1` | ||
|
||
The number of admittance steps in control block 1. | ||
|
||
|
||
## `double admittance_1[MVAr]` | ||
|
||
The admittance step of control block 1, specified at unity voltage. | ||
|
||
# Examples | ||
|
||
The following implements a shunt capacitor with 5 steps of 200 MVAr admittance on a test swing bus in `pypower`. | ||
|
||
~~~ | ||
module pypower; | ||
object pypower.bus | ||
{ | ||
name "test_bus"; | ||
baseKV 345.0000 kV; | ||
type REF; | ||
} | ||
object shunt { | ||
name "test_shunt"; | ||
parent "test_bus"; | ||
control_mode DISCRETE_V; | ||
status ONLINE; | ||
voltage_high 1.5 pu; | ||
voltage_low 0.5 pu; | ||
admittance 200.0 MVAr; | ||
steps_1 5; | ||
admittance_1 200.0 MVAr; | ||
} | ||
~~~ | ||
|
||
# See Also | ||
|
||
* [[/Module/Pypower.md]] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.