RobWorkProject  24.12.4-
Public Member Functions | Friends | List of all members
BeamGeometryCuboid Class Reference

A cuboid beam. More...

#include <BeamGeometryCuboid.hpp>

Inherits BeamGeometry.

Public Member Functions

 BeamGeometryCuboid (double dx, double dy, double dz, const std::vector< double > &Exvec, const std::vector< double > &vxvec, const std::vector< double > &rhovec, const rw::math::Transform3D<> &wTb, const rw::math::Vector3D<> &G)
 Constructor for cuboid deformation geometry. More...
 
virtual double b0 (const int i) const
 Evaluate the \(b_0\) integral. More...
 
virtual double b1 (const int i) const
 Evaluate the \(b_1\) integral. More...
 
virtual double c2 (const int i) const
 Evaluate the \( c_2 \) integral. More...
 
virtual double c3 (const int i) const
 Evaluate the \( c_3 \) integral. More...
 
virtual double c4 (const int i) const
 Evaluate the \( c_4 \) integral. More...
 
virtual double B0 (const int i) const
 evaluate the \( B_0 \) constant More...
 
double getH (void) const
 Returns the thickness of the beam in the z-direction. More...
 
double getK (void) const
 Returns the thickness of the beam in the y-direction. More...
 
- Public Member Functions inherited from BeamGeometry
 BeamGeometry (double L, const std::vector< double > &Exvec, const std::vector< double > &vxvec, const std::vector< double > &rhovec, const rw::math::Transform3D<> &wTb, const rw::math::Vector3D<> &G)
 Constructor for the BeamGeometry class. More...
 
void setTransform (const rw::math::Transform3D<> &T)
 Sets the homogeneous transform of the beam. More...
 
rw::math::Transform3D getTransform (void) const
 Retrieves the world to beam base transform of the beam. More...
 
void setG (const rw::math::Vector3D<> &G)
 sets the directional vector of gravity More...
 
rw::math::Vector3D getG (void) const
 retrieves the directional vector of gravity More...
 
double Ex (const int i) const
 returns the value of Young's modulus at x = i * h More...
 
double vx (const int i) const
 returns the value of Poisson's ratio at x = i * h More...
 
double rho (const int i) const
 returns the value of the mass density at x = i * h More...
 
double kappa (const int i) const
 returns the kappa coefficient at x = i * h More...
 
double g1 (void) const
 returns the x-component of vector of gravity for the current configuration of the beam More...
 
double g2 (void) const
 returns the y-component of vector of gravity for the current configuration of the beam More...
 
double get_a (void) const
 return left boundary of domain More...
 
double get_b (void) const
 return right boundary of domain More...
 
double get_h (void) const
 return stepsize More...
 
double getL (void) const
 return length of beam More...
 
int getM (void) const
 return number of cross sections in beam More...
 

Friends

std::ostream & operator<< (std::ostream &out, const BeamGeometryCuboid &obj)
 Outputs cuboid beam to stream. More...
 

Detailed Description

A cuboid beam.

Implements the BeamGeometry class by the means of analytical integration of a cuboid geometry

Constructor & Destructor Documentation

◆ BeamGeometryCuboid()

BeamGeometryCuboid ( double  dx,
double  dy,
double  dz,
const std::vector< double > &  Exvec,
const std::vector< double > &  vxvec,
const std::vector< double > &  rhovec,
const rw::math::Transform3D<> &  wTb,
const rw::math::Vector3D<> &  G 
)

Constructor for cuboid deformation geometry.

Parameters
dxlength in x (L)
dylength in y
dzlength in z
Exvecvector of Young's modulus for each cross beam cros section, in MPa
vxvecvector of Poisson's ratio for each cross beam cros section
rhovecvector of mass density for each cross beam cros section, in kg/mm^3
wTbworld to base of beam transform
Gvector of gravity, m/s^2

Member Function Documentation

◆ b0()

virtual double b0 ( const int  i) const
virtual

Evaluate the \(b_0\) integral.

Evaluate the \(b_0\) integral, defined as

\[ b_0 = \int \int_{A(x)} \rho (x, y, z) y^0 dz dy \]

at \(x = i h\)

Parameters
iindex at which to evaluate the integral
Returns
the integral value

Implements BeamGeometry.

◆ B0()

virtual double B0 ( const int  i) const
virtual

evaluate the \( B_0 \) constant

\[ B_0(x) = B_0^*(L) - B_0^*(x) \]

with

\[ B_0^*(x) = \int_0^x b_0(s) ds \]

Parameters
iindex at which to evaluate the integral
Returns
the constant value

Implements BeamGeometry.

◆ b1()

virtual double b1 ( const int  i) const
virtual

Evaluate the \(b_1\) integral.

Evaluate the \(b_1\) integral, defined as

\[ b_1 = \int \int_{A(x)} \rho (x, y, z) y^1 dz dy \]

at \(x = i h\)

Parameters
iindex at which to evaluate the integral
Returns
the integral value

Implements BeamGeometry.

◆ c2()

virtual double c2 ( const int  i) const
virtual

Evaluate the \( c_2 \) integral.

Evaluate the \( c_2 \) integral, defined as

\[ c_2 = \int \int_{A(x)} \frac{K(x,y,z)}{8} y^2 dz dy \]

at \( x = i h \)

Parameters
iindex at which to evaluate the integral
Returns
the integral value

Implements BeamGeometry.

◆ c3()

virtual double c3 ( const int  i) const
virtual

Evaluate the \( c_3 \) integral.

Evaluate the \( c_3 \) integral, defined as

\[ c_3 = \int \int_{A(x)} \frac{K(x,y,z)}{8} y^3 dz dy \]

at \( x = i h \)

Parameters
iindex at which to evaluate the integral
Returns
the integral value

Implements BeamGeometry.

◆ c4()

virtual double c4 ( const int  i) const
virtual

Evaluate the \( c_4 \) integral.

Evaluate the \( c_4 \) integral, defined as

\[ c_4 = \int \int_{A(x)} \frac{K(x,y,z)}{8} y^4 dz dy \]

at \( x = i h \)

Parameters
iindex at which to evaluate the integral
Returns
the integral value

Implements BeamGeometry.

◆ getH()

double getH ( void  ) const
inline

Returns the thickness of the beam in the z-direction.

Returns
thickness in z

◆ getK()

double getK ( void  ) const
inline

Returns the thickness of the beam in the y-direction.

Returns
thickness in y

Friends And Related Function Documentation

◆ operator<<

std::ostream& operator<< ( std::ostream &  out,
const BeamGeometryCuboid obj 
)
friend

Outputs cuboid beam to stream.

Parameters
out
obj
Returns

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