15#ifndef dealii_grid_in_h
16#define dealii_grid_in_h
36template <
int dim,
int spacedim>
314template <
int dim,
int spacedim = dim>
462 const bool apply_all_indicators_to_manifolds =
false);
505 const bool apply_all_indicators_to_manifolds =
false);
529#ifdef DEAL_II_GMSH_WITH_API
588 read_msh(
const std::string &filename);
674 const bool remove_duplicates =
true,
675 const double tol = 1e-12,
676 const bool ignore_unsupported_element_types =
true);
753 const bool apply_all_indicators_to_manifolds =
false);
791 const std::map<std::string, Vector<double>> &
799 <<
"The section type <" << arg1 <<
"> in an UNV "
800 <<
"input file is not implemented.");
807 <<
"The element type <" << arg1 <<
"> in an UNV "
808 <<
"input file is not implemented.");
815 <<
"The identifier <" << arg1 <<
"> as name of a "
816 <<
"part in an UCD input file is unknown or the "
817 <<
"respective input routine is not implemented."
818 <<
"(Maybe the space dimension of triangulation and "
819 <<
"input file do not match?");
824 "No Triangulation has been attached to this GridIn object "
825 "so that nothing can be filled during any read function "
826 "calls. Please pass a reference to the Triangulation tria "
827 "to be filled in the constructor GridIn(tria) or attach "
828 "it with the function call GridIn::attach_triangulation().");
836 <<
"While creating cell " << arg1
837 <<
", you are referencing a vertex with index " << arg2
838 <<
" but no vertex with this index has been described in the input file.");
847 <<
"While creating cell " << arg1 <<
" (which is numbered as " << arg2
848 <<
" in the input file), you are referencing a vertex with index " << arg3
849 <<
" but no vertex with this index has been described in the input file.");
859 <<
"The string <" << arg1
860 <<
"> is not recognized at the present"
861 <<
" position of a DB Mesh file.");
869 <<
"The specified dimension " << arg1
870 <<
" is not the same as that of the triangulation to be created.");
874 <<
"The string <" << arg1
875 <<
"> is not recognized at the present"
876 <<
" position of a Gmsh Mesh file.");
880 <<
"The Element Identifier <" << arg1 <<
"> is not "
881 <<
"supported in the deal.II library when "
882 <<
"reading meshes in " << dim <<
" dimensions.\n"
883 <<
"Supported elements are: \n"
885 <<
"1 Line (2 nodes, 1 edge).\n"
886 <<
"2 Triangle (3 nodes, 3 edges).\n"
887 <<
"3 Quadrilateral (4 nodes, 4 edges).\n"
888 <<
"4 Tetrahedron (4 nodes, 6 edges, 4 faces) when in 3d.\n"
889 <<
"5 Hexahedron (8 nodes, 12 edges, 6 faces) when in 3d.\n"
890 <<
"15 Point (1 node, ignored when read).");
897 "While reading a gmsh file, the reader function did not find "
898 "any cells. This sometimes happens if the file only contains a "
899 "surface mesh, but not a volume mesh."
901 "The reader function did find " +
902 std::to_string(arg1) +
" lines and " + std::to_string(arg2) +
903 " facets (surface triangles or quadrilaterals).");
963 std::vector<unsigned int> &tecplot2deal,
964 unsigned int &n_vars,
965 unsigned int &n_vertices,
966 unsigned int &n_cells,
967 std::vector<unsigned int> &IJK,
995 const std::vector<
Point<2>> &vertices,
1002 const std::vector<
Point<3>> &vertices,
1007 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_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)
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