G+Smo  25.01.0
Geometry + Simulation Modules
 
Loading...
Searching...
No Matches
gsNavStokesPde.h
Go to the documentation of this file.
1
12#pragma once
13
14#include <gsPde/gsStokesPde.h>
15
16namespace gismo
17{
18
31template<class T>
32class gsNavStokesPde : public gsStokesPde<T>
33{
34
35protected:
36
37 typedef gsStokesPde<T> Base;
38
39protected: // *** Base class members ***
40
41 using Base::m_viscosity;
42 using Base::m_force;
43 using Base::m_source;
44
45
46public: // *** Constructor/destructor ***
47
48 gsNavStokesPde() { }
49
53 gsFunction<T>* force,
54 const T viscosity)
55 : gsStokesPde<T>(domain, bc, force, NULL, viscosity)
56 { }
57
61 gsFunction<T>* force,
62 gsFunction<T>* source,
63 const T viscosity)
64 : gsStokesPde<T>(domain, bc, force, source, viscosity)
65 { }
66
68 {
69 }
70
71public: // *** Member functions ***
72
74 virtual std::ostream &print(std::ostream &os) const
75 {
76 os << "Incompressible Navier-Stokes equation:\n"
77 <<"u\u00B7\u2207u-\u03BD\u0394u-\u2207p = f,\n"
78 <<" \u2207\u00B7u=0\n"
79 <<"with:\n";
80 os << "viscosity = " << m_viscosity << ".\n";
81 if ( m_force )
82 os<<"Force function f = "<< *m_force <<".\n";
83 if ( m_source )
84 os<<"Source function g = "<< *m_source <<".\n";
85 return os;
86 }
87
88
89}; // class gsNavStokesPde
90
91} // namespace gismo
Class containing a set of boundary conditions.
Definition gsBoundaryConditions.h:342
A function from a n-dimensional domain to an m-dimensional image.
Definition gsFunction.h:60
Container class for a set of geometry patches and their topology, that is, the interface connections ...
Definition gsMultiPatch.h:100
An incompressible Navier-Stokes PDE.
Definition gsNavStokesPde.h:33
virtual std::ostream & print(std::ostream &os) const
Print a short description of the PDE.
Definition gsNavStokesPde.h:74
gsMultiPatch< T > & domain()
Returns a reference to the Pde domain.
Definition gsPde.h:66
A stationary Stokes PDE.
Definition gsStokesPde.h:24
The G+Smo namespace, containing all definitions for the library.