Skip to content

Solver Settings

Solver settings control the behavior of the RAMSES simulation engine. They are specified as records starting with $ in the data files.

Sampling time for observed variables:

$PLOT_STEP time(s) ;

Display profiling results after simulation:

$DISP_PROF T/F ;

Refresh interval for runtime observable plots (requires Gnuplot):

$GP_REFRESH_RATE time_interval(s) ;

Enable or disable launching Gnuplot for runtime observables. When set to F, the runtime observable data are still written to file but Gnuplot is never called; useful for batch/headless runs:

$CALL_GP T/F ;

Default: T.

Select whether runtime observables are displayed in an interactive terminal window or written to PNG image files:

$GP_MODE term/png ;

Default: term.

Internal memory reserved for storing observables during simulation:

$OBS_BUFFER_SIZE size(GB) ;

Default: 8 GB. Set this to less than half of your available RAM for large simulations.

Selects the sparse linear solver used for Jacobian factorization:

$SPARSE_SOLVER name ;
  • KLU: SuiteSparse KLU solver (default)
  • ma41: HSL MA41 solver

Sets the global base power of the system:

$S_BASE BASE(MVA) ;
FNOM Frequency(Hz) ;
$OMEGA_REF SYN/COI ;
  • SYN: Synchronous reference frame (suitable for short-term simulations)
  • COI: Center of inertia reference (suitable for long-term simulations)

See Reference Frames for details.

$NEWTON_TOLER NETWORK_TOLERANCE INJ_RELATIVE_TOLERANCE INJ_ABSOLUTE_TOLERANCE ;

Default values: 1e-03, 5e-04, 5e-04.

Values used to compute Jacobian matrices of injectors numerically:

$FIN_DIFFER proportional_value absolute_value ;

Disable partial Jacobian updates (force full update at every step):

$FULL_UPDATE T/F ;

Activate/deactivate skipping of converged injectors in Newton iterations:

$SKIP_CONV T/F ;
$MAX_FAULT value ;

Branches whose series impedance magnitude is below this threshold have their resistance/reactance floored to it, to avoid a singular network admittance matrix:

$ZMIN value(pu) ;

Default: 1e-05.

$SCHEME DE/IN ;
  • DE: Decomposed scheme
  • IN: Integrated scheme
$LATENCY OBS_TIME_WINDOW(s) EARLY_STOP(T/F) ;

Apply the latency technique at the subnetwork level: subnetworks whose currents change less than the latency tolerance are not recomputed at each step. Only active when subnetworks exist:

$LAT_SUBNETS T/F ;

Default: F.

$T_LOAD_REST time(s) ;

Update network elements (admittances) with frequency:

Network frequency update model
$NET_FREQ_UPD T/F ;
$NB_THREADS Number ;
$OMP STA/DYN/GUI chunk ;
OptionDescription
STAStatic assignment (better for NUMA architectures)
DYNDynamic assignment (better for UMA architectures)
GUIGuided assignment

chunk is the number of consecutive injectors assigned to each thread.

Load a compiled user-model library (MDL file) at startup, making its models available to the simulation (Windows/Intel builds only):

$BASE_MDL filename ;

Provide the licensee e-mail and the 64-character license key. A valid key unlocks the full version, removing the free-tier limit of 1000 buses:

$LICENSE email license_key ;
# System base
$S_BASE 100. ;
FNOM 50. ;
# Reference frame (COI for long-term)
$OMEGA_REF COI ;
# Solution scheme
$SCHEME IN ;
# Solver tolerances
$NEWTON_TOLER 1e-03 5e-04 5e-04 ;
# Plotting
$PLOT_STEP 0.01 ;
# Parallel computing
$NB_THREADS 2 ;
$OMP DYN 50 ;
# Acceleration features
$SKIP_CONV T ;
$FULL_UPDATE F ;