[P]arallel [Hi]gh-order [Li]brary for [P]DEs  Latest
Parallel High-Order Library for PDEs through hp-adaptive Discontinuous Galerkin methods
gmsh_out.h
1 #ifndef __GMSH_OUT_H__
2 #define __GMSH_OUT_H__
3 
4 #include <deal.II/numerics/data_out.h>
5 #include <deal.II/grid/tria.h>
6 
7 #include <deal.II/base/tensor.h>
8 #include <deal.II/base/symmetric_tensor.h>
9 
10 namespace PHiLiP {
11 
12 namespace GridRefinement {
13 
14 // wrapper for the set of functions output to gmsh through pos
16 
34 template <int dim, typename real>
35 class GmshOut
36 {
37 public:
39 
43  static void write_pos(
44  const dealii::Triangulation<dim,dim> &tria,
45  dealii::Vector<real> data,
46  std::ostream & out);
47 
49 
55  static void write_pos_anisotropic(
56  const dealii::Triangulation<dim,dim>& tria,
57  const std::vector<dealii::SymmetricTensor<2,dim,real>>& data,
58  std::ostream& out,
59  const int p_scale = 1);
60 
62 
68  static void write_geo(
69  std::vector<std::string> &posFile_vec,
70  std::ostream & out);
71 
73 
78  static void write_geo_anisotropic(
79  std::vector<std::string> &posFile_vec,
80  std::ostream & out);
81 
83 
88  static int call_gmsh(
89  std::string geo_name,
90  std::string output_name);
91 
93 
96  static void write_geo_hyper_cube(
97  const double left,
98  const double right,
99  std::ostream &out,
100  const bool colorize = true);
101 };
102 
103 } // namespace GridRefinement
104 
105 } //namespace PHiLiP
106 
107 #endif // __GMSH_OUT_H__
static int call_gmsh(std::string geo_name, std::string output_name)
Performs command line call to GMSH for grid generation (if availible)
Definition: gmsh_out.cpp:423
Files for the baseline physics.
Definition: ADTypes.hpp:10
static void write_geo_hyper_cube(const double left, const double right, std::ostream &out, const bool colorize=true)
Writes the part of the .geo file associated wit the hyperdube geometry.
Definition: gmsh_out.cpp:375
static void write_geo(std::vector< std::string > &posFile_vec, std::ostream &out)
Writes the central .geo file for call to GMSH on main process with isotropic quad meshing...
Definition: gmsh_out.cpp:291
static void write_pos_anisotropic(const dealii::Triangulation< dim, dim > &tria, const std::vector< dealii::SymmetricTensor< 2, dim, real >> &data, std::ostream &out, const int p_scale=1)
Write anisotropic tensor .pos file for use with GMSH.
Definition: gmsh_out.cpp:152
static void write_geo_anisotropic(std::vector< std::string > &posFile_vec, std::ostream &out)
Writes the central .geo file for call to GMSH on main process with anisotropic quad meshing...
Definition: gmsh_out.cpp:333
static void write_pos(const dealii::Triangulation< dim, dim > &tria, dealii::Vector< real > data, std::ostream &out)
Write scalar .pos file for use with GMSH.
Definition: gmsh_out.cpp:40