dot-raw-to-saint

Overview

The dot-raw to SAInt translation plugin translates power system data from .raw files to SAInt format.

Versions Compatible with SAInt 3.9

  • 0.4.24 (188 MB)
  • 0.4.20
  • 0.4.19

Versions Compatible with SAInt 3.8

  • 0.4.12

Versions Compatible with SAInt 3.7

  • v0.3.3
  • v0.1.0

Screenshot:

  • Multi-Component Translation: Supports translation of major power system components:

    • ZONE
    • BUS
    • GENERATOR
    • LOAD
    • TRANSFORMER
    • BRANCH
    • SWITCHING DEVICE
    • FIXED AND SWITCHED SHUNT DEVICES
  • Version Compatibility: Supports DOT-RAW file versions 33, 34 and 35.

  • Validation & Reporting: Automatically generates comparison plots to validate translation accuracy.

  • Synthetic Coordinates: Optionally generates synthetic BUS coordinates for visualization in SAInt GUI.

Inputs

  • Path to RAW File
    Full path to the *.raw file.

Advanced Inputs (Optional)

  • Generate Synthetic Coordinates
    Option to generate synthetic BUS coordinates for visualization in SAInt. Defaults to False.

  • Translated Network Name
    Name for the translated SAInt network. Default is "DOT_RAW_NETWORK".

  • SAInt API DLL Path
    Full path to the SAInt API DLL. Defaults to {SAIntInstallPath}//SAInt-API.dll.

  • Output Directory
    Full path to the directory where the translated SAInt network, scenario, and condition files will be saved.
    If the network converges, validation plots will also be saved here. Defaults to {SAIntDocPath}//PluginOutput.

  • Parse Raw File
    Set to True to parse the .raw data into readable CSV files. Defaults to True.

  • Translate Data
    Set to True to convert parsed data into SAInt-compatible Excel import files. Defaults to True.

  • Generate Reference JSON
    Set to True to generate a reference.json file mapping source identifiers to translated SAInt objects. Defaults to True.

  • Create SAInt MRD
    Set to True to generate native SAInt network and scenario files (MRD). Defaults to True.

  • Execute SteadyACPF Scenario
    Set to True to execute the SAInt SteadyACPF scenario for validation. Only relevant when Create SAInt MRD is True. Defaults to True.

  • Generate Translation Report
    Set to True to generate an HTML translation report summarising pipeline stage status. Defaults to True.

  • Save Files
    Set to True to save all generated files. Defaults to True.

  • Write JSON Network
    Set to True to write the SAInt network as a JSON file alongside the Excel import file. Note: this is slower for large networks. Defaults to False.

Example with IEEE 118 Bus System

The following is an example of running the plugin with the IEEE 118 Bus System.

What You Will Need

To start, please download:

  • The latest version of SAInt.
  • The IEEE 118-Bus System .raw dataset, downloadable from: here
  • This DOT-RAW to SAInt plugin. Unzip it and note the location of the download.
dot-raw-to-saint-plugin/
β”œβ”€β”€ main.exe
β”œβ”€β”€ form.yaml
└── (other files)

Running the PlugIn

  • Open SAInt GUI
  • Go To Tools β†’ Plugin β†’ Select (select the folder containing the plugin)
  • Execute via Tools β†’ Plugin β†’ Execute

Fill out the form:

  • Path to RAW File: ./path to your .raw file
  • Generate Synthetic Coordinates (Advanced Input): True
  • Output Directory (Advanced Input): ./path to your output directory
  • Translated Network Name (Advanced Input): IEEE_118

Understanding the Output

In the specified output directory, the following files and folders will be created:

output_folder/
β”œβ”€β”€ IEEE_118.enet                    # SAInt network file
β”œβ”€β”€ acpf.esce                        # Scenario file
β”œβ”€β”€ acpf.econ                        # Scenario condition file
β”œβ”€β”€ network.xlsx                     # SAInt-compatible network import file
β”œβ”€β”€ info.log                         # Translation operation logs
β”œβ”€β”€ translation_report.html          # Translation report (pipeline stage status)
β”œβ”€β”€ parsed/                          # Parsed .raw data
β”‚   β”œβ”€β”€ BUS.csv
β”‚   β”œβ”€β”€ BRANCH.csv
β”‚   β”œβ”€β”€ GENERATOR.csv
β”‚   β”œβ”€β”€ LOAD.csv
β”‚   └── ...
β”œβ”€β”€ plots/                           # Individual validation plots
β”‚   β”œβ”€β”€ voltage_comparison_plot.html
β”‚   β”œβ”€β”€ branch_power_flow_comparison_plot.html
β”‚   β”œβ”€β”€ generator_power_comparison_plot.html
β”‚   β”œβ”€β”€ load_power_comparison_plot.html
β”‚   β”œβ”€β”€ shunt_power_comparison_plot.html
β”‚   β”œβ”€β”€ voltage_difference_violin_plot.html
β”‚   β”œβ”€β”€ branch_power_flow_difference_violin_plot.html
β”‚   β”œβ”€β”€ generator_power_difference_violin_plot.html
β”‚   β”œβ”€β”€ load_power_difference_violin_plot.html
β”‚   └── shunt_power_difference_violin_plot.html
└── validation_data/                 # Validation comparison data
    └── voltage_comparison.csv

File Descriptions

File/Folder Description
{network_name}.enet SAInt native network file
acpf.esce SAInt scenario file for AC power flow simulation
acpf.econ SAInt scenario condition file (created only if simulation succeeds)
network.xlsx SAInt-compatible Excel network import file
info.log Log file recording translation operations
translation_report.html HTML translation report with pipeline stage status and captured logs
parsed/ Folder containing .csv representations of parsed .raw sections
plots/ Folder containing individual interactive HTML validation plots
validation_data/ Folder containing comparison data exported as CSV files

Changelog

v0.4.24

  • Load Translation: Added support for constant current and constant impedance load components by converting them to constant-power equivalents.
  • Pipeline Controls:
    • Split the previous execute_scenarios stage into separate Import and Execute_Scenario stages.
  • Substation Data: Added handling for substation-level data during translation.
  • Switched Shunts:
    • Fixed switched shunts with MODSW = 0 so they are translated with CTRLMODE = FIXED.
    • Updated switched-shunt active-power validation references to include the voltage-squared calculation.
  • Transformer and Base Voltage Fixes: Corrected transformer RATEDV and electrical node BaseV handling.
  • Plugin UI: Enforced consistent table row heights.

v0.4.20

  • Constant Reference File Generation: Fixed bug preventing reference file from being generated on failed simulations.

v0.4.19

  • Validation Accuracy: Migrated validation to translation-validator and fixed comparison issues for switched shunt active power, load-as-generator reactive power, and shunt reactive power.
  • Reference JSON:
    • Added reference.json generation during translation.
    • Added missing result and reference properties for translated objects.
    • Normalized dot-raw voltage angles in generated reference data.
  • Emergency Ratings: Added translation of RATE2 and RATE3 values for lines and transformers.
  • Shunts and FACTS Devices:
    • Translated shunt FACTS devices as switched shunts.
    • Aligned switched shunt translation with the updated SAInt functionality.
    • Preserved line charging B values on DUMMY_TRF_BRANCH entries and created transformer/dummy-transformer shunts from positive charging values.
  • Generator and Load Limits: Corrected QMAX/QMIN translation and generator control-mode handling for reactive power limits.
  • Transformer Improvements:
    • Aligned tap setting derivation from dot-raw data.
    • Corrected transformer rated voltage derivation.
    • Updated source identifiers for virtual star nodes.
  • HVDC and Grouping: Fixed duplicate EGRP creation for a single HVDC device and aligned HVDC group/member naming.
  • Metadata:
    • Saved the dot-raw-to-saint version in ENET metadata.
    • Added relevant dot-raw source information to reference properties and ENET metadata.
  • Plugin UI and Reports: Updated the plugin form and translation report to meet current UI/UX standards.

v0.4.12

  • HVDC Support: Added support for VSC DC and Two Terminal DC devices with updated implementation to use two prosumers
  • Switched Shunts: Full support for switched shunt devices translation
  • Enhanced Information Fields:
    • Info3 column now contains dot-raw object type for unique identification
    • Info property populated with relevant information from dot-raw
    • Identifying information moved to Info3 field
  • Negative Generator Translation: Generators with negative β€œPB” values are now correctly translated into SAInt EPS
  • Line Shunt Translation: Line G/B ij values are now translated to additional shunt devices
  • Dummy Transformers: Added support for dummy transformers to accommodate unequal BaseVs from .raw files
  • Intertie Groups: SAInt EGRPs are now created for interties between .raw Areas
  • Transformer Improvements:
    • Translation logic updated to use star configuration for 3-winding transformers
    • TRANSFORMER ANG properties translated to SAInt TRF PHISETDEF
  • Validation & Reporting:
    • HTML translation report
    • Standardized pipeline structure with notifications for zero impedance lines during validation
    • Dot-raw results integrated into SAInt constants
  • Remote Voltage Control: Support for remote node voltage control for generators
  • Default Naming: Updated default naming convention
  • Zone Reference Nodes: ReferenceNodeName for zone objects now contains reference node name
  • Duplicate Zones: Fixed duplicate zones being generated for each Area
  • Duplicate Columns: Fixed duplicate inservice columns for lines
  • Duplicate Shunt Devices: Resolved issue with duplicate shunt devices
  • Transformer Ratings: Dummy transformers now capture correct ratings
  • EPS Power Limits: Fixed negative PGMAXDEF for EPS (now correctly set as PDMINDEF)
  • Intertie Groups: Transformers are now correctly captured in intertie groups
  • Three-Winding Transformers:
    • Fixed star-node RatedV issues
    • Updated equivalencing logic
    • Fixed GGDEF/BBDEF values (now properly set for all windings, not just winding 1)
  • Impedance Translation:
    • Fixed transformer impedance translation when CZ = 3
    • Updated CZ = 2 implementation
    • Use bus BaseV when nominal voltage is 0 for converting TRF impedances
  • Control Logic:
    • Fixed RemoteName field handling when COD{1,2,3} = 0 (No Control)
    • Updated CM = 1 and CM = 2 implementations
  • Power Flow Settings:
    • Updated PFSETDEF implementation
    • Fixed EPS PDMAXDEF values being set to negative
  • Bus Handling: Fixed Bus IDE = 4 being ignored
  • Polarity Issues:
    • Fixed polarity handling for branch shunt conductance (G)
    • Fixed polarity handling for GENERATOR (PB) value
  • Validation Plots: Removed out of service branches from branch comparison plots
  • Q Comparison: Fixed Q comparison for SHT (shunt devices)
  • Parsing: Fixed incorrect parsing when properties contain commas and slashes within values
  • SAInt Compatibility: Removed β€œPress any key to continue” prompt (no longer supported by SAInt)

v0.3.0

  • System data parsing: Properties like version, network frequency are now automatically parsed.
  • Version 34 support: Files with version 34 can now be translated!
  • Group Translation Logic: SAInt EGRP objects are now created from raw zone objects!
  • Bug Fixes: Various bug fixes like fixing translation failures for switched shunt objects.

v0.1.0

  • Robust Translation: Translate from dot-raw files to SAInt files.
  • Automated Validation: Perform basic validation to ensure accurate translation.
1 Like