Class documentation of Concepts

Loading...
Searching...
No Matches
linearFEM::Laplace1d Class Referenceabstract

#include <bilinearForm1D.hh>

Inheritance diagram for linearFEM::Laplace1d:
concepts::BilinearForm< Real > concepts::Cloneable concepts::OutputOperator

Public Member Functions

virtual void operator() (const concepts::Element< Real > &elmX, const concepts::Element< Real > &elmY, concepts::ElementMatrix< Real > &em) const
 
virtual Laplace1dclone () const
 
virtual void operator() (const Element< typename Realtype< Real >::type > &elmX, const Element< typename Realtype< Real >::type > &elmY, ElementMatrix< Real > &em) const=0
 
virtual void operator() (const Element< typename Realtype< Real >::type > &elmX, const Element< typename Realtype< Real >::type > &elmY, ElementMatrix< Real > &em, const ElementPair< typename Realtype< Real >::type > &ep) const
 

Protected Member Functions

virtual std::ostream & info (std::ostream &os) const
 Returns information in an output stream.
 

Detailed Description

Discrete equivalent of the Laplacian in 1D for linear FEM. his bilinear form computes the stiffness matrix resulting from the discretization of the Laplacian (with integration by parts):

\[ \int_K \nabla \phi_i \cdot \nabla \phi_j \, dx \]

for the element shape functions $\phi_i$.

Author
Philipp Frauenfelder, 2002
Examples
linearDG1d.cc, linearFEM1d-simple.cc, and linearFEM1d.cc.

Definition at line 32 of file bilinearForm1D.hh.

Member Function Documentation

◆ clone()

virtual Laplace1d * linearFEM::Laplace1d::clone ( ) const
inlinevirtual

Virtual constructor. Returns a pointer to a copy of itself. The caller is responsible to destroy this copy.

Implements concepts::BilinearForm< Real >.

Definition at line 37 of file bilinearForm1D.hh.

◆ info()

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

Returns information in an output stream.

Reimplemented from concepts::OutputOperator.

Reimplemented in hp2D::DivDiv< Weight >, hp2D::RotRot, hp2Dedge::Rotuv, hp2Dedge::EdgeIdentity, hp3D::DivDiv< Weight >, hp3D::Hook, and hp3D::RotRot.

◆ operator()() [1/2]

virtual void concepts::BilinearForm< Real , typename Realtype<Real >::type >::operator() ( const Element< typename Realtype<Real >::type > &  elmX,
const Element< typename Realtype<Real >::type > &  elmY,
ElementMatrix< Real > &  em 
) const
pure virtualinherited

Evaluates the bilinear form for all shape functions on elmX and elmY and stores the result in the matrix em.

Postcondition
The returned matrix em has the correct size.
Parameters
elmXLeft element (test functions)
elmYRight element (trial functions)
emReturn element matrix

◆ operator()() [2/2]

virtual void concepts::BilinearForm< Real , typename Realtype<Real >::type >::operator() ( const Element< typename Realtype<Real >::type > &  elmX,
const Element< typename Realtype<Real >::type > &  elmY,
ElementMatrix< Real > &  em,
const ElementPair< typename Realtype<Real >::type > &  ep 
) const
inlinevirtualinherited

Evaluates the bilinear form for all shape functions on elmX and elmY and stores the result in the matrix em. If this method is not reimplemented in a derived class, the default behaviour is to call the application operator without ep.

Postcondition
The returned matrix em has the correct size.
Parameters
elmXLeft element
elmYRight element
emReturn element matrix
epElement pair holding more information on the pair elmX and elmY

Definition at line 57 of file bilinearForm.hh.


The documentation for this class was generated from the following file: