MFEM  v4.1.0 Finite element discretization library
mfem::SIASolver Class Referenceabstract

#include <ode.hpp>

Inheritance diagram for mfem::SIASolver:
[legend]
Collaboration diagram for mfem::SIASolver:
[legend]

## Public Member Functions

SIASolver ()

virtual void Init (Operator &P, TimeDependentOperator &F)

virtual void Step (Vector &q, Vector &p, double &t, double &dt)=0

virtual void Run (Vector &q, Vector &p, double &t, double &dt, double tf)

virtual ~SIASolver ()

## Protected Attributes

TimeDependentOperatorF_

OperatorP_

Vector dp_

Vector dq_

## Detailed Description

The SIASolver class is based on the Symplectic Integration Algorithm described in "A Symplectic Integration Algorithm for Separable Hamiltonian Functions" by J. Candy and W. Rozmus, Journal of Computational Physics, Vol. 92, pages 230-256 (1991). The Symplectic Integration Algorithm (SIA) is designed for systems of first order ODEs derived from a Hamiltonian. H(q,p,t) = T(p) + V(q,t) Which leads to the equations: dq/dt = dT/dp dp/dt = -dV/dq In the integrator the operators P and F are defined to be: P = dT/dp F = -dV/dq

Definition at line 471 of file ode.hpp.

## Constructor & Destructor Documentation

 mfem::SIASolver::SIASolver ( )
inline

Definition at line 474 of file ode.hpp.

 virtual mfem::SIASolver::~SIASolver ( )
inlinevirtual

Definition at line 485 of file ode.hpp.

## Member Function Documentation

 void mfem::SIASolver::Init ( Operator & P, TimeDependentOperator & F )
virtual

Definition at line 713 of file ode.cpp.

 virtual void mfem::SIASolver::Run ( Vector & q, Vector & p, double & t, double & dt, double tf )
inlinevirtual

Definition at line 480 of file ode.hpp.

 virtual void mfem::SIASolver::Step ( Vector & q, Vector & p, double & t, double & dt )
pure virtual

## Member Data Documentation

 Vector mfem::SIASolver::dp_
mutableprotected

Definition at line 491 of file ode.hpp.

 Vector mfem::SIASolver::dq_
mutableprotected

Definition at line 492 of file ode.hpp.

 TimeDependentOperator* mfem::SIASolver::F_
protected

Definition at line 488 of file ode.hpp.

 Operator* mfem::SIASolver::P_
protected

Definition at line 489 of file ode.hpp.

The documentation for this class was generated from the following files: