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.
axisym_line_load_condition_2d.h
Go to the documentation of this file.
1 // KRATOS ___| | | |
2 // \___ \ __| __| | | __| __| | | __| _` | |
3 // | | | | | ( | | | | ( | |
4 // _____/ \__|_| \__,_|\___|\__|\__,_|_| \__,_|_| MECHANICS
5 //
6 // License: BSD License
7 // license: StructuralMechanicsApplication/license.txt
8 //
9 // Main authors: Vicente Mataix Ferrandiz
10 //
11 
12 #pragma once
13 
14 // System includes
15 
16 // External includes
17 
18 // Project includes
20 
21 namespace Kratos
22 {
31 
35 
39 
41 
47  : public LineLoadCondition<2>
48 {
49 public:
52 
55 
59 
61  AxisymLineLoadCondition2D(IndexType NewId, GeometryType::Pointer pGeometry);
62  AxisymLineLoadCondition2D(IndexType NewId, GeometryType::Pointer pGeometry, PropertiesType::Pointer pProperties);
63 
65  ~AxisymLineLoadCondition2D() override;
66 
73 
81  Condition::Pointer Create(
82  IndexType NewId,
83  NodesArrayType const& ThisNodes,
84  PropertiesType::Pointer pProperties
85  ) const override;
86 
94  Condition::Pointer Create(
95  IndexType NewId,
96  GeometryType::Pointer pGeom,
97  PropertiesType::Pointer pProperties
98  ) const override;
99 
106  Condition::Pointer Clone (
107  IndexType NewId,
108  NodesArrayType const& ThisNodes
109  ) const override;
110 
114 
121 
123  std::string Info() const override
124  {
125  std::stringstream buffer;
126  buffer << "AxisymLineLoadCondition2D #" << Id();
127  return buffer.str();
128  }
129 
131 
132  void PrintInfo(std::ostream& rOStream) const override
133  {
134  rOStream << "AxisymLineLoadCondition2D #" << Id();
135  }
136 
138  void PrintData(std::ostream& rOStream) const override
139  {
140  pGetGeometry()->PrintData(rOStream);
141  }
142 
147 
148 protected:
154 
158 
160  {
161  }
162 
176 
177 private:
180 
184 
188 
192 
199  double GetIntegrationWeight(
200  const GeometryType::IntegrationPointsArrayType& IntegrationPoints,
201  const SizeType PointNumber,
202  const double detJ
203  ) const override;
204 
209 
213 
214  friend class Serializer;
215 
216  // A private default constructor necessary for serialization
217 
218  void save(Serializer& rSerializer) const override;
219 
220  void load(Serializer& rSerializer) override;
221 
228  //AxisymLineLoadCondition2D& operator=(const AxisymLineLoadCondition2D& rOther);
230  //AxisymLineLoadCondition2D(const AxisymLineLoadCondition2D& rOther);
232 
233 }; // Class AxisymLineLoadCondition2D
234 
242 
243 } // namespace Kratos.
Axisymmetric line load condition.
Definition: axisym_line_load_condition_2d.h:48
~AxisymLineLoadCondition2D() override
Destructor.
Definition: axisym_line_load_condition_2d.cpp:89
std::string Info() const override
Turn back information as a string.
Definition: axisym_line_load_condition_2d.h:123
KRATOS_CLASS_INTRUSIVE_POINTER_DEFINITION(AxisymLineLoadCondition2D)
Counted pointer of AxisymLineLoadCondition2D.
AxisymLineLoadCondition2D()
Definition: axisym_line_load_condition_2d.h:159
Condition::Pointer Create(IndexType NewId, NodesArrayType const &ThisNodes, PropertiesType::Pointer pProperties) const override
Creates a new condition pointer.
Definition: axisym_line_load_condition_2d.cpp:59
Condition::Pointer Clone(IndexType NewId, NodesArrayType const &ThisNodes) const override
Creates a new condition pointer and clones the previous condition data.
Definition: axisym_line_load_condition_2d.cpp:71
void PrintData(std::ostream &rOStream) const override
Print object's data.
Definition: axisym_line_load_condition_2d.h:138
void PrintInfo(std::ostream &rOStream) const override
Print information about this object.
Definition: axisym_line_load_condition_2d.h:132
std::size_t IndexType
Definition: flags.h:74
GeometryType::Pointer pGetGeometry()
Returns the pointer to the geometry.
Definition: geometrical_object.h:140
std::vector< IntegrationPointType > IntegrationPointsArrayType
Definition: geometry.h:161
IndexType Id() const
Definition: indexed_object.h:107
Line load condition for 3D and 2D geometries.
Definition: line_load_condition.hpp:41
PointerVector is a container like stl vector but using a vector to store pointers to its data.
Definition: pointer_vector.h:72
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
std::size_t SizeType
The definition of the size type.
Definition: mortar_classes.h:43
def load(f)
Definition: ode_solve.py:307