14 #if !defined(KRATOS_EDGE_BASED_GRADIENT_RECOVIERY_ELEMENT_H_INCLUDED )
15 #define KRATOS_EDGE_BASED_GRADIENT_RECOVIERY_ELEMENT_H_INCLUDED
64 template<std::
size_t TDim>
75 constexpr
static std::size_t NumNodes = 2;
78 constexpr
static std::size_t BlockSize = TDim;
81 constexpr
static std::size_t LocalSize = NumNodes * BlockSize;
136 GeometryType::Pointer pGeometry)
148 GeometryType::Pointer pGeometry,
149 PropertiesType::Pointer pProperties)
150 :
Element(NewId, pGeometry, pProperties)
176 PropertiesType::Pointer pProperties)
const override
178 return Kratos::make_intrusive<EdgeBasedGradientRecoveryElement<TDim>>(NewId, GetGeometry().Create(ThisNodes), pProperties);
188 void CalculateLocalSystem(
199 void CalculateLeftHandSide(
209 void CalculateRightHandSide(
222 int Check(
const ProcessInfo &rCurrentProcessInfo)
const override;
232 const ProcessInfo& rCurrentProcessInfo)
const override;
242 const ProcessInfo& rCurrentProcessInfo)
const override;
263 std::string
Info()
const override
265 std::stringstream buffer;
266 buffer <<
"EdgeBasedGradientRecoveryElement #" << Id();
273 rOStream <<
"EdgeBasedGradientRecoveryElement";
277 virtual void PrintData(std::ostream& rOStream)
const override
338 void save(
Serializer& rSerializer)
const override
373 EdgeBasedGradientRecoveryElement &
operator=(EdgeBasedGradientRecoveryElement
const& rOther) =
delete;
376 EdgeBasedGradientRecoveryElement(EdgeBasedGradientRecoveryElement
const& rOther) =
delete;
393 template<std::
size_t TDim>
395 std::istream &rIStream,
402 template<std::
size_t TDim>
404 std::ostream &rOStream,
408 rOStream << std::endl;
PeriodicInterfaceProcess & operator=(const PeriodicInterfaceProcess &)=delete
An element to compute the a nodal variable from an embedded skin.
Definition: edge_based_gradient_recovery_element.h:66
EdgeBasedGradientRecoveryElement(IndexType NewId, GeometryType::Pointer pGeometry)
Constructor using a geometry object.
Definition: edge_based_gradient_recovery_element.h:134
void PrintInfo(std::ostream &rOStream) const override
Print information about this object.
Definition: edge_based_gradient_recovery_element.h:271
void EquationIdVector(EquationIdVectorType &rResult, const ProcessInfo &rCurrentProcessInfo) const override
Provides the global indices for each one of this element's local rows This determines the elemental e...
~EdgeBasedGradientRecoveryElement() override=default
Destructor.
Element::EquationIdVectorType EquationIdVectorType
Definition: edge_based_gradient_recovery_element.h:102
KRATOS_CLASS_INTRUSIVE_POINTER_DEFINITION(EdgeBasedGradientRecoveryElement)
Pointer definition of EdgeBasedGradientRecoveryElement.
Element::Pointer Create(IndexType NewId, NodesArrayType const &ThisNodes, PropertiesType::Pointer pProperties) const override
Create a new element of this type.
Definition: edge_based_gradient_recovery_element.h:173
std::string Info() const override
Turn back information as a string.
Definition: edge_based_gradient_recovery_element.h:263
virtual void PrintData(std::ostream &rOStream) const override
Print object's data.
Definition: edge_based_gradient_recovery_element.h:277
void GetDofList(DofsVectorType &rElementalDofList, const ProcessInfo &rCurrentProcessInfo) const override
Get the Dof List object Returns a list of the element's Dofs.
EdgeBasedGradientRecoveryElement(IndexType NewId, const NodesArrayType &ThisNodes)
Constructor using an array of nodes.
Definition: edge_based_gradient_recovery_element.h:123
EdgeBasedGradientRecoveryElement(IndexType NewId, GeometryType::Pointer pGeometry, PropertiesType::Pointer pProperties)
Constuctor using geometry and properties.
Definition: edge_based_gradient_recovery_element.h:146
EdgeBasedGradientRecoveryElement(IndexType NewId=0)
Default constuctor.
Definition: edge_based_gradient_recovery_element.h:114
Element::DofsVectorType DofsVectorType
Definition: edge_based_gradient_recovery_element.h:101
Base class for all Elements.
Definition: element.h:60
PointerVectorSet< DofType > DofsArrayType
Definition: element.h:102
std::vector< DofType::Pointer > DofsVectorType
Definition: element.h:100
std::vector< std::size_t > EquationIdVectorType
Definition: element.h:98
std::size_t IndexType
Definition: element.h:92
std::size_t IndexType
Definition: flags.h:74
Geometry base class.
Definition: geometry.h:71
This class defines the node.
Definition: node.h:65
PointerVector is a container like stl vector but using a vector to store pointers to its data.
Definition: pointer_vector.h:72
A sorted associative container similar to an STL set, but uses a vector to store pointers to its data...
Definition: pointer_vector_set.h:72
ProcessInfo holds the current value of different solution parameters.
Definition: process_info.h:59
The serialization consists in storing the state of an object into a storage format like data file or ...
Definition: serializer.h:123
#define KRATOS_SERIALIZE_SAVE_BASE_CLASS(Serializer, BaseType)
Definition: define.h:812
#define KRATOS_SERIALIZE_LOAD_BASE_CLASS(Serializer, BaseType)
Definition: define.h:815
REF: G. R. Cowper, GAUSSIAN QUADRATURE FORMULAS FOR TRIANGLES.
Definition: mesh_condition.cpp:21
Internals::Matrix< double, AMatrix::dynamic, 1 > Vector
Definition: amatrix_interface.h:472
Internals::Matrix< double, AMatrix::dynamic, AMatrix::dynamic > Matrix
Definition: amatrix_interface.h:470
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
def load(f)
Definition: ode_solve.py:307