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.
newtonian_two_fluid_2d_law.h
Go to the documentation of this file.
1 // | / |
2 // ' / __| _` | __| _ \ __|
3 // . \ | ( | | ( |\__ `
4 // _|\_\_| \__,_|\__|\___/ ____/
5 // Multi-Physics
6 //
7 // License: BSD License
8 // Kratos default license: kratos/license.txt
9 //
10 // Main authors: Ruben Zorrilla
11 // Daniel Diez
12 //
13 
14 #if !defined (KRATOS_NEWTONIAN_TWO_FLUID_2D_H_INCLUDED)
15 #define KRATOS_NEWTONIAN_TWO_FLUID_2D_H_INCLUDED
16 
17 // System includes
18 
19 // External includes
20 
21 // Project includes
22 #include "newtonian_2d_law.h"
24 
25 namespace Kratos
26 {
27 
34 class KRATOS_API(FLUID_DYNAMICS_APPLICATION) NewtonianTwoFluid2DLaw : public Newtonian2DLaw
35 {
36 public:
40  typedef std::size_t SizeType;
41 
47 
56 
61  ConstitutiveLaw::Pointer Clone() const override;
62 
67 
71  ~NewtonianTwoFluid2DLaw() override;
72 
83  int Check(
84  const Properties& rMaterialProperties,
85  const GeometryType& rElementGeometry,
86  const ProcessInfo& rCurrentProcessInfo) const override;
87 
88 
96  std::string Info() const override;
97 
98 protected:
99 
102 
106 
110 
114 
115  double GetEffectiveViscosity(ConstitutiveLaw::Parameters& rParameters) const override;
116 
117 
119 
120 private:
121 
124 
128 
132 
136 
137  void EvaluateInPoint(
138  double& rResult,
139  const Variable<double>& rVariable,
140  ConstitutiveLaw::Parameters& rParameters) const;
141 
142  double EquivalentStrainRate(ConstitutiveLaw::Parameters& rParameters) const;
143 
147 
151 
152  friend class Serializer;
153 
154  void save(Serializer& rSerializer) const override;
155 
156  void load(Serializer& rSerializer) override;
157 
158 }; // Class NewtonianTwoFluid2DLaw
159 } // namespace Kratos.
160 #endif // KRATOS_NEWTONIAN_TWO_FLUID_2D_H_INCLUDED defined
std::string Info() const override
Turn back information as a string.
Definition: periodic_interface_process.hpp:93
Geometry base class.
Definition: geometry.h:71
Definition: newtonian_2d_law.h:31
Definition: newtonian_two_fluid_2d_law.h:35
std::size_t SizeType
Definition: newtonian_two_fluid_2d_law.h:40
KRATOS_CLASS_POINTER_DEFINITION(NewtonianTwoFluid2DLaw)
ProcessInfo holds the current value of different solution parameters.
Definition: process_info.h:59
Properties encapsulates data shared by different Elements or Conditions. It can store any type of dat...
Definition: properties.h:69
The serialization consists in storing the state of an object into a storage format like data file or ...
Definition: serializer.h:123
REF: G. R. Cowper, GAUSSIAN QUADRATURE FORMULAS FOR TRIANGLES.
Definition: mesh_condition.cpp:21
def load(f)
Definition: ode_solve.py:307
Definition: constitutive_law.h:189