Mundy: Multibody Nonlocal Dynamics Version of the Day
Loading...
Searching...
No Matches
mundy::mesh::FieldComponent< ValueType > Class Template Reference

Raw field-backed component. More...

#include <FieldComponent.hpp>

Inheritance diagram for mundy::mesh::FieldComponent< ValueType >:
[legend]

Public Types

using our_t = FieldComponent<ValueType>
using base_t = impl::FieldComponent<ValueType, impl::FieldDataAccessPolicy>
using field_type = typename base_t::field_type
using ngp_field_type = stk::mesh::NgpField<ValueType>
using canonical_access = access::raw<ValueType>
using view_t = typename base_t::view_t
using ngp_component_t = NgpFieldComponent<ngp_field_type>

Public Member Functions

 FieldComponent ()=default
 FieldComponent (stk::mesh::Field< ValueType > &field)
 FieldComponent (const FieldComponent &)=default
 FieldComponent (FieldComponent &&)=default
FieldComponentoperator= (const FieldComponent &)=default
FieldComponentoperator= (FieldComponent &&)=default
void sync_to_device ()
void sync_to_host ()
void modify_on_device ()
void modify_on_host ()
void clear_host_sync_state ()
void clear_device_sync_state ()
const stk::mesh::FieldBase & field_base () const

Detailed Description

template<typename ValueType>
class mundy::mesh::FieldComponent< ValueType >

ngp_component_t is the canonical device-side counterpart for this host component. get_updated_ngp_component() uses that alias to preserve the concrete component type instead of returning a sliced impl::NgpFieldComponent.

Member Typedef Documentation

◆ our_t

template<typename ValueType>
using mundy::mesh::FieldComponent< ValueType >::our_t = FieldComponent<ValueType>

◆ base_t

template<typename ValueType>
using mundy::mesh::FieldComponent< ValueType >::base_t = impl::FieldComponent<ValueType, impl::FieldDataAccessPolicy>

◆ field_type

template<typename ValueType>
using mundy::mesh::FieldComponent< ValueType >::field_type = typename base_t::field_type

◆ ngp_field_type

template<typename ValueType>
using mundy::mesh::FieldComponent< ValueType >::ngp_field_type = stk::mesh::NgpField<ValueType>

◆ canonical_access

template<typename ValueType>
using mundy::mesh::FieldComponent< ValueType >::canonical_access = access::raw<ValueType>

◆ view_t

template<typename ValueType>
using mundy::mesh::FieldComponent< ValueType >::view_t = typename base_t::view_t

◆ ngp_component_t

template<typename ValueType>
using mundy::mesh::FieldComponent< ValueType >::ngp_component_t = NgpFieldComponent<ngp_field_type>

Constructor & Destructor Documentation

◆ FieldComponent() [1/4]

template<typename ValueType>
mundy::mesh::FieldComponent< ValueType >::FieldComponent ( )
default

◆ FieldComponent() [2/4]

template<typename ValueType>
mundy::mesh::FieldComponent< ValueType >::FieldComponent ( stk::mesh::Field< ValueType > & field)
inlineexplicit

◆ FieldComponent() [3/4]

template<typename ValueType>
mundy::mesh::FieldComponent< ValueType >::FieldComponent ( const FieldComponent< ValueType > & )
default

◆ FieldComponent() [4/4]

template<typename ValueType>
mundy::mesh::FieldComponent< ValueType >::FieldComponent ( FieldComponent< ValueType > && )
default

Member Function Documentation

◆ operator=() [1/2]

template<typename ValueType>
FieldComponent & mundy::mesh::FieldComponent< ValueType >::operator= ( const FieldComponent< ValueType > & )
default

◆ operator=() [2/2]

template<typename ValueType>
FieldComponent & mundy::mesh::FieldComponent< ValueType >::operator= ( FieldComponent< ValueType > && )
default

◆ sync_to_device()

void mundy::mesh::FieldComponentBase::sync_to_device ( )
inlineinherited

◆ sync_to_host()

void mundy::mesh::FieldComponentBase::sync_to_host ( )
inlineinherited

◆ modify_on_device()

void mundy::mesh::FieldComponentBase::modify_on_device ( )
inlineinherited

◆ modify_on_host()

void mundy::mesh::FieldComponentBase::modify_on_host ( )
inlineinherited

◆ clear_host_sync_state()

void mundy::mesh::FieldComponentBase::clear_host_sync_state ( )
inlineinherited

◆ clear_device_sync_state()

void mundy::mesh::FieldComponentBase::clear_device_sync_state ( )
inlineinherited

◆ field_base()

const stk::mesh::FieldBase & mundy::mesh::FieldComponentBase::field_base ( ) const
inlineinherited