Disturbances
Disturbances define the sequence of events during a dynamic simulation. Disturbances need to have a continuity. All disturbance commands follow the format:
time(s) COMMAND parametersContinue Solver
Section titled “Continue Solver”Defines solver settings. Must be the first line of the disturbance file:
time(s) CONTINUE SOLVER disc_meth max_h(s) min_h(s) latency(pu) upd_overDiscretization method (disc_meth):
TR: TrapezoidalBE: Backward EulerBD: BDF2
Jacobian update override (upd_over):
ALL: Force a full Jacobian refactorisationNET: Force a refactorisation of the network JacobianABL: Force an update of the injector Jacobian at every busIBL: Force nothing in addition, but keep the bus Jacobian updates already requested by the other disturbances applied at this time instantNOT: Override, discarding even those; the bus Jacobian flags are restored to their values on entry
Example:
0.000 CONTINUE SOLVER BD 0.0200 0.001 0. ALLContinue Display
Section titled “Continue Display”Changes the sampling time step used for the output of observed variables from that point of the simulation onwards:
time(s) CONTINUE DISPLAY new_plot_step(s)Example, reducing the output sampling to one point per second after s:
20.000 CONTINUE DISPLAY 1.0Signals the end of the simulation. Must be the last line:
time(s) STOPExample:
100.000 STOPTrip Line (BREAKER BRANCH)
Section titled “Trip Line (BREAKER BRANCH)”Open or close breakers of a line:
time(s) BREAKER BRANCH name_of_line orig_break(0/1) extrem_break(0/1)Example, opening both ends of a line at s:
10.000 BREAKER BRANCH 1044-4032 0 0Trip Machine / Injector
Section titled “Trip Machine / Injector”Open or close the breaker of a synchronous machine or injector:
time(s) BREAKER SYNC_MACH name_of_machine breaker(0/1)time(s) BREAKER INJ name_of_injector breaker(0/1)Example:
10.000 BREAKER INJ L_11 0Trip Two-Port
Section titled “Trip Two-Port”Disconnect a two-port component (e.g. an HVDC link) at both ends. Only opening is supported, so the breaker status must be 0:
time(s) BREAKER TWOP name_of_twoport 0Example:
10.000 BREAKER TWOP hvdc1 0Three-Phase Short-Circuit (Impedance)
Section titled “Three-Phase Short-Circuit (Impedance)”Apply a three-phase fault with specified impedance to ground. This requires two commands, one to apply the fault and one to clear it.
time(s) FAULT BUS name_of_bus rfault [xfault]time(s) CLEAR BUS name_of_busThe fault has an impedance of rfault + j*xfault to ground:
rfaultandxfaultare in Ω- If
xfaultis omitted, a fully resistive fault is assumed
Example, 100 ms bolted fault:
10.000 FAULT BUS 1044 0. 0.10.100 CLEAR BUS 1044Three-Phase Short-Circuit (Voltage)
Section titled “Three-Phase Short-Circuit (Voltage)”Apply a fault where the post-fault voltage is specified. Internally, RAMSES creates a temporary shunt admittance at the faulted bus and iteratively adjusts it using a secant method until the bus voltage matches the target value to within . The injected currents are and . Up to 10 correction steps are attempted; if convergence is not reached, the simulation halts with an error message.
time(s) VFAULT BUS name_of_bus Voltage_after_fault(pu)time(s) CLEAR BUS name_of_busExample, 100 ms fault with 0.5 pu residual voltage:
10.000 VFAULT BUS 1044 0.510.100 CLEAR BUS 1044Change Parameters (CHGPRM)
Section titled “Change Parameters (CHGPRM)”Modify model parameters during the simulation.
Branch Parameters
Section titled “Branch Parameters”time(s) CHGPRM BRANCH name_of_line MAGN/PHAN ±incrementShunt Parameters
Section titled “Shunt Parameters”time(s) CHGPRM SHUNT name_of_shunt QNOM ±incrementThe increment is in MVAr and is per-unitized internally by RAMSES.
Exciter Parameters
Section titled “Exciter Parameters”time(s) CHGPRM EXC name_of_equipment name_of_parameter ±increment [MVAr/%] duration(s)Units: No unit = absolute, MVAr = per-unitized by , % = percentage of original.
Duration: 0 = step change, > 0 = ramp over given duration.
Example, ramp voltage setpoint by +10% over 10 seconds:
10.000 CHGPRM EXC g1 V0 +10 % 10This means the parameter V0 of the exciter of synchronous machine g1 is ramped by +10% between 10 and 20 seconds.
Torque Controller Parameters
Section titled “Torque Controller Parameters”time(s) CHGPRM TOR name_of_equipment name_of_parameter ±increment [MW/%] duration(s)Units: No unit = absolute, MW = per-unitized by of the machine, % = percentage of original value.
Duration: 0 = step change, > 0 = ramp over given duration.
Example, ramp active power setpoint by +1 MW over 10 seconds:
10.000 CHGPRM TOR g1 P0 +1 MW 10This means the parameter P0 of the torque controller of synchronous machine g1 is ramped by +1 MW between 10 and 20 seconds.
Injector / Two-Port / Discrete Controller Parameters
Section titled “Injector / Two-Port / Discrete Controller Parameters”time(s) CHGPRM INJ/TWOP/DCTL name_of_equipment name_of_parameter ±increment [MW/MVAr/%/SETP] duration(s)Units: No unit = absolute, MW or MVAr = per-unitized using the system’s , % = percentage of original value, SETP = the increment is the new setpoint value.
Duration: 0 = step change, > 0 = ramp over given duration.
Example, load increase of 50% active and 30% reactive over 60 seconds:
10.000 CHGPRM INJ L_11 P0 +50 % 6010.000 CHGPRM INJ L_11 Q0 +30 % 60This means the parameter P0 (resp. Q0) of the injector L_11 is ramped by +50% (resp. 30%) between 10 and 70 seconds. If L_11 is a load model, this simulates a load increase.
Export Jacobian Matrix
Section titled “Export Jacobian Matrix”time(s) JAC 'name_of_filename'Required solver settings:
$OMEGA_REF SYN ;$SCHEME IN ;Export Load Flow Snapshot
Section titled “Export Load Flow Snapshot”Takes a snapshot and exports the load flow at a specific time:
time(s) LFRESV 'name_of_filename'Next Steps
Section titled “Next Steps”- Solver Settings, Configure time steps, tolerances, and parallelism
- PyRAMSES Examples. See complete simulation workflows in Python