From e6605abe873a5ce33add9ab7a2897177f114cdac Mon Sep 17 00:00:00 2001 From: m-mirz Date: Mon, 20 May 2024 11:02:50 +0000 Subject: [PATCH] deploy: f71d1a3e94d5e0ca2773acc5f4f0c53dac4ce9c8 --- docs/concepts/dyn-phasors/index.html | 4 ++-- docs/concepts/index.html | 2 +- docs/concepts/nodal-analysis/index.html | 6 +++--- docs/concepts/powerflow/index.html | 6 +++--- docs/contribution-guidelines/index.html | 6 +++--- docs/development/debugging/index.html | 6 +++--- docs/development/guidelines/index.html | 6 +++--- docs/development/index.html | 2 +- docs/examples/index.html | 2 +- docs/getting-started/build/index.html | 6 +++--- docs/getting-started/index.html | 2 +- docs/getting-started/install/index.html | 6 +++--- docs/getting-started/real-time/index.html | 6 +++--- docs/index.html | 2 +- docs/models/branches/index.html | 4 ++-- docs/models/index.html | 2 +- docs/models/induction-machine/index.html | 4 ++-- docs/models/power-electronics/index.html | 4 ++-- docs/models/rlc-elements/index.html | 4 ++-- docs/models/synchronous-generator/index.html | 6 +++--- docs/models/transformer/index.html | 6 +++--- docs/overview/architecture/index.html | 4 ++-- docs/overview/attributes/index.html | 4 ++-- docs/overview/index.html | 2 +- docs/overview/interfaces/index.html | 4 ++-- docs/overview/mnainterface/index.html | 4 ++-- docs/overview/scheduling/index.html | 6 +++--- docs/overview/subcomponents/index.html | 6 +++--- docs/reference/index.html | 6 +++--- docs/roadmap/index.html | 6 +++--- docs/tasks/add-model/index.html | 6 +++--- docs/tasks/create-simulation/index.html | 6 +++--- docs/tasks/index.html | 2 +- search/index.html | 2 +- sitemap.xml | 2 +- 35 files changed, 76 insertions(+), 76 deletions(-) diff --git a/docs/concepts/dyn-phasors/index.html b/docs/concepts/dyn-phasors/index.html index a487d9f0d9..8864984110 100644 --- a/docs/concepts/dyn-phasors/index.html +++ b/docs/concepts/dyn-phasors/index.html @@ -1,4 +1,4 @@ -Dynamic Phasors | DPsim +Dynamic Phasors | DPsim
© 2024 The DPsim Authors All Rights Reserved
+Futhermore, higher frequencies, for example, generated by power electronics can be modelled in a similar way.

Last modified 20.05.2024: Add new action using the build wrapper from sonar directly (#296) (f71d1a3)
\ No newline at end of file diff --git a/docs/concepts/index.html b/docs/concepts/index.html index 50fd2951be..e4e28d9444 100644 --- a/docs/concepts/index.html +++ b/docs/concepts/index.html @@ -7,5 +7,5 @@ Print entire section

Concepts

The book introduces the reader to the general concepts implemented in DPsim, a dynamic phasor (DP) real-time simulator, as well as the physical models of the power system components that are used in simulations. The first chapters give an overview of dynamic phasors and nodal analysis which are the two pillars of the main solver implemented in DPsim. The second part describes in detail what are the physical equations for each model and how they are transformed and implemented for dynamic phasor simulations and other domains that are also supported by DPsim.

In order to be able to run a dynamic simulation, DPsim also includes a loadflow solver to compute the initial state of the network if it is not included in the network data. -Besides DP simulations, DPsim also comes with EMT models for some components which are used as reference for testing the DP models.

+Besides DP simulations, DPsim also comes with EMT models for some components which are used as reference for testing the DP models.


Dynamic Phasors

Nodal Analysis

Powerflow

Last modified 20.05.2024: Add new action using the build wrapper from sonar directly (#296) (f71d1a3)
\ No newline at end of file diff --git a/docs/concepts/nodal-analysis/index.html b/docs/concepts/nodal-analysis/index.html index 9aeadc8e22..ec20360d41 100644 --- a/docs/concepts/nodal-analysis/index.html +++ b/docs/concepts/nodal-analysis/index.html @@ -1,7 +1,7 @@ Nodal Analysis | DPsim
© 2024 The DPsim Authors All Rights Reserved
+$$\boldsymbol{Y} \boldsymbol{v} = \boldsymbol{i}$$

Last modified 20.05.2024: Add new action using the build wrapper from sonar directly (#296) (f71d1a3)
\ No newline at end of file diff --git a/docs/concepts/powerflow/index.html b/docs/concepts/powerflow/index.html index 4cc228b98c..777e09b067 100644 --- a/docs/concepts/powerflow/index.html +++ b/docs/concepts/powerflow/index.html @@ -1,7 +1,7 @@ Powerflow | DPsim
+\end{align}$$

To sum up, the NR algorithm, for application to the power flow problem is:

  1. Set the iteration counter to $i=1$. Use the initial solution $V_{i} = 1 \angle 0^{\circ}$
  2. Compute the mismatch vector $\vec{f}({\vec{x}})$ using the power flow equations
  3. Perform the following stopping criterion tests:
    • If $\vert \Delta P_{i} \vert < \epsilon_{P}$ for all type PQ and PV buses and
    • If $\vert \Delta Q_{i} \vert < \epsilon_{Q}$ for all type PQ
    • Then go to step 6
    • Otherwise, go to step 4.
  4. Evaluate the Jacobian matrix $\textbf{J}^{(i)}$ and compute $\Delta \vec{x}^{(i)}$.
  5. Compute the update solution vector $\vec{x}^{(i+1)}$. Return to step 3.
  6. Stop.
Last modified 20.05.2024: Add new action using the build wrapper from sonar directly (#296) (f71d1a3)
\ No newline at end of file diff --git a/docs/contribution-guidelines/index.html b/docs/contribution-guidelines/index.html index 3fdc32b5df..0dbaa8ebf0 100644 --- a/docs/contribution-guidelines/index.html +++ b/docs/contribution-guidelines/index.html @@ -1,7 +1,7 @@ Contribution Guidelines | DPsim
© 2024 The DPsim Authors All Rights Reserved
+Please send us a pull request or get in touch with us via mail or slack if you would like to contribute.

Last modified 20.05.2024: Add new action using the build wrapper from sonar directly (#296) (f71d1a3)
\ No newline at end of file diff --git a/docs/development/debugging/index.html b/docs/development/debugging/index.html index 650925ceec..70f7b71099 100644 --- a/docs/development/debugging/index.html +++ b/docs/development/debugging/index.html @@ -1,7 +1,7 @@ Debugging | DPsim
© 2024 The DPsim Authors All Rights Reserved
+}
Last modified 20.05.2024: Add new action using the build wrapper from sonar directly (#296) (f71d1a3)
\ No newline at end of file diff --git a/docs/development/guidelines/index.html b/docs/development/guidelines/index.html index 17975d2053..e73ad54ada 100644 --- a/docs/development/guidelines/index.html +++ b/docs/development/guidelines/index.html @@ -2,9 +2,9 @@ Scaling of Voltages and Currents Voltage quantities are expressed either as phase-to-phase RMS values (denominated as RMS3PH) or as phase-to-ground peak values (denominated as PEAK1PH): Initialisation quantities (e.g. initialSingleVoltage of SimPowerComp) as RMS3PH values Simulation quantities in both SP and DP domain (e.g. mIntfVoltage of DP::Ph1::PiLine) as RMS3PH values Simulation quantities in the EMT domain (e.g. mIntfVoltage of EMT::Ph3::Transformer) as PEAK1PH values Current quantities are expressed either as RMS or as PEAK values:">

Guidelines

This is a summary of general guidelines for the development of DPsim.

Scaling of Voltages and Currents

Voltage quantities are expressed either as phase-to-phase RMS values (denominated as RMS3PH) or as phase-to-ground peak values (denominated as PEAK1PH):

  • Initialisation quantities (e.g. initialSingleVoltage of SimPowerComp) as RMS3PH values
  • Simulation quantities in both SP and DP domain (e.g. mIntfVoltage of DP::Ph1::PiLine) as RMS3PH values
  • Simulation quantities in the EMT domain (e.g. mIntfVoltage of EMT::Ph3::Transformer) as PEAK1PH values

Current quantities are expressed either as RMS or as PEAK values:

  • Simulation quantities in both SP and DP domain (e.g. mIntfCurrent of DP::Ph1::PiLine) as RMS values
  • Simulation quantities in the EMT domain (e.g. mIntfCurrent of EMT::Ph3::Transformer) as PEAK values

Logging

Debug or trace should be the default log level for information that might be nice to have but not necessary for every simulation case.

Calls to the logger that might occur during simulation must use spdlog macros, like SPDLOG_LOGGER_INFO.

Creating New Releases

Although DPsim currently does not have any conventions on versioning, the periodic creation of new versions can help to mark significant changes and to analyze new portions of code using tools like SonarCloud.

A new version of DPsim has to be indicated as follows:

  • Create a new tag with an increased version number
  • Update setup.cfg
  • Update CMakeLists.txt
  • Update sonar-project.properties

Due to the creation of a new tag, a new PyPi package will be deployed automatically. -To release an updated Docker image, the container workflow needs to be triggered manually.

© 2024 The DPsim Authors All Rights Reserved
+To release an updated Docker image, the container workflow needs to be triggered manually.

Last modified 20.05.2024: Add new action using the build wrapper from sonar directly (#296) (f71d1a3)
\ No newline at end of file diff --git a/docs/development/index.html b/docs/development/index.html index b8bff7c9e8..5d809726b5 100644 --- a/docs/development/index.html +++ b/docs/development/index.html @@ -8,5 +8,5 @@ Create child page Create documentation issue Create project issue - Print entire section

Development

How to extend DPsim.

Environment

We recommend the following development tools:

Please follow the build instructions to checkout your code and install the basic dependencies and tools.

+ Print entire section

Development

How to extend DPsim.

Environment

We recommend the following development tools:

Please follow the build instructions to checkout your code and install the basic dependencies and tools.

\ No newline at end of file diff --git a/docs/examples/index.html b/docs/examples/index.html index 83ea02677e..af0ed83d9a 100644 --- a/docs/examples/index.html +++ b/docs/examples/index.html @@ -8,5 +8,5 @@ Create child page Create documentation issue Create project issue - Print entire section

Examples

Here you can find some examples to get started with DPsim.

The DPsim repository includes examples that can be run locally.

+ Print entire section

Examples

Here you can find some examples to get started with DPsim.

The DPsim repository includes examples that can be run locally.

\ No newline at end of file diff --git a/docs/getting-started/build/index.html b/docs/getting-started/build/index.html index 2c1860668d..92df88b3df 100644 --- a/docs/getting-started/build/index.html +++ b/docs/getting-started/build/index.html @@ -6,11 +6,11 @@ $ git clone git@github.com:sogno-platform/dpsim.git or using https if you do not have an account $ git clone https://github.com/sogno-platform/dpsim.git In the repository, there is a Docker file with all required dependencies $ cd dpsim $ docker build -t sogno/dpsim:dev -f Packaging/Docker/Dockerfile.dev . Alternatively, the image can be pulled from DockerHub like so -$ docker pull sogno/dpsim:dev For OS specific instructions on how to install requirements, see the sections below.">Last modified 19.05.2024: Bump yaml from 2.1.3 to 2.2.2 in /docs/hugo (#215) (9bca0bd) +

The resulting documentation will be generated in Documentation/html/Cxx.

Last modified 20.05.2024: Add new action using the build wrapper from sonar directly (#296) (f71d1a3)
\ No newline at end of file diff --git a/docs/getting-started/index.html b/docs/getting-started/index.html index 124b26bbcf..a6851b8832 100644 --- a/docs/getting-started/index.html +++ b/docs/getting-started/index.html @@ -8,5 +8,5 @@ Create child page Create documentation issue Create project issue - Print entire section

Getting Started

How to install, build and run the DPsim project.
+ Print entire section

Getting Started

How to install, build and run the DPsim project.
\ No newline at end of file diff --git a/docs/getting-started/install/index.html b/docs/getting-started/install/index.html index 299b87b968..8879f3545f 100644 --- a/docs/getting-started/install/index.html +++ b/docs/getting-started/install/index.html @@ -2,9 +2,9 @@ Docker First, you need to install Docker. Then, you could either build a docker image by yourself as described in the build instructions or download a prepared image from Docker Hub as described in the following. To start a Jupyter session, run a DPsim Docker container">
© 2024 The DPsim Authors All Rights Reserved
+

From Source

To build and install DPsim from the source files, please refer to the build section.

Last modified 20.05.2024: Add new action using the build wrapper from sonar directly (#296) (f71d1a3)
\ No newline at end of file diff --git a/docs/getting-started/real-time/index.html b/docs/getting-started/real-time/index.html index 3075738d34..c7ba171f94 100644 --- a/docs/getting-started/real-time/index.html +++ b/docs/getting-started/real-time/index.html @@ -6,11 +6,11 @@ In principle, real-time execution is supported on all platforms. However, we recommend to use an optimized Linux installation. Operating System and Kernel For minimum latency several kernel and driver settings can be optimized. To get started, we recommend the Redhat Real-time Tuning Guide. -A PREEMPT_RT patched Linux kernel is recommended. Precompiled kernels for Fedora can be found here: http://ccrma.">Last modified 19.05.2024: Bump yaml from 2.1.3 to 2.2.2 in /docs/hugo (#215) (9bca0bd) +

More details:

Some proposals for the selection of appropriate server hardware:

Last modified 20.05.2024: Add new action using the build wrapper from sonar directly (#296) (f71d1a3)
\ No newline at end of file diff --git a/docs/index.html b/docs/index.html index 6e6f8aed2b..87814c2a27 100644 --- a/docs/index.html +++ b/docs/index.html @@ -4,5 +4,5 @@ Create child page Create documentation issue Create project issue - Print entire section

Documentation

DPsim is a solver library for dynamic power system simulation.

  • It supports both the electromagnetic transient (EMT) and dynamic phasor (DP) domain for dynamic simulation.
  • A powerflow solver is included for standalone usage or to initialize dynamic simulations.
  • It provides a Python module which can be embedded in any Python 3 application / scripts.
  • The simulation core is implemented in highly-efficient C++ code.
  • It supports real-time execution with time-steps down to 50 uS.
  • It can load models in the IEC61970 Common Information Model (CIM) / Common Grid Model Exchange Standard (CGMES) XML format.
  • It can be interfaced to a variety of protocols and interfaces via VILLASnode.

Connect

Using or want to use DPsim? Find out more here:

LF Energy Slack - Chat with other users and developers and get help in the #sogno or #sogno-dpsim channel.

You can also send a direct message to

  • Markus Mirz
  • Jan Dinkelbach
  • Steffen Vogel

Contribute

If you want to get more involved by contributing to DPsim, please send us a Pull Request on GitHub.

Publications

If you are using DPsim for your research, please cite one of the following papers in your publications:


Overview

Getting Started

How to install, build and run the DPsim project.

Concepts

Development

How to extend DPsim.

Models

Mathematical description of the models implemented in DPsim.

Core Tasks

Description of typical simulation and development tasks.

Examples

Here you can find some examples to get started with DPsim.

Roadmap

Reference

Low level reference docs for DPsim.

Contribution Guidelines

How to contribute to DPsim.

+ Print entire section

Documentation

DPsim is a solver library for dynamic power system simulation.

  • It supports both the electromagnetic transient (EMT) and dynamic phasor (DP) domain for dynamic simulation.
  • A powerflow solver is included for standalone usage or to initialize dynamic simulations.
  • It provides a Python module which can be embedded in any Python 3 application / scripts.
  • The simulation core is implemented in highly-efficient C++ code.
  • It supports real-time execution with time-steps down to 50 uS.
  • It can load models in the IEC61970 Common Information Model (CIM) / Common Grid Model Exchange Standard (CGMES) XML format.
  • It can be interfaced to a variety of protocols and interfaces via VILLASnode.

Connect

Using or want to use DPsim? Find out more here:

LF Energy Slack - Chat with other users and developers and get help in the #sogno or #sogno-dpsim channel.

You can also send a direct message to

  • Markus Mirz
  • Jan Dinkelbach
  • Steffen Vogel

Contribute

If you want to get more involved by contributing to DPsim, please send us a Pull Request on GitHub.

Publications

If you are using DPsim for your research, please cite one of the following papers in your publications:


Overview

Getting Started

How to install, build and run the DPsim project.

Concepts

Development

How to extend DPsim.

Models

Mathematical description of the models implemented in DPsim.

Core Tasks

Description of typical simulation and development tasks.

Examples

Here you can find some examples to get started with DPsim.

Roadmap

Reference

Low level reference docs for DPsim.

Contribution Guidelines

How to contribute to DPsim.

\ No newline at end of file diff --git a/docs/models/branches/index.html b/docs/models/branches/index.html index 36268c66f7..9452a2c0a6 100644 --- a/docs/models/branches/index.html +++ b/docs/models/branches/index.html @@ -1,8 +1,8 @@ -Branches | DPsim +Branches | DPsim
© 2024 The DPsim Authors All Rights Reserved
+ Print entire section

Branches

RX-Line

PI-Line

Transformer

\ No newline at end of file diff --git a/docs/models/index.html b/docs/models/index.html index 82d696c8e2..337d29b4a7 100644 --- a/docs/models/index.html +++ b/docs/models/index.html @@ -8,5 +8,5 @@ Create child page Create documentation issue Create project issue - Print entire section

Models

Mathematical description of the models implemented in DPsim.

The following models are currently available:

  • Dynamic phasors
    • inductor, capacitor, resistor
    • current and voltage source
    • load (PQ and Z type)
    • pi-line
    • transmission line (Bergeron)
    • synchronous generator dq-frame full order (Kundur, Krause)
    • inverter averaged
    • inverter with harmonics (comparable to switched model)
    • switch
  • EMT
    • inductor, capacitor, resistor
    • current and voltage source
    • load (Z type)
    • pi-line
    • transmission line (Bergeron)
    • synchronous generator dq-frame full order (Kundur, Krause)
    • inverter averaged
    • switch
+ Print entire section

Models

Mathematical description of the models implemented in DPsim.

The following models are currently available:

  • Dynamic phasors
    • inductor, capacitor, resistor
    • current and voltage source
    • load (PQ and Z type)
    • pi-line
    • transmission line (Bergeron)
    • synchronous generator dq-frame full order (Kundur, Krause)
    • inverter averaged
    • inverter with harmonics (comparable to switched model)
    • switch
  • EMT
    • inductor, capacitor, resistor
    • current and voltage source
    • load (Z type)
    • pi-line
    • transmission line (Bergeron)
    • synchronous generator dq-frame full order (Kundur, Krause)
    • inverter averaged
    • switch
\ No newline at end of file diff --git a/docs/models/induction-machine/index.html b/docs/models/induction-machine/index.html index 40d3b254b7..104af81749 100644 --- a/docs/models/induction-machine/index.html +++ b/docs/models/induction-machine/index.html @@ -1,8 +1,8 @@ -Induction Machine | DPsim +Induction Machine | DPsim
© 2024 The DPsim Authors All Rights Reserved
+ Print entire section
\ No newline at end of file diff --git a/docs/models/power-electronics/index.html b/docs/models/power-electronics/index.html index 379d6d6e9c..cb8392d7c4 100644 --- a/docs/models/power-electronics/index.html +++ b/docs/models/power-electronics/index.html @@ -1,8 +1,8 @@ -VS-Inverter | DPsim +VS-Inverter | DPsim
© 2024 The DPsim Authors All Rights Reserved
+ Print entire section
\ No newline at end of file diff --git a/docs/models/rlc-elements/index.html b/docs/models/rlc-elements/index.html index 63b9b93643..c212d2befc 100644 --- a/docs/models/rlc-elements/index.html +++ b/docs/models/rlc-elements/index.html @@ -1,4 +1,4 @@ -RLC-Elements | DPsim +RLC-Elements | DPsim
© 2024 The DPsim Authors All Rights Reserved
+$$

Last modified 20.05.2024: Add new action using the build wrapper from sonar directly (#296) (f71d1a3)
\ No newline at end of file diff --git a/docs/models/synchronous-generator/index.html b/docs/models/synchronous-generator/index.html index 198b0b2a73..cd69616890 100644 --- a/docs/models/synchronous-generator/index.html +++ b/docs/models/synchronous-generator/index.html @@ -2,9 +2,9 @@ the full order dq0 reference frame model (EMT, DP) [Kundur, Power system stability and control, 1994] and the much simpler transient stability model (DP) [Eremia, Handbook of Electrical Power System Dynamics, 2003] The machine model is interfaced to the nodal analysis network solver through a current source, which only affects the source vector and not the system matrix Wang2010. Basic Equations The equations of the stator and rotor voltages are">
+\end{align}$$

Transient Stability Model

Last modified 20.05.2024: Add new action using the build wrapper from sonar directly (#296) (f71d1a3)
\ No newline at end of file diff --git a/docs/models/transformer/index.html b/docs/models/transformer/index.html index 926c9b92f8..b7dffa82e8 100644 --- a/docs/models/transformer/index.html +++ b/docs/models/transformer/index.html @@ -4,10 +4,10 @@ $$\begin{array}{c|c c c} ~ & j & k & l \cr \hline j & & & -1 \cr k & & & T \cr l & 1 & -T & 0 \end{array} \begin{pmatrix} v_j \cr v_k \cr i_{l} \cr \end{pmatrix} = \begin{pmatrix} \cr \cr 0\cr \end{pmatrix} $$The variable $j$ denotes the high voltage node while $k$ is the low voltage node."> @@ -38,5 +38,5 @@ \end{pmatrix} $$

The variable $j$ denotes the high voltage node while $k$ is the low voltage node. $l$ indicates the inserted row and column to accommodate the relation between the two voltages at the ends of the transformer. The transformer ratio is defined as $T = V_{j} / V_{k}$. -A phase shift can be introduced if $T$ is considered as a complex number.

Last modified 19.05.2024: Bump yaml from 2.1.3 to 2.2.2 in /docs/hugo (#215) (9bca0bd)
+A phase shift can be introduced if $T$ is considered as a complex number.

Last modified 20.05.2024: Add new action using the build wrapper from sonar directly (#296) (f71d1a3)
\ No newline at end of file diff --git a/docs/overview/architecture/index.html b/docs/overview/architecture/index.html index 8febcee30d..4361361a56 100644 --- a/docs/overview/architecture/index.html +++ b/docs/overview/architecture/index.html @@ -1,4 +1,4 @@ -Architecture | DPsim +Architecture | DPsim
© 2024 The DPsim Authors All Rights Reserved
+Instead, the attribute system is used to define signal type connections.

Last modified 20.05.2024: Add new action using the build wrapper from sonar directly (#296) (f71d1a3)
\ No newline at end of file diff --git a/docs/overview/attributes/index.html b/docs/overview/attributes/index.html index 4806199164..1f29dd130f 100644 --- a/docs/overview/attributes/index.html +++ b/docs/overview/attributes/index.html @@ -1,4 +1,4 @@ -Attributes | DPsim +Attributes | DPsim
+Therefore, this task needs to be scheduled after the system solution that computes leftVector and before tasks that require the voltage and current interface vectors of the inductance, e.g. the task logging these values.

Last modified 20.05.2024: Add new action using the build wrapper from sonar directly (#296) (f71d1a3)
\ No newline at end of file diff --git a/docs/overview/index.html b/docs/overview/index.html index c17211e9b5..09c1eca814 100644 --- a/docs/overview/index.html +++ b/docs/overview/index.html @@ -6,5 +6,5 @@ Create project issue Print entire section

Overview

DPsim is a real-time capable power system simulator that supports dynamic phasor and electromagnetic transient simulation as well as continuous powerflow. It primarily targets large-scale scenarios on commercial off-the-sheld hardware that require deterministic time steps in the range of micro- to milliseconds.

DPsim supports the CIM format as native input for the description of electrical network topologies, component parameters and load flow data, which is used for initialization. For this purpose, CIM++ is integrated in DPsim. Users interact with the C++ simulation kernel via Python bindings, which can be used to script the execution, schedule events, change parameters and retrieve results. Supported by the availability of existing Python frameworks like Numpy, Pandas and Matplotlib, Python scripts have been proven as an easy and flexible way to codify the complete workflow of a simulation from modelling to analysis and plotting, for example in Jupyter notebooks.

The DPsim simulation kernel is implemented in C++ and uses the Eigen linear algebra library. By using a system programming language like C++ and a highly optimized math library, optimal performance and real-time execution can be guaranteed. -The integration into the VILLASframework allows DPsim to be used in large-scale co-simulations.

Licensing

The project is released under the terms of the MPL 2.0.

Where should I go next?

+The integration into the VILLASframework allows DPsim to be used in large-scale co-simulations.

Licensing

The project is released under the terms of the MPL 2.0.

Where should I go next?


Architecture

Attributes

Scheduling

Interfacing with the MNA Solver

Subcomponent Handling

Interfaces

Last modified 20.05.2024: Add new action using the build wrapper from sonar directly (#296) (f71d1a3)
\ No newline at end of file diff --git a/docs/overview/interfaces/index.html b/docs/overview/interfaces/index.html index 6e0abda4e8..911e617727 100644 --- a/docs/overview/interfaces/index.html +++ b/docs/overview/interfaces/index.html @@ -1,4 +1,4 @@ -Interfaces | DPsim +Interfaces | DPsim
© 2024 The DPsim Authors All Rights Reserved
+which have syncOnSimulationStart set, the Simulation::sync will be called before the first time step. This method will:

Note that this setting operates independently of the blockOnRead flag. This means that with both flags set, the simulation will block again after the synchronization at the start of the first time step until another value is received for the attribute in question.

Last modified 20.05.2024: Add new action using the build wrapper from sonar directly (#296) (f71d1a3)
\ No newline at end of file diff --git a/docs/overview/mnainterface/index.html b/docs/overview/mnainterface/index.html index cf1fe015bf..52d971f50c 100644 --- a/docs/overview/mnainterface/index.html +++ b/docs/overview/mnainterface/index.html @@ -1,4 +1,4 @@ -Interfacing with the MNA Solver | DPsim +Interfacing with the MNA Solver | DPsim
+

For all other MNA methods, the MNASimPowerComp base class will just call the associated mnaComp... method. For more details, take a look at the implementations in MNASimPowerComp.cpp.

Last modified 20.05.2024: Add new action using the build wrapper from sonar directly (#296) (f71d1a3)
\ No newline at end of file diff --git a/docs/overview/scheduling/index.html b/docs/overview/scheduling/index.html index 83a4c08b59..8c683707c7 100644 --- a/docs/overview/scheduling/index.html +++ b/docs/overview/scheduling/index.html @@ -1,7 +1,7 @@ Scheduling | DPsim

Scheduling

DPsim implements level scheduling. A task T4 that depends on data modified by task T1 is scheduled to the level following the level of task T1. In the simplest case, all tasks of a level have to be finished before tasks of the next level are started.

image

The dependencies of tasks on data are determined by referencing the attributes that are read or modified by the task. -The scheduler computes the schedule prior to the simulation from the task dependency graph resulting from the tasks’ data dependencies.

© 2024 The DPsim Authors All Rights Reserved
+The scheduler computes the schedule prior to the simulation from the task dependency graph resulting from the tasks’ data dependencies.

Last modified 20.05.2024: Add new action using the build wrapper from sonar directly (#296) (f71d1a3)
\ No newline at end of file diff --git a/docs/overview/subcomponents/index.html b/docs/overview/subcomponents/index.html index 3f09590c7b..df30b4adb3 100644 --- a/docs/overview/subcomponents/index.html +++ b/docs/overview/subcomponents/index.html @@ -1,7 +1,7 @@ Subcomponent Handling | DPsim
+
Last modified 20.05.2024: Add new action using the build wrapper from sonar directly (#296) (f71d1a3)
\ No newline at end of file diff --git a/docs/reference/index.html b/docs/reference/index.html index ed46d8c152..b9d121fc4b 100644 --- a/docs/reference/index.html +++ b/docs/reference/index.html @@ -1,7 +1,7 @@ Reference | DPsim
© 2024 The DPsim Authors All Rights Reserved
+It is helpful to understand the general structure of the C++ DPsim core components.

Last modified 20.05.2024: Add new action using the build wrapper from sonar directly (#296) (f71d1a3)
\ No newline at end of file diff --git a/docs/roadmap/index.html b/docs/roadmap/index.html index e1d8bb6f9b..450daa9754 100644 --- a/docs/roadmap/index.html +++ b/docs/roadmap/index.html @@ -2,9 +2,9 @@ You can also check the Issues List or the Pull Requests on GitHub. Under Development Solver CUDA sparse implementation improve online system matrix computation and refactorization to support nonlinear elements in network solution (NICSLU integration) merge DAE solver branch Interfaces reimplement python interface using pybind and expose more models / functionalities add python based examples using the VILLASnode interface support matpower / pypower format for static simulation Tests, Examples, CI convert most of the examples to Python and test them against reference results in CI convert more gitlab CI jobs to github actions add IEEE39 system to examples Models VBR generator model SVC add tap-change to transfomer Ideas Solver improve integration of diakoptics solver Interfaces implement CIM reader in Python using new pybind interface and cimpy library ">

Roadmap

Short-term planning for new features is done on the GitHub Project board.

You can also check the Issues List or the Pull Requests on GitHub.

Under Development

  • Solver
    • CUDA sparse implementation
    • improve online system matrix computation and refactorization to support nonlinear elements in network solution (NICSLU integration)
    • merge DAE solver branch
  • Interfaces
    • reimplement python interface using pybind and expose more models / functionalities
    • add python based examples using the VILLASnode interface
    • support matpower / pypower format for static simulation
  • Tests, Examples, CI
    • convert most of the examples to Python and test them against reference results in CI
    • convert more gitlab CI jobs to github actions
    • add IEEE39 system to examples
  • Models
    • VBR generator model
    • SVC
    • add tap-change to transfomer

Ideas

  • Solver
    • improve integration of diakoptics solver
  • Interfaces
    • implement CIM reader in Python using new pybind interface and cimpy library
© 2024 The DPsim Authors All Rights Reserved
+ Print entire section

Roadmap

Short-term planning for new features is done on the GitHub Project board.

You can also check the Issues List or the Pull Requests on GitHub.

Under Development

  • Solver
    • CUDA sparse implementation
    • improve online system matrix computation and refactorization to support nonlinear elements in network solution (NICSLU integration)
    • merge DAE solver branch
  • Interfaces
    • reimplement python interface using pybind and expose more models / functionalities
    • add python based examples using the VILLASnode interface
    • support matpower / pypower format for static simulation
  • Tests, Examples, CI
    • convert most of the examples to Python and test them against reference results in CI
    • convert more gitlab CI jobs to github actions
    • add IEEE39 system to examples
  • Models
    • VBR generator model
    • SVC
    • add tap-change to transfomer

Ideas

  • Solver
    • improve integration of diakoptics solver
  • Interfaces
    • implement CIM reader in Python using new pybind interface and cimpy library
\ No newline at end of file diff --git a/docs/tasks/add-model/index.html b/docs/tasks/add-model/index.html index a11c9471cc..4e85cc53e0 100644 --- a/docs/tasks/add-model/index.html +++ b/docs/tasks/add-model/index.html @@ -1,7 +1,7 @@ Add New Model | DPsim
© 2024 The DPsim Authors All Rights Reserved
+

Attributes

Each components has a list of attributes, which has to be specified when creating the components class.

TODO: explain attribute system

Tasks for Pre/Post-step Functions

TODO: add example task dependency graph

Adding the new Component to DPsim

After finishing the implementation of the new component, it needs to be added to the following files:

Last modified 20.05.2024: Add new action using the build wrapper from sonar directly (#296) (f71d1a3)
\ No newline at end of file diff --git a/docs/tasks/create-simulation/index.html b/docs/tasks/create-simulation/index.html index 52823cc366..5853557390 100644 --- a/docs/tasks/create-simulation/index.html +++ b/docs/tasks/create-simulation/index.html @@ -1,7 +1,7 @@ Create New Simulation | DPsim
© 2024 The DPsim Authors All Rights Reserved
+$ make my-scenario
Last modified 20.05.2024: Add new action using the build wrapper from sonar directly (#296) (f71d1a3)
\ No newline at end of file diff --git a/docs/tasks/index.html b/docs/tasks/index.html index ea020a74c3..280ab5841a 100644 --- a/docs/tasks/index.html +++ b/docs/tasks/index.html @@ -8,5 +8,5 @@ Create child page Create documentation issue Create project issue - Print entire section

Core Tasks

Description of typical simulation and development tasks.

Each task should give the user

  • The prerequisites for this task, if any (this can be specified at the top of a multi-task page if they’re the same for all the page’s tasks. “All these tasks assume that you understand….and that you have already….”).
  • What this task accomplishes.
  • Instructions for the task. If it involves editing a file, running a command, or writing code, provide code-formatted example snippets to show the user what to do! If there are multiple steps, provide them as a numbered list.
  • If appropriate, links to related concept, tutorial, or example pages.

Add New Model

Extending the simulator with new component or control models.

Create New Simulation

Using DPsim for a new simulation scenario.

+ Print entire section

Core Tasks

Description of typical simulation and development tasks.

Each task should give the user

  • The prerequisites for this task, if any (this can be specified at the top of a multi-task page if they’re the same for all the page’s tasks. “All these tasks assume that you understand….and that you have already….”).
  • What this task accomplishes.
  • Instructions for the task. If it involves editing a file, running a command, or writing code, provide code-formatted example snippets to show the user what to do! If there are multiple steps, provide them as a numbered list.
  • If appropriate, links to related concept, tutorial, or example pages.

Add New Model

Extending the simulator with new component or control models.

Create New Simulation

Using DPsim for a new simulation scenario.

\ No newline at end of file diff --git a/search/index.html b/search/index.html index 634e700a87..1c0a29a8f3 100644 --- a/search/index.html +++ b/search/index.html @@ -1,3 +1,3 @@ -Search Results | DPsim +Search Results | DPsim

Search Results

© 2024 The DPsim Authors All Rights Reserved
\ No newline at end of file diff --git a/sitemap.xml b/sitemap.xml index 682a55e095..e55b1eb1c6 100644 --- a/sitemap.xml +++ b/sitemap.xml @@ -1 +1 @@ -https://sogno-platform.github.io/dpsim/docs/overview/architecture/2024-05-19T21:47:39+02:00https://sogno-platform.github.io/dpsim/docs/overview/2024-05-19T21:47:39+02:00https://sogno-platform.github.io/dpsim/docs/getting-started/2024-05-19T21:47:39+02:00https://sogno-platform.github.io/dpsim/docs/overview/attributes/2024-05-19T21:47:39+02:00https://sogno-platform.github.io/dpsim/docs/overview/scheduling/2024-05-19T21:47:39+02:00https://sogno-platform.github.io/dpsim/docs/concepts/2024-05-19T21:47:39+02:00https://sogno-platform.github.io/dpsim/docs/development/2024-05-19T21:47:39+02:00https://sogno-platform.github.io/dpsim/docs/models/2024-05-19T21:47:39+02:00https://sogno-platform.github.io/dpsim/docs/tasks/add-model/2024-05-19T21:47:39+02:00https://sogno-platform.github.io/dpsim/docs/tasks/2024-05-19T21:47:39+02:00https://sogno-platform.github.io/dpsim/docs/examples/2024-05-19T21:47:39+02:00https://sogno-platform.github.io/dpsim/docs/roadmap/2024-05-19T21:47:39+02:00https://sogno-platform.github.io/dpsim/docs/reference/2024-05-19T21:47:39+02:00https://sogno-platform.github.io/dpsim/docs/contribution-guidelines/2024-05-19T21:47:39+02:00https://sogno-platform.github.io/dpsim/docs/2024-05-19T21:47:39+02:00https://sogno-platform.github.io/dpsim/docs/getting-started/build/2024-05-19T21:47:39+02:00https://sogno-platform.github.io/dpsim/docs/overview/mnainterface/2024-05-19T21:47:39+02:00https://sogno-platform.github.io/dpsim/docs/overview/subcomponents/2024-05-19T21:47:39+02:00https://sogno-platform.github.io/dpsim/docs/overview/interfaces/2024-05-19T21:47:39+02:00https://sogno-platform.github.io/dpsim/docs/models/transformer/2024-05-19T21:47:39+02:00https://sogno-platform.github.io/dpsim/docs/tasks/create-simulation/2024-05-19T21:47:39+02:00https://sogno-platform.github.io/dpsim/docs/models/branches/2024-05-19T21:47:39+02:00https://sogno-platform.github.io/dpsim/docs/concepts/dyn-phasors/2024-05-19T21:47:39+02:00https://sogno-platform.github.io/dpsim/docs/models/induction-machine/2024-05-19T21:47:39+02:00https://sogno-platform.github.io/dpsim/docs/concepts/nodal-analysis/2024-05-19T21:47:39+02:00https://sogno-platform.github.io/dpsim/docs/concepts/powerflow/2024-05-19T21:47:39+02:00https://sogno-platform.github.io/dpsim/docs/models/rlc-elements/2024-05-19T21:47:39+02:00https://sogno-platform.github.io/dpsim/docs/models/synchronous-generator/2024-05-19T21:47:39+02:00https://sogno-platform.github.io/dpsim/docs/models/power-electronics/2024-05-19T21:47:39+02:00https://sogno-platform.github.io/dpsim/docs/getting-started/install/2024-05-19T21:47:39+02:00https://sogno-platform.github.io/dpsim/docs/getting-started/real-time/2024-05-19T21:47:39+02:00https://sogno-platform.github.io/dpsim/categories/https://sogno-platform.github.io/dpsim/docs/development/debugging/2024-05-19T21:47:39+02:00https://sogno-platform.github.io/dpsim/2024-05-19T21:47:39+02:00https://sogno-platform.github.io/dpsim/docs/development/guidelines/2024-05-19T21:47:39+02:00https://sogno-platform.github.io/dpsim/search/2024-05-19T21:47:39+02:00https://sogno-platform.github.io/dpsim/tags/ \ No newline at end of file +https://sogno-platform.github.io/dpsim/docs/overview/architecture/2024-05-20T12:45:08+02:00https://sogno-platform.github.io/dpsim/docs/overview/2024-05-20T12:45:08+02:00https://sogno-platform.github.io/dpsim/docs/getting-started/2024-05-20T12:45:08+02:00https://sogno-platform.github.io/dpsim/docs/overview/attributes/2024-05-20T12:45:08+02:00https://sogno-platform.github.io/dpsim/docs/overview/scheduling/2024-05-20T12:45:08+02:00https://sogno-platform.github.io/dpsim/docs/concepts/2024-05-20T12:45:08+02:00https://sogno-platform.github.io/dpsim/docs/development/2024-05-20T12:45:08+02:00https://sogno-platform.github.io/dpsim/docs/models/2024-05-20T12:45:08+02:00https://sogno-platform.github.io/dpsim/docs/tasks/add-model/2024-05-20T12:45:08+02:00https://sogno-platform.github.io/dpsim/docs/tasks/2024-05-20T12:45:08+02:00https://sogno-platform.github.io/dpsim/docs/examples/2024-05-20T12:45:08+02:00https://sogno-platform.github.io/dpsim/docs/roadmap/2024-05-20T12:45:08+02:00https://sogno-platform.github.io/dpsim/docs/reference/2024-05-20T12:45:08+02:00https://sogno-platform.github.io/dpsim/docs/contribution-guidelines/2024-05-20T12:45:08+02:00https://sogno-platform.github.io/dpsim/docs/2024-05-20T12:45:08+02:00https://sogno-platform.github.io/dpsim/docs/getting-started/build/2024-05-20T12:45:08+02:00https://sogno-platform.github.io/dpsim/docs/overview/mnainterface/2024-05-20T12:45:08+02:00https://sogno-platform.github.io/dpsim/docs/overview/subcomponents/2024-05-20T12:45:08+02:00https://sogno-platform.github.io/dpsim/docs/overview/interfaces/2024-05-20T12:45:08+02:00https://sogno-platform.github.io/dpsim/docs/models/transformer/2024-05-20T12:45:08+02:00https://sogno-platform.github.io/dpsim/docs/tasks/create-simulation/2024-05-20T12:45:08+02:00https://sogno-platform.github.io/dpsim/docs/models/branches/2024-05-20T12:45:08+02:00https://sogno-platform.github.io/dpsim/docs/concepts/dyn-phasors/2024-05-20T12:45:08+02:00https://sogno-platform.github.io/dpsim/docs/models/induction-machine/2024-05-20T12:45:08+02:00https://sogno-platform.github.io/dpsim/docs/concepts/nodal-analysis/2024-05-20T12:45:08+02:00https://sogno-platform.github.io/dpsim/docs/concepts/powerflow/2024-05-20T12:45:08+02:00https://sogno-platform.github.io/dpsim/docs/models/rlc-elements/2024-05-20T12:45:08+02:00https://sogno-platform.github.io/dpsim/docs/models/synchronous-generator/2024-05-20T12:45:08+02:00https://sogno-platform.github.io/dpsim/docs/models/power-electronics/2024-05-20T12:45:08+02:00https://sogno-platform.github.io/dpsim/docs/getting-started/install/2024-05-20T12:45:08+02:00https://sogno-platform.github.io/dpsim/docs/getting-started/real-time/2024-05-20T12:45:08+02:00https://sogno-platform.github.io/dpsim/categories/https://sogno-platform.github.io/dpsim/docs/development/debugging/2024-05-20T12:45:08+02:00https://sogno-platform.github.io/dpsim/2024-05-20T12:45:08+02:00https://sogno-platform.github.io/dpsim/docs/development/guidelines/2024-05-20T12:45:08+02:00https://sogno-platform.github.io/dpsim/search/2024-05-20T12:45:08+02:00https://sogno-platform.github.io/dpsim/tags/ \ No newline at end of file