Skip to main content

Plot

Introduction

The Plot Node analyses data from connected Nodes and outputs results to other connected Nodes or outputs plots in a graphical format.

This Node is typically used for the following:

  • Outputting dynamic study results (e.g. plotting the time-series response of voltage at a bus).
  • Benchmarking two or more power system models against each other.
  • Analysing data (e.g. calculating settling time on a generator's reactive power output).
  • Outputting scatter plots summarising analysed data (e.g. plotting a droop curve based on results from multiple dynamic studies).

User inputs

Define plot

Output file name

Defines the output directory and file name of the plot, excluding the file extension.

Example:

DMAT_Table_1
danger

Each Plot Node represents a single output file. Output file names within a simulation must be unique.

As a result, Loop Variables and Internode Variables are not supported in the Output file name field.

Output file types

Defines the output file types. Currently, the Plot Node supports:

  • [Optional] Portable Document Format (PDF)
  • [Optional] Interactive Visualisation (HTML)
  • [Optional] Image (PNG)

Plot title

Defines the title of the plot.

Example:

Sunny Solar Farm

Plot subtitle

Defines the subtitle of the plot.

Example:

S5.2.5.4 - Frequency ramp to 52 Hz, 4 Hz/sec, minimum system strength

Define subplots

Type

Defines the type of plot to generate. Options:

  • Time series: Plot one or more sub-plots with a common horizontal (x) axis with time as the independent variable. All sub-plots share a common x-axis range. This is typically used for displaying time series data from dynamic studies.
  • Scatter plot: Generic scatter plot of channels on an x-axis and y-axis. This is typically used for post-processing and analysis of simulation data.

x-axis: Channels

Defines the channel to be used as input data for plot's x-axis. Channels are defined using Internode Variables from a connected Node. Multiple channels are supported and are entered on subsequent lines.

Example: Display the Q(V) droop curve generated by a connected Table Node (with data from a connected PSS®E Dynamic Node) with the following Data: voltage={{i_vpoc}} and reactive_power={{i_qpoc}}:

x-axis: Channels
{{voltage}}
note

Internode Variables names don't need to be unique with a Run. If a Plot Node channel is defined as {{voltage}} and a Table Node has data from two connected Nodes (e.g. PSS®E Dynamic Node and a PSCAD™ Node) output Internode Variables with the same name of voltage, the Plot Node will plot both channels on the same scatter plot.

x-axis: Label

Defines horizontal axis label of the plot.

Example:

x-axis: Label
V [p.u.]

x-axis: Scaling

Defines the scaling of the horizontal. Options:

  • Auto: Automatically scales the axis with reasonable whitespace for simplified analysis.
  • Auto: Tight: Automatically scales the axis as far as possible.
  • Manual: Fixed user-defined minimum and maximum values.

x-axis: Min

Defines the minimum displayed value on the horizontal axis. Only appears if x-axis: Scaling is set as Manual.

Example: Set the minimum value for the horizontal axis to 0.

y-axis: Min
0

x-axis: Max

Defines the maximum displayed value on the horizontal axis. Only appears if x-axis: Scaling is set as Manual.

Example: Set the maximum value for the horizontal axis to 100.

x-axis: Max
100

Subplot configuration space

Each plot may contain up to a maximum of 3 pages, each with 16 subplots. The grid displayed represents the layout of the subplots on a single page. Use the pages, rows and columns dropdowns to change this layout as desired. Click on the '+' icon to add a subplot, and click on the 'Configure' button to configure the subplot. Subplots can also be dragged to their preferred location on the page.

screenshot of the gridmo web app showing the 4 by 4 grid of available subplots screenshot of the gridmo web app showing the configuration options per sub plot

Subplot title

Defines the title of the subplot.

Example:

P POC
Enable subplot legends

Enable or disable the display of legends on the subplot. Legend names are defined using the LEGEND Argument in OUTPUT Commands (e.g. PSS®E Dynamic Node - OUTPUT Command). Options:

  • Checked: Legend will appear on the subplot.
  • Not checked: Legend will not appear on the subplot.
Enable straight lines with scatter plot (Scatter Plot only)

Enable or disable straight lines connecting the scatter plot data. Options:

  • Checked: Scatter plot will include straight lines.
  • Not checked: Scatter plot will not include straight lines.
info

You can configure channels on the left and right y-axes separately. Commands are only currently supported on left y-axis channels.

y-axis: Channels

Defines the channels which are used as input data for the subplot. Channels are defined using Internode Variables from a connected Node. Multiple channels are supported and are entered on subsequent lines.

Example: Display the time series data generated by a connected PSS®E Dynamic Node with the following Commands in its output field: OUTPUT, LINE=100->200#1, VAL=P, NAME=i_terminal_p and OUTPUT, LINE=400->500#1, VAL=P, NAME=i_poc_p.

{{i_terminal_p}}
{{i_poc_p}}
note

Internode Variables names don't need to be unique with a Run. If a Plot Node channel is defined as {{i_poc_p}} and two connected Nodes (e.g. PSS®E Dynamic Node and a PSCAD™ Node) output Internode Variables with the same name of P_POC, the Plot Node will plot both channels on the same subplot.

y-axis: Label

Defines vertical axis label of the subplot.

Example:

V POC
y-axis: Scaling

Defines the vertical axis scaling of the subplot. Options:

  • Auto: Automatically scales the vertical axis based on the channel type with reasonable whitespace for simplified analysis.
  • Auto: Tight: Automatically scale the vertical axis as far as possible.
  • Manual: Fixed user-defined minimum and maximum values.
y-axis: Min

Defines the minimum displayed value on the vertical axis of the subplot. Only appears if y-axis: Scaling is set as Manual.

Example: Set the minimum value for the sub-plot vertical axis to 20.

20
y-axis: Max

Defines the maximum displayed value on the vertical axis of the subplot. Only appears if y-axis: Scaling is set as Manual.

Example: Set the maximum value for the sub-plot vertical axis to 30.

30
Commands

Defines the Commands which are applied to the subplot.

Supported Commands (Time Series):

  • SETTLE_T: Calculates and optionally displays the settling time.
  • RISE_T: Calculates and optionally displays the rise time.
  • COMMENCEMENT_T: Calculates and optionally displays the commencement time.
  • RECOVERY_T: Calculates and optionally displays the post-disturbance recovery time.
  • EDGE: Outputs the time at which the channel rises to its maximum value or falls to its minimum value.
  • OUTPUT: Outputs a single value from each channel on the subplot at a specified time.
  • ADVOUTPUT: Outputs data from each channel on the subplot with advanced features.
  • SIMPLEBANDS: Calculates and displays simple offset-based or percentage-based symmetrical error bands using one channel as a reference.
  • DELTA_ERRORBANDS: Calculates and displays error bands based on an absolute difference between a channel calculated at two times, using that channel as a reference.
  • ADVBANDS: Calculates and displays advanced error bands using one channel as a reference.
  • DRAW_LINE: Draws a line on the subplot with optional styling and shading.

Supported Commands (Scatter Plot):

  • STYLE: Applies special styling to a scatter plot.
  • GRADIENT: Calculates gradient of data on a scatter plot.
  • DRAW_LINE: Draws a line on the subplot with optional styling and shading.

Advanced

Advanced Parameters

Advanced Parameters allow users to configure test details which are not commonly used. Advanced Parameters are often specific to each Node type.

Each line represents a new Advanced Parameter and is entered as a=b format, where a is the name of the Parameter and b is the corresponding value. All Advanced Parameters are set to their default values if they are not included in the Advanced Parameters field.

Example: Set Advanced Parameter, sample.parameter to a value of 5.

sample.parameter=5

API Reference

This section details the Commands and Advanced Parameters specific to the Node.

Commands

SETTLE_T | Settling time

SETTLE_T, START_T=, [END_T=, END_PU=0.1, HBANDS=NO, DISPLAY=YES, NAME=]

Calculates and optionally displays the settling time for each channel on the subplot.

Arguments:

  • SETTLE_T
  • START_T (float): Start settling time calculation from this time [seconds].
  • END_T (float)[Optional]: A time by which the channel is expected to have reached its final value (e.g. the end of the simulation or just prior to a further disturbance/controlled change) [seconds]. Defaults to the end of the channel data.
  • END_PU (float)[Optional]: Per unit threshold of the value at END_T where the signal is considered settled (if the signal remains within ± this multiplier of the final value). Defaults to 0.1 (10%).
  • HBANDS (bool)[Optional]: If YES, adds dotted horizontal lines corresponding to the END_PU threshold bands to visually show the acceptable settling band. Defaults to NO (horizontal bands not shown). Only drawn if DISPLAY=YES.
  • DISPLAY (str)[Optional]: Display the settling time on the subplot. Defaults to DISPLAY=YES. Options:
    • DISPLAY=YES: Settling time will be displayed on the subplot and in the legend.
    • DISPLAY=NO: Settling time will not be displayed on the subplot and in the legend.
  • SHADE_COLOR (str)[Optional]: Color of the shading. Defaults to a color complementary to the color of the line the calculation was completed on. Options:
  • NAME (str)[Optional]: Output the calculated settling time as an Internode Variable. Output names must be unique within a Node.

Example: Calculate the settling time for each channel on the subplot. Begin the calculation at 5 seconds and assume the channels have settled by 15 seconds. Output the calculated settling times to an Internode Variable called i_settling_time. Do not display the settling time on the subplot.

SETTLE_T, START_T=5, END_T=15, DISPLAY=NO, NAME=i_settling_time

Settling time calculation examples

gif-showing-how-to-calc-settling-time-with-no-overshoot

RISE_T | Rise time

RISE_T, START_T=, [END_T=, START_PU=0.1, END_PU=0.9, HBANDS=NO, DISPLAY=YES, NAME=]

Calculates and optionally displays the rise time for each channel on the subplot.

Arguments:

  • RISE_T
  • START_T (float): Start rise time calculation from this time [seconds].
  • END_T (float)[Optional]: A time by which the channel is expected to have reached its final value (e.g. the end of the simulation or just prior to a further disturbance/controlled change) [seconds]. Defaults to the end of the channel data.
  • START_PU (float)[Optional]: Per unit threshold of the value at END_T where the rise time calculation starts. Defaults to 0.1 (10%).
  • END_PU (float)[Optional]: Per unit threshold of the value at END_T where the signal is considered 'risen'. Defaults to 0.9 (90%).
  • HBANDS (bool)[Optional]: If YES, adds dotted horizontal lines corresponding to the END_PU threshold bands to visually show the acceptable settling band. Defaults to NO (horizontal bands not shown). Only drawn if DISPLAY=YES.
  • DISPLAY (str)[Optional]: Display the rise time on the subplot. Defaults to DISPLAY=YES. Options:
    • DISPLAY=YES: Rise time will be displayed on the subplot and in the legend.
    • DISPLAY=NO: Rise time will not be displayed on the subplot and in the legend.
  • SHADE_COLOR (str)[Optional]: Color of the shading. Defaults to a color complementary to the color of the line the calculation was completed on. Options:
  • NAME (str)[Optional]: Output the calculated rise time as an Internode Variable. Output names must be unique within a Node.

Example: Calculate the rise time for each channel on the subplot. Begin the calculation at 5 seconds and assume the channels have settled by 5.1 seconds. Do not output to an Internode Variable. Display the rise time on the subplot.

RISE_T, START_T=5, END_T=5.1

Rise time calculation example

gif-showing-how-to-calc-rise-time-with-no-overshoot

COMMENCEMENT_T | Commencement time

COMMENCEMENT_T, START_T=, [END_T=, START_PU=0, END_PU=0.1, HBANDS=NO, DISPLAY=YES, NAME=]

Calculates commencement time for each channel on the subplot.

note

Commencement time can have various definitions depending on the requirements of local grid codes.

The definition used in gridmo is that commencement time is effectively the same as rise time (RISE_T) though is provided as a separate Command to allow for different definitions to be used in the future.

Arguments:

  • COMMENCEMENT_T
  • START_T (float): Start commencement time calculation from this time [seconds].
  • END_T (float)[Optional]: A time by which the channel is expected to have reached its final value (e.g. the end of the simulation or just prior to a further disturbance/controlled change) [seconds]. Defaults to the end of the channel data.
  • START_PU (float)[Optional]: Per unit threshold of the value at END_T where the commencement time calculation starts. Defaults to 0 (0%).
  • END_PU (float)[Optional]: Per unit threshold of the value at END_T where the signal has settled. Defaults to 0.1 (10%).
  • HBANDS (bool)[Optional]: If YES, adds dotted horizontal lines corresponding to the END_PU threshold. Defaults to NO (horizontal bands not shown). Only drawn if DISPLAY=YES.
  • DISPLAY (str)[Optional]: Display the commencement time on the subplot. Defaults to DISPLAY=YES. Options:
    • DISPLAY=YES: Commencement time will be displayed on the subplot and in the legend.
    • DISPLAY=NO: Commencement time will not be displayed on the subplot and in the legend.
  • SHADE_COLOR (str)[Optional]: Color of the shading. Defaults to a color complementary to the color of the line the calculation was completed on. Options:
  • NAME (str)[Optional]: Output the calculated commencement time as an Internode Variable. Output names must be unique within a Node.

Example: Calculate the commencement time for each channel on the subplot. Begin the calculation at 5 seconds and assume the channels have settled by 5.1 seconds. Do not output to an Internode Variable. Display the commencement time on the subplot.

COMMENCEMENT_T, START_T=5, END_T=5.1

RECOVERY_T | Recovery time

RECOVERY_T, START_T=, FAULT_CLEAR_T=, [END_PU=0.95, DISPLAY=YES, NAME=]

Calculates and optionally displays the post-disturbance recovery time for each channel on the subplot.

Arguments:

  • RECOVERY_T
  • START_T (float): Time the fault or disturbance was applied [seconds].
  • FAULT_CLEAR_T (float): Time where the fault or disturbance was cleared [seconds].
  • END_PU (float)[Optional]: Per unit threshold of the channel value at START_T where the signal is considered to have recovered. Defaults to 0.95 (95%).
  • DISPLAY (str)[Optional]: Display the recovery time on the subplot. Defaults to DISPLAY=YES. Options:
    • DISPLAY=YES: Recovery time will be displayed on the subplot and in the legend.
    • DISPLAY=NO: Recovery time will not be displayed on the subplot and in the legend.
  • SHADE_COLOR (str)[Optional]: Color of the shading. Defaults to a color complementary to the color of the line the calculation was completed on. Options:
  • NAME (str)[Optional]: Output the calculated recovery time as an Internode Variable. Output names must be unique within a Node.

Example: Calculate the recovery time for each channel on the subplot. Begin the calculation at 5 seconds, the time at which a fault of duration 220 ms is applied. Output the calculated recovery times to an Internode Variable called i_recovery_time. Display the recovery time on the plot.

RECOVERY_T, START_T=5, FAULT_CLEAR_T=5.22, NAME=i_recovery_time

Recovery time calculation example

gif-showing-how-to-calc-recovery-time-with-no-overshoot

EDGE | Edge detection

EDGE, TYPE=, [DISPLAY=YES, NAME=]

Outputs the time at which the channel rises to its maximum value or falls to its minimum value.

info
  • This Command is only applied to the first channel specified in the subplot.
  • This Command is recommended for use with binary signals, such as LVRT or HVRT trigger flags, which toggle between a value of 0 and 1.

Arguments:

  • EDGE
  • TYPE (str): The type of edge to detect. Defaults to TYPE=RISING. Options:
    • TYPE=RISING: A rising edge (rising to the maximum value during the simulation).
    • TYPE=FALLING: A falling edge (falling to the minimum value during the simulation).
  • DISPLAY (str)[Optional]: Display the edge detection time on the subplot. Defaults to DISPLAY=YES. Options:
    • DISPLAY=YES: Edge detection time will be displayed on the subplot and in the legend.
    • DISPLAY=NO: Edge detection time will not be displayed on the subplot and in the legend.
  • NAME (str)[Optional]: Output the detected time as an Internode Variable. Output names must be unique within a Node.

Example: Assuming the Internode Variable i_inverter_lvrt is a channel on a subplot, find the time when this channel rises from 0 to its maximum value of 1. Export this time, in seconds, to the Internode Variable i_lvrt_trigger_time:

EDGE, TYPE=RISING, NAME=i_lvrt_trigger_time

OUTPUT | Output single value

OUTPUT, [AT=, VALSCALE=1, DISPLAY=YES, NAME=]

Outputs a single value from each channel on the subplot at a specified time.

Arguments:

  • OUTPUT
  • AT (float)[Optional]: Time in the channel data to extract the value. The extracted value is taken from the first time step after this time [seconds]. Defaults to the end of the channel data.
  • VALSCALE (float)[Optional]: Multiplicative scaling factor applied to the output value (i.e. scaled_value = unscaled_value x VALSCALE). Default value is 1.
  • DISPLAY (str)[Optional]: Display the recovery time on the subplot. Defaults to DISPLAY=YES. Options:
    • DISPLAY=YES: Output value will be displayed on the subplot and in the legend.
    • DISPLAY=NO: Output value will not be displayed on the subplot and in the legend.
  • NAME (str)[Optional]: Output the single value to an Internode Variable. Output names must be unique within a Node.

Example: Assuming channel i_poc_v is a channel on a subplot, output the value of the channel i_poc_v at the first time step after 5.00 seconds and call this output i_volt_at_start. Do not apply any scaling.

OUTPUT, AT=5, NAME=i_volt_at_start

ADVOUTPUT | Advanced output

ADVOUTPUT, OP=, START_T=, [END_T=, VALSCALE=1, DISPLAY=YES, NAME=]

Outputs data from each channel on the subplot with advanced features.

Arguments:

  • ADVOUTPUT
  • OP (str): Operation used in the calculation. Options:
    • OP=SUBTRACT: Output CHANNEL(END_T) - CHANNEL(START_T).
    • OP=ADD: Output CHANNEL(END_T) + CHANNEL(START_T).
    • OP=MULTIPLY: Output CHANNEL(END_T) * CHANNEL(START_T).
    • OP=DIVIDE: Output CHANNEL(END_T) / CHANNEL(START_T).
    • OP=MIN: Output the minimum of the channel between START_T and END_T.
    • OP=MAX: Output the maximum of the channel between START_T and END_T.
    • OP=MEDIAN: Output the median of the channel between START_T and END_T.
    • OP=MEAN: Output the mean of the channel between START_T to END_T.
    • OP=DELTA: Output the difference between the maximum and minimum of the channel between START_T and END_T.
    • OP=OVERSHOOT%: Outputs the overshoot percentage. This is the maximum normalised absolute value of the channel between START_T to END_T divided by the normalised value at END_T
  • START_T (float): Start output calculation from this time [seconds].
  • END_T (float)[Optional]: End output calculation at this time [seconds]. Defaults to the end of the channel data.
  • VALSCALE (float)[Optional]: Multiplicative scaling factor applied to the output value (i.e. scaled_value = unscaled_value x VALSCALE). Default value is 1.
  • DISPLAY (str)[Optional]: Display the calculated value on the subplot. Defaults to DISPLAY=YES. Options:
    • DISPLAY=YES: Advanced output value will be displayed on the subplot and in the legend.
    • DISPLAY=NO: Advanced output value will not be displayed on the subplot and in the legend.
  • NAME (str)[Optional]: Output the calculated value to an Internode Variable. Output names must be unique within a Node.

Example: Assuming the Internode Variable i_iq_poc is a channel on a subplot, calculate the difference in reactive current at 5 seconds (pre fault) compared to at 5.43 seconds (during the fault) and export this value as i_delta_iq:

ADVOUTPUT, START_T=5, END_T=5.43, OP=SUBTRACT, NAME=i_delta_iq

SIMPLEBANDS | Simple error bands

SIMPLEBANDS, [BANDWIDTH=3%, DISPLAY=NO, BAND_START_T=, BAND_END_T=, NAME=]

Calculates and displays simple offset-based or percentage-based symmetrical error bands on the subplot using one channel as a reference.

Arguments:

  • SIMPLEBANDS
  • BANDWIDTH (float)[Optional]: Vertical width of error bands. Defaults to BANDWIDTH=3%. Options:
    • BANDWIDTH=X: Absolute value offset to apply to the error bands. error_bands = reference_value ± X.
    • BANDWIDTH=X%: Relative multiplicative scale to apply to the error bands. error_bands = reference_value × (1 ± X%).
  • DISPLAY (str)[Optional]: Display the calculated percentage of the samples which appear within the error band bounds on the subplot. This Argument doesn't affect whether the error bands are displayed on the subplot. Defaults to DISPLAY=NO. Options:
    • DISPLAY=YES: Percentage will be displayed in the legend.
    • DISPLAY=NO: Percentage will not be displayed in the legend.
  • SHADE_COLOR (str)[Optional]: Color of the shading. Defaults to your engine's configured default error band colour. Options:
  • BAND_START_T (float)[Optional]: Start the error band on the plot from this time [seconds]. Defaults to the start of the channel data.
  • BAND_END_T (float)[Optional]: End the error band on the plot at this time [seconds]. Defaults to the end of the channel data.
  • NAME (str)[Optional]: Outputs the percentage of the samples which appear within the error band bounds to an Internode Variable. The percentage of data points within the error bands is calculated only for the period between BAND_START_T= and BAND_END_T=. Output names must be unique within a Node.

Example: Display error bands on the active power subplot with an absolute offset of ± 10 MW.

SIMPLEBANDS, BANDWIDTH=10

Example: Display error bands +/- 2 MVAr on the reactive power subplot, only between 10 seconds and 20 seconds.

SIMPLEBANDS, BANDWIDTH=2, BAND_START_T=10, BAND_END_T=20

DELTA_ERRORBANDS | Error bands calculated by the change in a channel

DELTA_ERRORBANDS, [START_T=, END_T=, BANDWIDTH=10%, DISPLAY=NO, BAND_START_T=, BAND_END_T=, NAME=]

Calculates and displays error bands based on an absolute difference between a channel calculated at two times, using that channel as a reference, with a scale factor. Specifically, the error band's width is equal to the absolute value of the change in the channel between the channel at START_T and the channel at END_T, multiplied by the BANDWIDTH factor.

Arguments:

  • DELTA_ERRORBANDS
  • START_T (float)[Optional]: Initial time to calculate change in channel from [seconds]. Defaults to the start of the channel.
  • END_T (float)[Optional]: Initial time to calculate change in channel from [seconds]. Defaults to the end of the channel.
  • BANDWIDTH (float%)[Optional]: Scale to apply to the error band vertical width. Defaults to 10%.
  • DISPLAY (str)[Optional]: Display the calculated percentage of the samples which appear within the error band bounds on the subplot. This Argument doesn't affect whether the error bands are displayed on the subplot. Defaults to DISPLAY=NO. Options:
    • DISPLAY=YES: Percentage will be displayed in the legend.
    • DISPLAY=NO: Percentage will not be displayed in the legend.
  • SHADE_COLOR (str)[Optional]: Color of the shading. Defaults to your engine's configured default error band colour. Options:
  • BAND_START_T (float)[Optional]: Start the error band on the plot from this time [seconds]. Defaults to the start of the channel data.
  • BAND_END_T (float)[Optional]: End the error band on the plot at this time [seconds]. Defaults to the end of the channel data.
  • NAME (str)[Optional]: Outputs the percentage of the samples which appear within the error band bounds to an Internode Variable. The percentage of data points within the error bands is calculated only for the period between BAND_START_T= and BAND_END_T=. Output names must be unique within a Node.

Example: Display error bands on the subplot based on the change in active power between 5 seconds and 10 seconds. Use the default BANDWIDTH of 10%. The applied error bands will be equal to the absolute value of the change in the channel on this subplot between 5 seconds and 10 seconds, multiplied by 10%.

DELTA_ERRORBANDS, START_T=5, END_T=10

Example: Display error bands on the subplot only between 15 seconds and 22 seconds. Set the error band width to 5% of the change in the channel between 5 seconds and 30 seconds.

DELTA_ERRORBANDS, START_T=5, END_T=30, BANDWIDTH=5%, BAND_START_T=15, BAND_END_T=22

ADVBANDS | Advanced error bands

ADVBANDS, BASE=, [TAT=, TAT=, DISPLAY=NO, NAME=]

Calculates and displays advanced error bands on the subplot using one channel as a reference. Advanced error bands are used to meet specific grid code requirements. Optionally, outputs the percentage of the samples which appear within the error band bounds.

Arguments:

  • ADVBANDS
  • BASE (float): Base value to use for the error band calculation.
  • TAT (float)[Optional][Multiple]: Time of the start of a transient, where different error band calculation methodology may be required. Defaults to no transients. Multiple Arguments supported.
  • DISPLAY (str)[Optional]: Display the calculated percentage of the samples which appear within the error band bounds on the subplot. This Argument doesn't affect whether the error bands are displayed on the subplot. Defaults to DISPLAY=NO. Options:
    • DISPLAY=YES: Percentage will be displayed in the legend.
    • DISPLAY=NO: Percentage will not be displayed in the legend.
  • SHADE_COLOR (str)[Optional]: Color of the shading. Defaults to your engine's configured default error band colour. Options:
  • NAME (str)[Optional]: Outputs the percentage of the samples which appear within the error band transient window bounds to an Internode Variable. Output names must be unique within a Node.
info

Currently, ADVBANDS only supports error bands derived in accordance with Section 6 of AEMO's Power System Modelling Guidelines (PSMG) [AEMO | July 2018]. The following methodology is applied:

  • The start of the 'Transient Window' is defined by the user using TAT=.
  • The end of the 'Transient Window' is automatically calculated based on when the channel settles to within ±5% of the maximum induced or reference quantity change [Source: Section 6.2 of PSMG].
  • Within a Transient Window, the upper and lower error bands are the least restrictive of:
    1. The channel +10% of the maximum induced or reference quantity change [Source: Section 6.2.1(b)(i)(A)].
    2. The channel -10% of the maximum induced or reference quantity change [Source: Section 6.2.1(b)(i)(A)].
    3. The channel shifted to the left by 20 milliseconds [Source: Section 6.2.1(b)(i)(B)].
    4. The channel shifted to the right by 20 milliseconds [Source: Section 6.2.1(b)(i)(B)].
    5. The channel +2% of the BASE= value provided [Source: Section 6.2.1(d)(i)].
    6. The channel -2% of the BASE= value provided [Source: Section 6.2.1(d)(i)].
  • Outside of a Transient Window, the error bands are bound by:
    1. Upper bound is +2% of the BASE= value provided [Source: Section 6.2.1(d)(i)].
    2. Lower bound is -2% of the BASE= value provided [Source: Section 6.2.1(d)(i)].

The BASE= values should be chosen using the following logic:

  • If the channel is active power, then BASE= should be your project's registered capacity [MW].
  • If the channel is reactive power, then BASE= should be your project's maximum reactive power [MVAr].
  • If the channel is voltage, then BASE= should be 1.

Example: Display error bands compliant with AEMO's Power System Modelling Guidelines on the reactive power subplot. Use a base of 40 MVAr. The channel should have two Transient Windows starting at 10 seconds and 20 seconds.

ADVBANDS, BASE=40, TAT=10, TAT=20

STYLE | Style scatter plot

STYLE, TYPE=

Applies a pre-built style to a scatter plot.

Arguments:

  • STYLE
  • TYPE (str): Style type. Options:
    • TYPE=5255IQ: Used for Australian NER S5.2.5.5 FRT iq injection studies. Centres the x-axis around V = 1 [p.u.] and the y-axis around Iq = 0 A [p.u.]. Sets axis label precision to 2 decimal places. Adds two shaded areas which correspond with the Automatic Access Standard (AAS) and Minimum Access Standard (MAS) as per S5.2.5.5 of the Australian NER.
    • TYPE=52511: Used for Australian NER S5.2.5.11 frequency control studies. Centres the x-axis around f= 50 [Hz] and the y-axis around P = 0 [MW]. Sets axis label precision to 0 decimal places. Adds two shaded areas which correspond with the areas which correspond with the Automatic Access Standard (AAS) as per S5.2.5.11 of the Australian NER.
    • TYPE=52513: Used for Australian NER S5.2.5.13 voltage droop characteristic studies. Centres the x-axis around V = 1 [p.u.] and the y-axis around Q = 0 [MVAr]. Overrides the x-axis limit to between V = 0.9 [p.u.] and V = 1.1 [p.u.]. Sets axis label precision to 2 decimal places.

Example: Apply Australian NER S5.2.5.13 styling to a scatter plot of a Q(V) droop curve.

STYLE, TYPE=52513
note

This Command may override manual x-axis/y-axis scaling.

GRADIENT | Gradient of scatter plot

GRADIENT, XMIN=, XMAX=, [INVERT=NO, VALSCALE=1, DISPLAY=YES, NAME=]

Calculates the gradient based on least-squares line of best fit for a given range of x-axis values. Horizontal sections (sections of zero or near-zero gradient) are ignored.

Arguments:

  • GRADIENT
  • XMIN (float): Starting x-axis value to begin calculating the gradient [unit depends on scatter plot units].
  • XMAX (float): Ending x-axis value to begin calculating the gradient [unit depends on scatter plot units].
  • INVERT (bool)[Optional]: If YES, the calculated gradient will be inverted (i.e. value = 1 / gradient). Defaults to NO. Inversion is applied to unscaled value prior to VALSCALE being applied.
  • VALSCALE (float)[Optional]: Multiplicative scaling factor applied to the output value (i.e. scaled_value = (unscaled_value)INVERT x VALSCALE). Default value is 1.
  • DISPLAY (str)[Optional]: Display the calculated gradient and line of best fit on the scatter plot. Defaults to DISPLAY=YES. Options:
    • DISPLAY=YES: Gradient and line of best fit will be displayed on the scatter plot.
    • DISPLAY=NO: Gradient and line of best fit will not be displayed on the scatter plot.
  • NAME (str)[Optional]: Outputs the gradient to an Internode Variable. Output names must be unique within a Node.

Example: Calculate the gradient between x=0.9 and x=1.1 and display the gradient and line of best fit on the scatter plot.

GRADIENT, XMIN=0.9, XMAX=1.1

DRAW_LINE | Draw an annotation line on a plot

DRAW_LINE, X1=, X2=, Y1=, Y2=, [TYPE=SOLID, COLOR=black, SHADE_UP=NO, SHADE_DOWN=NO, SHADE_LEFT=NO, SHADE_RIGHT=NO, SHADE_COLOR=black, LEGEND=]

Draws a line segment on the subplot between two specified points, with optional styling and shading. Useful for constructing visual representations of grid code requirements.

Arguments:

  • DRAW_LINE
  • X1 (float): First x-axis data point for line.
  • X2 (float): Second x-axis data point for line.
  • Y1 (float): First y-axis data point for line.
  • Y2 (float): Second y-axis data point for line.
  • TYPE (str): The type of line to draw. Defaults to TYPE=SOLID. Options:
    • TYPE=SOLID: A solid line.
    • TYPE=DASHED: A dashed line.
  • COLOR (str)[Optional]: Color of the line. Defaults to black. Line is not visisble if the color is white. Options:
  • SHADE_UP / SHADE_DOWN / SHADE_LEFT / SHADE_RIGHT (bool)[All optional]: Options:
    • =NO: Do not shade in this direction (default).
    • =YES: Shade in this direction infinitely.
    • =z(where z is a float): Shade the area z units in this direction.
  • SHADE_COLOR (str)[Optional]: Color of the shading. Defaults to black. Options:
  • LEGEND (str)[Optional]: Legend name for the line segment. DRAW_LINE Commands with the same LEGEND= Argument will be grouped together in the legend.
note
  • Annotations such as lines and shading are not considered when choosing axes limits as part of Auto scaling - only data is considered. If you want to ensure all annotations are shown on a plot, you may need to utilize manual scaling.
  • When using Arguments such as SHADE_DOWN=YES, the shading on the HTML interactive plots will be cropped to prevent shading to infinity.

Example: Draw a red dashed horizontal line across the entire subplot at y = 0.5.

DRAW_LINE, X1=-999, X2=999, Y1=0.5, Y2=0.5, TYPE=DASHED, COLOR=red

Example: Draw a green solid line between (P, Q) = (0, 0.395) and (P, Q) = (1, 0.395)

DRAW_LINE, X1=0, X2=1, Y1=0.395, Y2=0.395, COLOR=green

Example:

  • Draw a shaded area to represent the droop characteristic of a solar farm with a maximum reactive power of 80 MVAr, a droop characteristic of 5% and a target voltage of 1.04 p.u. This is a line which intersects (V, Q) = (1.09, -80) and (V, Q) = (0.99, 80).
  • Shade +/- 0.5% (0.005 pu on x-axis) around the (invisible) line
DRAW_LINE, X1=0.99, X2=1.09, Y1=80, Y2=-80, COLOR=white, SHADE_LEFT=0.005, SHADE_RIGHT=0.005, SHADE_COLOR=green

Advanced Parameters

No advanced parameters currently available for this Node.