6#include <deal.II/base/bounding_box.h>
7#include <deal.II/base/point.h>
8#include <deal.II/grid/tria_accessor.h>
18#include <prismspf/config.h>
30template <
unsigned int dim>
35 dealii::CellAccessor<dim>;
36 using prisms::CellMarkerBase<dim>
::flag;
50 if (
nuc_params->check_active(nucleus, time_info))
52 static dealii::Point<dim> unit_corner = []()
55 for (
unsigned int d = 0; d < dim; ++d)
61 dealii::BoundingBox<dim> nucleus_bounding_box(
62 std::make_pair<dealii::Point<dim>, dealii::Point<dim>>(
63 dealii::Point<dim>(nucleus.location -
64 (unit_corner *
nuc_params->get_refinement_radius())),
65 dealii::Point<dim>(nucleus.location +
66 (unit_corner *
nuc_params->get_refinement_radius()))));
67 if (cell.bounding_box().has_overlap_with(nucleus_bounding_box))
80PRISMS_PF_END_NAMESPACE
Base class for cell markers.
Definition cell_marker_base.h:25
dealii::CellAccessor< dim > CellIterator
Definition nucleus_refinement_function.h:34
const std::vector< Nucleus< dim > > * nuclei_list
Definition nucleus_refinement_function.h:77
NucleusRefinementFunction(const NucleationParameters &_nuc_params, const std::vector< Nucleus< dim > > &_nuclei_list)
Definition nucleus_refinement_function.h:38
bool flag(const CellIterator &cell, const SimulationTimer &time_info) const override
Definition nucleus_refinement_function.h:45
const NucleationParameters * nuc_params
Definition nucleus_refinement_function.h:76
Definition simulation_timer.h:13
Definition conditional_ostreams.cc:20
Struct that holds nucleation parameters.
Definition nucleation_parameters.h:27
This class contains mutable utilities for phase field problems.
Definition nucleus.h:23