XC Open source finite element analysis program
MEDGaussModel.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 // XC 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 //
18 // You should have received a copy of the GNU General Public License
19 // along with this program.
20 // If not, see <http://www.gnu.org/licenses/>.
21 //----------------------------------------------------------------------------
22 //MEDGaussModel.h
23 
24 #ifndef MEDGAUSSMODEL_H
25 #define MEDGAUSSMODEL_H
26 
27 #include "MEDObject.h"
28 #include "xc_basic/src/med_xc/MEDMEM_define.hxx"
29 #include "xc_basic/src/med_xc/MEDMEM_GaussLocalization.hxx"
30 
31 namespace XC {
32 class GaussModel;
33 class MEDMeshing;
34 
36 //
38 class MEDGaussModel: public MEDObject
39  {
40  public:
41  typedef MEDMEM::GAUSS_LOCALIZATION<> med_gauss_model;
42  private:
43  std::string nombre;
44  MED_EN::medGeometryElement tipo;
45  int num_nodes;
46  std::vector<double> ref_nodes_coo;
47  int num_gauss_pt;
48  std::vector<double> coo_gauss_pt;
49  std::vector<double> gauss_weights;
50  mutable med_gauss_model *model;
51  public:
52  MEDGaussModel(const std::string &,const MED_EN::medGeometryElement &, const GaussModel &);
53 
54  const std::string &getNombre(void) const;
55  const MED_EN::medGeometryElement &getTipo(void) const;
56  med_gauss_model *getGaussModelMED(void) const;
57 
58  void to_med(void) const;
59 
60  };
61 } // end of XC namespace
62 #endif
Base class for Gauss integration models.
Definition: GaussModel.h:40
Base class for MED objects.
Definition: MEDObject.h:39
Information about Gauss model.
Definition: MEDGaussModel.h:38
MEDGaussModel(const std::string &, const MED_EN::medGeometryElement &, const GaussModel &)
Constructor.
Definition: MEDGaussModel.cc:33
const std::string & getNombre(void) const
Returns the nombre del model.
Definition: MEDGaussModel.cc:70
void to_med(void) const
Dumps the gauss model into MED.
Definition: MEDGaussModel.cc:78
const MED_EN::medGeometryElement & getTipo(void) const
Returns the element type the model.
Definition: MEDGaussModel.cc:74
================================================================================
Definition: ContinuaReprComponent.h:34