Home | Doxygen Documentation | Tutorials | Developer Tools (restricted)

Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes
hp3D::ZeroTangentialValue< F > Class Template Reference

Sets the outer product of the coefficients and the normal vector to zero in every node on an edge with chosen attribute. More...

#include <zerotangential.hh>

Inheritance diagram for hp3D::ZeroTangentialValue< F >:
Inheritance graph
[legend]
Collaboration diagram for hp3D::ZeroTangentialValue< F >:
Collaboration graph
[legend]

List of all members.

Public Member Functions

virtual void assembly (const concepts::Element< F > &e, concepts::TColumn< F > *&t, uint &n, uint &j, uint length)
 Returns the TColumns t for this constraint in element e.
virtual
constraints::AnalyticalConstraint
< F > * 
clone () const
 Creates clone of itself and returns it.
virtual void lengthT (const concepts::Element< F > &e, uint &length)
 Computes the length of the TColumn.
virtual void localMatrix (concepts::ElementMatrix< F > &em, uint &j, const constraints::Element< F > &elm) const
 Fills the entries in the local constraints matrix em.
virtual void localVector (concepts::ElementMatrix< F > &em, uint &j, const constraints::Element< F > &elm) const
 Fills the entries in the local constraints vector em.
 ZeroTangentialValue (concepts::Attribute a)
 Constructor.
 ZeroTangentialValue (const ZeroTangentialValue &z)

Protected Member Functions

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

Private Member Functions

const concepts::Connector3assertions_ (const concepts::Element< F > &e) const
void fillEM_ (const uint ll[3], const ushort p[3], const uint offset, uint &j, const concepts::Real3d e, concepts::ElementMatrix< F > &em) const

Private Attributes

concepts::Attribute attr_
 Topological entities with this attribute are considered.
concepts::DynArray< uint > ctrl0_
 Vertices should only be considered once, store it here.
concepts::DynArray< uint > ctrl1_
 Edges should only be considered once, store it here.
const HexahedronscalElm_

Detailed Description

template<typename F>
class hp3D::ZeroTangentialValue< F >

Sets the outer product of the coefficients and the normal vector to zero in every node on an edge with chosen attribute.

Bug:
Does not work.
Author:
Philipp Frauenfelder, 2002

Definition at line 22 of file zerotangential.hh.


Constructor & Destructor Documentation

template<typename F >
hp3D::ZeroTangentialValue< F >::ZeroTangentialValue ( concepts::Attribute  a) [inline]

Constructor.

Parameters:
aAttribute to identify edges

Definition at line 27 of file zerotangential.hh.

template<typename F >
hp3D::ZeroTangentialValue< F >::ZeroTangentialValue ( const ZeroTangentialValue< F > &  z) [inline]

Definition at line 30 of file zerotangential.hh.


Member Function Documentation

template<typename F >
virtual void hp3D::ZeroTangentialValue< F >::assembly ( const concepts::Element< F > &  e,
concepts::TColumn< F > *&  t,
uint &  n,
uint &  j,
uint  length 
) [virtual]

Returns the TColumns t for this constraint in element e.

n contains the next free global index in the space of constraints.

When treating dof by dof constraints, n should be increased after the creation of the TColumn (which gets as global index the old value of n).

When treating global constraints such as a zero mean value, n should be increased only once and all local constraints have to give this index to idx in the constructor of the new TColumn.

A similar idea stands behind j: it counts the local constraints which have already been treated. It therefore has to be increased after treating a constraint. j can be taken as index for the created TColumn to fill in the correct entry.

Parameters:
eElement of the computational space
tList of TColumns
nNext free global index in the space of constraints. n is increased if a global constraint is hit for the first time.
jNext free local index for the constraints in this element. j is increased accordingly when treating constraints in this element.
lengthLength of TColumn
See also:
concepts::TColumn

Implements constraints::AnalyticalConstraint< F >.

template<typename F >
const concepts::Connector3& hp3D::ZeroTangentialValue< F >::assertions_ ( const concepts::Element< F > &  e) const [private]
template<typename F >
virtual constraints::AnalyticalConstraint<F>* hp3D::ZeroTangentialValue< F >::clone ( ) const [virtual]

Creates clone of itself and returns it.

This clone function implements a virtual constructor (cf. Stroustrup p. 424).

Implements constraints::AnalyticalConstraint< F >.

template<typename F >
void hp3D::ZeroTangentialValue< F >::fillEM_ ( const uint  ll[3],
const ushort  p[3],
const uint  offset,
uint &  j,
const concepts::Real3d  e,
concepts::ElementMatrix< F > &  em 
) const [private]
template<typename F >
virtual std::ostream& hp3D::ZeroTangentialValue< F >::info ( std::ostream &  os) const [protected, virtual]

Returns information in an output stream.

Reimplemented from concepts::OutputOperator.

template<typename F >
virtual void hp3D::ZeroTangentialValue< F >::lengthT ( const concepts::Element< F > &  e,
uint &  length 
) [virtual]

Computes the length of the TColumn.

This method decides if this constraint is active on element e and how many local equations it generates. This is added to length.

Implements constraints::AnalyticalConstraint< F >.

template<typename F >
virtual void hp3D::ZeroTangentialValue< F >::localMatrix ( concepts::ElementMatrix< F > &  em,
uint &  j,
const constraints::Element< F > &  elm 
) const [virtual]

Fills the entries in the local constraints matrix em.

Parameters:
emLocal constraints matrix. Has to be filled. The rows correspond to local dofs, the columns correspond to the equations this constraints creates in this element.
jLocal number of the constraints. Everytime, when a active constraint on the element is treated, j has to be increased by the number of equations this constraint created.
elmElement of the constraints space

Implements constraints::AnalyticalConstraint< F >.

template<typename F >
virtual void hp3D::ZeroTangentialValue< F >::localVector ( concepts::ElementMatrix< F > &  em,
uint &  j,
const constraints::Element< F > &  elm 
) const [virtual]

Fills the entries in the local constraints vector em.

The parameters have the same meaning as in localMatrix.

Implements constraints::AnalyticalConstraint< F >.


Member Data Documentation

template<typename F >
concepts::Attribute hp3D::ZeroTangentialValue< F >::attr_ [private]

Topological entities with this attribute are considered.

Definition at line 46 of file zerotangential.hh.

template<typename F >
concepts::DynArray<uint> hp3D::ZeroTangentialValue< F >::ctrl0_ [private]

Vertices should only be considered once, store it here.

Definition at line 51 of file zerotangential.hh.

template<typename F >
concepts::DynArray<uint> hp3D::ZeroTangentialValue< F >::ctrl1_ [private]

Edges should only be considered once, store it here.

Definition at line 53 of file zerotangential.hh.

template<typename F >
const Hexahedron* hp3D::ZeroTangentialValue< F >::scalElm_ [mutable, private]

Definition at line 47 of file zerotangential.hh.


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

Home | Doxygen Documentation | Tutorials | Developer Tools (restricted)