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 process saves the intersected elements in a different model part for its visualization. More...
#include <embedded_skin_visualization_process.h>
Classes | |
struct | Hash |
struct | KeyEqual |
Public Member Functions | |
Input and output | |
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::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 | 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 | ExecuteFinalize () |
This function is designed for being called at the end of the computations. More... | |
virtual void | Clear () |
This method clears the assignation of the conditions. More... | |
Public Member Functions inherited from Kratos::Flags | |
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... | |
Type Definitions | |
enum class | LevelSetType { Continuous , Discontinuous } |
Enum class with the available level set types Auxiliary enum class to store the available level set types Continuous: standard nodal based continuous level set function Discontinuous: elementwise discontinuous level set function. More... | |
enum class | ShapeFunctionsType { Ausas , Standard } |
Enum class with the available shape functions type Auxiliary enum class to store the available shape functions types Available shape functions are the standard linear FE shape functions (Standard) and the Aausas FE space (see Ausas et. al. 2010 https://doi.org/10.1016/j.cma.2009.11.011) More... | |
typedef std::unordered_map< Node::Pointer, std::tuple< const Node::Pointer, const Node::Pointer, const double, const double >, SharedPointerHasher< Node::Pointer >, SharedPointerComparator< Node::Pointer > > | CutNodesMapType |
KRATOS_CLASS_POINTER_DEFINITION (EmbeddedSkinVisualizationProcess) | |
Pointer definition of EmbeddedSkinVisualizationProcess. More... | |
Life Cycle | |
EmbeddedSkinVisualizationProcess (ModelPart &rModelPart, ModelPart &rVisualizationModelPart, const std::vector< const Variable< double > * > &rVisualizationScalarVariables, const std::vector< const Variable< array_1d< double, 3 > > * > &rVisualizationVectorVariables, const std::vector< const Variable< double > * > &rVisualizationNonHistoricalScalarVariables, const std::vector< const Variable< array_1d< double, 3 > > * > &rVisualizationNonHistoricalVectorVariables, const LevelSetType &rLevelSetType, const ShapeFunctionsType &rShapeFunctionsType, const bool ReformModelPartAtEachTimeStep=false) | |
Constructor. More... | |
EmbeddedSkinVisualizationProcess (ModelPart &rModelPart, ModelPart &rVisualizationModelPart, Parameters rParameters) | |
Constructor with Kratos parameters. More... | |
EmbeddedSkinVisualizationProcess (Model &rModel, Parameters rParameters) | |
Constructor with Kratos parameters and Model container. More... | |
~EmbeddedSkinVisualizationProcess () override | |
Destructor. More... | |
static ModelPart & | CreateAndPrepareVisualizationModelPart (Model &rModel, const Parameters rParameters) |
Create a And Prepare Visualization Model Part object This method creates the visualization model part and prepares it for the computation. More... | |
static void | CheckAndSetLevelSetType (const Parameters rParameters, LevelSetType &rLevelSetType) |
Check and return the level set type This method checks and return the user provided level set type. More... | |
static void | CheckAndSetShapeFunctionsType (const Parameters rParameters, ShapeFunctionsType &rShapeFunctionsType) |
Check and return the shape functions This method checks and return the user provided shape functions type. More... | |
static const std::string | CheckAndReturnDistanceVariableName (const Parameters rParameters, const LevelSetType &rLevelSetType) |
Checks and returns the distance variable name This method checks the user provided distance variable name If the variable is not prescribed, it returns a default one according to the selected level set type. More... | |
template<class TDataType > | |
static void | FillVariablesList (const Parameters rParameters, std::vector< const Variable< TDataType > * > &rVariablesList) |
Check and fill a visualization variable list This method checks the user provided variable list and saves it in the corresponding vector list. More... | |
Operations | |
void | ExecuteBeforeSolutionLoop () override |
This function is designed for being execute once before the solution loop but after all of the solvers where built. More... | |
void | ExecuteBeforeOutputStep () override |
This function will be executed at every time step BEFORE writing the output. More... | |
void | ExecuteAfterOutputStep () override |
This function will be executed at every time step AFTER writing the output. More... | |
int | Check () override |
This function is designed for being called after ExecuteInitialize ONCE to verify that the input is correct. More... | |
const Parameters | GetDefaultParameters () const override |
This method provides the defaults parameters to avoid conflicts between the different constructors. More... | |
static Parameters | StaticGetDefaultParameters () |
Get the Default Settings object Static method to get the default settings inside the contructor. More... | |
Additional Inherited Members | |
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 |
Static Public Member Functions inherited from Kratos::Flags | |
static const Flags | AllDefined () |
static const Flags | AllTrue () |
static Flags | Create (IndexType ThisPosition, bool Value=true) |
This process saves the intersected elements in a different model part for its visualization.
For a given model part, this process checks if its elements are intersected. If they are, calls the corresponding splitting utility to get the subgeometries that conform the splitting pattern. Then, it saves that subgeometries in another model part for its visualization. It has to be mentioned that all the origin model part nodes are kept. Then, the unique nodes that are created are that ones in the intersection edge points. Finally, the values in the visualization model part are computed using the corresponding modify shape functions utility.
typedef std::unordered_map< Node::Pointer, std::tuple< const Node::Pointer, const Node::Pointer, const double, const double >, SharedPointerHasher<Node::Pointer>, SharedPointerComparator<Node::Pointer> > Kratos::EmbeddedSkinVisualizationProcess::CutNodesMapType |
Enum class with the available shape functions type Auxiliary enum class to store the available shape functions types Available shape functions are the standard linear FE shape functions (Standard) and the Aausas FE space (see Ausas et. al. 2010 https://doi.org/10.1016/j.cma.2009.11.011)
Enumerator | |
---|---|
Ausas | |
Standard |
Kratos::EmbeddedSkinVisualizationProcess::EmbeddedSkinVisualizationProcess | ( | ModelPart & | rModelPart, |
ModelPart & | rVisualizationModelPart, | ||
const std::vector< const Variable< double > * > & | rVisualizationScalarVariables, | ||
const std::vector< const Variable< array_1d< double, 3 > > * > & | rVisualizationVectorVariables, | ||
const std::vector< const Variable< double > * > & | rVisualizationNonHistoricalScalarVariables, | ||
const std::vector< const Variable< array_1d< double, 3 > > * > & | rVisualizationNonHistoricalVectorVariables, | ||
const LevelSetType & | rLevelSetType, | ||
const ShapeFunctionsType & | rShapeFunctionsType, | ||
const bool | ReformModelPartAtEachTimeStep = false |
||
) |
Constructor.
Default constructor
rModelPart | The origin model part |
rVisualizationModelPart | The visualization model part to be filled |
rVisualizationScalarVariables | Scalar variables to be interpolated in the visualization model part |
rVisualizationVectorVariables | Vector variables to be interpolated in the visualization model part |
rLevelSetType | Level set type. So far "continuous" and "discontinuous" are implemented |
rShapeFunctionsType | Shape functions type. So far "standard" and "ausas" are implemented |
ReformModelPartAtEachTimeStep | Redo visualization model part at each time step flag |
Kratos::EmbeddedSkinVisualizationProcess::EmbeddedSkinVisualizationProcess | ( | ModelPart & | rModelPart, |
ModelPart & | rVisualizationModelPart, | ||
Parameters | rParameters | ||
) |
Kratos::EmbeddedSkinVisualizationProcess::EmbeddedSkinVisualizationProcess | ( | Model & | rModel, |
Parameters | rParameters | ||
) |
|
inlineoverride |
Destructor.
|
overridevirtual |
This function is designed for being called after ExecuteInitialize ONCE to verify that the input is correct.
Reimplemented from Kratos::Process.
|
static |
Checks and returns the distance variable name This method checks the user provided distance variable name If the variable is not prescribed, it returns a default one according to the selected level set type.
rParameters | Kratos parameters encapsulating the settings. These settings are assumed to be already validated. |
|
static |
Check and return the level set type This method checks and return the user provided level set type.
rParameters | Kratos parameters encapsulating the settings. These settings are assumed to be already validated. |
rLevelSetType | The validated level set type |
|
static |
Check and return the shape functions This method checks and return the user provided shape functions type.
rParameters | Kratos parameters encapsulating the settings. These settings are assumed to be already validated. |
rShapeFunctionsType | The validated shape functions type |
|
static |
Create a And Prepare Visualization Model Part object This method creates the visualization model part and prepares it for the computation.
rModel | The model container |
rParameters | Kratos parameters encaptulating the settings. These settings are assumed to be already validated. |
|
overridevirtual |
This function will be executed at every time step AFTER writing the output.
Reimplemented from Kratos::Process.
|
overridevirtual |
This function will be executed at every time step BEFORE writing the output.
Reimplemented from Kratos::Process.
|
overridevirtual |
This function is designed for being execute once before the solution loop but after all of the solvers where built.
Reimplemented from Kratos::Process.
|
static |
Check and fill a visualization variable list This method checks the user provided variable list and saves it in the corresponding vector list.
TDataType | The variable data type |
rParameters | Kratos parameters encapsulating the settings. These settings are assumed to be alreeeady validated. |
rVariableList | The filled variable data list |
|
inlineoverridevirtual |
This method provides the defaults parameters to avoid conflicts between the different constructors.
Reimplemented from Kratos::Process.
|
inlineoverridevirtual |
Turn back information as a string.
Reimplemented from Kratos::Process.
Kratos::EmbeddedSkinVisualizationProcess::KRATOS_CLASS_POINTER_DEFINITION | ( | EmbeddedSkinVisualizationProcess | ) |
Pointer definition of EmbeddedSkinVisualizationProcess.
|
inlineoverridevirtual |
Print object's data.
Reimplemented from Kratos::Process.
|
inlineoverridevirtual |
Print information about this object.
Reimplemented from Kratos::Process.
|
static |
Get the Default Settings object Static method to get the default settings inside the contructor.