v0.9.0
Public Member Functions | Public Attributes | Private Member Functions | Private Attributes | List of all members
CommonData Struct Reference

#include <users_modules/linear_isotropic_hardening/src/PlDataAtGaussPts.hpp>

Collaboration diagram for CommonData:
[legend]

Public Member Functions

 CommonData (MoFEM::Interface &m_field)
 
MoFEMErrorCode getTags (const EntityHandle fe_ent, const int nb_gauss_pts, boost::shared_ptr< MatrixDouble > tag_ptr, Tag tag_ref)
 
MoFEMErrorCode getTags (const EntityHandle fe_ent, const int nb_gauss_pts, boost::shared_ptr< VectorDouble > tag_ptr, Tag tag_ref)
 
template<class T >
MoFEMErrorCode setTags (const EntityHandle fe_ent, const int nb_gauss_pts, T tag_ptr, Tag tag_ref)
 
MoFEMErrorCode getParameters ()
 Get the Parameters object. More...
 
MoFEMErrorCode calcReactionForces (VectorDouble &reactions, DM &dm, boost::shared_ptr< VolumeElementForcesAndSourcesCore > feRhs, int &reactionsSidesetId)
 
MoFEMErrorCode atomTests (const int step_number, const VectorDouble &reactions)
 

Public Attributes

MatrixDouble dotEdge
 
MatrixDouble dotEleLeft
 
MatrixDouble dotEleRight
 
int cOunter = 0
 
int reactionsSidesetId
 
int maxDiv
 
double adaptPowCoef
 
double stepRed
 
double hardMod
 Isotropic Hardening modulus \( H^{i} \). More...
 
double kinMod
 Kinematic Hardening modulus \( H^{k} \). More...
 
double kAppa
 
double yOung
 Young's modulus \( E \). More...
 
double pOisson
 Poisson's ratio \( \nu \). More...
 
double Mu
 shear modulus \( \mu = \frac{E}{2(1+\nu)} \) More...
 
double cOefficient
 
double yieldStress
 Prescribed value of the yield stress \( \sigma_{Y} \). More...
 
double yieldCondition
 Yield criterion for Von Mises plasticity. More...
 
double plasticMultiplier
 Plastic multiplier \( \dot{\gamma} \). More...
 
double tOlerance
 
double lAmbda
 
FTensor::Tensor4< double, 3, 3, 3, 3 > tD
 
boost::shared_ptr< MatrixDouble > gradDispPtr
 
MatrixDouble consistentMatrix
 
boost::shared_ptr< MatrixDouble > stressPtr
 
boost::shared_ptr< MatrixDouble > plasticStrainPtr
 
boost::shared_ptr< VectorDouble > hardParamPtr
 
boost::shared_ptr< VectorDouble > kinParamPtr
 
boost::shared_ptr< VectorDouble > kinParamPrevPtr
 
boost::shared_ptr< MatrixDouble > backStressPtr
 Back stress tensor \( \boldsymbol{\beta} \). More...
 
PetscBool calcReactions
 
PetscInt testNb
 
PetscBool isAtomTest
 
Tag thPlasticStrain
 
Tag thHardParam
 
Tag thBackStress
 
Tag thKinParam
 

Private Member Functions

MoFEMErrorCode createTags (Tag &tag_ref, const string tag_string, const int &dim)
 

Private Attributes

MoFEM::InterfacemField
 

Detailed Description

Examples
continuity_check_on_skeleton_3d.cpp, continuity_check_on_skeleton_with_simple_2d.cpp, reaction_diffusion_equation.cpp, Remodeling.hpp, and SmallStrainPlasticity.hpp.

Definition at line 40 of file continuity_check_on_skeleton_with_simple_2d.cpp.

Constructor & Destructor Documentation

◆ CommonData()

CommonData::CommonData ( MoFEM::Interface m_field)

Definition at line 86 of file PlDataAtGaussPts.hpp.

86  : mField(m_field) {
87  // default base parameters
88 
89  kinMod = 0.1;
90  hardMod = 0.1;
91  plasticMultiplier = 0.0;
92  yieldStress = 1000;
93  pOisson = 0.1;
94  yOung = 50000;
95  tOlerance = 1e-9;
96  maxDiv = 100;
97  stepRed = 0.2;
98  adaptPowCoef = 1. / 4.;
99 
100  gradDispPtr = boost::shared_ptr<MatrixDouble>(new MatrixDouble());
101  stressPtr = boost::shared_ptr<MatrixDouble>(new MatrixDouble());
102  plasticStrainPtr = boost::shared_ptr<MatrixDouble>(new MatrixDouble());
103  hardParamPtr = boost::shared_ptr<VectorDouble>(new VectorDouble());
104  kinParamPtr = boost::shared_ptr<VectorDouble>(new VectorDouble());
105  kinParamPrevPtr = boost::shared_ptr<VectorDouble>(new VectorDouble());
106  backStressPtr = boost::shared_ptr<MatrixDouble>(new MatrixDouble());
107 
108  ierr = createTags(thPlasticStrain, "PLASTIC_STRAIN", 9);
109  ierr = createTags(thHardParam, "HARDENING_PARAMETER", 1);
110  ierr = createTags(thBackStress, "BACK_STRESS", 9);
111  ierr = createTags(thKinParam, "KIN_HARDENING_PARAMETER", 1);
112 
113  CHKERRABORT(PETSC_COMM_WORLD, ierr);
114  }
boost::shared_ptr< MatrixDouble > plasticStrainPtr
boost::shared_ptr< MatrixDouble > gradDispPtr
ublas::matrix< double, ublas::row_major, DoubleAllocator > MatrixDouble
Definition: Types.hpp:74
boost::shared_ptr< VectorDouble > hardParamPtr
MoFEM::Interface & mField
double yOung
Young's modulus .
boost::shared_ptr< VectorDouble > kinParamPtr
double yieldStress
Prescribed value of the yield stress .
double plasticMultiplier
Plastic multiplier .
double pOisson
Poisson's ratio .
boost::shared_ptr< VectorDouble > kinParamPrevPtr
double hardMod
Isotropic Hardening modulus .
double kinMod
Kinematic Hardening modulus .
ublas::vector< double, DoubleAllocator > VectorDouble
Definition: Types.hpp:72
MoFEMErrorCode createTags(Tag &tag_ref, const string tag_string, const int &dim)
boost::shared_ptr< MatrixDouble > stressPtr
boost::shared_ptr< MatrixDouble > backStressPtr
Back stress tensor .

Member Function Documentation

◆ atomTests()

MoFEMErrorCode CommonData::atomTests ( const int  step_number,
const VectorDouble &  reactions 
)

Definition at line 632 of file linear_isotropic_hardening.cpp.

633  {
634 
636 
637  if (testNb == 1) {
638  if (step_number == 29) {
639  int norm_reac;
640  norm_reac =
641  sqrt(reactions[0] * reactions[0] + reactions[1] * reactions[1] +
642  reactions[2] * reactions[2]);
643  if (fabs(norm_reac - 3.8638e+04) > 1e-3) {
644  CHKERR PetscPrintf(PETSC_COMM_WORLD, "norm error: %g \n",
645  norm_reac - 3.8638e+04);
646  SETERRQ(PETSC_COMM_SELF, MOFEM_ATOM_TEST_INVALID,
647  "atom test diverged!");
648  }
649  }
650  }
651 
653 }
#define MoFEMFunctionReturn(a)
Last executable line of each PETSc function used for error handling. Replaces return()
Definition: definitions.h:477
#define CHKERR
Inline error check.
Definition: definitions.h:596
#define MoFEMFunctionBegin
First executable line of each MoFEM function, used for error handling. Final line of MoFEM functions ...
Definition: definitions.h:407

◆ calcReactionForces()

MoFEMErrorCode CommonData::calcReactionForces ( VectorDouble &  reactions,
DM &  dm,
boost::shared_ptr< VolumeElementForcesAndSourcesCore feRhs,
int reactionsSidesetId 
)

Definition at line 587 of file linear_isotropic_hardening.cpp.

590 {
592 
593  Vec F_int;
595 
596  feRhs->snes_ctx = FEMethod::CTX_SNESSETFUNCTION;
597  feRhs->snes_f = F_int;
598  CHKERR DMoFEMLoopFiniteElements(dm, "ELASTIC", feRhs);
599 
600  CHKERR VecAssemblyBegin(F_int);
601  CHKERR VecAssemblyEnd(F_int);
602  CHKERR VecGhostUpdateBegin(F_int, INSERT_VALUES, SCATTER_FORWARD);
603  CHKERR VecGhostUpdateEnd(F_int, INSERT_VALUES, SCATTER_FORWARD);
604 
605  Reactions my_react(mField, "DM_ELASTIC", "U");
606  CHKERR my_react.calculateReactions(F_int);
607 
608  const auto &reactions_map = my_react.getReactionsMap();
609  const int id = reactionsSidesetId;
610  reactions.clear();
611  const bool check_key = reactions_map.find(id) == reactions_map.end();
612  if (!check_key) {
613  reactions = reactions_map.at(id);
614  }
615  Vec react_vec;
616  CHKERR VecCreateMPI(mField.get_comm(), 1, PETSC_DECIDE, &react_vec);
617  for (int dir : {0, 1, 2}) {
618  CHKERR VecZeroEntries(react_vec);
619  const int idx = mField.get_comm_rank();
620  CHKERR VecSetValues(react_vec, 1, &idx, &reactions[dir], INSERT_VALUES);
621  CHKERR VecAssemblyBegin(react_vec);
622  CHKERR VecAssemblyEnd(react_vec);
623  double sum = 0;
624  CHKERR VecSum(react_vec, &sum);
625  reactions[dir] = sum;
626  }
627  CHKERR VecDestroy(&react_vec);
628  CHKERR VecDestroy(&F_int);
630 }
#define MoFEMFunctionReturn(a)
Last executable line of each PETSc function used for error handling. Replaces return()
Definition: definitions.h:477
PetscErrorCode DMoFEMLoopFiniteElements(DM dm, const char fe_name[], MoFEM::FEMethod *method)
Executes FEMethod for finite elements in DM.
Definition: DMMMoFEM.cpp:496
PetscErrorCode DMCreateGlobalVector_MoFEM(DM dm, Vec *g)
DMShellSetCreateGlobalVectorsets the routine to create a global vector associated with the shell DM.
Definition: DMMMoFEM.cpp:1015
MoFEM::Interface & mField
virtual int get_comm_rank() const =0
MoFEMErrorCode VecSetValues(Vec V, const DataForcesAndSourcesCore::EntData &data, const double *ptr, InsertMode iora)
Assemble PETSc vector.
#define CHKERR
Inline error check.
Definition: definitions.h:596
#define MoFEMFunctionBegin
First executable line of each MoFEM function, used for error handling. Final line of MoFEM functions ...
Definition: definitions.h:407
virtual MPI_Comm & get_comm() const =0
calculate reactions from vector of internal forces on meshsets

◆ createTags()

MoFEMErrorCode CommonData::createTags ( Tag &  tag_ref,
const string  tag_string,
const int dim 
)
private

Definition at line 293 of file PlDataAtGaussPts.hpp.

294  {
295 
297  std::vector<double> def_val(dim, 0);
298  CHKERR mField.get_moab().tag_get_handle(
299  tag_string.c_str(), 1, MB_TYPE_DOUBLE, tag_ref,
300  MB_TAG_CREAT | MB_TAG_VARLEN | MB_TAG_SPARSE, &def_val[0]);
302  }
virtual moab::Interface & get_moab()=0
#define MoFEMFunctionReturn(a)
Last executable line of each PETSc function used for error handling. Replaces return()
Definition: definitions.h:477
MoFEM::Interface & mField
#define CHKERR
Inline error check.
Definition: definitions.h:596
#define MoFEMFunctionBegin
First executable line of each MoFEM function, used for error handling. Final line of MoFEM functions ...
Definition: definitions.h:407

◆ getParameters()

MoFEMErrorCode CommonData::getParameters ( )

Get the Parameters object.

Returns
MoFEMErrorCode

create the function to pass some command lines to the main file.

Definition at line 194 of file PlDataAtGaussPts.hpp.

194  {
196 
197  reactionsSidesetId = 0;
198  calcReactions = PETSC_TRUE;
199  testNb = 1;
200  isAtomTest = PETSC_FALSE;
201 
202  CHKERR PetscOptionsBegin(PETSC_COMM_WORLD, "", "SimpleElasticProblem",
203  "none");
204 
205  CHKERR PetscOptionsScalar("-young", "Young modulus", "", yOung, &yOung,
206  PETSC_NULL);
207 
208  CHKERR PetscOptionsScalar("-poisson", "Poisson ratio", "", pOisson,
209  &pOisson, PETSC_NULL);
210 
211  CHKERR PetscOptionsScalar("-tolerance", "tolerance", "", tOlerance,
212  &tOlerance, PETSC_NULL);
213 
214  CHKERR PetscOptionsScalar("-yield", "yield stress", "", yieldStress,
215  &yieldStress, PETSC_NULL);
216 
217  CHKERR PetscOptionsScalar("-HardMod", "Hardening Modulus", "", hardMod,
218  &hardMod, PETSC_NULL);
219 
220  CHKERR PetscOptionsScalar("-KinMod", "Kinematic Hardening Modulus", "",
221  kinMod, &kinMod, PETSC_NULL);
222 
223  CHKERR PetscOptionsScalar("-step_red", "step reductcion while diverge", "",
224  stepRed, &stepRed, PETSC_NULL);
225 
226  CHKERR PetscOptionsScalar("-adapt_coef",
227  "code will be smarter depending on the value", "",
228  adaptPowCoef, &adaptPowCoef, PETSC_NULL);
229 
230  CHKERR PetscOptionsInt(
231  "-calc_reactions", "calculate reactions for blocksets", "",
233 
234  CHKERR PetscOptionsInt("-is_atom_test", "Give number of the atom test", "",
235  testNb, &testNb, &isAtomTest);
236 
237  CHKERR PetscOptionsInt("-steps_max_div", "number of steps", "", maxDiv,
238  &maxDiv, PETSC_NULL);
239 
240  cOefficient = yOung / ((1 + pOisson) * (1 - 2 * pOisson));
241  Mu = yOung / (2 * (1 + pOisson));
242  kAppa = cOefficient * pOisson + (2. / 3.) * Mu;
248  tD(i, j, k, l) = 0.;
249 
250  tD(0, 0, 0, 0) = lAmbda + 2 * Mu;
251  tD(1, 1, 1, 1) = lAmbda + 2 * Mu;
252  tD(2, 2, 2, 2) = lAmbda + 2 * Mu;
253  tD(0, 0, 1, 1) = lAmbda;
254  tD(0, 0, 2, 2) = lAmbda;
255  tD(1, 1, 2, 2) = lAmbda;
256  tD(2, 2, 1, 1) = lAmbda;
257  tD(1, 1, 2, 2) = lAmbda;
258  tD(2, 2, 0, 0) = lAmbda;
259  tD(1, 1, 0, 0) = lAmbda;
260  tD(0, 1, 0, 1) = Mu;
261  tD(0, 2, 0, 2) = Mu;
262  tD(1, 2, 1, 2) = Mu;
263  tD(0, 1, 1, 0) = Mu;
264  tD(0, 2, 2, 0) = Mu;
265  tD(1, 2, 2, 1) = Mu;
266  tD(2, 0, 0, 2) = Mu;
267  tD(1, 0, 0, 1) = Mu;
268  tD(2, 1, 1, 2) = Mu;
269  tD(2, 0, 2, 0) = Mu;
270  tD(1, 0, 1, 0) = Mu;
271  tD(2, 1, 2, 1) = Mu;
272 
273 
274  ierr = PetscOptionsEnd();
275  CHKERRQ(ierr);
276 
278  }
PetscBool calcReactions
PetscBool isAtomTest
double Mu
shear modulus
#define MoFEMFunctionReturn(a)
Last executable line of each PETSc function used for error handling. Replaces return()
Definition: definitions.h:477
double yOung
Young's modulus .
double yieldStress
Prescribed value of the yield stress .
CHKERRQ(ierr)
#define CHKERR
Inline error check.
Definition: definitions.h:596
double pOisson
Poisson's ratio .
double hardMod
Isotropic Hardening modulus .
double kinMod
Kinematic Hardening modulus .
#define MoFEMFunctionBegin
First executable line of each MoFEM function, used for error handling. Final line of MoFEM functions ...
Definition: definitions.h:407
FTensor::Tensor4< double, 3, 3, 3, 3 > tD

◆ getTags() [1/2]

MoFEMErrorCode CommonData::getTags ( const EntityHandle  fe_ent,
const int  nb_gauss_pts,
boost::shared_ptr< MatrixDouble >  tag_ptr,
Tag  tag_ref 
)

Definition at line 116 of file PlDataAtGaussPts.hpp.

119  {
121  double *tag_data;
122  int tag_size;
123  CHKERR mField.get_moab().tag_get_by_ptr(tag_ref, &fe_ent, 1,
124  (const void **)&tag_data,
125  &tag_size);
126 
127  if (tag_size == 1) {
128  tag_ptr->resize(9, nb_gauss_pts , false);
129  tag_ptr->clear();
130  void const *tag_data[] = {&*tag_ptr->data().begin()};
131  const int tag_size = tag_ptr->data().size();
132  CHKERR mField.get_moab().tag_set_by_ptr(tag_ref, &fe_ent, 1,
133  tag_data, &tag_size);
134  } else if (tag_size != nb_gauss_pts * 9) {
135  SETERRQ(PETSC_COMM_SELF, MOFEM_DATA_INCONSISTENCY,
136  "Wrong size of the tag, data inconsistency");
137  } else {
138  MatrixAdaptor tag_vec = MatrixAdaptor(
139  9, nb_gauss_pts,
140  ublas::shallow_array_adaptor<double>(tag_size, tag_data));
141 
142  *tag_ptr = tag_vec;
143  }
144 
145 
147  }
virtual moab::Interface & get_moab()=0
#define MoFEMFunctionReturn(a)
Last executable line of each PETSc function used for error handling. Replaces return()
Definition: definitions.h:477
MoFEM::Interface & mField
MatrixShallowArrayAdaptor< double > MatrixAdaptor
Matrix adaptor.
Definition: Types.hpp:121
#define CHKERR
Inline error check.
Definition: definitions.h:596
#define MoFEMFunctionBegin
First executable line of each MoFEM function, used for error handling. Final line of MoFEM functions ...
Definition: definitions.h:407

◆ getTags() [2/2]

MoFEMErrorCode CommonData::getTags ( const EntityHandle  fe_ent,
const int  nb_gauss_pts,
boost::shared_ptr< VectorDouble >  tag_ptr,
Tag  tag_ref 
)

Definition at line 149 of file PlDataAtGaussPts.hpp.

152  {
154  double *tag_data;
155  int tag_size;
156  CHKERR mField.get_moab().tag_get_by_ptr(
157  tag_ref, &fe_ent, 1, (const void **)&tag_data, &tag_size);
158 
159  if (tag_size == 1) {
160  tag_ptr->resize(nb_gauss_pts);
161  tag_ptr->clear();
162  void const *tag_data[] = {&*tag_ptr->begin()};
163  const int tag_size = tag_ptr->size();
164  CHKERR mField.get_moab().tag_set_by_ptr(tag_ref, &fe_ent, 1,
165  tag_data, &tag_size);
166  } else if (tag_size != nb_gauss_pts) {
167  SETERRQ(PETSC_COMM_SELF, MOFEM_DATA_INCONSISTENCY,
168  "Wrong size of the tag, data inconsistency");
169  } else {
170  VectorAdaptor tag_vec = VectorAdaptor(
171  tag_size, ublas::shallow_array_adaptor<double>(tag_size, tag_data));
172  *tag_ptr = tag_vec;
173  }
175  }
virtual moab::Interface & get_moab()=0
#define MoFEMFunctionReturn(a)
Last executable line of each PETSc function used for error handling. Replaces return()
Definition: definitions.h:477
MoFEM::Interface & mField
VectorShallowArrayAdaptor< double > VectorAdaptor
Definition: Types.hpp:104
#define CHKERR
Inline error check.
Definition: definitions.h:596
#define MoFEMFunctionBegin
First executable line of each MoFEM function, used for error handling. Final line of MoFEM functions ...
Definition: definitions.h:407

◆ setTags()

template<class T >
MoFEMErrorCode CommonData::setTags ( const EntityHandle  fe_ent,
const int  nb_gauss_pts,
T  tag_ptr,
Tag  tag_ref 
)

Definition at line 177 of file PlDataAtGaussPts.hpp.

178  {
180  void const *tag_data[] = {&*tag_ptr->data().begin()};
181  const int tag_size = tag_ptr->data().size();
182  CHKERR mField.get_moab().tag_set_by_ptr(tag_ref, &fe_ent, 1,
183  tag_data, &tag_size);
185  }
virtual moab::Interface & get_moab()=0
#define MoFEMFunctionReturn(a)
Last executable line of each PETSc function used for error handling. Replaces return()
Definition: definitions.h:477
MoFEM::Interface & mField
#define CHKERR
Inline error check.
Definition: definitions.h:596
#define MoFEMFunctionBegin
First executable line of each MoFEM function, used for error handling. Final line of MoFEM functions ...
Definition: definitions.h:407

Member Data Documentation

◆ adaptPowCoef

double CommonData::adaptPowCoef

Definition at line 12 of file PlDataAtGaussPts.hpp.

◆ backStressPtr

boost::shared_ptr<MatrixDouble> CommonData::backStressPtr

Back stress tensor \( \boldsymbol{\beta} \).

Definition at line 78 of file PlDataAtGaussPts.hpp.

◆ calcReactions

PetscBool CommonData::calcReactions

Definition at line 80 of file PlDataAtGaussPts.hpp.

◆ cOefficient

double CommonData::cOefficient

Definition at line 21 of file PlDataAtGaussPts.hpp.

◆ consistentMatrix

MatrixDouble CommonData::consistentMatrix

\( \mathbb{C} = \mathbb{D} < - \frac{\mathbb{D} : < \mathbf{n} \otimes < \mathbb{D} : < \mathbf{n}}{\mathbf{n} : < \mathbb{D} : \mathbf{n} + < \mathbf{K}^{2}} \)

Definition at line 44 of file PlDataAtGaussPts.hpp.

◆ cOunter

int CommonData::cOunter = 0

Definition at line 9 of file PlDataAtGaussPts.hpp.

◆ dotEdge

MatrixDouble CommonData::dotEdge

◆ dotEleLeft

MatrixDouble CommonData::dotEleLeft

◆ dotEleRight

MatrixDouble CommonData::dotEleRight

◆ gradDispPtr

boost::shared_ptr<MatrixDouble> CommonData::gradDispPtr

Total strain tensor \( < \boldsymbol{\varepsilon} < \)

Definition at line 39 of file PlDataAtGaussPts.hpp.

◆ hardMod

double CommonData::hardMod

Isotropic Hardening modulus \( H^{i} \).

Definition at line 14 of file PlDataAtGaussPts.hpp.

◆ hardParamPtr

boost::shared_ptr<VectorDouble> CommonData::hardParamPtr

Vector containing the isotrtopic hardening parameter at each Gauss point

Definition at line 61 of file PlDataAtGaussPts.hpp.

◆ isAtomTest

PetscBool CommonData::isAtomTest

Definition at line 84 of file PlDataAtGaussPts.hpp.

◆ kAppa

double CommonData::kAppa

isostatic elasticity modulus \( \kappa = < \frac{E\nu}{(1-2\nu)(1 + \nu)} + \frac{2}{3}\mu \)

Definition at line 16 of file PlDataAtGaussPts.hpp.

◆ kinMod

double CommonData::kinMod

Kinematic Hardening modulus \( H^{k} \).

Definition at line 15 of file PlDataAtGaussPts.hpp.

◆ kinParamPrevPtr

boost::shared_ptr<VectorDouble> CommonData::kinParamPrevPtr

container that keeps the previous value of the kinetic hardening parameter

Definition at line 72 of file PlDataAtGaussPts.hpp.

◆ kinParamPtr

boost::shared_ptr<VectorDouble> CommonData::kinParamPtr

Vector containing the kinematic hardening parameter at each Gauss point

Definition at line 66 of file PlDataAtGaussPts.hpp.

◆ lAmbda

double CommonData::lAmbda

lame parameter \( \lambda = \frac{E \nu}{(1+\nu)(1-2\nu)} < \)

Definition at line 28 of file PlDataAtGaussPts.hpp.

◆ maxDiv

int CommonData::maxDiv

Definition at line 11 of file PlDataAtGaussPts.hpp.

◆ mField

MoFEM::Interface& CommonData::mField
private

Definition at line 291 of file PlDataAtGaussPts.hpp.

◆ Mu

double CommonData::Mu

shear modulus \( \mu = \frac{E}{2(1+\nu)} \)

Definition at line 20 of file PlDataAtGaussPts.hpp.

◆ plasticMultiplier

double CommonData::plasticMultiplier

Plastic multiplier \( \dot{\gamma} \).

Definition at line 25 of file PlDataAtGaussPts.hpp.

◆ plasticStrainPtr

boost::shared_ptr<MatrixDouble> CommonData::plasticStrainPtr

Plastic Strain \( < \boldsymbol{\varepsilon}^{p} = < \boldsymbol{\varepsilon} - < \boldsymbol{\varepsilon}^{e} \)

Definition at line 56 of file PlDataAtGaussPts.hpp.

◆ pOisson

double CommonData::pOisson

Poisson's ratio \( \nu \).

Definition at line 19 of file PlDataAtGaussPts.hpp.

◆ reactionsSidesetId

int CommonData::reactionsSidesetId

Definition at line 10 of file PlDataAtGaussPts.hpp.

◆ stepRed

double CommonData::stepRed

Definition at line 13 of file PlDataAtGaussPts.hpp.

◆ stressPtr

boost::shared_ptr<MatrixDouble> CommonData::stressPtr

Stress tensor \( < \boldsymbol{\sigma} \)

Definition at line 52 of file PlDataAtGaussPts.hpp.

◆ tD

FTensor::Tensor4<double, 3, 3, 3, 3> CommonData::tD

Elastic stiffness tensor (4th rank tensor with minor and major symmetry) \( \mathbb{D} = < \mu(\mathbb{I} + \bar{\mathbb{I}}) - < \lambda(\mathbf{I} \otimes < \mathbf{I}) \)

Definition at line 32 of file PlDataAtGaussPts.hpp.

◆ testNb

PetscInt CommonData::testNb

Definition at line 82 of file PlDataAtGaussPts.hpp.

◆ thBackStress

Tag CommonData::thBackStress

Definition at line 282 of file PlDataAtGaussPts.hpp.

◆ thHardParam

Tag CommonData::thHardParam

Definition at line 281 of file PlDataAtGaussPts.hpp.

◆ thKinParam

Tag CommonData::thKinParam

Definition at line 283 of file PlDataAtGaussPts.hpp.

◆ thPlasticStrain

Tag CommonData::thPlasticStrain

Definition at line 280 of file PlDataAtGaussPts.hpp.

◆ tOlerance

double CommonData::tOlerance

Definition at line 26 of file PlDataAtGaussPts.hpp.

◆ yieldCondition

double CommonData::yieldCondition

Yield criterion for Von Mises plasticity.

Definition at line 24 of file PlDataAtGaussPts.hpp.

◆ yieldStress

double CommonData::yieldStress

Prescribed value of the yield stress \( \sigma_{Y} \).

Definition at line 23 of file PlDataAtGaussPts.hpp.

◆ yOung

double CommonData::yOung

Young's modulus \( E \).

Definition at line 18 of file PlDataAtGaussPts.hpp.


The documentation for this struct was generated from the following files: