#include <iomanip>
#include "CHArray_fwd.H"
#include <cassert>
Go to the source code of this file.
Namespaces | |
namespace | Misc |
namespace | ArSp |
Classes | |
class | IntVect |
An integer Vector in SpaceDim-dimensional space. More... | |
class | Box |
A Rectangular Domain on an Integer Lattice. More... | |
class | Misc::TypeTr< T > |
Test for class type. More... | |
struct | Misc::TypeTr< T >::Two |
struct | CHRange |
Defines a range of subscripts. More... | |
struct | ArSp::ArSp::AllocRawPolicy< T, true > |
If elements are class type, allocate using placement new. More... | |
struct | ArSp::ArSp::AllocRawPolicy< T, false > |
If element are not class type, just assign the address. More... | |
struct | ArSp::ArSp::ReleaseRawPolicy< T, true > |
If elements are class type, invoke destructor on each element. More... | |
struct | ArSp::ArSp::ReleaseRawPolicy< T, false > |
If elements are not class type, do nothing. More... | |
class | ArSp::DefaultArrayAlloc< T > |
Default allocator. More... | |
class | ArSp::IndexerData< Rank, DimT > |
Any rank and a zero-based subscript. More... | |
class | ArSp::ArSp::IndexerData< Rank, CHRange > |
Any rank and a subscript range. More... | |
class | ArSp::ArSp::IndexerData< 1, DimT > |
Rank 1 and a zero-based subscript (no data). More... | |
class | ArSp::ArSp::IndexerData< 1, CHRange > |
Rank 1 and a subscript range. More... | |
class | ArSp::RSIndexer< Rank, DimT > |
Rank > 2 for zero-based subscripts and > 1 for subscript ranges. More... | |
class | ArSp::ArSp::RSIndexer< 1, DimT > |
Specialization for Rank 1 (any type of subscript). More... | |
class | ArSp::ArSp::RSIndexer< 2, USz_t > |
Full specialization for Rank 2 and zero-based subscripts. More... | |
class | ArSp::CSIndexer< Rank, DimT > |
Rank > 2 for zero-based subscripts and > 1 for subscript ranges. More... | |
class | ArSp::ArSp::CSIndexer< 1, DimT > |
Specialization for Rank 1 (any type of subscript). More... | |
class | ArSp::ArSp::CSIndexer< 2, USz_t > |
Full specialization for Rank 2 and zero-based subscripts. More... | |
struct | ArSp::ArSp::ArTr< Rank, ArZeroRow > |
struct | ArSp::ArSp::ArTr< Rank, ArZeroCol > |
struct | ArSp::ArSp::ArTr< Rank, ArRangeRow > |
struct | ArSp::ArSp::ArTr< Rank, ArRangeCol > |
class | CHArray< T, Rank, ArConf, Alloc > |
Multidimensional array class. More... | |
struct | CHArray< T, Rank, ArConf, Alloc >::Array_impl |
class | ArSp::NewArrayAlloc< T > |
Allocator that only permits allocation by new. More... | |
class | ArSp::ArrayOfMatrixAlloc |
Allocator for an array of matrices contiguous in memory. More... | |
Defines | |
#define | CH_assert(cond) assert(cond) |
#define | SpaceDim 2 |
#define | D_DECL6(a, b, c, d, e, f) a,b |
#define | D_TERM6(a, b, c, d, e, f) a b |
#define | D_DEFIV |
#define | D_DEFBOX |
#define | D_IXIV |
Typedefs | |
typedef double | Real |
typedef int | ArSp::IIx_t |
typedef unsigned | ArSp::USz_t |
Type of unsigned int for a size. | |
typedef CHArray< Real, 1, ArZeroCol, ArSp::DefaultArrayAlloc< Real > > | CHVector |
Vector definition. | |
typedef CHArray< Real, 2, ArZeroCol, ArSp::DefaultArrayAlloc< Real > > | CHMatrix |
Matrix defined with column-ordered storage. | |
Functions | |
template<typename T> | |
USz_t | ArSp::sizeOfDim (const T &dim) |
Get the size of a dimension. | |
template<> | |
USz_t | ArSp::sizeOfDim< CHRange > (const CHRange &dim) |
template<typename T, unsigned Rank, int ArConf, typename Alloc> | |
std::ostream & | operator<< (std::ostream &os, const CHArray< T, Rank, ArConf, Alloc > &A) |
Output of an array. | |
template<> | |
std::ostream & | operator<< (std::ostream &os, const CHMatrix &M) |
Pretty output of a matrix (should be in .cpp). | |
Support for describing dimensions by a range of subscripts | |
ArSp::USz_t | operator* (const CHRange &a, const CHRange &b) |
Multiply two dimensions. | |
ArSp::USz_t | operator* (const ArSp::USz_t &i, const CHRange &a) |
ArSp::USz_t | operator* (const CHRange &a, const ArSp::USz_t &i) |
#define CH_assert | ( | cond | ) | assert(cond) |
Referenced by List< T >::addAfter(), List< T >::addBefore(), MGLevelOp< LevelData< NodeFArrayBox > >::addCoarserObserver(), AMRMultiGrid< LevelData< T > >::addInspector(), ComputeCutCellMoments< dim >::addMomentMaps(), RK4DenseOutput< Soln, Rhs, EXOP >::advance(), ARK4DenseOutput< Soln, Rhs, IMEXOp >::advance(), ARK4< X, FI, FE, dX >::advance(), IFid::aggregate(), ArSp::ArrayOfMatrixAlloc::allocate(), ArSp::NewArrayAlloc< T >::allocate(), ArSp::DefaultArrayAlloc< T >::allocate(), AMRMultiGrid< T >::AMRVCycle(), MultilevelLinearOp< T >::assign(), BaseEBCellFAB< T >::assign(), BASISV_TM(), BoundaryIterator::box(), BoxLayoutData< T >::BoxLayoutData(), RootSolver::Brent(), CHRange::CHRange(), GraphNode::clear(), IndexTM< T, N >::coarsen(), AMRMultiGrid< T >::computeAMROperator(), AMRMultiGrid< T >::computeAMRResidualLevel(), ComputeCutCellMoments< dim >::computeMoments(), MinimalCCCM< dim >::computeMomentsRecursively(), Box::contains(), Box::convert(), MiniIFFAB< T >::copy(), IVSFAB< T >::copy(), CodimBox< S >::copy(), BaseIVFAB< T >::copy(), BaseIFFAB< T >::copy(), BaseFab< T >::copy(), BaseEBFaceFAB< T >::copy(), BaseEBCellFAB< T >::copy(), LevelData< T >::copyTo(), AliasDataFactory< T >::create(), PetscSolver< T >::create_mat_vec(), GMRESSolver< T >::CycleGMRES(), MiniIFFAB< T >::dataPtr(), IVSFAB< T >::dataPtr(), BaseIVFAB< T >::dataPtr(), BaseIFFAB< T >::dataPtr(), BaseFab< T >::dataPtr(), PetscSolver< T >::define(), MultilevelLinearOp< T >::define(), MiniIVFAB< T >::define(), MiniIFFAB< T >::define(), LevelData< T >::define(), LayoutData< T >::define(), IVSFAB< T >::define(), CodimBox< S >::define(), BoxLayoutData< T >::define(), BaseIVFAB< T >::define(), BaseIFFAB< T >::define(), BaseFab< T >::define(), BaseEBFaceFAB< T >::define(), BaseEBCellFAB< T >::define(), RK4DenseOutput< Soln, Rhs, EXOP >::denseOutputCoefs(), ARK4DenseOutput< Soln, Rhs, IMEXOp >::denseOutputCoefs(), BaseIF::derivative(), BaseEBFaceFAB< T >::direction(), MultilevelLinearOp< T >::dotProduct(), EBNormalizeByVolumeFraction::EBNormalizeByVolumeFraction(), factorial(), TupleKeyMap<, ValueT >::fetch(), BaseEBCellFAB< T >::fill(), List< T >::firstElement(), EBPatchAdvect::floorPrimitives(), FortranArrayIndex(), BoxLayoutData< T >::generalCopyTo(), BoxLayout::get(), BaseEBFaceFAB< T >::getCellRegion(), EBLevelGrid::getCFIVS(), QuadCFStencil::getCoarIVS(), LevelFluxRegister::getCoarseLocations(), EBLevelGrid::getCoveringIVS(), EBLevelGrid::getDBL(), CodimBox< S >::getDirection(), CodimBox< S >::getDirections(), EBLevelGrid::getDomain(), EBLevelGrid::getEBIS(), EBLevelGrid::getEBISL(), QuadCFStencil::getFineIVS(), EBLevelGrid::getGhost(), MiniIVFAB< T >::getIndex(), MiniIFFAB< T >::getIndex(), IVSFAB< T >::getIndex(), BaseIVFAB< T >::getIndex(), BaseIFFAB< T >::getLocalVecIndex(), EBLevelGrid::getMaxCoarseningRatio(), EBLevelGrid::getMaxRefinementRatio(), BaseEBCellFAB< T >::getMultiCells(), BaseEBFaceFAB< T >::getMultiValuedFAB(), BaseEBCellFAB< T >::getMultiValuedFAB(), CodimBox< S >::getNumOrient(), getOffsets(), BaseEBFaceFAB< T >::getRegion(), BaseEBCellFAB< T >::getRegion(), CodimBox< S >::getSequential(), BaseEBFaceFAB< T >::getSingleValuedFAB(), BaseEBCellFAB< T >::getSingleValuedFAB(), PolyGeom::getTangentVectors(), BaseFab< T >::getVal(), EBFluxRegister::incrementCoarse(), EBFluxRegister::incrementFine(), GraphNodeImplem::index(), IndexedMoments< Dim, P >::indexOf(), TupleKeyMap<, ValueT >::insert(), IndexTM< int, SpaceDim >::integer_factorial(), ipow(), QuadCFStencil::isEmpty(), CFIVS::isEmpty(), CFIVS::isPacked(), ArSp::ArSp::CSIndexer< 2, USz_t >::ixIndex1D(), ArSp::ArSp::CSIndexer< 1, DimT >::ixIndex1D(), ArSp::CSIndexer< Rank, DimT >::ixIndex1D(), ArSp::ArSp::RSIndexer< 2, USz_t >::ixIndex1D(), ArSp::ArSp::RSIndexer< 1, DimT >::ixIndex1D(), ArSp::RSIndexer< Rank, DimT >::ixIndex1D(), List< T >::lastElement(), LayoutData< T >::LayoutData(), MiniIFFAB< T >::linearIn(), IVSFAB< T >::linearIn(), CodimBox< S >::linearIn(), BaseIVFAB< T >::linearIn(), BaseIFFAB< T >::linearIn(), MiniIFFAB< T >::linearOut(), IVSFAB< T >::linearOut(), CodimBox< S >::linearOut(), BaseIVFAB< T >::linearOut(), BaseIFFAB< T >::linearOut(), LevelData< T >::localCopyTo(), CHArray< T, Rank, ArConf, Alloc >::lowerBound(), NormalDerivativeNew< dim >::nChoosek(), nCk(), BaseEBFaceFAB< T >::nComp(), BaseEBCellFAB< T >::nComp(), BaseFab< T >::nCompPtr(), MGLevelOp< LevelData< NodeFArrayBox > >::notifyObserversOfChange(), BaseFab< bool >::offset(), NeighborIterator::ok(), FASMultiGrid< T >::oneCycle(), Scheduler::PeriodicFunctionLessThan::operator()(), ShiftIterator::operator()(), NeighborIterator::operator()(), MiniIFFAB< T >::operator()(), ListIterator< T >::operator()(), LayoutIterator::operator()(), IVSFAB< T >::operator()(), CopyIterator::operator()(), CodimBox< S >::operator()(), CHArray< T, Rank, ArConf, Alloc >::operator()(), BoxIterator::operator()(), BCFuncWrapper::operator()(), BaseIVFAB< T >::operator()(), BaseIFFAB< T >::operator()(), BaseFab< T >::operator()(), BaseEBFaceFAB< T >::operator()(), BaseEBCellFAB< T >::operator()(), ListIterator< T >::operator*(), DenseIntVectSetIterator::operator++(), operator<<(), RefCountedPtr< T, OP >::operator=(), CHArray< T, Rank, ArConf, Alloc >::operator=(), Vector< LevelTGAHelmOp< LevelData< EBCellFAB >, EBFluxFAB > * >::operator[](), Tuple< T, N >::operator[](), RefCountedPtr< T, OP >::operator[](), RealVect::operator[](), List< T >::operator[](), LayoutData< T >::operator[](), IndexTM< T, N >::operator[](), IFidTable::operator[](), CopyIterator::operator[](), BoxLayout::operator[](), BitSet::operator[](), CodimBox< S >::orientBox(), CFIVS::packedBox(), BaseFab< T >::performCopy(), BaseFab< T >::performSetVal(), pfactorial(), MultilevelLinearOp< T >::preCond(), BoxLayout::procID(), read(), RefCountedPtr< T, OP >::RefCountedPtr(), IntVect::reflect(), IndexTM< T, N >::reflect(), EBFastFR::reflux(), AMRMultiGrid< T >::relaxOnlyHomogeneous(), List< T >::removeLink(), List< T >::replace(), RK4DenseOutput< Soln, Rhs, EXOP >::resetDt(), ARK4DenseOutput< Soln, Rhs, IMEXOp >::resetDt(), ARK4< X, FI, FE, dX >::resetDt(), MultilevelLinearOp< T >::residual(), GMRESSolver< T >::ResidualGMRES(), Box::sameSize(), CodimBox< S >::seq2bit(), Box::setBig(), AMRMultiGrid< T >::setBottomSolverEpsCushion(), BaseEBCellFAB< T >::setCoveredCellVal(), BaseEBFaceFAB< T >::setCoveredFaceVal(), EBLevelGrid::setMaxCoarseningRatio(), EBLevelGrid::setMaxRefinementRatio(), PetscSolver< T >::setNull(), MGLevelOpObserver< LevelData< NodeFArrayBox > >::setObservee(), BitSetIterator::setpos(), BoxLayout::setProcID(), Box::setRange(), IndexedMoments< Dim, P >::setRegular(), GMRESSolver< T >::setRestartLen(), IndexedMoments< Dim, P >::setSize(), Box::setSmall(), PetscSolver< T >::setup_solver(), MiniIFFAB< T >::setVal(), IVSFAB< T >::setVal(), IntVect::setVal(), IndexTM< T, N >::setVal(), BaseIVFAB< T >::setVal(), BaseIFFAB< T >::setVal(), BaseEBCellFAB< T >::setVal(), IntVect::shift(), IndexTM< T, N >::shift(), SimpleEllipsoidIF::SimpleEllipsoidIF(), MiniIFFAB< T >::size(), CHArray< T, Rank, ArConf, Alloc >::size(), BaseIVFAB< T >::size(), BaseIFFAB< T >::size(), RelaxSolver< T >::solve(), BiCGStabSolver< T >::solve(), PetscSolver< T >::solve_mfree_private(), PetscSolver< T >::solve_private(), AMRFASMultiGrid< T >::solveNoInit(), AMRMultiGrid< T >::solveNoInitResid(), RK4DenseOutput< Soln, Rhs, EXOP >::start0end1(), ARK4DenseOutput< Soln, Rhs, IMEXOp >::start0end1(), BaseLevelHeatSolver< LevelData< FArrayBox >, FluxBox, LevelFluxRegister >::timeInterp(), List< T >::transfer(), IndicesTransformation::transform(), CHArray< T, Rank, ArConf, Alloc >::undefine(), BaseFab< T >::undefine(), BaseLevelCrankNicolson< LevelData< EBCellFAB >, EBFluxFAB, EBFluxRegister >::updateSoln(), BaseLevelBackwardEuler< LevelData< FArrayBox >, FluxBox, LevelFluxRegister >::updateSoln(), BaseLevelTGA< LevelData< FArrayBox >, FluxBox, LevelFluxRegister >::updateSolnWithTimeDependentOp(), BaseLevelTGA< LevelData< FArrayBox >, FluxBox, LevelFluxRegister >::updateSolnWithTimeIndependentOp(), CHArray< T, Rank, ArConf, Alloc >::upperBound(), ListIterator< T >::value(), BaseIF::value(), write(), WriteMultiData< T >::writeData(), and WriteMultiData< T >::WriteMultiData().
#define SpaceDim 2 |
Referenced by ViscousBaseDomainBC::bcvaluefunc(), CompGridVTOBC::CompGridVTOBC(), ConstAnalytic::ConstAnalytic(), ProblemDomain::contains(), RealBox::contains(), CubeAnalytic::CubeAnalytic(), ProblemDomain::define(), MiniIFFAB< T >::define(), CodimBox< S >::define(), BaseIFFAB< T >::define(), BaseEBFaceFAB< T >::define(), BaseIF::derivative(), RealTensor::det(), NWOViscousTensorOp::diagonalScale(), NWOEBViscousTensorOp::diagonalScale(), ViscousTensorOp::diagonalScale(), EBViscousTensorOp::diagonalScale(), NWOViscousTensorOp::divideByIdentityCoef(), NWOEBViscousTensorOp::divideByIdentityCoef(), ViscousTensorOp::divideByIdentityCoef(), EBViscousTensorOp::divideByIdentityCoef(), NeumannViscousTensorDomainBC::fillVelGhost(), MixedViscousTensorDomainBC::fillVelGhost(), DirichletViscousTensorDomainBC::fillVelGhost(), ViscousBaseEBBC::getBoundaryGrad(), ViscousBaseEBBC::getChangeInSolution(), VCAMRPoissonOp2::getFlux(), NWOViscousTensorOp::getFlux(), ViscousTensorOp::getFlux(), EBAMRPoissonOp::getFlux(), AMRPoissonOp::getFlux(), ViscousBaseDomainBC::getFluxFromGrad(), ViscousBaseEBBC::getFluxFromGrad(), TensorCFInterp::gradIndex(), GraphNodeImplem::index(), Correct1D2D::index(), STLUtil::IVCompareSWO::IVCompareSWO(), ArSp::ArSp::RSIndexer< 2, USz_t >::ixIV(), ArSp::ArSp::RSIndexer< 1, DimT >::ixIV(), ArSp::RSIndexer< Rank, DimT >::ixIV(), LinearAnalytic::LinearAnalytic(), IVSFAB< T >::linearIn(), IVSFAB< T >::linearOut(), IntVect::max(), IntVect::min(), STLUtil::IVCompareSWO::operator()(), RealTensor::operator()(), EBAMRPoissonOp::StencilIndexComparator::operator()(), CodimBox< S >::operator()(), EBFluxFAB::operator*=(), EBFluxFAB::operator+=(), EBFluxFAB::operator-=(), EBFluxFAB::operator/=(), RealTensor::operator=(), ProblemDomain::operator=(), BoundaryData::operator=(), ProblemDomain::operator==(), RealVect::operator[](), ProblemDomain::ProblemDomain(), IntVect::product(), QuadAnalytic::QuadAnalytic(), RealVect::radSquared(), RealTensor::RealTensor(), RealVect::RealVect(), IntVect::reflect(), IndexedMoments< Dim, P >::setSize(), BoundaryData::setToZero(), IntVect::setVal(), IntVect::shift(), SimpleEllipsoidIF::SimpleEllipsoidIF(), IVSFAB< T >::size(), AMRMultiGrid< T >::solveNoInitResid(), IrregNode::spout(), BaseFab< T >::testBoxAndComp(), IndicesTransformation::transform(), BaseLevelCrankNicolson< LevelData< EBCellFAB >, EBFluxFAB, EBFluxRegister >::updateSoln(), BaseLevelBackwardEuler< LevelData< FArrayBox >, FluxBox, LevelFluxRegister >::updateSoln(), BaseLevelTGA< LevelData< FArrayBox >, FluxBox, LevelFluxRegister >::updateSolnWithTimeDependentOp(), BaseLevelTGA< LevelData< FArrayBox >, FluxBox, LevelFluxRegister >::updateSolnWithTimeIndependentOp(), ReferenceHeightIF::value(), BaseIF::value(), and WriteMultiData< T >::writeData().
#define D_DECL6 | ( | a, | |||
b, | |||||
c, | |||||
d, | |||||
e, | |||||
f | ) | a,b |
#define D_TERM6 | ( | a, | |||
b, | |||||
c, | |||||
d, | |||||
e, | |||||
f | ) | a b |
Referenced by ProblemDomain::contains(), ProblemDomain::image(), IndexType::IndexType(), IntVect::IntVect(), Box::isEmpty(), ProblemDomain::isPeriodic(), EBISLevel::match(), IntVect::operator!=(), RealVect::operator<(), IntVect::operator<(), RealVect::operator<=(), IntVect::operator<=(), IndexType::operator=(), IntVect::operator==(), RealVect::operator>(), IntVect::operator>(), RealVect::operator>=(), IntVect::operator>=(), RealVect::product(), Box::sameSize(), DenseIntVectSetIterator::setStride(), RealVect::sum(), IntVect::sum(), and WriteMultiData< T >::writeData().
#define D_DEFIV |
Value:
D_DECL6(DimT(iv[Indexer::ixIV(0)]), \ DimT(iv[Indexer::ixIV(1)]), \ DimT(iv[Indexer::ixIV(2)]), \ DimT(iv[Indexer::ixIV(3)]), \ DimT(iv[Indexer::ixIV(4)]), \ DimT(iv[Indexer::ixIV(5)]))
Referenced by CHArray< T, Rank, ArConf, Alloc >::define().
#define D_DEFBOX |
Value:
D_DECL6(DimT(box.smallEnd(Indexer::ixIV(0)), \ box.bigEnd(Indexer::ixIV(0))), \ DimT(box.smallEnd(Indexer::ixIV(1)), \ box.bigEnd(Indexer::ixIV(1))), \ DimT(box.smallEnd(Indexer::ixIV(2)), \ box.bigEnd(Indexer::ixIV(2))), \ DimT(box.smallEnd(Indexer::ixIV(3)), \ box.bigEnd(Indexer::ixIV(3))), \ DimT(box.smallEnd(Indexer::ixIV(4)), \ box.bigEnd(Indexer::ixIV(4))), \ DimT(box.smallEnd(Indexer::ixIV(5)), \ box.bigEnd(Indexer::ixIV(5))))
Referenced by CHArray< T, Rank, ArConf, Alloc >::define().
#define D_IXIV |
Value:
D_DECL6(iv[Indexer::ixIV(0)], \ iv[Indexer::ixIV(1)], \ iv[Indexer::ixIV(2)], \ iv[Indexer::ixIV(3)], \ iv[Indexer::ixIV(4)], \ iv[Indexer::ixIV(5)])
Referenced by CHArray< T, Rank, ArConf, Alloc >::operator()().
typedef double Real |
typedef CHArray<Real, 2, ArZeroCol, ArSp::DefaultArrayAlloc<Real> > CHMatrix |
Matrix defined with column-ordered storage.
ArSp::USz_t operator* | ( | const CHRange & | a, | |
const CHRange & | b | |||
) | [inline] |
ArSp::USz_t operator* | ( | const ArSp::USz_t & | i, | |
const CHRange & | a | |||
) | [inline] |
References ArSp::sizeOfDim().
ArSp::USz_t operator* | ( | const CHRange & | a, | |
const ArSp::USz_t & | i | |||
) | [inline] |
References ArSp::sizeOfDim().
std::ostream& operator<< | ( | std::ostream & | os, | |
const CHArray< T, Rank, ArConf, Alloc > & | A | |||
) | [inline] |
Output of an array.
References CHArray< T, Rank, ArConf, Alloc >::begin(), CH_assert, CHArray< T, Rank, ArConf, Alloc >::end(), CHArray< T, Rank, ArConf, Alloc >::isAllocated(), and IntVect::p().
std::ostream& operator<< | ( | std::ostream & | os, | |
const CHMatrix & | M | |||
) | [inline] |
Pretty output of a matrix (should be in .cpp).
References CH_assert, CHArray< T, Rank, ArConf, Alloc >::isAllocated(), M, and CHArray< T, Rank, ArConf, Alloc >::size().