TDcoSim 2.0.0rc1
Pre-releaseRelease 2.0.0rc1
Highlights
- Major changes to JSON configuration file and full access to TDcoSim features using the tdcosim command.
- Support for dynamic current injection models (fast_der) on the D side and DER_A model on T side.
- Performance improvements, batch processing of simulation runs, and option to use high performance ODE solvers.
- Dashboard for visualizing results and additional methods for data analytics
- Release on PyPI and updated user guide.
Major Features and Improvements
-
Performance has been improved for post-processing and saving of data at the end of co-simulation.
-
Dynamic current injection models have been added. These models reduce solution time by 10X to 100X when compared to the detailed DER models. These can be used by specifying
fast_derin theDEROdeSolverfield of the config file. -
Option to use high performance ODE solvers available in DifferentialEquations.jl has been added for detailed DER models. These solvers reduce time by almost 2 to 10X when compared to the SciPy ODE solvers for a given PV penetration level. These can be selected by selecting
diffeqpyin theDEROdeSolverfield. -
All TDcoSim user features (generate template, get template help, add user preferences, run simulation and launch dashboard) can be accessed through the tdcosim command line tool.
-
Example JSON configuration files for static or dynamic co-simulation may be generated using the
templatefeature. -
Co-simulation may be started using the
runfeature. -
Co-simulation results may be visualized using a browser based interactive dashboard through the
dashboardfeature. -
Path to PSS/E installation may be set using
setconfig -p "path/to/psse" -
defaultLoadTypefield has been added tosimulationConfigto replace the T side load. The available options are ZIP load (zip) and composite load models (cmld). -
cmldParametershas been added topsseConfigto specify properties of composite load models.simID,outputDir, andscenarioIDfields have been added tooutputConfig. -
A
logsfield has been added to the config file. Logs generated during co-simulation will be stored in /tdcosim/logs/. Log level can be set usinglevel(10, 20, 30, or 40). Error messages at feeder level can be enabled by settingsaveSubprocessOutErrto True. -
excludenodefiled has been added todefaultFeederConfig. It is used to specify the list of T side nodes that will be excluded from being connected with a distribution feeder model. -
Added additional analysis methods in the
DataAnalyticsmodule:compute_stability_time,lag_finder,instances_of_violation -
Added additional plotting methods in the
DataAnalyticsmodule:plot_omega,plot_t_vmag,plot_t_delayed_voltage_recovery -
Support for additional detailed DER model types:
SolarPVDERThreePhaseNumba,SolarPVDERSinglePhaseConstantVdc. -
User guide has been updated and following new chapters have been added: Using the configuration template, Data Visualization and Analytics, and Performance guide. Examples have been updated and config files for the examples are included in /tdcosim/examples.
Behavioral and Breaking Changes
- run_time_domain.py and run_qsts.py are no longer supported for running co-simulation and were removed. The functionality has been replaced with
tdcosim run -c "config.json"from command line. - The examples folder in root was relocated to /tdcosim/examples. Older examples were removed and new examples were added.
- The SampleData folder in root was relocated to /tdcosim/data.
- The output folder in root was removed.
- The der_config.json was moved to /tdcosim/config/detailed_der_default.json
- Default configuration will now correctly configure all the buses which were not specified through
manualFeederConfigusing the configuration provided throughdefaultFeederConfig. - If the T side node is not a load bus, distribution feeders won't be connected to it and an error will be produced.
- The folder to store the results needs to be specified through the
outputandsimIDfield in the configuration file.
Bug Fixes
- Fixed numerous bugs related to performance and logging.
backward-incompatible Changes
- Not compatible with pvder 0.5.0. and below.
- Not compatible with configuration files used in V1.2.0
Thanks to our Contributors
This release contains contributions from Karthikeyan Balasubramaniam @karthikbalasu, Sang-iL Yim @yim0331, Siby Jose Plathottam @sibyjackgrove, Kumarsinh Jhala @Kumarsinh and Shijia Zhao at Argonne National Laboratory.
We thank suggestions from Ning Kang (INL), Rojan Bhattarai (INL), NERC System Planning Impacts from DER Working Group (SPIDERWG), and Reliability First Corporation.