|
|
using | Layout_t = FieldLayout< Dim > |
| |
|
using | Domain_t = NDIndex< Dim > |
| | Domain type specifying the index region.
|
| |
|
using | view_type = typename detail::ViewType< T, Dim, ViewArgs... >::view_type |
| | View type storing the data.
|
| |
|
typedef view_type::memory_space | memory_space |
| |
|
typedef view_type::execution_space | execution_space |
| |
|
using | host_mirror_type = typename view_type::host_mirror_type |
| |
|
template<class... PolicyArgs> |
| using | policy_type = typename RangePolicy< Dim, PolicyArgs... >::policy_type |
| |
|
using | halo_type = detail::HaloCells< T, Dim, ViewArgs... > |
| |
|
using | value_type = T |
| |
|
| | BareField () |
| |
|
| BareField (const BareField &)=default |
| |
| | BareField (Layout_t &l, int nghost=1) |
| |
| BareField | deepCopy () const |
| |
| template<typename... Args> |
| void | resize (Args... args) |
| |
| void | initialize (Layout_t &l, int nghost=1) |
| |
|
void | updateLayout (Layout_t &, int nghost=1) |
| |
| detail::size_type | size (unsigned d) const |
| |
| const Domain_t & | getOwned () const |
| |
| const Domain_t | getAllocated () const |
| |
|
int | getNghost () const |
| |
|
void | fillHalo () |
| |
|
void | accumulateHalo () |
| |
|
void | accumulateHalo_noghost (int nghost=1) |
| |
|
auto & | getCommunicator () const |
| |
|
Layout_t & | getLayout () const |
| |
|
const Index & | getIndex (unsigned d) const |
| |
|
const NDIndex< Dim > & | getDomain () const |
| |
|
halo_type & | getHalo () |
| |
|
BareField & | operator= (T x) |
| |
| template<typename E , size_t N> |
| BareField & | operator= (const detail::Expression< E, N > &expr) |
| |
| template<typename... Args> |
| KOKKOS_INLINE_FUNCTION T | operator() (Args... args) const |
| |
|
view_type & | getView () |
| |
|
const view_type & | getView () const |
| |
|
host_mirror_type | getHostMirror () const |
| |
| template<class... PolicyArgs> |
| policy_type< execution_space, PolicyArgs... > | getFieldRangePolicy (const int nghost=0) const |
| |
| void | write (std::ostream &out=std::cout) const |
| |
| void | write (Inform &inf) const |
| |
| void | write_as_list (std::ostream &out=std::cout) const |
| |
| void | write_as_list (Inform &inf) const |
| |
|
T | sum (int nghost=0) const |
| |
|
T | max (int nghost=0) const |
| |
|
T | min (int nghost=0) const |
| |
|
T | prod (int nghost=0) const |
| |
|
template<typename E , size_t N> |
| BareField< T, Dim, ViewArgs... > & | operator= (const detail::Expression< E, N > &expr) |
| |
| KOKKOS_INLINE_FUNCTION auto | operator[] (size_t i) const |
| |
template<typename T, unsigned Dim, class... ViewArgs>
class ippl::BareField< T, Dim, ViewArgs >
- Template Parameters
-
| T | data type |
| Dim | field dimension |
- Warning
- The implementation currently only supports 3-dimensional fields. The reason are runtime issues with "if constrexpr" in the assignment operator when running on GPU.
template<typename T , unsigned Dim, class... ViewArgs>
template<class... PolicyArgs>
| policy_type< execution_space, PolicyArgs... > ippl::BareField< T, Dim, ViewArgs >::getFieldRangePolicy |
( |
const int |
nghost = 0 | ) |
const |
|
inline |
Generate the range policy for iterating over the field, excluding ghost layers
- Template Parameters
-
| PolicyArgs... | additional template parameters for the range policy |
- Parameters
-
| nghost | Number of ghost layers to include in the range policy (default 0) |
- Returns
- Range policy for iterating over the field and nghost of the ghost layers