1#ifndef TATOOINE_SPACETIME_SPLITTED_VECTORFIELD_H
2#define TATOOINE_SPACETIME_SPLITTED_VECTORFIELD_H
13 typename std::remove_pointer_t<std::decay_t<V>>::real_type,
14 std::remove_pointer_t<std::decay_t<V>>::num_dimensions() -
19 typename std::remove_pointer_t<std::decay_t<V>>
::real_type,
29 if constexpr (std::is_pointer_v<std::decay_t<V>>) {
38 requires std::is_pointer_v<V> {
44 requires std::is_pointer_v<V> {
50 requires std::is_pointer_v<V> {
68 spatio_temporal_position(i) = x(i);
96template <
typename V,
typename VReal, std::
size_t N, std::
size_t NV>
101template <
typename V,
typename VReal, std::
size_t N, std::
size_t NV>
106template <
typename V,
typename VReal, std::
size_t N, std::
size_t NV>
111template <
typename VReal, std::
size_t N, std::
size_t NV>
116template <
typename VReal, std::
size_t N, std::
size_t NV>
Definition: concepts.h:39
Definition: concepts.h:15
Definition: algorithm.h:6
auto split_spacetime(vectorfield< V, VReal, N, NV > const &v)
Definition: spacetime_splitted_vectorfield.h:97
static constexpr forward_tag forward
Definition: tags.h:9
Real real_type
Definition: field.h:17
vec< real_type, NumDimensions > pos_type
Definition: field.h:20
Tensor tensor_type
Definition: field.h:18
auto as_derived() -> auto &
Definition: field.h:161
auto num_dimensions() const -> std::size_t
Definition: hdf5.h:764
static constexpr auto num_dimensions() -> std::size_t
Definition: field.h:38
Definition: spacetime_splitted_vectorfield.h:15
spacetime_splitted_vectorfield< V > this_type
Definition: spacetime_splitted_vectorfield.h:16
constexpr spacetime_splitted_vectorfield(spacetime_splitted_vectorfield const &)=default
constexpr auto evaluate(pos_type const &x, real_type const t) const -> tensor_type
Definition: spacetime_splitted_vectorfield.h:64
auto set_field(polymorphic::vectorfield< real_type, num_dimensions()+1 > const &v)
Definition: spacetime_splitted_vectorfield.h:42
auto set_field(polymorphic::vectorfield< real_type, num_dimensions()+1 > const *v)
Definition: spacetime_splitted_vectorfield.h:48
constexpr auto internal_field() const -> auto const &
Definition: spacetime_splitted_vectorfield.h:28
constexpr spacetime_splitted_vectorfield(convertible_to< V > auto &&v)
Definition: spacetime_splitted_vectorfield.h:54
V m_v
Definition: spacetime_splitted_vectorfield.h:26
auto set_field(vectorfield< W, real_type, num_dimensions()+1 > const &v)
Definition: spacetime_splitted_vectorfield.h:37
Real real_type
Definition: field.h:17
constexpr spacetime_splitted_vectorfield(spacetime_splitted_vectorfield &&) noexcept=default