23 int coarse_cell = fine_cell;
24 for (
int l = 0; l < level_range; ++l )
26 coarse_cell = Kokkos::floor( coarse_cell / 2 );
31template <
typename ScalarT >
46 const int level_range_;
52 const int level_range,
54 : fine_domain_( fine_domain )
56 , GCAElements_( GCAElements )
57 , level_range_( level_range )
63 KOKKOS_INLINE_FUNCTION
void
64 operator()(
const int local_subdomain_id,
const int x_cell,
const int y_cell,
const int r_cell )
const
72 ScalarT quad_weights[num_quad_points];
76 for (
int wedge = 0; wedge < num_wedges_per_hex_cell; wedge++ )
78 const auto qp = quad_points[0];
81 for (
int j = 0; j < num_nodes_per_wedge; j++ )
85 auto k_grad_norm = k_grad_eval.
norm();
86 if ( k_grad_norm > 10 )
93 GCAElements_( local_subdomain_id, x_cell_coarsest, y_cell_coarsest, r_cell_coarsest ) = 1;
Parallel data structure organizing the thick spherical shell metadata for distributed (MPI parallel) ...
Definition spherical_shell.hpp:2498
Definition gca_elements_collector.hpp:33
GCAElementsCollector(const grid::shell::DistributedDomain &fine_domain, const grid::Grid4DDataScalar< ScalarType > &k, const int level_range, grid::Grid4DDataScalar< ScalarType > GCAElements)
Definition gca_elements_collector.hpp:49
void operator()(const int local_subdomain_id, const int x_cell, const int y_cell, const int r_cell) const
Definition gca_elements_collector.hpp:64
ScalarT ScalarType
Definition gca_elements_collector.hpp:35
constexpr void quad_felippa_1x1_quad_points(dense::Vec< T, 3 >(&quad_points)[quad_felippa_1x1_num_quad_points])
Definition wedge/quadrature/quadrature.hpp:36
constexpr int quad_felippa_1x1_num_quad_points
Definition wedge/quadrature/quadrature.hpp:32
constexpr int num_wedges_per_hex_cell
Definition kernel_helpers.hpp:5
void extract_local_wedge_scalar_coefficients(dense::Vec< T, 6 >(&local_coefficients)[2], const int local_subdomain_id, const int x_cell, const int y_cell, const int r_cell, const grid::Grid4DDataScalar< T > &global_coefficients)
Extracts the local vector coefficients for the two wedges of a hex cell from the global coefficient v...
Definition kernel_helpers.hpp:306
constexpr int num_nodes_per_wedge
Definition kernel_helpers.hpp:7
constexpr dense::Vec< T, 3 > grad_shape(const int node_idx, const T xi, const T eta, const T zeta)
Gradient of the full shape function:
Definition integrands.hpp:228
Kokkos::MDRangePolicy< Kokkos::Rank< 4 > > local_domain_md_range_policy_cells(const DistributedDomain &distributed_domain)
Definition spherical_shell.hpp:2668
Kokkos::View< ScalarType ****, Layout > Grid4DDataScalar
Definition grid_types.hpp:25
Definition block_preconditioner_2x2.hpp:7
int map_to_coarse_element(const int fine_cell, const int level_range)
Definition gca_elements_collector.hpp:21
T norm() const
Definition vec.hpp:76