![]() |
KratosMultiphysics
KRATOS Multiphysics (Kratos) is a framework for building parallel, multi-disciplinary simulation software, aiming at modularity, extensibility, and high performance. Kratos is written in C++, and counts with an extensive Python interface.
|
This class constructs nodal approximations of the derivatives of a field given a Lagrangian linear FEM approximation of it. More...
#include <derivative_recovery.h>
Public Member Functions | |
Life Cycle | |
| DerivativeRecovery (ModelPart &r_model_part, Parameters &r_parameters) | |
| Default constructor. More... | |
| virtual | ~DerivativeRecovery () |
| Destructor. More... | |
Operations | |
| void | AddTimeDerivative (ModelPart &r_model_part, Variable< array_1d< double, 3 > > &material_derivative_container) |
| void | AddTimeDerivativeComponent (ModelPart &r_model_part, Variable< array_1d< double, 3 > > &material_derivative_container, const int i_component) |
| void | RecoverGradientOfAScalar (const VariableData &origin_variable, const VariableData &destination_variable) |
| template<class TScalarVariable > | |
| void | RecoverSuperconvergentGradient (ModelPart &r_model_part, TScalarVariable &scalar_container, Variable< array_1d< double, 3 > > &gradient_container) |
| void | RecoverSuperconvergentMatDeriv (ModelPart &r_model_part, Variable< array_1d< double, 3 > > &vector_container, Variable< array_1d< double, 3 > > &vector_rate_container, Variable< array_1d< double, 3 > > &mat_deriv_container) |
| void | RecoverSuperconvergentLaplacian (ModelPart &r_model_part, Variable< array_1d< double, 3 > > &vector_container, Variable< array_1d< double, 3 > > &laplacian_container) |
| void | RecoverSuperconvergentVelocityLaplacianFromGradient (ModelPart &r_model_part, Variable< array_1d< double, 3 > > &vector_container, Variable< array_1d< double, 3 > > &laplacian_container) |
| void | RecoverSuperconvergentMatDerivAndLaplacian (ModelPart &r_model_part, Variable< array_1d< double, 3 > > &vector_container, Variable< array_1d< double, 3 > > &vector_rate_container, Variable< array_1d< double, 3 > > &mat_deriv_container, Variable< array_1d< double, 3 > > &laplacian_container) |
| void | CalculateVectorMaterialDerivative (ModelPart &r_model_part, Variable< array_1d< double, 3 > > &vector_container, Variable< array_1d< double, 3 > > &vector_rate_container, Variable< array_1d< double, 3 > > &material_derivative_container) |
| void | RecoverLagrangianAcceleration (ModelPart &r_model_part) |
| void | CalculateVectorMaterialDerivativeFromGradient (ModelPart &r_model_part, Variable< array_1d< double, 3 > > &vector_gradient_container_x, Variable< array_1d< double, 3 > > &vector_gradient_container_y, Variable< array_1d< double, 3 > > &vector_gradient_container_z, Variable< array_1d< double, 3 > > &vector_rate_container, Variable< array_1d< double, 3 > > &material_derivative_container) |
| void | CalculateVectorMaterialDerivativeComponent (ModelPart &r_model_part, Variable< array_1d< double, 3 > > &vector_component_gradient_container, Variable< array_1d< double, 3 > > &vector_rate_container, Variable< array_1d< double, 3 > > &material_derivative_container) |
| void | CalculateVorticityFromGradient (ModelPart &r_model_part, Variable< array_1d< double, 3 > > &vector_gradient_container_x, Variable< array_1d< double, 3 > > &vector_gradient_container_y, Variable< array_1d< double, 3 > > &vector_gradient_container_z, Variable< array_1d< double, 3 > > &vorticity_container) |
| void | CalculateVorticityContributionOfTheGradientOfAComponent (ModelPart &r_model_part, Variable< array_1d< double, 3 > > &vector_component_gradient_container, Variable< array_1d< double, 3 > > &vorticity_container) |
| template<class TScalarVariable > | |
| void | CalculateGradient (ModelPart &r_model_part, TScalarVariable &scalar_container, Variable< array_1d< double, 3 > > &gradient_container) |
| void | SmoothVectorField (ModelPart &r_model_part, Variable< array_1d< double, 3 > > &vector_field, Variable< array_1d< double, 3 > > &auxiliary_veriable) |
| void | CalculateVectorLaplacian (ModelPart &r_model_part, Variable< array_1d< double, 3 > > &vector_container, Variable< array_1d< double, 3 > > &laplacian_container) |
| void | CalculateVelocityLaplacianRate (ModelPart &r_model_part) |
Input and output | |
| virtual std::string | Info () const |
| Turn back information as a stemplate<class T, std::size_t dim> tring. More... | |
| virtual void | PrintInfo (std::ostream &rOStream) const |
| Print information about this object. More... | |
| virtual void | PrintData (std::ostream &rOStream) const |
| Print object's data. More... | |
Friends | |
| DenseVector< unsigned int > & | GetElementPartition () |
| DenseVector< unsigned int > & | GetNodePartition () |
| ElementsArrayType::iterator | GetElementPartitionBegin (ModelPart &r_model_part, unsigned int k) |
| ElementsArrayType::iterator | GetElementPartitionEnd (ModelPart &r_model_part, unsigned int k) |
| NodesArrayType::iterator | GetNodePartitionBegin (ModelPart &r_model_part, unsigned int k) |
| NodesArrayType::iterator | GetNodePartitionEnd (ModelPart &r_model_part, unsigned int k) |
Protected Attributes | |
| DenseVector< unsigned int > | mElementsPartition |
| DenseVector< unsigned int > | mNodesPartition |
Type Definitions | |
| typedef ModelPart::ElementsContainerType | ElementsArrayType |
| typedef ElementsArrayType::ContainerType | ResultElementsContainerType |
| typedef std::vector< ResultElementsContainerType > | VectorResultElementsContainerType |
| typedef ModelPart::NodesContainerType | NodesArrayType |
| typedef NodesArrayType::ContainerType | ResultNodesContainerType |
| typedef std::vector< ResultNodesContainerType > | VectorResultNodesContainerType |
| typedef std::vector< Node::Pointer > | NodalPointersContainerType |
| typedef ModelPart::NodesContainerType::iterator | NodeIteratorType |
| typedef std::size_t | ListIndexType |
| typedef SpatialSearch::DistanceType | DistanceType |
| typedef SpatialSearch::VectorDistanceType | VectorDistanceType |
| typedef DerivativeRecovery< TDim > | DerivativeRecovery_TDim |
| Pointer definition of DerivativeRecovery. More... | |
| KRATOS_CLASS_POINTER_DEFINITION (DerivativeRecovery_TDim) | |
This class constructs nodal approximations of the derivatives of a field given a Lagrangian linear FEM approximation of it.
| typedef DerivativeRecovery<TDim> Kratos::DerivativeRecovery< TDim >::DerivativeRecovery_TDim |
Pointer definition of DerivativeRecovery.
| typedef SpatialSearch::DistanceType Kratos::DerivativeRecovery< TDim >::DistanceType |
| typedef ModelPart::ElementsContainerType Kratos::DerivativeRecovery< TDim >::ElementsArrayType |
| typedef std::size_t Kratos::DerivativeRecovery< TDim >::ListIndexType |
| typedef std::vector<Node::Pointer> Kratos::DerivativeRecovery< TDim >::NodalPointersContainerType |
| typedef ModelPart::NodesContainerType::iterator Kratos::DerivativeRecovery< TDim >::NodeIteratorType |
| typedef ModelPart::NodesContainerType Kratos::DerivativeRecovery< TDim >::NodesArrayType |
| typedef ElementsArrayType::ContainerType Kratos::DerivativeRecovery< TDim >::ResultElementsContainerType |
| typedef NodesArrayType::ContainerType Kratos::DerivativeRecovery< TDim >::ResultNodesContainerType |
| typedef SpatialSearch::VectorDistanceType Kratos::DerivativeRecovery< TDim >::VectorDistanceType |
| typedef std::vector<ResultElementsContainerType> Kratos::DerivativeRecovery< TDim >::VectorResultElementsContainerType |
| typedef std::vector<ResultNodesContainerType> Kratos::DerivativeRecovery< TDim >::VectorResultNodesContainerType |
|
inline |
Default constructor.
|
inlinevirtual |
Destructor.
| void Kratos::DerivativeRecovery< TDim >::AddTimeDerivative | ( | ModelPart & | r_model_part, |
| Variable< array_1d< double, 3 > > & | material_derivative_container | ||
| ) |
| void Kratos::DerivativeRecovery< TDim >::AddTimeDerivativeComponent | ( | ModelPart & | r_model_part, |
| Variable< array_1d< double, 3 > > & | material_derivative_container, | ||
| const int | i_component | ||
| ) |
| template void Kratos::DerivativeRecovery< TDim >::CalculateGradient< Variable< double > > | ( | ModelPart & | r_model_part, |
| TScalarVariable & | scalar_container, | ||
| Variable< array_1d< double, 3 > > & | gradient_container | ||
| ) |
| void Kratos::DerivativeRecovery< TDim >::CalculateVectorLaplacian | ( | ModelPart & | r_model_part, |
| Variable< array_1d< double, 3 > > & | vector_container, | ||
| Variable< array_1d< double, 3 > > & | laplacian_container | ||
| ) |
| void Kratos::DerivativeRecovery< TDim >::CalculateVectorMaterialDerivative | ( | ModelPart & | r_model_part, |
| Variable< array_1d< double, 3 > > & | vector_container, | ||
| Variable< array_1d< double, 3 > > & | vector_rate_container, | ||
| Variable< array_1d< double, 3 > > & | material_derivative_container | ||
| ) |
| void Kratos::DerivativeRecovery< TDim >::CalculateVectorMaterialDerivativeComponent | ( | ModelPart & | r_model_part, |
| Variable< array_1d< double, 3 > > & | vector_component_gradient_container, | ||
| Variable< array_1d< double, 3 > > & | vector_rate_container, | ||
| Variable< array_1d< double, 3 > > & | material_derivative_container | ||
| ) |
| void Kratos::DerivativeRecovery< TDim >::CalculateVectorMaterialDerivativeFromGradient | ( | ModelPart & | r_model_part, |
| Variable< array_1d< double, 3 > > & | vector_gradient_container_x, | ||
| Variable< array_1d< double, 3 > > & | vector_gradient_container_y, | ||
| Variable< array_1d< double, 3 > > & | vector_gradient_container_z, | ||
| Variable< array_1d< double, 3 > > & | vector_rate_container, | ||
| Variable< array_1d< double, 3 > > & | material_derivative_container | ||
| ) |
| void Kratos::DerivativeRecovery< TDim >::CalculateVelocityLaplacianRate | ( | ModelPart & | r_model_part | ) |
| void Kratos::DerivativeRecovery< TDim >::CalculateVorticityContributionOfTheGradientOfAComponent | ( | ModelPart & | r_model_part, |
| Variable< array_1d< double, 3 > > & | vector_component_gradient_container, | ||
| Variable< array_1d< double, 3 > > & | vorticity_container | ||
| ) |
| void Kratos::DerivativeRecovery< TDim >::CalculateVorticityFromGradient | ( | ModelPart & | r_model_part, |
| Variable< array_1d< double, 3 > > & | vector_gradient_container_x, | ||
| Variable< array_1d< double, 3 > > & | vector_gradient_container_y, | ||
| Variable< array_1d< double, 3 > > & | vector_gradient_container_z, | ||
| Variable< array_1d< double, 3 > > & | vorticity_container | ||
| ) |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inlinevirtual |
Turn back information as a stemplate<class T, std::size_t dim> tring.
| Kratos::DerivativeRecovery< TDim >::KRATOS_CLASS_POINTER_DEFINITION | ( | DerivativeRecovery_TDim | ) |
|
inlinevirtual |
Print object's data.
|
inlinevirtual |
Print information about this object.
| void Kratos::DerivativeRecovery< TDim >::RecoverGradientOfAScalar | ( | const VariableData & | origin_variable, |
| const VariableData & | destination_variable | ||
| ) |
| void Kratos::DerivativeRecovery< TDim >::RecoverLagrangianAcceleration | ( | ModelPart & | r_model_part | ) |
| template void Kratos::DerivativeRecovery< TDim >::RecoverSuperconvergentGradient< Variable< double > > | ( | ModelPart & | r_model_part, |
| TScalarVariable & | scalar_container, | ||
| Variable< array_1d< double, 3 > > & | gradient_container | ||
| ) |
| void Kratos::DerivativeRecovery< TDim >::RecoverSuperconvergentLaplacian | ( | ModelPart & | r_model_part, |
| Variable< array_1d< double, 3 > > & | vector_container, | ||
| Variable< array_1d< double, 3 > > & | laplacian_container | ||
| ) |
| void Kratos::DerivativeRecovery< TDim >::RecoverSuperconvergentMatDeriv | ( | ModelPart & | r_model_part, |
| Variable< array_1d< double, 3 > > & | vector_container, | ||
| Variable< array_1d< double, 3 > > & | vector_rate_container, | ||
| Variable< array_1d< double, 3 > > & | mat_deriv_container | ||
| ) |
| void Kratos::DerivativeRecovery< TDim >::RecoverSuperconvergentMatDerivAndLaplacian | ( | ModelPart & | r_model_part, |
| Variable< array_1d< double, 3 > > & | vector_container, | ||
| Variable< array_1d< double, 3 > > & | vector_rate_container, | ||
| Variable< array_1d< double, 3 > > & | mat_deriv_container, | ||
| Variable< array_1d< double, 3 > > & | laplacian_container | ||
| ) |
| void Kratos::DerivativeRecovery< TDim >::RecoverSuperconvergentVelocityLaplacianFromGradient | ( | ModelPart & | r_model_part, |
| Variable< array_1d< double, 3 > > & | vector_container, | ||
| Variable< array_1d< double, 3 > > & | laplacian_container | ||
| ) |
| void Kratos::DerivativeRecovery< TDim >::SmoothVectorField | ( | ModelPart & | r_model_part, |
| Variable< array_1d< double, 3 > > & | vector_field, | ||
| Variable< array_1d< double, 3 > > & | auxiliary_veriable | ||
| ) |
|
protected |
|
protected |