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.
oesterle_dinh_lift_law.h
Go to the documentation of this file.
1 // Author: Guillermo Casas (gcasas@cimne.upc.edu)
2 // Date: February 2019
3 // Oesterle and Dinh (1998)
4 // Valid for Re_p < 140
5 
6 #if !defined(SDEM_OESTERLE_AND_DINH_LIFT_LAW_H_INCLUDED)
7 #define SDEM_OESTERLE_AND_DINH_LIFT_LAW_H_INCLUDED
8 
10 
11 namespace Kratos {
12 
13  class KRATOS_API(SWIMMING_DEM_APPLICATION) OesterleAndDinhLiftLaw : public RotationInducedLiftLaw {
14 
15  public:
16  typedef Node NodeType;
18 
19  // TODO: make mDoApplyFaxenCorrections an option
21 
22  OesterleAndDinhLiftLaw(Parameters r_parameters);
23 
25 
26  RotationInducedLiftLaw::Pointer Clone() const override;
27 
28  void Initialize(const ProcessInfo& r_process_info) override;
29 
30  std::string GetTypeOfLaw() override;
31 
32  void ComputeForce(Geometry<Node >& r_geometry,
33  const double reynolds_number,
34  double particle_radius,
35  double fluid_density,
36  double fluid_kinematic_viscosity,
37  array_1d<double, 3>& minus_slip_velocity,
38  array_1d<double, 3>& rotation_induced_lift,
39  const ProcessInfo& r_current_process_info) override;
40 
41  private:
42 
43  friend class Serializer;
44 
45  virtual void save(Serializer& rSerializer) const override {
47  }
48 
49  virtual void load(Serializer& rSerializer) override {
51  }
52 
53  }; //class OesterleAndDinhLiftLaw
54 
55 } // Namespace Kratos
56 
57 #endif /* SDEM_OESTERLE_AND_DINH_LIFT_LAW_H_INCLUDED defined */
Geometry base class.
Definition: geometry.h:71
This class defines the node.
Definition: node.h:65
Definition: oesterle_dinh_lift_law.h:13
~OesterleAndDinhLiftLaw()
Definition: oesterle_dinh_lift_law.h:24
OesterleAndDinhLiftLaw()
Definition: oesterle_dinh_lift_law.h:20
Node NodeType
Definition: oesterle_dinh_lift_law.h:16
KRATOS_CLASS_POINTER_DEFINITION(OesterleAndDinhLiftLaw)
This class provides to Kratos a data structure for I/O based on the standard of JSON.
Definition: kratos_parameters.h:59
ProcessInfo holds the current value of different solution parameters.
Definition: process_info.h:59
Definition: rotation_induced_lift_law.h:16
The serialization consists in storing the state of an object into a storage format like data file or ...
Definition: serializer.h:123
#define KRATOS_SERIALIZE_SAVE_BASE_CLASS(Serializer, BaseType)
Definition: define.h:812
#define KRATOS_SERIALIZE_LOAD_BASE_CLASS(Serializer, BaseType)
Definition: define.h:815
REF: G. R. Cowper, GAUSSIAN QUADRATURE FORMULAS FOR TRIANGLES.
Definition: mesh_condition.cpp:21
def load(f)
Definition: ode_solve.py:307