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.
Classes | Variables
FluidDynamicsHydraulicsApplication

Classes

class  Kratos::HydraulicFluidAuxiliaryUtilities
 

Variables

NodeType::Pointer Kratos::HydraulicFluidAuxiliaryUtilities::EdgeDataContainer::pNodeI = nullptr
 
NodeType::Pointer Kratos::HydraulicFluidAuxiliaryUtilities::EdgeDataContainer::pNodeJ = nullptr
 
SizeType Kratos::HydraulicFluidAuxiliaryUtilities::EdgeDataContainer::NumberOfRepetitions = 0
 

Type Definitions

using Kratos::HydraulicFluidAuxiliaryUtilities::SizeType = std::size_t
 
using Kratos::HydraulicFluidAuxiliaryUtilities::IndexType = std::size_t
 
using Kratos::HydraulicFluidAuxiliaryUtilities::NodeType = Node
 
using Kratos::HydraulicFluidAuxiliaryUtilities::GeometryType = Geometry< NodeType >
 
using Kratos::HydraulicFluidAuxiliaryUtilities::PointsArrayType = typename GeometryType::PointsArrayType
 
using Kratos::HydraulicFluidAuxiliaryUtilities::ModifiedShapeFunctionsFactoryType = std::function< ModifiedShapeFunctions::UniquePointer(const GeometryType::Pointer, const Vector &)>
 

Static Operations

static double Kratos::HydraulicFluidAuxiliaryUtilities::CalculateWettedPetimeter (ModelPart &rModelPart, const Flags &rSkinFlag, const Variable< double > &rDistanceVariable, const bool IsHistorical)
 This functions calculates the wetted perimeter of a given condition in order to apply the corresponding inlet boundary condition. More...
 
static double Kratos::HydraulicFluidAuxiliaryUtilities::CalculateWettedArea (ModelPart &rModelPart, const Flags &rSkinFlag, const Variable< double > &rDistanceVariable, const bool IsHistorical)
 This functions calculates the wetted area of a given condition in order to apply the corresponding inlet boundary condition. More...
 
static double Kratos::HydraulicFluidAuxiliaryUtilities::InitialWaterDepth (ModelPart &rModelPart)
 Calculates initial water depth guess by taking the average between the maximum and minimum coordinates. More...
 
static void Kratos::HydraulicFluidAuxiliaryUtilities::SetInletVelocity (ModelPart &rModelPart, double InletVelocity, const Variable< double > &rDistanceVariable)
 Assign the inlet velocity to all nodes that are wet in the input model part. For dry nodes(air)is assumed that the inlet velocity is null. More...
 
static void Kratos::HydraulicFluidAuxiliaryUtilities::FreeInlet (ModelPart &rModelPart)
 Free the inlet velocity in the nodes belonging to inlet model part. More...
 
static void Kratos::HydraulicFluidAuxiliaryUtilities::SetInletFreeSurface (ModelPart &rModelPart, const Flags &rSkinFlag, const Variable< double > &rDistanceVariable)
 Set the free surface (DISTANCE) in the rModelPart equal to the water depth corresponding to Froude 1. More...
 

Detailed Description

Typedef Documentation

◆ GeometryType

◆ IndexType

◆ ModifiedShapeFunctionsFactoryType

using Kratos::HydraulicFluidAuxiliaryUtilities::ModifiedShapeFunctionsFactoryType = std::function<ModifiedShapeFunctions::UniquePointer(const GeometryType::Pointer, const Vector&)>

◆ NodeType

◆ PointsArrayType

◆ SizeType

Function Documentation

◆ CalculateWettedArea()

double Kratos::HydraulicFluidAuxiliaryUtilities::CalculateWettedArea ( ModelPart rModelPart,
const Flags rSkinFlag,
const Variable< double > &  rDistanceVariable,
const bool  IsHistorical 
)
static

This functions calculates the wetted area of a given condition in order to apply the corresponding inlet boundary condition.

Parameters
rModelPartInlet Model Part
rSkinFlagFlag that marks the conditions to be included in the calculation
rDistanceVariableReference to the variable containing the distance
IsHistoricalTrue if the distance is in the historical database, false otherwise
Returns
Wetted area

◆ CalculateWettedPetimeter()

double Kratos::HydraulicFluidAuxiliaryUtilities::CalculateWettedPetimeter ( ModelPart rModelPart,
const Flags rSkinFlag,
const Variable< double > &  rDistanceVariable,
const bool  IsHistorical 
)
static

This functions calculates the wetted perimeter of a given condition in order to apply the corresponding inlet boundary condition.

Parameters
rModelPartInlet Model Part
rSkinFlagFlag that marks the conditions to be included in the calculation
rDistanceVariableReference to the variable containing the distance
IsHistoricalTrue if the distance is in the historical database, false otherwise
Returns
Wetted perimeter

◆ FreeInlet()

void Kratos::HydraulicFluidAuxiliaryUtilities::FreeInlet ( ModelPart rModelPart)
static

Free the inlet velocity in the nodes belonging to inlet model part.

Parameters
rModelPartInlet Model Part

◆ InitialWaterDepth()

double Kratos::HydraulicFluidAuxiliaryUtilities::InitialWaterDepth ( ModelPart rModelPart)
static

Calculates initial water depth guess by taking the average between the maximum and minimum coordinates.

Parameters
rModelPartInlet Model Part
Returns
Initial water depth guess

◆ SetInletFreeSurface()

void Kratos::HydraulicFluidAuxiliaryUtilities::SetInletFreeSurface ( ModelPart rModelPart,
const Flags rSkinFlag,
const Variable< double > &  rDistanceVariable 
)
static

Set the free surface (DISTANCE) in the rModelPart equal to the water depth corresponding to Froude 1.

Parameters
rModelPartInlet Model Part
rSkinFlagFlag that marks the conditions to be included in the calculation
rDistancesVariableVariable name of the inlet distance.

◆ SetInletVelocity()

void Kratos::HydraulicFluidAuxiliaryUtilities::SetInletVelocity ( ModelPart rModelPart,
double  InletVelocity,
const Variable< double > &  rDistanceVariable 
)
static

Assign the inlet velocity to all nodes that are wet in the input model part. For dry nodes(air)is assumed that the inlet velocity is null.

Parameters
rModelPartInlet Model Part
InletVelocitythe velocity value to be assigned to wet nodes.
rDistancesVariableVariable name of the inlet distance.

Variable Documentation

◆ NumberOfRepetitions

SizeType Kratos::HydraulicFluidAuxiliaryUtilities::EdgeDataContainer::NumberOfRepetitions = 0

◆ pNodeI

NodeType::Pointer Kratos::HydraulicFluidAuxiliaryUtilities::EdgeDataContainer::pNodeI = nullptr

◆ pNodeJ

NodeType::Pointer Kratos::HydraulicFluidAuxiliaryUtilities::EdgeDataContainer::pNodeJ = nullptr