source/utilities/amr.cpp File Reference

Developer Documentation: source/utilities/amr.cpp File Reference
Developer Documentation
amr.cpp File Reference
#include <meltpooldg/utilities/amr.hpp>
#include <deal.II/base/exceptions.h>
#include <deal.II/distributed/grid_refinement.h>
#include <deal.II/lac/la_parallel_vector.h>
#include <deal.II/numerics/solution_transfer.h>
#include <deal.II/numerics/vector_tools_common.h>
#include <memory>
Include dependency graph for amr.cpp:

Namespaces

namespace  MeltPoolDG
 Interface for a general preconditioner.
 
namespace  MeltPoolDG::AMR
 
namespace  MeltPoolDG::AMR::internal
 

Functions

template<int dim, typename VectorType , typename number = typename VectorType::value_type>
void MeltPoolDG::AMR::refine_grid (const MarkCellsForRefinementType< dim > &mark_cells_for_refinement, const AttachDoFHandlerAndVectorsType< dim, VectorType > &attach_vectors, const std::function< void()> &setup_dof_system, const AdaptiveMeshingData< number > &amr, dealii::Triangulation< dim > &tria, const int n_time_step, const std::function< void()> &post=std::function< void()>(), const std::function< void()> &pre=std::function< void()>())
 
template<int dim, typename VectorType , typename number >
void MeltPoolDG::AMR::refine_grid (const MarkCellsForRefinementType< dim > &mark_cells_for_refinement, const std::function< void(std::vector< VectorType * > &)> &attach_vectors, const std::function< void()> &setup_dof_system, const AdaptiveMeshingData< number > &amr, dealii::DoFHandler< dim > &dof_handler, const int n_time_step, const std::function< void()> &post, const std::function< void()> &pre)
 
template<int dim, typename number >
bool MeltPoolDG::AMR::mark_fixed_number (dealii::Triangulation< dim > &tria, const dealii::Vector< number > &indicator, const AdaptiveMeshingData< number > &amr_data, dealii::types::global_cell_index max_n_cells=std::numeric_limits< dealii::types::global_cell_index >::max())
 
template<int dim, typename number >
bool MeltPoolDG::AMR::mark_fixed_fraction (dealii::Triangulation< dim > &tria, const dealii::Vector< number > &indicator, const AdaptiveMeshingData< number > &amr_data)
 
template void MeltPoolDG::AMR::refine_grid (const MarkCellsForRefinementType< 1 > &, const AttachDoFHandlerAndVectorsType< 1, dealii::LinearAlgebra::distributed::Vector< double > > &, const std::function< void()> &, const AdaptiveMeshingData< double > &, dealii::Triangulation< 1 > &, const int, const std::function< void()> &, const std::function< void()> &)
 
template void MeltPoolDG::AMR::refine_grid (const MarkCellsForRefinementType< 2 > &, const AttachDoFHandlerAndVectorsType< 2, dealii::LinearAlgebra::distributed::Vector< double > > &, const std::function< void()> &, const AdaptiveMeshingData< double > &, dealii::Triangulation< 2 > &, const int, const std::function< void()> &, const std::function< void()> &)
 
template void MeltPoolDG::AMR::refine_grid (const MarkCellsForRefinementType< 3 > &, const AttachDoFHandlerAndVectorsType< 3, dealii::LinearAlgebra::distributed::Vector< double > > &, const std::function< void()> &, const AdaptiveMeshingData< double > &, dealii::Triangulation< 3 > &, const int, const std::function< void()> &, const std::function< void()> &)
 
template void MeltPoolDG::AMR::refine_grid (const MarkCellsForRefinementType< 1 > &, const std::function< void(std::vector< dealii::LinearAlgebra::distributed::Vector< double > * > &)> &, const std::function< void()> &, const AdaptiveMeshingData< double > &, dealii::DoFHandler< 1 > &, const int, const std::function< void()> &, const std::function< void()> &)
 
template void MeltPoolDG::AMR::refine_grid (const MarkCellsForRefinementType< 2 > &, const std::function< void(std::vector< dealii::LinearAlgebra::distributed::Vector< double > * > &)> &, const std::function< void()> &, const AdaptiveMeshingData< double > &, dealii::DoFHandler< 2 > &, const int, const std::function< void()> &, const std::function< void()> &)
 
template void MeltPoolDG::AMR::refine_grid (const MarkCellsForRefinementType< 3 > &, const std::function< void(std::vector< dealii::LinearAlgebra::distributed::Vector< double > * > &)> &, const std::function< void()> &, const AdaptiveMeshingData< double > &, dealii::DoFHandler< 3 > &, const int, const std::function< void()> &, const std::function< void()> &)
 
template bool MeltPoolDG::AMR::mark_fixed_number (dealii::Triangulation< 1 > &tria, const dealii::Vector< double > &indicator, const AdaptiveMeshingData< double > &amr_data, dealii::types::global_cell_index max_n_cells)
 
template bool MeltPoolDG::AMR::mark_fixed_number (dealii::Triangulation< 2 > &tria, const dealii::Vector< double > &indicator, const AdaptiveMeshingData< double > &amr_data, dealii::types::global_cell_index max_n_cells)
 
template bool MeltPoolDG::AMR::mark_fixed_number (dealii::Triangulation< 3 > &tria, const dealii::Vector< double > &indicator, const AdaptiveMeshingData< double > &amr_data, dealii::types::global_cell_index max_n_cells)
 
template bool MeltPoolDG::AMR::mark_fixed_fraction (dealii::Triangulation< 1 > &tria, const dealii::Vector< double > &indicator, const AdaptiveMeshingData< double > &amr_data)
 
template bool MeltPoolDG::AMR::mark_fixed_fraction (dealii::Triangulation< 2 > &tria, const dealii::Vector< double > &indicator, const AdaptiveMeshingData< double > &amr_data)
 
template bool MeltPoolDG::AMR::mark_fixed_fraction (dealii::Triangulation< 3 > &tria, const dealii::Vector< double > &indicator, const AdaptiveMeshingData< double > &amr_data)
 
template<int dim, typename number >
void MeltPoolDG::AMR::internal::limit_amr (dealii::Triangulation< dim > &tria, const AdaptiveMeshingData< number > &amr_data)
 
template<int dim>
bool MeltPoolDG::AMR::internal::do_refine_based_on_n_marked_cells (const dealii::Triangulation< dim > &tria, unsigned min_cells=1)
 
template<int dim, typename number >
void MeltPoolDG::AMR::internal::clear_refine_flags_below_threshold (dealii::Triangulation< dim > &tria, const dealii::Vector< number > &indicator, number threshold)
 
template void MeltPoolDG::AMR::internal::limit_amr (dealii::Triangulation< 1 > &, const AdaptiveMeshingData< double > &)
 
template void MeltPoolDG::AMR::internal::limit_amr (dealii::Triangulation< 2 > &, const AdaptiveMeshingData< double > &)
 
template void MeltPoolDG::AMR::internal::limit_amr (dealii::Triangulation< 3 > &, const AdaptiveMeshingData< double > &)
 
template bool MeltPoolDG::AMR::internal::do_refine_based_on_n_marked_cells (const dealii::Triangulation< 1 > &tria, unsigned min_cells)
 
template bool MeltPoolDG::AMR::internal::do_refine_based_on_n_marked_cells (const dealii::Triangulation< 2 > &tria, unsigned min_cells)
 
template bool MeltPoolDG::AMR::internal::do_refine_based_on_n_marked_cells (const dealii::Triangulation< 3 > &tria, unsigned min_cells)
 
template void MeltPoolDG::AMR::internal::clear_refine_flags_below_threshold (dealii::Triangulation< 1 > &tria, const dealii::Vector< double > &indicator, double threshold)
 
template void MeltPoolDG::AMR::internal::clear_refine_flags_below_threshold (dealii::Triangulation< 2 > &tria, const dealii::Vector< double > &indicator, double threshold)
 
template void MeltPoolDG::AMR::internal::clear_refine_flags_below_threshold (dealii::Triangulation< 3 > &tria, const dealii::Vector< double > &indicator, double threshold)