![]() |
MechSys
1.0
Computing library for simulations in continuum and discrete mechanics
|
#include <mpoints2d.h>
Public Types | |
typedef std::map< int, Model * > | Models_t |
Map tag to model pointer. | |
Public Member Functions | |
MPoints2D (size_t nPcell, Grid2D *G, ptIsPointInGeom pIsPointInGeom, ptDensity pDensity, ptModelData pModelData, ptIniVelocity pIniVelocity, ptHasTraction pHasTraction, ptHasAppDisp pHasAppDisp, ptAppDisp pAppDisp=NULL) | |
~MPoints2D () | |
size_t | nPoints () const |
Return the number of material points. | |
size_t | nPointsOnBry () const |
Return the number of material points on boundary. | |
void | SetGrid (Grid2D *G) |
Set access (read/write) to the grid. | |
void | ReInit () |
Reinitialize points (during initial refinement) | |
bool | TimeUpdate (bool FwEuler, double Dt, ptB pB, ptLdM pLdM, double &t, double &DsE) |
Advance one step in time, considering new b-body forces. Returns DsE, the increment of strain Energy. | |
void | SetCPDI (bool UseCPDI=true) |
Use CPDI ? | |
void | SetMPM (bool UseMPM=true) |
Use (original) MPM instead of the generalized MPM (GMPM) ? | |
void | SetUSF (bool DoUSF=true) |
Do update stress first (USF) instead of updating stress last (USL) ? | |
Array< ATensor2 > const & | Fs () const |
Returns access to all deformation gradients. | |
Array< Vector3D > const & | Ps () const |
Returns access to all mat points positions. | |
Array< Vector3D > const & | v () const |
Returns access to all mat points velocities. | |
Array< Vector3D > const & | u () const |
Returns access to all mat points displacements. | |
Vector3D const & | P (size_t i) const |
Returns access to a material point (read) | |
Vector3D const & | B (size_t i) const |
Returns access to a material point which is on boundary (read) | |
double const & | m (size_t i) const |
Mass of the point/particle. | |
Vector3D const & | f (size_t i) const |
Force on the point/particle. | |
Vector3D const & | t (size_t i) const |
Tractions on point/particle. | |
Vector3D const & | fu (size_t i) const |
Applied displacements on point/particle. | |
Vector3D const & | u (size_t i) const |
Displacement of the point/particle. | |
Vector3D const & | v (size_t i) const |
Velocity of the point/particle. | |
Vec_t const & | s (size_t i) const |
Stress on the point/particle. | |
Vec_t const & | e (size_t i) const |
Strain on the point/particle. | |
bool | HasT (size_t i) const |
Is mat point on boundary with applied tractions ? | |
bool | HasU (size_t i) const |
Is mat point on boundary with applied displacements ? | |
int | Clr (size_t i) const |
Color index. | |
Array< EquilibState * > const & | Sta () const |
void | CalcC (size_t p) const |
< calculate corners (must be called before accessing C) | |
void | MinMaxS (int iComp, double &MinS, double &MaxS) const |
limits: stresses | |
void | MinMaxE (int iComp, double &MinE, double &MaxE) const |
limits: strains | |
void | MinMaxCamp (double &Minp, double &Maxp) const |
limits: mean stress | |
void | MinMaxCamq (double &Minq, double &Maxq) const |
limits: deviatoric stress | |
void | MinMaxVelN (double &MinNv, double &MaxNv) const |
limits: norm of velocity | |
Public Attributes | |
Array< Vector3D > | C |
4 corners | |
double | MINMASS |
Minimum mass of the point/particle. | |
Models_t | Mdls |
All models. | |
Static Public Attributes | |
static const int | NDIM = 2 |
typedef std::map<int,Model*> MPM::MPoints2D::Models_t |
Map tag to model pointer.
MPM::MPoints2D::MPoints2D | ( | size_t | nPcell, |
Grid2D * | G, | ||
ptIsPointInGeom | pIsPointInGeom, | ||
ptDensity | pDensity, | ||
ptModelData | pModelData, | ||
ptIniVelocity | pIniVelocity, | ||
ptHasTraction | pHasTraction, | ||
ptHasAppDisp | pHasAppDisp, | ||
ptAppDisp | pAppDisp = NULL |
||
) | [inline] |
Alternative constructor. nPCell=number of points per cell
MPM::MPoints2D::~MPoints2D | ( | ) | [inline] |
Vector3D const& MPM::MPoints2D::B | ( | size_t | i | ) | const [inline] |
Returns access to a material point which is on boundary (read)
void MPM::MPoints2D::CalcC | ( | size_t | p | ) | const [inline] |
< calculate corners (must be called before accessing C)
int MPM::MPoints2D::Clr | ( | size_t | i | ) | const [inline] |
Color index.
Vec_t const& MPM::MPoints2D::e | ( | size_t | i | ) | const [inline] |
Strain on the point/particle.
Vector3D const& MPM::MPoints2D::f | ( | size_t | i | ) | const [inline] |
Force on the point/particle.
Array<ATensor2> const& MPM::MPoints2D::Fs | ( | ) | const [inline] |
Returns access to all deformation gradients.
Vector3D const& MPM::MPoints2D::fu | ( | size_t | i | ) | const [inline] |
Applied displacements on point/particle.
bool MPM::MPoints2D::HasT | ( | size_t | i | ) | const [inline] |
Is mat point on boundary with applied tractions ?
bool MPM::MPoints2D::HasU | ( | size_t | i | ) | const [inline] |
Is mat point on boundary with applied displacements ?
double const& MPM::MPoints2D::m | ( | size_t | i | ) | const [inline] |
Mass of the point/particle.
void MPM::MPoints2D::MinMaxCamp | ( | double & | Minp, |
double & | Maxp | ||
) | const [inline] |
limits: mean stress
void MPM::MPoints2D::MinMaxCamq | ( | double & | Minq, |
double & | Maxq | ||
) | const [inline] |
limits: deviatoric stress
void MPM::MPoints2D::MinMaxE | ( | int | iComp, |
double & | MinE, | ||
double & | MaxE | ||
) | const [inline] |
limits: strains
void MPM::MPoints2D::MinMaxS | ( | int | iComp, |
double & | MinS, | ||
double & | MaxS | ||
) | const [inline] |
limits: stresses
void MPM::MPoints2D::MinMaxVelN | ( | double & | MinNv, |
double & | MaxNv | ||
) | const [inline] |
limits: norm of velocity
size_t MPM::MPoints2D::nPoints | ( | ) | const [inline] |
Return the number of material points.
size_t MPM::MPoints2D::nPointsOnBry | ( | ) | const [inline] |
Return the number of material points on boundary.
Vector3D const& MPM::MPoints2D::P | ( | size_t | i | ) | const [inline] |
Returns access to a material point (read)
Array<Vector3D> const& MPM::MPoints2D::Ps | ( | ) | const [inline] |
Returns access to all mat points positions.
void MPM::MPoints2D::ReInit | ( | ) | [inline] |
Reinitialize points (during initial refinement)
Vec_t const& MPM::MPoints2D::s | ( | size_t | i | ) | const [inline] |
Stress on the point/particle.
void MPM::MPoints2D::SetCPDI | ( | bool | UseCPDI = true | ) | [inline] |
Use CPDI ?
void MPM::MPoints2D::SetGrid | ( | Grid2D * | G | ) | [inline] |
Set access (read/write) to the grid.
void MPM::MPoints2D::SetMPM | ( | bool | UseMPM = true | ) | [inline] |
void MPM::MPoints2D::SetUSF | ( | bool | DoUSF = true | ) | [inline] |
Do update stress first (USF) instead of updating stress last (USL) ?
Array<EquilibState*> const& MPM::MPoints2D::Sta | ( | ) | const [inline] |
Vector3D const& MPM::MPoints2D::t | ( | size_t | i | ) | const [inline] |
Tractions on point/particle.
bool MPM::MPoints2D::TimeUpdate | ( | bool | FwEuler, |
double | Dt, | ||
ptB | pB, | ||
ptLdM | pLdM, | ||
double & | t, | ||
double & | DsE | ||
) | [inline] |
Advance one step in time, considering new b-body forces. Returns DsE, the increment of strain Energy.
Array<Vector3D> const& MPM::MPoints2D::u | ( | ) | const [inline] |
Returns access to all mat points displacements.
Vector3D const& MPM::MPoints2D::u | ( | size_t | i | ) | const [inline] |
Displacement of the point/particle.
Array<Vector3D> const& MPM::MPoints2D::v | ( | ) | const [inline] |
Returns access to all mat points velocities.
Vector3D const& MPM::MPoints2D::v | ( | size_t | i | ) | const [inline] |
Velocity of the point/particle.
Array<Vector3D> MPM::MPoints2D::C [mutable] |
4 corners
All models.
double MPM::MPoints2D::MINMASS |
Minimum mass of the point/particle.
const int MPM::MPoints2D::NDIM = 2 [static] |