A class to handle the projection of a node onto some segment More...
#include <mrtr_pnode.H>


Public Member Functions | |
| ProjectedNode (const MOERTEL::Node &basenode, const double *xi, MOERTEL::Segment *pseg) | |
| Constructor.  More... | |
| ProjectedNode (const MOERTEL::Node &basenode, const double *xi, MOERTEL::Segment *pseg, int orthseg) | |
| Constructor (case of orthogonal projection only)  More... | |
| ProjectedNode (MOERTEL::ProjectedNode &old) | |
| Copy-Constructor.  | |
| virtual | ~ProjectedNode () | 
| Destructor.  | |
| bool | Print () const | 
| Print this ProjectedNode and its Node.  | |
| double * | Xi () | 
| Return view of the local coordinates of the projection in the segment.  | |
| MOERTEL::Segment * | Segment () | 
| Return pointer to segment this projection is in.  | |
| int | OrthoSegment () | 
| Return id of segment this projection is orthogonal to (might be different from Segment() )  | |
  Public Member Functions inherited from MOERTEL::Node | |
| Node (int Id, const double *x, int ndof, const int *dof, bool isonboundary, int out) | |
| Constructor.  More... | |
| Node (int out) | |
| Constructor.  More... | |
| Node (const MOERTEL::Node &old) | |
| Copy-Constructor.  More... | |
| virtual | ~Node () | 
| Destructor.  | |
| int | OutLevel () | 
| Return the level of output written to stdout ( 0 - 10 )  | |
| int | Id () const | 
| Return unique and positive id of this node.  | |
| bool | Print () const | 
| Print this node to stdout.  | |
| void | Reset () | 
| Reset the internal state of this node and clear integrated values.  More... | |
| const double * | XCoords () const | 
| Returns the view (a vector of length 3) to the current coordinates of this node.  | |
| bool | SetX (double *x) | 
| Update the coordinates of this Node.  More... | |
| const double * | Normal () const | 
| Return pointer to vector of length 3 of normal of this node.  | |
| bool | SetN (double *n) | 
| Store a normal in this node.  More... | |
| int | Ndof () const | 
| Return the number of degrees of freedom on this node.  | |
| int | Nlmdof () const | 
| Return the number of Lagrange mutlipliers on this node.  More... | |
| const int * | Dof () const | 
| Return view of degrees of freedom on this node.  More... | |
| const int * | LMDof () const | 
| Return view of the Lagrange multipliers on this node.  More... | |
| int | Nseg () const | 
| Return the number of segments adjacent to this node.  More... | |
| int * | SegmentIds () | 
| Returns a view to the vector of segment ids of segments adjacent to this node.  More... | |
| MOERTEL::Segment ** | Segments () | 
| Returns a view to the vector of pointers to segments adjacent to this node.  More... | |
| bool | AddSegment (int sid) | 
| Adds a segment id to the list of segments adjacent to this node.  More... | |
| double * | Pack (int *size) | 
| Packs most information stored in this node to a double vector for communication with MPI.  More... | |
| bool | UnPack (double *pack) | 
| Unpacks information stored in a double vector to an instance of Node.  More... | |
| bool | BuildAveragedNormal () | 
| Build averaged normal from adjacent segments at this node.  | |
| bool | GetPtrstoSegments (MOERTEL::Interface &interface) | 
| Construct vector of pointers to segments from adjacent segments id list.  | |
| bool | SetProjectedNode (MOERTEL::ProjectedNode *pnode) | 
| Store a pointer to a projected node.  More... | |
| Teuchos::RCP < MOERTEL::ProjectedNode > *  | GetProjectedNode (int &length) | 
| Returns a view of all projected nodes this node owns.  More... | |
| Teuchos::RCP < MOERTEL::ProjectedNode >  | GetProjectedNode () | 
| Returns a view of the projection of this node.  More... | |
| bool | SetLagrangeMultiplierId (int LMId) | 
| Add a Lagrange multiplier id to this node's list.  | |
| void | AddDValue (double val, int col) | 
| Add a value to the 'D' map of this node.  More... | |
| void | AddMValue (double val, int col) | 
| Add a value to the 'M' map of this node.  More... | |
| void | AddMmodValue (int row, double val, int col) | 
| Add a value to the 'M' map of this node.  More... | |
| 
Teuchos::RCP< std::map< int,  double > >  | GetD () | 
| Get view of the 'D' map of this node.  | |
| 
Teuchos::RCP< std::map< int,  double > >  | GetM () | 
| Get view of the 'M' map of this node.  | |
| 
Teuchos::RCP< std::vector < std::map< int, double > > >  | GetMmod () | 
| Get view of the 'Mmod' map of this node.  | |
| void | SetCorner () | 
| Set the flag indicating that node is corner node of 1D interface.  | |
| bool | IsCorner () const | 
| Query the flag indicating that node is corner node of 1D interface.  | |
| bool | IsOnBoundary () const | 
| Query the flag indicating that node is on the boundary of 2D interface.  | |
| int | NSupportSet () const | 
| Get number of nodes that support this boundary node.  More... | |
| void | AddSupportedByNode (MOERTEL::Node *suppnode) | 
| Add an internal node to the map of nodes supporting this node.  More... | |
| std::map< int, MOERTEL::Node * > & | GetSupportedByNode () | 
| Get the map of nodes supporting this node.  More... | |
| double | Gap () | 
| Return distance between projection and source node.  More... | |
| void | SetGap (double gap) | 
| Sets the distance between projection and source node.  More... | |
Protected Member Functions | |
| ProjectedNode | operator= (const ProjectedNode &old) | 
  Protected Member Functions inherited from MOERTEL::Node | |
| Node | operator= (const Node &old) | 
Protected Attributes | |
| double | xi_ [2] | 
| MOERTEL::Segment * | pseg_ | 
| int | orthseg_ | 
  Protected Attributes inherited from MOERTEL::Node | |
| int | Id_ | 
| double | x_ [3] | 
| double | n_ [3] | 
| int | outputlevel_ | 
| bool | iscorner_ | 
| bool | isonboundary_ | 
| std::map< int, MOERTEL::Node * > | supportedby_ | 
| std::vector< int > | dof_ | 
| std::vector< int > | LMdof_ | 
| std::vector< int > | seg_ | 
| std::vector< MOERTEL::Segment * > | segptr_ | 
| 
Teuchos::RCP< std::map< int,  double > >  | Drow_ | 
| 
Teuchos::RCP< std::map< int,  double > >  | Mrow_ | 
| 
Teuchos::RCP< std::vector < std::map< int, double > > >  | Mmodrow_ | 
| 
std::vector< Teuchos::RCP < MOERTEL::ProjectedNode > >  | pnode_ | 
| double | gap_ | 
A class to handle the projection of a node onto some segment
The MOERTEL::ProjectedNode class supports the ostream& operator <<
      
  | 
  explicit | 
Constructor.
Constructs an instance of this class.
 Note that this is not a collective call as nodes shall only have one owning process.
| basenode | : the node this class is the projection of | 
| xi | : local coordinates of the projection in the segment its projected onto | 
| pseg | : Segment this projection is located in | 
      
  | 
  explicit | 
Constructor (case of orthogonal projection only)
Constructs an instance of this class.
 Note that this is not a collective call as nodes shall only have one owning process.
| basenode | : the node this class is the projection of | 
| xi | : local coordinates of the projection in the segment its projected onto | 
| pseg | : Segment this projection is located in | 
| orthseg | : id of segment this projection is orthogonal to which might be different from pseg | 
 1.8.5