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::CableNetMpcProcess Class Reference

#include <old_cable_net_mpc_process.h>

Inheritance diagram for Kratos::CableNetMpcProcess:
Collaboration diagram for Kratos::CableNetMpcProcess:

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 Element::GeometryType GeometryType
 
typedef Element::VectorType VectorType
 
typedef ModelPart::ElementsContainerType ElementsArrayType
 
typedef Bucket< 3, NodeType, NodeVector, NodeTypePointer, NodeIterator, DoubleVectorIteratorBucketType
 
typedef Tree< KDTreePartition< BucketType > > KDTree
 

Public Member Functions

 KRATOS_CLASS_POINTER_DEFINITION (CableNetMpcProcess)
 Pointer definition of ApplyMultipointConstraintsProcess. More...
 
 CableNetMpcProcess (ModelPart &model_part, Parameters rParameters)
 Constructor. More...
 
void CoupleModelParts ()
 This function finds neighbor nodes for each slave node and couples the nodes this is the main function of this process. More...
 
void CoupleSlaveToNeighborMasterNodes (const NodeType &rCurrentSlaveNode, const NodeVector &rNeighborNodes, const DoubleVector &rNodalNeighborWeights, const SizeType &rNumberOfNeighbors)
 This function couples nodes by calling the parent class functions. More...
 
void CreateListOfNodesOfMasterSubModelPart (NodeVector &MasterNodeList)
 This function creates a NodeVector of the master nodes to be used for the Kd tree. More...
 
void CalculateNodalWeights (const DoubleVector &rResultingSquaredDistances, DoubleVector &rNodalNeighborWeights, const SizeType &rNumberOfNeighbors)
 This function re-calculates the weights used in mpc. More...
 
void ExecuteInitializeSolutionStep () override
 
void CreateSpringElements (ModelPart &rMasterModelPart, ModelPart &rSlaveModelPart)
 
void ComputeWeightForAllNeighbors (ModelPart::NodeType &design_node, NodeVector &neighbor_nodes, SizeType number_of_neighbors, DoubleVector &list_of_weights)
 
double CalculateCurrentLength (ModelPart::NodeType &rNodeI, ModelPart::NodeType &rNodeJ)
 
void SetmIsInitialized (const bool &check)
 
bool GetmIsInitialized () const
 

Member Typedef Documentation

◆ BucketType

◆ DoubleVector

◆ DoubleVectorIterator

typedef DoubleVector::iterator Kratos::CableNetMpcProcess::DoubleVectorIterator

◆ ElementsArrayType

◆ GeometryType

◆ KDTree

◆ NodeIterator

◆ NodesArrayType

◆ NodeType

◆ NodeTypePointer

◆ NodeVector

◆ SizeType

◆ VectorType

Constructor & Destructor Documentation

◆ CableNetMpcProcess()

Kratos::CableNetMpcProcess::CableNetMpcProcess ( ModelPart model_part,
Parameters  rParameters 
)
inline

Constructor.

Member Function Documentation

◆ CalculateCurrentLength()

double Kratos::CableNetMpcProcess::CalculateCurrentLength ( ModelPart::NodeType rNodeI,
ModelPart::NodeType rNodeJ 
)
inline

◆ CalculateNodalWeights()

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

This function re-calculates the weights used in mpc.

◆ ComputeWeightForAllNeighbors()

void Kratos::CableNetMpcProcess::ComputeWeightForAllNeighbors ( ModelPart::NodeType design_node,
NodeVector neighbor_nodes,
SizeType  number_of_neighbors,
DoubleVector list_of_weights 
)
inline

◆ CoupleModelParts()

void Kratos::CableNetMpcProcess::CoupleModelParts ( )
inline

This function finds neighbor nodes for each slave node and couples the nodes this is the main function of this process.

◆ CoupleSlaveToNeighborMasterNodes()

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

This function couples nodes by calling the parent class functions.

◆ CreateListOfNodesOfMasterSubModelPart()

void Kratos::CableNetMpcProcess::CreateListOfNodesOfMasterSubModelPart ( NodeVector MasterNodeList)
inline

This function creates a NodeVector of the master nodes to be used for the Kd tree.

◆ CreateSpringElements()

void Kratos::CableNetMpcProcess::CreateSpringElements ( ModelPart rMasterModelPart,
ModelPart rSlaveModelPart 
)
inline

◆ ExecuteInitializeSolutionStep()

void Kratos::CableNetMpcProcess::ExecuteInitializeSolutionStep ( )
inlineoverride

◆ GetmIsInitialized()

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

◆ KRATOS_CLASS_POINTER_DEFINITION()

Kratos::CableNetMpcProcess::KRATOS_CLASS_POINTER_DEFINITION ( CableNetMpcProcess  )

Pointer definition of ApplyMultipointConstraintsProcess.

◆ SetmIsInitialized()

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

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