| 
    Chombo + EB
    3.2
    
   | 
 
#include <IndexedMoments.H>

Public Member Functions | |
| IndexedMoments () | |
| constructor—make statics first time called  More... | |
| ~IndexedMoments () | |
| Destructor.  More... | |
| Real & | operator[] (int a_i) | 
| const Real & | operator[] (int a_i) const | 
| Real & | operator[] (const IndexTM< int, Dim > &a_index) | 
| const Real & | operator[] (const IndexTM< int, Dim > &a_index) const | 
| IndexedMoments< Dim, P > & | operator+= (const IndexedMoments< Dim, P > &increment) | 
| add compoenentwise  More... | |
| IndexedMoments< Dim, P > & | operator*= (const Real &a_factor) | 
| multiply each component by constant  More... | |
| void | linearOut (void *const a_outbuf) const | 
| void | linearIn (const void *const a_inbuf) | 
| void | setRegular (const Real a_dx) | 
| set to a regular IndexTM  More... | |
| void | setToRegular (const Real a_dx) | 
| bool | isRegular () const | 
| IndexedMoments< Dim, P > & | operator= (const map< IndexTM< int, Dim >, Real > &a_mapin) | 
| for use with irregnode  More... | |
| IndexedMoments< Dim, P > & | operator= (const IndexedMoments< Dim, P > &a_input) | 
| void | shift (const IndexTM< Real, Dim > &a_distance) | 
| shift moment by the input distance.  More... | |
| void | setToZero () | 
| void | spout () const | 
| outputs the current state to pout() (a la parstream.H)  More... | |
| void | setToTruncatedMultiply (const IndexedMoments< Dim, P > &a_CA, const IndexedMoments< Dim, P > &a_CB) | 
| void | divideByFactorial () | 
| divides each entry by p!  More... | |
| void | multiplyByFactorial () | 
| multiply each entry by p!  More... | |
Static Public Member Functions | |
| static int | size () | 
| number of reals in the vector  More... | |
| static size_t | linearSize () | 
| for linearization  More... | |
| static const Vector< IndexTM< int, Dim > > & | getMonomialPowers () | 
| monomial powers  More... | |
| static int | indexOf (IndexTM< int, Dim > a_index) | 
| Calculate what linear index this multi-index is.  More... | |
| static IndexTM< int, Dim > | getIndex (const int &a_linearIndex) | 
Protected Member Functions | |
| Real | getMoment (const IndexTM< int, Dim > &a_mono, const map< IndexTM< int, Dim >, Real > &a_mapin) const | 
Static Protected Member Functions | |
| static void | setStatics () | 
| static void | setMultiIndicies () | 
| static void | setSize () | 
Static Protected Attributes | |
| static bool | s_staticsSet = false | 
| static int | s_size = 0 | 
| static Vector< IndexTM< int, Dim > > | s_multiIndicies = Vector<IndexTM<int, Dim> >() | 
Private Attributes | |
| int | m_isRegular | 
| Vector< Real > | m_moms | 
Static Private Attributes | |
| static const int | s_max_sizes [][CH_IM_MAX_POWER+1] | 
Vector-like container for multi-indexed Real values up to some max multi-index P (sum of indicies <= P). Layout is 0th dim first, then 1st, etc.
| D | The Dimension of the container | 
| IndexedMoments< Dim, P >::IndexedMoments | ( | ) | 
constructor—make statics first time called
Referenced by IndexedMoments< SpaceDim, CH_EBIS_ORDER >::setStatics().
      
  | 
  inline | 
Destructor.
      
  | 
  inline | 
Retrieve the moment from the index a_index The lexigraphical index to the data
      
  | 
  inline | 
Retrieve the moment from the index a_index The lexigraphical index to the data
      
  | 
  inline | 
Retrieve the moment from the index a_index The multi-index that's needed
      
  | 
  inline | 
Retrieve the moment from the index a_index The multi-index that's needed
| IndexedMoments< Dim, P > & IndexedMoments< Dim, P >::operator+= | ( | const IndexedMoments< Dim, P > & | increment | ) | 
add compoenentwise
Referenced by IndexedMoments< SpaceDim, CH_EBIS_ORDER >::operator*=(), and IndexedMoments< SpaceDim, CH_EBIS_ORDER >::operator[]().
| IndexedMoments< Dim, P > & IndexedMoments< Dim, P >::operator*= | ( | const Real & | a_factor | ) | 
multiply each component by constant
multiply each component by factor
Referenced by IndexedMoments< SpaceDim, CH_EBIS_ORDER >::getMoment(), and IndexedMoments< SpaceDim, CH_EBIS_ORDER >::operator[]().
      
  | 
  inlinestatic | 
number of reals in the vector
Referenced by getIndMomSize(), IndexedMoments< SpaceDim, CH_EBIS_ORDER >::linearIn(), IndexedMoments< SpaceDim, CH_EBIS_ORDER >::linearOut(), and IndexedMoments< SpaceDim, CH_EBIS_ORDER >::linearSize().
      
  | 
  inlinestatic | 
for linearization
      
  | 
  inline | 
      
  | 
  inline | 
| void IndexedMoments< Dim, P >::setRegular | ( | const Real | a_dx | ) | 
set to a regular IndexTM
Only moments with an even multi-index are non-zero
Referenced by IndexedMoments< SpaceDim, CH_EBIS_ORDER >::IndexedMoments(), IndexedMoments< SpaceDim, CH_EBIS_ORDER >::linearIn(), IndexedMoments< SpaceDim, CH_EBIS_ORDER >::setToRegular(), VolData::setToRegular(), and FaceData::setToRegular().
      
  | 
  inline | 
      
  | 
  inlinestatic | 
monomial powers
Referenced by MomentIterator< D, P >::MomentIterator(), and IndexedMoments< SpaceDim, CH_EBIS_ORDER >::setRegular().
      
  | 
  inline | 
| IndexedMoments< Dim, P > & IndexedMoments< Dim, P >::operator= | ( | const map< IndexTM< int, Dim >, Real > & | a_mapin | ) | 
for use with irregnode
Referenced by IndexedMoments< SpaceDim, CH_EBIS_ORDER >::isRegular(), and IndexedMoments< SpaceDim, CH_EBIS_ORDER >::shift().
      
  | 
  inline | 
| void IndexedMoments< Dim, P >::shift | ( | const IndexTM< Real, Dim > & | a_distance | ) | 
shift moment by the input distance.
shift moment by the input vector distance. this changes the current object from integral(x^p) to integral((x+x0)^p), where x0 = a_distance
Referenced by checkMoments(), IndexedMoments< SpaceDim, CH_EBIS_ORDER >::operator+=(), and IndexedMoments< SpaceDim, CH_EBIS_ORDER >::operator=().
      
  | 
  inline | 
      
  | 
  static | 
Calculate what linear index this multi-index is.
Referenced by allPositive(), getIndMomLinearIndex(), IndexedMoments< SpaceDim, CH_EBIS_ORDER >::operator[](), and IndexedMoments< SpaceDim, CH_EBIS_ORDER >::setToZero().
      
  | 
  inlinestatic | 
Referenced by getIndMomMultiIndex().
| void IndexedMoments< Dim, P >::spout | ( | ) | const | 
outputs the current state to pout() (a la parstream.H)
Referenced by IndexedMoments< SpaceDim, CH_EBIS_ORDER >::getIndex(), IndexedMoments< SpaceDim, CH_EBIS_ORDER >::operator=(), and IrregNode::spout().
| void IndexedMoments< Dim, P >::setToTruncatedMultiply | ( | const IndexedMoments< Dim, P > & | a_CA, | 
| const IndexedMoments< Dim, P > & | a_CB | ||
| ) | 
Say = sum_p(CA m^p), and = sum_q(CB m^q).
This sets the current data to the set of coefficents M such that <AB> = sum_r(M m^r) + O(h^P+1).
We drop all coefficents for powers s.t. p + q > P.
Referenced by IndexedMoments< SpaceDim, CH_EBIS_ORDER >::getIndex(), and IndexedMoments< SpaceDim, CH_EBIS_ORDER >::setMultiIndicies().
| void IndexedMoments< Dim, P >::divideByFactorial | ( | ) | 
divides each entry by p!
Referenced by IndexedMoments< SpaceDim, CH_EBIS_ORDER >::getIndex(), and IndexedMoments< SpaceDim, CH_EBIS_ORDER >::setToTruncatedMultiply().
| void IndexedMoments< Dim, P >::multiplyByFactorial | ( | ) | 
multiply each entry by p!
Referenced by IndexedMoments< SpaceDim, CH_EBIS_ORDER >::divideByFactorial(), and IndexedMoments< SpaceDim, CH_EBIS_ORDER >::getIndex().
      
  | 
  protected | 
Referenced by checkMoments(), and IndexedMoments< SpaceDim, CH_EBIS_ORDER >::getIndex().
      
  | 
  staticprotected | 
      
  | 
  staticprotected | 
Referenced by IndexedMoments< SpaceDim, CH_EBIS_ORDER >::setSize().
      
  | 
  staticprotected | 
Referenced by IndexedMoments< SpaceDim, CH_EBIS_ORDER >::setRegular().
      
  | 
  staticprotected | 
      
  | 
  staticprotected | 
      
  | 
  staticprotected | 
      
  | 
  private | 
      
  | 
  private | 
      
  | 
  staticprivate | 
 1.8.13