Tatooine
Public Types | Public Member Functions | Public Attributes | Private Member Functions | List of all members
tatooine::constant_vectorfield< Real, N > Struct Template Reference

constant vectorfield More...

#include <constant_vectorfield.h>

Inheritance diagram for tatooine::constant_vectorfield< Real, N >:
[legend]
Collaboration diagram for tatooine::constant_vectorfield< Real, N >:
[legend]

Public Types

using this_type = constant_vectorfield< Real, N >
 
using parent_type = field< this_type, Real, N, N >
 
- Public Types inherited from tatooine::field< constant_vectorfield< Real, N >, Real, N, N >
using this_type = field< constant_vectorfield< Real, N >, Real, NumDimensions, N >
 
using parent_type = polymorphic::field< Real, NumDimensions, N >
 
using pos_type = vec< real_type, NumDimensions >
 
using real_type = Real
 
using tensor_type = N
 
- Public Types inherited from tatooine::polymorphic::field< Real, NumDimensions, Tensor >
using real_type = Real
 
using tensor_type = Tensor
 
using this_type = field< real_type, NumDimensions, Tensor >
 
using pos_type = vec< real_type, NumDimensions >
 

Public Member Functions

constexpr constant_vectorfield ()
 
constexpr constant_vectorfield (const vec< Real, N > &vector)
 
constexpr constant_vectorfield (vec< Real, N > &&vector)
 
constexpr tensor_type evaluate (const pos_type &, Real) const
 
constexpr bool in_domain (const pos_type &, Real) const
 
- Public Member Functions inherited from tatooine::field< constant_vectorfield< Real, N >, Real, N, N >
 field ()=default
 
 field (field const &)=default
 
 field (field &&) noexcept=default
 
auto operator= (field const &) -> field &=default
 
auto operator= (field &&) noexcept -> field &=default
 
virtual ~field ()=default
 
auto as_derived () -> auto &
 
auto as_derived () const -> auto const &
 
auto evaluate (pos_type const &x, real_type const t) const -> tensor_type override
 
- Public Member Functions inherited from tatooine::polymorphic::field< Real, NumDimensions, Tensor >
constexpr field ()=default
 
constexpr field (field const &)=default
 
constexpr field (field &&) noexcept=default
 
constexpr auto operator= (field const &) -> field &=default
 
constexpr auto operator= (field &&) noexcept -> field &=default
 
virtual ~field ()=default
 
virtual constexpr auto evaluate (pos_type const &, real_type const) const -> tensor_type=0
 
constexpr auto evaluate (fixed_size_vec< NumDimensions > auto const &x) const -> tensor_type
 
constexpr auto operator() (fixed_size_vec< NumDimensions > auto const &x, real_type const t) const -> tensor_type
 
constexpr auto operator() (fixed_size_vec< NumDimensions > auto const &x) const -> tensor_type
 
constexpr auto operator() (arithmetic auto const ... xs) const -> tensor_type
 

Public Attributes

const tensor_type m_vector
 

Private Member Functions

template<size_t... Is>
constexpr constant_vectorfield (std::index_sequence< Is... >)
 

Additional Inherited Members

- Static Public Member Functions inherited from tatooine::polymorphic::field< Real, NumDimensions, Tensor >
static auto constexpr ood_tensor ()
 
static auto constexpr ood_position ()
 
static constexpr auto is_field ()
 
static constexpr auto is_scalarfield ()
 
static constexpr auto is_vectorfield ()
 
static constexpr auto is_matrixfield ()
 
static constexpr auto num_dimensions () -> std::size_t
 
static constexpr auto num_tensor_components ()
 
static constexpr auto tensor_rank ()
 
static constexpr auto tensor_dimension (std::size_t i)
 

Detailed Description

template<typename Real, size_t N>
struct tatooine::constant_vectorfield< Real, N >

constant vectorfield

Member Typedef Documentation

◆ parent_type

template<typename Real , size_t N>
using tatooine::constant_vectorfield< Real, N >::parent_type = field<this_type, Real, N, N>

◆ this_type

template<typename Real , size_t N>
using tatooine::constant_vectorfield< Real, N >::this_type = constant_vectorfield<Real, N>

Constructor & Destructor Documentation

◆ constant_vectorfield() [1/4]

template<typename Real , size_t N>
template<size_t... Is>
constexpr tatooine::constant_vectorfield< Real, N >::constant_vectorfield ( std::index_sequence< Is... >  )
inlineconstexprprivate

◆ constant_vectorfield() [2/4]

template<typename Real , size_t N>
constexpr tatooine::constant_vectorfield< Real, N >::constant_vectorfield ( )
inlineconstexpr

◆ constant_vectorfield() [3/4]

template<typename Real , size_t N>
constexpr tatooine::constant_vectorfield< Real, N >::constant_vectorfield ( const vec< Real, N > &  vector)
inlineconstexpr

◆ constant_vectorfield() [4/4]

template<typename Real , size_t N>
constexpr tatooine::constant_vectorfield< Real, N >::constant_vectorfield ( vec< Real, N > &&  vector)
inlineconstexpr

Member Function Documentation

◆ evaluate()

template<typename Real , size_t N>
constexpr tensor_type tatooine::constant_vectorfield< Real, N >::evaluate ( const pos_type ,
Real   
) const
inlineconstexprvirtual

◆ in_domain()

template<typename Real , size_t N>
constexpr bool tatooine::constant_vectorfield< Real, N >::in_domain ( const pos_type ,
Real   
) const
inlineconstexpr

Member Data Documentation

◆ m_vector

template<typename Real , size_t N>
const tensor_type tatooine::constant_vectorfield< Real, N >::m_vector

The documentation for this struct was generated from the following file: