IBAMR  IBAMR version 0.20.
Public Types | Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes | List of all members
IBTK::LIndexSetData< T > Class Template Reference

Class LIndexSetData is a specialization of the templated class LSetData that is intended to be used with Lagrangian data objects that provide Lagrangian and PETSc indexing information. More...

#include <ibtk/LIndexSetData.h>

Inheritance diagram for IBTK::LIndexSetData< T >:
Inheritance graph
[legend]

Public Types

using CellIterator = SAMRAI::pdat::CellIterator< NDIM >
 
using SetIterator = SAMRAI::pdat::IndexIterator< NDIM, LSet< T >, SAMRAI::pdat::CellGeometry< NDIM > >
 
using DataIterator = IBTK::LSetDataIterator< T >
 
typedef IndexIterator< DIM, LSet< T >, SAMRAI::pdat::CellGeometry< NDIM > > Iterator
 
typedef ConstIndexIterator< DIM, LSet< T >, SAMRAI::pdat::CellGeometry< NDIM > > ConstIterator
 

Public Member Functions

 LIndexSetData (SAMRAI::hier::Box< NDIM > box, SAMRAI::hier::IntVector< NDIM > ghosts)
 
virtual ~LIndexSetData ()=default
 
void cacheLocalIndices (SAMRAI::tbox::Pointer< SAMRAI::hier::Patch< NDIM >> patch, const SAMRAI::hier::IntVector< NDIM > &periodic_shift)
 Update the cached indexing data. More...
 
const std::vector< int > & getLagrangianIndices () const
 
const std::vector< int > & getInteriorLagrangianIndices () const
 
const std::vector< int > & getGhostLagrangianIndices () const
 
const std::vector< int > & getGlobalPETScIndices () const
 
const std::vector< int > & getInteriorGlobalPETScIndices () const
 
const std::vector< int > & getGhostGlobalPETScIndices () const
 
const std::vector< int > & getLocalPETScIndices () const
 
const std::vector< int > & getInteriorLocalPETScIndices () const
 
const std::vector< int > & getGhostLocalPETScIndices () const
 
const std::vector< double > & getPeriodicShifts () const
 
const std::vector< double > & getInteriorPeriodicShifts () const
 
const std::vector< double > & getGhostPeriodicShifts () const
 
DataIterator data_begin (const SAMRAI::hier::Box< NDIM > &box)
 
DataIterator data_end ()
 
virtual void copy (const hier::PatchData< DIM > &src)
 
virtual void copy (const hier::PatchData< DIM > &src, const hier::BoxOverlap< DIM > &overlap)
 
virtual void copy2 (hier::PatchData< DIM > &dst) const
 
virtual void copy2 (hier::PatchData< DIM > &dst, const hier::BoxOverlap< DIM > &overlap) const
 
virtual bool canEstimateStreamSizeFromBox () const
 
virtual int getDataStreamSize (const hier::BoxOverlap< DIM > &overlap) const
 
virtual void packStream (tbox::AbstractStream &stream, const hier::BoxOverlap< DIM > &overlap) const
 
virtual void unpackStream (tbox::AbstractStream &stream, const hier::BoxOverlap< DIM > &overlap)
 
void appendItem (const hier::Index< DIM > &index, const LSet< T > &item)
 
void appendItemPointer (const hier::Index< DIM > &index, LSet< T > *item)
 
void addItem (const hier::Index< DIM > &index, const LSet< T > &item)
 
void addItemPointer (const hier::Index< DIM > &index, LSet< T > *item)
 
void replaceAddItem (const hier::Index< DIM > &index, const LSet< T > &item)
 
void replaceAddItemPointer (const hier::Index< DIM > &index, LSet< T > *item)
 
void replaceAppendItem (const hier::Index< DIM > &index, const LSet< T > &item)
 
void replaceAppendItemPointer (const hier::Index< DIM > &index, LSet< T > *item)
 
void removeItem (const hier::Index< DIM > &index)
 
int getNumberOfItems () const
 
void removeInsideBox (const hier::Box< DIM > &box)
 
void removeOutsideBox (const hier::Box< DIM > &box)
 
void removeGhostItems ()
 
void removeAllItems ()
 
bool isElement (const hier::Index< DIM > &index) const
 
LSet< T > * getItem (const hier::Index< DIM > &index) const
 
virtual void getSpecializedFromDatabase (tbox::Pointer< tbox::Database > database)
 
virtual void putSpecializedToDatabase (tbox::Pointer< tbox::Database > database)
 
const Box< DIM > & getBox () const
 
const Box< DIM > & getGhostBox () const
 
const IntVector< DIM > & getGhostCellWidth () const
 
void setTime (const double timestamp)
 
double getTime () const
 
virtual void getFromDatabase (tbox::Pointer< tbox::Database > database)
 
virtual void putToDatabase (tbox::Pointer< tbox::Database > database)
 

Protected Member Functions

void setGhostBox (const Box< DIM > &ghost_box)
 

Private Member Functions

 LIndexSetData ()=delete
 Default constructor. More...
 
 LIndexSetData (const LIndexSetData< T > &from)=delete
 Copy constructor. More...
 
LIndexSetDataoperator= (const LIndexSetData< T > &that)=delete
 Assignment operator. More...
 
void removeItem (const int offset)
 
bool isElement (int offset) const
 
void addItemToList (const hier::Index< DIM > &index, const int offset, LSet< T > &item)
 
void appendItemToList (const hier::Index< DIM > &index, const int offset, LSet< T > &item)
 
void removeNodeFromList (IndexDataNode< DIM, LSet< T >, SAMRAI::pdat::CellGeometry< NDIM > > *node)
 

Private Attributes

std::vector< int > d_lag_indices
 
std::vector< int > d_interior_lag_indices
 
std::vector< int > d_ghost_lag_indices
 
std::vector< int > d_global_petsc_indices
 
std::vector< int > d_interior_global_petsc_indices
 
std::vector< int > d_ghost_global_petsc_indices
 
std::vector< int > d_local_petsc_indices
 
std::vector< int > d_interior_local_petsc_indices
 
std::vector< int > d_ghost_local_petsc_indices
 
std::vector< double > d_periodic_shifts
 
std::vector< double > d_interior_periodic_shifts
 
std::vector< double > d_ghost_periodic_shifts
 
std::vector< IndexDataNode< DIM, LSet< T >, SAMRAI::pdat::CellGeometry< NDIM > > * > d_data
 
IndexDataNode< DIM, LSet< T >, SAMRAI::pdat::CellGeometry< NDIM > > * d_list_head
 
IndexDataNode< DIM, LSet< T >, SAMRAI::pdat::CellGeometry< NDIM > > * d_list_tail
 
int d_number_items
 
Box< DIM > d_box
 
Box< DIM > d_ghost_box
 
IntVector< DIM > d_ghosts
 
double d_timestamp
 

Detailed Description

template<class T>
class IBTK::LIndexSetData< T >

See also
LSetData
SAMRAI::pdat::IndexData

Member Typedef Documentation

◆ CellIterator

template<class T >
using IBTK::LSetData< T >::CellIterator = SAMRAI::pdat::CellIterator<NDIM>
inherited

This iterator iterates over the elements of a cell centered box geometry.

◆ SetIterator

template<class T >
using IBTK::LSetData< T >::SetIterator = SAMRAI::pdat::IndexIterator<NDIM, LSet<T>, SAMRAI::pdat::CellGeometry<NDIM> >
inherited

This iterator iterates over the LSet elements within the IndexData patch data object.

◆ DataIterator

template<class T >
using IBTK::LSetData< T >::DataIterator = IBTK::LSetDataIterator<T>
inherited

This iterator iterates over the Lagrangian elements located within a cell centered box geometry.

◆ Iterator

typedef IndexIterator<DIM,LSet< T > ,SAMRAI::pdat::CellGeometry< NDIM > > SAMRAI::pdat::IndexData< DIM, LSet< T > , SAMRAI::pdat::CellGeometry< NDIM > >::Iterator
inherited

Define the iterator.

◆ ConstIterator

typedef ConstIndexIterator<DIM,LSet< T > ,SAMRAI::pdat::CellGeometry< NDIM > > SAMRAI::pdat::IndexData< DIM, LSet< T > , SAMRAI::pdat::CellGeometry< NDIM > >::ConstIterator
inherited

Constructor & Destructor Documentation

◆ LIndexSetData() [1/3]

template<class T >
IBTK::LIndexSetData< T >::LIndexSetData ( SAMRAI::hier::Box< NDIM >  box,
SAMRAI::hier::IntVector< NDIM >  ghosts 
)

The constructor for an LIndexSetData object. The box describes the interior of the index space and the ghosts vector describes the ghost nodes in each coordinate direction.

◆ ~LIndexSetData()

template<class T >
virtual IBTK::LIndexSetData< T >::~LIndexSetData ( )
virtualdefault

The virtual destructor for an LIndexSetData object.

◆ LIndexSetData() [2/3]

template<class T >
IBTK::LIndexSetData< T >::LIndexSetData ( )
privatedelete
Note
This constructor is not implemented and should not be used.

◆ LIndexSetData() [3/3]

template<class T >
IBTK::LIndexSetData< T >::LIndexSetData ( const LIndexSetData< T > &  from)
privatedelete
Note
This constructor is not implemented and should not be used.
Parameters
fromThe value to copy to this object.

Member Function Documentation

◆ cacheLocalIndices()

template<class T >
void IBTK::LIndexSetData< T >::cacheLocalIndices ( SAMRAI::tbox::Pointer< SAMRAI::hier::Patch< NDIM >>  patch,
const SAMRAI::hier::IntVector< NDIM > &  periodic_shift 
)

◆ getLagrangianIndices()

template<class T >
const std::vector< int > & IBTK::LIndexSetData< T >::getLagrangianIndices
inline
Returns
A constant reference to the set of Lagrangian data indices that lie in the patch (including the ghost cell region).

◆ getInteriorLagrangianIndices()

template<class T >
const std::vector< int > & IBTK::LIndexSetData< T >::getInteriorLagrangianIndices
inline
Returns
A constant reference to the set of Lagrangian data indices that lie in the patch interior.

◆ getGhostLagrangianIndices()

template<class T >
const std::vector< int > & IBTK::LIndexSetData< T >::getGhostLagrangianIndices
inline
Returns
A constant reference to the set of Lagrangian data indices that lie in the ghost cell region of the patch data object.

◆ getGlobalPETScIndices()

template<class T >
const std::vector< int > & IBTK::LIndexSetData< T >::getGlobalPETScIndices
inline
Returns
A constant reference to the set of global PETSc data indices that lie in the patch (including the ghost cell region).

◆ getInteriorGlobalPETScIndices()

template<class T >
const std::vector< int > & IBTK::LIndexSetData< T >::getInteriorGlobalPETScIndices
inline
Returns
A constant reference to the set of global PETSc data indices that lie in the patch interior.

◆ getGhostGlobalPETScIndices()

template<class T >
const std::vector< int > & IBTK::LIndexSetData< T >::getGhostGlobalPETScIndices
inline
Returns
A constant reference to the set of global PETSc data indices that lie in the ghost cell region of the patch data object.

◆ getLocalPETScIndices()

template<class T >
const std::vector< int > & IBTK::LIndexSetData< T >::getLocalPETScIndices
inline
Returns
A constant reference to the set of local PETSc data indices that lie in the patch (including the ghost cell region).

◆ getInteriorLocalPETScIndices()

template<class T >
const std::vector< int > & IBTK::LIndexSetData< T >::getInteriorLocalPETScIndices
inline
Returns
A constant reference to the set of local PETSc data indices that lie in the patch interior.

◆ getGhostLocalPETScIndices()

template<class T >
const std::vector< int > & IBTK::LIndexSetData< T >::getGhostLocalPETScIndices
inline
Returns
A constant reference to the set of local PETSc data indices that lie in the ghost cell region of the patch data object.

◆ getPeriodicShifts()

template<class T >
const std::vector< double > & IBTK::LIndexSetData< T >::getPeriodicShifts
Returns
A constant reference to the periodic shifts for the indices that lie in the patch (including the ghost cell region).

◆ getInteriorPeriodicShifts()

template<class T >
const std::vector< double > & IBTK::LIndexSetData< T >::getInteriorPeriodicShifts
Returns
A constant reference to the periodic shifts for the indices that lie in the patch interior.

◆ getGhostPeriodicShifts()

template<class T >
const std::vector< double > & IBTK::LIndexSetData< T >::getGhostPeriodicShifts
Returns
A constant reference to the periodic shifts for the indices that lie in the ghost cell region of the patch data object.

◆ operator=()

template<class T >
LIndexSetData& IBTK::LIndexSetData< T >::operator= ( const LIndexSetData< T > &  that)
privatedelete
Note
This operator is not implemented and should not be used.
Parameters
thatThe value to assign to this object.
Returns
A reference to this object.

◆ data_begin()

template<class T >
LSetData< T >::DataIterator IBTK::LSetData< T >::data_begin ( const SAMRAI::hier::Box< NDIM > &  box)
inlineinherited

Return an iterator to the first Lagrangian data object in the specified region of index space.

◆ data_end()

template<class T >
LSetData< T >::DataIterator IBTK::LSetData< T >::data_end
inlineinherited

Return an iterator pointing to the end of the collection of Lagrangian data objects associated with the patch data object.

◆ copy() [1/2]

virtual void SAMRAI::pdat::IndexData< DIM, LSet< T > , SAMRAI::pdat::CellGeometry< NDIM > >::copy ( const hier::PatchData< DIM > &  src)
virtualinherited

A fast copy between the source and destination. All data is copied from the source into the destination where there is overlap in the index space.

Implements SAMRAI::hier::PatchData< DIM >.

◆ copy() [2/2]

virtual void SAMRAI::pdat::IndexData< DIM, LSet< T > , SAMRAI::pdat::CellGeometry< NDIM > >::copy ( const hier::PatchData< DIM > &  src,
const hier::BoxOverlap< DIM > &  overlap 
)
virtualinherited

Copy data from the source into the destination using the designated overlap descriptor. The overlap description should have been computed previously from computeIntersection().

Implements SAMRAI::hier::PatchData< DIM >.

◆ copy2() [1/2]

virtual void SAMRAI::pdat::IndexData< DIM, LSet< T > , SAMRAI::pdat::CellGeometry< NDIM > >::copy2 ( hier::PatchData< DIM > &  dst) const
virtualinherited

A fast copy between the source and destination. Data is copied from the source into the destination where there is overlap in the underlying index space. The copy is performed on the interior plus the ghost cell width (for both the source and destination). If this copy does not understand how to copy data from the destination, then it may throw an exception (aka dump core in a failed assertion).

Implements SAMRAI::hier::PatchData< DIM >.

◆ copy2() [2/2]

virtual void SAMRAI::pdat::IndexData< DIM, LSet< T > , SAMRAI::pdat::CellGeometry< NDIM > >::copy2 ( hier::PatchData< DIM > &  dst,
const hier::BoxOverlap< DIM > &  overlap 
) const
virtualinherited

Copy data from the source into the destination using the designated overlap descriptor. The overlap description will have been computed using the appropriate box geometry objects If this member function cannot complete the copy from the destination, then it may throw an exception (aka dump core in a failed assertion).

Implements SAMRAI::hier::PatchData< DIM >.

◆ canEstimateStreamSizeFromBox()

virtual bool SAMRAI::pdat::IndexData< DIM, LSet< T > , SAMRAI::pdat::CellGeometry< NDIM > >::canEstimateStreamSizeFromBox ( ) const
virtualinherited

Determines whether the hier::PatchData subclass can estinate the necessary stream size using only index space information.

Implements SAMRAI::hier::PatchData< DIM >.

◆ getDataStreamSize()

virtual int SAMRAI::pdat::IndexData< DIM, LSet< T > , SAMRAI::pdat::CellGeometry< NDIM > >::getDataStreamSize ( const hier::BoxOverlap< DIM > &  overlap) const
virtualinherited

Calculate the number of bytes needed to stream the data lying in the specified box domain.

Implements SAMRAI::hier::PatchData< DIM >.

◆ packStream()

virtual void SAMRAI::pdat::IndexData< DIM, LSet< T > , SAMRAI::pdat::CellGeometry< NDIM > >::packStream ( tbox::AbstractStream stream,
const hier::BoxOverlap< DIM > &  overlap 
) const
virtualinherited

Pack data lying on the specified index set into the output stream.

Implements SAMRAI::hier::PatchData< DIM >.

◆ unpackStream()

virtual void SAMRAI::pdat::IndexData< DIM, LSet< T > , SAMRAI::pdat::CellGeometry< NDIM > >::unpackStream ( tbox::AbstractStream stream,
const hier::BoxOverlap< DIM > &  overlap 
)
virtualinherited

Unpack data from the message stream into the specified index set.

Implements SAMRAI::hier::PatchData< DIM >.

◆ appendItem()

void SAMRAI::pdat::IndexData< DIM, LSet< T > , SAMRAI::pdat::CellGeometry< NDIM > >::appendItem ( const hier::Index< DIM > &  index,
const LSet< T > &  item 
)
inherited

Add a new item to the tail of the irregular index set.

◆ appendItemPointer()

void SAMRAI::pdat::IndexData< DIM, LSet< T > , SAMRAI::pdat::CellGeometry< NDIM > >::appendItemPointer ( const hier::Index< DIM > &  index,
LSet< T > *  item 
)
inherited

Add a pointer to a new item to the tail of the irregular index set. IndexData will delete the item when it is no longer needed by IndexData. Due to this behavior item must be dynamically created (e.g. new) so that it may be deleted.

NOTE: This is an optimization to avoid an extra constructor call. It should be used with caution, the caller MUST NOT delete the referenced item. Think of this as giving up control of the item to IndexData.

◆ addItem()

void SAMRAI::pdat::IndexData< DIM, LSet< T > , SAMRAI::pdat::CellGeometry< NDIM > >::addItem ( const hier::Index< DIM > &  index,
const LSet< T > &  item 
)
inherited

Add a new item to the head of the irregular index set

◆ addItemPointer()

void SAMRAI::pdat::IndexData< DIM, LSet< T > , SAMRAI::pdat::CellGeometry< NDIM > >::addItemPointer ( const hier::Index< DIM > &  index,
LSet< T > *  item 
)
inherited

Add a pointer to a new item to the head of the irregular index set. IndexData will delete the item when it is no longer needed by IndexData. Due to this behavior item must be dynamically created (e.g. new) so that it may be deleted.

NOTE: This is an optimization to avoid an extra constructor call. It should be used with caution, the caller MUST NOT delete the referenced item. Think of this as giving up control of the item to IndexData.

◆ replaceAddItem()

void SAMRAI::pdat::IndexData< DIM, LSet< T > , SAMRAI::pdat::CellGeometry< NDIM > >::replaceAddItem ( const hier::Index< DIM > &  index,
const LSet< T > &  item 
)
inherited

Remove (deallocate) the item in the irregular index set located at the specified hier::Index and replace it with a new item.

This preserves the iteration order of the orginal insertions.

If an item does not already exist at index this is equivelent to addItem.

◆ replaceAddItemPointer()

void SAMRAI::pdat::IndexData< DIM, LSet< T > , SAMRAI::pdat::CellGeometry< NDIM > >::replaceAddItemPointer ( const hier::Index< DIM > &  index,
LSet< T > *  item 
)
inherited

Remove (deallocate) the item in the irregular index set located at the specified hier::Index and replace it with a new item.

This preserves the iteration order of the original insertions.

If an item does not already exist at index this is equivelent to addItemPointer.

See addItemPointer for additional comments on pointer semantics.

◆ replaceAppendItem()

void SAMRAI::pdat::IndexData< DIM, LSet< T > , SAMRAI::pdat::CellGeometry< NDIM > >::replaceAppendItem ( const hier::Index< DIM > &  index,
const LSet< T > &  item 
)
inherited

Remove (deallocate) the item in the irregular index set located at the specified hier::Index and replace it with a new item.

This preserves the iteration order of the orginal insertions.

If an item does not already exist at index this is equivelent to appendItem.

◆ replaceAppendItemPointer()

void SAMRAI::pdat::IndexData< DIM, LSet< T > , SAMRAI::pdat::CellGeometry< NDIM > >::replaceAppendItemPointer ( const hier::Index< DIM > &  index,
LSet< T > *  item 
)
inherited

Remove (deallocate) the item in the irregular index set located at the specified hier::Index and replace it with a new item.

This preserves the iteration order of the original insertions.

If an item does not already exist at index this is equivelent to appendItemPointer.

See addItemPointer for additional comments on pointer semantics.

◆ removeItem() [1/2]

void SAMRAI::pdat::IndexData< DIM, LSet< T > , SAMRAI::pdat::CellGeometry< NDIM > >::removeItem ( const hier::Index< DIM > &  index)
inherited

Remove (deallocate) the item in the irregular index set located at the specified hier::Index.

◆ removeItem() [2/2]

void SAMRAI::pdat::IndexData< DIM, LSet< T > , SAMRAI::pdat::CellGeometry< NDIM > >::removeItem ( const int  offset)
privateinherited

Remove (deallocate) the item in the irregular index set located at the offset.

NOTE: This is for optimization to avoid computing offset repeatedly.

◆ getNumberOfItems()

int SAMRAI::pdat::IndexData< DIM, LSet< T > , SAMRAI::pdat::CellGeometry< NDIM > >::getNumberOfItems ( ) const
inherited

Return the number of data items (i.e. the number of indices) in
the index data list.

◆ removeInsideBox()

void SAMRAI::pdat::IndexData< DIM, LSet< T > , SAMRAI::pdat::CellGeometry< NDIM > >::removeInsideBox ( const hier::Box< DIM > &  box)
inherited

Remove (deallocate) any items in the irregular index set located in the index space of the hier::Box.

◆ removeOutsideBox()

void SAMRAI::pdat::IndexData< DIM, LSet< T > , SAMRAI::pdat::CellGeometry< NDIM > >::removeOutsideBox ( const hier::Box< DIM > &  box)
inherited

Remove (deallocate) any items in the irregular index set located outside of the index space of the hier::Box.

◆ removeGhostItems()

void SAMRAI::pdat::IndexData< DIM, LSet< T > , SAMRAI::pdat::CellGeometry< NDIM > >::removeGhostItems ( )
inherited

Remove (deallocate) the items in the irregular index set located in the ghost region of the patch.

◆ removeAllItems()

void SAMRAI::pdat::IndexData< DIM, LSet< T > , SAMRAI::pdat::CellGeometry< NDIM > >::removeAllItems ( )
inherited

Remove (deallocate) all items in the irregular index set.

◆ isElement() [1/2]

bool SAMRAI::pdat::IndexData< DIM, LSet< T > , SAMRAI::pdat::CellGeometry< NDIM > >::isElement ( const hier::Index< DIM > &  index) const
inherited

Returns true if there is an element of the irregular index set at the specified hier::Index.

◆ isElement() [2/2]

bool SAMRAI::pdat::IndexData< DIM, LSet< T > , SAMRAI::pdat::CellGeometry< NDIM > >::isElement ( int  offset) const
privateinherited

Returns true if element exists at offset

◆ getItem()

LSet< T > * SAMRAI::pdat::IndexData< DIM, LSet< T > , SAMRAI::pdat::CellGeometry< NDIM > >::getItem ( const hier::Index< DIM > &  index) const
inherited

Given an index, return a pointer to the item located at that index. If there is no item at the index, null is returned.

◆ getSpecializedFromDatabase()

virtual void SAMRAI::pdat::IndexData< DIM, LSet< T > , SAMRAI::pdat::CellGeometry< NDIM > >::getSpecializedFromDatabase ( tbox::Pointer< tbox::Database database)
virtualinherited

Check to make sure that the class version number is the same as the restart file version number.

Assertions: database must be a non-null pointer.

Implements SAMRAI::hier::PatchData< DIM >.

◆ putSpecializedToDatabase()

virtual void SAMRAI::pdat::IndexData< DIM, LSet< T > , SAMRAI::pdat::CellGeometry< NDIM > >::putSpecializedToDatabase ( tbox::Pointer< tbox::Database database)
virtualinherited

Write out the class version number to the database.

Assertions: database must be a non-null pointer.

Implements SAMRAI::hier::PatchData< DIM >.

◆ addItemToList()

void SAMRAI::pdat::IndexData< DIM, LSet< T > , SAMRAI::pdat::CellGeometry< NDIM > >::addItemToList ( const hier::Index< DIM > &  index,
const int  offset,
LSet< T > &  item 
)
privateinherited

Internal routine to append item to the linked list representation.

NOTE: Offset is not strictly necessary but was include to avoid computing it repeatedly.

◆ appendItemToList()

void SAMRAI::pdat::IndexData< DIM, LSet< T > , SAMRAI::pdat::CellGeometry< NDIM > >::appendItemToList ( const hier::Index< DIM > &  index,
const int  offset,
LSet< T > &  item 
)
privateinherited

◆ removeNodeFromList()

void SAMRAI::pdat::IndexData< DIM, LSet< T > , SAMRAI::pdat::CellGeometry< NDIM > >::removeNodeFromList ( IndexDataNode< DIM, LSet< T > , SAMRAI::pdat::CellGeometry< NDIM > > *  node)
privateinherited

Remove the specified node from the linked list.

◆ getBox()

template<int DIM>
const Box<DIM>& SAMRAI::hier::PatchData< DIM >::getBox ( ) const
inherited

Return the box over which this patch data object is defined. All objects in the same patch are defined over the same box, although the patch data objects may interpret how to allocate storage for that box in different ways.

◆ getGhostBox()

template<int DIM>
const Box<DIM>& SAMRAI::hier::PatchData< DIM >::getGhostBox ( ) const
inherited

Return the ghost cell box. The ghost cell box is defined to be the interior box grown by the ghost cell width.

◆ getGhostCellWidth()

template<int DIM>
const IntVector<DIM>& SAMRAI::hier::PatchData< DIM >::getGhostCellWidth ( ) const
inherited

Get the ghost cell width associated with this patch data object.

◆ setTime()

template<int DIM>
void SAMRAI::hier::PatchData< DIM >::setTime ( const double  timestamp)
inherited

Set the simulation time stamp for the patch data type. The simulation time is initialized to zero when the patch data type is created.

◆ getTime()

template<int DIM>
double SAMRAI::hier::PatchData< DIM >::getTime ( ) const
inherited

Get the simulation time stamp for the patch data type.

◆ getFromDatabase()

template<int DIM>
virtual void SAMRAI::hier::PatchData< DIM >::getFromDatabase ( tbox::Pointer< tbox::Database database)
virtualinherited

Checks that class version and restart file version are equal. If so, reads in the data members common to all patch data types from database. This method then calls the getSpecializedFromDatabase() method to retrieve the data special to the concrete patch data type.

◆ putToDatabase()

template<int DIM>
virtual void SAMRAI::hier::PatchData< DIM >::putToDatabase ( tbox::Pointer< tbox::Database database)
virtualinherited

Writes out the class version number to the database. Then, writes the data members common to all patch data types from database. After the common data is written to the database, the putSpecializedToDatabase() method is invoked.

◆ setGhostBox()

template<int DIM>
void SAMRAI::hier::PatchData< DIM >::setGhostBox ( const Box< DIM > &  ghost_box)
protectedinherited

This protected method is used by concrete patch data subclasses to set the ghost box over which the patch data will be allocated. Note that this allows the ghost box to be inconsistant with its standard interpretation as the patch domain box grown by the ghost cell width (as set in the constructor).

This function is included to treat some special cases for concrete patch data types and should be used with caution.

Member Data Documentation

◆ d_lag_indices

template<class T >
std::vector<int> IBTK::LIndexSetData< T >::d_lag_indices
private

◆ d_interior_lag_indices

template<class T >
std::vector<int> IBTK::LIndexSetData< T >::d_interior_lag_indices
private

◆ d_ghost_lag_indices

template<class T >
std::vector<int> IBTK::LIndexSetData< T >::d_ghost_lag_indices
private

◆ d_global_petsc_indices

template<class T >
std::vector<int> IBTK::LIndexSetData< T >::d_global_petsc_indices
private

◆ d_interior_global_petsc_indices

template<class T >
std::vector<int> IBTK::LIndexSetData< T >::d_interior_global_petsc_indices
private

◆ d_ghost_global_petsc_indices

template<class T >
std::vector<int> IBTK::LIndexSetData< T >::d_ghost_global_petsc_indices
private

◆ d_local_petsc_indices

template<class T >
std::vector<int> IBTK::LIndexSetData< T >::d_local_petsc_indices
private

◆ d_interior_local_petsc_indices

template<class T >
std::vector<int> IBTK::LIndexSetData< T >::d_interior_local_petsc_indices
private

◆ d_ghost_local_petsc_indices

template<class T >
std::vector<int> IBTK::LIndexSetData< T >::d_ghost_local_petsc_indices
private

◆ d_periodic_shifts

template<class T >
std::vector<double> IBTK::LIndexSetData< T >::d_periodic_shifts
private

◆ d_interior_periodic_shifts

template<class T >
std::vector<double> IBTK::LIndexSetData< T >::d_interior_periodic_shifts
private

◆ d_ghost_periodic_shifts

template<class T >
std::vector<double> IBTK::LIndexSetData< T >::d_ghost_periodic_shifts
private

◆ d_data

std::vector<IndexDataNode<DIM,LSet< T > ,SAMRAI::pdat::CellGeometry< NDIM > > *> SAMRAI::pdat::IndexData< DIM, LSet< T > , SAMRAI::pdat::CellGeometry< NDIM > >::d_data
privateinherited

◆ d_list_head

IndexDataNode<DIM,LSet< T > ,SAMRAI::pdat::CellGeometry< NDIM > >* SAMRAI::pdat::IndexData< DIM, LSet< T > , SAMRAI::pdat::CellGeometry< NDIM > >::d_list_head
privateinherited

◆ d_list_tail

IndexDataNode<DIM,LSet< T > ,SAMRAI::pdat::CellGeometry< NDIM > >* SAMRAI::pdat::IndexData< DIM, LSet< T > , SAMRAI::pdat::CellGeometry< NDIM > >::d_list_tail
privateinherited

◆ d_number_items

int SAMRAI::pdat::IndexData< DIM, LSet< T > , SAMRAI::pdat::CellGeometry< NDIM > >::d_number_items
privateinherited

◆ d_box

template<int DIM>
Box<DIM> SAMRAI::hier::PatchData< DIM >::d_box
privateinherited

◆ d_ghost_box

template<int DIM>
Box<DIM> SAMRAI::hier::PatchData< DIM >::d_ghost_box
privateinherited

◆ d_ghosts

template<int DIM>
IntVector<DIM> SAMRAI::hier::PatchData< DIM >::d_ghosts
privateinherited

◆ d_timestamp

template<int DIM>
double SAMRAI::hier::PatchData< DIM >::d_timestamp
privateinherited

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