xerus
a general purpose tensor library
xerus::TTTangentVector Class Reference

class to compactly represent tangent vectors of the manifold of constant TT-rank More...

#include <retractions.h>

Collaboration diagram for xerus::TTTangentVector:

Public Member Functions

 TTTangentVector ()
 
 TTTangentVector (const TTTensor &_base, const TTTensor &_direction)
 creates a tangent vector by projecting _direction onto the tangent plane located at _base More...
 
TTTensor added_to_base () const
 
value_t frob_norm () const
 
 operator TTTensor () const
 
TTTangentVector operator* (value_t _alpha) const
 
TTTangentVectoroperator*= (value_t _alpha)
 
TTTangentVectoroperator+= (const TTTangentVector &_rhs)
 
TTTangentVectoroperator-= (const TTTangentVector &_rhs)
 
value_t scalar_product (const TTTangentVector &_other) const
 
void set_base (const TTTensor &_newBase)
 

Public Attributes

TTTensor baseL
 
std::vector< Tensorcomponents
 

Detailed Description

class to compactly represent tangent vectors of the manifold of constant TT-rank

Definition at line 33 of file retractions.h.

Constructor & Destructor Documentation

◆ TTTangentVector() [1/2]

xerus::TTTangentVector::TTTangentVector ( )
inline

Definition at line 41 of file retractions.h.

◆ TTTangentVector() [2/2]

xerus::TTTangentVector::TTTangentVector ( const TTTensor _base,
const TTTensor _direction 
)

creates a tangent vector by projecting _direction onto the tangent plane located at _base

Definition at line 82 of file retractions.cpp.

Member Function Documentation

◆ added_to_base()

TTTensor xerus::TTTangentVector::added_to_base ( ) const

Definition at line 236 of file retractions.cpp.

◆ frob_norm()

value_t xerus::TTTangentVector::frob_norm ( ) const

Definition at line 181 of file retractions.cpp.

◆ operator TTTensor()

xerus::TTTangentVector::operator TTTensor ( ) const
explicit

Definition at line 210 of file retractions.cpp.

◆ operator*()

TTTangentVector xerus::TTTangentVector::operator* ( value_t  _alpha) const

Definition at line 155 of file retractions.cpp.

◆ operator*=()

TTTangentVector & xerus::TTTangentVector::operator*= ( value_t  _alpha)

Definition at line 148 of file retractions.cpp.

◆ operator+=()

TTTangentVector & xerus::TTTangentVector::operator+= ( const TTTangentVector _rhs)

Definition at line 132 of file retractions.cpp.

◆ operator-=()

TTTangentVector & xerus::TTTangentVector::operator-= ( const TTTangentVector _rhs)

Definition at line 140 of file retractions.cpp.

◆ scalar_product()

value_t xerus::TTTangentVector::scalar_product ( const TTTangentVector _other) const

Definition at line 167 of file retractions.cpp.

◆ set_base()

void xerus::TTTangentVector::set_base ( const TTTensor _newBase)
Note
components will not be changed. use a vector transport to update them accordingly instead of calling this function

Definition at line 76 of file retractions.cpp.

Member Data Documentation

◆ baseL

TTTensor xerus::TTTangentVector::baseL

Definition at line 35 of file retractions.h.

◆ components

std::vector<Tensor> xerus::TTTangentVector::components

Definition at line 40 of file retractions.h.


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