13#ifndef dealii_grid_in_h
14#define dealii_grid_in_h
19#ifdef DEAL_II_GMSH_WITH_API
42template <
int dim,
int spacedim>
201template <
int dim,
int spacedim = dim>
412 const bool apply_all_indicators_to_manifolds =
false);
455 const bool apply_all_indicators_to_manifolds =
false);
562 read_msh(
const std::string &filename);
626 const std::string &file_suffix =
"msh");
717 const bool remove_duplicates =
true,
718 const double tol = 1e-12,
719 const bool ignore_unsupported_element_types =
true);
807 const bool apply_all_indicators_to_manifolds =
false);
845 const std::map<std::string, Vector<double>> &
853 <<
"The section type <" << arg1 <<
"> in an UNV "
854 <<
"input file is not implemented.");
861 <<
"The element type <" << arg1 <<
"> in an UNV "
862 <<
"input file is not implemented.");
869 <<
"The identifier <" << arg1 <<
"> as name of a "
870 <<
"part in an UCD input file is unknown or the "
871 <<
"respective input routine is not implemented. "
872 <<
"(Maybe the space dimension of triangulation and "
873 <<
"input file do not match?");
878 "No Triangulation has been attached to this GridIn object "
879 "so that nothing can be filled during any read function "
880 "calls. Please pass a reference to the Triangulation tria "
881 "to be filled in the constructor GridIn(tria) or attach "
882 "it with the function call GridIn::attach_triangulation().");
890 <<
"While creating cell " << arg1
891 <<
", you are referencing a vertex with index " << arg2
892 <<
" but no vertex with this index has been described in the input file.");
901 <<
"While creating cell " << arg1 <<
" (which is numbered as " << arg2
902 <<
" in the input file), you are referencing a vertex with index " << arg3
903 <<
" but no vertex with this index has been described in the input file.");
913 <<
"The string <" << arg1
914 <<
"> is not recognized at the present"
915 <<
" position of a DB Mesh file.");
923 <<
"The specified dimension " << arg1
924 <<
" is not the same as that of the triangulation to be created.");
928 <<
"The string <" << arg1
929 <<
"> is not recognized at the present"
930 <<
" position of a Gmsh Mesh file.");
934 <<
"The Element Identifier <" << arg1 <<
"> is not "
935 <<
"supported in the deal.II library when "
936 <<
"reading meshes in " << dim <<
" dimensions.\n"
937 <<
"Supported elements are: \n"
939 <<
"1 Line (2 nodes, 1 edge).\n"
940 <<
"2 Triangle (3 nodes, 3 edges).\n"
941 <<
"3 Quadrilateral (4 nodes, 4 edges).\n"
942 <<
"4 Tetrahedron (4 nodes, 6 edges, 4 faces) when in 3d.\n"
943 <<
"5 Hexahedron (8 nodes, 12 edges, 6 faces) when in 3d.\n"
944 <<
"15 Point (1 node, ignored when read).");
951 "While reading a gmsh file, the reader function did not find "
952 "any cells. This sometimes happens if the file only contains a "
953 "surface mesh, but not a volume mesh."
955 "The reader function did find " +
956 std::to_string(arg1) +
" lines and " + std::to_string(arg2) +
957 " facets (surface triangles or quadrilaterals).");
1017 std::vector<unsigned int> &tecplot2deal,
1018 unsigned int &n_vars,
1019 unsigned int &n_vertices,
1020 unsigned int &n_cells,
1021 std::vector<unsigned int> &IJK,
1049 const std::vector<
Point<2>> &vertices,
1056 const std::vector<
Point<3>> &vertices,
1061 const std::vector<
Point<3>> &vertices,
@ Default
Use GridIn::default_format stored in this object.
@ tecplot
Use read_tecplot()
@ dbmesh
Use read_dbmesh()
@ abaqus
Use read_abaqus()
@ assimp
Use read_assimp()
@ exodusii
Use read_exodusii()
void read_vtk(std::istream &in)
static void skip_empty_lines(std::istream &in)
void read_partitioned_msh(const std::string &file_prefix, const std::string &file_suffix="msh")
void read_assimp(const std::string &filename, const unsigned int mesh_index=numbers::invalid_unsigned_int, const bool remove_duplicates=true, const double tol=1e-12, const bool ignore_unsupported_element_types=true)
void read_ugrid(std::istream &in)
std::map< std::string, Vector< double > > cell_data
void read_abaqus(std::istream &in, const bool apply_all_indicators_to_manifolds=false)
static std::string default_suffix(const Format format)
void read_xda(std::istream &in)
void read_comsol_mphtxt(std::istream &in)
static void skip_comment_lines(std::istream &in, const char comment_start)
void attach_triangulation(Triangulation< dim, spacedim > &tria)
const std::map< std::string, Vector< double > > & get_cell_data() const
void read_msh(std::istream &in)
static Format parse_format(const std::string &format_name)
void read_vtu(std::istream &in)
void read_tecplot(std::istream &in)
ExodusIIData read_exodusii(const std::string &filename, const bool apply_all_indicators_to_manifolds=false)
void read_dbmesh(std::istream &in)
void read_ucd(std::istream &in, const bool apply_all_indicators_to_manifolds=false)
ObserverPointer< Triangulation< dim, spacedim >, GridIn< dim, spacedim > > tria
void read(std::istream &in, Format format=Default)
static void debug_output_grid(const std::vector< CellData< dim > > &cells, const std::vector< Point< spacedim > > &vertices, std::ostream &out)
static std::string get_format_names()
void read_unv(std::istream &in)
static void parse_tecplot_header(std::string &header, std::vector< unsigned int > &tecplot2deal, unsigned int &n_vars, unsigned int &n_vertices, unsigned int &n_cells, std::vector< unsigned int > &IJK, bool &structured, bool &blocked)
#define DEAL_II_NAMESPACE_OPEN
#define DEAL_II_CXX20_REQUIRES(condition)
#define DEAL_II_NAMESPACE_CLOSE
#define DeclException0(Exception0)
static ::ExceptionBase & ExcInvalidDBMeshFormat()
static ::ExceptionBase & ExcUnknownIdentifier(std::string arg1)
static ::ExceptionBase & ExcInvalidGMSHInput(std::string arg1)
static ::ExceptionBase & ExcInvalidDBMESHInput(std::string arg1)
static ::ExceptionBase & ExcDBMESHWrongDimension(int arg1)
static ::ExceptionBase & ExcInvalidVertexIndex(int arg1, int arg2)
static ::ExceptionBase & ExcNoTriangulationSelected()
#define DeclException2(Exception2, type1, type2, outsequence)
static ::ExceptionBase & ExcUnknownElementType(int arg1)
static ::ExceptionBase & ExcGmshNoCellInformation(unsigned int arg1, unsigned int arg2)
static ::ExceptionBase & ExcInvalidVertexIndexGmsh(int arg1, int arg2, int arg3)
#define DeclExceptionMsg(Exception, defaulttext)
static ::ExceptionBase & ExcUnknownSectionType(int arg1)
#define DeclException3(Exception3, type1, type2, type3, outsequence)
#define DeclException1(Exception1, type1, outsequence)
static ::ExceptionBase & ExcGmshUnsupportedGeometry(int arg1)
constexpr unsigned int invalid_unsigned_int
std::vector< std::vector< int > > id_to_sideset_ids