deal.II version GIT relicensing-2287-g6548a49e0a 2024-12-20 18:30:00+00:00
|
#include <deal.II/base/config.h>
#include <deal.II/base/exceptions.h>
#include <deal.II/base/function.h>
#include <deal.II/base/point.h>
#include <deal.II/base/table.h>
#include <deal.II/grid/reference_cell.h>
#include <deal.II/grid/tria.h>
#include <deal.II/cgal/additional_data.h>
#include <array>
#include <limits>
#include <map>
Go to the source code of this file.
Classes | |
struct | GridGenerator::Airfoil::AdditionalData |
Namespaces | |
namespace | GridGenerator |
namespace | GridGenerator::Airfoil |
Functions | |
template<int dim> | |
void | GridGenerator::Airfoil::create_triangulation (Triangulation< dim, dim > &tria, const AdditionalData &additional_data=AdditionalData()) |
template<int dim> | |
void | GridGenerator::Airfoil::create_triangulation (Triangulation< dim, dim > &tria, std::vector< GridTools::PeriodicFacePair< typename Triangulation< dim, dim >::cell_iterator > > &periodic_faces, const AdditionalData &additional_data=AdditionalData()) |
Creating meshes for basic geometries | |
template<int dim, int spacedim> | |
void | GridGenerator::hyper_cube (Triangulation< dim, spacedim > &tria, const double left=0., const double right=1., const bool colorize=false) |
template<int dim> | |
void | GridGenerator::simplex (Triangulation< dim, dim > &tria, const std::vector< Point< dim > > &vertices) |
template<int dim, int spacedim> | |
void | GridGenerator::reference_cell (Triangulation< dim, spacedim > &tria, const ReferenceCell &reference_cell) |
template<int dim, int spacedim> | |
void | GridGenerator::subdivided_hyper_cube (Triangulation< dim, spacedim > &tria, const unsigned int repetitions, const double left=0., const double right=1., const bool colorize=false) |
template<int dim, int spacedim> | |
void | GridGenerator::hyper_rectangle (Triangulation< dim, spacedim > &tria, const Point< dim > &p1, const Point< dim > &p2, const bool colorize=false) |
template<int dim, int spacedim> | |
void | GridGenerator::subdivided_hyper_rectangle (Triangulation< dim, spacedim > &tria, const std::vector< unsigned int > &repetitions, const Point< dim > &p1, const Point< dim > &p2, const bool colorize=false) |
template<int dim> | |
void | GridGenerator::subdivided_hyper_rectangle (Triangulation< dim > &tria, const std::vector< std::vector< double > > &step_sizes, const Point< dim > &p_1, const Point< dim > &p_2, const bool colorize=false) |
template<int dim> | |
void | GridGenerator::subdivided_hyper_rectangle (Triangulation< dim > &tria, const std::vector< std::vector< double > > &spacing, const Point< dim > &p, const Table< dim, types::material_id > &material_id, const bool colorize=false) |
template<int dim, int spacedim> | |
void | GridGenerator::cheese (Triangulation< dim, spacedim > &tria, const std::vector< unsigned int > &holes) |
Rectangular domain with rectangular pattern of holes. | |
template<int dim> | |
void | GridGenerator::plate_with_a_hole (Triangulation< dim > &tria, const double inner_radius=0.4, const double outer_radius=1., const double pad_bottom=2., const double pad_top=2., const double pad_left=1., const double pad_right=1., const Point< dim > ¢er=Point< dim >(), const types::manifold_id polar_manifold_id=0, const types::manifold_id tfi_manifold_id=1, const double L=1., const unsigned int n_slices=2, const bool colorize=false) |
Rectangular plate with an (offset) cylindrical hole. | |
template<int dim> | |
void | GridGenerator::channel_with_cylinder (Triangulation< dim > &tria, const double shell_region_width=0.03, const unsigned int n_shells=2, const double skewness=2.0, const bool colorize=false) |
template<int dim, int spacedim> | |
void | GridGenerator::general_cell (Triangulation< dim, spacedim > &tria, const std::vector< Point< spacedim > > &vertices, const bool colorize=false) |
template<int dim> | |
void | GridGenerator::parallelogram (Triangulation< dim > &tria, const Point< dim >(&corners)[dim], const bool colorize=false) |
template<int dim> | |
void | GridGenerator::parallelepiped (Triangulation< dim > &tria, const Point< dim >(&corners)[dim], const bool colorize=false) |
template<int dim> | |
void | GridGenerator::subdivided_parallelepiped (Triangulation< dim > &tria, const unsigned int n_subdivisions, const Point< dim >(&corners)[dim], const bool colorize=false) |
template<int dim> | |
void | GridGenerator::subdivided_parallelepiped (Triangulation< dim > &tria, const unsigned int(&n_subdivisions)[dim], const Point< dim >(&corners)[dim], const bool colorize=false) |
template<int dim, int spacedim> | |
void | GridGenerator::subdivided_parallelepiped (Triangulation< dim, spacedim > &tria, const Point< spacedim > &origin, const std::array< Tensor< 1, spacedim >, dim > &edges, const std::vector< unsigned int > &subdivisions={}, const bool colorize=false) |
template<int dim> | |
void | GridGenerator::enclosed_hyper_cube (Triangulation< dim > &tria, const double left=0., const double right=1., const double thickness=1., const bool colorize=false) |
template<int dim> | |
void | GridGenerator::hyper_ball (Triangulation< dim > &tria, const Point< dim > ¢er=Point< dim >(), const double radius=1., const bool attach_spherical_manifold_on_boundary_cells=false) |
template<int dim> | |
void | GridGenerator::hyper_ball_balanced (Triangulation< dim > &tria, const Point< dim > ¢er=Point< dim >(), const double radius=1.) |
void | GridGenerator::non_standard_orientation_mesh (Triangulation< 2 > &tria, const unsigned int n_rotate_middle_square) |
void | GridGenerator::non_standard_orientation_mesh (Triangulation< 3 > &tria, const bool face_orientation, const bool face_flip, const bool face_rotation, const bool manipulate_left_cube) |
template<int spacedim> | |
void | GridGenerator::hyper_sphere (Triangulation< spacedim - 1, spacedim > &tria, const Point< spacedim > ¢er=Point< spacedim >(), const double radius=1.) |
template<int dim> | |
void | GridGenerator::quarter_hyper_ball (Triangulation< dim > &tria, const Point< dim > ¢er=Point< dim >(), const double radius=1.) |
template<int dim> | |
void | GridGenerator::half_hyper_ball (Triangulation< dim > &tria, const Point< dim > ¢er=Point< dim >(), const double radius=1.) |
template<int dim> | |
void | GridGenerator::cylinder (Triangulation< dim > &tria, const double radius=1., const double half_length=1.) |
template<int dim> | |
void | GridGenerator::subdivided_cylinder (Triangulation< dim > &tria, const unsigned int x_subdivisions, const double radius=1., const double half_length=1.) |
template<int dim> | |
void | GridGenerator::truncated_cone (Triangulation< dim > &tria, const double radius_0=1.0, const double radius_1=0.5, const double half_length=1.0) |
template<int dim, int spacedim> | |
void | GridGenerator::pipe_junction (Triangulation< dim, spacedim > &tria, const std::vector< std::pair< Point< spacedim >, double > > &openings, const std::pair< Point< spacedim >, double > &bifurcation, const double aspect_ratio=0.5) |
template<int dim, int spacedim> | |
void | GridGenerator::hyper_cross (Triangulation< dim, spacedim > &tria, const std::vector< unsigned int > &sizes, const bool colorize_cells=false) |
A center cell with stacks of cell protruding from each surface. | |
template<int dim> | |
void | GridGenerator::hyper_L (Triangulation< dim > &tria, const double left=-1., const double right=1., const bool colorize=false) |
template<int dim, int spacedim> | |
void | GridGenerator::subdivided_hyper_L (Triangulation< dim, spacedim > &tria, const std::vector< unsigned int > &repetitions, const Point< dim > &bottom_left, const Point< dim > &top_right, const std::vector< int > &n_cells_to_remove) |
template<int dim> | |
void | GridGenerator::hyper_cube_slit (Triangulation< dim > &tria, const double left=0., const double right=1., const bool colorize=false) |
template<int dim, int spacedim> | |
void | GridGenerator::hyper_shell (Triangulation< dim, spacedim > &tria, const Point< spacedim > ¢er, const double inner_radius, const double outer_radius, const unsigned int n_cells=0, bool colorize=false) |
template<int dim> | |
void | GridGenerator::eccentric_hyper_shell (Triangulation< dim > &triangulation, const Point< dim > &inner_center, const Point< dim > &outer_center, const double inner_radius, const double outer_radius, const unsigned int n_cells) |
template<int dim> | |
void | GridGenerator::half_hyper_shell (Triangulation< dim > &tria, const Point< dim > ¢er, const double inner_radius, const double outer_radius, const unsigned int n_cells=0, const bool colorize=false) |
template<int dim> | |
void | GridGenerator::quarter_hyper_shell (Triangulation< dim > &tria, const Point< dim > ¢er, const double inner_radius, const double outer_radius, const unsigned int n_cells=0, const bool colorize=false) |
template<int dim> | |
void | GridGenerator::cylinder_shell (Triangulation< dim > &tria, const double length, const double inner_radius, const double outer_radius, const unsigned int n_radial_cells=0, const unsigned int n_axial_cells=0, const bool colorize=false) |
template<int dim, int spacedim> | |
void | GridGenerator::torus (Triangulation< dim, spacedim > &tria, const double centerline_radius, const double inner_radius, const unsigned int n_cells_toroidal=6, const double phi=2.0 *numbers::PI) |
template<int dim, int spacedim> | |
void | GridGenerator::hyper_cube_with_cylindrical_hole (Triangulation< dim, spacedim > &triangulation, const double inner_radius=.25, const double outer_radius=.5, const double L=.5, const unsigned int repetitions=1, const bool colorize=false) |
template<int dim> | |
void | GridGenerator::concentric_hyper_shells (Triangulation< dim > &triangulation, const Point< dim > ¢er, const double inner_radius=0.125, const double outer_radius=0.25, const unsigned int n_shells=1, const double skewness=0.1, const unsigned int n_cells_per_shell=0, const bool colorize=false) |
void | GridGenerator::moebius (Triangulation< 3, 3 > &tria, const unsigned int n_cells, const unsigned int n_rotations, const double R, const double r) |
template<int dim, int spacedim> | |
void | GridGenerator::generate_from_name_and_arguments (Triangulation< dim, spacedim > &tria, const std::string &grid_generator_function_name, const std::string &grid_generator_function_arguments) |
template<int dim> | |
void | GridGenerator::implicit_function (Triangulation< dim, 3 > &tria, const Function< 3 > &implicit_function, const CGALWrappers::AdditionalData< dim > &data=CGALWrappers::AdditionalData< dim >{}, const Point< 3 > &interior_point=Point< 3 >(), const double &outer_ball_radius=1.0) |
void | GridGenerator::surface_mesh_to_volumetric_mesh (const Triangulation< 2, 3 > &surface_tria, Triangulation< 3 > &vol_tria, const CGALWrappers::AdditionalData< 3 > &data=CGALWrappers::AdditionalData< 3 >{}) |
Creating meshes from other meshes | |
template<int dim, int spacedim> | |
void | GridGenerator::merge_triangulations (const Triangulation< dim, spacedim > &triangulation_1, const Triangulation< dim, spacedim > &triangulation_2, Triangulation< dim, spacedim > &result, const double duplicated_vertex_tolerance=1.0e-12, const bool copy_manifold_ids=false, const bool copy_boundary_ids=false) |
template<int dim, int spacedim> | |
void | GridGenerator::merge_triangulations (const std::vector< const Triangulation< dim, spacedim > * > &triangulations, Triangulation< dim, spacedim > &result, const double duplicated_vertex_tolerance=1.0e-12, const bool copy_manifold_ids=false, const bool copy_boundary_ids=false) |
template<int dim, int spacedim = dim> | |
void | GridGenerator::replicate_triangulation (const Triangulation< dim, spacedim > &input, const std::vector< unsigned int > &extents, Triangulation< dim, spacedim > &result) |
Replicate a given triangulation in multiple coordinate axes. | |
template<int dim, int spacedim> | |
void | GridGenerator::create_union_triangulation (const Triangulation< dim, spacedim > &triangulation_1, const Triangulation< dim, spacedim > &triangulation_2, Triangulation< dim, spacedim > &result) |
template<int dim, int spacedim> | |
void | GridGenerator::create_triangulation_with_removed_cells (const Triangulation< dim, spacedim > &input_triangulation, const std::set< typename Triangulation< dim, spacedim >::active_cell_iterator > &cells_to_remove, Triangulation< dim, spacedim > &result) |
void | GridGenerator::extrude_triangulation (const Triangulation< 2, 2 > &input, const unsigned int n_slices, const double height, Triangulation< 3, 3 > &result, const bool copy_manifold_ids=false, const std::vector< types::manifold_id > &manifold_priorities={}) |
void | GridGenerator::extrude_triangulation (const Triangulation< 2, 2 > &input, const unsigned int n_slices, const double height, Triangulation< 2, 2 > &result, const bool copy_manifold_ids=false, const std::vector< types::manifold_id > &manifold_priorities={}) |
void | GridGenerator::extrude_triangulation (const Triangulation< 2, 2 > &input, const std::vector< double > &slice_coordinates, Triangulation< 3, 3 > &result, const bool copy_manifold_ids=false, const std::vector< types::manifold_id > &manifold_priorities={}) |
void | GridGenerator::extrude_triangulation (const Triangulation< 2, 2 > &input, const std::vector< double > &slice_coordinates, Triangulation< 2, 2 > &result, const bool copy_manifold_ids=false, const std::vector< types::manifold_id > &manifold_priorities={}) |
template<int dim, int spacedim1, int spacedim2> | |
void | GridGenerator::flatten_triangulation (const Triangulation< dim, spacedim1 > &in_tria, Triangulation< dim, spacedim2 > &out_tria) |
template<int dim, int spacedim> | |
void | GridGenerator::convert_hypercube_to_simplex_mesh (const Triangulation< dim, spacedim > &in_tria, Triangulation< dim, spacedim > &out_tria) |
template<int dim, int spacedim> | |
void | GridGenerator::alfeld_split_of_simplex_mesh (const Triangulation< dim, spacedim > &in_tria, Triangulation< dim, spacedim > &out_tria) |
template<int dim, int spacedim> | |
void | GridGenerator::subdivided_hyper_rectangle_with_simplices (Triangulation< dim, spacedim > &tria, const std::vector< unsigned int > &repetitions, const Point< dim > &p1, const Point< dim > &p2, const bool colorize=false) |
template<int dim, int spacedim> | |
void | GridGenerator::subdivided_hyper_cube_with_simplices (Triangulation< dim, spacedim > &tria, const unsigned int repetitions, const double p1=0.0, const double p2=1.0, const bool colorize=false) |
Creating lower-dimensional meshes | |
Created from parts of higher-dimensional meshes. | |
template<template< int, int > class MeshType, int dim, int spacedim> | |
return_type | GridGenerator::extract_boundary_mesh (const MeshType< dim, spacedim > &volume_mesh, MeshType< dim - 1, spacedim > &surface_mesh, const std::set< types::boundary_id > &boundary_ids=std::set< types::boundary_id >()) |
Exceptions | |
static ::ExceptionBase & | GridGenerator::ExcInvalidRadii () |
static ::ExceptionBase & | GridGenerator::ExcInvalidRepetitions (int arg1) |
static ::ExceptionBase & | GridGenerator::ExcInvalidRepetitionsDimension (int arg1) |
static ::ExceptionBase & | GridGenerator::ExcInvalidInputOrientation () |