Moertel Development
Protected Member Functions
MOERTEL::Segment_BiLinearQuad Class Reference

A class to define a 4-noded quadrilateral 2D Segment. More...

#include <mrtr_segment_bilinearquad.H>

Inheritance diagram for MOERTEL::Segment_BiLinearQuad:
Inheritance graph
[legend]
Collaboration diagram for MOERTEL::Segment_BiLinearQuad:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 Segment_BiLinearQuad (int id, int nnode, int *nodeId, int out)
 Standard Constructor.
 Segment_BiLinearQuad (int out)
 Empty Constructor.
 Segment_BiLinearQuad (MOERTEL::Segment_BiLinearQuad &old)
 Copy Constructor.
virtual ~Segment_BiLinearQuad ()
 Destructor.
MOERTEL::SegmentClone ()
 Deep copy this instance of Segment_BiLinearQuad and return pointer to the copy.
int * Pack (int *size)
 not implemented
bool UnPack (int *pack)
 not implemented
double Area ()
 not implemented
double * BuildNormal (double *xi)
 not implemented
double Metric (double *xi, double g[], double G[][3])
 not implemented
bool LocalCoordinatesOfNode (int lid, double *xi)
 not implemented

Protected Member Functions

Segment_BiLinearQuad operator= (const Segment &old)

Detailed Description

A class to define a 4-noded quadrilateral 2D Segment.

A class to define a 4-noded quadrilateral 2D Segment

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

This class defines a 4-noded linear 2D quadrilateral interface surface segment.

Important:
Upon construction, the user must assure that the nodes attached to this segment are given in counter-clockwise order such that the outward normal to the domain points out from the screen:

        Node 3     Node 2
          o----------o
          |          |
          |          |           
          |          |                   <-------| 
          |          |            domain surface | 
          o----------o                      ------  
        Node 0     Node 1

The reason for this is that the outward normal to the interface is implicitly defined by the orientation of the segments. There is no way for the MOERTEL package to check the orientation of the segments as they are passed in by the user and most obscure results will be produced when the orientation is uncorrect!

Important:
There is currently no full support for quadrilateral interface discretizations. However, when quads are added to a MOERTEL::Interface they will be split into 2 triangles internally that are then used to perform the integration. The orientation of the 2 triangles resulting from 1 quad is consistent with the orientation of the quad.

The MOERTEL::Segment_BiLinearQuad class supports the std::ostream& operator <<

Author:
Glen Hansen (gahanse@sandia.gov)

Constructor & Destructor Documentation

MOERTEL::Segment_BiLinearQuad::Segment_BiLinearQuad ( int  id,
int  nnode,
int *  nodeId,
int  out 
) [explicit]

Standard Constructor.

Parameters:
Id: A unique positive Segment id. Does not need to be continous among segments
nnode: Number of nodes this segment is attached to
nodeId: Pointer to vector length nnode holding unique positive node ids of nodes this segment is attached to in counterclock-wise orientation looking at the interface such that the outward normal to the domain points out from the screen
outlevel: Level of output to stdout to be generated by this class (0-10)
MOERTEL::Segment_BiLinearQuad::Segment_BiLinearQuad ( int  out) [explicit]

Empty Constructor.

To be used for communicating Segment_BiLinearTri classes among processes together with Pack and UnPack

MOERTEL::Segment_BiLinearQuad::Segment_BiLinearQuad ( MOERTEL::Segment_BiLinearQuad old)

Copy Constructor.

Makes a deep copy of a Segment_BiLinearQuad


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