Chombo + EB  3.0
Public Member Functions | Private Types | Private Member Functions | Private Attributes | List of all members
LSProblem< dim > Class Template Reference

#include <ComputeCutCellMoments.H>

Public Member Functions

 ~LSProblem ()
 
 LSProblem (const int &a_degreeP, const bool &a_useConstraints)
 
 LSProblem (const int &a_orderAccuracy, const int &a_degreeP, const bool &a_useConstraints, const IndexTM< Real, dim > &a_normal)
 
int invertNormalEq (const Vector< Real > &a_rhs, Vector< Real > &a_residual)
 
int getDegree ()
 
int getOrderAccuracy ()
 
void getMatrix (Real **a_matrix)
 
void getRhs (Vector< Real > &a_rhs)
 
void getUnknowns (Vector< Real > &a_unknown)
 
void monoMaxMin (Real &a_maxVal, Real &a_minVal, const IndexTM< int, dim > &a_mono, const IFData< dim > &a_IFData)
 
void computeBounds (const IndexTM< Real, dim > &a_dx, const CutCellMoments< dim > &a_ccm)
 
void print (ostream &a_out) const
 
void outputMatrix () const
 
void outputRhs () const
 
void outputUnknowns () const
 
void outputBounds () const
 
const LocPthMomentgetLocMonomialMapDegreeP () const
 
const PthMomentLocgetMonomialLocMapDegreeP () const
 
const PthMomentLocgetMonomialLocMapDegreePLess1 () const
 
Real getUnknown (int loc)
 
int getNumberDegP ()
 
int getNumberDegPLess1 ()
 
int numActiveBounds () const
 

Private Types

typedef IndexTM< int, dimIvDim
 
typedef map< IvDim, int, LexLT
< IvDim > > 
PthMomentLoc
 
typedef map< int, IvDimLocPthMoment
 

Private Member Functions

void setRhs (const Vector< Real > &a_rhs)
 
void setMatrix ()
 
void momentBounds (Real &a_lobnd, Real &a_hibnd, const IvDim &a_mono, const IFData< dim > &a_ifData)
 
void differentiate (int &a_coeff, IvDim &a_Dmono, int &a_idir, const IvDim &a_mono)
 
int nChooseR (int a_n, int a_r)
 
void fillMap (PthMomentLoc &a_monoLoc, LocPthMoment &a_locMono, const int &a_degree)
 
int numMonomials (const int &a_monoDegree)
 
int factorial (const int &a_n, const int &a_m=0)
 
void allocArray (const int &a_rows, const int &a_cols, Real **&a_A)
 
void freeArray (const int &a_rows, const int &a_cols, Real **&a_A)
 

Private Attributes

int m_order
 
int m_degreeP
 
int m_numActiveBounds
 
bool m_useConstraints
 
IndexTM< Real, dimm_normal
 
PthMomentLoc m_monoLocP
 
LocPthMoment m_locMonoP
 
int m_numP
 
PthMomentLoc m_monoLocPLess1
 
LocPthMoment m_locMonoPLess1
 
int m_numPLess1
 
Real ** m_matrix
 
Vector< Realm_unknowns
 
Vector< Realm_rhs
 
Vector< Realm_lowerBound
 
Vector< Realm_upperBound
 

Member Typedef Documentation

template<int dim>
typedef IndexTM<int,dim> LSProblem< dim >::IvDim
private
template<int dim>
typedef map<IvDim,int,LexLT <IvDim> > LSProblem< dim >::PthMomentLoc
private
template<int dim>
typedef map<int,IvDim> LSProblem< dim >::LocPthMoment
private

Constructor & Destructor Documentation

template<int dim>
LSProblem< dim >::~LSProblem ( )

References dim.

template<int dim>
LSProblem< dim >::LSProblem ( const int &  a_degreeP,
const bool &  a_useConstraints 
)
template<int dim>
LSProblem< dim >::LSProblem ( const int &  a_orderAccuracy,
const int &  a_degreeP,
const bool &  a_useConstraints,
const IndexTM< Real, dim > &  a_normal 
)

Member Function Documentation

template<int dim>
int LSProblem< dim >::invertNormalEq ( const Vector< Real > &  a_rhs,
Vector< Real > &  a_residual 
)
template<int dim>
int LSProblem< dim >::getDegree ( )
inline
template<int dim>
int LSProblem< dim >::getOrderAccuracy ( )
inline
template<int dim>
void LSProblem< dim >::getMatrix ( Real **  a_matrix)
template<int dim>
void LSProblem< dim >::getRhs ( Vector< Real > &  a_rhs)
template<int dim>
void LSProblem< dim >::getUnknowns ( Vector< Real > &  a_unknown)
template<int dim>
void LSProblem< dim >::monoMaxMin ( Real a_maxVal,
Real a_minVal,
const IndexTM< int, dim > &  a_mono,
const IFData< dim > &  a_IFData 
)
template<int dim>
void LSProblem< dim >::computeBounds ( const IndexTM< Real, dim > &  a_dx,
const CutCellMoments< dim > &  a_ccm 
)
template<int dim>
void LSProblem< dim >::print ( ostream &  a_out) const
template<int dim>
void LSProblem< dim >::outputMatrix ( ) const

References dim, and pout().

template<int dim>
void LSProblem< dim >::outputRhs ( ) const

References pout().

template<int dim>
void LSProblem< dim >::outputUnknowns ( ) const

References pout().

template<int dim>
void LSProblem< dim >::outputBounds ( ) const

References pout().

template<int dim>
const LocPthMoment& LSProblem< dim >::getLocMonomialMapDegreeP ( ) const
inline
template<int dim>
const PthMomentLoc& LSProblem< dim >::getMonomialLocMapDegreeP ( ) const
inline
template<int dim>
const PthMomentLoc& LSProblem< dim >::getMonomialLocMapDegreePLess1 ( ) const
inline
template<int dim>
Real LSProblem< dim >::getUnknown ( int  loc)
inline
template<int dim>
int LSProblem< dim >::getNumberDegP ( )
inline
template<int dim>
int LSProblem< dim >::getNumberDegPLess1 ( )
inline
template<int dim>
int LSProblem< dim >::numActiveBounds ( ) const
inline
template<int dim>
void LSProblem< dim >::setRhs ( const Vector< Real > &  a_rhs)
private
template<int dim>
void LSProblem< dim >::setMatrix ( )
private
template<int dim>
void LSProblem< dim >::momentBounds ( Real a_lobnd,
Real a_hibnd,
const IvDim a_mono,
const IFData< dim > &  a_ifData 
)
private
template<int dim>
void LSProblem< dim >::differentiate ( int &  a_coeff,
IvDim a_Dmono,
int &  a_idir,
const IvDim a_mono 
)
private

References MayDay::Abort(), dim, and LARGEINTVAL.

template<int dim>
int LSProblem< dim >::nChooseR ( int  a_n,
int  a_r 
)
private
template<int dim>
void LSProblem< dim >::fillMap ( PthMomentLoc a_monoLoc,
LocPthMoment a_locMono,
const int &  a_degree 
)
private
template<int dim>
int LSProblem< dim >::numMonomials ( const int &  a_monoDegree)
private

References dim, and LARGEINTVAL.

Referenced by LSProblem< dim >::LSProblem().

template<int dim>
int LSProblem< dim >::factorial ( const int &  a_n,
const int &  a_m = 0 
)
private

References MayDay::Abort().

template<int dim>
void LSProblem< dim >::allocArray ( const int &  a_rows,
const int &  a_cols,
Real **&  a_A 
)
private
template<int dim>
void LSProblem< dim >::freeArray ( const int &  a_rows,
const int &  a_cols,
Real **&  a_A 
)
private

Member Data Documentation

template<int dim>
int LSProblem< dim >::m_order
private
template<int dim>
int LSProblem< dim >::m_degreeP
private
template<int dim>
int LSProblem< dim >::m_numActiveBounds
private
template<int dim>
bool LSProblem< dim >::m_useConstraints
private
template<int dim>
IndexTM<Real,dim> LSProblem< dim >::m_normal
private
template<int dim>
PthMomentLoc LSProblem< dim >::m_monoLocP
private
template<int dim>
LocPthMoment LSProblem< dim >::m_locMonoP
private
template<int dim>
int LSProblem< dim >::m_numP
private
template<int dim>
PthMomentLoc LSProblem< dim >::m_monoLocPLess1
private
template<int dim>
LocPthMoment LSProblem< dim >::m_locMonoPLess1
private
template<int dim>
int LSProblem< dim >::m_numPLess1
private
template<int dim>
Real** LSProblem< dim >::m_matrix
private
template<int dim>
Vector<Real> LSProblem< dim >::m_unknowns
private
template<int dim>
Vector<Real> LSProblem< dim >::m_rhs
private
template<int dim>
Vector<Real> LSProblem< dim >::m_lowerBound
private
template<int dim>
Vector<Real> LSProblem< dim >::m_upperBound
private

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