ViennaGrid for Python
 All Classes Files Functions Variables
quadrilateral.hpp
Go to the documentation of this file.
1 
6 #ifndef DOMAINS_QUADRILATERAL_HPP
7 #define DOMAINS_QUADRILATERAL_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/quadrilateral.hpp"
16 #include "../cells/quadrilateral.hpp"
17 
18 #include <boost/python.hpp>
19 using namespace boost::python;
20 
31  QuadrilateralCartesian2D_Domain_t domain;
32 public:
34 
42  unsigned int num_vertices();
43 
51  void make_vertex(PointCartesian2D point);
52 
60  QuadrilateralCartesian2D_Vertex get_vertex(unsigned int index);
61 
69  list get_vertices();
70 
78  unsigned int num_cells();
79 
93 
101  list get_cells();
102 
109  QuadrilateralCartesian2D_Domain_t & get_domain();
110 };
111 
122  QuadrilateralCartesian3D_Domain_t domain;
123 public:
125 
133  unsigned int num_vertices();
134 
142  void make_vertex(PointCartesian3D point);
143 
151  QuadrilateralCartesian3D_Vertex get_vertex(unsigned int index);
152 
160  list get_vertices();
161 
169  unsigned int num_cells();
170 
184 
192  list get_cells();
193 
200  QuadrilateralCartesian3D_Domain_t & get_domain();
201 };
202 
213  QuadrilateralCylindrical3D_Domain_t domain;
214 public:
216 
224  unsigned int num_vertices();
225 
233  void make_vertex(PointCylindrical3D point);
234 
242  QuadrilateralCylindrical3D_Vertex get_vertex(unsigned int index);
243 
251  list get_vertices();
252 
260  unsigned int num_cells();
261 
275 
283  list get_cells();
284 
291  QuadrilateralCylindrical3D_Domain_t & get_domain();
292 };
293 
304  QuadrilateralPolar2D_Domain_t domain;
305 public:
307 
315  unsigned int num_vertices();
316 
324  void make_vertex(PointPolar2D point);
325 
333  QuadrilateralPolar2D_Vertex get_vertex(unsigned int index);
334 
342  list get_vertices();
343 
351  unsigned int num_cells();
352 
366 
374  list get_cells();
375 
382  QuadrilateralPolar2D_Domain_t & get_domain();
383 };
384 
395  QuadrilateralSpherical3D_Domain_t domain;
396 public:
398 
406  unsigned int num_vertices();
407 
415  void make_vertex(PointSpherical3D point);
416 
424  QuadrilateralSpherical3D_Vertex get_vertex(unsigned int index);
425 
433  list get_vertices();
434 
442  unsigned int num_cells();
443 
457 
465  list get_cells();
466 
473  QuadrilateralSpherical3D_Domain_t & get_domain();
474 };
475 
476 #endif /* end of include guard: DOMAINS_QUADRILATERAL_HPP */