GranOO  3.0
A robust and versatile workbench to build 3D dynamic simulations based on the Discrete Element Method
UpdateStrain.hpp
Go to the documentation of this file.
1 // This file is part of GranOO, a workbench for DEM simulation.
2 //
3 // Author(s) : - Jean-luc CHARLES I2M-DuMAS/ENSAM Talence France
4 // <jean-luc.charles@ensam.eu>
5 // - Damien ANDRE SPCTS/ENS Ceramique industrielle, Limoges France
6 // <damien.andre@unilim.fr>
7 // - Jeremie GIRARDOT I2M-DuMAS/ENSAM Talence France
8 // <jeremie.girardot@ensam.eu>
9 // - Cedric Hubert LAMIH/UVHC Valenciennes France
10 // <cedric.hubert@univ-valenciennes.fr>
11 // - Ivan IORDANOFF I2M-DuMAS-MPI/ENSAM Talence France
12 // <ivan.iordanoff@ensam.eu>
13 //
14 // Copyright (C) 2008-2016 JL. CHARLES, D. ANDRE, I. IORDANOFF, J. GIRARDOT
15 //
16 //
17 //
18 //
19 //
20 // This program is free software: you can redistribute it and/or modify
21 // it under the terms of the GNU General Public License as published by
22 // the Free Software Foundation, either version 3 of the License, or
23 // (at your option) any later version.
24 //
25 // This program is distributed in the hope that it will be useful,
26 // but WITHOUT ANY WARRANTY; without even the implied warranty of
27 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
28 // GNU General Public License for more details.
29 //
30 // You should have received a copy of the GNU General Public License
31 // along with this program. If not, see <http://www.gnu.org/licenses/>.
32 
33 
34 #ifndef _GranOO_PlugIn_UpdateStrain_hpp_
35 #define _GranOO_PlugIn_UpdateStrain_hpp_
36 
37 #include <string>
38 #include <iostream>
39 #include <fstream>
40 
42 #include "GranOO3/DEM/Element.hpp"
43 #include "GranOO3/DEM/Bond.hpp"
44 #include "GranOO3/Core/PlugIn.hpp"
45 
46 
47 
48 namespace GranOO3
49 {
50  namespace PlugIn
51  {
52 
53  class UpdateStrain: public Core::PlugInInterface<UpdateStrain>,
54  public Core::NeedSetOf< DEM::Element >
55  {
56 
57  DECLARE_STD_GRANOO_PLUGIN(UPDATE-STRAIN);
58 
59  public:
60  enum Method{LSQ=0};
61 
62  public:
63  UpdateStrain();
64 
65  void init();
66  void run();
67  void parse_xml();
68 
69  private:
70  bool _method ;
71  bool _periodic;
73  };
74 
75 
76  }
77 }
78 #endif
Definition: NeedSetOf.hpp:51
Definition: PlugIn.hpp:177
Definition: UpdateStrain.hpp:55
DECLARE_STD_GRANOO_PLUGIN(UPDATE-STRAIN)
void init()
Definition: UpdateStrain.cpp:113
Method
Definition: UpdateStrain.hpp:60
@ LSQ
Definition: UpdateStrain.hpp:60
bool _periodic
Definition: UpdateStrain.hpp:71
bool _method
Definition: UpdateStrain.hpp:70
void parse_xml()
Definition: UpdateStrain.cpp:97
bool _ignore_cracked_bond
Definition: UpdateStrain.hpp:72
void run()
Definition: UpdateStrain.cpp:123
UpdateStrain()
Definition: UpdateStrain.cpp:87
Definition: Common.hpp:198