Rocstar  1.0
Rocstar multiphysics simulation application
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
SolidAgent.h
Go to the documentation of this file.
1 /* *******************************************************************
2  * Rocstar Simulation Suite *
3  * Copyright@2015, Illinois Rocstar LLC. All rights reserved. *
4  * *
5  * Illinois Rocstar LLC *
6  * Champaign, IL *
7  * www.illinoisrocstar.com *
8  * sales@illinoisrocstar.com *
9  * *
10  * License: See LICENSE file in top level of distribution package or *
11  * http://opensource.org/licenses/NCSA *
12  *********************************************************************/
13 /* *******************************************************************
14  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, *
15  * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES *
16  * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND *
17  * NONINFRINGEMENT. IN NO EVENT SHALL THE CONTRIBUTORS OR *
18  * COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER *
19  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, *
20  * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE *
21  * USE OR OTHER DEALINGS WITH THE SOFTWARE. *
22  *********************************************************************/
23 
24 #ifndef _SOLIDAGENT_H_
25 #define _SOLIDAGENT_H_
26 
27 #include "Agent.h"
28 
29 class InterpolateBase;
30 
31 const int NO_SHEER=1;
32 const int WITH_SHEER=2;
33 
34 class SolidAgent: public Agent {
35 public:
36 
37  SolidAgent(Coupling *coup, std::string mod, std::string obj, MPI_Comm com, int withFluid=0);
38 
39  // read control files
40  virtual void input( double t);
41 
42  virtual void load_module();
43  virtual void unload_module();
44  virtual void init_module(double t, double dt);
45  virtual void finalize();
46 
47  virtual void create_buffer_all();
48 
49  virtual void read_restart_data();
50  virtual void output_restart_files( double t);
51 
52  virtual int compute_integrals();
53 
54  // not implemented
55  virtual void output_visualization_files( double t);
56 protected:
57  // Window name.
58 // static const char *window_name;
59 public:
60  std::string isolid_i;
61 
62  std::string isolid_all; // for registering attributes
63  std::string isolid_b; // buring
64  std::string isolid_nb; // non-buring
65  std::string isolid_ni; // noninteracting
66 
67  std::string solidBufBase; // a window for intermediate buffers for fluid-solid interface
68  std::string solidBuf; // a window for solid/fluid interaction
69  std::string propBufAll; // for surface propagation (containing all panes)
70  std::string propBuf; // for surface propagation
71 
72  // for input
73  std::string isolid;
74  std::string solid;
75 
76  // Rocin windows
77  std::string solidSurfIN;
78  std::string solidVolIN;
79 
80  std::string solidBufBak;
81  std::string solidVolBak;
82 
83  int with_fluid; // flag: coupled
84  int withALE; // TODO init it
85  int rhos_mode;
86  int size_ts;
88 
89  int y_hdl; // for compute distances
90 };
91 
92 
93 
94 #endif
95 
96 
97 
98 
99 
100 
std::string solidVolBak
Definition: SolidAgent.h:81
const int WITH_SHEER
Definition: SolidAgent.h:32
virtual void output_restart_files(double t)
Definition: SolidAgent.C:362
T mod(const T &x, const T &m)
Return the modulo of a number.
Definition: CImg.h:4788
SolidAgent(Coupling *coup, std::string mod, std::string obj, MPI_Comm com, int withFluid=0)
Definition: SolidAgent.C:48
std::string solidSurfIN
Definition: SolidAgent.h:77
int withALE
Definition: SolidAgent.h:84
std::string isolid
Definition: SolidAgent.h:73
std::string propBuf
Definition: SolidAgent.h:70
std::string isolid_nb
Definition: SolidAgent.h:64
virtual void read_restart_data()
Definition: SolidAgent.C:343
std::string isolid_ni
Definition: SolidAgent.h:65
virtual void finalize()
Definition: SolidAgent.C:394
std::string solidBufBase
Definition: SolidAgent.h:67
Definition: Agent.h:110
std::string isolid_i
Definition: SolidAgent.h:60
std::string solidBuf
Definition: SolidAgent.h:68
int size_ts
Definition: SolidAgent.h:86
std::string isolid_all
Definition: SolidAgent.h:62
std::string solid
Definition: SolidAgent.h:74
virtual void create_buffer_all()
Definition: SolidAgent.C:162
std::string solidVolIN
Definition: SolidAgent.h:78
std::string propBufAll
Definition: SolidAgent.h:69
const int NO_SHEER
Definition: SolidAgent.h:31
virtual void output_visualization_files(double t)
Definition: SolidAgent.C:390
virtual int compute_integrals()
Definition: SolidAgent.C:417
std::string solidBufBak
Definition: SolidAgent.h:80
virtual void unload_module()
Definition: SolidAgent.C:115
virtual void input(double t)
Definition: SolidAgent.C:136
std::string isolid_b
Definition: SolidAgent.h:63
virtual void load_module()
Definition: SolidAgent.C:88
int with_fluid
Definition: SolidAgent.h:83
virtual void init_module(double t, double dt)
Definition: SolidAgent.C:141
int traction_mode
Definition: SolidAgent.h:87
int rhos_mode
Definition: SolidAgent.h:85