Chombo + EB + MF
3.2
|
Class to interface a LevelData<FArrayBox> with SUNDIALS. More...
#include <SimpleAdaptor.H>
Private Attributes | |
LevelData< FArrayBox > * | m_data = NULL |
Pointer to LevelData<FArrayBox> data this wraps. More... | |
DisjointBoxLayout | m_dp |
DisjointBoxLayout of the LevelData<FArrayBox> More... | |
int | m_nComp |
Number of components in the LevelData<FArrayBox> More... | |
IntVect | m_ghost |
Number of ghost cells in the LevelData<FArrayBox> More... | |
bool | m_ownData = false |
If true, will call delete in destructor. More... | |
Class to interface a LevelData<FArrayBox> with SUNDIALS.
This class implements all the required NVector methods for SUNDIALS to call on a LevelData<FArrayBox>, works in parallel. Output available using HDF5.
Calling context must allocate memory in the LevelData, and then set the public Data member variable and others. This will call delete* on Data in the destructor.
Note that many of the SUNDIALS NVector operations allow the object itself to be passed for an in-place update, check each function.
|
inline |
Constructor
Referenced by newAdaptor().
|
inlinevirtual |
Define from an existing LevelData<FArrayBox>.
Referenced by ~SimpleAdaptor().
Get the LevelData<FArrayBox> data pointer.
References m_data.
|
inline |
Get the flag for owning data deallocation
References abs(), addConst(), compare(), constrMask(), div(), dotProd(), getLength(), inv(), invTest(), l1Norm(), linearSum(), m_ownData, maxNorm(), min(), minQuotient(), prod(), scale(), setConst(), wL2Norm(), wRMSNorm(), and wRMSNormMask().
|
virtual |
SUNDIALS operation - calculates a*x+b*y and puts in this instance's data
Implements ChomboSundialsAdaptor.
Referenced by getOwnData().
|
virtual |
SUNDIALS operation - sets this instance's data to c
Implements ChomboSundialsAdaptor.
Referenced by getOwnData().
|
virtual |
SUNDIALS operation - sets this instance's data to x*y
Implements ChomboSundialsAdaptor.
Referenced by getOwnData().
|
virtual |
SUNDIALS operation - sets this instance's data to x/y
Implements ChomboSundialsAdaptor.
Referenced by getOwnData().
|
virtual |
SUNDIALS operation - sets this instance's data to c*x
Implements ChomboSundialsAdaptor.
Referenced by getOwnData().
|
virtual |
SUNDIALS operation - sets this instance's data to abs(x)
Implements ChomboSundialsAdaptor.
Referenced by getOwnData().
|
virtual |
SUNDIALS operation - sets this instance's data to 1/x
Implements ChomboSundialsAdaptor.
Referenced by getOwnData().
|
virtual |
SUNDIALS operation - sets this instance's data to x+b
Implements ChomboSundialsAdaptor.
Referenced by getOwnData().
|
virtual |
SUNDIALS operation - returns MPI-sum dot product sum(data^T * input) across all MPI ranks
Implements ChomboSundialsAdaptor.
Referenced by getOwnData().
|
virtual |
SUNDIALS operation - returns MPI-reduce across all MPI ranks' data max norm
Implements ChomboSundialsAdaptor.
Referenced by getOwnData().
|
virtual |
SUNDIALS operation - returns MPI-reduce across all ranks' data weighted RMS (root mean square) norm
Implements ChomboSundialsAdaptor.
Referenced by getOwnData().
|
virtual |
SUNDIALS operation - not implemented, Aborts
Implements ChomboSundialsAdaptor.
Referenced by getOwnData().
|
virtual |
SUNDIALS operation - returns MPI-reduce across all ranks' data min
Implements ChomboSundialsAdaptor.
Referenced by getOwnData().
|
virtual |
SUNDIALS operation - returns MPI-reduce L1 norm (sum abs values)
Implements ChomboSundialsAdaptor.
Referenced by getOwnData().
|
virtual |
SUNDIALS operation - not implemented, Aborts
Implements ChomboSundialsAdaptor.
Referenced by getOwnData().
|
virtual |
SUNDIALS operation - not implemented, Aborts
Implements ChomboSundialsAdaptor.
Referenced by getOwnData().
|
virtual |
SUNDIALS operation - not implemented, Aborts
Implements ChomboSundialsAdaptor.
Referenced by getOwnData().
|
virtual |
SUNDIALS operation - not implemented, Aborts
Implements ChomboSundialsAdaptor.
Referenced by getOwnData().
|
virtual |
SUNDIALS operation - not implemented, Aborts
Implements ChomboSundialsAdaptor.
Referenced by getOwnData().
|
virtual |
SUNDIALS operation - returns the total number of interior cells multiplied by the number of components
Implements ChomboSundialsAdaptor.
Referenced by getOwnData().
|
inlinevirtual |
Call exchange on the underlying LevelData<FArrayBox>
Implements ChomboSundialsAdaptor.
References LevelData< T >::exchange(), BoxLayoutData< T >::interval(), m_data, print(), printFile(), and printFileHDF().
|
virtual |
Calls dumpLDFPar - careful, very verbose
Implements ChomboSundialsAdaptor.
Referenced by exchange().
|
virtual |
SUNDIALS operation - not implemented, Aborts
Implements ChomboSundialsAdaptor.
Referenced by exchange().
|
virtual |
Calls writeLevelname to produce HDF5 output
Referenced by exchange().
|
inlinevirtual |
Uses MPI to copy values from this to arg, only if DBLs are the same. Returns true if the copy was succesful, false otherwise.
Implements ChomboSundialsAdaptor.
References LevelData< T >::copyTo(), LevelData< T >::disjointBoxLayout(), and m_data.
|
inlinevirtual |
Factory, creates a clone of this and allocates new data (not copied).
Implements ChomboSundialsAdaptor.
References LevelData< T >::define(), m_data, m_dp, m_ghost, m_nComp, m_ownData, and SimpleAdaptor().
Pointer to LevelData<FArrayBox> data this wraps.
Referenced by copyTo(), exchange(), getData(), newAdaptor(), and ~SimpleAdaptor().
|
private |
DisjointBoxLayout of the LevelData<FArrayBox>
Referenced by newAdaptor().
|
private |
Number of components in the LevelData<FArrayBox>
Referenced by newAdaptor().
|
private |
Number of ghost cells in the LevelData<FArrayBox>
Referenced by newAdaptor().
|
private |
If true, will call delete in destructor.
Referenced by getOwnData(), newAdaptor(), and ~SimpleAdaptor().