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.
scalar_wall_flux_condition_data.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: Suneth Warnakulasuriya
11 //
12 
13 #if !defined(KRATOS_SCALAR_WALL_FLUX_CONDITION_DATA_H_INCLUDED)
14 #define KRATOS_SCALAR_WALL_FLUX_CONDITION_DATA_H_INCLUDED
15 
16 // System includes
17 
18 // External includes
19 
20 // Project includes
21 #include "containers/variable.h"
22 #include "geometries/geometry.h"
24 #include "includes/node.h"
25 #include "includes/process_info.h"
26 #include "includes/properties.h"
28 
29 // Application includes
30 
31 namespace Kratos
32 {
35 
37 {
38 public:
40 
42  const GeometryType& rGeometry,
43  const Properties& rConditionProperties,
44  const ProcessInfo& rProcessInfo)
45  : mrGeometry(rGeometry),
46  mrConditionProperties(rConditionProperties),
47  mrElementProperties(rGeometry.GetValue(NEIGHBOUR_ELEMENTS)[0].GetProperties()),
48  mrConstitutiveLaw(*rGeometry.GetValue(NEIGHBOUR_ELEMENTS)[0].GetValue(CONSTITUTIVE_LAW))
49  {
50  mConstitutiveLawParameters =
51  ConstitutiveLaw::Parameters(rGeometry, mrElementProperties, rProcessInfo);
52  }
53 
55  {
56  return mConstitutiveLawParameters;
57  }
58 
60  {
61  return mrConstitutiveLaw;
62  }
63 
64  const GeometryType& GetGeometry() const
65  {
66  return mrGeometry;
67  }
68 
70  {
71  return mrElementProperties;
72  }
73 
75  {
76  return mrConditionProperties;
77  }
78 
79 private:
80  const GeometryType& mrGeometry;
81  const Properties& mrConditionProperties;
82  const Properties& mrElementProperties;
83  ConstitutiveLaw& mrConstitutiveLaw;
84  ConstitutiveLaw::Parameters mConstitutiveLawParameters;
85 };
86 } // namespace Kratos
87 
88 #endif
Definition: constitutive_law.h:47
Geometry base class.
Definition: geometry.h:71
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
Definition: scalar_wall_flux_condition_data.h:37
ScalarWallFluxConditionData(const GeometryType &rGeometry, const Properties &rConditionProperties, const ProcessInfo &rProcessInfo)
Definition: scalar_wall_flux_condition_data.h:41
const Properties & GetElementProperties() const
Definition: scalar_wall_flux_condition_data.h:69
const GeometryType & GetGeometry() const
Definition: scalar_wall_flux_condition_data.h:64
ConstitutiveLaw::Parameters & GetConstitutiveLawParameters()
Definition: scalar_wall_flux_condition_data.h:54
ConstitutiveLaw & GetConstitutiveLaw()
Definition: scalar_wall_flux_condition_data.h:59
const Properties & GetConditionProperties() const
Definition: scalar_wall_flux_condition_data.h:74
Parameters GetValue(Parameters &rParameters, const std::string &rEntry)
Definition: add_kratos_parameters_to_python.cpp:53
REF: G. R. Cowper, GAUSSIAN QUADRATURE FORMULAS FOR TRIANGLES.
Definition: mesh_condition.cpp:21
Definition: constitutive_law.h:189