From e13148619c0229fd169b69b55b6fbd6fc28eec08 Mon Sep 17 00:00:00 2001 From: m-mirz Date: Tue, 27 Feb 2024 11:16:46 +0000 Subject: [PATCH] deploy: b17546ac5aa83588b5f854f5f4321d6986ed2935 --- 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 330dcf2134..27c6749d69 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 27.02.2024: Use clang-format to format the whole codebase (#278) (b17546a)
\ No newline at end of file diff --git a/docs/concepts/index.html b/docs/concepts/index.html index 6501afc566..e13ced6c35 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 27.02.2024: Use clang-format to format the whole codebase (#278) (b17546a)
\ No newline at end of file diff --git a/docs/concepts/nodal-analysis/index.html b/docs/concepts/nodal-analysis/index.html index e88ef8bdff..cbb3a724a0 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 27.02.2024: Use clang-format to format the whole codebase (#278) (b17546a)
\ No newline at end of file diff --git a/docs/concepts/powerflow/index.html b/docs/concepts/powerflow/index.html index 50c2a36ff8..582e38ba24 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 27.02.2024: Use clang-format to format the whole codebase (#278) (b17546a)
\ No newline at end of file diff --git a/docs/contribution-guidelines/index.html b/docs/contribution-guidelines/index.html index bedc930889..64277ac00b 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 27.02.2024: Use clang-format to format the whole codebase (#278) (b17546a)
\ No newline at end of file diff --git a/docs/development/debugging/index.html b/docs/development/debugging/index.html index ee24256950..9ac656d3fc 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 27.02.2024: Use clang-format to format the whole codebase (#278) (b17546a)
\ No newline at end of file diff --git a/docs/development/guidelines/index.html b/docs/development/guidelines/index.html index 0fc3d72cf9..04fd3f7582 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 27.02.2024: Use clang-format to format the whole codebase (#278) (b17546a)
\ No newline at end of file diff --git a/docs/development/index.html b/docs/development/index.html index 5cf1dfc421..0285ad5699 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 2f9eac1aac..87f21449c5 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 75e913cfe8..629728b024 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 25.01.2024: Change python to python3 to run the building for pypi (#272) (e0ae9d9) +

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

Last modified 27.02.2024: Use clang-format to format the whole codebase (#278) (b17546a)
\ No newline at end of file diff --git a/docs/getting-started/index.html b/docs/getting-started/index.html index ad3c68e0ae..839f3300a5 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 25f6a75402..f3346d1d27 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 27.02.2024: Use clang-format to format the whole codebase (#278) (b17546a)
\ 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 af2b20ce1f..773542b7a0 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 25.01.2024: Change python to python3 to run the building for pypi (#272) (e0ae9d9) +

More details:

Some proposals for the selection of appropriate server hardware:

Last modified 27.02.2024: Use clang-format to format the whole codebase (#278) (b17546a)
\ No newline at end of file diff --git a/docs/index.html b/docs/index.html index b2509ee205..05435206d3 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 e5632e42c4..f579943943 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 a7c466801f..6950351dc0 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 f9b9cc08c9..ee8eb2a162 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

Induction Machine

\ No newline at end of file diff --git a/docs/models/power-electronics/index.html b/docs/models/power-electronics/index.html index ce1cf9bd8c..dfa2152b47 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 282c753ce8..3f05e889e1 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 27.02.2024: Use clang-format to format the whole codebase (#278) (b17546a)
\ No newline at end of file diff --git a/docs/models/synchronous-generator/index.html b/docs/models/synchronous-generator/index.html index dbcac1c9a6..ac9bd790a2 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 27.02.2024: Use clang-format to format the whole codebase (#278) (b17546a)
\ No newline at end of file diff --git a/docs/models/transformer/index.html b/docs/models/transformer/index.html index f7d17121b2..db5a1d02eb 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 25.01.2024: Change python to python3 to run the building for pypi (#272) (e0ae9d9)
+A phase shift can be introduced if $T$ is considered as a complex number.

Last modified 27.02.2024: Use clang-format to format the whole codebase (#278) (b17546a)
\ No newline at end of file diff --git a/docs/overview/architecture/index.html b/docs/overview/architecture/index.html index 64b5c78b9c..bffe7c34a6 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 27.02.2024: Use clang-format to format the whole codebase (#278) (b17546a)
\ No newline at end of file diff --git a/docs/overview/attributes/index.html b/docs/overview/attributes/index.html index ebde3cdafd..9de34af267 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 27.02.2024: Use clang-format to format the whole codebase (#278) (b17546a)
\ No newline at end of file diff --git a/docs/overview/index.html b/docs/overview/index.html index 262955d80b..7ffd446fba 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 27.02.2024: Use clang-format to format the whole codebase (#278) (b17546a)
\ No newline at end of file diff --git a/docs/overview/interfaces/index.html b/docs/overview/interfaces/index.html index dfc4e512d4..fc6ffe6732 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 27.02.2024: Use clang-format to format the whole codebase (#278) (b17546a)
\ No newline at end of file diff --git a/docs/overview/mnainterface/index.html b/docs/overview/mnainterface/index.html index 66fc11384f..de3e59e39f 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 27.02.2024: Use clang-format to format the whole codebase (#278) (b17546a)
\ No newline at end of file diff --git a/docs/overview/scheduling/index.html b/docs/overview/scheduling/index.html index 4cda11df67..675d8145e9 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 27.02.2024: Use clang-format to format the whole codebase (#278) (b17546a)
\ No newline at end of file diff --git a/docs/overview/subcomponents/index.html b/docs/overview/subcomponents/index.html index df4cc5f737..ee8bf25f9b 100644 --- a/docs/overview/subcomponents/index.html +++ b/docs/overview/subcomponents/index.html @@ -1,7 +1,7 @@ Subcomponent Handling | DPsim
+
Last modified 27.02.2024: Use clang-format to format the whole codebase (#278) (b17546a)
\ No newline at end of file diff --git a/docs/reference/index.html b/docs/reference/index.html index 30bdd50cad..6346d7efc3 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 27.02.2024: Use clang-format to format the whole codebase (#278) (b17546a)
\ No newline at end of file diff --git a/docs/roadmap/index.html b/docs/roadmap/index.html index 45470b5173..ab28b39d9f 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 35bfe751ef..cd9395e41b 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 27.02.2024: Use clang-format to format the whole codebase (#278) (b17546a)
\ No newline at end of file diff --git a/docs/tasks/create-simulation/index.html b/docs/tasks/create-simulation/index.html index 6db27e9c9f..9414137ad4 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 27.02.2024: Use clang-format to format the whole codebase (#278) (b17546a)
\ No newline at end of file diff --git a/docs/tasks/index.html b/docs/tasks/index.html index f5186b2a4f..0d0f938f56 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 bfed1cdeb1..775579329e 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 c6e191da8c..9beca1c72a 100644 --- a/sitemap.xml +++ b/sitemap.xml @@ -1 +1 @@ -https://sogno-platform.github.io/dpsim/docs/overview/architecture/2024-01-25T16:54:21+01:00https://sogno-platform.github.io/dpsim/docs/overview/2024-01-25T16:54:21+01:00https://sogno-platform.github.io/dpsim/docs/getting-started/2024-01-25T16:54:21+01:00https://sogno-platform.github.io/dpsim/docs/overview/attributes/2024-01-25T16:54:21+01:00https://sogno-platform.github.io/dpsim/docs/overview/scheduling/2024-01-25T16:54:21+01:00https://sogno-platform.github.io/dpsim/docs/concepts/2024-01-25T16:54:21+01:00https://sogno-platform.github.io/dpsim/docs/development/2024-01-25T16:54:21+01:00https://sogno-platform.github.io/dpsim/docs/models/2024-01-25T16:54:21+01:00https://sogno-platform.github.io/dpsim/docs/tasks/add-model/2024-01-25T16:54:21+01:00https://sogno-platform.github.io/dpsim/docs/tasks/2024-01-25T16:54:21+01:00https://sogno-platform.github.io/dpsim/docs/examples/2024-01-25T16:54:21+01:00https://sogno-platform.github.io/dpsim/docs/roadmap/2024-01-25T16:54:21+01:00https://sogno-platform.github.io/dpsim/docs/reference/2024-01-25T16:54:21+01:00https://sogno-platform.github.io/dpsim/docs/contribution-guidelines/2024-01-25T16:54:21+01:00https://sogno-platform.github.io/dpsim/docs/2024-01-25T16:54:21+01:00https://sogno-platform.github.io/dpsim/docs/getting-started/build/2024-01-25T16:54:21+01:00https://sogno-platform.github.io/dpsim/docs/overview/mnainterface/2024-01-25T16:54:21+01:00https://sogno-platform.github.io/dpsim/docs/overview/subcomponents/2024-01-25T16:54:21+01:00https://sogno-platform.github.io/dpsim/docs/overview/interfaces/2024-01-25T16:54:21+01:00https://sogno-platform.github.io/dpsim/docs/models/transformer/2024-01-25T16:54:21+01:00https://sogno-platform.github.io/dpsim/docs/tasks/create-simulation/2024-01-25T16:54:21+01:00https://sogno-platform.github.io/dpsim/docs/models/branches/2024-01-25T16:54:21+01:00https://sogno-platform.github.io/dpsim/docs/concepts/dyn-phasors/2024-01-25T16:54:21+01:00https://sogno-platform.github.io/dpsim/docs/models/induction-machine/2024-01-25T16:54:21+01:00https://sogno-platform.github.io/dpsim/docs/concepts/nodal-analysis/2024-01-25T16:54:21+01:00https://sogno-platform.github.io/dpsim/docs/concepts/powerflow/2024-01-25T16:54:21+01:00https://sogno-platform.github.io/dpsim/docs/models/rlc-elements/2024-01-25T16:54:21+01:00https://sogno-platform.github.io/dpsim/docs/models/synchronous-generator/2024-01-25T16:54:21+01:00https://sogno-platform.github.io/dpsim/docs/models/power-electronics/2024-01-25T16:54:21+01:00https://sogno-platform.github.io/dpsim/docs/getting-started/install/2024-01-25T16:54:21+01:00https://sogno-platform.github.io/dpsim/docs/getting-started/real-time/2024-01-25T16:54:21+01:00https://sogno-platform.github.io/dpsim/categories/https://sogno-platform.github.io/dpsim/docs/development/debugging/2024-01-25T16:54:21+01:00https://sogno-platform.github.io/dpsim/2024-01-25T16:54:21+01:00https://sogno-platform.github.io/dpsim/docs/development/guidelines/2024-01-25T16:54:21+01:00https://sogno-platform.github.io/dpsim/search/2024-01-25T16:54:21+01:00https://sogno-platform.github.io/dpsim/tags/ \ No newline at end of file +https://sogno-platform.github.io/dpsim/docs/overview/architecture/2024-02-27T12:10:27+01:00https://sogno-platform.github.io/dpsim/docs/overview/2024-02-27T12:10:27+01:00https://sogno-platform.github.io/dpsim/docs/getting-started/2024-02-27T12:10:27+01:00https://sogno-platform.github.io/dpsim/docs/overview/attributes/2024-02-27T12:10:27+01:00https://sogno-platform.github.io/dpsim/docs/overview/scheduling/2024-02-27T12:10:27+01:00https://sogno-platform.github.io/dpsim/docs/concepts/2024-02-27T12:10:27+01:00https://sogno-platform.github.io/dpsim/docs/development/2024-02-27T12:10:27+01:00https://sogno-platform.github.io/dpsim/docs/models/2024-02-27T12:10:27+01:00https://sogno-platform.github.io/dpsim/docs/tasks/add-model/2024-02-27T12:10:27+01:00https://sogno-platform.github.io/dpsim/docs/tasks/2024-02-27T12:10:27+01:00https://sogno-platform.github.io/dpsim/docs/examples/2024-02-27T12:10:27+01:00https://sogno-platform.github.io/dpsim/docs/roadmap/2024-02-27T12:10:27+01:00https://sogno-platform.github.io/dpsim/docs/reference/2024-02-27T12:10:27+01:00https://sogno-platform.github.io/dpsim/docs/contribution-guidelines/2024-02-27T12:10:27+01:00https://sogno-platform.github.io/dpsim/docs/2024-02-27T12:10:27+01:00https://sogno-platform.github.io/dpsim/docs/getting-started/build/2024-02-27T12:10:27+01:00https://sogno-platform.github.io/dpsim/docs/overview/mnainterface/2024-02-27T12:10:27+01:00https://sogno-platform.github.io/dpsim/docs/overview/subcomponents/2024-02-27T12:10:27+01:00https://sogno-platform.github.io/dpsim/docs/overview/interfaces/2024-02-27T12:10:27+01:00https://sogno-platform.github.io/dpsim/docs/models/transformer/2024-02-27T12:10:27+01:00https://sogno-platform.github.io/dpsim/docs/tasks/create-simulation/2024-02-27T12:10:27+01:00https://sogno-platform.github.io/dpsim/docs/models/branches/2024-02-27T12:10:27+01:00https://sogno-platform.github.io/dpsim/docs/concepts/dyn-phasors/2024-02-27T12:10:27+01:00https://sogno-platform.github.io/dpsim/docs/models/induction-machine/2024-02-27T12:10:27+01:00https://sogno-platform.github.io/dpsim/docs/concepts/nodal-analysis/2024-02-27T12:10:27+01:00https://sogno-platform.github.io/dpsim/docs/concepts/powerflow/2024-02-27T12:10:27+01:00https://sogno-platform.github.io/dpsim/docs/models/rlc-elements/2024-02-27T12:10:27+01:00https://sogno-platform.github.io/dpsim/docs/models/synchronous-generator/2024-02-27T12:10:27+01:00https://sogno-platform.github.io/dpsim/docs/models/power-electronics/2024-02-27T12:10:27+01:00https://sogno-platform.github.io/dpsim/docs/getting-started/install/2024-02-27T12:10:27+01:00https://sogno-platform.github.io/dpsim/docs/getting-started/real-time/2024-02-27T12:10:27+01:00https://sogno-platform.github.io/dpsim/categories/https://sogno-platform.github.io/dpsim/docs/development/debugging/2024-02-27T12:10:27+01:00https://sogno-platform.github.io/dpsim/2024-02-27T12:10:27+01:00https://sogno-platform.github.io/dpsim/docs/development/guidelines/2024-02-27T12:10:27+01:00https://sogno-platform.github.io/dpsim/search/2024-02-27T12:10:27+01:00https://sogno-platform.github.io/dpsim/tags/ \ No newline at end of file