isce3  0.1.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Pages
Public Member Functions | List of all members
isce3::core::Basis Class Reference

Simple class to store three-dimensional basis vectors. More...

#include <Basis.h>

Public Member Functions

CUDA_HOSTDEV Basis ()
 Default constructor.
 
CUDA_HOSTDEV Basis (const Vec3 &x0, const Vec3 &x1, const Vec3 &x2)
 Constructor with basis vectors.
 
CUDA_HOSTDEV Basis (const Vec3 &p, const Vec3 &v)
 Geocentric TCN constructor. More...
 
CUDA_HOSTDEV const Vec3x0 () const
 Return first basis vector.
 
CUDA_HOSTDEV const Vec3x1 () const
 Return second basis vector.
 
CUDA_HOSTDEV const Vec3x2 () const
 Return third basis vector.
 
CUDA_HOSTDEV void x0 (const Vec3 &x0)
 Set the first basis vector.
 
CUDA_HOSTDEV void x1 (const Vec3 &x1)
 Set the second basis vector.
 
CUDA_HOSTDEV void x2 (const Vec3 &x2)
 Set the third basis vecot.
 
CUDA_HOSTDEV Vec3 project (Vec3 &vec)
 Project a given vector onto basis. More...
 
void combine (cartesian_t &vec, cartesian_t &res)
 Combine the basis with given weights. More...
 

Detailed Description

Simple class to store three-dimensional basis vectors.

Constructor & Destructor Documentation

CUDA_HOSTDEV isce3::core::Basis::Basis ( const Vec3 p,
const Vec3 v 
)
inlineexplicit

Geocentric TCN constructor.

Parameters
[in]pposition vector
[in]vvelocity vector

Member Function Documentation

void isce3::core::Basis::combine ( cartesian_t vec,
cartesian_t res 
)
inline

Combine the basis with given weights.

Parameters
[in]vec3D vector to use as weights
[out]res3D vector output

\[ res = \sum_{i=0}^2 vec[i] \cdot x_i \]

CUDA_HOSTDEV Vec3 isce3::core::Basis::project ( Vec3 vec)
inline

Project a given vector onto basis.

Parameters
[in]vec3D vector to project
[out]res3D vector output

\[ res_i = (x_i \cdot vec) \]


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

Generated for ISCE3.0 by doxygen 1.8.5.