hp2D::BuildH1EdgeTColumns< F > Class Template Referenceabstract

Responsible to build the T columns belonging to edge degrees of freedom in a H1 conforming space with shape functions in tensor product structure. More...

#include <buildH1TColumns.hh>

Inheritance diagram for hp2D::BuildH1EdgeTColumns< F >:
hp2D::BuildTColumnsBase< concepts::Real > concepts::BuildTColumnsBase< concepts::Real, SpacePreBuilder >

Public Types

typedef concepts::SpaceHelper< F, SpacePreBuilderSpaceHelper
 

Public Member Functions

 BuildH1EdgeTColumns ()
 Default constructor. More...
 
 BuildH1EdgeTColumns (SpaceHelper &spc)
 Constructor. More...
 
virtual BuildH1EdgeTColumns< F > * clone (SpaceHelper *spc=0) const
 
virtual BuildTColumnsBase< concepts::Real > * clone (SpaceHelper *spc=0) const=0
 
virtual BuildTColumnsBase< concepts::Real, SpacePreBuilder > * clone (SpaceHelper< concepts::Real, SpacePreBuilder > *spc=0) const=0
 Virtual copy constructor with a twist. More...
 
virtual void operator() (const concepts::Connector2 &cntr, concepts::TColumn< concepts::Real > *&T1) const=0
 Builds the degrees of freedom for a quad. More...
 
virtual void operator() (const concepts::Connector2 &cntr, concepts::TColumn< F > *&T1) const
 Builds the degrees of freedom. More...
 
SpacePreBuilderprebuild () const
 Returns the space pre builder. More...
 
SpaceHelper< concepts::Real, SpacePreBuilder > & spc () const
 Returns pointer to space helper class. More...
 
virtual ~BuildH1EdgeTColumns ()
 

Protected Member Functions

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

Protected Attributes

SpaceHelper< concepts::Real, SpacePreBuilder > * spc_
 Space to build the degrees of freedom from. More...
 

Detailed Description

template<class F = concepts::Real>
class hp2D::BuildH1EdgeTColumns< F >

Responsible to build the T columns belonging to edge degrees of freedom in a H1 conforming space with shape functions in tensor product structure.

A call to the application operator builds the T columns for the 'member of space' edges of a given quad. They and the appropiate polynomial degree are given by a space pre builder class, which is part of a space helper class.

If you want to change the way this is done, derive from this class and overwrite the application operator.

This class is registered as the default strategy in space of type hpAdaptiveSpaceH1 to build the edge degrees of freedom. Giving the space a different class through the use of hpAdaptiveSpaceH1::buildEdgeDofs, you can change that behaviour.

Author
Philipp Frauenfelder, 2004

Definition at line 88 of file buildH1TColumns.hh.

Member Typedef Documentation

◆ SpaceHelper

template<class F = concepts::Real>
typedef concepts::SpaceHelper<F, SpacePreBuilder> hp2D::BuildH1EdgeTColumns< F >::SpaceHelper

Definition at line 90 of file buildH1TColumns.hh.

Constructor & Destructor Documentation

◆ BuildH1EdgeTColumns() [1/2]

template<class F = concepts::Real>
hp2D::BuildH1EdgeTColumns< F >::BuildH1EdgeTColumns ( )
inline

Default constructor.

Definition at line 92 of file buildH1TColumns.hh.

◆ BuildH1EdgeTColumns() [2/2]

template<class F = concepts::Real>
hp2D::BuildH1EdgeTColumns< F >::BuildH1EdgeTColumns ( SpaceHelper spc)
inline

Constructor.

Parameters
spcSpace Helper with Space Pre Builder (mesh and distribution of degrees of freedom), boundary condition and the running index

Definition at line 99 of file buildH1TColumns.hh.

◆ ~BuildH1EdgeTColumns()

template<class F = concepts::Real>
virtual hp2D::BuildH1EdgeTColumns< F >::~BuildH1EdgeTColumns ( )
inlinevirtual

Definition at line 101 of file buildH1TColumns.hh.

Member Function Documentation

◆ clone() [1/3]

template<class F = concepts::Real>
virtual BuildH1EdgeTColumns<F>* hp2D::BuildH1EdgeTColumns< F >::clone ( SpaceHelper spc = 0) const
virtual

◆ clone() [2/3]

◆ clone() [3/3]

Virtual copy constructor with a twist.

If a copy of a space helper is created, the strategies to build the degrees of freedom of the copy should also reference the copy and not the initial space helper. This is done by giving the argument spc to clone.

Parameters
spcSpace helper class to work on for the return value. If set to 0, spc_ is used.

◆ info()

template<class F = concepts::Real>
virtual std::ostream& hp2D::BuildH1EdgeTColumns< F >::info ( std::ostream &  os) const
protectedvirtual

◆ operator()() [1/2]

virtual void hp2D::BuildTColumnsBase< concepts::Real >::operator() ( const concepts::Connector2 cntr,
concepts::TColumn< concepts::Real > *&  T1 
) const
pure virtualinherited

Builds the degrees of freedom for a quad.

Parameters
cntrQuad which dofs should be considered
T1New T columns created for the degrees of freedom

Implemented in hp2D::BuildL2InnerTColumns< concepts::Real >, and hp2D::BuildH1InnerTColumns< concepts::Real >.

◆ operator()() [2/2]

template<class F = concepts::Real>
virtual void hp2D::BuildH1EdgeTColumns< F >::operator() ( const concepts::Connector2 cntr,
concepts::TColumn< F > *&  T1 
) const
virtual

Builds the degrees of freedom.

Parameters
cntrQuad which dofs should be considered
T1New T columns created for the degrees of freedom

◆ prebuild()

Returns the space pre builder.

Definition at line 258 of file spacePreBuilder.hh.

◆ spc()

Returns pointer to space helper class.

Definition at line 256 of file spacePreBuilder.hh.

Member Data Documentation

◆ spc_

Space to build the degrees of freedom from.

Definition at line 273 of file spacePreBuilder.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