v0.13.0
RotatingFrameOperators.hpp
Go to the documentation of this file.
1 /* This file is part of MoFEM.
2  * MoFEM is free software: you can redistribute it and/or modify it under
3  * the terms of the GNU Lesser General Public License as published by the
4  * Free Software Foundation, either version 3 of the License, or (at your
5  * option) any later version.
6  *
7  * MoFEM is distributed in the hope that it will be useful, but WITHOUT
8  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
9  * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
10  * License for more details.
11  *
12  * You should have received a copy of the GNU Lesser General Public
13  * License along with MoFEM. If not, see <http://www.gnu.org/licenses/>. */
14 
15 namespace OpRotatingFrameTools {
16 
18 
19 
21  OpRotatingFrameRhs(const std::string field_name,
22  boost::shared_ptr<CommonData> common_data_ptr);
24 
25 private:
26  boost::shared_ptr<CommonData> commonDataPtr;
27 };
28 
30 
31  OpRotatingFrameBoundaryRhs(const std::string field_name,
32  boost::shared_ptr<CommonData> common_data_ptr,
33  boost::shared_ptr<DomainSideEle> side_op_fe);
35 
36 private:
37  boost::shared_ptr<CommonData> commonDataPtr;
38  boost::shared_ptr<DomainSideEle> sideOpFe;
39 };
40 
42  OpRotatingFrameLhs(const std::string row_field_name,
43  const std::string col_field_name,
44  boost::shared_ptr<CommonData> common_data_ptr);
46  EntData &col_data);
47 
48 private:
49  boost::shared_ptr<CommonData> commonDataPtr;
50 };
51 
53 
54  OpRotatingFrameBoundaryLhs(const std::string row_field_name,
55  const std::string col_field_name,
56  boost::shared_ptr<CommonData> common_data_ptr,
57  boost::shared_ptr<DomainSideEle> side_op_fe);
58  MoFEMErrorCode doWork(int row_side, int col_side, EntityType row_type,
59  EntityType col_type, EntData &row_data,
60  EntData &col_data);
61 
62 private:
63  boost::shared_ptr<CommonData> commonDataPtr;
64  boost::shared_ptr<DomainSideEle> sideOpFe;
65 };
66 
68  OpVolumeSideAssembleRowData(const std::string field_name,
69  boost::shared_ptr<CommonData> common_data_ptr);
70  // MoFEMErrorCode doWork(int side, EntityType type, EntData &data);
71  MoFEMErrorCode doWork(int row_side, int col_side, EntityType row_type,
72  EntityType col_type, EntData &row_data,
73  EntData &col_data);
74  MoFEMErrorCode iNtegrate(EntData &row_data, EntData &col_data);
75 
76 private:
77  boost::shared_ptr<CommonData> commonDataPtr;
78 };
79 
82  const std::string field_name,
83  boost::shared_ptr<CommonData> common_data_ptr);
84  MoFEMErrorCode doWork(int side, EntityType type, EntData &data);
85 
86 private:
87  boost::shared_ptr<CommonData> commonDataPtr;
88 };
89 
91  OpCalculateJumpOnSkeleton(const std::string field_name,
92  boost::shared_ptr<CommonData> common_data_ptr,
93  boost::shared_ptr<DomainSideEle> side_op_fe);
94  MoFEMErrorCode doWork(int side, EntityType type, EntData &data);
95 
96 private:
97  boost::shared_ptr<CommonData> commonDataPtr;
98  boost::shared_ptr<DomainSideEle> sideOpFe;
99 };
100 
102  OpVolumeSideCalculateEP(const std::string field_name,
103  boost::shared_ptr<CommonData> common_data_ptr);
104  MoFEMErrorCode doWork(int side, EntityType type, EntData &data);
105 
106 private:
107  boost::shared_ptr<CommonData> commonDataPtr;
108 };
109 
111  OpVolumeSideCalculateTAU(const std::string field_name,
112  boost::shared_ptr<CommonData> common_data_ptr);
113  MoFEMErrorCode doWork(int side, EntityType type, EntData &data);
114 
115 private:
116  boost::shared_ptr<CommonData> commonDataPtr;
117 };
118 
120  OpPostProcPlasticSkeleton(const std::string field_name,
121  moab::Interface &post_proc_mesh,
122  std::vector<EntityHandle> &map_gauss_pts,
123  boost::shared_ptr<CommonData> common_data_ptr);
124  MoFEMErrorCode doWork(int side, EntityType type, EntData &data);
125 
126 private:
128  std::vector<EntityHandle> &mapGaussPts;
129  boost::shared_ptr<CommonData> commonDataPtr;
130 };
131 
132 }; // namespace OpRotatingFrameTools
EntitiesFieldData::EntData EntData
PetscErrorCode MoFEMErrorCode
MoFEM/PETSc error code.
Definition: Exceptions.hpp:67
DeprecatedCoreInterface Interface
Definition: Interface.hpp:1965
OpPlasticTools::CommonData CommonData
Data on single entity (This is passed as argument to DataOperator::doWork)
OpCalculateJumpOnSkeleton(const std::string field_name, boost::shared_ptr< CommonData > common_data_ptr, boost::shared_ptr< DomainSideEle > side_op_fe)
MoFEMErrorCode doWork(int side, EntityType type, EntData &data)
MoFEMErrorCode doWork(int side, EntityType type, EntData &data)
Operator for linear form, usually to calculate values on right hand side.
OpCalculatePlasticConvRotatingFrame(const std::string field_name, boost::shared_ptr< CommonData > common_data_ptr)
OpPostProcPlasticSkeleton(const std::string field_name, moab::Interface &post_proc_mesh, std::vector< EntityHandle > &map_gauss_pts, boost::shared_ptr< CommonData > common_data_ptr)
MoFEMErrorCode doWork(int side, EntityType type, EntData &data)
[Postprocessing]
boost::shared_ptr< CommonData > commonDataPtr
std::vector< EntityHandle > & mapGaussPts
moab::Interface & postProcMesh
OpRotatingFrameBoundaryLhs(const std::string row_field_name, const std::string col_field_name, boost::shared_ptr< CommonData > common_data_ptr, boost::shared_ptr< DomainSideEle > side_op_fe)
MoFEMErrorCode doWork(int row_side, int col_side, EntityType row_type, EntityType col_type, EntData &row_data, EntData &col_data)
Operator for bi-linear form, usually to calculate values on left hand side.
OpRotatingFrameBoundaryRhs(const std::string field_name, boost::shared_ptr< CommonData > common_data_ptr, boost::shared_ptr< DomainSideEle > side_op_fe)
MoFEMErrorCode iNtegrate(DataForcesAndSourcesCore::EntData &data)
boost::shared_ptr< CommonData > commonDataPtr
MoFEMErrorCode iNtegrate(EntData &row_data, EntData &col_data)
[Stiffness]
OpRotatingFrameLhs(const std::string row_field_name, const std::string col_field_name, boost::shared_ptr< CommonData > common_data_ptr)
boost::shared_ptr< CommonData > commonDataPtr
OpRotatingFrameRhs(const std::string field_name, boost::shared_ptr< CommonData > common_data_ptr)
MoFEMErrorCode iNtegrate(DataForcesAndSourcesCore::EntData &data)
MoFEMErrorCode doWork(int row_side, int col_side, EntityType row_type, EntityType col_type, EntData &row_data, EntData &col_data)
MoFEMErrorCode iNtegrate(EntData &row_data, EntData &col_data)
OpVolumeSideAssembleRowData(const std::string field_name, boost::shared_ptr< CommonData > common_data_ptr)
OpVolumeSideCalculateEP(const std::string field_name, boost::shared_ptr< CommonData > common_data_ptr)
MoFEMErrorCode doWork(int side, EntityType type, EntData &data)
MoFEMErrorCode doWork(int side, EntityType type, EntData &data)
OpVolumeSideCalculateTAU(const std::string field_name, boost::shared_ptr< CommonData > common_data_ptr)