API Reference
Core components
This section describes the core components of Trident, which is neccessary to understand to use the system.
Engine
The main interface through which applications and users will be using to interact with Trident. Its API provide a complete set of functions to executing, managing and fetching the result of simulations.
SimulationConfig
SimulationConfig specifies for the period one wishes to simulate, the length of the decision period (i.e. The horizon of the LP problem), and which scenario to use for scenario depended input.
LogicalModel
A representation of the physical model (e.g. Reservoirs, hydro plants, areas etc.) we are simulating.
Trident supports loading a LogicalModel from a LTMV10 dataset, through the LTMV10ModelLoader
LogicalModelView
A view object which provides additional utility functions for reading and modifying the logical model.
DataSet
Contains serial data (TimeSeries, XYTimeSeries, and XYCurves), which is used by the modules to populate the LP problem.
Trident supports loading a DataSet from a LTMV10 dataset, through the LTMV10Loader
Time series can also be provided to the modules through an alternative DataProvider. See https://gitlab.com/sintef-energy/ngltm/partner/trident-shyft for an example of this.
RunConfig
Contains all the information required to perform a run, by containing either a reference or an instance of the components mentioned above. Also speficies which reports to generate, log level etc.
Python API
- Engine
- Modules
- Domain
AreaBatteryBatteryEndValueTypeChpThermalPlantDataSetDynamicResponseTypeExponentialPriceElasticityFuelTypeHydraulicJunctionHydroPlantInterpolationTypeJLObjectLoadPartLogLevelLogicalModelLogicalModelViewMarketStepModuleSelectorNDArrayNDArrayTSPiecewiseLinearPriceElasticityPowerConnectionPressureTunnelPriceUnitPumpReservoirReservoirTargetTypeReservoirVolumeRestrictionTypeRunConfigScenarioSpecSimulationConfigSolverAlgorithmSolarParkSolverConfigTemperatureCorrectionThermalPlantTimeDeltaTimePointTimeSeriesWaterwayWaterwayTypeWindParkXYCurveXYTimeSeries
- Loaders
- Util