XC Open source finite element analysis program
MatrizPtrNod.h
1 //----------------------------------------------------------------------------
2 // XC program; finite element analysis code
3 // for structural analysis and design.
4 //
5 // Copyright (C) Luis Claudio Pérez Tato
6 //
7 // This program derives from OpenSees <http://opensees.berkeley.edu>
8 // developed by the «Pacific earthquake engineering research center».
9 //
10 // Except for the restrictions that may arise from the copyright
11 // of the original program (see copyright_opensees.txt)
12 // XC is free software: you can redistribute it and/or modify
13 // it under the terms of the GNU General Public License as published by
14 // the Free Software Foundation, either version 3 of the License, or
15 // (at your option) any later version.
16 //
17 // This software is distributed in the hope that it will be useful, but
18 // WITHOUT ANY WARRANTY; without even the implied warranty of
19 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20 // GNU General Public License for more details.
21 //
22 //
23 // You should have received a copy of the GNU General Public License
24 // along with this program.
25 // If not, see <http://www.gnu.org/licenses/>.
26 //----------------------------------------------------------------------------
27 //MatrizPtrNod.h
28 //Matriz de puntos
29 
30 #ifndef MATRIZPTRNOD_H
31 #define MATRIZPTRNOD_H
32 
33 #include "MatrizPtrBase.h"
34 #include "xc_basic/src/matrices/m_int.h"
35 #include <vector>
36 
37 class Pos3d;
38 
39 namespace XC{
40 class Node;
41 class SFreedom_Constraint;
42 
46 class MatrizPtrNod: public MatrizPtrBase<Node>
47  {
48  protected:
49 
50  public:
52  MatrizPtrNod(const size_t &f=0,const size_t &c=0)
53  : MatrizPtrBase<Node>(f,c) {}
54  m_int getTags(void) const;
55  void fix(const SFreedom_Constraint &) const;
56 
57  Node *buscaNodo(const int &tag);
58  const Node *buscaNodo(const int &tag) const;
59  Node *getNearestNode(const Pos3d &p);
60  const Node *getNearestNode(const Pos3d &p) const;
61 
62 
63  };
64 
65 } //end of XC namespace
66 
67 #endif
MatrizPtrNod(const size_t &f=0, const size_t &c=0)
Constructor.
Definition: MatrizPtrNod.h:52
Node * getNearestNode(const Pos3d &p)
Returns the node closest to the point being passed as parameter.
Definition: MatrizPtrNod.cc:88
m_int getTags(void) const
Returns a matriz con los identificadores of the nodes.
Definition: MatrizPtrNod.cc:133
Mesh node.
Definition: Node.h:99
Node * buscaNodo(const int &tag)
Returns (if it exists) a pointer to the node cuyo tag is being passed as parameter.
Definition: MatrizPtrNod.cc:41
Base class for matrices of pointers to nodes, elements and points.
Definition: MatrizPtrBase.h:49
Matriz de pointers to nodes.
Definition: MatrizPtrNod.h:46
Single freedom constraint.
Definition: SFreedom_Constraint.h:79
================================================================================
Definition: ContinuaReprComponent.h:34
void fix(const SFreedom_Constraint &) const
Impone desplazamiento nulo en los nodos de this set.
Definition: MatrizPtrNod.cc:122