![]() |
MechSys
1.0
Computing library for simulations in continuum and discrete mechanics
|
#include <beam.h>
Public Member Functions | |
Beam (int NDim, Mesh::Cell const &Cell, Model const *Mdl, Model const *XMdl, SDPair const &Prp, SDPair const &Ini, Array< Node * > const &Nodes) | |
Connectivity. | |
void | SetBCs (size_t IdxEdgeOrFace, SDPair const &BCs, BCFuncs *BCF) |
IdxEdgeOrFace is ignored. | |
void | ClrBCs () |
Clear boundary conditions. | |
void | GetLoc (Array< size_t > &Loc) const |
Get location vector for mounting K/M matrices. | |
void | CalcK (Mat_t &K) const |
Stiffness matrix. | |
void | CalcM (Mat_t &M) const |
Mass matrix. | |
void | CalcT (Mat_t &T, double &l, Vec3_t *normal=NULL) const |
Transformation matrix. | |
void | UpdateState (Vec_t const &dU, Vec_t *F_int=NULL) const |
void | StateKeys (Array< String > &Keys) const |
Get state keys. | |
void | StateAtNodes (Array< SDPair > &Results) const |
State at nodes. | |
void | CalcRes (double r, double &N, double &V, double &M) const |
Resultants: Axial force N, Shear force V, Bending moment M. | |
void | Draw (std::ostream &os, MPyPrms const &Prms) const |
Draw beam and diagram of M, V, or N. | |
Public Attributes | |
double | E |
Young modulus. | |
double | A |
Cross-sectional area. | |
double | Izz |
Inertia. | |
double | rho |
Density. | |
double | qnl |
Normal load (left) | |
double | qnr |
Normal load (right) | |
bool | HasQn |
Has normal load ? |
FEM::Beam::Beam | ( | int | NDim, |
Mesh::Cell const & | Cell, | ||
Model const * | Mdl, | ||
Model const * | XMdl, | ||
SDPair const & | Prp, | ||
SDPair const & | Ini, | ||
Array< Node * > const & | Nodes | ||
) | [inline] |
void FEM::Beam::CalcK | ( | Mat_t & | K | ) | const [inline, virtual] |
Stiffness matrix.
Reimplemented from FEM::Element.
void FEM::Beam::CalcM | ( | Mat_t & | M | ) | const [inline, virtual] |
Mass matrix.
Reimplemented from FEM::Element.
void FEM::Beam::CalcRes | ( | double | r, |
double & | N, | ||
double & | V, | ||
double & | M | ||
) | const [inline] |
Resultants: Axial force N, Shear force V, Bending moment M.
void FEM::Beam::CalcT | ( | Mat_t & | T, |
double & | l, | ||
Vec3_t * | normal = NULL |
||
) | const [inline] |
Transformation matrix.
void FEM::Beam::ClrBCs | ( | ) | [inline, virtual] |
Clear boundary conditions.
Reimplemented from FEM::Element.
void FEM::Beam::Draw | ( | std::ostream & | os, |
MPyPrms const & | Prms | ||
) | const [inline, virtual] |
Draw beam and diagram of M, V, or N.
Reimplemented from FEM::Element.
void FEM::Beam::GetLoc | ( | Array< size_t > & | Loc | ) | const [inline, virtual] |
Get location vector for mounting K/M matrices.
Reimplemented from FEM::Element.
void FEM::Beam::SetBCs | ( | size_t | IdxEdgeOrFace, |
SDPair const & | BCs, | ||
BCFuncs * | BCF | ||
) | [inline, virtual] |
IdxEdgeOrFace is ignored.
Reimplemented from FEM::Element.
void FEM::Beam::StateAtNodes | ( | Array< SDPair > & | Results | ) | const [inline, virtual] |
State at nodes.
Reimplemented from FEM::Element.
void FEM::Beam::StateKeys | ( | Array< String > & | Keys | ) | const [inline, virtual] |
Get state keys.
Reimplemented from FEM::Element.
void FEM::Beam::UpdateState | ( | Vec_t const & | dU, |
Vec_t * | F_int = NULL |
||
) | const [inline, virtual] |
Reimplemented from FEM::Element.
double FEM::Beam::A |
Cross-sectional area.
double FEM::Beam::E |
Young modulus.
bool FEM::Beam::HasQn |
Has normal load ?
double FEM::Beam::Izz |
Inertia.
double FEM::Beam::qnl |
Normal load (left)
double FEM::Beam::qnr |
Normal load (right)
double FEM::Beam::rho |
Density.