DMRITool  v0.1.1-139-g860d86b4
Diffusion MRI Tool
Public Member Functions | Private Member Functions | Private Attributes | List of all members
spams::FISTA::HingeLoss< T > Class Template Reference

#include <fista.h>

+ Inheritance diagram for spams::FISTA::HingeLoss< T >:
+ Collaboration diagram for spams::FISTA::HingeLoss< T >:

Detailed Description

template<typename T>
class spams::FISTA::HingeLoss< T >

Definition at line 496 of file fista.h.

Public Member Functions

void add_mult_design_matrix (const Vector< T > &prim, Vector< T > &out, const T fact) const
 
void compute_new_prim (Vector< T > &prim, const Vector< T > &prim_var, const Vector< T > &dual_var, const T gamma, const T delta) const
 
eval (const Vector< T > &w) const
 
virtual T eval_split (const Matrix< T > &input) const
 
 HingeLoss (const AbstractMatrixB< T > &X)
 
void init (const Vector< T > &y)
 
void init_prim_var (Vector< T > &prim_var) const
 
void init_split_variables (Matrix< T > &splitted_w) const
 
virtual int num_components () const
 
void prox_prim_var (Vector< T > &out, const Vector< T > &dual_var, const Vector< T > &prim_var, const T lambda, const T c) const
 
void prox_split (Matrix< T > &splitted_w, const T lambda) const
 
virtual ~HingeLoss ()
 
- Public Member Functions inherited from spams::FISTA::SplittingFunction< T >
virtual T eval_weighted (const Vector< T > &input, const Matrix< T > &input_struct, const T *weights) const
 
virtual void prox_prim_var (Vector< T > &out, const Vector< T > &dual_var, const Vector< T > &prim_var, const T gamma) const
 
virtual void reset ()
 
 SplittingFunction ()
 
virtual ~SplittingFunction ()
 

Private Member Functions

 HingeLoss (const HingeLoss< T > &dict)
 
HingeLoss< T > & operator= (const HingeLoss< T > &dict)
 

Private Attributes

const AbstractMatrixB< T > * _X
 
Vector< T > _y
 

Constructor & Destructor Documentation

template<typename T>
spams::FISTA::HingeLoss< T >::HingeLoss ( const AbstractMatrixB< T > &  X)
inline

Definition at line 498 of file fista.h.

template<typename T>
virtual spams::FISTA::HingeLoss< T >::~HingeLoss ( )
inlinevirtual

Definition at line 499 of file fista.h.

template<typename T>
spams::FISTA::HingeLoss< T >::HingeLoss ( const HingeLoss< T > &  dict)
explicitprivate

Member Function Documentation

template<typename T>
void spams::FISTA::HingeLoss< T >::add_mult_design_matrix ( const Vector< T > &  prim,
Vector< T > &  out,
const T  fact 
) const
inlinevirtual

Reimplemented from spams::FISTA::SplittingFunction< T >.

Definition at line 560 of file fista.h.

template<typename T>
void spams::FISTA::HingeLoss< T >::compute_new_prim ( Vector< T > &  prim,
const Vector< T > &  prim_var,
const Vector< T > &  dual_var,
const T  gamma,
const T  delta 
) const
inlinevirtual

Reimplemented from spams::FISTA::SplittingFunction< T >.

Definition at line 551 of file fista.h.

References spams::Vector< T >::add(), spams::Vector< T >::mult(), and spams::Vector< T >::scal().

+ Here is the call graph for this function:

template<typename T>
T spams::FISTA::HingeLoss< T >::eval ( const Vector< T > &  w) const
inlinevirtual

Implements spams::FISTA::SplittingFunction< T >.

Definition at line 504 of file fista.h.

References spams::Vector< T >::n(), and spams::Vector< T >::toSparse().

+ Here is the call graph for this function:

template<typename T>
virtual T spams::FISTA::HingeLoss< T >::eval_split ( const Matrix< T > &  input) const
inlinevirtual

Implements spams::FISTA::SplittingFunction< T >.

Definition at line 515 of file fista.h.

References MAX, and spams::Matrix< T >::refCol().

+ Here is the call graph for this function:

template<typename T>
void spams::FISTA::HingeLoss< T >::init ( const Vector< T > &  y)
inlinevirtual

Reimplemented from spams::FISTA::SplittingFunction< T >.

Definition at line 501 of file fista.h.

template<typename T>
void spams::FISTA::HingeLoss< T >::init_prim_var ( Vector< T > &  prim_var) const
inlinevirtual

Reimplemented from spams::FISTA::SplittingFunction< T >.

Definition at line 531 of file fista.h.

References spams::Vector< T >::resize(), and spams::Vector< T >::setZeros().

+ Here is the call graph for this function:

template<typename T>
void spams::FISTA::HingeLoss< T >::init_split_variables ( Matrix< T > &  splitted_w) const
inlinevirtual

Implements spams::FISTA::SplittingFunction< T >.

Definition at line 527 of file fista.h.

References spams::Matrix< T >::resize(), and spams::Matrix< T >::setZeros().

+ Here is the call graph for this function:

template<typename T>
virtual int spams::FISTA::HingeLoss< T >::num_components ( ) const
inlinevirtual

Implements spams::FISTA::SplittingFunction< T >.

Definition at line 526 of file fista.h.

template<typename T>
HingeLoss<T>& spams::FISTA::HingeLoss< T >::operator= ( const HingeLoss< T > &  dict)
private
template<typename T>
void spams::FISTA::HingeLoss< T >::prox_prim_var ( Vector< T > &  out,
const Vector< T > &  dual_var,
const Vector< T > &  prim_var,
const T  lambda,
const T  c 
) const
inline
template<typename T>
void spams::FISTA::HingeLoss< T >::prox_split ( Matrix< T > &  splitted_w,
const T  lambda 
) const
inlinevirtual

Implements spams::FISTA::SplittingFunction< T >.

Definition at line 564 of file fista.h.

References spams::Vector< T >::add(), and spams::Matrix< T >::refCol().

+ Here is the call graph for this function:

Member Data Documentation

template<typename T>
const AbstractMatrixB<T>* spams::FISTA::HingeLoss< T >::_X
private

Definition at line 586 of file fista.h.

template<typename T>
Vector<T> spams::FISTA::HingeLoss< T >::_y
private

Definition at line 587 of file fista.h.


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