Algorithm#

namespace samurai#

Enums

enum class Run#

Values:

enumerator Sequential#
enumerator Parallel#
enum class Get#

Values:

enumerator Cells#
enumerator Intervals#

Functions

template<std::size_t dim, class TInterval, std::size_t max_size, class Func>
void for_each_level(const CellArray<dim, TInterval, max_size> &ca, Func &&f, bool include_empty_levels = false)#
template<class Mesh, class Func>
void for_each_level(const Mesh &mesh, Func &&f, bool include_empty_levels = false)#
template<std::size_t dim, class TInterval, class Func>
void for_each_interval(const LevelCellArray<dim, TInterval> &lca, Func &&f)#
template<std::size_t dim, class TInterval, class Func>
void for_each_interval(LevelCellArray<dim, TInterval> &lca, Func &&f)#
template<std::size_t dim, class TInterval, std::size_t max_size, class Func>
void for_each_interval(const CellArray<dim, TInterval, max_size> &ca, Func &&f)#
template<std::size_t dim, class TInterval, std::size_t max_size, class Func>
void for_each_interval(CellArray<dim, TInterval, max_size> &ca, Func &&f)#
template<mesh_like Mesh, class Func>
void for_each_interval(const Mesh &mesh, Func &&f)#
template<class Func, class Set>
void for_each_interval(const SetBase<Set> &set, Func &&f)#
template<std::size_t dim, class TInterval, class Func>
void for_each_meshinterval(const LevelCellArray<dim, TInterval> &lca, Func &&f)#
template<std::size_t dim, class TInterval, std::size_t max_size, class Func>
void for_each_meshinterval(const CellArray<dim, TInterval, max_size> &ca, Func &&f)#
template<class MeshIntervalType, class SetType, class Func>
void for_each_meshinterval(SetType &set, Func &&f)#
template<class MeshIntervalType, class SetType, class Func>
void parallel_for_each_meshinterval(SetType &set, Func &&f)#
template<class MeshIntervalType, Run run_type, class SetType, class Func>
void for_each_meshinterval(SetType &set, Func &&f)#
template<std::size_t dim, class TInterval, class Func>
void for_each_cell(const LevelCellArray<dim, TInterval> &lca, Func &&f)#
template<std::size_t dim, class TInterval, class Func>
void parallel_for_each_cell(const LevelCellArray<dim, TInterval> &lca, Func &&f)#
template<Run run_type, std::size_t dim, class TInterval, class Func>
void for_each_cell(const LevelCellArray<dim, TInterval> &lca, Func &&f)#
template<std::size_t dim, class TInterval, class Func, class F, class ...CT>
void for_each_cell(const LevelCellArray<dim, TInterval> &lca, subset_operator<F, CT...> set, Func &&f)#
template<Run run_type, std::size_t dim, class TInterval, std::size_t max_size, class Func>
void for_each_cell(const CellArray<dim, TInterval, max_size> &ca, Func &&f)#
template<std::size_t dim, class TInterval, std::size_t max_size, class Func>
void for_each_cell(const CellArray<dim, TInterval, max_size> &ca, Func &&f)#
template<Run run_type, class Mesh, class Func>
void for_each_cell(const Mesh &mesh, Func &&f)#
template<class Mesh, class Func>
void for_each_cell(const Mesh &mesh, Func &&f)#
template<class Mesh, class Func>
void for_each_cell(const hold<Mesh> &mesh, Func &&f)#
template<class Mesh, class coord_type, class Func>
void for_each_cell(const Mesh &mesh, std::size_t level, const typename Mesh::interval_t &i, const coord_type &index, Func &&f)#
template<class Mesh, class SetType, class Func>
void for_each_cell(const Mesh &mesh, SetType &set, Func &&f)#
template<std::size_t dim, class TInterval, class index_t = typename TInterval::index_t, class coord_index_t = typename TInterval::coord_index_t>
index_t find(const LevelCellArray<dim, TInterval> &lca, const xt::xtensor_fixed<coord_index_t, xt::xshape<dim>> &coord)#
template<std::size_t dim, class TInterval, class coord_index_t = typename TInterval::coord_index_t, class index_t = typename TInterval::index_t>
auto find_on_dim(const LevelCellArray<dim, TInterval> &lca, std::size_t d, std::size_t start_index, std::size_t end_index, coord_index_t coord)#
template<std::size_t dim, class TInterval>
auto find_cell(const LevelCellArray<dim, TInterval> &lca, const typename LevelCellArray<dim, TInterval>::cell_t::coords_t &cartesian_coords)#
template<std::size_t dim, class TInterval, std::size_t max_size>
auto find_cell(const CellArray<dim, TInterval, max_size> &ca, const typename CellArray<dim, TInterval, max_size>::cell_t::coords_t &cartesian_coords)#
template<class Mesh>
auto find_cell(const Mesh &mesh, const typename Mesh::cell_t::coords_t &cartesian_coords)#
template<std::size_t dim, class TInterval>
auto find_cell(const LevelCellArray<dim, TInterval> &lca, const typename LevelCellArray<dim, TInterval>::cell_t::indices_t &indices)#
template<std::size_t dim, class TInterval, std::size_t max_size>
auto find_cell(const CellArray<dim, TInterval, max_size> &ca, const typename CellArray<dim, TInterval, max_size>::cell_t::indices_t &indices, const std::size_t level_ref)#
template<std::size_t dim, class TInterval, std::size_t max_size>
auto find_cell(const CellArray<dim, TInterval, max_size> &ca, const typename CellArray<dim, TInterval, max_size>::cell_t::indices_t &indices)#
template<class Mesh>
auto find_cell(const Mesh &mesh, const typename Mesh::cell_t::indices_t &indices, const std::size_t level_ref)#
template<class Mesh>
auto find_cell(const Mesh &mesh, const typename Mesh::cell_t::indices_t &indices)#
namespace detail#

Functions

template<class ForwardIt, class T>
auto interval_search(ForwardIt first, ForwardIt last, const T &value)#
template<std::size_t dim, class TInterval, class index_t = typename TInterval::index_t, class coord_index_t = typename TInterval::coord_index_t>
index_t find_impl(const LevelCellArray<dim, TInterval> &lca, std::size_t start_index, std::size_t end_index, const xt::xtensor_fixed<coord_index_t, xt::xshape<dim>> &coord, std::integral_constant<std::size_t, 0>)#
template<std::size_t dim, class TInterval, class index_t = typename TInterval::index_t, class coord_index_t = typename TInterval::coord_index_t, std::size_t N>
index_t find_impl(const LevelCellArray<dim, TInterval> &lca, std::size_t start_index, std::size_t end_index, const xt::xtensor_fixed<coord_index_t, xt::xshape<dim>> &coord, std::integral_constant<std::size_t, N>)#
namespace placeholders#