45 auto const &
my_left()
const {
return m_lower_corner; }
47 auto const &
my_right()
const {
return m_upper_corner; }
49 auto const &
length()
const {
return m_local_box_l; }
59 auto const &
boundary()
const {
return m_boundaries; }
80 for (
unsigned int dir = 0
u; dir < 3u; dir++) {
Array implementation with CUDA support.
CellStructureType
Cell structure topology.
@ REGULAR
Regular decomposition.
Vector implementation and trait types for boost qvm interoperability.
auto const & my_right() const
Right (top, back) corner of this nodes local box.
void set_cell_structure_type(CellStructureType cell_structure_type)
Set cell structure type.
auto const & boundary() const
Boundary information for the local box.
auto const & cell_structure_type() const
Return cell structure type.
auto volume() const
Volume of the local box.
LocalBox(Utils::Vector3d const &lower_corner, Utils::Vector3d const &local_box_length, Utils::Array< int, 6 > const &boundaries, CellStructureType const cell_structure_type)
auto const & my_left() const
Left (bottom, front) corner of this nodes local box.
auto const & length() const
Dimensions of the box a single node is responsible for.
static LocalBox make_regular_decomposition(Utils::Vector3d const &box_l, Utils::Vector3i const &node_index, Utils::Vector3i const &node_grid)
cudaStream_t stream[1]
CUDA streams for parallel computing on CPU and GPU.
T product(Vector< T, N > const &v)
auto hadamard_division(Vector< T, N > const &a, Vector< U, N > const &b)
auto hadamard_product(Vector< T, N > const &a, Vector< U, N > const &b)