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

The base class for the bottom and surface friction laws. More...

#include <wind_water_friction.h>

Inheritance diagram for Kratos::WindWaterFriction:
Collaboration diagram for Kratos::WindWaterFriction:

Public Member Functions

Type Definitions
 KRATOS_CLASS_POINTER_DEFINITION (WindWaterFriction)
 
Life Cycle
 WindWaterFriction ()
 Default Constructor. More...
 
 WindWaterFriction (const GeometryType &rGeometry, const Properties &rProperty, const ProcessInfo &rProcessInfo)
 Constructor with data. More...
 
virtual ~WindWaterFriction ()
 Destructor. More...
 
Operations
void Initialize (const GeometryType &rGeometry, const Properties &rProperty, const ProcessInfo &rProcessInfo) override
 Initialize the friction law variables. More...
 
double CalculateLHS (const array_1d< double, 3 > &rVelocity) override
 Calculate the LHS coefficient for the given data. More...
 
array_1d< double, 3 > CalculateRHS (const array_1d< double, 3 > &rVelocity) override
 Calculate the RHS coefficient for the given data. More...
 
Input and output
std::string Info () const override
 Turn back information as a string. More...
 
- Public Member Functions inherited from Kratos::FrictionLaw
 FrictionLaw ()
 Default constructor. More...
 
 FrictionLaw (FrictionLaw const &rOther)
 Copy constructor. More...
 
virtual ~FrictionLaw ()
 Destructor. More...
 
virtual FrictionLaw::Pointer Clone () const
 
 FrictionLaw ()
 Default constructor. More...
 
virtual ~FrictionLaw ()
 Destructor. More...
 
void InitializeSolutionStep ()
 
void FinalizeSolutionStep ()
 
bool EvaluateFrictionLaw (double &rTangentForce, const double &rNormalForce, FrictionLawVariables &rTangentVariables)
 
void EvaluateConstitutiveComponents (double &rNormalModulus, double &rTangentModulus, const double &rTangentForce, const double &rEffectiveNormalForce, FrictionLawVariables &rTangentVariables)
 
double GetPlasticSlip ()
 
virtual int Check ()
 Check on the completeness of the input. More...
 
virtual double CalculateLHS (const double &rHeight, const array_1d< double, 3 > &rVelocity)
 Calculate the LHS coefficient for the given data. More...
 
virtual array_1d< double, 3 > CalculateRHS (const double &rHeight, const array_1d< double, 3 > &rVelocity)
 Calculate the RHS coefficient for the given data. More...
 
virtual void PrintInfo (std::ostream &rOStream) const
 Print information about this object. More...
 
virtual void PrintData (std::ostream &rOStream) const
 Print object's data. More...
 
virtual void PrintInfo (std::ostream &rOStream) const
 Print information about this object. More...
 
virtual void PrintData (std::ostream &rOStream) const
 Print object's data. More...
 
 KRATOS_CLASS_POINTER_DEFINITION (FrictionLaw)
 Pointer definition of FrictionLaw. More...
 
 KRATOS_CLASS_POINTER_DEFINITION (FrictionLaw)
 

Additional Inherited Members

- Public Types inherited from Kratos::FrictionLaw
typedef Node NodeType
 
typedef Geometry< NodeTypeGeometryType
 
- Protected Member Functions inherited from Kratos::FrictionLaw
virtual double EvaluateHardening (const double &rNormalStress, const double &rPlasticSlip, FrictionLawVariables &rTangentVariables)
 
virtual double EvaluateContactYield (const double &rTangentStress, const double &rNormalStress, const double &rPlasticSlip, FrictionLawVariables &rTangentVariables)
 
virtual void EvaluateYieldDerivativeRespectStress (double &rdF_dt, double &rdF_dp, const double &rTangentStress, const double &rNormalStress, const double &Gamma, FrictionLawVariables &rTangentVariables)
 

Detailed Description

The base class for the bottom and surface friction laws.

This class computes the bottom friction according to the Manning law

Author
Miguel Maso Sotomayor

Constructor & Destructor Documentation

◆ WindWaterFriction() [1/2]

Kratos::WindWaterFriction::WindWaterFriction ( )
inline

Default Constructor.

◆ WindWaterFriction() [2/2]

Kratos::WindWaterFriction::WindWaterFriction ( const GeometryType rGeometry,
const Properties rProperty,
const ProcessInfo rProcessInfo 
)

Constructor with data.

◆ ~WindWaterFriction()

virtual Kratos::WindWaterFriction::~WindWaterFriction ( )
inlinevirtual

Destructor.

Member Function Documentation

◆ CalculateLHS()

double Kratos::WindWaterFriction::CalculateLHS ( const array_1d< double, 3 > &  rVelocity)
overridevirtual

Calculate the LHS coefficient for the given data.

Parameters
rVectorThe layer velocity
Returns
The LHS coefficient

Reimplemented from Kratos::FrictionLaw.

◆ CalculateRHS()

array_1d< double, 3 > Kratos::WindWaterFriction::CalculateRHS ( const array_1d< double, 3 > &  rVelocity)
overridevirtual

Calculate the RHS coefficient for the given data.

Parameters
rVectorThe layer velocity
Returns
The components of the RHS coefficients

Reimplemented from Kratos::FrictionLaw.

◆ Info()

std::string Kratos::WindWaterFriction::Info ( ) const
inlineoverridevirtual

Turn back information as a string.

Reimplemented from Kratos::FrictionLaw.

◆ Initialize()

void Kratos::WindWaterFriction::Initialize ( const GeometryType rGeometry,
const Properties rProperty,
const ProcessInfo rProcessInfo 
)
overridevirtual

Initialize the friction law variables.

Reimplemented from Kratos::FrictionLaw.

◆ KRATOS_CLASS_POINTER_DEFINITION()

Kratos::WindWaterFriction::KRATOS_CLASS_POINTER_DEFINITION ( WindWaterFriction  )

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