G+Smo
24.08.0
Geometry + Simulation Modules
|
A Biharmonic PDE.
This class describes a Biharmonic PDE, with an arbitrary right-hand side function.
It has an extra gsBoundaryConditions object since the biharmonic has two essential (Dirichlet) and two natural (Neumann). The second gsBoundaryConditions contains the second kind of BC.
The first kind of BCs Dirichlet: Enforce \(v = 0 \) on the boundary Neumann: Add \( (g,v)_\Gamma \) on the right-hand side, where \(g = -\nabla \Delta u \cdot \mathbf{n}\)
The second kind of BCs Dirichlet: Enforce \( \nabla v \cdot \mathbf{n} = 0 \) on the boundary Neumann: Add \( (g,\nabla v \cdot \mathbf{n})_\Gamma \) on the right-hand side, where \(g = \Delta u \)
Public Member Functions | |
gsBoundaryConditions< T > & | boundaryConditions () |
Returns a reference to the Pde boundary conditions. More... | |
GISMO_DEPRECATED short_t | dim () const |
returns the dimension of the domain | |
gsMultiPatch< T > & | domain () |
Returns a reference to the Pde domain. More... | |
GISMO_DEPRECATED int | fieldDim (index_t field_id=0) |
gives the dimension of the i-th field it returns 1 for scalar fields, 2 for 2d vectors field etc. More... | |
gsBiharmonicPde (const gsMultiPatch< T > &domain, const gsBoundaryConditions< T > &bc1, const gsBoundaryConditions< T > &bc2, const gsPiecewiseFunction< T > &rhs) | |
Constructor. | |
virtual int | numRhs () const |
gives the number of rhs functions of the PDEs | |
int | numUnknowns () const |
Gives the number of unknown fields of the PDEs. | |
std::ostream & | print (std::ostream &os) const |
Prints the object as a string. | |
virtual gsPde< T > * | restrictToPatch (unsigned) const |
restrictToPatch creats a new PDE object for a single patch np. More... | |
const gsVector< unsigned > & | unknownDim () const |
Gives the vector of dimensions of the unknowns. | |
Protected Attributes | |
gsBoundaryConditions< T > | m_boundary_conditions |
Boundary conditions. | |
gsBoundaryConditions< T > | m_boundary_conditions_second |
Boundary conditions of the second kind. | |
gsMultiPatch< T > | m_domain |
Computational domain. | |
gsVector< unsigned > | m_unknownDim |
Description of the unknown fields: for each one the target dimension. | |
|
inlineinherited |
Returns a reference to the Pde boundary conditions.
There is also a const version returning a const reference.
|
inlineinherited |
Returns a reference to the Pde domain.
There is also a const version returning a const reference.
|
inlineinherited |
gives the dimension of the i-th field it returns 1 for scalar fields, 2 for 2d vectors field etc.
field_id | the field index |
|
inlinevirtualinherited |
restrictToPatch creats a new PDE object for a single patch np.
np | the patch index |
Reimplemented in gsPoissonPde< T >.