Jive reference manual
List of all members | Public Member Functions | Protected Member Functions | Protected Attributes
jive::geom::StdBoundary Class Reference

#include <jive/geom/StdBoundary.h>

Inheritance diagram for jive::geom::StdBoundary:
Inheritance graph

Public Member Functions

 StdBoundary ()
 
 StdBoundary (const Matrix &xnodes, const Ref< StdShape > &xshape, const Ref< StdShape > &sshape)
 
 StdBoundary (const Ref< Self > &parent, const Matrix &xnodes)
 
virtual void readFrom (ObjectInput &in)
 
virtual void writeTo (ObjectOutput &out) const
 
virtual idx_t rank () const
 Returns the rank of this shape. More...
 
virtual idx_t shapeFuncCount () const
 
virtual String getGeometry () const
 
virtual idx_t vertexCount () const
 
virtual Matrix getVertexCoords () const
 
virtual bool containsPoint (const Vector &u) const
 Tests whether a point is located within this shape. More...
 
virtual bool clipPoint (const Vector &u) const
 
virtual void evalShapeFunctions (const Vector &f, const Vector &u) const
 Computes the shape functions in a given point. More...
 
virtual void evalShapeGradients (const Vector &f, const Matrix &g, const Vector &u) const
 
virtual void evalShapeGradGrads (const Vector &f, const Matrix &g, const Matrix &h, const Vector &u) const
 
virtual void * getExtByID (ExtensionID extID) const
 
virtual void mapBoundaryPoint (const Vector &v, const Vector &u) const
 
- Public Member Functions inherited from jive::geom::StdShape
virtual String name () const =0
 Returns the name of this shape. More...
 
virtual int nodeCount () const =0
 Returns the number of nodes attached to this shape. More...
 
virtual Matrix getNodeCoords () const =0
 Returns the local node coordinates. More...
 
virtual void evalShapeFunctions (const Matrix &h, const Matrix &u) const
 Computes the shape functions in multiple points within this shape. More...
 
virtual void evalShapeGradients (const Matrix &g, const Vector &u) const =0
 Computes the gradients of the shape functions in a specific point within this shape. More...
 
virtual void evalShapeGradients (const Cubix &g, const Matrix &u) const
 Computes the gradients of the shape functions in multiple points within this shape. More...
 

Protected Member Functions

virtual ~StdBoundary ()
 
- Protected Member Functions inherited from jive::geom::StdShape
 StdShape ()
 Constructs an empty shape object. More...
 
virtual ~StdShape ()
 Protected destructor to invalidate delete expressions. More...
 
- Protected Member Functions inherited from jem::io::Serializable
virtual ~Serializable ()
 
virtual void emitVtableFunc_ ()
 
- Protected Member Functions inherited from jem::Interface
virtual ~Interface ()
 Empty destructor. More...
 

Protected Attributes

Ref< Self > parent_
 
Ref< StdShapexshape_
 
Ref< StdShapesshape_
 
idx_t rank_
 
idx_t nodeCount_
 
idx_t funcCount_
 
Matrix xnodeCoords_
 
Vector xshapeFuncs_
 
Matrix xshapeGrads_
 
Matrix sshapeGrads_
 
Matrix xshapeGrads2_
 
Matrix sshapeGrads2_
 
Matrix jacobi_
 
Matrix qujobi_
 
Matrix jacobi2_
 
Vector point_
 

Additional Inherited Members

- Public Types inherited from jive::geom::StdShape
typedef jem::String String
 A string type. More...
 
typedef util::Vector Vector
 A vector type. More...
 
typedef util::Matrix Matrix
 A matrix type. More...
 
typedef util::Cubix Cubix
 A three-dimensional array of doubles. More...
 
- Static Public Member Functions inherited from jive::geom::StdShape
static void registerShape (StdShape *shape)
 Registers a standard shape. More...
 
static StdShapefindShape (const String &name)
 Searches for a standard shape with a given name. More...
 
static void encodeShape (jem::io::DataOutput &out, StdShape *shape)
 Writes a standard shape to a data output stream. More...
 
static StdShapedecodeShape (jem::io::DataInput &in)
 Reads a standard shape from a data input stream. More...
 

Constructor & Destructor Documentation

jive::geom::StdBoundary::StdBoundary ( )
jive::geom::StdBoundary::StdBoundary ( const Matrix xnodes,
const Ref< StdShape > &  xshape,
const Ref< StdShape > &  sshape 
)
jive::geom::StdBoundary::StdBoundary ( const Ref< Self > &  parent,
const Matrix xnodes 
)
virtual jive::geom::StdBoundary::~StdBoundary ( )
protectedvirtual

Member Function Documentation

virtual void jive::geom::StdBoundary::readFrom ( ObjectInput in)
virtual

Implements jem::io::Serializable.

virtual void jive::geom::StdBoundary::writeTo ( ObjectOutput out) const
virtual

Implements jem::io::Serializable.

virtual idx_t jive::geom::StdBoundary::rank ( ) const
virtual

Returns the rank (number of dimensions) of the local coordinate system of this shape.

Returns
The rank of this shape.

Implements jive::geom::StdShape.

virtual idx_t jive::geom::StdBoundary::shapeFuncCount ( ) const
virtual
virtual String jive::geom::StdBoundary::getGeometry ( ) const
virtual
virtual idx_t jive::geom::StdBoundary::vertexCount ( ) const
virtual
virtual Matrix jive::geom::StdBoundary::getVertexCoords ( ) const
virtual
virtual bool jive::geom::StdBoundary::containsPoint ( const Vector u) const
virtual

Returns true if the point specified by the local coordinate vector u lies within this shape, and false otherwise.

Parameters
u- a local coordinate vector.
Precondition
u.size() == this->rank()
Returns
true if the specified point lies within this shape, and false otherwise.

Implements jive::geom::StdShape.

virtual bool jive::geom::StdBoundary::clipPoint ( const Vector u) const
virtual
virtual void jive::geom::StdBoundary::evalShapeFunctions ( const Vector h,
const Vector u 
) const
virtual

Fills the vector h with the values of the shape functions in a specific point within this shape: h[i] is set to the i-th shape function in that point. The vector u should contain the local coordinates of the point: u[i] should be equal to the i-th local coordinate.

Parameters
h- a vector that will be filled with the values of the shape functions in a specific point within this shape.
u- a vector containing the local coordinates of the specified point.
Precondition
h.size() == this->nodeCount() &&
u.size() == this->rank() && this->containsPoint ( u )

Implements jive::geom::StdShape.

Reimplemented in jive::geom::StdEdge.

virtual void jive::geom::StdBoundary::evalShapeGradients ( const Vector f,
const Matrix g,
const Vector u 
) const
virtual
virtual void jive::geom::StdBoundary::evalShapeGradGrads ( const Vector f,
const Matrix g,
const Matrix h,
const Vector u 
) const
virtual
virtual void* jive::geom::StdBoundary::getExtByID ( ExtensionID  extID) const
virtual
virtual void jive::geom::StdBoundary::mapBoundaryPoint ( const Vector v,
const Vector u 
) const
virtual

Reimplemented in jive::geom::StdEdge.

Member Data Documentation

Ref<Self> jive::geom::StdBoundary::parent_
protected
Ref<StdShape> jive::geom::StdBoundary::xshape_
protected
Ref<StdShape> jive::geom::StdBoundary::sshape_
protected
idx_t jive::geom::StdBoundary::rank_
protected
idx_t jive::geom::StdBoundary::nodeCount_
protected
idx_t jive::geom::StdBoundary::funcCount_
protected
Matrix jive::geom::StdBoundary::xnodeCoords_
protected
Vector jive::geom::StdBoundary::xshapeFuncs_
protected
Matrix jive::geom::StdBoundary::xshapeGrads_
protected
Matrix jive::geom::StdBoundary::sshapeGrads_
protected
Matrix jive::geom::StdBoundary::xshapeGrads2_
protected
Matrix jive::geom::StdBoundary::sshapeGrads2_
protected
Matrix jive::geom::StdBoundary::jacobi_
protected
Matrix jive::geom::StdBoundary::qujobi_
protected
Matrix jive::geom::StdBoundary::jacobi2_
protected
Vector jive::geom::StdBoundary::point_
protected