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.
thermal_explicit_solver_strategy.h
Go to the documentation of this file.
1 // Kratos Multi-Physics - ThermalDEM Application
2 //
3 // License: BSD License
4 // Kratos default license: kratos/license.txt
5 //
6 // Main authors: Rafael Rangel (rrangel@cimne.upc.edu)
7 //
8 
9 #if !defined(KRATOS_THERMAL_EXPLICIT_SOLVER_STRATEGY_H_INCLUDED)
10 #define KRATOS_THERMAL_EXPLICIT_SOLVER_STRATEGY_H_INCLUDED
11 
12 // System includes
13 
14 // External includes
16 
17 // Project includes
19 
20 namespace Kratos
21 {
22  class KRATOS_API(THERMAL_DEM_APPLICATION) ThermalExplicitSolverStrategy : public ExplicitSolverStrategy
23  {
24  public:
25 
26  // Pointer definition
28 
30 
31  // Constructor
33 
35  const double max_delta_time,
36  const int n_step_search,
37  const double safety_factor,
38  const int delta_option,
39  ParticleCreatorDestructor::Pointer p_creator_destructor,
40  DEM_FEM_Search::Pointer p_dem_fem_search,
41  SpatialSearch::Pointer pSpSearch,
42  Parameters strategy_parameters);
43 
44  // Destructor
46 
47  // Public derived methods
48  void Initialize (void) override;
49  void SetSearchRadiiOnAllParticles (ModelPart& r_model_part, double added_search_distance = 0.0, double amplification = 1.0) override;
50  void SetSearchRadiiWithFemOnAllParticles (ModelPart& r_model_part, double added_search_distance = 0.0, double amplification = 1.0) override;
51 
52  // Public particular methods
53  double SolveSolutionStepStatic(void);
54 
55  protected:
56 
57  // Protected particular methods
58  void SetSolveFrequency (void);
59  void PerformThermalTimeIntegration (void);
60  void SetSearchRadii (ModelPart & r_model_part, double added_search_distance, double amplification);
61 
62  }; // Class ThermalExplicitSolverStrategy
63 } // namespace Kratos
64 
65 #endif // KRATOS_THERMAL_EXPLICIT_SOLVER_STRATEGY_H_INCLUDED defined
Definition: explicit_solver_strategy.h:54
Definition: explicit_solver_strategy.h:70
std::vector< SphericParticle * > mListOfSphericParticles
Definition: explicit_solver_strategy.h:308
This class aims to manage meshes for multi-physics simulations.
Definition: model_part.h:77
This class provides to Kratos a data structure for I/O based on the standard of JSON.
Definition: kratos_parameters.h:59
Definition: thermal_explicit_solver_strategy.h:23
KRATOS_CLASS_POINTER_DEFINITION(ThermalExplicitSolverStrategy)
REF: G. R. Cowper, GAUSSIAN QUADRATURE FORMULAS FOR TRIANGLES.
Definition: mesh_condition.cpp:21
safety_factor
Definition: edgebased_PureConvection.py:110