14 #if !defined(KRATOS_DIVERGENCEFREE_METRICS_PROCESS)
15 #define KRATOS_DIVERGENCEFREE_METRICS_PROCESS
55 template<SizeType TDim>
123 void Execute()
override;
140 std::string
Info()
const override
142 return "MetricDivergenceFreeProcess";
148 rOStream <<
"MetricDivergenceFreeProcess";
205 enum RefinementStrategies {MaximumStrategy, MeanDistributionStrategy, GlobalToleranceStrategy};
206 RefinementStrategies mRefinementStrategy;
208 std::string mReferenceVariable;
211 std::string mMeanStrategyReferenceNorm;
212 double mMeanStrategyTargetRefinementCoefficient;
213 double mMeanStrategyRefinementBound;
214 double mMeanStrategyDivergenceFreeOverAllDomain;
217 double mMaxStrategyTargetRefinementCoefficient;
218 double mMaxStrategyRefinementCoefficient;
219 double mDivergenceFreeMaxValue;
222 double mGlobalErrorStrategyGlobalTolerance;
223 double mGlobalErrorStrategyMeshConstant;
236 void InitializeRefinementStrategy();
241 void CalculateMetric();
260 MetricDivergenceFreeProcess&
operator=(MetricDivergenceFreeProcess
const& rOther);
277 template<
unsigned int TDim,
class TVarType>
282 template<
unsigned int TDim,
class TVarType>
287 rOStream << std::endl;
PeriodicInterfaceProcess & operator=(const PeriodicInterfaceProcess &)=delete
Definition: amatrix_interface.h:41
This class is can be used to compute the metrics of the model part with different strategies,...
Definition: metrics_divergencefree_process.h:58
WeakPointerVector< Element >::iterator WeakElementItType
Definition of the iterators.
Definition: metrics_divergencefree_process.h:72
void PrintInfo(std::ostream &rOStream) const override
Print information about this object.
Definition: metrics_divergencefree_process.h:146
std::conditional< TDim==2, array_1d< double, 3 >, array_1d< double, 6 > >::type TensorArrayType
The type of array considered for the tensor.
Definition: metrics_divergencefree_process.h:83
ElementsArrayType::iterator ElementItType
Definition: metrics_divergencefree_process.h:74
Node NodeType
The definition of the node type.
Definition: metrics_divergencefree_process.h:69
void PrintData(std::ostream &rOStream) const override
Print object"s data.
Definition: metrics_divergencefree_process.h:152
ModelPart::ElementsContainerType ElementsArrayType
Definition: metrics_divergencefree_process.h:65
~MetricDivergenceFreeProcess() override=default
Destructor.
void operator()()
Definition: metrics_divergencefree_process.h:111
ModelPart::ConditionsContainerType ConditionsArrayType
Definition: metrics_divergencefree_process.h:66
NodesArrayType::iterator NodeItType
Definition: metrics_divergencefree_process.h:73
std::string Info() const override
Turn back information as a string.
Definition: metrics_divergencefree_process.h:140
ModelPart::NodesContainerType NodesArrayType
Containers definition.
Definition: metrics_divergencefree_process.h:64
KRATOS_CLASS_POINTER_DEFINITION(MetricDivergenceFreeProcess)
Pointer definition of MetricDivergenceFreeProcess.
std::size_t IndexType
Definition of the indextype.
Definition: metrics_divergencefree_process.h:77
BoundedMatrix< double, TDim, TDim > MatrixType
Matrix type definition.
Definition: metrics_divergencefree_process.h:80
This class aims to manage meshes for multi-physics simulations.
Definition: model_part.h:77
MeshType::ConditionsContainerType ConditionsContainerType
Condintions container. A vector set of Conditions with their Id's as key.
Definition: model_part.h:183
MeshType::ElementsContainerType ElementsContainerType
Element container. A vector set of Elements with their Id's as key.
Definition: model_part.h:168
MeshType::NodesContainerType NodesContainerType
Nodes container. Which is a vector set of nodes with their Id's as key.
Definition: model_part.h:128
This class defines the node.
Definition: node.h:65
This class provides to Kratos a data structure for I/O based on the standard of JSON.
Definition: kratos_parameters.h:59
The base class for all processes in Kratos.
Definition: process.h:49
Short class definition.
Definition: weak_pointer_vector_iterator.h:63
REF: G. R. Cowper, GAUSSIAN QUADRATURE FORMULAS FOR TRIANGLES.
Definition: mesh_condition.cpp:21
std::size_t SizeType
The definition of the size type.
Definition: mortar_classes.h:43
std::istream & operator>>(std::istream &rIStream, LinearMasterSlaveConstraint &rThis)
input stream function
std::ostream & operator<<(std::ostream &rOStream, const LinearMasterSlaveConstraint &rThis)
output stream function
Definition: linear_master_slave_constraint.h:432
type
Definition: generate_gid_list_file.py:35