v0.14.0
Classes | Public Member Functions | Public Attributes | List of all members
FractureMechanics::ConstantArea::OpAreaJacobian Struct Reference

#include <users_modules/fracture_mechanics/src/ConstantArea.hpp>

Inheritance diagram for FractureMechanics::ConstantArea::OpAreaJacobian:
[legend]
Collaboration diagram for FractureMechanics::ConstantArea::OpAreaJacobian:
[legend]

Classes

struct  AuxFunctions
 

Public Member Functions

 OpAreaJacobian (int tag, CommonData &common_data)
 
PetscErrorCode doWork (int side, EntityType type, DataForcesAndSourcesCore::EntData &data)
 

Public Attributes

int tAg
 
CommonDatacommonData
 
bool isTapeRecorded
 
AuxFunctions< adoublea_auxFun
 

Detailed Description

Definition at line 240 of file ConstantArea.hpp.

Constructor & Destructor Documentation

◆ OpAreaJacobian()

FractureMechanics::ConstantArea::OpAreaJacobian::OpAreaJacobian ( int  tag,
CommonData common_data 
)
inline

Definition at line 247 of file ConstantArea.hpp.

249  "MESH_NODE_POSITIONS", UserDataOperator::OPROW),
250  tAg(tag), commonData(common_data), isTapeRecorded(false) {
251  sYmm = false;
252  }

Member Function Documentation

◆ doWork()

PetscErrorCode FractureMechanics::ConstantArea::OpAreaJacobian::doWork ( int  side,
EntityType  type,
DataForcesAndSourcesCore::EntData data 
)
inline

Definition at line 423 of file ConstantArea.hpp.

424  {
426 
427  if (isTapeRecorded) {
429  }
430  if (type != MBVERTEX) {
432  }
433 
434  int nb_dofs = data.getFieldData().size();
435  int nb_gauss_pts = data.getN().size1();
436 
437  a_auxFun.referenceCoords.resize(9, false);
438  a_auxFun.currentCoords.resize(9, false);
439 
440  trace_on(tAg);
441 
442  for (int dd = 0; dd != nb_dofs; dd++) {
443  a_auxFun.referenceCoords[dd] <<= getCoords()[dd];
444  }
445  for (int dd = 0; dd != nb_dofs; dd++) {
446  a_auxFun.currentCoords[dd] <<= data.getFieldData()[dd];
447  }
448 
449  a_auxFun.crackAreaIncrement.resize(9, false);
450  std::fill(a_auxFun.crackAreaIncrement.begin(),
451  a_auxFun.crackAreaIncrement.end(), 0);
452 
453  for (int gg = 0; gg != nb_gauss_pts; ++gg) {
454 
455  double val = getGaussPts()(2, gg) * 0.5;
456 
457  CHKERR a_auxFun.matrixB(gg, data);
462  }
463 
464  // cerr << "Griffith Force " << auxFun.griffithForce << endl;
465 
466  commonData.crackAreaIncrement.resize(nb_dofs, false);
467  for (int dd = 0; dd != nb_dofs; dd++) {
469  }
470 
471  trace_off();
472 
473  isTapeRecorded = true;
474 
476  }

Member Data Documentation

◆ a_auxFun

AuxFunctions<adouble> FractureMechanics::ConstantArea::OpAreaJacobian::a_auxFun

Definition at line 421 of file ConstantArea.hpp.

◆ commonData

CommonData& FractureMechanics::ConstantArea::OpAreaJacobian::commonData

Definition at line 244 of file ConstantArea.hpp.

◆ isTapeRecorded

bool FractureMechanics::ConstantArea::OpAreaJacobian::isTapeRecorded

Definition at line 245 of file ConstantArea.hpp.

◆ tAg

int FractureMechanics::ConstantArea::OpAreaJacobian::tAg

Definition at line 243 of file ConstantArea.hpp.


The documentation for this struct was generated from the following file:
MoFEMFunctionReturnHot
#define MoFEMFunctionReturnHot(a)
Last executable line of each PETSc function used for error handling. Replaces return()
Definition: definitions.h:460
FractureMechanics::ConstantArea::OpAreaJacobian::AuxFunctions::matrixA
PetscErrorCode matrixA()
Definition: ConstantArea.hpp:363
FractureMechanics::ConstantArea::CommonData::crackAreaIncrement
VectorDouble crackAreaIncrement
Definition: ConstantArea.hpp:37
FractureMechanics::ConstantArea::OpAreaJacobian::AuxFunctions::dIffX
PetscErrorCode dIffX()
Definition: ConstantArea.hpp:326
FractureMechanics::ConstantArea::OpAreaJacobian::AuxFunctions::referenceCoords
ublas::vector< TYPE > referenceCoords
Definition: ConstantArea.hpp:273
FractureMechanics::ConstantArea::OpAreaJacobian::AuxFunctions::crackAreaIncrement
ublas::vector< TYPE > crackAreaIncrement
Definition: ConstantArea.hpp:291
CHKERR
#define CHKERR
Inline error check.
Definition: definitions.h:548
FractureMechanics::ConstantArea::OpAreaJacobian::AuxFunctions::matrixB
PetscErrorCode matrixB(int gg, DataForcesAndSourcesCore::EntData &data)
Definition: ConstantArea.hpp:307
convert.type
type
Definition: convert.py:64
FractureMechanics::ConstantArea::OpAreaJacobian::AuxFunctions::currentCoords
ublas::vector< TYPE > currentCoords
Definition: ConstantArea.hpp:282
FractureMechanics::ConstantArea::OpAreaJacobian::a_auxFun
AuxFunctions< adouble > a_auxFun
Definition: ConstantArea.hpp:421
FractureMechanics::ConstantArea::OpAreaJacobian::AuxFunctions::nOrmal
PetscErrorCode nOrmal()
Definition: ConstantArea.hpp:343
FractureMechanics::ConstantArea::OpAreaJacobian::commonData
CommonData & commonData
Definition: ConstantArea.hpp:244
FractureMechanics::ConstantArea::OpAreaJacobian::AuxFunctions::calculateAreaIncrementDirection
PetscErrorCode calculateAreaIncrementDirection(double beta)
Definition: ConstantArea.hpp:377
FTensor::dd
const Tensor2_symmetric_Expr< const ddTensor0< T, Dim, i, j >, typename promote< T, double >::V, Dim, i, j > dd(const Tensor0< T * > &a, const Index< i, Dim > index1, const Index< j, Dim > index2, const Tensor1< int, Dim > &d_ijk, const Tensor1< double, Dim > &d_xyz)
Definition: ddTensor0.hpp:33
UserDataOperator
ForcesAndSourcesCore::UserDataOperator UserDataOperator
Definition: HookeElement.hpp:75
FractureMechanics::ConstantArea::OpAreaJacobian::isTapeRecorded
bool isTapeRecorded
Definition: ConstantArea.hpp:245
FractureMechanics::ConstantArea::OpAreaJacobian::tAg
int tAg
Definition: ConstantArea.hpp:243
MoFEMFunctionReturn
#define MoFEMFunctionReturn(a)
Last executable line of each PETSc function used for error handling. Replaces return()
Definition: definitions.h:429
MoFEMFunctionBegin
#define MoFEMFunctionBegin
First executable line of each MoFEM function, used for error handling. Final line of MoFEM functions ...
Definition: definitions.h:359
MoFEM::ForcesAndSourcesCore::UserDataOperator::OPROW
@ OPROW
operator doWork function is executed on FE rows
Definition: ForcesAndSourcesCore.hpp:567