![]() |
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.
|
Regenerates the pressure conditions for the PFEM coupling. More...
#include <regenerate_pfem_pressure_conditions_process.h>
Public Member Functions | |
KRATOS_CLASS_POINTER_DEFINITION (RegeneratePfemPressureConditionsProcess) | |
Pointer definition of RegeneratePfemPressureConditionsProcess. More... | |
RegeneratePfemPressureConditionsProcess (ModelPart &r_model_part) | |
~RegeneratePfemPressureConditionsProcess () override=default | |
void | operator() () |
void | Execute () override |
Regenerates the prssure load according to ne new boundary. More... | |
void | GetMaximumConditionIdOnSubmodelPart (int &MaximumConditionId) |
returns the maximum condition Id inside the submodel More... | |
void | CreatePressureLoads (const int Id1, const int Id2, const int Id3, ElementIterator itElem, ModelPart &rSubModelPart, ModelPart::PropertiesType::Pointer pProperties, int &rMaximumConditionId) |
Creates the Pressure loads of the gometry. More... | |
void | ResetFlagOnElements () |
Resets the Flag SMOOTHING used to stop iterations. More... | |
void | RemovePreviousPressureLoads () |
Erase the old pressure conditions. More... | |
void | CreateNewConditions () |
Create the new set of pfem pressure conditions. More... | |
void | GeneratePressureLoads3WetNodes (const int NonWetLocalIdNode, int &rMaximumConditionId, ElementIterator itElem) |
Creates a pressure condition when 3 nodes are wet. More... | |
void | GeneratePressureLoads4WetNodes (int &rMaximumConditionId, ElementIterator itElem) |
Creates a pressure condition when 4 nodes are wet. More... | |
void | GenerateLineLoads2Nodes (const int NonWetLocalIdNode, int &rMaximumConditionId, ElementIterator itElem) |
Creates line loads for an element if there are 2 wet nodes. More... | |
void | GenerateLineLoads3Nodes (int &rMaximumConditionId, ElementIterator itElem) |
Creates line loads for an element if there are 3 wet nodes. More... | |
void | CreateLineLoads (const int Id1, const int Id2, ElementIterator itElem, ModelPart &rSubModelPart, ModelPart::PropertiesType::Pointer pProperties, int &rMaximumConditionId) |
Creates surface loads. More... | |
void | CreateNewConditions () |
void | CreateNewConditions () |
![]() | |
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 | 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 | ExecuteInitializeSolutionStep () |
This function will be executed at every time step BEFORE performing the solve phase. More... | |
virtual void | ExecuteFinalizeSolutionStep () |
This function will be executed at every time step AFTER performing the solve phase. 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... | |
![]() | |
Flags & | operator= (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 Flags & | operator|= (const Flags &Other) |
const Flags & | operator&= (const Flags &Other) |
Flags () | |
Default constructor. More... | |
Flags (Flags const &rOther) | |
Copy constructor. More... | |
virtual | ~Flags () |
Destructor. More... | |
Protected Attributes | |
ModelPart & | mrModelPart |
Additional Inherited Members | |
![]() | |
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 |
![]() | |
static const Flags | AllDefined () |
static const Flags | AllTrue () |
static Flags | Create (IndexType ThisPosition, bool Value=true) |
Regenerates the pressure conditions for the PFEM coupling.
when several elements are removed this methods generates the line loads in order to adapt to the new geometry
Kratos::RegeneratePfemPressureConditionsProcess< TDim >::RegeneratePfemPressureConditionsProcess | ( | ModelPart & | r_model_part | ) |
|
overridedefault |
void Kratos::RegeneratePfemPressureConditionsProcess< TDim >::CreateLineLoads | ( | const int | Id1, |
const int | Id2, | ||
ElementIterator | itElem, | ||
ModelPart & | rSubModelPart, | ||
ModelPart::PropertiesType::Pointer | pProperties, | ||
int & | rMaximumConditionId | ||
) |
Creates surface loads.
Id1 | The node 1 Id |
Id2 | The node 2 Id |
itElem | the element analysed |
rMaximumConditionId | the maximum condition id just to not repeat |
itElem | the element analysed |
rSubModelPart | the submodel part to add the condition |
pProperties | the properties of the condition |
void Kratos::RegeneratePfemPressureConditionsProcess< 2 >::CreateNewConditions | ( | ) |
void Kratos::RegeneratePfemPressureConditionsProcess< 3 >::CreateNewConditions | ( | ) |
void Kratos::RegeneratePfemPressureConditionsProcess< TDim >::CreateNewConditions | ( | ) |
Create the new set of pfem pressure conditions.
void Kratos::RegeneratePfemPressureConditionsProcess< TDim >::CreatePressureLoads | ( | const int | Id1, |
const int | Id2, | ||
const int | Id3, | ||
ElementIterator | itElem, | ||
ModelPart & | rSubModelPart, | ||
ModelPart::PropertiesType::Pointer | pProperties, | ||
int & | rMaximumConditionId | ||
) |
Creates the Pressure loads of the gometry.
|
overridevirtual |
Regenerates the prssure load according to ne new boundary.
Reimplemented from Kratos::Process.
void Kratos::RegeneratePfemPressureConditionsProcess< TDim >::GenerateLineLoads2Nodes | ( | const int | NonWetLocalIdNode, |
int & | rMaximumConditionId, | ||
ElementIterator | itElem | ||
) |
Creates line loads for an element if there are 2 wet nodes.
NonWetLocalIdNode | the local id of the non wet node |
PressureId | the pressure id |
rMaximumConditionId | the maximum condition id just to not repeat |
itElem | the element analysed |
void Kratos::RegeneratePfemPressureConditionsProcess< TDim >::GenerateLineLoads3Nodes | ( | int & | rMaximumConditionId, |
ElementIterator | itElem | ||
) |
Creates line loads for an element if there are 3 wet nodes.
PressureId | the pressure id |
rMaximumConditionId | the maximum condition id just to not repeat |
itElem | the element analysed |
void Kratos::RegeneratePfemPressureConditionsProcess< TDim >::GeneratePressureLoads3WetNodes | ( | const int | NonWetLocalIdNode, |
int & | rMaximumConditionId, | ||
ElementIterator | itElem | ||
) |
Creates a pressure condition when 3 nodes are wet.
void Kratos::RegeneratePfemPressureConditionsProcess< TDim >::GeneratePressureLoads4WetNodes | ( | int & | rMaximumConditionId, |
ElementIterator | itElem | ||
) |
Creates a pressure condition when 4 nodes are wet.
void Kratos::RegeneratePfemPressureConditionsProcess< TDim >::GetMaximumConditionIdOnSubmodelPart | ( | int & | MaximumConditionId | ) |
returns the maximum condition Id inside the submodel
rMaximumConditionId | the maximum condition id just to not repeat |
Kratos::RegeneratePfemPressureConditionsProcess< TDim >::KRATOS_CLASS_POINTER_DEFINITION | ( | RegeneratePfemPressureConditionsProcess< TDim > | ) |
Pointer definition of RegeneratePfemPressureConditionsProcess.
|
inline |
void Kratos::RegeneratePfemPressureConditionsProcess< TDim >::RemovePreviousPressureLoads |
Erase the old pressure conditions.
void Kratos::RegeneratePfemPressureConditionsProcess< TDim >::ResetFlagOnElements |
Resets the Flag SMOOTHING used to stop iterations.
|
protected |