TTK
Loading...
Searching...
No Matches
Public Member Functions | Protected Attributes | List of all members
ttk::TopologicalOptimization Class Reference

#include <TopologicalOptimization.h>

Inheritance diagram for ttk::TopologicalOptimization:
ttk::Debug ttk::BaseClass

Public Member Functions

 TopologicalOptimization ()
 
template<typename dataType , typename triangulationType >
int execute (const dataType *const inputScalars, dataType *const outputScalars, SimplexId *const inputOffsets, triangulationType *triangulation, const ttk::DiagramType &constraintDiagram) const
 
int preconditionTriangulation (AbstractTriangulation *triangulation)
 
template<typename dataType , typename triangulationType >
void getIndices (triangulationType *triangulation, SimplexId *&inputOffsets, dataType *const inputScalars, const ttk::DiagramType &constraintDiagram, int epoch, std::vector< SimplexId > &listAllIndicesToChange, std::vector< std::vector< SimplexId > > &pair2MatchedPair, std::vector< std::vector< SimplexId > > &pair2Delete, std::vector< SimplexId > &pairChangeMatchingPair, std::vector< SimplexId > &birthPairToDeleteCurrentDiagram, std::vector< double > &birthPairToDeleteTargetDiagram, std::vector< SimplexId > &deathPairToDeleteCurrentDiagram, std::vector< double > &deathPairToDeleteTargetDiagram, std::vector< SimplexId > &birthPairToChangeCurrentDiagram, std::vector< double > &birthPairToChangeTargetDiagram, std::vector< SimplexId > &deathPairToChangeCurrentDiagram, std::vector< double > &deathPairToChangeTargetDiagram, std::vector< std::vector< SimplexId > > &currentVertex2PairsCurrentDiagram, std::vector< int > &vertexInHowManyPairs) const
 
void setUseFastPersistenceUpdate (bool UseFastPersistenceUpdate)
 
void setFastAssignmentUpdate (bool FastAssignmentUpdate)
 
void setEpochNumber (int EpochNumber)
 
void setPDCMethod (int PDCMethod)
 
void setMethodOptimization (int methodOptimization)
 
void setFinePairManagement (int finePairManagement)
 
void setChooseLearningRate (int chooseLearningRate)
 
void setLearningRate (double learningRate)
 
void setAlpha (double alpha)
 
void setCoefStopCondition (double coefStopCondition)
 
void setOptimizationWithoutMatching (bool optimizationWithoutMatching)
 
void setThresholdMethod (int thresholdMethod)
 
void setThresholdPersistence (double thresholdPersistence)
 
void setLowerThreshold (int lowerThreshold)
 
void setUpperThreshold (int upperThreshold)
 
void setPairTypeToDelete (int pairTypeToDelete)
 
void setConstraintAveraging (bool ConstraintAveraging)
 
void setPrintFrequency (int printFrequency)
 
- Public Member Functions inherited from ttk::Debug
 Debug ()
 
 ~Debug () override
 
virtual int setDebugLevel (const int &debugLevel)
 
int setWrapper (const Wrapper *wrapper) override
 
int printMsg (const std::string &msg, const debug::Priority &priority=debug::Priority::INFO, const debug::LineMode &lineMode=debug::LineMode::NEW, std::ostream &stream=std::cout) const
 
int printMsg (const std::vector< std::string > &msgs, const debug::Priority &priority=debug::Priority::INFO, const debug::LineMode &lineMode=debug::LineMode::NEW, std::ostream &stream=std::cout) const
 
int printErr (const std::string &msg, const debug::LineMode &lineMode=debug::LineMode::NEW, std::ostream &stream=std::cerr) const
 
int printWrn (const std::string &msg, const debug::LineMode &lineMode=debug::LineMode::NEW, std::ostream &stream=std::cerr) const
 
int printMsg (const std::string &msg, const double &progress, const double &time, const int &threads, const double &memory, const debug::LineMode &lineMode=debug::LineMode::NEW, const debug::Priority &priority=debug::Priority::PERFORMANCE, std::ostream &stream=std::cout) const
 
int printMsg (const std::string &msg, const double &progress, const double &time, const debug::LineMode &lineMode=debug::LineMode::NEW, const debug::Priority &priority=debug::Priority::PERFORMANCE, std::ostream &stream=std::cout) const
 
int printMsg (const std::string &msg, const double &progress, const double &time, const int &threads, const debug::LineMode &lineMode=debug::LineMode::NEW, const debug::Priority &priority=debug::Priority::PERFORMANCE, std::ostream &stream=std::cout) const
 
int printMsg (const std::string &msg, const double &progress, const debug::LineMode &lineMode=debug::LineMode::NEW, const debug::Priority &priority=debug::Priority::PERFORMANCE, std::ostream &stream=std::cout) const
 
int printMsg (const std::string &msg, const double &progress, const debug::Priority &priority, const debug::LineMode &lineMode=debug::LineMode::NEW, std::ostream &stream=std::cout) const
 
int printMsg (const std::vector< std::vector< std::string > > &rows, const debug::Priority &priority=debug::Priority::INFO, const bool hasHeader=true, const debug::LineMode &lineMode=debug::LineMode::NEW, std::ostream &stream=std::cout) const
 
int printMsg (const debug::Separator &separator, const debug::LineMode &lineMode=debug::LineMode::NEW, const debug::Priority &priority=debug::Priority::INFO, std::ostream &stream=std::cout) const
 
int printMsg (const debug::Separator &separator, const debug::Priority &priority, const debug::LineMode &lineMode=debug::LineMode::NEW, std::ostream &stream=std::cout) const
 
int printMsg (const std::string &msg, const debug::Separator &separator, const debug::LineMode &lineMode=debug::LineMode::NEW, const debug::Priority &priority=debug::Priority::INFO, std::ostream &stream=std::cout) const
 
void setDebugMsgPrefix (const std::string &prefix)
 
- Public Member Functions inherited from ttk::BaseClass
 BaseClass ()
 
virtual ~BaseClass ()=default
 
int getThreadNumber () const
 
virtual int setThreadNumber (const int threadNumber)
 

Protected Attributes

SimplexId vertexNumber_ {}
 
int epochNumber_
 
bool useFastPersistenceUpdate_
 
bool fastAssignmentUpdate_
 
int pdcMethod_
 
int methodOptimization_
 
int finePairManagement_
 
bool chooseLearningRate_
 
double learningRate_
 
double alpha_
 
double coefStopCondition_
 
bool optimizationWithoutMatching_
 
int thresholdMethod_
 
double thresholdPersistence_
 
int lowerThreshold_
 
int upperThreshold_
 
int pairTypeToDelete_
 
bool constraintAveraging_
 
int printFrequency_ {10}
 
- Protected Attributes inherited from ttk::Debug
int debugLevel_
 
std::string debugMsgPrefix_
 
std::string debugMsgNamePrefix_
 
- Protected Attributes inherited from ttk::BaseClass
bool lastObject_
 
int threadNumber_
 
Wrapperwrapper_
 

Additional Inherited Members

- Protected Member Functions inherited from ttk::Debug
int printMsgInternal (const std::string &msg, const std::string &right, const std::string &filler, const debug::Priority &priority=debug::Priority::INFO, const debug::LineMode &lineMode=debug::LineMode::NEW, std::ostream &stream=std::cout) const
 
int printMsgInternal (const std::string &msg, const debug::Priority &priority, const debug::LineMode &lineMode, std::ostream &stream=std::cout) const
 
int welcomeMsg (std::ostream &stream)
 
- Static Protected Attributes inherited from ttk::Debug
static COMMON_EXPORTS debug::LineMode lastLineMode = ttk::debug::LineMode::NEW
 

Detailed Description

Author
Julien Tierny julie.nosp@m.n.ti.nosp@m.erny@.nosp@m.lip6.nosp@m..fr
Mohamed Amine Kissi moham.nosp@m.ed.k.nosp@m.issi@.nosp@m.lip6.nosp@m..fr
Date
March 2024

Definition at line 22 of file TopologicalOptimization.h.

Constructor & Destructor Documentation

◆ TopologicalOptimization()

ttk::TopologicalOptimization::TopologicalOptimization ( )

Definition at line 3 of file TopologicalOptimization.cpp.

Member Function Documentation

◆ execute()

template<typename dataType , typename triangulationType >
int ttk::TopologicalOptimization::execute ( const dataType *const  inputScalars,
dataType *const  outputScalars,
SimplexId *const  inputOffsets,
triangulationType *  triangulation,
const ttk::DiagramType constraintDiagram 
) const

Definition at line 1044 of file TopologicalOptimization.h.

◆ getIndices()

template<typename dataType , typename triangulationType >
void ttk::TopologicalOptimization::getIndices ( triangulationType *  triangulation,
SimplexId *&  inputOffsets,
dataType *const  inputScalars,
const ttk::DiagramType constraintDiagram,
int  epoch,
std::vector< SimplexId > &  listAllIndicesToChange,
std::vector< std::vector< SimplexId > > &  pair2MatchedPair,
std::vector< std::vector< SimplexId > > &  pair2Delete,
std::vector< SimplexId > &  pairChangeMatchingPair,
std::vector< SimplexId > &  birthPairToDeleteCurrentDiagram,
std::vector< double > &  birthPairToDeleteTargetDiagram,
std::vector< SimplexId > &  deathPairToDeleteCurrentDiagram,
std::vector< double > &  deathPairToDeleteTargetDiagram,
std::vector< SimplexId > &  birthPairToChangeCurrentDiagram,
std::vector< double > &  birthPairToChangeTargetDiagram,
std::vector< SimplexId > &  deathPairToChangeCurrentDiagram,
std::vector< double > &  deathPairToChangeTargetDiagram,
std::vector< std::vector< SimplexId > > &  currentVertex2PairsCurrentDiagram,
std::vector< int > &  vertexInHowManyPairs 
) const

Definition at line 230 of file TopologicalOptimization.h.

◆ preconditionTriangulation()

int ttk::TopologicalOptimization::preconditionTriangulation ( AbstractTriangulation triangulation)
inline

Definition at line 33 of file TopologicalOptimization.h.

◆ setAlpha()

void ttk::TopologicalOptimization::setAlpha ( double  alpha)
inline

Definition at line 109 of file TopologicalOptimization.h.

◆ setChooseLearningRate()

void ttk::TopologicalOptimization::setChooseLearningRate ( int  chooseLearningRate)
inline

Definition at line 101 of file TopologicalOptimization.h.

◆ setCoefStopCondition()

void ttk::TopologicalOptimization::setCoefStopCondition ( double  coefStopCondition)
inline

Definition at line 113 of file TopologicalOptimization.h.

◆ setConstraintAveraging()

void ttk::TopologicalOptimization::setConstraintAveraging ( bool  ConstraintAveraging)
inline

Definition at line 142 of file TopologicalOptimization.h.

◆ setEpochNumber()

void ttk::TopologicalOptimization::setEpochNumber ( int  EpochNumber)
inline

Definition at line 85 of file TopologicalOptimization.h.

◆ setFastAssignmentUpdate()

void ttk::TopologicalOptimization::setFastAssignmentUpdate ( bool  FastAssignmentUpdate)
inline

Definition at line 81 of file TopologicalOptimization.h.

◆ setFinePairManagement()

void ttk::TopologicalOptimization::setFinePairManagement ( int  finePairManagement)
inline

Definition at line 97 of file TopologicalOptimization.h.

◆ setLearningRate()

void ttk::TopologicalOptimization::setLearningRate ( double  learningRate)
inline

Definition at line 105 of file TopologicalOptimization.h.

◆ setLowerThreshold()

void ttk::TopologicalOptimization::setLowerThreshold ( int  lowerThreshold)
inline

Definition at line 130 of file TopologicalOptimization.h.

◆ setMethodOptimization()

void ttk::TopologicalOptimization::setMethodOptimization ( int  methodOptimization)
inline

Definition at line 93 of file TopologicalOptimization.h.

◆ setOptimizationWithoutMatching()

void ttk::TopologicalOptimization::setOptimizationWithoutMatching ( bool  optimizationWithoutMatching)
inline

Definition at line 118 of file TopologicalOptimization.h.

◆ setPairTypeToDelete()

void ttk::TopologicalOptimization::setPairTypeToDelete ( int  pairTypeToDelete)
inline

Definition at line 138 of file TopologicalOptimization.h.

◆ setPDCMethod()

void ttk::TopologicalOptimization::setPDCMethod ( int  PDCMethod)
inline

Definition at line 89 of file TopologicalOptimization.h.

◆ setPrintFrequency()

void ttk::TopologicalOptimization::setPrintFrequency ( int  printFrequency)
inline

Definition at line 146 of file TopologicalOptimization.h.

◆ setThresholdMethod()

void ttk::TopologicalOptimization::setThresholdMethod ( int  thresholdMethod)
inline

Definition at line 122 of file TopologicalOptimization.h.

◆ setThresholdPersistence()

void ttk::TopologicalOptimization::setThresholdPersistence ( double  thresholdPersistence)
inline

Definition at line 126 of file TopologicalOptimization.h.

◆ setUpperThreshold()

void ttk::TopologicalOptimization::setUpperThreshold ( int  upperThreshold)
inline

Definition at line 134 of file TopologicalOptimization.h.

◆ setUseFastPersistenceUpdate()

void ttk::TopologicalOptimization::setUseFastPersistenceUpdate ( bool  UseFastPersistenceUpdate)
inline

Definition at line 77 of file TopologicalOptimization.h.

Member Data Documentation

◆ alpha_

double ttk::TopologicalOptimization::alpha_
protected

Definition at line 179 of file TopologicalOptimization.h.

◆ chooseLearningRate_

bool ttk::TopologicalOptimization::chooseLearningRate_
protected

Definition at line 174 of file TopologicalOptimization.h.

◆ coefStopCondition_

double ttk::TopologicalOptimization::coefStopCondition_
protected

Definition at line 184 of file TopologicalOptimization.h.

◆ constraintAveraging_

bool ttk::TopologicalOptimization::constraintAveraging_
protected

Definition at line 205 of file TopologicalOptimization.h.

◆ epochNumber_

int ttk::TopologicalOptimization::epochNumber_
protected

Definition at line 152 of file TopologicalOptimization.h.

◆ fastAssignmentUpdate_

bool ttk::TopologicalOptimization::fastAssignmentUpdate_
protected

Definition at line 158 of file TopologicalOptimization.h.

◆ finePairManagement_

int ttk::TopologicalOptimization::finePairManagement_
protected

Definition at line 171 of file TopologicalOptimization.h.

◆ learningRate_

double ttk::TopologicalOptimization::learningRate_
protected

Definition at line 175 of file TopologicalOptimization.h.

◆ lowerThreshold_

int ttk::TopologicalOptimization::lowerThreshold_
protected

Definition at line 197 of file TopologicalOptimization.h.

◆ methodOptimization_

int ttk::TopologicalOptimization::methodOptimization_
protected

Definition at line 166 of file TopologicalOptimization.h.

◆ optimizationWithoutMatching_

bool ttk::TopologicalOptimization::optimizationWithoutMatching_
protected

Definition at line 187 of file TopologicalOptimization.h.

◆ pairTypeToDelete_

int ttk::TopologicalOptimization::pairTypeToDelete_
protected

Definition at line 203 of file TopologicalOptimization.h.

◆ pdcMethod_

int ttk::TopologicalOptimization::pdcMethod_
protected

Definition at line 162 of file TopologicalOptimization.h.

◆ printFrequency_

int ttk::TopologicalOptimization::printFrequency_ {10}
protected

Definition at line 207 of file TopologicalOptimization.h.

◆ thresholdMethod_

int ttk::TopologicalOptimization::thresholdMethod_
protected

Definition at line 191 of file TopologicalOptimization.h.

◆ thresholdPersistence_

double ttk::TopologicalOptimization::thresholdPersistence_
protected

Definition at line 194 of file TopologicalOptimization.h.

◆ upperThreshold_

int ttk::TopologicalOptimization::upperThreshold_
protected

Definition at line 200 of file TopologicalOptimization.h.

◆ useFastPersistenceUpdate_

bool ttk::TopologicalOptimization::useFastPersistenceUpdate_
protected

Definition at line 155 of file TopologicalOptimization.h.

◆ vertexNumber_

SimplexId ttk::TopologicalOptimization::vertexNumber_ {}
protected

Definition at line 151 of file TopologicalOptimization.h.


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