|
| Segment_BiLinearQuad (int id, int nnode, int *nodeId, int out) |
| Standard Constructor.
|
|
| Segment_BiLinearQuad (int id, const std::vector< int > &, int out) |
|
| Segment_BiLinearQuad (int out) |
| Empty Constructor.
|
|
| Segment_BiLinearQuad (MOERTEL::Segment_BiLinearQuad &old) |
| Copy Constructor.
|
|
virtual | ~Segment_BiLinearQuad () |
| Destructor.
|
|
MOERTEL::Segment * | Clone () |
| 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
|
|
| Segment (int id, int nnode, int *nodeId, int outlevel) |
| Standard Constructor.
|
|
| Segment (int id, const std::vector< int > &nodeId, int outlevel) |
|
| Segment (int outlevel) |
| Empty Constructor.
|
|
| Segment (MOERTEL::Segment &old) |
| Copy Constructor.
|
|
virtual | ~Segment () |
| Destructor.
|
|
int | OutLevel () |
| Return level of output to be generated by this class (0-10)
|
|
int | Id () const |
| Return unique id of this Segment.
|
|
int | Nnode () const |
| Return number of nodes attached to this Segment.
|
|
MOERTEL::Segment::SegmentType | Type () const |
| Return type of Segment.
|
|
const int * | NodeIds () const |
| Return view of node ids of nodes attached to this Segment.
|
|
MOERTEL::Node ** | Nodes () |
| Return pointer to vector of length Nnode() of pointers to Nodes attached to this Segment.
|
|
int | Nfunctions () |
| Return number of functions defined on this Segment.
|
|
MOERTEL::Function::FunctionType | FunctionType (int id) |
| Return FunctionType of a function with the Id id.
|
|
bool | SetFunction (int id, MOERTEL::Function *func) |
| Attach a function to this Segment.
|
|
bool | EvaluateFunction (int id, const double *xi, double *val, int valdim, double *deriv) |
| Evaluate a function with a certain id.
|
|
double * | BuildNormalAtNode (int nid) |
| Build normal at a node adjacent to this Segment.
|
|
bool | GetPtrstoNodes (MOERTEL::Interface &interface) |
| Get pointers to Nodes attached to this Segment from the Interface this Segment resides on.
|
|
bool | GetPtrstoNodes (std::vector< MOERTEL::Node * > &nodes) |
| Get pointers to Nodes attached to this Segment from a vector of Node pointers.
|
|
virtual bool | Print () const |
| Print this Segment.
|
|
int | GetLocalNodeId (int nid) |
| Get segment-local node id from global node id nid.
|
|
virtual MOERTEL::Segment * | Clone ()=0 |
| Deep copy the derived class and return pointer to it.
|
|
virtual int * | Pack (int *size)=0 |
| Pack some data from this class to an int vector of length size so it can be communicated using MPI.
|
|
virtual bool | UnPack (int *pack)=0 |
| Unpack some data an int vector and store data in this class.
|
|
virtual double * | BuildNormal (double *xi)=0 |
| Build an outward normal at segment coordinates xi.
|
|
virtual double | Area ()=0 |
| Compute and return the area of this Segment.
|
|
virtual double | Metric (double *xi, double g[], double G[][3])=0 |
| Build the basis vectors and metric tensor at a given local coord in this segment.
|
|
virtual bool | LocalCoordinatesOfNode (int lid, double *xi)=0 |
| Get local coords of a node attached to this segment with local node Id lid.
|
|
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 (gahan.nosp@m.se@s.nosp@m.andia.nosp@m..gov)