G+Smo  23.12.0
Geometry + Simulation Modules
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
gsVisitorNeumann< T > Class Template Reference

Detailed Description

template<class T>
class gismo::gsVisitorNeumann< T >

Implementation of a Neumann BC for elliptic assemblers.

The visior realizes the Neumann BC

\[ \nabla u \cdot \mathbf{n} = g_N \]

by adding the following term to the linear form:

\[ ( g_N, v )_{\Gamma_N}, \]

where \( \Gamma_N \) is the Neumann boundary.

+ Collaboration diagram for gsVisitorNeumann< T >:

Public Member Functions

void assemble (gsDomainIterator< T > &, const gsVector< T > &quWeights)
 Assemble on element.
 
void evaluate (const gsBasis< T > &basis, const gsGeometry< T > &geo, const gsMatrix< T > &quNodes)
 Evaluate on element.
 
 gsVisitorNeumann (const gsPde< T > &pde, const boundary_condition< T > &bc)
 Constructor. More...
 
 gsVisitorNeumann (const gsFunction< T > &neudata, boxSide s)
 Constructor. More...
 
void initialize (const gsBasis< T > &basis, gsQuadRule< T > &rule)
 Initialize.
 
void initialize (const gsBasis< T > &basis, const index_t, const gsOptionList &options, gsQuadRule< T > &rule)
 Initialize.
 
void localToGlobal (const index_t patchIndex, const std::vector< gsMatrix< T > > &, gsSparseSystem< T > &system)
 Adds the contributions to the sparse system.
 
void localToGlobal (const gsDofMapper &mapper, const gsMatrix< T > &eliminatedDofs, const index_t patchIndex, gsSparseMatrix< T > &sysMatrix, gsMatrix< T > &rhsMatrix)
 Adds the contributions to the sparse system.
 

Constructor & Destructor Documentation

gsVisitorNeumann ( const gsPde< T > &  pde,
const boundary_condition< T > &  bc 
)
inline

Constructor.

Parameters
pdeReference to gsPde object (is ignored)
bcThe boundary condition to be realized
gsVisitorNeumann ( const gsFunction< T > &  neudata,
boxSide  s 
)
inline

Constructor.

Parameters
neudataNeumann boundary function
sSide of the geometry where Neumann BC is prescribed