Tatooine
|
#include <field.h>
Public Types | |
using | parent_type = field< lambda_field< NumDimensions, F >, tatooine::value_type< std::invoke_result_t< F, vec< tatooine::real_number, NumDimensions >, tatooine::real_number > >, NumDimensions, std::invoke_result_t< F, vec< tatooine::real_number, NumDimensions >, tatooine::real_number > > |
![]() | |
using | this_type = field< lambda_field< NumDimensions, F >, tatooine::value_type< std::invoke_result_t< F, vec< tatooine::real_number, NumDimensions >, tatooine::real_number > >, NumDimensions, std::invoke_result_t< F, vec< tatooine::real_number, NumDimensions >, tatooine::real_number > > |
using | parent_type = polymorphic::field< tatooine::value_type< std::invoke_result_t< F, vec< tatooine::real_number, NumDimensions >, tatooine::real_number > >, NumDimensions, std::invoke_result_t< F, vec< tatooine::real_number, NumDimensions >, tatooine::real_number > > |
using | pos_type = vec< real_type, NumDimensions > |
using | real_type = tatooine::value_type< std::invoke_result_t< F, vec< tatooine::real_number, NumDimensions >, tatooine::real_number > > |
using | tensor_type = std::invoke_result_t< F, vec< tatooine::real_number, NumDimensions >, tatooine::real_number > |
![]() | |
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 | lambda_field (F &&f) |
~lambda_field ()=default | |
constexpr auto | evaluate (pos_type const &x, real_type const t) const -> tensor_type |
![]() | |
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 |
![]() | |
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 | |
F | m_f |
Additional Inherited Members | |
![]() | |
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) |
using tatooine::lambda_field< NumDimensions, F >::parent_type = field< lambda_field<NumDimensions, F>, tatooine::value_type<std::invoke_result_t< F, vec<tatooine::real_number, NumDimensions>, tatooine::real_number> >, NumDimensions, std::invoke_result_t<F, vec<tatooine::real_number, NumDimensions>, tatooine::real_number> > |
|
inlineconstexpr |
|
default |
|
inlineconstexpr |
F tatooine::lambda_field< NumDimensions, F >::m_f |