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.
List of all members
Kratos::SpecificationsUtilities Class Reference

This namespace includes several utilities necessaries for evaluate specifications. More...

#include <specifications_utilities.h>

Collaboration diagram for Kratos::SpecificationsUtilities:

Public Member Functions

Life Cycle
 SpecificationsUtilities ()=delete
 The default constructor. More...
 

Static Public Member Functions

Operations
static void AddMissingVariables (ModelPart &rModelPart)
 This method adds to the model part the missing variables. More...
 
static void AddMissingVariablesFromEntitiesList (ModelPart &rModelPart, const Parameters EntitiesList)
 This method adds to the model part the missing variables. More...
 
static void AddMissingVariablesFromSpecifications (ModelPart &rModelPart, const Parameters SpecificationsParameters, const std::string EntityName="NOT_DEFINED")
 This method adds to the model part the missing variables from a given set of specifications. More...
 
static void AddMissingDofs (ModelPart &rModelPart)
 This method adds to the model part the missing dofs. More...
 
static void AddMissingDofsFromEntitiesList (ModelPart &rModelPart, const Parameters EntitiesList)
 This method adds to the model part the missing dofs. More...
 
static void AddMissingDofsFromSpecifications (ModelPart &rModelPart, const Parameters SpecificationsParameters, const std::string EntityName="NOT_DEFINED")
 This method adds to the model part the missing dofs from a given set of specifications. More...
 
static std::vector< std::string > GetDofsListFromSpecifications (const ModelPart &rModelPart)
 This method gets dofs lists from specifications. More...
 
static std::vector< std::string > GetDofsListFromElementsSpecifications (const ModelPart &rModelPart)
 This method gets dofs lists from specifications (elements) More...
 
static std::vector< std::string > GetDofsListFromConditionsSpecifications (const ModelPart &rModelPart)
 This method gets dofs lists from specifications (conditions) More...
 
static void DetermineFlagsUsed (const ModelPart &rModelPart)
 This method determine the flags used on the simulation. More...
 
static std::vector< std::string > DetermineTimeIntegration (const ModelPart &rModelPart)
 This method detects the time integrations which are compatible. It throws a warning if incompatible time integration. More...
 
static std::string DetermineFramework (const ModelPart &rModelPart)
 This method detects the framework considered. It throws a warning if incompatible framework. More...
 
static bool DetermineSymmetricLHS (const ModelPart &rModelPart)
 This method detects if the LHS is symmetric. It throws a warning if incompatible. More...
 
static bool DeterminePositiveDefiniteLHS (const ModelPart &rModelPart)
 This method detects if the LHS is positive definite. It throws a warning if incompatible. More...
 
static bool DetermineIfCompatibleGeometries (const ModelPart &rModelPart)
 This method detects if the elements/conditions are compatible with its geometry. More...
 
static bool DetermineIfRequiresTimeIntegration (const ModelPart &rModelPart)
 This method detects if all elements/conditions require time integration. It throws a warning if incompatible. More...
 
static bool CheckCompatibleConstitutiveLaws (const ModelPart &rModelPart)
 This method detects if all elements/conditions are considering the proper CL. More...
 
static int CheckGeometricalPolynomialDegree (const ModelPart &rModelPart)
 This method detects if all elements/conditions are considering the proper geometrical polynomial degree. More...
 
static Parameters GetDocumention (const ModelPart &rModelPart)
 This method returns the documentation provided by the element/condition. More...
 

Type Definitions

enum class  TimeIntegration { Static = 0 , Implicit = 1 , Explicit = 2 }
 This enum defines a "hash" used to identify if implicit/explicit or static time integration is considered. More...
 
enum class  Framework { Lagrangian = 0 , Eulerian = 1 , ALE = 2 }
 This enum defines a "hash" used to identify if Lagrangian/Eulerian or ALE framework is considered. More...
 
 KRATOS_CLASS_POINTER_DEFINITION (SpecificationsUtilities)
 Counted pointer of SpecificationsUtilities. More...
 

Detailed Description

This namespace includes several utilities necessaries for evaluate specifications.

Author
Vicente Mataix Ferrandiz

Member Enumeration Documentation

◆ Framework

This enum defines a "hash" used to identify if Lagrangian/Eulerian or ALE framework is considered.

Enumerator
Lagrangian 
Eulerian 
ALE 

◆ TimeIntegration

This enum defines a "hash" used to identify if implicit/explicit or static time integration is considered.

Enumerator
Static 
Implicit 
Explicit 

Constructor & Destructor Documentation

◆ SpecificationsUtilities()

Kratos::SpecificationsUtilities::SpecificationsUtilities ( )
delete

The default constructor.

Member Function Documentation

◆ AddMissingDofs()

void Kratos::SpecificationsUtilities::AddMissingDofs ( ModelPart rModelPart)
static

This method adds to the model part the missing dofs.

Parameters
rModelPartReference to the ModelPart containing the problem

◆ AddMissingDofsFromEntitiesList()

void Kratos::SpecificationsUtilities::AddMissingDofsFromEntitiesList ( ModelPart rModelPart,
const Parameters  EntitiesList 
)
static

This method adds to the model part the missing dofs.

Parameters
rModelPartReference to the ModelPart containing the problem
EntitiesListList of entities check specifications

◆ AddMissingDofsFromSpecifications()

void Kratos::SpecificationsUtilities::AddMissingDofsFromSpecifications ( ModelPart rModelPart,
const Parameters  SpecificationsParameters,
const std::string  EntityName = "NOT_DEFINED" 
)
static

This method adds to the model part the missing dofs from a given set of specifications.

Parameters
rModelPartReference to the ModelPart containing the problem
SpecificationsParametersThe specification parameters
EntityNameThe name of the entity considered

◆ AddMissingVariables()

void Kratos::SpecificationsUtilities::AddMissingVariables ( ModelPart rModelPart)
static

This method adds to the model part the missing variables.

Parameters
rModelPartReference to the ModelPart containing the problem

◆ AddMissingVariablesFromEntitiesList()

void Kratos::SpecificationsUtilities::AddMissingVariablesFromEntitiesList ( ModelPart rModelPart,
const Parameters  EntitiesList 
)
static

This method adds to the model part the missing variables.

Parameters
rModelPartReference to the ModelPart containing the problem
EntitiesListList of entities check specifications

◆ AddMissingVariablesFromSpecifications()

void Kratos::SpecificationsUtilities::AddMissingVariablesFromSpecifications ( ModelPart rModelPart,
const Parameters  SpecificationsParameters,
const std::string  EntityName = "NOT_DEFINED" 
)
static

This method adds to the model part the missing variables from a given set of specifications.

Parameters
rModelPartReference to the ModelPart containing the problem
SpecificationsParametersThe specification parameters
EntityNameThe name of the entity considered

◆ CheckCompatibleConstitutiveLaws()

bool Kratos::SpecificationsUtilities::CheckCompatibleConstitutiveLaws ( const ModelPart rModelPart)
static

This method detects if all elements/conditions are considering the proper CL.

Parameters
rModelPartReference to the ModelPart containing the problem
Returns
True if all the elements/conditions are considering the adequate CL, false otherwise

◆ CheckGeometricalPolynomialDegree()

int Kratos::SpecificationsUtilities::CheckGeometricalPolynomialDegree ( const ModelPart rModelPart)
static

This method detects if all elements/conditions are considering the proper geometrical polynomial degree.

Parameters
rModelPartReference to the ModelPart containing the problem
Returns
The highest geometrical polynomial degree

◆ DetermineFlagsUsed()

void Kratos::SpecificationsUtilities::DetermineFlagsUsed ( const ModelPart rModelPart)
static

This method determine the flags used on the simulation.

Parameters
rModelPartReference to the ModelPart containing the problem

◆ DetermineFramework()

std::string Kratos::SpecificationsUtilities::DetermineFramework ( const ModelPart rModelPart)
static

This method detects the framework considered. It throws a warning if incompatible framework.

Parameters
rModelPartReference to the ModelPart containing the problem
Returns
The framework of the problem

◆ DetermineIfCompatibleGeometries()

bool Kratos::SpecificationsUtilities::DetermineIfCompatibleGeometries ( const ModelPart rModelPart)
static

This method detects if the elements/conditions are compatible with its geometry.

Parameters
rModelPartReference to the ModelPart containing the problem
Returns
True if all geometries are compatible, false otherwise

◆ DetermineIfRequiresTimeIntegration()

bool Kratos::SpecificationsUtilities::DetermineIfRequiresTimeIntegration ( const ModelPart rModelPart)
static

This method detects if all elements/conditions require time integration. It throws a warning if incompatible.

Parameters
rModelPartReference to the ModelPart containing the problem
Returns
True if all the elements/conditions require time integration, false otherwise

◆ DeterminePositiveDefiniteLHS()

bool Kratos::SpecificationsUtilities::DeterminePositiveDefiniteLHS ( const ModelPart rModelPart)
static

This method detects if the LHS is positive definite. It throws a warning if incompatible.

Parameters
rModelPartReference to the ModelPart containing the problem
Returns
True if all the LHS are positive definite, false otherwise

◆ DetermineSymmetricLHS()

bool Kratos::SpecificationsUtilities::DetermineSymmetricLHS ( const ModelPart rModelPart)
static

This method detects if the LHS is symmetric. It throws a warning if incompatible.

Parameters
rModelPartReference to the ModelPart containing the problem
Returns
True if all the LHS are symmetric, false otherwise

◆ DetermineTimeIntegration()

std::vector< std::string > Kratos::SpecificationsUtilities::DetermineTimeIntegration ( const ModelPart rModelPart)
static

This method detects the time integrations which are compatible. It throws a warning if incompatible time integration.

Parameters
rModelPartReference to the ModelPart containing the problem
Returns
The list of time integrations compatible

◆ GetDocumention()

Parameters Kratos::SpecificationsUtilities::GetDocumention ( const ModelPart rModelPart)
static

This method returns the documentation provided by the element/condition.

Parameters
rModelPartReference to the ModelPart containing the problem
Returns
Parameters containing a resume of all the documentation

◆ GetDofsListFromConditionsSpecifications()

std::vector< std::string > Kratos::SpecificationsUtilities::GetDofsListFromConditionsSpecifications ( const ModelPart rModelPart)
static

This method gets dofs lists from specifications (conditions)

Parameters
rModelPartReference to the ModelPart containing the problem

◆ GetDofsListFromElementsSpecifications()

std::vector< std::string > Kratos::SpecificationsUtilities::GetDofsListFromElementsSpecifications ( const ModelPart rModelPart)
static

This method gets dofs lists from specifications (elements)

Parameters
rModelPartReference to the ModelPart containing the problem

◆ GetDofsListFromSpecifications()

std::vector< std::string > Kratos::SpecificationsUtilities::GetDofsListFromSpecifications ( const ModelPart rModelPart)
static

This method gets dofs lists from specifications.

Parameters
rModelPartReference to the ModelPart containing the problem

◆ KRATOS_CLASS_POINTER_DEFINITION()

Kratos::SpecificationsUtilities::KRATOS_CLASS_POINTER_DEFINITION ( SpecificationsUtilities  )

Counted pointer of SpecificationsUtilities.


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