G+Smo  25.01.0
Geometry + Simulation Modules
 
Loading...
Searching...
No Matches
gsEulerBernoulliBeamPde.h
1
2#pragma once
3
4#include <gsPde/gsPde.h>
5
6namespace gismo
7{
8
9
19template<class T=real_t>
21{
22private:
24 using gsPde<T>::m_unknownDim;
25 using gsPde<T>::m_solution;
26
27public:
31 gsFunction<T> * rhs )
32 : gsPde<T>(domain,bc), m_rhs(rhs)
33 {
34 m_unknownDim.push_back(1);
35 }
36
40 const gsFunction<T> & rhs )
41 : gsPde<T>(domain,bc), m_rhs(rhs.clone())
42 {
43 m_unknownDim.push_back(1);
44 }
45 // COMPATIBILITY CONSTRUCTOR, DO NOT USE
47 : m_rhs(rhs)
48 {
49 m_unknownDim.push_back(1);
50 }
51
52
53 gsFunction<T> * rhs() const { return m_rhs; }
54
56 std::ostream &print(std::ostream &os) const
57 {
58 os << "Euler-Bernoulli beam equation\n";
59 return os;
60 }
61
62private:
63
64 gsFunction<T> *m_rhs;
65
66}; // class gsEulerBernoulliBeamPde
67
68} // namespace gismo
Class containing a set of boundary conditions.
Definition gsBoundaryConditions.h:342
The differential equation describing the linear Euler-Bernoulli beam.
Definition gsEulerBernoulliBeamPde.h:21
std::ostream & print(std::ostream &os) const
Prints the object as a string.
Definition gsEulerBernoulliBeamPde.h:56
uPtr clone()
Clone methode. Produceds a deep copy inside a uPtr.
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
Abstract class representing a PDE (partial differential equation).
Definition gsPde.h:44
gsMultiPatch< T > & domain()
Returns a reference to the Pde domain.
Definition gsPde.h:66
gsVector< unsigned > m_unknownDim
Description of the unknown fields: for each one the target dimension.
Definition gsPde.h:162
Base class of descriptions of a PDE problem.
The G+Smo namespace, containing all definitions for the library.