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.
Public Types | Public Member Functions | List of all members
Kratos::SlidingEdgeProcess Class Reference

#include <sliding_edge_process.h>

Inheritance diagram for Kratos::SlidingEdgeProcess:
Collaboration diagram for Kratos::SlidingEdgeProcess:

Public Types

typedef Node NodeType
 
typedef Node ::Pointer NodeTypePointer
 
typedef std::vector< NodeTypePointerNodeVector
 
typedef ModelPart::NodesContainerType NodesArrayType
 
typedef std::vector< NodeTypePointer >::iterator NodeIterator
 
typedef std::vector< doubleDoubleVector
 
typedef DoubleVector::iterator DoubleVectorIterator
 
typedef std::size_t SizeType
 
typedef Variable< doubleVariableType
 
typedef ModelPart::MasterSlaveConstraintType::Pointer ConstraintPointer
 
typedef Bucket< 3, NodeType, NodeVector, NodeTypePointer, NodeIterator, DoubleVectorIteratorBucketType
 
typedef Tree< KDTreePartition< BucketType > > KDTree
 
- Public Types inherited from Kratos::Flags
enum  FlagsList {
  Flag0 = BlockType(1) , Flag1 = BlockType(1) << 1 , Flag2 = BlockType(1) << 2 , Flag3 = BlockType(1) << 3 ,
  Flag4 = BlockType(1) << 4 , Flag5 = BlockType(1) << 5 , Flag6 = BlockType(1) << 6 , Flag7 = BlockType(1) << 7 ,
  Flag8 = BlockType(1) << 8 , Flag9 = BlockType(1) << 9 , Flag10 = BlockType(1) << 10 , Flag11 = BlockType(1) << 11 ,
  Flag12 = BlockType(1) << 12 , Flag13 = BlockType(1) << 13 , Flag14 = BlockType(1) << 14 , Flag15 = BlockType(1) << 15 ,
  Flag16 = BlockType(1) << 16 , Flag17 = BlockType(1) << 17 , Flag18 = BlockType(1) << 18 , Flag19 = BlockType(1) << 19 ,
  Flag20 = BlockType(1) << 20 , Flag21 = BlockType(1) << 21 , Flag22 = BlockType(1) << 22 , Flag23 = BlockType(1) << 23 ,
  Flag24 = BlockType(1) << 24 , Flag25 = BlockType(1) << 25 , Flag26 = BlockType(1) << 26 , Flag27 = BlockType(1) << 27 ,
  Flag28 = BlockType(1) << 28 , Flag29 = BlockType(1) << 29 , Flag30 = BlockType(1) << 30
}
 
typedef int64_t BlockType
 
typedef int64_t FlagType
 
typedef std::size_t IndexType
 

Public Member Functions

 KRATOS_CLASS_POINTER_DEFINITION (SlidingEdgeProcess)
 Pointer definition of ApplyMultipointConstraintsProcess. More...
 
 SlidingEdgeProcess (ModelPart &rModelPart, Parameters InputParameters)
 Constructor. More...
 
void ExecuteInitializeSolutionStep () override
 This function will be executed at every time step BEFORE performing the solve phase. More...
 
void ExecuteFinalizeSolutionStep () override
 This function will be executed at every time step AFTER performing the solve phase. More...
 
void CoupleModelParts ()
 
void CreateListOfNodesOfMasterSubModelPart (NodeVector &rMasterNodeList)
 
void CalculateNodalWeights (const DoubleVector &rResultingSquaredDistances, DoubleVector &rNodalNeighborWeights, const SizeType &rNumberOfNeighbors)
 
void CoupleSlaveToNeighborMasterNodesInitialAngledLine (const NodeType &rCurrentSlaveNode, const NodeVector &rNeighborNodes, const DoubleVector &rNodalNeighborWeights, const SizeType &rNumberOfNeighbors)
 
void CoupleSlaveToNeighborMasterNodes (const NodeType &rCurrentSlaveNode, const NodeVector &rNeighborNodes, const DoubleVector &rNodalNeighborWeights, const SizeType &rNumberOfNeighbors)
 
void SetmIsInitialized (const bool &check)
 
bool GetmIsInitialized () const
 
std::vector< std::size_t > FindNearestNeighboursCustom (const NodeType &node_i, std::vector< double > &weights)
 
double GetNodalDistance (const NodeType &node_i, const NodeType &node_j)
 
void CoupleModelPartsCustom ()
 
void CoupleSlaveToNeighborMasterNodesLineEquation (const NodeType &rCurrentSlaveNode, const NodeVector &rNeighborNodes, const DoubleVector &rNodalNeighborWeights, const SizeType &rNumberOfNeighbors)
 
- Public Member Functions inherited from Kratos::Process
 KRATOS_CLASS_POINTER_DEFINITION (Process)
 Pointer definition of Process. More...
 
 Process ()
 Default constructor. More...
 
 Process (const Flags options)
 
 ~Process () override
 Destructor. More...
 
void operator() ()
 This operator is provided to call the process as a function and simply calls the Execute method. More...
 
virtual Process::Pointer Create (Model &rModel, Parameters ThisParameters)
 This method creates an pointer of the process. More...
 
virtual void Execute ()
 Execute method is used to execute the Process algorithms. More...
 
virtual void ExecuteInitialize ()
 This function is designed for being called at the beginning of the computations right after reading the model and the groups. More...
 
virtual void ExecuteBeforeSolutionLoop ()
 This function is designed for being execute once before the solution loop but after all of the solvers where built. More...
 
virtual void ExecuteBeforeOutputStep ()
 This function will be executed at every time step BEFORE writing the output. More...
 
virtual void ExecuteAfterOutputStep ()
 This function will be executed at every time step AFTER writing the output. More...
 
virtual void ExecuteFinalize ()
 This function is designed for being called at the end of the computations. More...
 
virtual int Check ()
 This function is designed for being called after ExecuteInitialize ONCE to verify that the input is correct. More...
 
virtual void Clear ()
 This method clears the assignation of the conditions. More...
 
virtual const Parameters GetDefaultParameters () const
 This method provides the defaults parameters to avoid conflicts between the different constructors. More...
 
std::string Info () const override
 Turn back information as a string. More...
 
void PrintInfo (std::ostream &rOStream) const override
 Print information about this object. More...
 
void PrintData (std::ostream &rOStream) const override
 Print object's data. More...
 
- Public Member Functions inherited from Kratos::Flags
Flagsoperator= (Flags const &rOther)
 Assignment operator. More...
 
 operator bool () const
 
Flags operator~ () const
 
bool operator! () const
 
void AssignFlags (Flags const &rOther)
 
void Set (const Flags ThisFlag)
 
void Set (const Flags ThisFlag, bool Value)
 
void Reset (const Flags ThisFlag)
 
void Flip (const Flags ThisFlag)
 
void SetPosition (IndexType Position, bool Value=true)
 
bool GetPosition (IndexType Position) const
 
void FlipPosition (IndexType Position)
 
void ClearPosition (IndexType Position)
 
void Clear ()
 
Flags AsFalse () const
 
bool Is (Flags const &rOther) const
 
bool IsDefined (Flags const &rOther) const
 
bool IsNot (Flags const &rOther) const
 
bool IsNotDefined (Flags const &rOther) const
 
 KRATOS_CLASS_POINTER_DEFINITION (Flags)
 Pointer definition of Flags. More...
 
const Flagsoperator|= (const Flags &Other)
 
const Flagsoperator&= (const Flags &Other)
 
 Flags ()
 Default constructor. More...
 
 Flags (Flags const &rOther)
 Copy constructor. More...
 
virtual ~Flags ()
 Destructor. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from Kratos::Flags
static const Flags AllDefined ()
 
static const Flags AllTrue ()
 
static Flags Create (IndexType ThisPosition, bool Value=true)
 

Member Typedef Documentation

◆ BucketType

◆ ConstraintPointer

typedef ModelPart::MasterSlaveConstraintType::Pointer Kratos::SlidingEdgeProcess::ConstraintPointer

◆ DoubleVector

◆ DoubleVectorIterator

typedef DoubleVector::iterator Kratos::SlidingEdgeProcess::DoubleVectorIterator

◆ KDTree

◆ NodeIterator

◆ NodesArrayType

◆ NodeType

◆ NodeTypePointer

◆ NodeVector

◆ SizeType

◆ VariableType

Constructor & Destructor Documentation

◆ SlidingEdgeProcess()

Kratos::SlidingEdgeProcess::SlidingEdgeProcess ( ModelPart rModelPart,
Parameters  InputParameters 
)
inline

Constructor.

Member Function Documentation

◆ CalculateNodalWeights()

void Kratos::SlidingEdgeProcess::CalculateNodalWeights ( const DoubleVector rResultingSquaredDistances,
DoubleVector rNodalNeighborWeights,
const SizeType rNumberOfNeighbors 
)
inline

◆ CoupleModelParts()

void Kratos::SlidingEdgeProcess::CoupleModelParts ( )
inline

◆ CoupleModelPartsCustom()

void Kratos::SlidingEdgeProcess::CoupleModelPartsCustom ( )
inline

◆ CoupleSlaveToNeighborMasterNodes()

void Kratos::SlidingEdgeProcess::CoupleSlaveToNeighborMasterNodes ( const NodeType rCurrentSlaveNode,
const NodeVector rNeighborNodes,
const DoubleVector rNodalNeighborWeights,
const SizeType rNumberOfNeighbors 
)
inline

◆ CoupleSlaveToNeighborMasterNodesInitialAngledLine()

void Kratos::SlidingEdgeProcess::CoupleSlaveToNeighborMasterNodesInitialAngledLine ( const NodeType rCurrentSlaveNode,
const NodeVector rNeighborNodes,
const DoubleVector rNodalNeighborWeights,
const SizeType rNumberOfNeighbors 
)
inline

◆ CoupleSlaveToNeighborMasterNodesLineEquation()

void Kratos::SlidingEdgeProcess::CoupleSlaveToNeighborMasterNodesLineEquation ( const NodeType rCurrentSlaveNode,
const NodeVector rNeighborNodes,
const DoubleVector rNodalNeighborWeights,
const SizeType rNumberOfNeighbors 
)
inline

◆ CreateListOfNodesOfMasterSubModelPart()

void Kratos::SlidingEdgeProcess::CreateListOfNodesOfMasterSubModelPart ( NodeVector rMasterNodeList)
inline

◆ ExecuteFinalizeSolutionStep()

void Kratos::SlidingEdgeProcess::ExecuteFinalizeSolutionStep ( )
inlineoverridevirtual

This function will be executed at every time step AFTER performing the solve phase.

Reimplemented from Kratos::Process.

◆ ExecuteInitializeSolutionStep()

void Kratos::SlidingEdgeProcess::ExecuteInitializeSolutionStep ( )
inlineoverridevirtual

This function will be executed at every time step BEFORE performing the solve phase.

Reimplemented from Kratos::Process.

◆ FindNearestNeighboursCustom()

std::vector<std::size_t> Kratos::SlidingEdgeProcess::FindNearestNeighboursCustom ( const NodeType node_i,
std::vector< double > &  weights 
)
inline

◆ GetmIsInitialized()

bool Kratos::SlidingEdgeProcess::GetmIsInitialized ( ) const
inline

◆ GetNodalDistance()

double Kratos::SlidingEdgeProcess::GetNodalDistance ( const NodeType node_i,
const NodeType node_j 
)
inline

◆ KRATOS_CLASS_POINTER_DEFINITION()

Kratos::SlidingEdgeProcess::KRATOS_CLASS_POINTER_DEFINITION ( SlidingEdgeProcess  )

Pointer definition of ApplyMultipointConstraintsProcess.

◆ SetmIsInitialized()

void Kratos::SlidingEdgeProcess::SetmIsInitialized ( const bool check)
inline

The documentation for this class was generated from the following file: