Rocstar  1.0
Rocstar multiphysics simulation application
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
partition.h
Go to the documentation of this file.
1 #ifndef _TECPLOTZONES_H_
2 #define _TECPLOTZONES_H_
3 
4 #include <cstdio>
5 #include <cstdlib>
6 #include <iostream>
7 #include <ostream>
8 #include <fstream>
9 #include <string>
10 #include <time.h>
11 #include <sstream>
12 #include <iomanip>
13 #include <math.h>
14 
15 #include "util.h"
16 #include "datatypedef.h"
17 #include "points.h"
18 
19 class partition {
20 
21  public:
22 
23  partition();
24 
25  virtual ~partition();
26 
27  std::vector<int> get_layout();
28 
29  virtual void parse_layout();
30 
31  virtual bool parse_data(int num_dep_vars, int num_vars,
32  std::vector< std::vector<int> > rFieldMappings, index_order rIndexOrder,
33  std::vector<adj_map> conv_factor, std::vector<adj_map> norm_val);
34 
35  string get_error();
36  string get_status();
37 
38  int get_num_points();
39 
40  points *get_points();
41 
42  pnt get_point(int n);
43 
44  protected:
45 
46  std::vector<int> p_layout;
47 
48  //Messages
49  string error;
50  string status;
51 
52  //DATA POINTS
55 
56  //Helper Functions
57  long double get_adj(std::vector<adj_map> adj, int var);
58 
59  //Get field mapping
60  int GetFieldMapping(std::vector< std::vector<int> > rFieldMapping, int rSearchField);
61 
62 };
63 
64 class tpzone : public partition {
65 
66  public:
67 
68  tpzone(string *zheader, string *zdata);
69 
70  virtual ~tpzone();
71 
72  protected:
73 
74  string *zheader;
75  string *zdata;
76 
77 };
78 
79 class tpz_ordered : public tpzone {
80 
81  public:
82 
83  tpz_ordered(string *zheader, string *zdata);
84 
85  ~tpz_ordered();
86 
87  virtual void parse_layout();
88 
89  virtual bool parse_data(int num_dep_vars, int num_vars,
90  std::vector< std::vector<int> > rFieldMappings, index_order rIndexOrder,
91  std::vector<adj_map> conv_factor, std::vector<adj_map> norm_val);
92 
93  private:
94 
95  void build_point_index(std::vector< std::vector<int> > rFieldMappings);
96 
97  int get_index_value(int i, int j, int k, index_order rIndexOrder);
98 
100 
101 };
102 
103 class tpz_fequad : public tpzone {
104 
105  public:
106 
107  tpz_fequad(string *zheader, string *zdata);
108  void build_point_index();
109  ~tpz_fequad();
110 
111  virtual void parse_layout();
112 
113  virtual bool parse_data(int num_dep_vars, int num_vars,
114  std::vector< std::vector<int> > rFieldMappings, index_order rIndexOrder,
115  std::vector<adj_map> conv_factor, std::vector<adj_map> norm_val);
116 
117  private:
118 
120 
121 };
122 
123 #endif
bool data_pts_set
Definition: partition.h:54
string get_status()
Definition: partition.cpp:42
string get_error()
Definition: partition.cpp:35
string * zdata
Definition: partition.h:75
j indices k indices k
Definition: Indexing.h:6
std::vector< int > p_layout
Definition: partition.h:46
points * get_points()
Definition: partition.cpp:53
Definition: points.h:30
Used to store index order information.
Definition: datatypedef.h:22
virtual bool parse_data(int num_dep_vars, int num_vars, std::vector< std::vector< int > > rFieldMappings, index_order rIndexOrder, std::vector< adj_map > conv_factor, std::vector< adj_map > norm_val)
Definition: partition.cpp:172
string error
Definition: partition.h:49
tpz_fequad(string *zheader, string *zdata)
Definition: partition.cpp:346
void build_point_index(std::vector< std::vector< int > > rFieldMappings)
Definition: partition.cpp:249
Point object that represents a single point.
Definition: datatypedef.h:68
virtual void parse_layout()
Definition: partition.cpp:119
int GetFieldMapping(std::vector< std::vector< int > > rFieldMapping, int rSearchField)
Definition: partition.cpp:70
pnt get_point(int n)
Definition: partition.cpp:57
virtual void parse_layout()
Definition: partition.cpp:25
tpzone(string *zheader, string *zdata)
Definition: partition.cpp:85
tpz_ordered(string *zheader, string *zdata)
Definition: partition.cpp:108
blockLoc i
Definition: read.cpp:79
void build_point_index()
connect_points * data_pts_local
Definition: partition.h:119
points * data_pts
Definition: partition.h:53
const NT & n
std::vector< int > get_layout()
Definition: partition.cpp:17
string status
Definition: partition.h:50
virtual void parse_layout()
Definition: partition.cpp:357
virtual bool parse_data(int num_dep_vars, int num_vars, std::vector< std::vector< int > > rFieldMappings, index_order rIndexOrder, std::vector< adj_map > conv_factor, std::vector< adj_map > norm_val)
Definition: partition.cpp:29
int get_index_value(int i, int j, int k, index_order rIndexOrder)
Definition: partition.cpp:287
long double get_adj(std::vector< adj_map > adj, int var)
Definition: partition.cpp:61
virtual ~tpzone()
Definition: partition.cpp:94
j indices j
Definition: Indexing.h:6
int get_num_points()
Definition: partition.cpp:49
string * zheader
Definition: partition.h:74
manual_index_pts * data_pts_local
Definition: partition.h:99
virtual ~partition()
Definition: partition.cpp:12
virtual bool parse_data(int num_dep_vars, int num_vars, std::vector< std::vector< int > > rFieldMappings, index_order rIndexOrder, std::vector< adj_map > conv_factor, std::vector< adj_map > norm_val)
Definition: partition.cpp:398