IBAMR
An adaptive and distributed-memory parallel implementation of the immersed boundary (IB) method
Classes | Public Member Functions | Protected Attributes | List of all members
IBAMR::ConstraintIBKinematics Class Referenceabstract

Class ConstraintIBKinematics encapsulates structure information and provides abstraction to get kinematics (deformational or imposed) of immersed structure to ConstraintIBMethod class. More...

#include </home/runner/work/IBAMR/IBAMR/include/ibamr/ConstraintIBKinematics.h>

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

Classes

class  StructureParameters
 

Public Member Functions

 ConstraintIBKinematics (std::string object_name, SAMRAI::tbox::Pointer< SAMRAI::tbox::Database > input_db, IBTK::LDataManager *l_data_manager, bool register_for_restart=true)
 Constructor.
 
virtual ~ConstraintIBKinematics ()
 Destructor.
 
const StructureParametersgetStructureParameters () const
 Get the object enclosing this structure's parameters.
 
virtual void setKinematicsVelocity (const double time, const std::vector< double > &incremented_angle_from_reference_axis, const std::vector< double > &center_of_mass, const std::vector< double > &tagged_pt_position)=0
 Set the kinematics velocity (deformational or imposed) at Lagrangian points managed by this object. More...
 
virtual const std::vector< std::vector< double > > & getKinematicsVelocity (const int level) const =0
 Get the kinematics velocity for the structure on the specified level. More...
 
virtual void setShape (const double time, const std::vector< double > &incremented_angle_from_reference_axis)=0
 Set the shape of structure at the required time. The shape should have its center of mass at origin, with appropriate rigid body ratation applied to it. More...
 
virtual const std::vector< std::vector< double > > & getShape (const int level) const =0
 Get the shape of structure on the specified level. More...
 
virtual void putToDatabase (SAMRAI::tbox::Pointer< SAMRAI::tbox::Database > db) override
 Write out object state to the given database. More...
 

Protected Attributes

std::string d_object_name
 
bool d_registered_for_restart = false
 

Detailed Description

Class ConstraintIBKinematics encapsulates structure information and provides abstraction to get kinematics (deformational or imposed) of immersed structure to ConstraintIBMethod class.

Member Function Documentation

◆ getKinematicsVelocity()

virtual const std::vector<std::vector<double> >& IBAMR::ConstraintIBKinematics::getKinematicsVelocity ( const int  level) const
pure virtual

Get the kinematics velocity for the structure on the specified level.

Parameters
levelKinematics velocity of the structure on this level.

◆ getShape()

virtual const std::vector<std::vector<double> >& IBAMR::ConstraintIBKinematics::getShape ( const int  level) const
pure virtual

Get the shape of structure on the specified level.

Parameters
level

◆ putToDatabase()

void IBAMR::ConstraintIBKinematics::putToDatabase ( SAMRAI::tbox::Pointer< SAMRAI::tbox::Database db)
overridevirtual

Write out object state to the given database.

Note
An empty default implementation is provided.

Implements SAMRAI::tbox::Serializable.

◆ setKinematicsVelocity()

virtual void IBAMR::ConstraintIBKinematics::setKinematicsVelocity ( const double  time,
const std::vector< double > &  incremented_angle_from_reference_axis,
const std::vector< double > &  center_of_mass,
const std::vector< double > &  tagged_pt_position 
)
pure virtual

Set the kinematics velocity (deformational or imposed) at Lagrangian points managed by this object.

Parameters
timeTime at which kinematics velocity is to be set.
incremented_angle_from_reference_axisAngle made with x,y & z axis due to rigid rotational velocity. $ \theta_n = \theta_{n-1} + \omega_{n-1} \triangle t $
center_of_massCOM of the structure at the given time.
tagged_pt_positionCoordinates of the tagged point of the structure.

◆ setShape()

virtual void IBAMR::ConstraintIBKinematics::setShape ( const double  time,
const std::vector< double > &  incremented_angle_from_reference_axis 
)
pure virtual

Set the shape of structure at the required time. The shape should have its center of mass at origin, with appropriate rigid body ratation applied to it.

Parameters
timeTime at which kinematics velocity is to be set.
incremented_angle_from_reference_axisAngle made with x,y & z axis due to rigid rotational velocity. $ \theta_n = \theta_{n-1} + \omega_{n-1} \triangle t $.
Note
The call to setShape() is made after setKinematicsVelocity( ) with the same value of the common arguments.

Member Data Documentation

◆ d_object_name

std::string IBAMR::ConstraintIBKinematics::d_object_name
protected

Name of the object.

◆ d_registered_for_restart

bool IBAMR::ConstraintIBKinematics::d_registered_for_restart = false
protected

If the object is registred for restart.


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