Template Struct SystemModelData

Struct Documentation

template<typename real_type = double, typename index_type = size_t>
struct SystemModelData

A structure containing all of the data needed to reproduce a system model

In particular, this structure is modeled after the grid dynamics case format, which is described within INPUT_FORMAT.md

Public Members

std::optional<unsigned short> format_version

The version of the grid dynamics case format this system model was parsed from

If not relevant (i.e. if not working in the context of the case format), this will not contain a value

std::optional<unsigned short> format_revision

The revision of the grid dynamics case format this system model was parsed from

If not relevant (i.e. not working in the context of the case format), this will not contain a value

std::string case_name

A name for the case this model describes.

std::optional<std::string> case_date_time

A date and time relevant to the case being described by this model

TODO: this should probably use the chrono header instead of just being a string

std::string case_description

A description of the case this model describes.

std::string case_comments

Additional comments about the case being described by this model.

RealT freq_base = {60.0}

System frequency base in Hz.

RealT va_base = {100.0e6}

System power base in VA.

std::vector<BusDataT> bus

Buses within the model.

Todo:

Create an enum identifying all available component models and consolidate components in a single container.

  • Convert string to enum

  • Associate component type to its corresponding enum

  • Consolidate components to allow writing to them using the enum as the argument

std::vector<BusToSignalAdapterDataT> adapter

bus-to-signal adapters within the model

std::vector<BranchDataT> branch

Branches within the model.

std::vector<BusFaultDataT> bus_fault

Bus faults within the model.

std::vector<GenrouDataT> genrou

GENROU instances within the model.

std::vector<GensalDataT> gensal

GENSAL instances within the model.

std::vector<GenClassicalDataT> genclassical

Classical generator instances within the model.

std::vector<LoadDataT> load

Loads within the model.

std::vector<LoadZIPDataT> loadzip

Loads within the model.

std::vector<Tgov1DataT> gov

Governors within the model.

std::vector<Ieeet1DataT> exciter

Exciters within the model.

std::vector<SexsPtiDataT> sexspti

SEXS-PTI exciters within the model.

std::vector<IeeestDataT> stabilizer

Stabilizers within the model.

std::vector<SignalDataT> signal

Signal nodes.

std::vector<MonitorSinkSpec> monitor_sink

Monitor sink specs.