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.
particles_history_watcher.h
Go to the documentation of this file.
1 // $Author: Guillermo Casas
2 #ifndef PARTICLES_HISTORY_WATCHER
3 #define PARTICLES_HISTORY_WATCHER
4 
5 // System includes
6 
7 #include <limits>
8 #include <iostream>
9 #include <iomanip>
10 #include <list>
11 
12 // Project includes
13 #include "includes/define.h"
14 #include "includes/model_part.h"
15 #include "analytic_watcher.h"
16 
17 /* External includes */
18 #ifdef _OPENMP
19 #include <omp.h>
20 #endif
21 
22 namespace Kratos
23 {
24 class KRATOS_API(DEM_APPLICATION) ParticlesHistoryWatcher: public AnalyticWatcher {
25 
26 public:
27 
29 
31 
33 
35 
37 
38 void ClearData() override;
39 
40 void GetNewParticlesData(std::list<int> ids,
41  std::list<double> X0s,
42  std::list<double> Y0s,
43  std::list<double> Z0s,
44  std::list<double> radii,
45  std::list<double> times_of_creation);
46 
47 void MakeMeasurements(ModelPart& analytic_model_part) override;
48 
49 void Record(SphericParticle* p_particle, ModelPart& r_model_part) override;
50 
52 std::string Info() const override;
53 
55 void PrintInfo(std::ostream& rOStream) const override;
56 
58 void PrintData(std::ostream& rOStream) const override;
59 
60 
61 private:
62 
63 std::vector<int> mIds;
64 std::vector<double> mX0s;
65 std::vector<double> mY0s;
66 std::vector<double> mZ0s;
67 std::vector<double> mRadii;
68 std::vector<double> mTimesOfCreation;
69 
72 
73 }; // Class ParticlesHistoryWatcher
74 
75 } // namespace Kratos.
76 
77 #endif // PARTICLES_HISTORY_WATCHER
PeriodicInterfaceProcess & operator=(const PeriodicInterfaceProcess &)=delete
std::string Info() const override
Turn back information as a string.
Definition: periodic_interface_process.hpp:93
Definition: analytic_watcher.h:23
This class aims to manage meshes for multi-physics simulations.
Definition: model_part.h:77
Definition: particles_history_watcher.h:24
KRATOS_CLASS_POINTER_DEFINITION(ParticlesHistoryWatcher)
ParticlesHistoryWatcher()
Default constructor.
Definition: particles_history_watcher.h:32
virtual ~ParticlesHistoryWatcher()
Destructor.
Definition: particles_history_watcher.h:36
Definition: spheric_particle.h:31
REF: G. R. Cowper, GAUSSIAN QUADRATURE FORMULAS FOR TRIANGLES.
Definition: mesh_condition.cpp:21