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

#include <project.h>

+ Inheritance diagram for spams::GraphPath< T, Int >:
+ Collaboration diagram for spams::GraphPath< T, Int >:

Detailed Description

template<typename T = double, typename Int = long long>
class spams::GraphPath< T, Int >

Definition at line 3112 of file project.h.

Public Member Functions

eval_conv (const T *variables, List< Path< Int > * > *decomposition=NULL)
 
eval_dual_norm (const T *variables, list_int *path_out=NULL)
 
eval_l0 (const T *variables, List< Path< Int > * > *decomposition=NULL)
 
 GraphPath ()
 
void init_graph (const GraphPathStruct< T > &graph)
 
int n () const
 
void proximal_conv (T *variables, const T lambda)
 
void proximal_l0 (T *variables, const T lambda)
 
 ~GraphPath ()
 

Protected Member Functions

void flow_decomposition (List< Path< Int > * > &decomposition) const
 
void scale_costs (const T lambda)
 

Private Attributes

Int _big_integer
 
_graphprecision
 
Int _infinite_capacity
 
T * _init_start_weights
 
T * _init_stop_weights
 
T * _init_weights
 
int _m
 
_maxsf
 
MinCostFlow< Int > * _min_cost_flow
 
int _n
 
_sf
 

Constructor & Destructor Documentation

template<typename T = double, typename Int = long long>
spams::GraphPath< T, Int >::GraphPath ( )
inline

Definition at line 3114 of file project.h.

template<typename T = double, typename Int = long long>
spams::GraphPath< T, Int >::~GraphPath ( )
inline

Definition at line 3115 of file project.h.

Member Function Documentation

template<typename T, typename Int>
T spams::GraphPath< T, Int >::eval_conv ( const T *  variables,
List< Path< Int > * > *  decomposition = NULL 
)

Definition at line 3248 of file project.h.

template<typename T, typename Int >
T spams::GraphPath< T, Int >::eval_dual_norm ( const T *  variables,
list_int path_out = NULL 
)

Definition at line 3270 of file project.h.

References spams::List< T >::begin(), spams::List< T >::clear(), spams::List< T >::end(), and spams::List< T >::fusion().

+ Here is the call graph for this function:

template<typename T, typename Int>
T spams::GraphPath< T, Int >::eval_l0 ( const T *  variables,
List< Path< Int > * > *  decomposition = NULL 
)

Definition at line 3225 of file project.h.

template<typename T , typename Int>
void spams::GraphPath< T, Int >::flow_decomposition ( List< Path< Int > * > &  decomposition) const
protected

Definition at line 3383 of file project.h.

References spams::List< T >::push_back().

+ Here is the call graph for this function:

template<typename T, typename Int >
void spams::GraphPath< T, Int >::init_graph ( const GraphPathStruct< T > &  graph)
template<typename T = double, typename Int = long long>
int spams::GraphPath< T, Int >::n ( ) const
inline

Definition at line 3123 of file project.h.

template<typename T, typename Int >
void spams::GraphPath< T, Int >::proximal_conv ( T *  variables,
const T  lambda 
)

Definition at line 3352 of file project.h.

template<typename T, typename Int >
void spams::GraphPath< T, Int >::proximal_l0 ( T *  variables,
const T  lambda 
)

should check significant flow or not

Definition at line 3307 of file project.h.

template<typename T, typename Int >
void spams::GraphPath< T, Int >::scale_costs ( const T  lambda)
protected

Definition at line 3399 of file project.h.

References spams::Vector< T >::fmaxval(), MAX, and MIN.

+ Here is the call graph for this function:

Member Data Documentation

template<typename T = double, typename Int = long long>
Int spams::GraphPath< T, Int >::_big_integer
private

Definition at line 3134 of file project.h.

template<typename T = double, typename Int = long long>
T spams::GraphPath< T, Int >::_graphprecision
private

Definition at line 3147 of file project.h.

template<typename T = double, typename Int = long long>
Int spams::GraphPath< T, Int >::_infinite_capacity
private

Definition at line 3137 of file project.h.

template<typename T = double, typename Int = long long>
T* spams::GraphPath< T, Int >::_init_start_weights
private

Definition at line 3143 of file project.h.

template<typename T = double, typename Int = long long>
T* spams::GraphPath< T, Int >::_init_stop_weights
private

Definition at line 3144 of file project.h.

template<typename T = double, typename Int = long long>
T* spams::GraphPath< T, Int >::_init_weights
private

Definition at line 3142 of file project.h.

template<typename T = double, typename Int = long long>
int spams::GraphPath< T, Int >::_m
private

Definition at line 3131 of file project.h.

template<typename T = double, typename Int = long long>
T spams::GraphPath< T, Int >::_maxsf
private

Definition at line 3140 of file project.h.

template<typename T = double, typename Int = long long>
MinCostFlow<Int>* spams::GraphPath< T, Int >::_min_cost_flow
private

Definition at line 3132 of file project.h.

template<typename T = double, typename Int = long long>
int spams::GraphPath< T, Int >::_n
private

Definition at line 3130 of file project.h.

template<typename T = double, typename Int = long long>
T spams::GraphPath< T, Int >::_sf
private

Definition at line 3139 of file project.h.


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