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.
|
The base class for the bottom and surface friction laws. More...
#include <chezy_law.h>
Public Member Functions | |
Type Definitions | |
KRATOS_CLASS_POINTER_DEFINITION (ChezyLaw) | |
Life Cycle | |
ChezyLaw () | |
Default Constructor. More... | |
ChezyLaw (const GeometryType &rGeometry, const Properties &rProperty, const ProcessInfo &rProcessInfo) | |
Constructor with data. More... | |
virtual | ~ChezyLaw () |
Destructor. More... | |
Operations | |
void | Initialize (const GeometryType &rGeometry, const Properties &rProperty, const ProcessInfo &rProcessInfo) override |
Initialize the friction law variables. More... | |
double | CalculateLHS (const double &rHeight, const array_1d< double, 3 > &rVelocity) override |
Calculate the LHS coefficient for the given data. More... | |
array_1d< double, 3 > | CalculateRHS (const double &rHeight, 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 array_1d< double, 3 > &rInnerLayer) |
Calculate the LHS coefficient for the given data. More... | |
virtual array_1d< double, 3 > | CalculateRHS (const array_1d< double, 3 > &rInnerLayer) |
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< NodeType > | GeometryType |
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) |
The base class for the bottom and surface friction laws.
This class computes the bottom friction according to the Chezy law
|
inline |
Default Constructor.
Kratos::ChezyLaw::ChezyLaw | ( | const GeometryType & | rGeometry, |
const Properties & | rProperty, | ||
const ProcessInfo & | rProcessInfo | ||
) |
Constructor with data.
|
inlinevirtual |
Destructor.
|
overridevirtual |
Calculate the LHS coefficient for the given data.
rHeight | The layer depth |
rVector | The layer velocity or momentum |
Reimplemented from Kratos::FrictionLaw.
|
overridevirtual |
Calculate the RHS coefficient for the given data.
rHeight | The layer depth |
rVector | The layer velocity or momentum |
Reimplemented from Kratos::FrictionLaw.
|
inlineoverridevirtual |
Turn back information as a string.
Reimplemented from Kratos::FrictionLaw.
|
overridevirtual |
Initialize the friction law variables.
Reimplemented from Kratos::FrictionLaw.
Kratos::ChezyLaw::KRATOS_CLASS_POINTER_DEFINITION | ( | ChezyLaw | ) |