IBAMR  IBAMR version 0.19.
Classes | Public Member Functions | Static Public Member Functions | Static Public Attributes | Private Types | Private Member Functions | Private Attributes | List of all members
IBAMR::MaterialPointSpec Class Reference

Class MaterialPointSpec encapsulates data necessary to define the properties associated with an immersed material point.

#include <ibamr/MaterialPointSpec.h>

Inheritance diagram for IBAMR::MaterialPointSpec:
Inheritance graph
[legend]

Classes

class  Factory
 A factory class to rebuild MaterialPointSpec objects from SAMRAI::tbox::AbstractStream data streams. More...
 

Public Member Functions

 MaterialPointSpec (int point_idx=IBTK::invalid_index, double weight=0.0, libMesh::subdomain_id_type subdomain_id=0, const std::vector< double > &internal_vars=std::vector< double >())
 Default constructor. More...
 
 ~MaterialPointSpec ()
 Destructor. More...
 
const intgetPointIndex () const
 
intgetPointIndex ()
 
const doublegetWeight () const
 
doublegetWeight ()
 
const libMesh::subdomain_id_type & getSubdomainId () const
 
libMesh::subdomain_id_type & getSubdomainId ()
 
const std::vector< double > & getInternalVariables () const
 
std::vector< double > & getInternalVariables ()
 
int getStreamableClassID () const override
 Return the unique identifier used to specify the IBTK::StreamableFactory object used by the IBTK::StreamableManager to extract Streamable objects from data streams. More...
 
size_t getDataStreamSize () const override
 Return an upper bound on the amount of space required to pack the object to a buffer. More...
 
void packStream (SAMRAI::tbox::AbstractStream &stream) override
 Pack data into the output stream. More...
 
virtual void registerPeriodicShift (const SAMRAI::hier::IntVector< NDIM > &offset, const Vector &displacement)
 Indicate that the Streamable object has been shifted across a periodic boundary. More...
 

Static Public Member Functions

static void registerWithStreamableManager ()
 Register this class and its factory class with the singleton IBTK::StreamableManager object. This method must be called before any MaterialPointSpec objects are created. More...
 
static bool getIsRegisteredWithStreamableManager ()
 Returns a boolean indicating whether the class has been registered with the singleton IBTK::StreamableManager object. More...
 

Static Public Attributes

static int STREAMABLE_CLASS_ID
 

Private Types

using MaterialPointSpecFactory = MaterialPointSpec::Factory
 

Private Member Functions

 MaterialPointSpec (const MaterialPointSpec &from)=delete
 Copy constructor. More...
 
MaterialPointSpecoperator= (const MaterialPointSpec &that)=delete
 Assignment operator. More...
 

Private Attributes

int d_point_idx
 
double d_weight
 
libMesh::subdomain_id_type d_subdomain_id
 
std::vector< doubled_internal_vars
 

Member Typedef Documentation

◆ MaterialPointSpecFactory

Constructor & Destructor Documentation

◆ MaterialPointSpec() [1/2]

IBAMR::MaterialPointSpec::MaterialPointSpec ( int  point_idx = IBTK::invalid_index,
double  weight = 0.0,
libMesh::subdomain_id_type  subdomain_id = 0,
const std::vector< double > &  internal_vars = std::vector<double>() 
)
inline

◆ ~MaterialPointSpec()

IBAMR::MaterialPointSpec::~MaterialPointSpec ( )
inline

◆ MaterialPointSpec() [2/2]

IBAMR::MaterialPointSpec::MaterialPointSpec ( const MaterialPointSpec from)
privatedelete
Note
This constructor is not implemented and should not be used.
Parameters
fromThe value to copy to this object.

Member Function Documentation

◆ registerWithStreamableManager()

static void IBAMR::MaterialPointSpec::registerWithStreamableManager ( )
static
Note
This method is collective on all MPI processes. This is done to ensure that all processes employ the same class ID for the MaterialPointSpec class.

◆ getIsRegisteredWithStreamableManager()

bool IBAMR::MaterialPointSpec::getIsRegisteredWithStreamableManager ( )
inlinestatic

◆ getPointIndex() [1/2]

int & IBAMR::MaterialPointSpec::getPointIndex ( ) const
inline
Returns
A const reference to the point index.

◆ getPointIndex() [2/2]

int& IBAMR::MaterialPointSpec::getPointIndex ( )
Returns
A non-const reference to the point index.

◆ getWeight() [1/2]

double & IBAMR::MaterialPointSpec::getWeight ( ) const
inline
Returns
A const reference to the weighting factor associated with the material point.

◆ getWeight() [2/2]

double& IBAMR::MaterialPointSpec::getWeight ( )
Returns
A non-const reference to the weighthting factor associated with the material point.

◆ getSubdomainId() [1/2]

libMesh::subdomain_id_type & IBAMR::MaterialPointSpec::getSubdomainId ( ) const
inline
Returns
A const reference to the subdomain_id associated with the material point.

◆ getSubdomainId() [2/2]

libMesh::subdomain_id_type& IBAMR::MaterialPointSpec::getSubdomainId ( )
Returns
A non-const reference to the subdomain_id associated with the material point.

◆ getInternalVariables() [1/2]

std::vector< double > & IBAMR::MaterialPointSpec::getInternalVariables ( ) const
inline
Returns
A const reference to the internal state variables associated with the material point.

◆ getInternalVariables() [2/2]

std::vector<double>& IBAMR::MaterialPointSpec::getInternalVariables ( )
Returns
A non-const reference to the internal state variables associated with the material point.

◆ getStreamableClassID()

int IBAMR::MaterialPointSpec::getStreamableClassID ( ) const
inlineoverridevirtual

Implements IBTK::Streamable.

◆ getDataStreamSize()

size_t IBAMR::MaterialPointSpec::getDataStreamSize ( ) const
inlineoverridevirtual

Implements IBTK::Streamable.

◆ packStream()

void IBAMR::MaterialPointSpec::packStream ( SAMRAI::tbox::AbstractStream stream)
inlineoverridevirtual

Implements IBTK::Streamable.

◆ operator=()

MaterialPointSpec& IBAMR::MaterialPointSpec::operator= ( const MaterialPointSpec 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.

◆ registerPeriodicShift()

virtual void IBTK::Streamable::registerPeriodicShift ( const SAMRAI::hier::IntVector< NDIM > &  offset,
const Vector displacement 
)
virtualinherited
Note
A default empty implementation is provided.

Member Data Documentation

◆ STREAMABLE_CLASS_ID

int IBAMR::MaterialPointSpec::STREAMABLE_CLASS_ID
static

The unique class ID for this object type assigned by the IBTK::StreamableManager.

◆ d_point_idx

int IBAMR::MaterialPointSpec::d_point_idx
private

Material point data.

◆ d_weight

double IBAMR::MaterialPointSpec::d_weight
private

◆ d_subdomain_id

libMesh::subdomain_id_type IBAMR::MaterialPointSpec::d_subdomain_id
private

◆ d_internal_vars

std::vector<double> IBAMR::MaterialPointSpec::d_internal_vars
private

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