Linear form. More...

#include <lform.hh>

Inheritance diagram for bem::Neumann:
concepts::LinearForm< concepts::Real >

Public Member Functions

uint gauss () const
 
 Neumann (concepts::Formula< Real > const &fx, concepts::Formula< Real > const &fy, concepts::Formula< Real > const &fz, uint gauss=0)
 Constructor. More...
 
void operator() (const concepts::Element< concepts::Real > &elm, concepts::ElementMatrix< concepts::Real > &em)
 Computes the element load vector. More...
 
virtual void operator() (const Element< typename Realtype< concepts::Real >::type > &elm, ElementMatrix< concepts::Real > &em) const=0
 Computes the element contribution to the function. More...
 
void operator() (const Linear3d000< concepts::Real > &elm, concepts::ElementMatrix< concepts::Real > &em)
 

Protected Member Functions

virtual std::ostream & info (std::ostream &os) const
 

Private Attributes

uint dim_
 
std::unique_ptr< const concepts::Formula< Real > > frmx_
 Formula. More...
 
std::unique_ptr< const concepts::Formula< Real > > frmy_
 
std::unique_ptr< const concepts::Formula< Real > > frmz_
 
uint gauss_
 Number of Gauss points for the quadrature. More...
 

Detailed Description

Linear form.

This linear form computes

\[ \int_K \frac{\partial}{\partial n}f v \, dx. \]

Definition at line 312 of file lform.hh.

Constructor & Destructor Documentation

◆ Neumann()

bem::Neumann::Neumann ( concepts::Formula< Real > const &  fx,
concepts::Formula< Real > const &  fy,
concepts::Formula< Real > const &  fz,
uint  gauss = 0 
)

Constructor.

Parses the formula.

Parameters
formulaThe formula for the the $x$ component of the gradient
formulaThe formula for the the $y$ component of the gradient
formulaThe formula for the the $z$ component of the gradient
gaussNumber of gauss points, defaults to 0.

Member Function Documentation

◆ gauss()

uint bem::Neumann::gauss ( ) const
inline

Definition at line 335 of file lform.hh.

◆ info()

virtual std::ostream& concepts::LinearForm< concepts::Real , typename Realtype<concepts::Real >::type >::info ( std::ostream &  os) const
protectedvirtualinherited

◆ operator()() [1/3]

void bem::Neumann::operator() ( const concepts::Element< concepts::Real > &  elm,
concepts::ElementMatrix< concepts::Real > &  em 
)

Computes the element load vector.

As for the computation of an element stiffness matrix, there are the loops over all quadrature points and the loops over all shape functions.

Exceptions
MissingFeature
Parameters
elmThe element for which the load vector should be computed.
emThe load vector

◆ operator()() [2/3]

virtual void concepts::LinearForm< concepts::Real , typename Realtype<concepts::Real >::type >::operator() ( const Element< G > &  elm,
ElementMatrix< F > &  em 
) const
pure virtualinherited

Computes the element contribution to the function.

Parameters
elmElement on which the computations should be performed
emThe local matrix

◆ operator()() [3/3]

void bem::Neumann::operator() ( const Linear3d000< concepts::Real > &  elm,
concepts::ElementMatrix< concepts::Real > &  em 
)

Member Data Documentation

◆ dim_

uint bem::Neumann::dim_
private

Definition at line 339 of file lform.hh.

◆ frmx_

std::unique_ptr<const concepts::Formula<Real> > bem::Neumann::frmx_
private

Formula.

Definition at line 342 of file lform.hh.

◆ frmy_

std::unique_ptr<const concepts::Formula<Real> > bem::Neumann::frmy_
private

Definition at line 342 of file lform.hh.

◆ frmz_

std::unique_ptr<const concepts::Formula<Real> > bem::Neumann::frmz_
private

Definition at line 342 of file lform.hh.

◆ gauss_

uint bem::Neumann::gauss_
private

Number of Gauss points for the quadrature.

Definition at line 345 of file lform.hh.


The documentation for this class was generated from the following file:
Page URL: http://wiki.math.ethz.ch/bin/view/Concepts/WebHome
21 August 2020
© 2020 Eidgenössische Technische Hochschule Zürich