![]() |
MechSys
1.0
Computing library for simulations in continuum and discrete mechanics
|
#include <elastoplastic.h>
Public Types | |
enum | FCrit_t { VM_t, MC_t, GE_t } |
Public Member Functions | |
ElastoPlastic (int NDim, SDPair const &Prms, size_t NIv=3, char const *Name="ElastoPlastic(VM)", bool DerivedModel=false) | |
virtual | ~ElastoPlastic () |
virtual void | Rate (State const *Sta, Vec_t const &DEpsDt, Vec_t &DSigDt, Vec_t &DIvsDt) const |
virtual void | TgIncs (State const *Sta, Vec_t &DEps, Vec_t &DSig, Vec_t &DIvs) const |
virtual void | Stiffness (State const *Sta, Mat_t &D) const |
virtual size_t | CorrectDrift (State *Sta) const |
virtual bool | LoadCond (State const *Sta, Vec_t const &DEps, double &alpInt) const |
virtual void | InitIvs (SDPair const &Ini, State *Sta) const |
virtual void | Gradients (Vec_t const &Sig, Vec_t const &Ivs, bool Potential=false) const |
virtual void | Hardening (Vec_t const &Sig, Vec_t const &Ivs) const |
virtual double | YieldFunc (Vec_t const &Sig, Vec_t const &Ivs) const |
virtual void | ExtraDIvs (Vec_t &DIvs) const |
virtual double | CalcE (Vec_t const &Sig, Vec_t const &Ivs) const |
virtual void | ELStiff (Vec_t const &Sig, Vec_t const &Ivs) const |
double | Fa (double Alp, void *) |
double | dFada (double Alp, void *) |
void | Calc_pq (Vec_t const &Sig) const |
void | Calc_pqt (Vec_t const &Sig) const |
void | Calc_pqg (Vec_t const &Sig, double sinp) const |
void | Calc_dgdsig (Vec_t const &Sig, double sinp) const |
void | Calc_arc (double M) const |
Public Attributes | |
bool | Derived |
Derived model (such as CamClay) | |
double | E |
Young. | |
double | nu |
Poisson. | |
FCrit_t | FC |
Failure criterion: VM:Von-Mises. | |
double | kVM |
von Mises coefficient | |
double | kGE |
General FC coefficient. | |
double | kGEpot |
General FC coefficient (for potential/flow rule) | |
double | pTol |
Tolerance for minimum poct. | |
double | Hb |
Hardening coefficient H_bar. | |
double | sphi |
Sin(phi) friction angle. | |
double | spsi |
Sin(psi) dilatancy angle. | |
double | FTol |
Tolerance to be used when finding the intersection. | |
double | DCFTol |
Drift correction ys function tolerance. | |
size_t | DCMaxIt |
Drift correction max iterations. | |
double | qTol |
Tolerance for minimum qoct. | |
bool | NewSU |
New stress update ? | |
double | BetSU |
Beta coefficient for new stress update. | |
double | AlpSU |
Alpha coefficient for new stress update. | |
double | pc |
double | pm |
double | r2 |
Variables for smoothing with arc. | |
SMPInvs | SMP |
SMP invariants. | |
Vec_t | SigB |
SigmaBar: shifted sigma for cohesion. | |
Vec_t | Sig0 |
Vec_t | Ivs0 |
Vec_t | SigA |
Vec_t | DSigTr |
Variables for yield crossing detection. | |
Vec_t | DEpsEl |
Elastic strain increment. | |
Vec_t | DEpsPl |
Plastic strain increment == Lam*W. | |
Vec_t | V |
NCps: Gradient of the yield surface. | |
Vec_t | W |
NCps: Plastic flow rule direction. | |
Vec_t | Y |
NIvs: Derivative of the yield surface w.r.t internal variables. | |
Vec_t | H |
NIvs: Hardening coefficients, one for each internal variable. | |
Mat_t | De |
Elastic stiffness. | |
Mat_t | Dep |
Elastoplastic stiffness. | |
Vec_t | VDe |
V*De. | |
Vec_t | DeW |
De*W. | |
Vec_t | s |
Deviator of sigma. | |
Vec_t | dthdsig |
Derivative of theta w.r.t sigma. | |
Vec_t | dgdsig |
derivative of g w.r.t sigma | |
Vec_t | dI1dsig |
Vec_t | dI2dsig |
Vec_t | dI3dsig |
derivative of characteristic invariants | |
double | p |
double | q |
double | t |
double | th |
double | g |
double | I1 |
double | I2 |
double | I3 |
Invariants. |
ElastoPlastic::ElastoPlastic | ( | int | NDim, |
SDPair const & | Prms, | ||
size_t | NIv = 3 , |
||
char const * | Name = "ElastoPlastic(VM)" , |
||
bool | DerivedModel = false |
||
) | [inline] |
virtual ElastoPlastic::~ElastoPlastic | ( | ) | [inline, virtual] |
void ElastoPlastic::Calc_arc | ( | double | M | ) | const [inline] |
void ElastoPlastic::Calc_dgdsig | ( | Vec_t const & | Sig, |
double | sinp | ||
) | const [inline] |
void ElastoPlastic::Calc_pq | ( | Vec_t const & | Sig | ) | const [inline] |
void ElastoPlastic::Calc_pqg | ( | Vec_t const & | Sig, |
double | sinp | ||
) | const [inline] |
void ElastoPlastic::Calc_pqt | ( | Vec_t const & | Sig | ) | const [inline] |
virtual double ElastoPlastic::CalcE | ( | Vec_t const & | Sig, |
Vec_t const & | Ivs | ||
) | const [inline, virtual] |
Reimplemented in CamClay.
size_t ElastoPlastic::CorrectDrift | ( | State * | Sta | ) | const [inline, virtual] |
Reimplemented from Model.
double ElastoPlastic::dFada | ( | double | Alp, |
void * | |||
) | [inline] |
void ElastoPlastic::ELStiff | ( | Vec_t const & | Sig, |
Vec_t const & | Ivs | ||
) | const [inline, virtual] |
void ElastoPlastic::ExtraDIvs | ( | Vec_t & | DIvs | ) | const [inline, virtual] |
double ElastoPlastic::Fa | ( | double | Alp, |
void * | |||
) | [inline] |
void ElastoPlastic::Gradients | ( | Vec_t const & | Sig, |
Vec_t const & | Ivs, | ||
bool | Potential = false |
||
) | const [inline, virtual] |
Reimplemented in CamClay.
void ElastoPlastic::Hardening | ( | Vec_t const & | Sig, |
Vec_t const & | Ivs | ||
) | const [inline, virtual] |
Reimplemented in CamClay.
void ElastoPlastic::InitIvs | ( | SDPair const & | Ini, |
State * | Sta | ||
) | const [inline, virtual] |
bool ElastoPlastic::LoadCond | ( | State const * | Sta, |
Vec_t const & | DEps, | ||
double & | alpInt | ||
) | const [inline, virtual] |
Reimplemented from Model.
void ElastoPlastic::Rate | ( | State const * | Sta, |
Vec_t const & | DEpsDt, | ||
Vec_t & | DSigDt, | ||
Vec_t & | DIvsDt | ||
) | const [inline, virtual] |
Reimplemented from Model.
void ElastoPlastic::Stiffness | ( | State const * | Sta, |
Mat_t & | D | ||
) | const [inline, virtual] |
Reimplemented from Model.
void ElastoPlastic::TgIncs | ( | State const * | Sta, |
Vec_t & | DEps, | ||
Vec_t & | DSig, | ||
Vec_t & | DIvs | ||
) | const [inline, virtual] |
Reimplemented from Model.
double ElastoPlastic::YieldFunc | ( | Vec_t const & | Sig, |
Vec_t const & | Ivs | ||
) | const [inline, virtual] |
Reimplemented in CamClay.
double ElastoPlastic::AlpSU |
Alpha coefficient for new stress update.
double ElastoPlastic::BetSU |
Beta coefficient for new stress update.
double ElastoPlastic::DCFTol |
Drift correction ys function tolerance.
size_t ElastoPlastic::DCMaxIt |
Drift correction max iterations.
Mat_t ElastoPlastic::De [mutable] |
Elastic stiffness.
Mat_t ElastoPlastic::Dep [mutable] |
Elastoplastic stiffness.
Vec_t ElastoPlastic::DEpsEl [mutable] |
Elastic strain increment.
Vec_t ElastoPlastic::DEpsPl [mutable] |
Plastic strain increment == Lam*W.
Derived model (such as CamClay)
Vec_t ElastoPlastic::DeW [mutable] |
De*W.
Vec_t ElastoPlastic::dgdsig [mutable] |
derivative of g w.r.t sigma
Vec_t ElastoPlastic::dI1dsig [mutable] |
Vec_t ElastoPlastic::dI2dsig [mutable] |
Vec_t ElastoPlastic::dI3dsig [mutable] |
derivative of characteristic invariants
Vec_t ElastoPlastic::DSigTr [mutable] |
Variables for yield crossing detection.
Vec_t ElastoPlastic::dthdsig [mutable] |
Derivative of theta w.r.t sigma.
double ElastoPlastic::E |
Young.
Failure criterion: VM:Von-Mises.
double ElastoPlastic::FTol |
Tolerance to be used when finding the intersection.
double ElastoPlastic::g [mutable] |
Vec_t ElastoPlastic::H [mutable] |
NIvs: Hardening coefficients, one for each internal variable.
double ElastoPlastic::Hb |
Hardening coefficient H_bar.
double ElastoPlastic::I1 [mutable] |
double ElastoPlastic::I2 [mutable] |
double ElastoPlastic::I3 [mutable] |
Invariants.
Vec_t ElastoPlastic::Ivs0 [mutable] |
double ElastoPlastic::kGE |
General FC coefficient.
double ElastoPlastic::kGEpot |
General FC coefficient (for potential/flow rule)
double ElastoPlastic::kVM |
von Mises coefficient
bool ElastoPlastic::NewSU |
New stress update ?
double ElastoPlastic::nu |
Poisson.
double ElastoPlastic::p [mutable] |
double ElastoPlastic::pc [mutable] |
double ElastoPlastic::pm [mutable] |
double ElastoPlastic::pTol |
Tolerance for minimum poct.
double ElastoPlastic::q [mutable] |
double ElastoPlastic::qTol |
Tolerance for minimum qoct.
double ElastoPlastic::r2 [mutable] |
Variables for smoothing with arc.
Vec_t ElastoPlastic::s [mutable] |
Deviator of sigma.
Vec_t ElastoPlastic::Sig0 [mutable] |
Vec_t ElastoPlastic::SigA [mutable] |
Vec_t ElastoPlastic::SigB [mutable] |
SigmaBar: shifted sigma for cohesion.
SMPInvs ElastoPlastic::SMP [mutable] |
SMP invariants.
double ElastoPlastic::sphi |
Sin(phi) friction angle.
double ElastoPlastic::spsi |
Sin(psi) dilatancy angle.
double ElastoPlastic::t [mutable] |
double ElastoPlastic::th [mutable] |
Vec_t ElastoPlastic::V [mutable] |
NCps: Gradient of the yield surface.
Vec_t ElastoPlastic::VDe [mutable] |
V*De.
Vec_t ElastoPlastic::W [mutable] |
NCps: Plastic flow rule direction.
Vec_t ElastoPlastic::Y [mutable] |
NIvs: Derivative of the yield surface w.r.t internal variables.