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.
linear_solvers_application.h
Go to the documentation of this file.
1 /* KRATOS _ _ ____ _
2 // | | (_)_ __ ___ __ _ _ __/ ___| ___ | |_ _____ _ __ ___
3 // | | | | '_ \ / _ \/ _` | '__\___ \ / _ \| \ \ / / _ \ '__/ __|
4 // | |___| | | | | __/ (_| | | ___) | (_) | |\ V / __/ | \__ |
5 // |_____|_|_| |_|\___|\__,_|_| |____/ \___/|_| \_/ \___|_| |___/ Application
6 //
7 // Author: Thomas Oberbichler
8 */
9 
10 #if !defined(KRATOS_LINEARSOLVERS_APPLICATION_H_INCLUDED)
11 #define KRATOS_LINEARSOLVERS_APPLICATION_H_INCLUDED
12 
13 // System includes
14 
15 // External includes
16 
17 // Project includes
18 #include "includes/define.h"
20 
21 namespace Kratos
22 {
23 
26 
30 
34 
38 
42 
43 class KRATOS_API(LINEARSOLVERS_APPLICATION) KratosLinearSolversApplication : public KratosApplication
44 {
45 public:
48 
51 
55 
57  KratosLinearSolversApplication() : KratosApplication("LinearSolversApplication") {}
58 
61 
65 
69 
70  void Register() override;
71 
75 
79 
83 
85  std::string Info() const override
86  {
87  return "KratosLinearSolversApplication";
88  }
89 
91  void PrintInfo(std::ostream &rOStream) const override
92  {
93  rOStream << Info();
94  PrintData(rOStream);
95  }
96 
98  void PrintData(std::ostream &rOStream) const override
99  {
100  KRATOS_WATCH("in KratosLinearSolversApplication application");
102  rOStream << "Variables:" << std::endl;
104  rOStream << std::endl;
105  rOStream << "Elements:" << std::endl;
106  KratosComponents<Element>().PrintData(rOStream);
107  rOStream << std::endl;
108  rOStream << "Conditions:" << std::endl;
109  KratosComponents<Condition>().PrintData(rOStream);
110  }
111 
115 
117 
118  protected:
121 
125 
129 
133 
137 
141 
145 
147 
148  private:
151 
155 
159 
163 
167 
171 
175 
178 
181 
183 
184 }; // class KratosLinearSolversApplication
185 
187 
190 
194 
196 
197 } // namespace Kratos
198 
199 #endif // defined(KRATOS_LINEARSOLVERS_APPLICATION_H_INCLUDED)
PeriodicInterfaceProcess & operator=(const PeriodicInterfaceProcess &)=delete
std::string Info() const override
Turn back information as a string.
Definition: periodic_interface_process.hpp:93
This class defines the interface with kernel for all applications in Kratos.
Definition: kratos_application.h:91
Definition: kratos_components.h:253
virtual void PrintData(std::ostream &rOStream) const
Print object's data.
Definition: kratos_components.h:403
KratosComponents class encapsulates a lookup table for a family of classes in a generic way.
Definition: kratos_components.h:49
Definition: linear_solvers_application.h:44
~KratosLinearSolversApplication() override
Destructor.
Definition: linear_solvers_application.h:60
void PrintData(std::ostream &rOStream) const override
Print object's data.
Definition: linear_solvers_application.h:98
void PrintInfo(std::ostream &rOStream) const override
Print information about this object.
Definition: linear_solvers_application.h:91
std::string Info() const override
Turn back information as a string.
Definition: linear_solvers_application.h:85
KRATOS_CLASS_POINTER_DEFINITION(KratosLinearSolversApplication)
Pointer definition of KratosLinearSolversApplication.
KratosLinearSolversApplication()
Default constructor.
Definition: linear_solvers_application.h:57
#define KRATOS_WATCH(variable)
Definition: define.h:806
REF: G. R. Cowper, GAUSSIAN QUADRATURE FORMULAS FOR TRIANGLES.
Definition: mesh_condition.cpp:21
KRATOS_API_EXTERN template class KratosComponents< Condition >
Definition: condition.h:1191
KRATOS_API_EXTERN template class KratosComponents< Element >
Definition: element.h:1240