#include <AMRTGA.H>
Public Member Functions | |
TGAHelmOp< T > * | newOp (const ProblemDomain &a_indexSpace, const AMRLevelOpFactory< T > &a_opFact) |
~AMRTGA () | |
AMRTGA (const RefCountedPtr< AMRMultiGrid< T > > &a_solver, const AMRLevelOpFactory< T > &a_factory, const ProblemDomain &a_level0Domain, const Vector< int > &a_refRat, int a_numLevels=-1, int a_verbosity=0) | |
void | oneStep (Vector< T * > &a_phiNew, Vector< T * > &a_phiOld, Vector< T * > &a_source, const Real &a_dt, int a_lbase, int a_lmax) |
void | resetAlphaAndBeta (const Real &a_alpha, const Real &a_beta) |
Protected Member Functions | |
void | solveHelm (Vector< T * > &a_ans, Vector< T * > &a_rhs, int a_lbase, int a_lmax, Real a_mu, Real a_dt) |
void | applyHelm (Vector< T * > &a_ans, Vector< T * > &a_source, int a_lbase, int a_lmax, Real a_mu, Real a_dt, bool a_homogeneousBC) |
void | setMu () |
void | createData (Vector< T * > &a_source, int a_lbase, int a_lmax) |
Private Member Functions | |
AMRTGA (const AMRTGA< T > &a_opin) | |
void | operator= (const AMRTGA< T > &a_opin) |
AMRTGA () | |
weak construction is bad. Ref Counted pointers are your friends. | |
Private Attributes | |
ProblemDomain | m_level0Domain |
Vector< int > | m_refRat |
RefCountedPtr< AMRMultiGrid< T > > | m_solver |
Vector< RefCountedPtr < TGAHelmOp< T > > > | m_ops |
Real | m_mu1 |
Real | m_mu2 |
Real | m_mu3 |
Real | m_mu4 |
int | m_verbosity |
int | m_numLevels |
bool | m_dataCreated |
Vector< T * > | m_rhst |
References AMRTGA< T >::m_rhst, and Vector< T >::size().
AMRTGA< T >::AMRTGA | ( | const RefCountedPtr< AMRMultiGrid< T > > & | a_solver, | |
const AMRLevelOpFactory< T > & | a_factory, | |||
const ProblemDomain & | a_level0Domain, | |||
const Vector< int > & | a_refRat, | |||
int | a_numLevels = -1 , |
|||
int | a_verbosity = 0 | |||
) | [inline] |
References AMRTGA< T >::m_dataCreated, AMRTGA< T >::m_level0Domain, AMRTGA< T >::m_numLevels, AMRTGA< T >::m_ops, AMRTGA< T >::m_refRat, AMRTGA< T >::m_solver, AMRTGA< T >::m_verbosity, AMRTGA< T >::newOp(), ProblemDomain::refine(), Vector< T >::resize(), AMRTGA< T >::setMu(), and Vector< T >::size().
References MayDay::Error().
TGAHelmOp<T>* AMRTGA< T >::newOp | ( | const ProblemDomain & | a_indexSpace, | |
const AMRLevelOpFactory< T > & | a_opFact | |||
) | [inline] |
void AMRTGA< T >::oneStep | ( | Vector< T * > & | a_phiNew, | |
Vector< T * > & | a_phiOld, | |||
Vector< T * > & | a_source, | |||
const Real & | a_dt, | |||
int | a_lbase, | |||
int | a_lmax | |||
) | [inline] |
This advances a parabolic pde from a_phiOld to a_phiNew using TGA on a non-moving domain with source term a_source
References AMRTGA< T >::applyHelm(), Vector< T >::assign(), AMRTGA< T >::createData(), AMRTGA< T >::m_dataCreated, AMRTGA< T >::m_mu1, AMRTGA< T >::m_mu2, AMRTGA< T >::m_mu3, AMRTGA< T >::m_mu4, AMRTGA< T >::m_ops, AMRTGA< T >::m_rhst, AMRTGA< T >::m_verbosity, pout(), and AMRTGA< T >::solveHelm().
void AMRTGA< T >::resetAlphaAndBeta | ( | const Real & | a_alpha, | |
const Real & | a_beta | |||
) | [inline] |
References AMRTGA< T >::m_solver, TGAHelmOp< T >::setAlphaAndBeta(), and Vector< T >::size().
Referenced by AMRTGA< T >::applyHelm(), and AMRTGA< T >::solveHelm().
void AMRTGA< T >::solveHelm | ( | Vector< T * > & | a_ans, | |
Vector< T * > & | a_rhs, | |||
int | a_lbase, | |||
int | a_lmax, | |||
Real | a_mu, | |||
Real | a_dt | |||
) | [inline, protected] |
References AMRTGA< T >::m_solver, AMRTGA< T >::m_verbosity, pout(), and AMRTGA< T >::resetAlphaAndBeta().
Referenced by AMRTGA< T >::oneStep().
void AMRTGA< T >::applyHelm | ( | Vector< T * > & | a_ans, | |
Vector< T * > & | a_source, | |||
int | a_lbase, | |||
int | a_lmax, | |||
Real | a_mu, | |||
Real | a_dt, | |||
bool | a_homogeneousBC | |||
) | [inline, protected] |
References AMRTGA< T >::m_ops, AMRTGA< T >::m_solver, and AMRTGA< T >::resetAlphaAndBeta().
Referenced by AMRTGA< T >::oneStep().
void AMRTGA< T >::setMu | ( | ) | [inline, protected] |
References AMRTGA< T >::m_mu1, AMRTGA< T >::m_mu2, AMRTGA< T >::m_mu3, AMRTGA< T >::m_mu4, AMRTGA< T >::m_verbosity, and pout().
Referenced by AMRTGA< T >::AMRTGA().
void AMRTGA< T >::createData | ( | Vector< T * > & | a_source, | |
int | a_lbase, | |||
int | a_lmax | |||
) | [inline, protected] |
References AMRTGA< T >::m_dataCreated, AMRTGA< T >::m_ops, AMRTGA< T >::m_rhst, Vector< T >::resize(), and Vector< T >::size().
Referenced by AMRTGA< T >::oneStep().
References MayDay::Error().
ProblemDomain AMRTGA< T >::m_level0Domain [private] |
Referenced by AMRTGA< T >::AMRTGA().
Referenced by AMRTGA< T >::AMRTGA().
RefCountedPtr<AMRMultiGrid<T> > AMRTGA< T >::m_solver [private] |
Vector<RefCountedPtr<TGAHelmOp<T> > > AMRTGA< T >::m_ops [private] |
Referenced by AMRTGA< T >::AMRTGA(), AMRTGA< T >::applyHelm(), AMRTGA< T >::createData(), and AMRTGA< T >::oneStep().
Referenced by AMRTGA< T >::oneStep(), and AMRTGA< T >::setMu().
Referenced by AMRTGA< T >::oneStep(), and AMRTGA< T >::setMu().
Referenced by AMRTGA< T >::oneStep(), and AMRTGA< T >::setMu().
Referenced by AMRTGA< T >::oneStep(), and AMRTGA< T >::setMu().
int AMRTGA< T >::m_verbosity [private] |
Referenced by AMRTGA< T >::AMRTGA(), AMRTGA< T >::oneStep(), AMRTGA< T >::setMu(), and AMRTGA< T >::solveHelm().
int AMRTGA< T >::m_numLevels [private] |
Referenced by AMRTGA< T >::AMRTGA().
bool AMRTGA< T >::m_dataCreated [private] |
Referenced by AMRTGA< T >::AMRTGA(), AMRTGA< T >::createData(), and AMRTGA< T >::oneStep().
Referenced by AMRTGA< T >::createData(), AMRTGA< T >::oneStep(), and AMRTGA< T >::~AMRTGA().