Tatooine
|
#include <vertex_property_sampler.h>
Public Types | |
using | property_type = GridVertexProperty |
using | this_type = vertex_property_sampler< property_type, InterpolationKernels... > |
using | real_type = typename GridVertexProperty::real_type |
using | value_type = typename GridVertexProperty::value_type |
using | parent_type = base_vertex_property_sampler< this_type, real_type, value_type, InterpolationKernels... > |
using | field_parent_type = tatooine::field< this_type, real_type, sizeof...(InterpolationKernels), value_type > |
![]() | |
using | this_type = base_vertex_property_sampler< vertex_property_sampler< GridVertexProperty, InterpolationKernels... >, GridVertexProperty::real_type, GridVertexProperty::value_type, InterpolationKernels..., TailInterpolationKernels... > |
using | indexing_type = base_vertex_property_sampler_at_t< this_type, GridVertexProperty::real_type, GridVertexProperty::value_type, InterpolationKernels..., TailInterpolationKernels... > |
using | real_type = GridVertexProperty::real_type |
using | value_type = GridVertexProperty::value_type |
![]() | |
using | this_type = field< vertex_property_sampler< GridVertexProperty, InterpolationKernels... >, GridVertexProperty::real_type, NumDimensions, GridVertexProperty::value_type > |
using | parent_type = polymorphic::field< GridVertexProperty::real_type, NumDimensions, GridVertexProperty::value_type > |
using | pos_type = vec< real_type, NumDimensions > |
using | real_type = GridVertexProperty::real_type |
using | tensor_type = GridVertexProperty::value_type |
![]() | |
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 | |
vertex_property_sampler (property_type const &prop) | |
vertex_property_sampler (vertex_property_sampler const &other)=default | |
vertex_property_sampler (vertex_property_sampler &&other) noexcept=default | |
auto | property () const -> auto const & |
auto | grid () const -> auto const & |
auto | data_at (integral auto const ... is) const -> value_type const &requires(sizeof...(is)==GridVertexProperty::grid_type::num_dimensions()) |
auto | position_at (integral auto const ... is) const |
template<std::size_t DimensionIndex> | |
auto | cell_index (arithmetic auto const x) const -> decltype(auto) |
auto | evaluate (typename field_parent_type::pos_type const &x, typename field_parent_type::real_type const) const -> value_type |
![]() | |
auto constexpr | as_derived_sampler () -> vertex_property_sampler< GridVertexProperty, InterpolationKernels... > & |
returns casted as_derived data More... | |
auto constexpr | as_derived_sampler () const -> vertex_property_sampler< GridVertexProperty, InterpolationKernels... > const & |
returns casted as_derived data More... | |
auto | property () const -> auto const & |
auto | grid () const -> auto const & |
auto | data_at (integral auto const ... is) const -> value_type const & |
auto | position_at (integral auto const ... is) const |
auto | cell_index (arithmetic auto const x) const -> decltype(auto) |
auto | at (std::size_t const i) const -> decltype(auto) |
auto | operator[] (std::size_t i) const -> decltype(auto) |
![]() | |
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 |
Static Public Member Functions | |
static constexpr std::size_t | current_dimension_index () |
static auto constexpr | num_dimensions () -> std::size_t |
![]() | |
static auto constexpr | current_dimension_index () |
static auto constexpr | num_dimensions () -> std::size_t |
static auto constexpr | num_components () |
![]() | |
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) |
Private Attributes | |
property_type const & | m_property |
Additional Inherited Members | |
![]() | |
auto | finite_differences_coefficients (std::size_t const vertex_index, std::size_t const stencil_size) const |
auto | differentiate (floating_point_range auto const &coeffs, It sample_begin, It sample_end) const |
Calcuates derivative from samples and differential coefficients. More... | |
auto | interpolate_cell_without_derivative (auto const &cit_head, auto const &... cit_tail) const -> value_type |
auto | interpolate_cell_with_one_derivative (auto const &cit_head, auto const &... cit_tail) const -> value_type |
auto constexpr | interpolate_cell (auto const &... cell_indices_interpolation_factors) const -> value_type |
Decides if first derivative is needed or not. More... | |
auto constexpr | sample (std::index_sequence< Is... >, arithmetic auto const ... xs) const -> value_type requires(sizeof...(Is)==sizeof...(xs)) |
using tatooine::detail::rectilinear_grid::vertex_property_sampler< GridVertexProperty, InterpolationKernels >::field_parent_type = tatooine::field<this_type, real_type, sizeof...(InterpolationKernels), value_type> |
using tatooine::detail::rectilinear_grid::vertex_property_sampler< GridVertexProperty, InterpolationKernels >::parent_type = base_vertex_property_sampler<this_type, real_type, value_type, InterpolationKernels...> |
using tatooine::detail::rectilinear_grid::vertex_property_sampler< GridVertexProperty, InterpolationKernels >::property_type = GridVertexProperty |
using tatooine::detail::rectilinear_grid::vertex_property_sampler< GridVertexProperty, InterpolationKernels >::real_type = typename GridVertexProperty::real_type |
using tatooine::detail::rectilinear_grid::vertex_property_sampler< GridVertexProperty, InterpolationKernels >::this_type = vertex_property_sampler<property_type, InterpolationKernels...> |
using tatooine::detail::rectilinear_grid::vertex_property_sampler< GridVertexProperty, InterpolationKernels >::value_type = typename GridVertexProperty::value_type |
|
inline |
|
default |
|
defaultnoexcept |
|
inline |
|
inlinestaticconstexpr |
|
inline |
|
inline |
|
inline |
|
inlinestaticconstexpr |
|
inline |
|
inline |
|
private |