Tools for solving constrained dynamical systems
Author JuliaIBPM
0 Stars
Updated Last
10 Months Ago
Started In
June 2020


Tools for solving constrained dynamical systems

Documentation Build Status
docs Build Status Build status codecov

This package contains several tools for solving and advancing (large-scale) dynamical systems with constraints. These systems generically have the form

du/dt = A u - B1T f + r1(u,t)

B2 u = r2(u,t)

u(0) = u0

where u is a state vector, A is a linear operator with an associated matrix exponential (integrating factor), and f is a constraint force vector (i.e., Lagrange multipliers).

Some of the key components of this package are

  • Tools for solving linear algebra problems with constraints and associated Lagrange multipliers, known generically as saddle point systems. The sizes of these systems might be large.

  • Time integrators that can incorporate these constraints, such as half-explicit Runge-Kutta (HERK) and integrating factor Runge-Kutta (IFRK), or their combination (IF-HERK).

It should be noted that the DifferentialEquations.jl package provides a nearly comprehensive set of tools for differential equations. However, the current package provides functionality for constrained systems.

The package is agnostic to the type of systems, and might arise from, e.g., fluid dynamics or rigid-body mechanics.

Used By Packages