Troubleshooting
Many warnings from validation
Validation of a run config might result in a number of warnings and errors. Trident allows running a simulation with any number of warnings, but blocks should any errors be encountered. Errors must be fixed and the run config must be validated again.
Errors are due to missing information that might result in crashes or infeasable problems. Warnings can be changes in the input data, missing data that can be solved by using a fallback or skipping a feature, modelling problems such as circular water systems etc.
Example of warnings:
Clamping negative values to 0
Pumps with efficiency that causes an infinite energy loop
Missing reservoir volume-to-MASL curves.
While these warnings might have an effect on the results, the simulation will still run without problems.
Missing price/capacities for market steps in the 400 id range
Validation errors with this specific form means that there is missing time series for capacity and price for price elastic load market steps.
ERROR:trident.engine.Session:[error][run_config_name] ModuleExhange: missing time series: market_step_capacity/a1/ms401_a1
A possible solution to this problem is to check if the ltm2trident tool has been run with the option --no_load_price_elasticity_from_enmd. If so, the tool attempts to load price elastic steps from the dataset rather than loading the information from the .enmd files in order to generate them when running the simulation. Run the ltm2trident tool again without this option. (Remember to force with -f if the old files haven’t been deleted first.)
Missing capabilities
When running the validation, errors such as:
"Some requirements were unfulfilled: ... (this is likely due to a missing module in the run config, or a missing capability in the included modules)"
Most often occur due to a missing capability in the run config. Please make sure that all the “base” modules are added to the run config. Using the json format, the section looks like this:
"modules": [
{
"name": "Load",
"uuid": "49fed101-3623-4fe6-87f5-b06987854b7f"
},
{
"name": "Master problem",
"uuid": "d7b50fb2-5216-4e40-89d8-2101db8d2978"
},
{
"name": "Processing",
"uuid": "721af43f-4623-11ec-80ea-b89a2a807342"
}
]
The master problem and the processing module is neccessary for all run configs. Additionally, the load module and a module that sets up power production such as the exchange module is neccessary for a simulation to make sense. Please refer to the Core module API and the Extras module API for the complete list of modules supplied with Trident.
Data already exists when loading input data
Errors on the form:
"DataStore::add_data: Time series ... already exists in the data store"
Indicate that the data already exists in the data store which the script is trying to save to. Check the run folder that Trident tries to run in for data stores with the same id as set up in the run config. If such a store already exists, either delete this file or skip loading the input files if no updates has been made.
Parallell run only runs a single scenario at a time
Currently, the only way to run Trident in parallell is to use the trident-mpi package. Please check the MPI documentation to ensure that MPI is up and running before starting a run.