v0.13.2
Loading...
Searching...
No Matches
Classes | Namespaces | Typedefs | Functions
ElasticOperators.hpp File Reference

Go to the source code of this file.

Classes

struct  OpElasticTools::CommonData
 [Common data] More...
 
struct  OpElasticTools::OpStrain
 
struct  OpElasticTools::OpLogStrain
 
struct  OpElasticTools::OpStress
 
struct  OpElasticTools::OpCalculateLogStressTangent< TANGENT >
 
struct  OpElasticTools::OpCalculateNeoHookeStressTangent
 
struct  OpElasticTools::OpInternalForceRhs< LOGSTRAIN, REACTIONS >
 
struct  OpElasticTools::OpPostProcElastic< LOGSTRAIN >
 
struct  OpElasticTools::OpSetMaterialBlock
 
struct  OpElasticTools::OpSetMaterialBlockBoundary
 
struct  OpElasticTools::OpSaveReactionForces
 
struct  OpElasticTools::OpEssentialRHS_U
 
struct  OpElasticTools::OpRotate
 
struct  OpElasticTools::OpSetUnSetRowData
 
struct  OpElasticTools::OpSchurBegin
 
struct  OpElasticTools::OpSchurEnd
 
struct  OpElasticTools::OpSchurBeginBoundary
 
struct  OpElasticTools::OpSchurEndBoundary
 
struct  OpElasticTools::OpSchurPreconditionMassContact< TYPE >
 
struct  OpElasticTools::OpSchurPreconditionMassTau
 
struct  OpElasticTools::FePrePostProcess
 Not used at this stage. Could be used to do some calculations, before assembly of local elements. More...
 

Namespaces

namespace  OpElasticTools
 

Typedefs

using OpElasticTools::OpMassPrecHTensorBound = FormsIntegrators< BoundaryEleOp >::Assembly< USER_ASSEMBLE >::BiLinearForm< GAUSS >::OpMass< 3, 9 >
 
using OpElasticTools::OpMassPrecHTensorVol = FormsIntegrators< DomainEleOp >::Assembly< USER_ASSEMBLE >::BiLinearForm< GAUSS >::OpMass< 3, 9 >
 
using OpElasticTools::OpMassPrecScalar = FormsIntegrators< DomainEleOp >::Assembly< USER_ASSEMBLE >::BiLinearForm< GAUSS >::OpMass< 1, 1 >
 
typedef boost::function< Tensor1< double, 3 >(const double, const double, const double)> OpElasticTools::VectorFun
 [Operators definitions] More...
 
typedef struct OpSchurPreconditionMassContact< OpMassPrecHTensorBound > OpElasticTools::OpSchurPreconditionMassContactBound
 
typedef struct OpSchurPreconditionMassContact< OpMassPrecHTensorVol > OpElasticTools::OpSchurPreconditionMassContactVol
 

Functions

template<typename T >
auto OpElasticTools::to_non_symm (T &symm)
 
template<typename T >
auto OpElasticTools::to_symm (T &non_symm)
 
bool OpElasticTools::is_eq (const double &a, const double &b)
 
bool OpElasticTools::is_diff (const double &a, const double &b)
 
template<typename T >
Ddg< double, 3, 3 > OpElasticTools::tensor4_to_ddg (Tensor4< T, 3, 3, 3, 3 > &t)
 
template<typename T >
auto OpElasticTools::get_tensor4_from_ddg (Ddg< T, 3, 3 > &ddg)
 
template<typename T >
bool OpElasticTools::is_ddg (Tensor4< T, 3, 3, 3, 3 > tensor)
 
template<typename T >
auto OpElasticTools::exp_map (const Tensor2_symmetric< T, 3 > &X)
 
template<typename T >
auto OpElasticTools::get_rotation_R (Tensor1< T, 3 > t1_omega, double tt)
 
template<typename T >
auto OpElasticTools::get_log_map (const Tensor2_symmetric< T, 3 > &X)
 
template<typename T >
auto OpElasticTools::get_diff_log_map (Tensor2_symmetric< T, 3 > &X)
 
template<typename T >
MoFEMErrorCode OpElasticTools::get_eigen_val_and_proj_lapack (const Tensor2_symmetric< T, 3 > &X, Tensor1< T, 3 > &lambda, Tensor2< T, 3, 3 > &eig_vec)
 
template<typename T1 , typename T2 , typename T3 >
auto OpElasticTools::get_ln_X_lapack (const Tensor2_symmetric< T1, 3 > &X, Tensor1< T2, 3 > &lambda, Tensor2< T3, 3, 3 > &eig_vec)
 
template<typename T >
auto OpElasticTools::get_ln_X (const Tensor2_symmetric< T, 3 > &X)
 
template<typename T , typename TP , typename T3 >
auto OpElasticTools::calculate_nominal_moduli_TL (Tensor2_symmetric< T, 3 > &X, Tensor2< TP, 3, 3 > &F, Tensor2_symmetric< TP, 3 > &stress, Tensor1< T, 3 > &lambda, Tensor2< T, 3, 3 > &eig_vec, Tensor4< T3, 3, 3, 3, 3 > &TLs3, bool compute_tangent)
 
template<typename T , typename TP , typename T3 >
auto OpElasticTools::test_projection_lukasz (Tensor2_symmetric< T, 3 > &X, Tensor2_symmetric< TP, 3 > &stress, Tensor1< T, 3 > &lambda, Tensor2< T, 3, 3 > &eig_vec, Ddg< T3, 3, 3 > &TLs3)
 
template<bool TANGENT, typename T , typename TP , typename T3 >
auto OpElasticTools::calculate_lagrangian_moduli_TL (Tensor2_symmetric< TP, 3 > &stress, Tensor1< T, 3 > &lambda, Tensor2< T, 3, 3 > &eig_vec, Ddg< T3, 3, 3 > &TLs3)
 
template<typename T >
Tensor2< double, 3, 3 > OpElasticTools::getFiniteDiff (const int &kk, const int &ll, CommonData &common_data, Tensor2< T, 3, 3 > &F, Tensor2< double, 3, 3 > &t_stress)
 
template<typename T >
Tensor4< double, 3, 3, 3, 3 > OpElasticTools::getDTensorFunction (CommonData &common_data, Tensor2< T, 3, 3 > &F, Tensor2< double, 3, 3 > &t_stress)