v0.14.0
Projection10NodeCoordsOnField.hpp
Go to the documentation of this file.
1 /** \file Projection10NodeCoordsOnField.hpp
2 
3 FIXME: Move code to cpp file.
4 
5 Project displacements/coordinates from 10 node tetrahedra on hierarchical
6 approximation base.
7 
8 This is example how to use MoFEM::DofMethod when some operator for each node
9 need to be applied.
10 
11 */
12 
13 
14 
15 #ifndef __PROJECTION10NODECOORDSONFIELD_HPP__
16 #define __PROJECTION10NODECOORDSONFIELD_HPP__
17 
18 using namespace boost::numeric;
19 
20 namespace MoFEM {
21 
22 /** \brief Projection of edge entities with one mid-node on hierarchical basis
23  */
25 
27  int verb = 0);
28 
29  MoFEMErrorCode preProcess();
30 
31  MoFEMErrorCode operator()();
32 
33  MoFEMErrorCode postProcess();
34 
35 protected:
36 
38  std::string fieldName;
39  int vErbose;
40 
46 
47 };
48 
50 
51 
52  ProjectionFieldOn10NodeTet(Interface &m_field, std::string _fieldName,
53  bool set_nodes, bool on_coords,
54  std::string on_tag = "NoNE");
55 
56  MoFEMErrorCode preProcess();
57 
58  MoFEMErrorCode operator()();
59 
60 
61  bool setNodes;
62  bool onCoords;
63  std::string onTag;
64 
66 
67  Tag th;
68 
69 protected:
70 
71  Field_multiIndex::index<FieldName_mi_tag>::type::iterator field_it;
74 
75 };
76 
77 } // namespace MoFEM
78 
79 #endif // __PROJECTION10NODECOORDSONFIELD_HPP__
MoFEM::Types::VectorDouble3
VectorBoundedArray< double, 3 > VectorDouble3
Definition: Types.hpp:92
MoFEM::Projection10NodeCoordsOnField::fieldName
std::string fieldName
Definition: Projection10NodeCoordsOnField.hpp:38
MoFEM::Exceptions::MoFEMErrorCode
PetscErrorCode MoFEMErrorCode
MoFEM/PETSc error code.
Definition: Exceptions.hpp:56
MoFEM::ProjectionFieldOn10NodeTet::maxApproximationOrder
const int maxApproximationOrder
Definition: Projection10NodeCoordsOnField.hpp:65
MoFEM::Projection10NodeCoordsOnField
Projection of edge entities with one mid-node on hierarchical basis.
Definition: Projection10NodeCoordsOnField.hpp:24
MoFEM::Projection10NodeCoordsOnField::mField
Interface & mField
Definition: Projection10NodeCoordsOnField.hpp:37
MoFEM::DofMethod
Data structure to exchange data between mofem and User Loop Methods on entities.
Definition: LoopMethods.hpp:493
MoFEM::ProjectionFieldOn10NodeTet::field_it
Field_multiIndex::index< FieldName_mi_tag >::type::iterator field_it
Definition: Projection10NodeCoordsOnField.hpp:71
MoFEM::DeprecatedCoreInterface
Deprecated interface functions.
Definition: DeprecatedCoreInterface.hpp:16
MoFEM::ProjectionFieldOn10NodeTet::K
VectorDouble K
Definition: Projection10NodeCoordsOnField.hpp:73
MoFEM::ProjectionFieldOn10NodeTet
Definition: Projection10NodeCoordsOnField.hpp:49
MoFEM::ProjectionFieldOn10NodeTet::onCoords
bool onCoords
Definition: Projection10NodeCoordsOnField.hpp:62
MoFEM
implementation of Data Operators for Forces and Sources
Definition: Common.hpp:10
MoFEM::ProjectionFieldOn10NodeTet::L
VectorDouble L
Definition: Projection10NodeCoordsOnField.hpp:72
MoFEM::Projection10NodeCoordsOnField::vErbose
int vErbose
Definition: Projection10NodeCoordsOnField.hpp:39
MoFEM::ProjectionFieldOn10NodeTet::setNodes
bool setNodes
Definition: Projection10NodeCoordsOnField.hpp:61
MoFEM::Projection10NodeCoordsOnField::aveMidCoord
VectorDouble3 aveMidCoord
Definition: Projection10NodeCoordsOnField.hpp:42
field_name
constexpr auto field_name
Definition: poisson_2d_homogeneous.cpp:13
MoFEM::Projection10NodeCoordsOnField::dOf
VectorDouble3 dOf
Definition: Projection10NodeCoordsOnField.hpp:45
MoFEM::ProjectionFieldOn10NodeTet::onTag
std::string onTag
Definition: Projection10NodeCoordsOnField.hpp:63
UBlasVector< double >
MoFEM::Projection10NodeCoordsOnField::coords
VectorDouble coords
Definition: Projection10NodeCoordsOnField.hpp:41
MoFEM::ProjectionFieldOn10NodeTet::th
Tag th
Definition: Projection10NodeCoordsOnField.hpp:67
MoFEM::Projection10NodeCoordsOnField::midNodeCoord
VectorDouble3 midNodeCoord
Definition: Projection10NodeCoordsOnField.hpp:43
MoFEM::Projection10NodeCoordsOnField::diffNodeCoord
VectorDouble3 diffNodeCoord
Definition: Projection10NodeCoordsOnField.hpp:44