waLBerla 7.3
Loading...
Searching...
No Matches
walberla::mesa_pd::data::CylindricalBoundary Class Reference

#include <CylindricalBoundary.h>

Inheritance diagram for walberla::mesa_pd::data::CylindricalBoundary:

Public Member Functions

 CylindricalBoundary (const real_t &radius=1_r, const Vec3 &axis=Vec3(1_r, 0_r, 0_r))
const real_tgetRadius () const
const Vec3getAxis () const
real_t getVolume () const override
void updateMassAndInertia (const real_t density) override
 Updates mass and inertia according to the actual shape.
void pack (walberla::mpi::SendBuffer &buf) override
void unpack (walberla::mpi::RecvBuffer &buf) override
Public Member Functions inherited from walberla::mesa_pd::data::BaseShape
 BaseShape ()=default
 BaseShape (const int shapeType)
virtual ~BaseShape ()=default
const real_tgetMass () const
const real_tgetInvMass () const
const Mat3getInertiaBF () const
const Mat3getInvInertiaBF () const
const ShapeTypeTgetShapeType () const
virtual Vec3 support (const Vec3 &) const

Static Public Attributes

static constexpr int SHAPE_TYPE = 2
 Unique shape type identifier for cylindrical boundaries.
Static Public Attributes inherited from walberla::mesa_pd::data::BaseShape
static const int INVALID_SHAPE = -1
 Unique invalid shape type identifier.

Private Attributes

real_t radius_
 radius of the cylinder
Vec3 axis_
 axis of the cylinder

Additional Inherited Members

Public Types inherited from walberla::mesa_pd::data::BaseShape
using ShapeTypeT = int
Protected Attributes inherited from walberla::mesa_pd::data::BaseShape
real_t mass_ = 0_r
 mass
real_t invMass_ = 0_r
 inverse mass
Mat3 inertiaBF_ = Mat3(0_r)
 inertia matrix in the body frame
Mat3 invInertiaBF_ = Mat3(0_r)
 inverse inertia matrix in the body frame
ShapeTypeT shapeType_ = INVALID_SHAPE

Constructor & Destructor Documentation

◆ CylindricalBoundary()

walberla::mesa_pd::data::CylindricalBoundary::CylindricalBoundary ( const real_t & radius = 1_r,
const Vec3 & axis = Vec3(1_r, 0_r, 0_r) )
inlineexplicit

Member Function Documentation

◆ getAxis()

const Vec3 & walberla::mesa_pd::data::CylindricalBoundary::getAxis ( ) const
inline

◆ getRadius()

const real_t & walberla::mesa_pd::data::CylindricalBoundary::getRadius ( ) const
inline

◆ getVolume()

real_t walberla::mesa_pd::data::CylindricalBoundary::getVolume ( ) const
inlineoverridevirtual

◆ pack()

void walberla::mesa_pd::data::CylindricalBoundary::pack ( walberla::mpi::SendBuffer & buf)
inlineoverridevirtual

◆ unpack()

void walberla::mesa_pd::data::CylindricalBoundary::unpack ( walberla::mpi::RecvBuffer & buf)
inlineoverridevirtual

◆ updateMassAndInertia()

void walberla::mesa_pd::data::CylindricalBoundary::updateMassAndInertia ( const real_t density)
inlineoverridevirtual

Updates mass and inertia according to the actual shape.

Reimplemented from walberla::mesa_pd::data::BaseShape.

Member Data Documentation

◆ axis_

Vec3 walberla::mesa_pd::data::CylindricalBoundary::axis_
private

axis of the cylinder

◆ radius_

real_t walberla::mesa_pd::data::CylindricalBoundary::radius_
private

radius of the cylinder


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