Chombo + EB + MF  3.2
Public Member Functions | Static Public Attributes | Protected Attributes | List of all members
RK4DenseOutput< Soln, Rhs, EXOP > Class Template Reference

#include <RK4DenseOutput.H>

Public Member Functions

 RK4DenseOutput ()
 
void define (const Soln &a_state, Real a_dt, bool a_denseOutput=false)
 
void advance (Real a_time, Soln &a_state)
 
void denseOutputCoefs (Vector< Rhs * > &a_interpCoefs)
 
void resetDt (Real a_dt)
 
void start0end1 (bool a_start0, bool a_end1)
 
EXOP & getEXOP ()
 
bool isDefined () const
 
bool hasDenseOutput () const
 

Static Public Attributes

static const int s_nStages = 4
 Runge-Kutta coefficients. More...
 
static const Real s_c [s_nStages] = { 0.0, 0.5, 0.5, 1.0 }
 
static const Real s_a [s_nStages][s_nStages]
 
static const Real s_b [s_nStages]
 
static const int s_nDenseCoefs = 3
 
static const Real s_bstar [s_nDenseCoefs][s_nStages]
 

Protected Attributes

bool m_isDefined
 
bool m_denseOutput
 
bool m_hasDenseOutput
 
Real m_dt
 
Real m_time
 
Soln m_phi [s_nStages]
 
Rhs m_rhs
 
Rhs m_denseCoefs [s_nDenseCoefs]
 
Rhs m_kE
 
EXOP m_opEx
 

Detailed Description

template<class Soln, class Rhs, class EXOP>
class RK4DenseOutput< Soln, Rhs, EXOP >

This is a standard RK4 implementation that also includes dense output coefficients

Constructor & Destructor Documentation

template<class Soln , class Rhs , class EXOP >
RK4DenseOutput< Soln, Rhs, EXOP >::RK4DenseOutput ( )
inline

Member Function Documentation

template<class Soln , class Rhs , class EXOP >
void RK4DenseOutput< Soln, Rhs, EXOP >::define ( const Soln &  a_state,
Real  a_dt,
bool  a_denseOutput = false 
)

References CH_TIMERS.

template<class Soln , class Rhs , class EXOP >
void RK4DenseOutput< Soln, Rhs, EXOP >::advance ( Real  a_time,
Soln &  a_state 
)
template<class Soln , class Rhs , class EXOP >
void RK4DenseOutput< Soln, Rhs, EXOP >::denseOutputCoefs ( Vector< Rhs * > &  a_interpCoefs)
template<class Soln , class Rhs , class EXOP >
void RK4DenseOutput< Soln, Rhs, EXOP >::resetDt ( Real  a_dt)

References Abs(), and CH_assert.

template<class Soln , class Rhs , class EXOP >
void RK4DenseOutput< Soln, Rhs, EXOP >::start0end1 ( bool  a_start0,
bool  a_end1 
)

References CH_assert.

template<class Soln , class Rhs , class EXOP >
EXOP & RK4DenseOutput< Soln, Rhs, EXOP >::getEXOP ( )
template<class Soln , class Rhs , class EXOP >
bool RK4DenseOutput< Soln, Rhs, EXOP >::isDefined ( ) const
inline
template<class Soln , class Rhs , class EXOP >
bool RK4DenseOutput< Soln, Rhs, EXOP >::hasDenseOutput ( ) const
inline

Member Data Documentation

template<class Soln , class Rhs , class EXOP >
const int RK4DenseOutput< Soln, Rhs, EXOP >::s_nStages = 4
static

Runge-Kutta coefficients.

template<class Soln , class Rhs , class EXOP >
const Real RK4DenseOutput< Soln, Rhs, EXOP >::s_c = { 0.0, 0.5, 0.5, 1.0 }
static
template<class Soln , class Rhs , class EXOP >
const Real RK4DenseOutput< Soln, Rhs, EXOP >::s_a
static
Initial value:
= {
{0., 0., 0., 0.},
{0.5, 0., 0., 0.},
{0., 0.5, 0., 0.},
{0., 0., 1.0, 0.},
}
template<class Soln , class Rhs , class EXOP >
const Real RK4DenseOutput< Soln, Rhs, EXOP >::s_b
static
Initial value:
=
{0.16666666666666667, 0.33333333333333333, 0.33333333333333333, 0.16666666666666667}
template<class Soln , class Rhs , class EXOP >
const int RK4DenseOutput< Soln, Rhs, EXOP >::s_nDenseCoefs = 3
static
template<class Soln , class Rhs , class EXOP >
const Real RK4DenseOutput< Soln, Rhs, EXOP >::s_bstar
static
Initial value:
= {
{1.0, 0., 0., 0.},
{-1.5, 1.0, 1.0, -0.5},
{0.66666666666666667, -0.66666666666666667, -0.66666666666666667, 0.66666666666666667}
}
template<class Soln , class Rhs , class EXOP >
bool RK4DenseOutput< Soln, Rhs, EXOP >::m_isDefined
protected
template<class Soln , class Rhs , class EXOP >
bool RK4DenseOutput< Soln, Rhs, EXOP >::m_denseOutput
protected
template<class Soln , class Rhs , class EXOP >
bool RK4DenseOutput< Soln, Rhs, EXOP >::m_hasDenseOutput
protected
template<class Soln , class Rhs , class EXOP >
Real RK4DenseOutput< Soln, Rhs, EXOP >::m_dt
protected
template<class Soln , class Rhs , class EXOP >
Real RK4DenseOutput< Soln, Rhs, EXOP >::m_time
protected
template<class Soln , class Rhs , class EXOP >
Soln RK4DenseOutput< Soln, Rhs, EXOP >::m_phi[s_nStages]
protected
template<class Soln , class Rhs , class EXOP >
Rhs RK4DenseOutput< Soln, Rhs, EXOP >::m_rhs
protected
template<class Soln , class Rhs , class EXOP >
Rhs RK4DenseOutput< Soln, Rhs, EXOP >::m_denseCoefs[s_nDenseCoefs]
protected
template<class Soln , class Rhs , class EXOP >
Rhs RK4DenseOutput< Soln, Rhs, EXOP >::m_kE
protected
template<class Soln , class Rhs , class EXOP >
EXOP RK4DenseOutput< Soln, Rhs, EXOP >::m_opEx
protected

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