ViennaGrid for Python
 All Classes Files Functions Variables
triangular.hpp
Go to the documentation of this file.
1 
6 #ifndef DOMAINS_TRIANGULAR_HPP
7 #define DOMAINS_TRIANGULAR_HPP
8 
9 #include "types.hpp"
10 #include "../points/cartesian.hpp"
11 #include "../points/cylindrical.hpp"
12 #include "../points/polar.hpp"
13 #include "../points/spherical.hpp"
14 
15 #include "../vertices/triangular.hpp"
16 #include "../cells/triangular.hpp"
17 
18 #include <boost/python.hpp>
19 using namespace boost::python;
20 
31  TriangularCartesian2D_Domain_t domain;
32 public:
34 
42  unsigned int num_vertices();
43 
51  void make_vertex(PointCartesian2D point);
52 
60  TriangularCartesian2D_Vertex get_vertex(unsigned int index);
61 
69  list get_vertices();
70 
78  unsigned int num_cells();
79 
92 
100  list get_cells();
101 
108  TriangularCartesian2D_Domain_t & get_domain();
109 };
110 
112 // Triangle, cartesian 3D //
114 
125  TriangularCartesian3D_Domain_t domain;
126 public:
128 
136  unsigned int num_vertices();
137 
145  void make_vertex(PointCartesian3D point);
146 
154  TriangularCartesian3D_Vertex get_vertex(unsigned int index);
155 
163  list get_vertices();
164 
172  unsigned int num_cells();
173 
186 
194  list get_cells();
195 
202  TriangularCartesian3D_Domain_t & get_domain();
203 };
204 
206 // Triangle, cylindrical (3D) //
208 
219  TriangularCylindrical3D_Domain_t domain;
220 public:
222 
230  unsigned int num_vertices();
231 
239  void make_vertex(PointCylindrical3D point);
240 
248  TriangularCylindrical3D_Vertex get_vertex(unsigned int index);
249 
257  list get_vertices();
258 
266  unsigned int num_cells();
267 
280 
288  list get_cells();
289 
296  TriangularCylindrical3D_Domain_t & get_domain();
297 };
298 
300 // Triangle, polar (2D) //
302 
313  TriangularPolar2D_Domain_t domain;
314 public:
316 
324  unsigned int num_vertices();
325 
333  void make_vertex(PointPolar2D point);
334 
342  TriangularPolar2D_Vertex get_vertex(unsigned int index);
343 
351  list get_vertices();
352 
360  unsigned int num_cells();
361 
374 
382  list get_cells();
383 
390  TriangularPolar2D_Domain_t & get_domain();
391 };
392 
394 // Triangle, spherical (3D) //
396 
407  TriangularSpherical3D_Domain_t domain;
408 public:
410 
418  unsigned int num_vertices();
419 
427  void make_vertex(PointSpherical3D point);
428 
436  TriangularSpherical3D_Vertex get_vertex(unsigned int index);
437 
445  list get_vertices();
446 
454  unsigned int num_cells();
455 
468 
476  list get_cells();
477 
484  TriangularSpherical3D_Domain_t & get_domain();
485 };
486 
487 #endif /* end of include guard: DOMAINS_TRIANGULAR_HPP */