deal.II version GIT relicensing-2167-g9622207b8f 2024-11-21 12:40:00+00:00
\(\newcommand{\dealvcentcolon}{\mathrel{\mathop{:}}}\) \(\newcommand{\dealcoloneq}{\dealvcentcolon\mathrel{\mkern-1.2mu}=}\) \(\newcommand{\jump}[1]{\left[\!\left[ #1 \right]\!\right]}\) \(\newcommand{\average}[1]{\left\{\!\left\{ #1 \right\}\!\right\}}\)
Loading...
Searching...
No Matches
grid_refinement.h
Go to the documentation of this file.
1// ------------------------------------------------------------------------
2//
3// SPDX-License-Identifier: LGPL-2.1-or-later
4// Copyright (C) 2000 - 2023 by the deal.II authors
5//
6// This file is part of the deal.II library.
7//
8// Part of the source code is dual licensed under Apache-2.0 WITH
9// LLVM-exception OR LGPL-2.1-or-later. Detailed license information
10// governing the source code and code contributions can be found in
11// LICENSE.md and CONTRIBUTING.md at the top level directory of deal.II.
12//
13// ------------------------------------------------------------------------
14
15#ifndef dealii_grid_refinement_h
16#define dealii_grid_refinement_h
17
18
19#include <deal.II/base/config.h>
20
22
24
25#include <limits>
26
28
29// forward declarations
30#ifndef DOXYGEN
31template <int dim, int spacedim>
33class Triangulation;
34template <typename Number>
35class Vector;
36#endif
37
56{
88 template <int dim>
89 std::pair<double, double>
91 const types::global_cell_index current_n_cells,
92 const types::global_cell_index max_n_cells,
93 const double top_fraction_of_cells,
94 const double bottom_fraction_of_cells);
95
160 template <int dim, typename Number, int spacedim>
161 void
164 const Vector<Number> &criteria,
165 const double top_fraction_of_cells,
166 const double bottom_fraction_of_cells,
167 const unsigned int max_n_cells = std::numeric_limits<unsigned int>::max());
168
231 template <int dim, typename Number, int spacedim>
232 void
235 const Vector<Number> &criteria,
236 const double top_fraction,
237 const double bottom_fraction,
238 const unsigned int max_n_cells = std::numeric_limits<unsigned int>::max(),
240
241
242
314 template <int dim, typename Number, int spacedim>
315 void
317 const Vector<Number> &criteria,
318 const unsigned int order = 2);
319
334 template <int dim, typename Number, int spacedim>
335 void
337 const Vector<Number> &criteria,
338 const double threshold,
339 const unsigned int max_to_mark = numbers::invalid_unsigned_int);
340
355 template <int dim, typename Number, int spacedim>
356 void
358 const Vector<Number> &criteria,
359 const double threshold);
360
366
372} // namespace GridRefinement
373
374
375
377
378#endif // dealii_grid_refinement_h
#define DEAL_II_NAMESPACE_OPEN
Definition config.h:498
#define DEAL_II_CXX20_REQUIRES(condition)
Definition config.h:175
#define DEAL_II_NAMESPACE_CLOSE
Definition config.h:499
#define DeclException0(Exception0)
Definition exceptions.h:466
static ::ExceptionBase & ExcNegativeCriteria()
static ::ExceptionBase & ExcInvalidParameterValue()
void refine(Triangulation< dim, spacedim > &tria, const Vector< Number > &criteria, const double threshold, const unsigned int max_to_mark=numbers::invalid_unsigned_int)
void refine_and_coarsen_fixed_number(Triangulation< dim, spacedim > &triangulation, const Vector< Number > &criteria, const double top_fraction_of_cells, const double bottom_fraction_of_cells, const unsigned int max_n_cells=std::numeric_limits< unsigned int >::max())
void refine_and_coarsen_optimize(Triangulation< dim, spacedim > &tria, const Vector< Number > &criteria, const unsigned int order=2)
void coarsen(Triangulation< dim, spacedim > &tria, const Vector< Number > &criteria, const double threshold)
std::pair< double, double > adjust_refine_and_coarsen_number_fraction(const types::global_cell_index current_n_cells, const types::global_cell_index max_n_cells, const double top_fraction_of_cells, const double bottom_fraction_of_cells)
void refine_and_coarsen_fixed_fraction(Triangulation< dim, spacedim > &tria, const Vector< Number > &criteria, const double top_fraction, const double bottom_fraction, const unsigned int max_n_cells=std::numeric_limits< unsigned int >::max(), const VectorTools::NormType norm_type=VectorTools::L1_norm)
static const unsigned int invalid_unsigned_int
Definition types.h:220
const ::parallel::distributed::Triangulation< dim, spacedim > * triangulation