Class TempLat::Field
template <typename T, size_t _NDim>
A class which is a classical field on your n-dimensional equisized grid. You use it as a scalar field, a vector component, whatever. Template parameter is your type of floating point precision: float or double. Default: double. More...
#include <field.h>
Inherits the following classes: TempLat::FieldNDimCheck, TempLat::ConfigView
Public Types
| Type | Name |
|---|---|
| typedef T | value_type |
Public Static Attributes
| Type | Name |
|---|---|
| constexpr size_t | NDim = \_NDim |
Public Static Attributes inherited from TempLat::ConfigView
| Type | Name |
|---|---|
| constexpr size_t | NDim = \_NDim |
Public Static Attributes inherited from TempLat::AbstractField
| Type | Name |
|---|---|
| constexpr size_t | NDim = \_NDim |
Public Functions
| Type | Name |
|---|---|
| Field (std::string name, device::memory::host_ptr< MemoryToolBox< NDim > > toolBox, LatticeParameters< T > pLatPar=LatticeParameters< T >()) |
|
| auto | d (const S & other) const |
| device::Idx | d (const Field< T, NDim > & other) const The real overlord: is it a Field , then we must compare. |
| auto | d (const S & other) const |
| FourierView< T, NDim > & | inFourierSpace () |
| void | operator= (R && g) |
| void | operator= (const Field< T, NDim > & other) |
Public Functions inherited from TempLat::ConfigView
| Type | Name |
|---|---|
| ConfigView (std::string name, device::memory::host_ptr< MemoryToolBox< NDim > > toolBox, LatticeParameters< T > pLatPar) |
|
| void | assign (R && g) |
| void | confirmSpace (const LayoutStruct< NDim > & newLayout, const SpaceStateType & spaceType) const |
| DEVICE_INLINE_FUNCTION auto | eval (const IDX &... idx) const |
| auto | getFullNDHostView () const |
| const auto & | getLayout () const |
| auto | getLocalNDHostView () const |
| auto | getRawHostView () const |
| DEVICE_INLINE_FUNCTION T & | getSet (IDX &&... idx) const |
| auto | getView () const |
| void | onBeforeAssignment (R && g) |
| void | operator+= (R && g) |
| void | operator= (R && g) |
| void | operator= (const ConfigView< T, NDim > & other) |
| void | setDisableFFTBlocking () Disable the blocking of going from configuration space to fourier space. Used by PowerSpectrumBuilder, which uses newly allocate memory which is filled in configuration space, and then FFT'ed to fourier space. |
| std::string | toString () const |
| std::string | to_string () const |
| void | updateGhosts () const |
Public Functions inherited from TempLat::AbstractField
| Type | Name |
|---|---|
| AbstractField (std::string name, device::memory::host_ptr< MemoryToolBox< NDim > > toolBox, LatticeParameters< T > pLatPar) |
|
| bool | areGhostsStale () const |
| device::Idx | confirmGhostsUpToDate () const |
| void | confirmSpace (const LayoutStruct< NDim > & newLayout, const SpaceStateType & spaceType) const |
| auto | getDx () const |
| auto | getKIR () const |
| auto | getLatParams () const |
| device::memory::host_ptr< MemoryManager< T, NDim > > | getMemoryManager () const |
| device::memory::host_ptr< MemoryToolBox< NDim > > | getToolBox () const |
| bool | isConfigSpace () const Check the current state. |
| bool | isFourierSpace () const Check the current state. |
| void | setGhostsAreStale () const |
Protected Attributes inherited from TempLat::AbstractField
| Type | Name |
|---|---|
| const LatticeParameters< T > | latPar |
| device::memory::host_ptr< MemoryManager< T, NDim > > | mManager |
| device::memory::host_ptr< MemoryToolBox< NDim > > | mToolBox |
Detailed Description
Implements a get method, and is hence suitable for all algebra.
Unit test: ctest -R test-field
@vocab-summary A real scalar field on the lattice, and the type that owns the memory. Assigning to it evaluates an expression across every site; passing it into one makes it a leaf. @vocab-signature Field<T, NDim> phi("phi", toolBox);
Public Types Documentation
typedef value_type
Public Static Attributes Documentation
variable NDim
Public Functions Documentation
function Field
inline TempLat::Field::Field (
std::string name,
device::memory::host_ptr < MemoryToolBox < NDim > > toolBox,
LatticeParameters < T > pLatPar=LatticeParameters < T >()
)
function d [1/3]
function d [2/3]
The real overlord: is it a Field , then we must compare.
function d [3/3]
function inFourierSpace
function operator=
function operator=
Friends Documentation
friend operator==
The documentation for this class was generated from the following file cosmolatticeweb/tmp/code_source/templat/include/TempLat/lattice/field/field.h