SPH
Public Member Functions | Friends | List of all members
BasicVector< double > Class Reference

specialization for doubles or units of double precision More...

#include <Vector.h>

Public Member Functions

INLINE BasicVector ()=default
 
INLINE BasicVector (const __m128d data1, const __m128d data2)
 Constructs from two SSE vectors. More...
 
INLINE BasicVector (const double f)
 Constructs by copying a value to all vector components. More...
 
INLINE BasicVector (const double x, const double y, const double z, const double h=0.)
 Constructs the vector from given components. More...
 
INLINE BasicVector (const BasicVector &v)
 Copy constructor. More...
 
INLINE const double & operator[] (const int i) const
 Get component by given index. More...
 
INLINE double & operator[] (const int i)
 Get component by given index. More...
 
template<int i>
INLINE const double & get () const
 Get component by given compile-time constant index. More...
 
template<int i>
INLINE double & get ()
 Get component by given compile-time constant index. More...
 
template<int i>
INLINE const __m128d & sse () const
 
INLINE BasicVectoroperator= (const BasicVector &v)
 Copy operator. More...
 
INLINE BasicVectoroperator+= (const BasicVector &v)
 
INLINE BasicVectoroperator-= (const BasicVector &v)
 
INLINE BasicVectoroperator*= (const double f)
 
INLINE BasicVectoroperator/= (const double f)
 
INLINE BasicVectoroperator*= (const BasicVector &v)
 
INLINE BasicVectoroperator/= (const BasicVector &v)
 

Friends

INLINE friend BasicVector operator- (const BasicVector &v)
 
INLINE friend BasicVector operator+ (const BasicVector &v1, const BasicVector &v2)
 
INLINE friend BasicVector operator- (const BasicVector &v1, const BasicVector &v2)
 
INLINE friend auto operator* (const BasicVector &v, const double f)
 Multiplication of vector by a value or unit. More...
 
INLINE friend auto operator* (const double f, const BasicVector &v)
 
INLINE friend auto operator* (const BasicVector &v1, const BasicVector &v2)
 
INLINE friend auto operator/ (const BasicVector &v, const double f)
 
INLINE friend auto operator/ (const BasicVector &v1, const BasicVector &v2)
 
INLINE friend bool operator== (const BasicVector &v1, const BasicVector &v2)
 Comparison operator, only compares first three components of vectors. More...
 
INLINE friend bool operator!= (const BasicVector &v1, const BasicVector &v2)
 
std::ostream & operator<< (std::ostream &stream, const BasicVector &v)
 Output to stream. More...
 

Detailed Description

specialization for doubles or units of double precision

Definition at line 371 of file Vector.h.

Constructor & Destructor Documentation

◆ BasicVector() [1/5]

INLINE BasicVector< double >::BasicVector ( )
default

◆ BasicVector() [2/5]

INLINE BasicVector< double >::BasicVector ( const __m128d  data1,
const __m128d  data2 
)
inline

Constructs from two SSE vectors.

Definition at line 379 of file Vector.h.

◆ BasicVector() [3/5]

INLINE BasicVector< double >::BasicVector ( const double  f)
inlineexplicit

Constructs by copying a value to all vector components.

Definition at line 383 of file Vector.h.

◆ BasicVector() [4/5]

INLINE BasicVector< double >::BasicVector ( const double  x,
const double  y,
const double  z,
const double  h = 0. 
)
inline

Constructs the vector from given components.

Definition at line 387 of file Vector.h.

◆ BasicVector() [5/5]

INLINE BasicVector< double >::BasicVector ( const BasicVector< double > &  v)
inline

Copy constructor.

Definition at line 391 of file Vector.h.

Member Function Documentation

◆ get() [1/2]

template<int i>
INLINE double& BasicVector< double >::get ( )
inline

Get component by given compile-time constant index.

Definition at line 415 of file Vector.h.

◆ get() [2/2]

template<int i>
INLINE const double& BasicVector< double >::get ( ) const
inline

Get component by given compile-time constant index.

Definition at line 408 of file Vector.h.

◆ operator*=() [1/2]

INLINE BasicVector& BasicVector< double >::operator*= ( const BasicVector< double > &  v)
inline

Definition at line 459 of file Vector.h.

◆ operator*=() [2/2]

INLINE BasicVector& BasicVector< double >::operator*= ( const double  f)
inline

Definition at line 445 of file Vector.h.

◆ operator+=()

INLINE BasicVector& BasicVector< double >::operator+= ( const BasicVector< double > &  v)
inline

Definition at line 433 of file Vector.h.

◆ operator-=()

INLINE BasicVector& BasicVector< double >::operator-= ( const BasicVector< double > &  v)
inline

Definition at line 439 of file Vector.h.

◆ operator/=() [1/2]

INLINE BasicVector& BasicVector< double >::operator/= ( const BasicVector< double > &  v)
inline

Definition at line 465 of file Vector.h.

◆ operator/=() [2/2]

INLINE BasicVector& BasicVector< double >::operator/= ( const double  f)
inline

Definition at line 452 of file Vector.h.

◆ operator=()

INLINE BasicVector& BasicVector< double >::operator= ( const BasicVector< double > &  v)
inline

Copy operator.

Definition at line 427 of file Vector.h.

◆ operator[]() [1/2]

INLINE double& BasicVector< double >::operator[] ( const int  i)
inline

Get component by given index.

Definition at line 401 of file Vector.h.

◆ operator[]() [2/2]

INLINE const double& BasicVector< double >::operator[] ( const int  i) const
inline

Get component by given index.

Definition at line 395 of file Vector.h.

◆ sse()

template<int i>
INLINE const __m128d& BasicVector< double >::sse ( ) const
inline

Definition at line 421 of file Vector.h.

Friends And Related Function Documentation

◆ operator!=

INLINE friend bool operator!= ( const BasicVector< double > &  v1,
const BasicVector< double > &  v2 
)
friend

Definition at line 519 of file Vector.h.

◆ operator* [1/3]

INLINE friend auto operator* ( const BasicVector< double > &  v,
const double  f 
)
friend

Multiplication of vector by a value or unit.

Definition at line 485 of file Vector.h.

◆ operator* [2/3]

INLINE friend auto operator* ( const BasicVector< double > &  v1,
const BasicVector< double > &  v2 
)
friend

Definition at line 495 of file Vector.h.

◆ operator* [3/3]

INLINE friend auto operator* ( const double  f,
const BasicVector< double > &  v 
)
friend

Definition at line 490 of file Vector.h.

◆ operator+

INLINE friend BasicVector operator+ ( const BasicVector< double > &  v1,
const BasicVector< double > &  v2 
)
friend

Definition at line 476 of file Vector.h.

◆ operator- [1/2]

INLINE friend BasicVector operator- ( const BasicVector< double > &  v)
friend

Definition at line 471 of file Vector.h.

◆ operator- [2/2]

INLINE friend BasicVector operator- ( const BasicVector< double > &  v1,
const BasicVector< double > &  v2 
)
friend

Definition at line 480 of file Vector.h.

◆ operator/ [1/2]

INLINE friend auto operator/ ( const BasicVector< double > &  v,
const double  f 
)
friend

Definition at line 499 of file Vector.h.

◆ operator/ [2/2]

INLINE friend auto operator/ ( const BasicVector< double > &  v1,
const BasicVector< double > &  v2 
)
friend

Definition at line 505 of file Vector.h.

◆ operator<<

std::ostream& operator<< ( std::ostream &  stream,
const BasicVector< double > &  v 
)
friend

Output to stream.

Definition at line 524 of file Vector.h.

◆ operator==

INLINE friend bool operator== ( const BasicVector< double > &  v1,
const BasicVector< double > &  v2 
)
friend

Comparison operator, only compares first three components of vectors.

Definition at line 510 of file Vector.h.


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