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

Public Types | Public Member Functions | Protected Member Functions | Private Attributes
concepts::Boundary Class Reference

Class to describe an element of the boundary. More...

#include <boundary.hh>

Inheritance diagram for concepts::Boundary:
Inheritance graph
[legend]
Collaboration diagram for concepts::Boundary:
Collaboration graph
[legend]

List of all members.

Public Types

enum  boundaryTypes {
  FREE = 0, DIRICHLET, NEUMANN, CONNECT,
  MAX_TYPE
}
 The different boundary condition types. More...

Public Member Functions

 Boundary ()
 Default constructor.
 Boundary (const enum boundaryTypes type)
 Constructor.
 Boundary (const enum boundaryTypes type, const char *frm)
 Constructor.
 Boundary (const Boundary &bnd)
 Copy constructor.
 Boundary (const enum boundaryTypes type, const Formula< Real > &frm)
 Constructor.
bool isNull ()
Real operator() (const Real3d &x, const Real t=0.0) const
 Application operator.
Real operator() (const Real x, const Real t=0.0) const
 Application operator.
Real operator() (const Real2d &x, const Real t=0.0) const
 Application operator.
virtual Boundaryoperator= (const Boundary &bnd)
 Assignment operator.
enum boundaryTypes type () const
 Returns the type of the boundary condition.
std::string typeStr () const
 Return the type of the boundary condition as output string.
virtual ~Boundary ()

Protected Member Functions

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

Private Attributes

std::auto_ptr< const Formula
< Real > > 
frm_
 The function of the boundary condition.
enum boundaryTypes type_
 Type of the boundary.

Detailed Description

Class to describe an element of the boundary.

A boundary has a type (Neumann, Dirichlet) and a function associated.

Boundary conditions of type Robin are not yet implemented.

It is possible to use this class in the following way:

Boundary(Boundary::NEUMANN, ParsedFormula("(x)"));

since the ParsedFormula is cloned (ie. it is copied) before the temporary object is destroyed.

Author:
Philipp Frauenfelder, 2000
Examples:

hpFEM2d-simple.cc, hpFEM2d.cc, hpFEM3d-EV.cc, inhomDirichletBCs.cc, inhomNeumannBCs.cc, linearDG1d.cc, linearFEM1d-simple.cc, and linearFEM1d.cc.

Definition at line 33 of file boundary.hh.


Member Enumeration Documentation

The different boundary condition types.

Enumerator:
FREE 
DIRICHLET 
NEUMANN 
CONNECT 
MAX_TYPE 

Definition at line 36 of file boundary.hh.


Constructor & Destructor Documentation

concepts::Boundary::Boundary ( )

Default constructor.

Initializes the type to FREE.

concepts::Boundary::Boundary ( const enum boundaryTypes  type)

Constructor.

The type of the boundary condition must be one of FREE, DIRICHLET, NEUMANN or CONNECT. In this constructor, no formula can be given. It is always evaluated to 0 by default.

concepts::Boundary::Boundary ( const enum boundaryTypes  type,
const Formula< Real > &  frm 
)

Constructor.

The type of the boundary condition must be one of FREE, DIRICHLET or NEUMANN.

Parameters:
typeBoundary type
frmFormula (can be a temporary object since it is copied)
concepts::Boundary::Boundary ( const enum boundaryTypes  type,
const char *  frm 
)

Constructor.

The type of the boundary condition must be one of FREE, DIRICHLET or NEUMANN. The formula can be given as a string which will be used to create a ParsedFormula.

Parameters:
typeBoundary type
frmFormula as a string
concepts::Boundary::Boundary ( const Boundary bnd)

Copy constructor.

virtual concepts::Boundary::~Boundary ( ) [virtual]

Member Function Documentation

virtual std::ostream& concepts::Boundary::info ( std::ostream &  os) const [protected, virtual]

Returns information in an output stream.

Reimplemented from concepts::OutputOperator.

bool concepts::Boundary::isNull ( ) [inline]

Definition at line 80 of file boundary.hh.

Real concepts::Boundary::operator() ( const Real3d x,
const Real  t = 0.0 
) const

Application operator.

Calculates the value of the boundary function at a specific point.

Real concepts::Boundary::operator() ( const Real  x,
const Real  t = 0.0 
) const

Application operator.

Calculates the value of the boundary function at a specific point.

Real concepts::Boundary::operator() ( const Real2d x,
const Real  t = 0.0 
) const

Application operator.

Calculates the value of the boundary function at a specific point.

virtual Boundary& concepts::Boundary::operator= ( const Boundary bnd) [virtual]

Assignment operator.

enum boundaryTypes concepts::Boundary::type ( ) const [inline]

Returns the type of the boundary condition.

Definition at line 72 of file boundary.hh.

std::string concepts::Boundary::typeStr ( ) const

Return the type of the boundary condition as output string.


Member Data Documentation

std::auto_ptr<const Formula<Real> > concepts::Boundary::frm_ [private]

The function of the boundary condition.

Definition at line 104 of file boundary.hh.

Type of the boundary.

Definition at line 102 of file boundary.hh.


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

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