xc
IntegrationPoints.h
1 // -*-c++-*-
2 //----------------------------------------------------------------------------
3 // xc utils library; general purpose classes and functions.
4 //
5 // Copyright (C) Luis C. PĂ©rez Tato
6 //
7 // XC utils is free software: you can redistribute it and/or modify
8 // it under the terms of the GNU General Public License as published by
9 // the Free Software Foundation, either version 3 of the License, or
10 // (at your option) any later version.
11 //
12 // This software is distributed in the hope that it will be useful, but
13 // WITHOUT ANY WARRANTY; without even the implied warranty of
14 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 // GNU General Public License for more details.
16 //
17 // You should have received a copy of the GNU General Public License
18 // along with this program.
19 // If not, see <http://www.gnu.org/licenses/>.
20 //----------------------------------------------------------------------------
21 //IntegrationPoints.h
22 // ORIGINAL: Copyright (c) 1999, A.H. van den Boogaard
23 //FeaTure is put on the internet as free software. I would very
24 //much like to hear your feedback and if possible improvements. See
25 //also the 'Future plans' part in the manual.
26 //Modified by LCPT to integrate it in XC.
27 
28 #ifndef INTEGRATIONPOINTS_H
29 #define INTEGRATIONPOINTS_H
30 
31 #include "utility/matrices/m_double.h"
32 
33 
34 void Gauss( int ip, int nip, double &xi, double &weight);
35 
36 void Hammer( int ip, int nip, double& L1, double& L2, double& L3,
37  double& weight );
38 
43  {
45  class pto_int
46  {
47  public:
48  pto_int(){};
49  ~pto_int(){};
50  m_double nat_coord;
51  double weight;
52  };
53 
54  private:
55  int nr_of_intpt;
56  pto_int *intpts;
57 
58  public:
61  IntegrationPoints(int nr);
63 
64  void set_nr_intpt(int nr);
65  int get_nr_intpt() const;
66  void set_values(int ip,const m_double &coor,const double &weight);
67  m_double get_coor(int ip) const;
68  double get_weight(int ip) const;
69 };
70 
71 #endif /* INTEGRATIONPOINTS_H */
int get_nr_intpt() const
Return the number of integration points.
Definition: IntegrationPoints.cc:317
~IntegrationPoints()
Destructor.
Definition: IntegrationPoints.cc:305
IntegrationPoints()
Constructor por defecto.
Definition: IntegrationPoints.cc:273
void set_values(int ip, const m_double &coor, const double &weight)
Sets the natural coordinates and the weight to the integration point.
Definition: IntegrationPoints.cc:326
Integration points container.
Definition: IntegrationPoints.h:42
double get_weight(int ip) const
Return the weigth of the integration point with the index beint passed as parmeter.
Definition: IntegrationPoints.cc:344
void set_nr_intpt(int nr)
Set the number of integration points.
Definition: IntegrationPoints.cc:309
m_double get_coor(int ip) const
Return the natural coordinates of the integration point.
Definition: IntegrationPoints.cc:339