MechSys  1.0
Computing library for simulations in continuum and discrete mechanics
Namespaces | Classes | Typedefs | Enumerations | Functions | Variables
MPM Namespace Reference

Material Point Method. More...

Namespaces

namespace  VTU
 

Paraview vtu files generation.


Classes

struct  CurveProps
struct  ShapeAndGrads2D
class  DrawArea2D
struct  FmtNum
class  Grid2D
class  MPoints2D
class  PlotXY
struct  Problem2D
class  TwoTiledVert
class  TwoTiledHorz
class  FourTiled

Typedefs

typedef blitz::TinyVector
< size_t, 4 > 
Connec2D
 for quadrilateral connectivities
typedef blitz::TinyVector
< double, 3 > 
Vector3D
 for position, veloc, accel, etc.
typedef blitz::TinyVector
< double, 6 > 
STensor2
 Symmetric 2nd order tensors: for stress, strain, ...
typedef blitz::TinyVector
< double, 9 > 
ATensor2
 Assymmetric 2nd order tensors: for deformation gradient, ...
typedef blitz::TinyMatrix
< double, 6, 6 > 
STensor4
 Symmetric 4th order tensors: for stiffness ...
typedef blitz::TinyMatrix
< double, 9, 9 > 
ATensor4
 Assymmetric 4th order tensors: for stiffness ...
typedef blitz::TinyVector
< size_t, 6 > 
ConnecW6
 Connectivities for wedge with 6 nodes.
typedef blitz::TinyVector
< size_t, 8 > 
ConnecH8
 Connectivities for hexahedra with 8 nodes.
typedef std::map< int, int >
::const_iterator 
n2i_it
typedef bool(* ptIsFixed )(Vector3D const &N, FixType &FType)
 Callback for applying boundary conditions.
typedef bool(* ptIsPointInGeom )(Vector3D const &P, int &ClrIdx)
 Pointer to a function which checks if a mat point is inside the geometry.
typedef double(* ptDensity )(Vector3D const &P)
 Density function.
typedef void(* ptModelData )(Vector3D const &P, String &Name, int &Tag, int NDim, SDPair &Prms, SDPair &Inis, String &Scheme)
 Get model data.
typedef void(* ptIniVelocity )(Vector3D const &P, Vector3D &v)
 Initialize velocities.
typedef bool(* ptHasTraction )(Vector3D const &P, Array< Vector3D > const &N, Vector3D const &L, int nPCell, Vector3D &t)
 Apply traction to some points inside boundary cells.
typedef bool(* ptHasAppDisp )(Vector3D const &P, Array< Vector3D > const &N, Vector3D const &L, int nPCell, Vector3D &fu)
 Apply displacements to some points inside boundary cells.
typedef void(* ptAppDisp )(Vector3D const &P, STensor2 const &s, Vector3D const &u, Vector3D const &L, int nPCell, Vector3D &fu)
typedef void(* ptB )(double t, Vector3D &B)
 Body force.
typedef void(* ptLdM )(double t, double &M)
 Multiplier for applied external forces.
typedef void(* ptVeloc )(double t, Vector3D const &XY, Vector3D &Vel)
 Correct velocity at time t and position XY.
typedef void(* ptStress )(double t, Vector3D const &XY, STensor2 &Sig)
 Correct stress at time t and position XY.
typedef Fl_Group *(* pAllocGroup )(int X, int Y, int W, int H, void *Extra)

Enumerations

enum  CurveType { CT_POINTS, CT_LINES, CT_BOTH }
enum  ClrMapType { CMT_BWP = 0, CMT_HOT = 1, CMT_JET = 2 }
enum  FieldType {
  FLD_EPSXX, FLD_EPSYY, FLD_EPSZZ, FLD_EPSXY,
  FLD_SIGXX, FLD_SIGYY, FLD_SIGZZ, FLD_SIGXY,
  FLD_CAMP, FLD_CAMQ, FLD_VELN, FLD_TAG
}
enum  FixType {
  FIX_X, FIX_Y, FIX_Z, FIX_XY,
  FIX_YZ, FIX_ZX, FIX_XYZ
}

Functions

bool CompareVec2D (Vector3D const &A, Vector3D const &B)
double Cross2D (Vector3D const &O, Vector3D const &A, Vector3D const &B)
void CHull2D (Array< Vector3D > &P, Array< size_t > &H)
std::ostream & operator<< (std::ostream &os, FmtNum const &FN)
void HideInfoBox (Fl_Widget *IB, void *Win)
void InfoBox (char const *Message)
int JacobiRot (STensor2 const &T, double L[3])
int JacobiRot (STensor2 const &T, double V0[3], double V1[3], double V2[3], double L[3])
void SeparatedLine (std::string const &Line, std::string const &Separator, Array< std::string > &Res)
bool MkdirP (char const *Path)
bool CbIsFixed1 (Vector3D const &N, FixType &FType)
bool CbIsFixed2 (Vector3D const &N, FixType &FType)
bool CbIsFixed3 (Vector3D const &N, FixType &FType)
bool CbIsFixed4 (Vector3D const &N, FixType &FType)
bool CbIsFixed5 (Vector3D const &N, FixType &FType)
bool CbIsFixed6 (Vector3D const &N, FixType &FType)
bool CbIsFixed7 (Vector3D const &N, FixType &FType)
bool CbIsFixed8 (Vector3D const &N, FixType &FType)
bool CbIsFixed10 (Vector3D const &N, FixType &FType)
bool CbIsFixed11 (Vector3D const &N, FixType &FType)
bool CbIsFixed12 (Vector3D const &N, FixType &FType)
bool CbIsFixed13 (Vector3D const &N, FixType &FType)
bool CbIsFixed14 (Vector3D const &N, FixType &FType)
bool CbIsFixed15 (Vector3D const &N, FixType &FType)
bool CbIsFixed16 (Vector3D const &N, FixType &FType)
bool CbIsFixed17 (Vector3D const &N, FixType &FType)
bool CbIsPointInGeom1 (Vector3D const &P, int &ClrIdx)
bool CbIsPointInGeom2 (Vector3D const &P, int &ClrIdx)
bool CbIsPointInGeom3 (Vector3D const &P, int &ClrIdx)
bool CbIsPointInGeom4 (Vector3D const &P, int &ClrIdx)
bool CbIsPointInGeom5 (Vector3D const &P, int &ClrIdx)
bool CbIsPointInGeom6 (Vector3D const &P, int &ClrIdx)
bool CbIsPointInGeom7 (Vector3D const &P, int &ClrIdx)
bool CbIsPointInGeom8 (Vector3D const &P, int &ClrIdx)
bool CbIsPointInGeom10 (Vector3D const &P, int &ClrIdx)
bool CbIsPointInGeom11 (Vector3D const &P, int &ClrIdx)
bool CbIsPointInGeom12 (Vector3D const &P, int &ClrIdx)
bool CbIsPointInGeom13 (Vector3D const &P, int &ClrIdx)
bool CbIsPointInGeom14 (Vector3D const &P, int &ClrIdx)
bool CbIsPointInGeom15 (Vector3D const &P, int &ClrIdx)
bool CbIsPointInGeom16 (Vector3D const &P, int &ClrIdx)
bool CbIsPointInGeom17 (Vector3D const &P, int &ClrIdx)
double CbDensity1 (Vector3D const &P)
double CbDensity2 (Vector3D const &P)
double CbDensity3 (Vector3D const &P)
double CbDensity4 (Vector3D const &P)
double CbDensity5 (Vector3D const &P)
double CbDensity6 (Vector3D const &P)
double CbDensity7 (Vector3D const &P)
double CbDensity8 (Vector3D const &P)
double CbDensity10 (Vector3D const &P)
double CbDensity11 (Vector3D const &P)
double CbDensity12 (Vector3D const &P)
double CbDensity13 (Vector3D const &P)
double CbDensity14 (Vector3D const &P)
double CbDensity15 (Vector3D const &P)
double CbDensity16 (Vector3D const &P)
double CbDensity17 (Vector3D const &P)
void CbAllocMdl1 (Vector3D const &P, String &Name, int &Tag, int NDim, SDPair &Prms, SDPair &Inis, String &Scheme)
void CbAllocMdl2 (Vector3D const &P, String &Name, int &Tag, int NDim, SDPair &Prms, SDPair &Inis, String &Scheme)
void CbAllocMdl3 (Vector3D const &P, String &Name, int &Tag, int NDim, SDPair &Prms, SDPair &Inis, String &Scheme)
void CbAllocMdl4 (Vector3D const &P, String &Name, int &Tag, int NDim, SDPair &Prms, SDPair &Inis, String &Scheme)
void CbAllocMdl5 (Vector3D const &P, String &Name, int &Tag, int NDim, SDPair &Prms, SDPair &Inis, String &Scheme)
void CbAllocMdl6 (Vector3D const &P, String &Name, int &Tag, int NDim, SDPair &Prms, SDPair &Inis, String &Scheme)
void CbAllocMdl7 (Vector3D const &P, String &Name, int &Tag, int NDim, SDPair &Prms, SDPair &Inis, String &Scheme)
void CbAllocMdl7b (Vector3D const &P, String &Name, int &Tag, int NDim, SDPair &Prms, SDPair &Inis, String &Scheme)
void CbAllocMdl8 (Vector3D const &P, String &Name, int &Tag, int NDim, SDPair &Prms, SDPair &Inis, String &Scheme)
void CbAllocMdl10 (Vector3D const &P, String &Name, int &Tag, int NDim, SDPair &Prms, SDPair &Inis, String &Scheme)
void CbAllocMdl11 (Vector3D const &P, String &Name, int &Tag, int NDim, SDPair &Prms, SDPair &Inis, String &Scheme)
void CbAllocMdl12 (Vector3D const &P, String &Name, int &Tag, int NDim, SDPair &Prms, SDPair &Inis, String &Scheme)
void CbAllocMdl13 (Vector3D const &P, String &Name, int &Tag, int NDim, SDPair &Prms, SDPair &Inis, String &Scheme)
void CbAllocMdl14 (Vector3D const &P, String &Name, int &Tag, int NDim, SDPair &Prms, SDPair &Inis, String &Scheme)
void CbAllocMdl15 (Vector3D const &P, String &Name, int &Tag, int NDim, SDPair &Prms, SDPair &Inis, String &Scheme)
void CbAllocMdl16 (Vector3D const &P, String &Name, int &Tag, int NDim, SDPair &Prms, SDPair &Inis, String &Scheme)
void CbAllocMdl17 (Vector3D const &P, String &Name, int &Tag, int NDim, SDPair &Prms, SDPair &Inis, String &Scheme)
void CbIniVeloc1 (Vector3D const &P, Vector3D &v)
void CbIniVeloc2 (Vector3D const &P, Vector3D &v)
void CbIniVeloc3 (Vector3D const &P, Vector3D &v)
void CbIniVeloc4 (Vector3D const &P, Vector3D &v)
void CbIniVeloc5 (Vector3D const &P, Vector3D &v)
void CbIniVeloc6 (Vector3D const &P, Vector3D &v)
void CbIniVeloc7 (Vector3D const &P, Vector3D &v)
void CbIniVeloc8 (Vector3D const &P, Vector3D &v)
void CbIniVeloc10 (Vector3D const &P, Vector3D &v)
void CbIniVeloc11 (Vector3D const &P, Vector3D &v)
void CbIniVeloc12 (Vector3D const &P, Vector3D &v)
void CbIniVeloc13 (Vector3D const &P, Vector3D &v)
void CbIniVeloc14 (Vector3D const &P, Vector3D &v)
void CbIniVeloc15 (Vector3D const &P, Vector3D &v)
void CbIniVeloc16 (Vector3D const &P, Vector3D &v)
void CbIniVeloc17 (Vector3D const &P, Vector3D &v)
bool CbHasTraction1 (Vector3D const &P, Array< Vector3D > const &N, Vector3D const &L, int nPCell, Vector3D &t)
bool CbHasTraction2 (Vector3D const &P, Array< Vector3D > const &N, Vector3D const &L, int nPCell, Vector3D &t)
bool CbHasTraction3 (Vector3D const &P, Array< Vector3D > const &N, Vector3D const &L, int nPCell, Vector3D &t)
bool CbHasTraction4 (Vector3D const &P, Array< Vector3D > const &N, Vector3D const &L, int nPCell, Vector3D &t)
bool CbHasTraction5 (Vector3D const &P, Array< Vector3D > const &N, Vector3D const &L, int nPCell, Vector3D &t)
bool CbHasTraction6 (Vector3D const &P, Array< Vector3D > const &N, Vector3D const &L, int nPCell, Vector3D &t)
bool CbHasTraction7 (Vector3D const &P, Array< Vector3D > const &N, Vector3D const &L, int nPCell, Vector3D &t)
bool CbHasTraction8 (Vector3D const &P, Array< Vector3D > const &N, Vector3D const &L, int nPCell, Vector3D &t)
bool CbHasTraction10 (Vector3D const &P, Array< Vector3D > const &N, Vector3D const &L, int nPCell, Vector3D &t)
bool CbHasTraction11 (Vector3D const &P, Array< Vector3D > const &N, Vector3D const &L, int nPCell, Vector3D &t)
bool CbHasTraction12 (Vector3D const &P, Array< Vector3D > const &N, Vector3D const &L, int nPCell, Vector3D &t)
bool CbHasTraction13 (Vector3D const &P, Array< Vector3D > const &N, Vector3D const &L, int nPCell, Vector3D &t)
bool CbHasTraction14 (Vector3D const &P, Array< Vector3D > const &N, Vector3D const &L, int nPCell, Vector3D &t)
bool CbHasTraction15 (Vector3D const &P, Array< Vector3D > const &N, Vector3D const &L, int nPCell, Vector3D &t)
bool CbHasTraction16 (Vector3D const &P, Array< Vector3D > const &N, Vector3D const &L, int nPCell, Vector3D &t)
bool CbHasTraction17 (Vector3D const &P, Array< Vector3D > const &N, Vector3D const &L, int nPCell, Vector3D &t)
bool CbHasAppDisp1 (Vector3D const &P, Array< Vector3D > const &N, Vector3D const &L, int nPCell, Vector3D &t)
bool CbHasAppDisp2 (Vector3D const &P, Array< Vector3D > const &N, Vector3D const &L, int nPCell, Vector3D &t)
bool CbHasAppDisp3 (Vector3D const &P, Array< Vector3D > const &N, Vector3D const &L, int nPCell, Vector3D &t)
bool CbHasAppDisp4 (Vector3D const &P, Array< Vector3D > const &N, Vector3D const &L, int nPCell, Vector3D &t)
bool CbHasAppDisp5 (Vector3D const &P, Array< Vector3D > const &N, Vector3D const &L, int nPCell, Vector3D &t)
bool CbHasAppDisp6 (Vector3D const &P, Array< Vector3D > const &N, Vector3D const &L, int nPCell, Vector3D &t)
bool CbHasAppDisp7 (Vector3D const &P, Array< Vector3D > const &N, Vector3D const &L, int nPCell, Vector3D &t)
bool CbHasAppDisp8 (Vector3D const &P, Array< Vector3D > const &N, Vector3D const &L, int nPCell, Vector3D &t)
bool CbHasAppDisp10 (Vector3D const &P, Array< Vector3D > const &N, Vector3D const &L, int nPCell, Vector3D &t)
bool CbHasAppDisp11 (Vector3D const &P, Array< Vector3D > const &N, Vector3D const &L, int nPCell, Vector3D &t)
bool CbHasAppDisp12 (Vector3D const &P, Array< Vector3D > const &N, Vector3D const &L, int nPCell, Vector3D &t)
bool CbHasAppDisp13 (Vector3D const &P, Array< Vector3D > const &N, Vector3D const &L, int nPCell, Vector3D &t)
bool CbHasAppDisp14 (Vector3D const &P, Array< Vector3D > const &N, Vector3D const &L, int nPCell, Vector3D &t)
bool CbHasAppDisp15 (Vector3D const &P, Array< Vector3D > const &N, Vector3D const &L, int nPCell, Vector3D &t)
bool CbHasAppDisp16 (Vector3D const &P, Array< Vector3D > const &N, Vector3D const &L, int nPCell, Vector3D &t)
bool CbHasAppDisp17 (Vector3D const &P, Array< Vector3D > const &N, Vector3D const &L, int nPCell, Vector3D &t)
void ReSetOutputArrays (Problem2D &Prob)
void SetProblem (Problem2D &Prob)
double NormV (Vector3D const &v)
double NormT (STensor2 const &T)
void AddScaled (double const &a, STensor4 const &X, double const &b, STensor4 const &Y, STensor4 &Z)
void Sym (double a, ATensor2 const &T, STensor2 &S)
double Det (ATensor2 const &B)
double Det (STensor2 const &T)
double Cam_p (STensor2 const &S)
double Cam_q (STensor2 const &S)
void Stress_p_q (STensor2 const &Sig, double &p, double &q)
void Eigenvals (STensor2 const &T, double L[3])
void Eigenvp (STensor2 const &T, double L[3], STensor2 P[3])
void Stress_psmp_qsmp (STensor2 const &Sig, double &psmp, double &qsmp)
void Derivs_psmp_qsmp (STensor2 const &Sig, double &psmp, double &qsmp, double DpsmpDs[3], double DqsmpDs[3], STensor2 Proj[3])
void Stress_ssmp_tsmp (STensor2 const &Sig, double &ssmp, double &tsmp)
void Derivs_ssmp_tsmp (STensor2 const &Sig, double &ssmp, double &tsmp, double DssmpDs[3], double DtsmpDs[3], STensor2 Proj[3])
void Derivs_p_q (STensor2 const &Sig, double &p, double &q, double DpDs[3], double DqDs[3], STensor2 Proj[3])
void Stress_p_q_t (STensor2 const &Sig, double &p, double &q, double &t)
void Derivs_p_q_t (STensor2 const &Sig, double &p, double &q, double &t, double DpDs[3], double DqDs[3], double DtDs[3], STensor2 Proj[3])
void Strain_Ev_Ed (STensor2 const &Eps, double &Ev, double &Ed)
void OutputHeader (std::ostream &Os, bool NewLine=true)
void Output (STensor2 const &Sig, STensor2 const &Eps, std::ostream &Os, bool NewLine=true)
void Hid2Sig (Vector3D const &RAZ, Vector3D &XYZ)
void Dot (ATensor2 const &A, Vector3D const &u, Vector3D &v)
void Dot (Vector3D const &u, ATensor2 const &A, Vector3D &v)
void Dot (ATensor4 const &T, ATensor2 const &x, ATensor2 &y)
void Dot (ATensor2 const &A, ATensor2 const &B, ATensor2 &C)
void Dyad (Vector3D const &u, Vector3D const &v, ATensor2 &A)
void DyadDot (Vector3D const &v, ATensor2 const &F, Vector3D const &u, ATensor2 &R)
void DyadDot (Vector3D const &v, Vector3D const &u, ATensor2 const &F, ATensor2 &R)
void DotUp (ATensor2 const &A, Vector3D const &u, Vector3D &v)
void DotUp (Vector3D const &u, ATensor2 const &A, Vector3D &v)
void DotUp (ATensor4 const &T, ATensor2 const &x, ATensor2 &y)
void DyadUp (Vector3D const &u, Vector3D const &v, ATensor2 &A)
void ScDyadUp (double s, Vector3D const &u, Vector3D const &v, ATensor2 &A)
void DyadDotUp (Vector3D const &v, ATensor2 const &F, Vector3D const &u, ATensor2 &R)
void DyadDotUp (Vector3D const &v, Vector3D const &u, ATensor2 const &F, ATensor2 &R)
void Dot (STensor2 const &A, Vector3D const &u, Vector3D &v)
void Dot (Vector3D const &u, STensor2 const &A, Vector3D &v)
void Dot (STensor4 const &T, STensor2 const &x, STensor2 &y)
void ScDot (double s, STensor2 const &x, STensor4 const &T, STensor2 &y)
void DotUp (STensor2 const &A, Vector3D const &u, Vector3D &v)
void ScDotUp (double s, STensor2 const &A, Vector3D const &u, Vector3D &v)
void ScDotUp (double s, Vec_t const &A, Vector3D const &u, Vector3D &v)
void DotUp (Vector3D const &u, STensor2 const &A, Vector3D &v)
void ScDotUp (double s, Vector3D const &u, STensor2 const &A, Vector3D &v)
void DotUp (STensor4 const &T, STensor2 const &x, STensor2 &y)
void DotAdd (STensor2 const &r, STensor4 const &T, STensor2 const &x, STensor2 &y)
double Reduce (STensor2 const &x, STensor4 const &A, STensor2 const &y)
void Generate (double const &a, STensor4 const &A, STensor2 const &x, STensor2 const &y, STensor4 const &B, STensor4 const &C, STensor4 &D)
int __initialize_tensors ()

Variables

const double SQ2 = sqrt(2.0)
const double SQ3 = sqrt(3.0)
const double SQ6 = sqrt(6.0)
const double SQ2BY3 = sqrt(2.0/3.0)
const double PI = 4.0*atan(1.0)
const size_t NRVEC = 2
Fl_Menu_Item FldItems []
Fl_Menu_Item PtType []
FmtNum _a = { true, false, false, 0, 0 }
 Boolean.
FmtNum _3 = { false, true, false, 3, 0 }
 Integer.
FmtNum _4 = { false, true, false, 4, 0 }
 Integer.
FmtNum _6 = { false, true, false, 6, 0 }
 Integer.
FmtNum _8 = { false, true, false, 8, 0 }
 Integer.
FmtNum _3s = { false, false, true, 0, 3 }
 Scientific.
FmtNum _8s = { false, false, true, 0, 8 }
 Scientific.
FmtNum _4_2 = { false, false, false, 4, 2 }
 General.
FmtNum _6_3 = { false, false, false, 6, 3 }
 General.
FmtNum _12_6 = { false, false, false, 12, 6 }
 General.
FmtNum _20_15 = { false, false, false, 20, 15 }
 General.
const double DTRUE = 1.0
Fl_Menu_Item Problems []
size_t DefaultProblem = 3
STensor2 SymI
STensor4 SymII
STensor4 SymIdyI
STensor4 SymPsd
STensor4 SymPiso
int __dummy_initialize_tensors = __initialize_tensors ()

Detailed Description

Material Point Method.

MPM: Material Point Method.


Typedef Documentation

typedef blitz::TinyVector<double,9> MPM::ATensor2

Assymmetric 2nd order tensors: for deformation gradient, ...

typedef blitz::TinyMatrix<double,9,9> MPM::ATensor4

Assymmetric 4th order tensors: for stiffness ...

typedef blitz::TinyVector<size_t,4> MPM::Connec2D

for quadrilateral connectivities

typedef blitz::TinyVector<size_t,8> MPM::ConnecH8

Connectivities for hexahedra with 8 nodes.

typedef blitz::TinyVector<size_t,6> MPM::ConnecW6

Connectivities for wedge with 6 nodes.

typedef std::map<int,int>::const_iterator MPM::n2i_it
typedef Fl_Group*(* MPM::pAllocGroup)(int X, int Y, int W, int H, void *Extra)
typedef void(* MPM::ptAppDisp)(Vector3D const &P, STensor2 const &s, Vector3D const &u, Vector3D const &L, int nPCell, Vector3D &fu)
typedef void(* MPM::ptB)(double t, Vector3D &B)

Body force.

typedef double(* MPM::ptDensity)(Vector3D const &P)

Density function.

typedef bool(* MPM::ptHasAppDisp)(Vector3D const &P, Array< Vector3D > const &N, Vector3D const &L, int nPCell, Vector3D &fu)

Apply displacements to some points inside boundary cells.

typedef bool(* MPM::ptHasTraction)(Vector3D const &P, Array< Vector3D > const &N, Vector3D const &L, int nPCell, Vector3D &t)

Apply traction to some points inside boundary cells.

typedef void(* MPM::ptIniVelocity)(Vector3D const &P, Vector3D &v)

Initialize velocities.

typedef bool(* MPM::ptIsFixed)(Vector3D const &N, FixType &FType)

Callback for applying boundary conditions.

typedef bool(* MPM::ptIsPointInGeom)(Vector3D const &P, int &ClrIdx)

Pointer to a function which checks if a mat point is inside the geometry.

typedef void(* MPM::ptLdM)(double t, double &M)

Multiplier for applied external forces.

typedef void(* MPM::ptModelData)(Vector3D const &P, String &Name, int &Tag, int NDim, SDPair &Prms, SDPair &Inis, String &Scheme)

Get model data.

typedef void(* MPM::ptStress)(double t, Vector3D const &XY, STensor2 &Sig)

Correct stress at time t and position XY.

typedef void(* MPM::ptVeloc)(double t, Vector3D const &XY, Vector3D &Vel)

Correct velocity at time t and position XY.

typedef blitz::TinyVector<double,6> MPM::STensor2

Symmetric 2nd order tensors: for stress, strain, ...

typedef blitz::TinyMatrix<double,6,6> MPM::STensor4

Symmetric 4th order tensors: for stiffness ...

typedef blitz::TinyVector<double,3> MPM::Vector3D

for position, veloc, accel, etc.


Enumeration Type Documentation

Color Maps.

Enumerator:
CMT_BWP 
CMT_HOT 
CMT_JET 

Curve type.

Enumerator:
CT_POINTS 
CT_LINES 
CT_BOTH 

Fields.

Enumerator:
FLD_EPSXX 
FLD_EPSYY 
FLD_EPSZZ 
FLD_EPSXY 
FLD_SIGXX 
FLD_SIGYY 
FLD_SIGZZ 
FLD_SIGXY 
FLD_CAMP 
FLD_CAMQ 
FLD_VELN 
FLD_TAG 

Nodes fixing type.

Enumerator:
FIX_X 
FIX_Y 
FIX_Z 
FIX_XY 
FIX_YZ 
FIX_ZX 
FIX_XYZ 

Function Documentation

Initialize (global) tensors.

void MPM::AddScaled ( double const &  a,
STensor4 const &  X,
double const &  b,
STensor4 const &  Y,
STensor4 &  Z 
) [inline]

Add scaled tensors Z = a*X + b*Y.

double MPM::Cam_p ( STensor2 const &  S) [inline]

Cambridge's p mean stress invariant.

double MPM::Cam_q ( STensor2 const &  S) [inline]

Cambridge's q deviatoric stress invariant.

void MPM::CbAllocMdl1 ( Vector3D const &  P,
String Name,
int &  Tag,
int  NDim,
SDPair Prms,
SDPair Inis,
String Scheme 
)
void MPM::CbAllocMdl10 ( Vector3D const &  P,
String Name,
int &  Tag,
int  NDim,
SDPair Prms,
SDPair Inis,
String Scheme 
)
void MPM::CbAllocMdl11 ( Vector3D const &  P,
String Name,
int &  Tag,
int  NDim,
SDPair Prms,
SDPair Inis,
String Scheme 
)
void MPM::CbAllocMdl12 ( Vector3D const &  P,
String Name,
int &  Tag,
int  NDim,
SDPair Prms,
SDPair Inis,
String Scheme 
)
void MPM::CbAllocMdl13 ( Vector3D const &  P,
String Name,
int &  Tag,
int  NDim,
SDPair Prms,
SDPair Inis,
String Scheme 
)
void MPM::CbAllocMdl14 ( Vector3D const &  P,
String Name,
int &  Tag,
int  NDim,
SDPair Prms,
SDPair Inis,
String Scheme 
)
void MPM::CbAllocMdl15 ( Vector3D const &  P,
String Name,
int &  Tag,
int  NDim,
SDPair Prms,
SDPair Inis,
String Scheme 
)
void MPM::CbAllocMdl16 ( Vector3D const &  P,
String Name,
int &  Tag,
int  NDim,
SDPair Prms,
SDPair Inis,
String Scheme 
)
void MPM::CbAllocMdl17 ( Vector3D const &  P,
String Name,
int &  Tag,
int  NDim,
SDPair Prms,
SDPair Inis,
String Scheme 
)
void MPM::CbAllocMdl2 ( Vector3D const &  P,
String Name,
int &  Tag,
int  NDim,
SDPair Prms,
SDPair Inis,
String Scheme 
)
void MPM::CbAllocMdl3 ( Vector3D const &  P,
String Name,
int &  Tag,
int  NDim,
SDPair Prms,
SDPair Inis,
String Scheme 
)
void MPM::CbAllocMdl4 ( Vector3D const &  P,
String Name,
int &  Tag,
int  NDim,
SDPair Prms,
SDPair Inis,
String Scheme 
)
void MPM::CbAllocMdl5 ( Vector3D const &  P,
String Name,
int &  Tag,
int  NDim,
SDPair Prms,
SDPair Inis,
String Scheme 
)
void MPM::CbAllocMdl6 ( Vector3D const &  P,
String Name,
int &  Tag,
int  NDim,
SDPair Prms,
SDPair Inis,
String Scheme 
)
void MPM::CbAllocMdl7 ( Vector3D const &  P,
String Name,
int &  Tag,
int  NDim,
SDPair Prms,
SDPair Inis,
String Scheme 
)
void MPM::CbAllocMdl7b ( Vector3D const &  P,
String Name,
int &  Tag,
int  NDim,
SDPair Prms,
SDPair Inis,
String Scheme 
)
void MPM::CbAllocMdl8 ( Vector3D const &  P,
String Name,
int &  Tag,
int  NDim,
SDPair Prms,
SDPair Inis,
String Scheme 
)
double MPM::CbDensity1 ( Vector3D const &  P)
double MPM::CbDensity10 ( Vector3D const &  P)
double MPM::CbDensity11 ( Vector3D const &  P)
double MPM::CbDensity12 ( Vector3D const &  P)
double MPM::CbDensity13 ( Vector3D const &  P)
double MPM::CbDensity14 ( Vector3D const &  P)
double MPM::CbDensity15 ( Vector3D const &  P)
double MPM::CbDensity16 ( Vector3D const &  P)
double MPM::CbDensity17 ( Vector3D const &  P)
double MPM::CbDensity2 ( Vector3D const &  P)
double MPM::CbDensity3 ( Vector3D const &  P)
double MPM::CbDensity4 ( Vector3D const &  P)
double MPM::CbDensity5 ( Vector3D const &  P)
double MPM::CbDensity6 ( Vector3D const &  P)
double MPM::CbDensity7 ( Vector3D const &  P)
double MPM::CbDensity8 ( Vector3D const &  P)
bool MPM::CbHasAppDisp1 ( Vector3D const &  P,
Array< Vector3D > const &  N,
Vector3D const &  L,
int  nPCell,
Vector3D &  t 
)
bool MPM::CbHasAppDisp10 ( Vector3D const &  P,
Array< Vector3D > const &  N,
Vector3D const &  L,
int  nPCell,
Vector3D &  t 
)
bool MPM::CbHasAppDisp11 ( Vector3D const &  P,
Array< Vector3D > const &  N,
Vector3D const &  L,
int  nPCell,
Vector3D &  t 
)
bool MPM::CbHasAppDisp12 ( Vector3D const &  P,
Array< Vector3D > const &  N,
Vector3D const &  L,
int  nPCell,
Vector3D &  t 
)
bool MPM::CbHasAppDisp13 ( Vector3D const &  P,
Array< Vector3D > const &  N,
Vector3D const &  L,
int  nPCell,
Vector3D &  t 
)
bool MPM::CbHasAppDisp14 ( Vector3D const &  P,
Array< Vector3D > const &  N,
Vector3D const &  L,
int  nPCell,
Vector3D &  t 
)
bool MPM::CbHasAppDisp15 ( Vector3D const &  P,
Array< Vector3D > const &  N,
Vector3D const &  L,
int  nPCell,
Vector3D &  t 
)
bool MPM::CbHasAppDisp16 ( Vector3D const &  P,
Array< Vector3D > const &  N,
Vector3D const &  L,
int  nPCell,
Vector3D &  t 
)
bool MPM::CbHasAppDisp17 ( Vector3D const &  P,
Array< Vector3D > const &  N,
Vector3D const &  L,
int  nPCell,
Vector3D &  t 
)
bool MPM::CbHasAppDisp2 ( Vector3D const &  P,
Array< Vector3D > const &  N,
Vector3D const &  L,
int  nPCell,
Vector3D &  t 
)
bool MPM::CbHasAppDisp3 ( Vector3D const &  P,
Array< Vector3D > const &  N,
Vector3D const &  L,
int  nPCell,
Vector3D &  t 
)
bool MPM::CbHasAppDisp4 ( Vector3D const &  P,
Array< Vector3D > const &  N,
Vector3D const &  L,
int  nPCell,
Vector3D &  t 
)
bool MPM::CbHasAppDisp5 ( Vector3D const &  P,
Array< Vector3D > const &  N,
Vector3D const &  L,
int  nPCell,
Vector3D &  t 
)
bool MPM::CbHasAppDisp6 ( Vector3D const &  P,
Array< Vector3D > const &  N,
Vector3D const &  L,
int  nPCell,
Vector3D &  t 
)
bool MPM::CbHasAppDisp7 ( Vector3D const &  P,
Array< Vector3D > const &  N,
Vector3D const &  L,
int  nPCell,
Vector3D &  t 
)
bool MPM::CbHasAppDisp8 ( Vector3D const &  P,
Array< Vector3D > const &  N,
Vector3D const &  L,
int  nPCell,
Vector3D &  t 
)
bool MPM::CbHasTraction1 ( Vector3D const &  P,
Array< Vector3D > const &  N,
Vector3D const &  L,
int  nPCell,
Vector3D &  t 
)
bool MPM::CbHasTraction10 ( Vector3D const &  P,
Array< Vector3D > const &  N,
Vector3D const &  L,
int  nPCell,
Vector3D &  t 
)
bool MPM::CbHasTraction11 ( Vector3D const &  P,
Array< Vector3D > const &  N,
Vector3D const &  L,
int  nPCell,
Vector3D &  t 
)
bool MPM::CbHasTraction12 ( Vector3D const &  P,
Array< Vector3D > const &  N,
Vector3D const &  L,
int  nPCell,
Vector3D &  t 
)
bool MPM::CbHasTraction13 ( Vector3D const &  P,
Array< Vector3D > const &  N,
Vector3D const &  L,
int  nPCell,
Vector3D &  t 
)
bool MPM::CbHasTraction14 ( Vector3D const &  P,
Array< Vector3D > const &  N,
Vector3D const &  L,
int  nPCell,
Vector3D &  t 
)
bool MPM::CbHasTraction15 ( Vector3D const &  P,
Array< Vector3D > const &  N,
Vector3D const &  L,
int  nPCell,
Vector3D &  t 
)
bool MPM::CbHasTraction16 ( Vector3D const &  P,
Array< Vector3D > const &  N,
Vector3D const &  L,
int  nPCell,
Vector3D &  t 
)
bool MPM::CbHasTraction17 ( Vector3D const &  P,
Array< Vector3D > const &  N,
Vector3D const &  L,
int  nPCell,
Vector3D &  t 
)
bool MPM::CbHasTraction2 ( Vector3D const &  P,
Array< Vector3D > const &  N,
Vector3D const &  L,
int  nPCell,
Vector3D &  t 
)
bool MPM::CbHasTraction3 ( Vector3D const &  P,
Array< Vector3D > const &  N,
Vector3D const &  L,
int  nPCell,
Vector3D &  t 
)
bool MPM::CbHasTraction4 ( Vector3D const &  P,
Array< Vector3D > const &  N,
Vector3D const &  L,
int  nPCell,
Vector3D &  t 
)
bool MPM::CbHasTraction5 ( Vector3D const &  P,
Array< Vector3D > const &  N,
Vector3D const &  L,
int  nPCell,
Vector3D &  t 
)
bool MPM::CbHasTraction6 ( Vector3D const &  P,
Array< Vector3D > const &  N,
Vector3D const &  L,
int  nPCell,
Vector3D &  t 
)
bool MPM::CbHasTraction7 ( Vector3D const &  P,
Array< Vector3D > const &  N,
Vector3D const &  L,
int  nPCell,
Vector3D &  t 
)
bool MPM::CbHasTraction8 ( Vector3D const &  P,
Array< Vector3D > const &  N,
Vector3D const &  L,
int  nPCell,
Vector3D &  t 
)
void MPM::CbIniVeloc1 ( Vector3D const &  P,
Vector3D &  v 
)
void MPM::CbIniVeloc10 ( Vector3D const &  P,
Vector3D &  v 
)
void MPM::CbIniVeloc11 ( Vector3D const &  P,
Vector3D &  v 
)
void MPM::CbIniVeloc12 ( Vector3D const &  P,
Vector3D &  v 
)
void MPM::CbIniVeloc13 ( Vector3D const &  P,
Vector3D &  v 
)
void MPM::CbIniVeloc14 ( Vector3D const &  P,
Vector3D &  v 
)
void MPM::CbIniVeloc15 ( Vector3D const &  P,
Vector3D &  v 
)
void MPM::CbIniVeloc16 ( Vector3D const &  P,
Vector3D &  v 
)
void MPM::CbIniVeloc17 ( Vector3D const &  P,
Vector3D &  v 
)
void MPM::CbIniVeloc2 ( Vector3D const &  P,
Vector3D &  v 
)
void MPM::CbIniVeloc3 ( Vector3D const &  P,
Vector3D &  v 
)
void MPM::CbIniVeloc4 ( Vector3D const &  P,
Vector3D &  v 
)
void MPM::CbIniVeloc5 ( Vector3D const &  P,
Vector3D &  v 
)
void MPM::CbIniVeloc6 ( Vector3D const &  P,
Vector3D &  v 
)
void MPM::CbIniVeloc7 ( Vector3D const &  P,
Vector3D &  v 
)
void MPM::CbIniVeloc8 ( Vector3D const &  P,
Vector3D &  v 
)
bool MPM::CbIsFixed1 ( Vector3D const &  N,
FixType &  FType 
)
bool MPM::CbIsFixed10 ( Vector3D const &  N,
FixType &  FType 
)
bool MPM::CbIsFixed11 ( Vector3D const &  N,
FixType &  FType 
)
bool MPM::CbIsFixed12 ( Vector3D const &  N,
FixType &  FType 
)
bool MPM::CbIsFixed13 ( Vector3D const &  N,
FixType &  FType 
)
bool MPM::CbIsFixed14 ( Vector3D const &  N,
FixType &  FType 
)
bool MPM::CbIsFixed15 ( Vector3D const &  N,
FixType &  FType 
)
bool MPM::CbIsFixed16 ( Vector3D const &  N,
FixType &  FType 
)
bool MPM::CbIsFixed17 ( Vector3D const &  N,
FixType &  FType 
)
bool MPM::CbIsFixed2 ( Vector3D const &  N,
FixType &  FType 
)
bool MPM::CbIsFixed3 ( Vector3D const &  N,
FixType &  FType 
)
bool MPM::CbIsFixed4 ( Vector3D const &  N,
FixType &  FType 
)
bool MPM::CbIsFixed5 ( Vector3D const &  N,
FixType &  FType 
)
bool MPM::CbIsFixed6 ( Vector3D const &  N,
FixType &  FType 
)
bool MPM::CbIsFixed7 ( Vector3D const &  N,
FixType &  FType 
)
bool MPM::CbIsFixed8 ( Vector3D const &  N,
FixType &  FType 
)
bool MPM::CbIsPointInGeom1 ( Vector3D const &  P,
int &  ClrIdx 
)
bool MPM::CbIsPointInGeom10 ( Vector3D const &  P,
int &  ClrIdx 
)
bool MPM::CbIsPointInGeom11 ( Vector3D const &  P,
int &  ClrIdx 
)
bool MPM::CbIsPointInGeom12 ( Vector3D const &  P,
int &  ClrIdx 
)
bool MPM::CbIsPointInGeom13 ( Vector3D const &  P,
int &  ClrIdx 
)
bool MPM::CbIsPointInGeom14 ( Vector3D const &  P,
int &  ClrIdx 
)
bool MPM::CbIsPointInGeom15 ( Vector3D const &  P,
int &  ClrIdx 
)
bool MPM::CbIsPointInGeom16 ( Vector3D const &  P,
int &  ClrIdx 
)
bool MPM::CbIsPointInGeom17 ( Vector3D const &  P,
int &  ClrIdx 
)
bool MPM::CbIsPointInGeom2 ( Vector3D const &  P,
int &  ClrIdx 
)
bool MPM::CbIsPointInGeom3 ( Vector3D const &  P,
int &  ClrIdx 
)
bool MPM::CbIsPointInGeom4 ( Vector3D const &  P,
int &  ClrIdx 
)
bool MPM::CbIsPointInGeom5 ( Vector3D const &  P,
int &  ClrIdx 
)
bool MPM::CbIsPointInGeom6 ( Vector3D const &  P,
int &  ClrIdx 
)
bool MPM::CbIsPointInGeom7 ( Vector3D const &  P,
int &  ClrIdx 
)
bool MPM::CbIsPointInGeom8 ( Vector3D const &  P,
int &  ClrIdx 
)
void MPM::CHull2D ( Array< Vector3D > &  P,
Array< size_t > &  H 
) [inline]

Convex hull using Andrew's monotone chain 2D algorithm. Returns a list of points on the convex hull in counter-clockwise order.

bool MPM::CompareVec2D ( Vector3D const &  A,
Vector3D const &  B 
) [inline]

Lexicographically comparision between points.

double MPM::Cross2D ( Vector3D const &  O,
Vector3D const &  A,
Vector3D const &  B 
) [inline]

2D cross product. Return a positive value, if OAB makes a counter-clockwise turn, negative for clockwise turn, and zero if the points are collinear.

void MPM::Derivs_p_q ( STensor2 const &  Sig,
double &  p,
double &  q,
double  DpDs[3],
double  DqDs[3],
STensor2  Proj[3] 
) [inline]
void MPM::Derivs_p_q_t ( STensor2 const &  Sig,
double &  p,
double &  q,
double &  t,
double  DpDs[3],
double  DqDs[3],
double  DtDs[3],
STensor2  Proj[3] 
) [inline]
void MPM::Derivs_psmp_qsmp ( STensor2 const &  Sig,
double &  psmp,
double &  qsmp,
double  DpsmpDs[3],
double  DqsmpDs[3],
STensor2  Proj[3] 
) [inline]
void MPM::Derivs_ssmp_tsmp ( STensor2 const &  Sig,
double &  ssmp,
double &  tsmp,
double  DssmpDs[3],
double  DtsmpDs[3],
STensor2  Proj[3] 
) [inline]
double MPM::Det ( ATensor2 const &  B) [inline]

Determinant.

double MPM::Det ( STensor2 const &  T) [inline]

Determinant.

void MPM::Dot ( ATensor2 const &  A,
Vector3D const &  u,
Vector3D &  v 
) [inline]

1) Dot product: v=A*u => v(i)=A(i,k)*u(k)

void MPM::Dot ( Vector3D const &  u,
ATensor2 const &  A,
Vector3D &  v 
) [inline]

2) Dot product: v=u*A => v(i)=u(k)*A(k,i)

void MPM::Dot ( ATensor4 const &  T,
ATensor2 const &  x,
ATensor2 y 
) [inline]

3) Dot product: y = T*x => y = T:x => y(i,j)=T(i,j,k,l)*x(k,l)

void MPM::Dot ( ATensor2 const &  A,
ATensor2 const &  B,
ATensor2 C 
) [inline]

4) Dot product: C=A*B => C(i,j)=A(i,k)*B(k,j)

void MPM::Dot ( STensor2 const &  A,
Vector3D const &  u,
Vector3D &  v 
) [inline]

7) Dot product: v = A*u => v(i)=A(i,k)*u(k)

void MPM::Dot ( Vector3D const &  u,
STensor2 const &  A,
Vector3D &  v 
) [inline]

8) Dot product: v = u*A => v(i)=u(k)*A(k,i)

void MPM::Dot ( STensor4 const &  T,
STensor2 const &  x,
STensor2 &  y 
) [inline]

9) Dot product: y = T*x => y = T:x => y(i,j)=T(i,j,k,l)*x(k,l)

void MPM::DotAdd ( STensor2 const &  r,
STensor4 const &  T,
STensor2 const &  x,
STensor2 &  y 
) [inline]

13) Dot product with addition: y = r + T*x => y += T:x => y(i,j)+=T(i,j,k,l)*x(k,l)

void MPM::DotUp ( ATensor2 const &  A,
Vector3D const &  u,
Vector3D &  v 
) [inline]

4) Dot product (with update): v += A*u => v(i)+=A(i,k)*u(k)

void MPM::DotUp ( Vector3D const &  u,
ATensor2 const &  A,
Vector3D &  v 
) [inline]

5) Dot product (with update): v += u*A => v(i)+=u(k)*A(k,i)

void MPM::DotUp ( ATensor4 const &  T,
ATensor2 const &  x,
ATensor2 y 
) [inline]

6) Dot product (with update): y += T*x => y = T:x => y(i,j)+=T(i,j,k,l)*x(k,l)

void MPM::DotUp ( STensor2 const &  A,
Vector3D const &  u,
Vector3D &  v 
) [inline]

10) Dot product (with update): v += A*u => v(i)+=A(i,k)*u(k)

void MPM::DotUp ( Vector3D const &  u,
STensor2 const &  A,
Vector3D &  v 
) [inline]

11) Dot product (with update): v += u*A => v(i)+=u(k)*A(k,i)

void MPM::DotUp ( STensor4 const &  T,
STensor2 const &  x,
STensor2 &  y 
) [inline]

12) Dot product: y += T*x => y += T:x => y(i,j)+=T(i,j,k,l)*x(k,l)

void MPM::Dyad ( Vector3D const &  u,
Vector3D const &  v,
ATensor2 A 
) [inline]

a) Dyadic product: A = u dyad v => A(i,j)=u(i)*v(j)

void MPM::DyadDot ( Vector3D const &  v,
ATensor2 const &  F,
Vector3D const &  u,
ATensor2 R 
) [inline]

b) Dyadic with Dot: R=v dyad (F*u) => R(i,j)=v(i)*F(j,k)*u(k)

void MPM::DyadDot ( Vector3D const &  v,
Vector3D const &  u,
ATensor2 const &  F,
ATensor2 R 
) [inline]

c) Dyadic with Dot: R=(v dyad u)*F => R(i,j)=v(i)*u(k)*F(k,j)

void MPM::DyadDotUp ( Vector3D const &  v,
ATensor2 const &  F,
Vector3D const &  u,
ATensor2 R 
) [inline]

e) Dyadic with Dot (with update): R += v dyad (F*u) => R(i,j)+=v(i)*F(j,k)*u(k)

void MPM::DyadDotUp ( Vector3D const &  v,
Vector3D const &  u,
ATensor2 const &  F,
ATensor2 R 
) [inline]

f) Dyadic with Dot (with update): R += (v dyad u)*F => R(i,j)+=v(i)*u(k)*F(k,j)

void MPM::DyadUp ( Vector3D const &  u,
Vector3D const &  v,
ATensor2 A 
) [inline]

d) Dyadic product (with update): A += u dyad v => A(i,j)+=u(i)*v(j)

void MPM::Eigenvals ( STensor2 const &  T,
double  L[3] 
) [inline]
void MPM::Eigenvp ( STensor2 const &  T,
double  L[3],
STensor2  P[3] 
) [inline]
void MPM::Generate ( double const &  a,
STensor4 const &  A,
STensor2 const &  x,
STensor2 const &  y,
STensor4 const &  B,
STensor4 const &  C,
STensor4 &  D 
) [inline]
void MPM::Hid2Sig ( Vector3D const &  RAZ,
Vector3D &  XYZ 
) [inline]

Converts hydrostatic coordinates to sigma (principal) coord (A in radians).

void MPM::HideInfoBox ( Fl_Widget *  IB,
void *  Win 
)
void MPM::InfoBox ( char const *  Message)
int MPM::JacobiRot ( STensor2 const &  T,
double  L[3] 
) [inline]
int MPM::JacobiRot ( STensor2 const &  T,
double  V0[3],
double  V1[3],
double  V2[3],
double  L[3] 
) [inline]
bool MPM::MkdirP ( char const *  Path)

Create directory (recursively).

double MPM::NormT ( STensor2 const &  T) [inline]
double MPM::NormV ( Vector3D const &  v) [inline]

Euclidian norm

std::ostream& MPM::operator<< ( std::ostream &  os,
FmtNum const &  FN 
)

Format the output.

void MPM::Output ( STensor2 const &  Sig,
STensor2 const &  Eps,
std::ostream &  Os,
bool  NewLine = true 
) [inline]

Output stress and strain values and invariants for use with plotn in plot.R.

void MPM::OutputHeader ( std::ostream &  Os,
bool  NewLine = true 
) [inline]

Output stress and strain values and invariants for use with plotn in plot.R - HEADER.

double MPM::Reduce ( STensor2 const &  x,
STensor4 const &  A,
STensor2 const &  y 
) [inline]
void MPM::ReSetOutputArrays ( Problem2D &  Prob)

(Re)set output arrays.

void MPM::ScDot ( double  s,
STensor2 const &  x,
STensor4 const &  T,
STensor2 &  y 
) [inline]

9x) Scaled Dot product: y = s*x*T => y = s*x:T => y(i,j)=s*x(k,l)*T(k,l,i,j)

void MPM::ScDotUp ( double  s,
STensor2 const &  A,
Vector3D const &  u,
Vector3D &  v 
) [inline]

10x) Scaled Dot product (with update): v += s*A*u => v(i)+=s*A(i,k)*u(k)

void MPM::ScDotUp ( double  s,
Vec_t const &  A,
Vector3D const &  u,
Vector3D &  v 
) [inline]

10xx) Scaled Dot product (with update): v += s*A*u => v(i)+=s*A(i,k)*u(k)

void MPM::ScDotUp ( double  s,
Vector3D const &  u,
STensor2 const &  A,
Vector3D &  v 
) [inline]

11x) Scaled Dot product (with update): v += s*u*A => v(i)+=u(k)*A(k,i)

void MPM::ScDyadUp ( double  s,
Vector3D const &  u,
Vector3D const &  v,
ATensor2 A 
) [inline]

da) Scaled Dyadic product (with update): A += s *(u dyad v) => A(i,j)+=s*u(i)*v(j)

void MPM::SeparatedLine ( std::string const &  Line,
std::string const &  Separator,
Array< std::string > &  Res 
) [inline]

Break down a line using separators.

void MPM::SetProblem ( Problem2D &  Prob)

Set problem.

void MPM::Strain_Ev_Ed ( STensor2 const &  Eps,
double &  Ev,
double &  Ed 
) [inline]
void MPM::Stress_p_q ( STensor2 const &  Sig,
double &  p,
double &  q 
) [inline]
void MPM::Stress_p_q_t ( STensor2 const &  Sig,
double &  p,
double &  q,
double &  t 
) [inline]
void MPM::Stress_psmp_qsmp ( STensor2 const &  Sig,
double &  psmp,
double &  qsmp 
) [inline]
void MPM::Stress_ssmp_tsmp ( STensor2 const &  Sig,
double &  ssmp,
double &  tsmp 
) [inline]
void MPM::Sym ( double  a,
ATensor2 const &  T,
STensor2 &  S 
) [inline]

Symmetric of a tensor S = a*sym(T) = a * 0.5*(T + trn(T)).


Variable Documentation

FmtNum MPM::_12_6 = { false, false, false, 12, 6 }

General.

FmtNum MPM::_20_15 = { false, false, false, 20, 15 }

General.

FmtNum MPM::_3 = { false, true, false, 3, 0 }

Integer.

FmtNum MPM::_3s = { false, false, true, 0, 3 }

Scientific.

FmtNum MPM::_4 = { false, true, false, 4, 0 }

Integer.

FmtNum MPM::_4_2 = { false, false, false, 4, 2 }

General.

FmtNum MPM::_6 = { false, true, false, 6, 0 }

Integer.

FmtNum MPM::_6_3 = { false, false, false, 6, 3 }

General.

FmtNum MPM::_8 = { false, true, false, 8, 0 }

Integer.

FmtNum MPM::_8s = { false, false, true, 0, 8 }

Scientific.

Dummy variable used only for tensors initialization.

FmtNum MPM::_a = { true, false, false, 0, 0 }

Boolean.

size_t MPM::DefaultProblem = 3
const double MPM::DTRUE = 1.0
Fl_Menu_Item MPM::FldItems[]
Initial value:
{
    {"Strain-xx" , 0, 0, 0, 0, FL_NORMAL_LABEL, 0, 0, 0},
    {"Strain-yy" , 0, 0, 0, 0, FL_NORMAL_LABEL, 0, 0, 0},
    {"Strain-zz" , 0, 0, 0, 0, FL_NORMAL_LABEL, 0, 0, 0},
    {"Strain-xy" , 0, 0, 0, 0, FL_NORMAL_LABEL, 0, 0, 0},
    {"Stress-xx" , 0, 0, 0, 0, FL_NORMAL_LABEL, 0, 0, 0},
    {"Stress-yy" , 0, 0, 0, 0, FL_NORMAL_LABEL, 0, 0, 0},
    {"Stress-zz" , 0, 0, 0, 0, FL_NORMAL_LABEL, 0, 0, 0},
    {"Stress-xy" , 0, 0, 0, 0, FL_NORMAL_LABEL, 0, 0, 0},
    {"Cam-p"     , 0, 0, 0, 0, FL_NORMAL_LABEL, 0, 0, 0},
    {"Cam-q"     , 0, 0, 0, 0, FL_NORMAL_LABEL, 0, 0, 0},
    {"Vel-norm"  , 0, 0, 0, 0, FL_NORMAL_LABEL, 0, 0, 0},
    {"ClrIdx"    , 0, 0, 0, 0, FL_NORMAL_LABEL, 0, 0, 0},
    {0,0,0,0,0,0,0,0,0}
}
const size_t MPM::NRVEC = 2
const double MPM::PI = 4.0*atan(1.0)
Fl_Menu_Item MPM::Problems[]
Initial value:
{
    {"1. Linear vibration"                , 0, 0, 0, 0, FL_NORMAL_LABEL, 0, 0, 0}, 
    {"2. Indentation (WCCM8)"             , 0, 0, 0, 0, FL_NORMAL_LABEL, 0, 0, 0}, 
    {"3. Bouncing disks"                  , 0, 0, 0, 0, FL_NORMAL_LABEL, 0, 0, 0}, 
    {"4. 2D vibration - small"            , 0, 0, 0, 0, FL_NORMAL_LABEL, 0, 0, 0}, 
    {"5. Particle separation problem"     , 0, 0, 0, 0, FL_NORMAL_LABEL, 0, 0, 0}, 
    {"6. Explosion"                       , 0, 0, 0, 0, FL_NORMAL_LABEL, 0, 0, 0}, 
    {"7. Cantilever"                      , 0, 0, 0, 0, FL_NORMAL_LABEL, 0, 0, 0}, 
    {"8. Column (buckling)"               , 0, 0, 0, 0, FL_NORMAL_LABEL, 0, 0, 0}, 
    {"9. Cantilever (plastic)"            , 0, 0, 0, 0, FL_NORMAL_LABEL, 0, 0, 0}, 
    {"10.Linear vibration (continuum)"    , 0, 0, 0, 0, FL_NORMAL_LABEL, 0, 0, 0}, 
    {"11.Cylindrical Hole"                , 0, 0, 0, 0, FL_NORMAL_LABEL, 0, 0, 0}, 
    {"12.Spoil pile"                      , 0, 0, 0, 0, FL_NORMAL_LABEL, 0, 0, 0}, 
    {"13.Footing penetration"             , 0, 0, 0, 0, FL_NORMAL_LABEL, 0, 0, 0}, 
    {"14.Comet impact"                    , 0, 0, 0, 0, FL_NORMAL_LABEL, 0, 0, 0}, 
    {"15.Rotating disk"                   , 0, 0, 0, 0, FL_NORMAL_LABEL, 0, 0, 0}, 
    {"16. SBB-02a: gravity"               , 0, 0, 0, 0, FL_NORMAL_LABEL, 0, 0, 0}, 
    {"17. SBB-02b: gravity"               , 0, 0, 0, 0, FL_NORMAL_LABEL, 0, 0, 0}, 
    {0,0,0,0,0,0,0,0,0}
}
Fl_Menu_Item MPM::PtType[]
Initial value:
{
    {"BoxBord" , 0, 0, 0, 0, FL_NORMAL_LABEL, 0, 0, 0},
    {"Box"     , 0, 0, 0, 0, FL_NORMAL_LABEL, 0, 0, 0},
    {"Circles" , 0, 0, 0, 0, FL_NORMAL_LABEL, 0, 0, 0},
    {0,0,0,0,0,0,0,0,0}
}
const double MPM::SQ2 = sqrt(2.0)
const double MPM::SQ2BY3 = sqrt(2.0/3.0)
const double MPM::SQ3 = sqrt(3.0)
const double MPM::SQ6 = sqrt(6.0)

Second order identity tensor (symmetric/Mandel's basis).

Forth order tensor (symmetric/Mandel's basis).

Forth order identity tensor (symmetric/Mandel's basis).

Forth order isotropic tensor (symmetric/Mandel's basis).

Forth order symmetric-deviatoric tensor (symmetric/Mandel's basis).

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines