ryujin 2.1.1 revision 955e869188d49b3c97ca7b1cf4fd9ceb0e6f46ef
|
#include <source/mesh_adaptor.h>
Public Member Functions | |
Constructor and setup | |
MeshAdaptor (const MPIEnsemble &mpi_ensemble, const OfflineData< dim, Number > &offline_data, const HyperbolicSystem &hyperbolic_system, const ParabolicSystem ¶bolic_system, const InitialPrecomputedVector &initial_precomputed, const ScalarVector &alpha, const std::string &subsection="/MeshAdaptor") | |
void | prepare (const Number t) |
void | analyze (const StateVector &state_vector, const Number t, unsigned int cycle) |
const auto & | need_mesh_adaptation () const |
void | mark_cells_for_coarsening_and_refinement (Triangulation &triangulation) const |
Typedefs and constexpr constants | |
using | HyperbolicSystem = typename Description::HyperbolicSystem |
using | ParabolicSystem = typename Description::ParabolicSystem |
using | Triangulation = typename Discretization< dim >::Triangulation |
using | View = typename Description::template HyperbolicSystemView< dim, Number > |
using | StateVector = typename View::StateVector |
using | InitialPrecomputedVector = typename View::InitialPrecomputedVector |
using | ScalarVector = Vectors::ScalarVector< Number > |
static constexpr auto | problem_dimension = View::problem_dimension |
The MeshAdaptor class is responsible for performing global or local mesh adaptation.
Definition at line 107 of file mesh_adaptor.h.
using ryujin::MeshAdaptor< Description, dim, Number >::HyperbolicSystem = typename Description::HyperbolicSystem |
Definition at line 115 of file mesh_adaptor.h.
using ryujin::MeshAdaptor< Description, dim, Number >::ParabolicSystem = typename Description::ParabolicSystem |
Definition at line 116 of file mesh_adaptor.h.
using ryujin::MeshAdaptor< Description, dim, Number >::Triangulation = typename Discretization<dim>::Triangulation |
Definition at line 118 of file mesh_adaptor.h.
using ryujin::MeshAdaptor< Description, dim, Number >::View = typename Description::template HyperbolicSystemView<dim, Number> |
Definition at line 120 of file mesh_adaptor.h.
using ryujin::MeshAdaptor< Description, dim, Number >::StateVector = typename View::StateVector |
Definition at line 125 of file mesh_adaptor.h.
using ryujin::MeshAdaptor< Description, dim, Number >::InitialPrecomputedVector = typename View::InitialPrecomputedVector |
Definition at line 126 of file mesh_adaptor.h.
using ryujin::MeshAdaptor< Description, dim, Number >::ScalarVector = Vectors::ScalarVector<Number> |
Definition at line 127 of file mesh_adaptor.h.
ryujin::MeshAdaptor< Description, dim, Number >::MeshAdaptor | ( | const MPIEnsemble & | mpi_ensemble, |
const OfflineData< dim, Number > & | offline_data, | ||
const HyperbolicSystem & | hyperbolic_system, | ||
const ParabolicSystem & | parabolic_system, | ||
const InitialPrecomputedVector & | initial_precomputed, | ||
const ScalarVector & | alpha, | ||
const std::string & | subsection = "/MeshAdaptor< Description, dim, Number >" |
||
) |
Constructor.
Definition at line 18 of file mesh_adaptor.template.h.
References ryujin::fixed_number, ryujin::fixed_time_points, and ryujin::global_refinement.
void ryujin::MeshAdaptor< Description, dim, Number >::prepare | ( | const Number | t | ) |
Prepare temporary storage and clean up internal data for the analyze() facility.
Definition at line 129 of file mesh_adaptor.template.h.
References ryujin::fixed_time_points.
void ryujin::MeshAdaptor< Description, dim, Number >::analyze | ( | const StateVector & | state_vector, |
const Number | t, | ||
unsigned int | cycle | ||
) |
Analyze the given StateVector with the configured adaptation strategy and time point selection strategy and decide whether a mesh adaptation cycle should be performed.
Definition at line 236 of file mesh_adaptor.template.h.
References ryujin::fixed_time_points, ryujin::global_refinement, ryujin::kelly_estimator, ryujin::random_adaptation, and ryujin::simulation_cycle.
|
inline |
A boolean indicating whether we should perform a mesh adapation step in the current cycle. The analyze() method will set this boolean to true whenever the selected adaptation strategy advices to perform an adaptation cycle.
Definition at line 167 of file mesh_adaptor.h.
void ryujin::MeshAdaptor< Description, dim, Number >::mark_cells_for_coarsening_and_refinement | ( | Triangulation & | triangulation | ) | const |
Mark cells for coarsening and refinement with the configured mesh adaptation and marking strategies.
Definition at line 303 of file mesh_adaptor.template.h.
References ryujin::fixed_fraction, ryujin::fixed_number, ryujin::global_refinement, ryujin::kelly_estimator, and ryujin::random_adaptation.
|
staticconstexpr |
Definition at line 123 of file mesh_adaptor.h.