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

#include <particle.h>

Collaboration diagram for tatooine::particle< Real, NumDimensions >:
[legend]

Public Types

using this_type = particle
 
using real_type = Real
 
using vec_t = vec< real_type, NumDimensions >
 
using pos_type = vec_t
 

Public Member Functions

 particle (particle const &other)
 
 particle (particle &&other) noexcept
 
auto operator= (particle const &other) -> particle &
 
auto operator= (particle &&other) noexcept -> particle &
 
 ~particle ()=default
 
 particle ()=default
 
 particle (pos_type const &x0, real_type t0)
 
 particle (pos_type const &x0, pos_type const &x1, real_type t1)
 
auto x0 () -> auto &
 
auto x0 () const -> auto const &
 
auto x0 (std::size_t const i) const
 
auto x1 () -> auto &
 
auto x1 () const -> auto const &
 
auto x1 (std::size_t const i) const
 
auto t1 () -> auto &
 
auto t1 () const
 
template<typename Flowmap >
auto advect (Flowmap &&phi, real_type const tau)
 

Static Public Member Functions

static constexpr auto num_dimensions () -> std::size_t
 

Private Attributes

pos_type m_x0
 
pos_type m_x1
 
real_type m_t1
 

Member Typedef Documentation

◆ pos_type

template<typename Real , std::size_t NumDimensions>
using tatooine::particle< Real, NumDimensions >::pos_type = vec_t

◆ real_type

template<typename Real , std::size_t NumDimensions>
using tatooine::particle< Real, NumDimensions >::real_type = Real

◆ this_type

template<typename Real , std::size_t NumDimensions>
using tatooine::particle< Real, NumDimensions >::this_type = particle

◆ vec_t

template<typename Real , std::size_t NumDimensions>
using tatooine::particle< Real, NumDimensions >::vec_t = vec<real_type, NumDimensions>

Constructor & Destructor Documentation

◆ particle() [1/5]

template<typename Real , std::size_t NumDimensions>
tatooine::particle< Real, NumDimensions >::particle ( particle< Real, NumDimensions > const &  other)

◆ particle() [2/5]

template<typename Real , std::size_t NumDimensions>
tatooine::particle< Real, NumDimensions >::particle ( particle< Real, NumDimensions > &&  other)
noexcept

◆ ~particle()

template<typename Real , std::size_t NumDimensions>
tatooine::particle< Real, NumDimensions >::~particle ( )
default

◆ particle() [3/5]

template<typename Real , std::size_t NumDimensions>
tatooine::particle< Real, NumDimensions >::particle ( )
default

◆ particle() [4/5]

template<typename Real , std::size_t NumDimensions>
tatooine::particle< Real, NumDimensions >::particle ( pos_type const &  x0,
real_type  t0 
)

◆ particle() [5/5]

template<typename Real , std::size_t NumDimensions>
tatooine::particle< Real, NumDimensions >::particle ( pos_type const &  x0,
pos_type const &  x1,
real_type  t1 
)

Member Function Documentation

◆ advect()

template<typename Real , std::size_t NumDimensions>
template<typename Flowmap >
auto tatooine::particle< Real, NumDimensions >::advect ( Flowmap &&  phi,
real_type const  tau 
)
inline

◆ num_dimensions()

template<typename Real , std::size_t NumDimensions>
static constexpr auto tatooine::particle< Real, NumDimensions >::num_dimensions ( ) -> std::size_t
inlinestaticconstexpr

◆ operator=() [1/2]

template<typename Real , std::size_t NumDimensions>
auto tatooine::particle< Real, NumDimensions >::operator= ( particle< Real, NumDimensions > &&  other) -> particle&
noexcept

◆ operator=() [2/2]

template<typename Real , std::size_t NumDimensions>
auto tatooine::particle< Real, NumDimensions >::operator= ( particle< Real, NumDimensions > const &  other) -> particle&

◆ t1() [1/2]

template<typename Real , std::size_t NumDimensions>
auto tatooine::particle< Real, NumDimensions >::t1 ( ) -> auto&
inline

◆ t1() [2/2]

template<typename Real , std::size_t NumDimensions>
auto tatooine::particle< Real, NumDimensions >::t1 ( ) const
inline

◆ x0() [1/3]

template<typename Real , std::size_t NumDimensions>
auto tatooine::particle< Real, NumDimensions >::x0 ( ) -> auto&
inline

◆ x0() [2/3]

template<typename Real , std::size_t NumDimensions>
auto tatooine::particle< Real, NumDimensions >::x0 ( ) const -> auto const&
inline

◆ x0() [3/3]

template<typename Real , std::size_t NumDimensions>
auto tatooine::particle< Real, NumDimensions >::x0 ( std::size_t const  i) const
inline

◆ x1() [1/3]

template<typename Real , std::size_t NumDimensions>
auto tatooine::particle< Real, NumDimensions >::x1 ( ) -> auto&
inline

◆ x1() [2/3]

template<typename Real , std::size_t NumDimensions>
auto tatooine::particle< Real, NumDimensions >::x1 ( ) const -> auto const&
inline

◆ x1() [3/3]

template<typename Real , std::size_t NumDimensions>
auto tatooine::particle< Real, NumDimensions >::x1 ( std::size_t const  i) const
inline

Member Data Documentation

◆ m_t1

template<typename Real , std::size_t NumDimensions>
real_type tatooine::particle< Real, NumDimensions >::m_t1
private

◆ m_x0

template<typename Real , std::size_t NumDimensions>
pos_type tatooine::particle< Real, NumDimensions >::m_x0
private

◆ m_x1

template<typename Real , std::size_t NumDimensions>
pos_type tatooine::particle< Real, NumDimensions >::m_x1
private

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