Rocstar  1.0
Rocstar multiphysics simulation application
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
FluidAgent.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 _FLUIDAGENT_H_
25 #define _FLUIDAGENT_H_
26 
27 #include "Agent.h"
28 
29 class FluidAgent: public Agent {
30 public:
31 
32  FluidAgent(Coupling *coup, std::string mod, std::string obj, MPI_Comm com, int withSolid=0);
33 
34  virtual void input( double t);
35 
36  virtual void load_module();
37  virtual void unload_module();
38  virtual void init_module(double t, double dt);
39  virtual void finalize();
40 
41  virtual void read_restart_data();
42  virtual void output_restart_files( double t);
43  virtual void output_visualization_files( double t);
44 
45  virtual void create_buffer_all();
46 
47  virtual void init_convergence( int iPredCorr);
48  virtual int check_convergence( double tolerMass, double tolerTract, double tolerVelo);
49 
50  virtual int compute_integrals();
51 protected:
52  bool with_plag;
53  string plag_window;
55 
56  // Window name.
57 // static const char *window_name;
58 
59 public:
60  std::string ifluid;
61  std::string fluid;
62  std::string fluid_plag;
63 
64  std::string fluidSurfIn;
65  std::string fluidVolIn;
66  std::string fluidPlagIn;
67  std::string fluidVPIn;
68 
69  std::string ifluid_all;
70  std::string ifluid_i; // FluidBuf
71 
72  // Surface windows for Rocout, Surface window buffers
73  std::string ifluid_b;
74  std::string ifluid_nb;
75  std::string ifluid_ni;
76 
77  std::string propBufAll;
78  std::string fluidBufNG;
79  std::string propBuf;
80  std::string fluidBufB;
81  std::string fluidBufNB;
82 
83  std::string fluidBufPC;
84  std::string fluidBufBak;
85  std::string fluidBufPRE;
86 
87  std::string fluidVolBak;
88  std::string fluidPlagBak;
89 
91  // for update distances
93 };
94 
95 
96 #endif
97 
98 
99 
100 
101 
102 
FluidAgent(Coupling *coup, std::string mod, std::string obj, MPI_Comm com, int withSolid=0)
Definition: FluidAgent.C:41
string plag_window
Definition: FluidAgent.h:53
std::string fluidPlagIn
Definition: FluidAgent.h:66
bool with_plag
Definition: FluidAgent.h:52
std::string ifluid_all
Definition: FluidAgent.h:69
virtual void output_restart_files(double t)
Definition: FluidAgent.C:466
int sq_dist_hdl
Definition: FluidAgent.h:92
T mod(const T &x, const T &m)
Return the modulo of a number.
Definition: CImg.h:4788
virtual int compute_integrals()
Definition: FluidAgent.C:562
std::string fluidBufB
Definition: FluidAgent.h:80
std::string fluidBufBak
Definition: FluidAgent.h:84
virtual void create_buffer_all()
Definition: FluidAgent.C:202
int nc_hdl
Definition: FluidAgent.h:92
virtual void input(double t)
Definition: FluidAgent.C:128
std::string fluidVPIn
Definition: FluidAgent.h:67
std::string ifluid_b
Definition: FluidAgent.h:73
std::string fluidVolBak
Definition: FluidAgent.h:87
int f_ts_hdl
Definition: FluidAgent.h:90
std::string propBufAll
Definition: FluidAgent.h:77
virtual void output_visualization_files(double t)
Definition: FluidAgent.C:507
std::string ifluid_i
Definition: FluidAgent.h:70
std::string propBuf
Definition: FluidAgent.h:79
std::string fluid
Definition: FluidAgent.h:61
std::string fluidPlagBak
Definition: FluidAgent.h:88
Definition: Agent.h:110
virtual void unload_module()
Definition: FluidAgent.C:106
int f_ts_pre_hdl
Definition: FluidAgent.h:90
virtual int check_convergence(double tolerMass, double tolerTract, double tolerVelo)
Definition: FluidAgent.C:551
std::string fluidBufNG
Definition: FluidAgent.h:78
std::string fluidVolIn
Definition: FluidAgent.h:65
int f_vm_pre_hdl
Definition: FluidAgent.h:90
virtual void load_module()
Definition: FluidAgent.C:83
virtual void read_restart_data()
Definition: FluidAgent.C:448
std::string fluid_plag
Definition: FluidAgent.h:62
int f_mdot_pre_hdl
Definition: FluidAgent.h:90
virtual void finalize()
Definition: FluidAgent.C:511
int f_vm_hdl
Definition: FluidAgent.h:90
std::string ifluid_ni
Definition: FluidAgent.h:75
std::string fluidBufPC
Definition: FluidAgent.h:83
virtual void init_module(double t, double dt)
Definition: FluidAgent.C:159
virtual void init_convergence(int iPredCorr)
Definition: FluidAgent.C:536
int nc_tmp_hdl
Definition: FluidAgent.h:92
std::string fluidSurfIn
Definition: FluidAgent.h:64
int with_solid
Definition: FluidAgent.h:54
std::string ifluid_nb
Definition: FluidAgent.h:74
std::string fluidBufNB
Definition: FluidAgent.h:81
std::string ifluid
Definition: FluidAgent.h:60
std::string fluidBufPRE
Definition: FluidAgent.h:85
int f_mdot_hdl
Definition: FluidAgent.h:90