Moertel Development
MOERTEL::Point Class Reference

A light weight node. More...

#include <mrtr_point.H>

List of all members.

Public Member Functions

 Point (const int id, const double *xi, int out)
 Constructor.
virtual ~Point ()
 Destructor.
int OutLevel ()
 Return the level of output written to stdout ( 0 - 10 )
void Print () const
 Print this node to stdout.
int Id ()
 Return id of this point.
const double * Xi ()
 Return view of segment local coordinates of this point (2D)
const double * X ()
 Return view of global coordinates of this point (3D)
Teuchos::RCP< MOERTEL::NodeNode ()
 Return view of Node.
bool SetXi (const double *xi)
 Set segment local coordinates of this point (2D) in a segment.
bool SetNode (MOERTEL::Node *node)
 Set a Node to this point.
void StoreFunctionValues (int place, double *val, int valdim)
 Store finite element function values at the Point 's coordinate Xi()
std::vector< double > * FunctionValues ()
 Return view of function values stored in this Point.

Detailed Description

A light weight node.

A light weight version of a node

Date:
Last update do Doxygen: 20-March-06

This class defines a point on a segment. It is a light weight version of a node. It is used in the integration of 2D interfaces where the mortar side is imprinted to the slave side. The overlap between a mortar and a slave segment leads to a polygon defined by points on the slave segment. The polygon is then discretized by triangle finite elements (eventually adding more points) to perform the integration on the polygon region. A point might therefore become a node of the polygon discretization and therefore has capabilities to store a Node class.

The MOERTEL::Point class supports the ostream& operator <<

Author:
Glen Hansen (Glen.Hansen@inl.gov)

Constructor & Destructor Documentation

MOERTEL::Point::Point ( const int  id,
const double *  xi,
int  out 
)

Constructor.

Constructs an instance of this class.
Note that this is not a collective call as points shall only have one owning process.

Parameters:
id: A unique positive point id.
xi: Coordinates of point in a segment (2D)
out: Level of output information written to stdout ( 0 - 10 )

Member Function Documentation

std::vector<double>* MOERTEL::Point::FunctionValues ( ) [inline]

Return view of function values stored in this Point.

Returns a view of the function values that were stored in this Point using StoreFunctionValues

Teuchos::RCP<MOERTEL::Node> MOERTEL::Point::Node ( ) [inline]

Return view of Node.

If this point holds a Node it will return a pointer to the Node. If it does not hold a Node, it will return Teuchos::null

bool MOERTEL::Point::SetNode ( MOERTEL::Node node) [inline]

Set a Node to this point.

The Point takes ownership of the Node and will destroy it

void MOERTEL::Point::StoreFunctionValues ( int  place,
double *  val,
int  valdim 
)

Store finite element function values at the Point 's coordinate Xi()

Parameters:
place: Place in internal data structure where to store function values.
place=0 is used to store trace space function values of the slave segment.
place=1 is used to store Lagrange multiplier space function values of the slave segment.
place=2 is used to store trace space function values of the master segment.
val: Vector of length valdim holding function values
valdim: Dimension of val
const double* MOERTEL::Point::X ( ) [inline]

Return view of global coordinates of this point (3D)

If this point holds a Node it will return a pointer to the global 3D coordinates of that Node. If it does not hold a Node, it will return NULL


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Enumerations Friends