hp2Dedge::DirichletIdentity Class Referenceabstract

Linear form in 2D for coping the Dirichlet boundary for Identity bilinearform. More...

#include <boundaries.hh>

Inheritance diagram for hp2Dedge::DirichletIdentity:
concepts::LinearForm< Real >

Public Member Functions

 DirichletIdentity (DirichletCoefficients *dc=0)
 Constructor. More...
 
void operator() (const concepts::Element< Real > &elm, concepts::ElementMatrix< Real > &em) const
 Computes the element load vector. More...
 
virtual void operator() (const Element< typename Realtype< Real >::type > &elm, ElementMatrix< Real > &em) const=0
 Computes the element contribution to the function. More...
 
void operator() (const Quad<> &elm, concepts::ElementMatrix< Real > &em) const
 
virtual ~DirichletIdentity ()
 

Protected Member Functions

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

Private Attributes

DirichletCoefficientsdc_
 Reference to the local coefficients, which fullfill bc. More...
 
concepts::Array< Real > function_
 
concepts::Array< Real > jacobian_
 Intermediate data for element matrix computation. More...
 
concepts::Array< concepts::MapReal2djacobianInv_
 
concepts::Array< Real > tmp_
 

Detailed Description

Linear form in 2D for coping the Dirichlet boundary for Identity bilinearform.

This linear form computes for elements with edges lying on the boundary

\[ \int_K \vec{f} \vec{v} \, dx\]

where

\[\vec{t} = \vec{n}^\bot = {-n_y \choose n_x} \]

is the tangential vector,

\[\vec{n}\]

the outer normal vector, and

\[g\]

the tangential component of the Neumann boundary.

Currently only on quadrilaterals.

Author
Kersten Schmidt, 2004

Definition at line 118 of file boundaries.hh.

Constructor & Destructor Documentation

◆ DirichletIdentity()

hp2Dedge::DirichletIdentity::DirichletIdentity ( DirichletCoefficients dc = 0)

Constructor.

Parameters
dcLocal coefficients, which fullfill bc

◆ ~DirichletIdentity()

virtual hp2Dedge::DirichletIdentity::~DirichletIdentity ( )
virtual

Member Function Documentation

◆ info()

virtual std::ostream& hp2Dedge::DirichletIdentity::info ( std::ostream &  os) const
protectedvirtual

Reimplemented from concepts::LinearForm< Real >.

◆ operator()() [1/3]

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

Computes the element load vector.

There are the loops over all quadrature points and the loops over all shape functions.

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

◆ operator()() [2/3]

virtual void concepts::LinearForm< Real , typename Realtype<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 hp2Dedge::DirichletIdentity::operator() ( const Quad<> &  elm,
concepts::ElementMatrix< Real > &  em 
) const

Member Data Documentation

◆ dc_

DirichletCoefficients* hp2Dedge::DirichletIdentity::dc_
private

Reference to the local coefficients, which fullfill bc.

Definition at line 144 of file boundaries.hh.

◆ function_

concepts::Array<Real> hp2Dedge::DirichletIdentity::function_
private

Definition at line 140 of file boundaries.hh.

◆ jacobian_

concepts::Array<Real> hp2Dedge::DirichletIdentity::jacobian_
mutableprivate

Intermediate data for element matrix computation.

Definition at line 140 of file boundaries.hh.

◆ jacobianInv_

concepts::Array<concepts::MapReal2d> hp2Dedge::DirichletIdentity::jacobianInv_
private

Definition at line 141 of file boundaries.hh.

◆ tmp_

concepts::Array<Real> hp2Dedge::DirichletIdentity::tmp_
private

Definition at line 142 of file boundaries.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