1 #ifndef EMM_DisplacementFVM_VIGROperator_H 2 #define EMM_DisplacementFVM_VIGROperator_H 42 mutable SP::EMM_RealField
mUp;
virtual ~EMM_DisplacementFVM_VIGROperator(void)
destroy
Definition: EMM_DisplacementFVM_VIGROperator.cpp:20
const tUInteger * getSegmentsNumber() const
get number of segments in each direction
Definition: EMM_DisplacementFVMOperator.h:298
virtual void initializeEquilibriumSolver(const EMM_RealField &U0)
initialize the equilibrium solver
Definition: EMM_DisplacementOperator.cpp:1423
EMM_DisplacementFVM_VIGROperator(void)
create
Definition: EMM_DisplacementFVM_VIGROperator.cpp:6
EMM_RealField & getAccelerator()
get the accelerator for writing
Definition: EMM_DisplacementOperator.h:970
EMM_RealField & getDisplacement()
get the displacement for writing
Definition: EMM_DisplacementOperator.h:911
virtual void computeElasticStressMatrixProduct(const tUIndex &nData, const tDimension &dim, const tReal *U, tReal *D) const
compute the elastic stress Matrix product
Definition: EMM_DisplacementFVM_VIGROperator.h:150
SP::EMM_RealField mUp
Definition: EMM_DisplacementFVM_VIGROperator.h:42
virtual void initializeEquilibriumSolver(const EMM_RealField &U0)
initialize the equilibrium solver
Definition: EMM_DisplacementFVM_VIGROperator.h:121
const EMM_LimitConditionArray & getLimitConditionOnPoints() const
Definition: EMM_DisplacementOperator.h:583
static void interpolateUAtVertices(const tBoolean &withDirichletPoints, const tUInteger N[3], const tBoolean isPeriodic[3], const CORE_UIndexMorseArray &neighborIndices, const EMM_RealField &Ucells, const EMM_LimitConditionArray &limitConditionOnPoints, const EMM_RealField &U0, EMM_RealField &Up)
Definition: EMM_DisplacementFVM_Interpolator.h:202
#define tDimension
Definition: EMM_Types.h:10
DEFINE_SPTR(EMM_DisplacementFVM_VIGROperator)
const CORE_UIndexMorseArray & getNeighborsIndices() const
get the index of the neighbor cells for each cell of the mesh for reading
Definition: EMM_DisplacementFVMOperator.h:285
This class describes a morse array of symmetric tensors of 2 order in packed form.
Definition: EMM_2PackedSymmetricTensors.h:20
const tBoolean * isDirectionPeriodic() const
get priodic directions
Definition: EMM_DisplacementFVMOperator.h:304
EMM_RealField & getUVertexInterpolation()
get the displacement at points for writing
Definition: EMM_DisplacementFVM_VIGROperator.h:79
virtual void initField(const tReal &f)=0
init the field to uniform value in each direction
This class describes the displacement operator defined on the cells of the mesh with Volume Gradient ...
Definition: EMM_DisplacementFVM_VIGROperator.h:24
virtual void computeElasticStress(const tBoolean &withConstraints, const tReal &beta, const tUIndex &nData, const tDimension &dim, const tReal *U, tReal *S) const
compute the elastic stress
Definition: EMM_DisplacementFVMOperator.cpp:1067
#define tUIndex
Definition: types.h:126
const EMM_RealField & getDisplacementOnDirichletBoundary() const
get the displacement field at boundary for reading
Definition: EMM_DisplacementFVMOperator.h:188
virtual void computeElasticTensor(const EMM_RealField &U, EMM_2PackedSymmetricTensors &eTensor)
compute the elastic tensor for all cells
Definition: EMM_DisplacementFVMOperator.h:606
static const tDimension Z
Definition: EMM_Object.h:35
void setDimension(const tDimension &d)
set the dimension
Definition: EMM_RealField.h:158
const EMM_RealField & getUVertexInterpolation() const
get the displacement at points for reading
Definition: EMM_DisplacementFVM_VIGROperator.h:72
This class describes a real field.
Definition: EMM_RealField.h:21
virtual void setSize(const tUIndex &n)=0
set the size
#define tReal
Definition: types.h:118
SP_OBJECT(EMM_DisplacementFVM_VIGROperator)
virtual void computeElasticTensor(const EMM_RealField &U, EMM_2PackedSymmetricTensors &eTensor)
compute elastic tensor
Definition: EMM_DisplacementFVM_VIGROperator.h:98
This class describes the displacement operator defined on the cells of the mesh with Volume Gradient ...
Definition: EMM_DisplacementFVM_VGROperator.h:25