12using EntData = EntitiesFieldData::EntData;
17 FormsIntegrators<BoundaryEleOp>::Assembly<
A>
::OpBase;
24#include <ContactOps.hpp>
30 :
public PostProcBrokenMeshInMoabBase<FaceElementForcesAndSourcesCore> {
32 using Base = PostProcBrokenMeshInMoabBase<FaceElementForcesAndSourcesCore>;
33 using Base::refElementsMap;
36 boost::shared_ptr<moab::Core> core_mesh_ptr,
int max_order,
37 std::map<int, Range> &&body_map);
66 using MapFaceData = std::map<EntityHandle, std::vector<FaceData>>;
70 auto it = map_face_data.find(fe_ent);
71 if (it == map_face_data.end()) {
72 return (std::vector<FaceData> *)
nullptr;
78 std::vector<FaceData> *vec_ptr) {
80 if (it != vec_ptr->end()) {
81 if (it->gaussPtNb == gg) {
82 face_data_ptr = &(*it);
110 double t,
double x,
double y,
double z,
double tx,
double ty,
double tz,
114 boost::function<FTensor::Tensor1<double, 3>(
115 double t,
double x,
double y,
double z,
double tx,
double ty,
double tz,
119 boost::function<FTensor::Tensor2_symmetric<double, 3>(
120 double t,
double x,
double y,
double z,
double tx,
double ty,
double tz,
125 double ty,
double tz,
132 double tx,
double ty,
double tz,
139 double tx,
double ty,
double tz,
147 const std::string row_field_name,
148 boost::shared_ptr<ContactOps::CommonData> common_data_ptr,
149 boost::shared_ptr<ContactTree> conact_tree_ptr);
151 MoFEMErrorCode
iNtegrate(EntitiesFieldData::EntData &row_data);
168 const std::string row_field_name,
169 boost::shared_ptr<ContactOps::CommonData> common_data_ptr,
170 boost::shared_ptr<EntitiesFieldData::EntData> col_data_ptr,
171 boost::shared_ptr<ContactTree> conact_tree_ptr);
173 MoFEMErrorCode
iNtegrate(EntitiesFieldData::EntData &row_data);
174 MoFEMErrorCode
aSsemble(EntitiesFieldData::EntData &row_data);
193 const std::string row_field_name,
194 boost::shared_ptr<ContactOps::CommonData> common_data_ptr,
195 boost::shared_ptr<ContactTree> conact_tree_ptr);
197 MoFEMErrorCode
iNtegrate(EntitiesFieldData::EntData &row_data,
198 EntitiesFieldData::EntData &col_data);
214 using UDO = ForcesAndSourcesCore::UserDataOperator;
218 boost::shared_ptr<EntitiesFieldData::EntData> col_data_ptr);
221 EntitiesFieldData::EntData &data);
227struct OpMoveNode :
public FaceElementForcesAndSourcesCore::UserDataOperator {
229 using UOP = FaceElementForcesAndSourcesCore::UserDataOperator;
231 OpMoveNode(boost::shared_ptr<ContactTree> contact_tree_ptr,
232 boost::shared_ptr<ContactOps::CommonData> common_data_ptr,
233 boost::shared_ptr<MatrixDouble> u_h1_ptr,
234 boost::shared_ptr<EntitiesFieldData::EntData> col_data_ptr);
236 EntitiesFieldData::EntData &data);
245struct OpTreeSearch :
public FaceElementForcesAndSourcesCore::UserDataOperator {
247 using UOP = FaceElementForcesAndSourcesCore::UserDataOperator;
249 OpTreeSearch(boost::shared_ptr<ContactTree> contact_tree_ptr,
250 boost::shared_ptr<ContactOps::CommonData> common_data_ptr,
252 moab::Interface *post_proc_mesh_ptr,
253 std::vector<EntityHandle> *map_gauss_pts_ptr
257 EntitiesFieldData::EntData &data);
boost::function< FTensor::Tensor2_symmetric< double, 3 >(double t, double x, double y, double z, double tx, double ty, double tz, ContactTree::FaceData *face_data_ptr)> MBHessSurfaceDistanceFunction
double mb_surface_distance_function(double t, double x, double y, double z, double tx, double ty, double tz, ContactTree::FaceData *face_data_ptr)
boost::function< double(double t, double x, double y, double z, double tx, double ty, double tz, ContactTree::FaceData *face_data_ptr)> MBSurfaceDistanceFunction
FTensor::Tensor1< double, 3 > mb_grad_surface_distance_function(double t, double x, double y, double z, double tx, double ty, double tz, ContactTree::FaceData *face_data_ptr)
boost::function< FTensor::Tensor1< double, 3 >(double t, double x, double y, double z, double tx, double ty, double tz, ContactTree::FaceData *face_data_ptr)> MBGradSurfaceDistanceFunction
FTensor::Tensor2_symmetric< double, 3 > mb_hess_surface_distance_function(double t, double x, double y, double z, double tx, double ty, double tz, ContactTree::FaceData *face_data_ptr)
constexpr double t
plate stiffness
constexpr auto field_name
OpBaseImpl< PETSC, EdgeEleOp > OpBase
MBGradSurfaceDistanceFunction gradSurfaceDistanceFunction
MBHessSurfaceDistanceFunction hessSurfaceDistanceFunction
MBSurfaceDistanceFunction surfaceDistanceFunction
MoFEMErrorCode iNtegrate(EntitiesFieldData::EntData &row_data, EntitiesFieldData::EntData &col_data)
boost::shared_ptr< ContactTree > contactTreePtr
boost::shared_ptr< ContactOps::CommonData > commonDataPtr
MBHessSurfaceDistanceFunction hessSurfaceDistanceFunction
boost::shared_ptr< EntitiesFieldData::EntData > colDataPtr
boost::shared_ptr< ContactOps::CommonData > commonDataPtr
boost::shared_ptr< ContactTree > contactTreePtr
MBSurfaceDistanceFunction surfaceDistanceFunction
MBGradSurfaceDistanceFunction gradSurfaceDistanceFunction
MoFEMErrorCode aSsemble(EntitiesFieldData::EntData &row_data)
MoFEMErrorCode iNtegrate(EntitiesFieldData::EntData &row_data)
MBHessSurfaceDistanceFunction hessSurfaceDistanceFunction
MoFEMErrorCode iNtegrate(EntitiesFieldData::EntData &row_data)
MBGradSurfaceDistanceFunction gradSurfaceDistanceFunction
boost::shared_ptr< ContactTree > contactTreePtr
boost::shared_ptr< ContactOps::CommonData > commonDataPtr
MBSurfaceDistanceFunction surfaceDistanceFunction
MoFEMErrorCode doWork(int side, EntityType type, EntitiesFieldData::EntData &data)
ForcesAndSourcesCore::UserDataOperator UDO
boost::shared_ptr< EntitiesFieldData::EntData > colDataPtr
boost::shared_ptr< ContactOps::CommonData > commonDataPtr
boost::shared_ptr< ContactTree > contactTreePtr
MoFEMErrorCode doWork(int side, EntityType type, EntitiesFieldData::EntData &data)
boost::shared_ptr< EntitiesFieldData::EntData > colDataPtr
FaceElementForcesAndSourcesCore::UserDataOperator UOP
boost::shared_ptr< MatrixDouble > uH1Ptr
moab::Interface * postProcMeshPtr
boost::shared_ptr< ContactTree > contactTreePtr
std::vector< EntityHandle > * mapGaussPtsPtr
boost::shared_ptr< ContactOps::CommonData > commonDataPtr
MoFEMErrorCode doWork(int side, EntityType type, EntitiesFieldData::EntData &data)
FaceElementForcesAndSourcesCore::UserDataOperator UOP
Deprecated interface functions.
default operator for TRI element
std::map< EntityType, PostProcGenerateRefMeshPtr > refElementsMap