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 | |
class | Kratos::PfemFluidConstitutiveLaw |
This class contains the common infrastructure for the pfem fluid constitutive laws. More... | |
class | Kratos::CalculateWaveHeightUtility |
This function computes the wave height at a given point. More... | |
class | Kratos::TwoStepVPSolverSettings< TSparseSpace, TDenseSpace, TLinearSolver > |
Helper class to define solution strategies for TwoStepVPStrategy. More... | |
class | Kratos::SetMaterialPropertiesForThermalCouplingProcess |
This process sets the nodal value of thermal properties (density, conductivity and capacity) that depends on the temperature, which is necesssary for solving the termal part, since the convection-diffusion solver gets these nodal values for assembling the system. The value of these properties are computed according to the constitutive law of the incident elements of each node, using the nodal temperature, and the average is taken as the nodal value for the property. More... | |
class | Kratos::SetMeshVelocityForThermalCouplingProcess |
This method sets the MESH_VELOCITY equal to the nodal VELOCITY. More... | |
class | Kratos::UpdateConditionsOnFreeSurfaceProcess |
This process updates the conditions applied to the free surface after the remeshing. More... | |
class | Kratos::UpdateThermalModelPartProcess |
Type Definitions | |
typedef ConstitutiveLaw | Kratos::PfemFluidConstitutiveLaw::BaseType |
typedef std::size_t | Kratos::PfemFluidConstitutiveLaw::SizeType |
Kratos::PfemFluidConstitutiveLaw::KRATOS_CLASS_POINTER_DEFINITION (PfemFluidConstitutiveLaw) | |
Serialization | |
class | Kratos::PfemFluidConstitutiveLaw::Serializer |
Life Cycle | |
Kratos::PfemFluidConstitutiveLaw::PfemFluidConstitutiveLaw () | |
Default constructor. More... | |
Kratos::PfemFluidConstitutiveLaw::PfemFluidConstitutiveLaw (const PfemFluidConstitutiveLaw &rOther) | |
Copy constructor. More... | |
Kratos::PfemFluidConstitutiveLaw::~PfemFluidConstitutiveLaw () override | |
Destructor. More... | |
Operations | |
ConstitutiveLaw::Pointer | Kratos::PfemFluidConstitutiveLaw::Clone () const override |
Initialize a new instance of this type of law. More... | |
void | Kratos::PfemFluidConstitutiveLaw::CalculateMaterialResponseCauchy (ConstitutiveLaw::Parameters &rValues) override |
Calculate the response of the material for the current strain rates. More... | |
int | Kratos::PfemFluidConstitutiveLaw::Check (const Properties &rMaterialProperties, const GeometryType &rElementGeometry, const ProcessInfo &rCurrentProcessInfo) const override |
Validate the data received by the constitutive law. More... | |
Access | |
double & | Kratos::PfemFluidConstitutiveLaw::CalculateValue (ConstitutiveLaw::Parameters &rParameters, const Variable< double > &rThisVariable, double &rValue) override |
Inquiry | |
SizeType | Kratos::PfemFluidConstitutiveLaw::WorkingSpaceDimension () override |
This lets user classes know if the constitutive law is defined for 1D, 2D or 3D. More... | |
SizeType | Kratos::PfemFluidConstitutiveLaw::GetStrainSize () const override |
This lets the user know the size of the strain rate vector (in Voigt notation) used by the constitutive law. More... | |
Input and output | |
std::string | Kratos::PfemFluidConstitutiveLaw::Info () const override |
void | Kratos::PfemFluidConstitutiveLaw::PrintInfo (std::ostream &rOStream) const override |
Print basic information about this constitutive law instance. More... | |
void | Kratos::PfemFluidConstitutiveLaw::PrintData (std::ostream &rOStream) const override |
Print detailed information about this constitutive law instance and its managed data. More... | |
Protected Operations | |
void | Kratos::PfemFluidConstitutiveLaw::EffectiveViscousConstitutiveMatrix2D (double EffectiveViscosity, Matrix &rC) |
Helper function to write the constitutive matrix using an effective viscosity (2D version). More... | |
void | Kratos::PfemFluidConstitutiveLaw::EffectiveViscousConstitutiveMatrix3D (double EffectiveViscosity, Matrix &rC) |
Helper function to write the constitutive matrix using an effective viscosity (3D version). More... | |
double | Kratos::PfemFluidConstitutiveLaw::GetThetaMomentumForPressureIntegration () |
Protected Access | |
virtual double | Kratos::PfemFluidConstitutiveLaw::GetEffectiveMaterialParameter (ConstitutiveLaw::Parameters &rParameters, const Variable< double > &rVariable) const |
Get the Effective Density object Get the effective density for the fluid. More... | |
virtual double | Kratos::PfemFluidConstitutiveLaw::CalculateAveragedVariable (const Variable< double > &rVariableInput, ConstitutiveLaw::Parameters &rParameters, unsigned int step) const |
Get the averaged value of the Input Variable. More... | |
virtual double | Kratos::PfemFluidConstitutiveLaw::CalculateInGaussPoint (const Variable< double > &rVariableInput, ConstitutiveLaw::Parameters &rParameters, unsigned int step) const |
Get the averaged value of the Input Variable. More... | |
virtual double | Kratos::PfemFluidConstitutiveLaw::GetValueFromTable (const Variable< double > &rIndependentVariable, const Variable< double > &rDependentVariable, ConstitutiveLaw::Parameters &rParameters) const |
Get the Value From Table object For an table independent variable, this method returns the table dependent variable value. Note that the properties container must have a table relating the two variables. More... | |
Input and output | |
template<class TDenseSpace , class TSparseSpace , class TLinearSolver > | |
std::istream & | Kratos::operator>> (std::istream &rIStream, TwoStepVPSolverSettings< TSparseSpace, TDenseSpace, TLinearSolver > &rThis) |
input stream function More... | |
template<class TDenseSpace , class TSparseSpace , class TLinearSolver > | |
std::ostream & | Kratos::operator<< (std::ostream &rOStream, const TwoStepVPSolverSettings< TSparseSpace, TDenseSpace, TLinearSolver > &rThis) |
output stream function More... | |
typedef std::size_t Kratos::PfemFluidConstitutiveLaw::SizeType |
|
protectedvirtual |
Get the averaged value of the Input Variable.
rParameters | input variable, constitutive law parameters, step in which the variable is to evaluated |
|
protectedvirtual |
Get the averaged value of the Input Variable.
rParameters | input variable, constitutive law parameters, step in which the variable is to evaluated |
|
overridevirtual |
Calculate the response of the material for the current strain rates.
This is the main method for fluid constitutive laws. These are returned as rValues.GetConstitutiveMatrix() and rValues.GetStressVector(), respectively.
Reimplemented from Kratos::ConstitutiveLaw.
Reimplemented in Kratos::Newtonian3DLaw, Kratos::Newtonian2DLaw, Kratos::MuIRheology3DLaw, Kratos::MuIRheology2DLaw, Kratos::HerschelBulkley3DLaw, Kratos::HerschelBulkley2DLaw, Kratos::FrictionalViscoplastic3DLaw, and Kratos::FrictionalViscoplastic2DLaw.
|
overridevirtual |
Reimplemented from Kratos::ConstitutiveLaw.
|
overridevirtual |
Validate the data received by the constitutive law.
rMaterialProperties | Properties of the parent Element. |
rElementGeometry | Geometry of the parent Element. |
rCurrentProcessInfo | ProcessInfo for the problem. |
Reimplemented from Kratos::ConstitutiveLaw.
Reimplemented in Kratos::RansNewtonian3DLaw, Kratos::RansNewtonian2DLaw, Kratos::NewtonianTemperatureDependent3DLaw, Kratos::NewtonianTemperatureDependent2DLaw, Kratos::MuIRheologyTemperatureDependent3DLaw, Kratos::MuIRheologyTemperatureDependent2DLaw, Kratos::FrictionalViscoplasticTemperatureDependent3DLaw, Kratos::FrictionalViscoplasticTemperatureDependent2DLaw, Kratos::BinghamTemperatureDependent3DLaw, Kratos::BinghamTemperatureDependent2DLaw, Kratos::Newtonian3DLaw, Kratos::Newtonian2DLaw, Kratos::MuIRheology3DLaw, Kratos::MuIRheology2DLaw, Kratos::HerschelBulkley3DLaw, Kratos::HerschelBulkley2DLaw, Kratos::FrictionalViscoplastic3DLaw, and Kratos::FrictionalViscoplastic2DLaw.
|
overridevirtual |
Initialize a new instance of this type of law.
Reimplemented from Kratos::ConstitutiveLaw.
Reimplemented in Kratos::RansNewtonian3DLaw, Kratos::RansNewtonian2DLaw, Kratos::NewtonianTemperatureDependent3DLaw, Kratos::NewtonianTemperatureDependent2DLaw, Kratos::MuIRheologyTemperatureDependent3DLaw, Kratos::MuIRheologyTemperatureDependent2DLaw, Kratos::FrictionalViscoplasticTemperatureDependent3DLaw, Kratos::FrictionalViscoplasticTemperatureDependent2DLaw, Kratos::BinghamTemperatureDependent3DLaw, Kratos::BinghamTemperatureDependent2DLaw, Kratos::Newtonian3DLaw, Kratos::Newtonian2DLaw, Kratos::MuIRheology3DLaw, Kratos::MuIRheology2DLaw, Kratos::HerschelBulkley3DLaw, Kratos::HerschelBulkley2DLaw, Kratos::FrictionalViscoplastic3DLaw, and Kratos::FrictionalViscoplastic2DLaw.
|
protected |
Helper function to write the constitutive matrix using an effective viscosity (2D version).
It returns a matrix with the same structure as for a Newtonian fluid, using the given viscosity.
[in] | EffectiveViscosity | Equivalent viscosity for the fluid (dynamic units – Pa s – assumed). |
[out] | rC | Resulting constitutive matrix. |
|
protected |
Helper function to write the constitutive matrix using an effective viscosity (3D version).
It returns a matrix with the same structure as for a Newtonian fluid, using the given viscosity.
[in] | EffectiveViscosity | Equivalent viscosity for the fluid (dynamic units – Pa s – assumed). |
[out] | rC | Resulting constitutive matrix. |
|
protectedvirtual |
Get the Effective Density object Get the effective density for the fluid.
rParameters | constitutive law parameters |
Reimplemented in Kratos::NewtonianTemperatureDependent3DLaw, Kratos::NewtonianTemperatureDependent2DLaw, Kratos::MuIRheologyTemperatureDependent3DLaw, Kratos::MuIRheologyTemperatureDependent2DLaw, Kratos::FrictionalViscoplasticTemperatureDependent3DLaw, Kratos::FrictionalViscoplasticTemperatureDependent2DLaw, Kratos::BinghamTemperatureDependent3DLaw, Kratos::BinghamTemperatureDependent2DLaw, Kratos::Newtonian3DLaw, Kratos::Newtonian2DLaw, Kratos::MuIRheology3DLaw, Kratos::MuIRheology2DLaw, Kratos::HerschelBulkley3DLaw, Kratos::HerschelBulkley2DLaw, Kratos::FrictionalViscoplastic3DLaw, Kratos::FrictionalViscoplastic2DLaw, Kratos::Bingham3DLaw, and Kratos::Bingham2DLaw.
|
overridevirtual |
This lets the user know the size of the strain rate vector (in Voigt notation) used by the constitutive law.
Reimplemented from Kratos::ConstitutiveLaw.
Reimplemented in Kratos::Newtonian3DLaw, Kratos::Newtonian2DLaw, Kratos::MuIRheology3DLaw, Kratos::MuIRheology2DLaw, Kratos::HerschelBulkley3DLaw, Kratos::HerschelBulkley2DLaw, Kratos::FrictionalViscoplastic3DLaw, and Kratos::FrictionalViscoplastic2DLaw.
|
inlineprotected |
|
protectedvirtual |
Get the Value From Table object For an table independent variable, this method returns the table dependent variable value. Note that the properties container must have a table relating the two variables.
rIndependentVariable | independent variable |
rDependentVariable | dependent variable |
rParameters | constitutive law parameters container |
|
overridevirtual |
Reimplemented from Kratos::ConstitutiveLaw.
Reimplemented in Kratos::RansNewtonian3DLaw, Kratos::RansNewtonian2DLaw, Kratos::NewtonianTemperatureDependent3DLaw, Kratos::NewtonianTemperatureDependent2DLaw, Kratos::MuIRheologyTemperatureDependent3DLaw, Kratos::MuIRheologyTemperatureDependent2DLaw, Kratos::FrictionalViscoplasticTemperatureDependent3DLaw, Kratos::FrictionalViscoplasticTemperatureDependent2DLaw, Kratos::BinghamTemperatureDependent3DLaw, Kratos::BinghamTemperatureDependent2DLaw, Kratos::Newtonian3DLaw, Kratos::Newtonian2DLaw, Kratos::MuIRheology3DLaw, Kratos::MuIRheology2DLaw, Kratos::HerschelBulkley3DLaw, Kratos::HerschelBulkley2DLaw, Kratos::FrictionalViscoplastic3DLaw, and Kratos::FrictionalViscoplastic2DLaw.
Kratos::PfemFluidConstitutiveLaw::KRATOS_CLASS_POINTER_DEFINITION | ( | PfemFluidConstitutiveLaw | ) |
|
inline |
output stream function
|
inline |
input stream function
Kratos::PfemFluidConstitutiveLaw::PfemFluidConstitutiveLaw | ( | ) |
Default constructor.
Kratos::PfemFluidConstitutiveLaw::PfemFluidConstitutiveLaw | ( | const PfemFluidConstitutiveLaw & | rOther | ) |
Copy constructor.
|
overridevirtual |
Print detailed information about this constitutive law instance and its managed data.
Reimplemented from Kratos::ConstitutiveLaw.
|
overridevirtual |
Print basic information about this constitutive law instance.
Reimplemented from Kratos::ConstitutiveLaw.
|
overridevirtual |
This lets user classes know if the constitutive law is defined for 1D, 2D or 3D.
Reimplemented from Kratos::ConstitutiveLaw.
Reimplemented in Kratos::Newtonian3DLaw, Kratos::Newtonian2DLaw, Kratos::MuIRheology3DLaw, Kratos::MuIRheology2DLaw, Kratos::HerschelBulkley3DLaw, Kratos::HerschelBulkley2DLaw, Kratos::FrictionalViscoplastic3DLaw, and Kratos::FrictionalViscoplastic2DLaw.
|
override |
Destructor.
|
friend |