TTK
Loading...
Searching...
No Matches
ttk::MergeTreeAxesAlgorithmBase Class Reference

#include <MergeTreeAxesAlgorithmBase.h>

Inheritance diagram for ttk::MergeTreeAxesAlgorithmBase:
ttk::Debug ttk::MergeTreeBase ttk::BaseClass ttk::Debug ttk::BaseClass ttk::MergeTreeNeuralBase ttk::MergeTreePrincipalGeodesicsBase ttk::MergeTreeNeuralLayer ttk::MergeTreeNeuralNetwork ttk::MergeTreePrincipalGeodesics ttk::MergeTreePrincipalGeodesicsDecoding ttk::MergeTreeAutoencoder ttkMergeTreePrincipalGeodesics ttkMergeTreePrincipalGeodesicsDecoding ttk::MergeTreeAutoencoderDecoding ttkMergeTreeAutoencoder ttkMergeTreeAutoencoderDecoding

Public Member Functions

 MergeTreeAxesAlgorithmBase ()
void setDeterministic (const bool deterministic)
void setNumberOfProjectionSteps (const unsigned int k)
void setBarycenterSizeLimitPercent (const double barycenterSizeLimitPercent)
void setProbabilisticVectorsInit (const bool probabilisticVectorsInit)
template<class dataType>
void computeOneDistance (const ftm::MergeTree< dataType > &tree1, const ftm::MergeTree< dataType > &tree2, std::vector< std::tuple< ftm::idNode, ftm::idNode, double > > &matching, dataType &distance, bool isCalled=false, bool useDoubleInput=false, bool isFirstInput=true)
template<class dataType>
void computeOneDistance (const ftm::MergeTree< dataType > &tree1, const ftm::MergeTree< dataType > &tree2, dataType &distance, bool isCalled=false, bool useDoubleInput=false, bool isFirstInput=true)
template<class dataType>
void initVectorFromMatching (ftm::MergeTree< dataType > &barycenter, ftm::MergeTree< dataType > &tree, std::vector< std::tuple< ftm::idNode, ftm::idNode, double > > &matching, std::vector< std::vector< double > > &v)
template<class dataType>
void initRandomVector (ftm::MergeTree< dataType > &barycenter, std::vector< std::vector< double > > &v, std::vector< std::vector< std::vector< double > > > &vS, std::vector< std::vector< std::vector< double > > > &v2s)
template<class dataType, typename F>
int initVectors (int axeNumber, ftm::MergeTree< dataType > &barycenter, std::vector< ftm::MergeTree< dataType > > &trees, ftm::MergeTree< dataType > &barycenter2, std::vector< ftm::MergeTree< dataType > > &trees2, std::vector< std::vector< double > > &v1, std::vector< std::vector< double > > &v2, std::vector< std::vector< double > > &trees2V1, std::vector< std::vector< double > > &trees2V2, int newVectorOffset, std::vector< double > &inputToOriginDistances, std::vector< std::vector< std::tuple< ftm::idNode, ftm::idNode, double > > > &baryMatchings, std::vector< std::vector< std::tuple< ftm::idNode, ftm::idNode, double > > > &baryMatchings2, std::vector< std::vector< double > > &inputToAxesDistances, std::vector< std::vector< std::vector< double > > > &vS, std::vector< std::vector< std::vector< double > > > &v2s, std::vector< std::vector< std::vector< double > > > &trees2Vs, std::vector< std::vector< std::vector< double > > > &trees2V2s, bool projectInitializedVectors, F initializedVectorsProjection)
template<class dataType>
void computeOneBarycenter (std::vector< ftm::MergeTree< dataType > > &trees, ftm::MergeTree< dataType > &baryMergeTree, std::vector< std::vector< std::tuple< ftm::idNode, ftm::idNode, double > > > &matchings, std::vector< double > &finalDistances, double barycenterSizeLimitPercent, unsigned int barycenterMaximumNumberOfPairs, int barycenterInitIndex, bool oneIter, bool useDoubleInput=false, bool isFirstInput=true)
template<class dataType>
void computeOneBarycenter (std::vector< ftm::MergeTree< dataType > > &trees, ftm::MergeTree< dataType > &baryMergeTree, std::vector< std::vector< std::tuple< ftm::idNode, ftm::idNode, double > > > &matchings, std::vector< double > &finalDistances, double barycenterSizeLimitPercent, unsigned int barycenterMaximumNumberOfPairs, bool useDoubleInput=false, bool isFirstInput=true)
template<class dataType>
void computeOneBarycenter (std::vector< ftm::MergeTree< dataType > > &trees, ftm::MergeTree< dataType > &baryMergeTree, std::vector< std::vector< std::tuple< ftm::idNode, ftm::idNode, double > > > &matchings, std::vector< double > &finalDistances, double barycenterSizeLimitPercent, bool useDoubleInput=false, bool isFirstInput=true)
template<class dataType>
void computeOneBarycenter (std::vector< ftm::MergeTree< dataType > > &trees, ftm::MergeTree< dataType > &baryMergeTree, std::vector< std::vector< std::tuple< ftm::idNode, ftm::idNode, double > > > &matchings, std::vector< double > &finalDistances, bool useDoubleInput=false, bool isFirstInput=true)
template<class dataType>
void computeOneBarycenter (std::vector< ftm::MergeTree< dataType > > &trees, ftm::MergeTree< dataType > &baryMergeTree, std::vector< std::vector< std::tuple< ftm::idNode, ftm::idNode, double > > > &matchings)
template<class dataType>
void computeOneBarycenter (std::vector< ftm::MergeTree< dataType > > &trees, ftm::MergeTree< dataType > &baryMergeTree)
template<class dataType>
void preprocessingTrees (std::vector< ftm::MergeTree< dataType > > &trees, std::vector< std::vector< int > > &nodeCorr, bool useMinMaxPairT=true)
template<class dataType>
void preprocessingTrees (std::vector< ftm::MergeTree< dataType > > &trees, bool useMinMaxPairT=true)
template<class dataType>
std::tuple< dataType, dataType > getParametrizedBirthDeath (ftm::FTMTree_MT *tree, ftm::idNode node)
template<class dataType>
void computeBranchesCorrelationMatrix (const ftm::MergeTree< dataType > &barycenter, std::vector< ftm::MergeTree< dataType > > &trees, std::vector< std::vector< std::tuple< ftm::idNode, ftm::idNode, double > > > &baryMatchings, std::vector< std::vector< double > > &allTs, std::vector< std::vector< double > > &branchesCorrelationMatrix, std::vector< std::vector< double > > &persCorrelationMatrix)
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)
Public Member Functions inherited from ttk::MergeTreeBase
 MergeTreeBase ()
void setAssignmentSolver (int assignmentSolver)
void setEpsilon1UseFarthestSaddle (bool b)
void setEpsilonTree1 (double epsilon)
void setEpsilonTree2 (double epsilon)
void setEpsilon2Tree1 (double epsilon)
void setEpsilon2Tree2 (double epsilon)
void setEpsilon3Tree1 (double epsilon)
void setEpsilon3Tree2 (double epsilon)
void setPersistenceThreshold (double pt)
void setParallelize (bool para)
void setNodePerTask (int npt)
void setBranchDecomposition (bool useBD)
void setNormalizedWasserstein (bool normalizedWasserstein)
void setKeepSubtree (bool keepSubtree)
void setNonMatchingWeight (double weight)
void setBarycenterMergeTree (bool imt)
void setDistanceSquaredRoot (bool distanceSquaredRoot)
void setUseMinMaxPair (bool useMinMaxPair)
void setDeleteMultiPersPairs (bool deleteMultiPersPairsT)
void setCleanTree (bool clean)
void setIsPersistenceDiagram (bool isPD)
void setJoinSplitMixtureCoefficient (const double mixtureCoefficient)
void setUseDoubleInput (const bool useDoubleInput)
std::vector< std::vector< int > > getTreesNodeCorr ()
double mixDistancesMinMaxPairWeight (bool isFirstInput)
double mixDistancesWeight (bool isFirstInput)
template<class dataType>
double mixDistances (dataType distance1, dataType distance2)
template<class dataType>
void mixDistancesMatrix (std::vector< std::vector< dataType > > &distanceMatrix, std::vector< std::vector< dataType > > &distanceMatrix2)
template<class dataType>
void mergeSaddle (ftm::FTMTree_MT *tree, double epsilon, std::vector< std::vector< ftm::idNode > > &treeNodeMerged, bool mergeByPersistence=false)
template<class dataType>
void persistenceMerging (ftm::FTMTree_MT *tree, double epsilon2, double epsilon3=100)
void deletePersistenceDiagramsPairs (ftm::FTMTree_MT *tree, std::vector< ftm::idNode > &nodes)
template<class dataType>
void keepMostImportantPairs (ftm::FTMTree_MT *tree, int n, bool useBD)
template<class dataType>
void persistenceThresholding (ftm::FTMTree_MT *tree, double persistenceThresholdT, std::vector< ftm::idNode > &deletedNodes)
template<class dataType>
void persistenceThresholding (ftm::FTMTree_MT *tree, std::vector< ftm::idNode > &deletedNodes)
template<class dataType>
void persistenceThresholding (ftm::FTMTree_MT *tree, double persistenceThresholdT)
template<class dataType>
void persistenceThresholding (ftm::FTMTree_MT *tree)
template<class dataType>
void verifyOrigins (ftm::FTMTree_MT *tree)
template<class dataType>
void preprocessTree (ftm::FTMTree_MT *tree, bool deleteInconsistentNodes=true)
template<class dataType>
ftm::FTMTree_MTcomputeBranchDecomposition (ftm::FTMTree_MT *tree, std::vector< std::vector< ftm::idNode > > &treeNodeMerged)
template<class dataType>
void dontUseMinMaxPair (ftm::FTMTree_MT *tree)
void verifyPairsTree (ftm::FTMTree_MT *tree)
template<class dataType>
void deleteMultiPersPairs (ftm::FTMTree_MT *tree, bool useBD)
template<class dataType>
void preprocessingPipeline (ftm::MergeTree< dataType > &mTree, double epsilonTree, double epsilon2Tree, double epsilon3Tree, bool branchDecompositionT, bool useMinMaxPairT, bool cleanTreeT, double persistenceThreshold, std::vector< int > &nodeCorr, bool deleteInconsistentNodes=true, bool removeMergedSaddles=false)
template<class dataType>
void preprocessingPipeline (ftm::MergeTree< dataType > &mTree, double epsilonTree, double epsilon2Tree, double epsilon3Tree, bool branchDecompositionT, bool useMinMaxPairT, bool cleanTreeT, std::vector< int > &nodeCorr, bool deleteInconsistentNodes=true, bool removeMergedSaddles=false)
void reverseNodeCorr (ftm::FTMTree_MT *tree, std::vector< int > &nodeCorr)
template<class dataType>
void mtFlattening (ftm::MergeTree< dataType > &mt)
template<class dataType>
void mtsFlattening (std::vector< ftm::MergeTree< dataType > > &mts)
double getSizeLimitMetric (std::vector< ftm::FTMTree_MT * > &trees)
template<class dataType>
void copyMinMaxPair (ftm::MergeTree< dataType > &mTree1, ftm::MergeTree< dataType > &mTree2, bool setOrigins=false)
template<class dataType>
std::tuple< int, dataType > fixMergedRootOrigin (ftm::FTMTree_MT *tree)
template<class dataType>
void branchDecompositionToTree (ftm::FTMTree_MT *tree)
template<class dataType>
void putBackMergedNodes (ftm::FTMTree_MT *tree)
template<class dataType>
void postprocessingPipeline (ftm::FTMTree_MT *tree)
template<class dataType>
void convertBranchDecompositionMatching (ftm::FTMTree_MT *tree1, ftm::FTMTree_MT *tree2, std::vector< std::tuple< ftm::idNode, ftm::idNode, double > > &outputMatching)
template<class dataType>
void convertBranchDecompositionMatching (ftm::FTMTree_MT *tree1, ftm::FTMTree_MT *tree2, std::vector< std::tuple< ftm::idNode, ftm::idNode > > &outputMatching)
template<class dataType>
void identifyRealMatching (ftm::FTMTree_MT *tree1, ftm::FTMTree_MT *tree2, std::vector< std::tuple< ftm::idNode, ftm::idNode > > &outputMatching, std::vector< std::tuple< ftm::idNode, ftm::idNode, bool > > &realMatching)
template<class dataType>
dataType computeDistance (dataType x1, dataType x2, dataType y1, dataType y2, double power=2)
template<class dataType>
dataType deleteCost (const ftm::FTMTree_MT *tree, ftm::idNode nodeId)
template<class dataType>
dataType insertCost (const ftm::FTMTree_MT *tree, ftm::idNode nodeId)
template<class dataType>
dataType relabelCostOnly (const ftm::FTMTree_MT *tree1, ftm::idNode nodeId1, const ftm::FTMTree_MT *tree2, ftm::idNode nodeId2)
template<class dataType>
dataType relabelCost (const ftm::FTMTree_MT *tree1, ftm::idNode nodeId1, const ftm::FTMTree_MT *tree2, ftm::idNode nodeId2)
void getParamNames (std::vector< std::string > &paramNames)
double getParamValueFromName (std::string &paramName)
void setParamValueFromName (std::string &paramName, double value)
void getTreesStats (std::vector< ftm::FTMTree_MT * > &trees, std::array< double, 3 > &stats)
void printTreesStats (std::vector< ftm::FTMTree_MT * > &trees)
template<class dataType>
void printTreesStats (std::vector< ftm::MergeTree< dataType > > &trees)
template<class dataType>
void printTableVector (std::vector< std::vector< dataType > > &table)
template<class dataType>
void printTable (dataType *table, int nRows, int nCols)
void printMatching (std::vector< MatchingType > &matchings)
void printMatching (std::vector< std::tuple< ftm::idNode, ftm::idNode, double > > &matchings)
void printMatching (std::vector< std::tuple< ftm::idNode, ftm::idNode > > &matchings)
template<class dataType>
void printPairs (std::vector< std::tuple< SimplexId, SimplexId, dataType > > &treePairs)
template<class dataType>
void printOutputMatching (std::vector< std::tuple< ftm::idNode, ftm::idNode > > &outputMatching, ftm::FTMTree_MT *tree1, ftm::FTMTree_MT *tree2, bool computeCosts=true)

Protected Attributes

bool deterministic_ = true
unsigned int numberOfAxes_ = 2
unsigned int k_ = 16
double barycenterSizeLimitPercent_ = 20.0
bool probabilisticVectorsInit_ = false
std::vector< std::vector< int > > trees2NodeCorr_
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_
Protected Attributes inherited from ttk::MergeTreeBase
int assignmentSolverID_ = 0
bool epsilon1UseFarthestSaddle_ = false
double epsilonTree1_ = 0
double epsilonTree2_ = 0
double epsilon2Tree1_ = 100
double epsilon2Tree2_ = 100
double epsilon3Tree1_ = 100
double epsilon3Tree2_ = 100
double persistenceThreshold_ = 0
bool barycenterMergeTree_ = false
bool useMinMaxPair_ = true
bool deleteMultiPersPairs_ = false
bool branchDecomposition_ = true
int wassersteinPower_ = 2
bool normalizedWasserstein_ = true
bool keepSubtree_ = false
double nonMatchingWeight_ = 1.0
bool distanceSquaredRoot_ = true
bool useFullMerge_ = false
bool isPersistenceDiagram_ = false
bool convertToDiagram_ = false
double mixtureCoefficient_ = 0.5
bool useDoubleInput_ = false
bool parallelize_ = true
int nodePerTask_ = 32
bool cleanTree_ = true
std::vector< std::vector< int > > treesNodeCorr_

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
Mathieu Pont mathi.nosp@m.eu.p.nosp@m.ont@l.nosp@m.ip6..nosp@m.fr
Date
2023

Related publication:
"Principal Geodesic Analysis of Merge Trees (and Persistence Diagrams)"
Mathieu Pont, Jules Vidal, Julien Tierny.
IEEE Transactions on Visualization and Computer Graphics, 2022

Definition at line 25 of file MergeTreeAxesAlgorithmBase.h.

Constructor & Destructor Documentation

◆ MergeTreeAxesAlgorithmBase()

ttk::MergeTreeAxesAlgorithmBase::MergeTreeAxesAlgorithmBase ( )
inline

Definition at line 39 of file MergeTreeAxesAlgorithmBase.h.

Member Function Documentation

◆ computeBranchesCorrelationMatrix()

template<class dataType>
void ttk::MergeTreeAxesAlgorithmBase::computeBranchesCorrelationMatrix ( const ftm::MergeTree< dataType > & barycenter,
std::vector< ftm::MergeTree< dataType > > & trees,
std::vector< std::vector< std::tuple< ftm::idNode, ftm::idNode, double > > > & baryMatchings,
std::vector< std::vector< double > > & allTs,
std::vector< std::vector< double > > & branchesCorrelationMatrix,
std::vector< std::vector< double > > & persCorrelationMatrix )
inline

Definition at line 481 of file MergeTreeAxesAlgorithmBase.h.

◆ computeOneBarycenter() [1/6]

template<class dataType>
void ttk::MergeTreeAxesAlgorithmBase::computeOneBarycenter ( std::vector< ftm::MergeTree< dataType > > & trees,
ftm::MergeTree< dataType > & baryMergeTree )
inline

Definition at line 431 of file MergeTreeAxesAlgorithmBase.h.

◆ computeOneBarycenter() [2/6]

template<class dataType>
void ttk::MergeTreeAxesAlgorithmBase::computeOneBarycenter ( std::vector< ftm::MergeTree< dataType > > & trees,
ftm::MergeTree< dataType > & baryMergeTree,
std::vector< std::vector< std::tuple< ftm::idNode, ftm::idNode, double > > > & matchings )
inline

Definition at line 420 of file MergeTreeAxesAlgorithmBase.h.

◆ computeOneBarycenter() [3/6]

template<class dataType>
void ttk::MergeTreeAxesAlgorithmBase::computeOneBarycenter ( std::vector< ftm::MergeTree< dataType > > & trees,
ftm::MergeTree< dataType > & baryMergeTree,
std::vector< std::vector< std::tuple< ftm::idNode, ftm::idNode, double > > > & matchings,
std::vector< double > & finalDistances,
bool useDoubleInput = false,
bool isFirstInput = true )
inline

Definition at line 406 of file MergeTreeAxesAlgorithmBase.h.

◆ computeOneBarycenter() [4/6]

template<class dataType>
void ttk::MergeTreeAxesAlgorithmBase::computeOneBarycenter ( std::vector< ftm::MergeTree< dataType > > & trees,
ftm::MergeTree< dataType > & baryMergeTree,
std::vector< std::vector< std::tuple< ftm::idNode, ftm::idNode, double > > > & matchings,
std::vector< double > & finalDistances,
double barycenterSizeLimitPercent,
bool useDoubleInput = false,
bool isFirstInput = true )
inline

Definition at line 389 of file MergeTreeAxesAlgorithmBase.h.

◆ computeOneBarycenter() [5/6]

template<class dataType>
void ttk::MergeTreeAxesAlgorithmBase::computeOneBarycenter ( std::vector< ftm::MergeTree< dataType > > & trees,
ftm::MergeTree< dataType > & baryMergeTree,
std::vector< std::vector< std::tuple< ftm::idNode, ftm::idNode, double > > > & matchings,
std::vector< double > & finalDistances,
double barycenterSizeLimitPercent,
unsigned int barycenterMaximumNumberOfPairs,
bool useDoubleInput = false,
bool isFirstInput = true )
inline

Definition at line 372 of file MergeTreeAxesAlgorithmBase.h.

◆ computeOneBarycenter() [6/6]

template<class dataType>
void ttk::MergeTreeAxesAlgorithmBase::computeOneBarycenter ( std::vector< ftm::MergeTree< dataType > > & trees,
ftm::MergeTree< dataType > & baryMergeTree,
std::vector< std::vector< std::tuple< ftm::idNode, ftm::idNode, double > > > & matchings,
std::vector< double > & finalDistances,
double barycenterSizeLimitPercent,
unsigned int barycenterMaximumNumberOfPairs,
int barycenterInitIndex,
bool oneIter,
bool useDoubleInput = false,
bool isFirstInput = true )
inline

Definition at line 335 of file MergeTreeAxesAlgorithmBase.h.

◆ computeOneDistance() [1/2]

template<class dataType>
void ttk::MergeTreeAxesAlgorithmBase::computeOneDistance ( const ftm::MergeTree< dataType > & tree1,
const ftm::MergeTree< dataType > & tree2,
dataType & distance,
bool isCalled = false,
bool useDoubleInput = false,
bool isFirstInput = true )
inline

Definition at line 90 of file MergeTreeAxesAlgorithmBase.h.

◆ computeOneDistance() [2/2]

template<class dataType>
void ttk::MergeTreeAxesAlgorithmBase::computeOneDistance ( const ftm::MergeTree< dataType > & tree1,
const ftm::MergeTree< dataType > & tree2,
std::vector< std::tuple< ftm::idNode, ftm::idNode, double > > & matching,
dataType & distance,
bool isCalled = false,
bool useDoubleInput = false,
bool isFirstInput = true )
inline

Definition at line 61 of file MergeTreeAxesAlgorithmBase.h.

◆ getParametrizedBirthDeath()

template<class dataType>
std::tuple< dataType, dataType > ttk::MergeTreeAxesAlgorithmBase::getParametrizedBirthDeath ( ftm::FTMTree_MT * tree,
ftm::idNode node )
inline

Definition at line 472 of file MergeTreeAxesAlgorithmBase.h.

◆ initRandomVector()

template<class dataType>
void ttk::MergeTreeAxesAlgorithmBase::initRandomVector ( ftm::MergeTree< dataType > & barycenter,
std::vector< std::vector< double > > & v,
std::vector< std::vector< std::vector< double > > > & vS,
std::vector< std::vector< std::vector< double > > > & v2s )
inline

Definition at line 138 of file MergeTreeAxesAlgorithmBase.h.

◆ initVectorFromMatching()

template<class dataType>
void ttk::MergeTreeAxesAlgorithmBase::initVectorFromMatching ( ftm::MergeTree< dataType > & barycenter,
ftm::MergeTree< dataType > & tree,
std::vector< std::tuple< ftm::idNode, ftm::idNode, double > > & matching,
std::vector< std::vector< double > > & v )
inline

Definition at line 105 of file MergeTreeAxesAlgorithmBase.h.

◆ initVectors()

template<class dataType, typename F>
int ttk::MergeTreeAxesAlgorithmBase::initVectors ( int axeNumber,
ftm::MergeTree< dataType > & barycenter,
std::vector< ftm::MergeTree< dataType > > & trees,
ftm::MergeTree< dataType > & barycenter2,
std::vector< ftm::MergeTree< dataType > > & trees2,
std::vector< std::vector< double > > & v1,
std::vector< std::vector< double > > & v2,
std::vector< std::vector< double > > & trees2V1,
std::vector< std::vector< double > > & trees2V2,
int newVectorOffset,
std::vector< double > & inputToOriginDistances,
std::vector< std::vector< std::tuple< ftm::idNode, ftm::idNode, double > > > & baryMatchings,
std::vector< std::vector< std::tuple< ftm::idNode, ftm::idNode, double > > > & baryMatchings2,
std::vector< std::vector< double > > & inputToAxesDistances,
std::vector< std::vector< std::vector< double > > > & vS,
std::vector< std::vector< std::vector< double > > > & v2s,
std::vector< std::vector< std::vector< double > > > & trees2Vs,
std::vector< std::vector< std::vector< double > > > & trees2V2s,
bool projectInitializedVectors,
F initializedVectorsProjection )
inline

Definition at line 169 of file MergeTreeAxesAlgorithmBase.h.

◆ preprocessingTrees() [1/2]

template<class dataType>
void ttk::MergeTreeAxesAlgorithmBase::preprocessingTrees ( std::vector< ftm::MergeTree< dataType > > & trees,
bool useMinMaxPairT = true )
inline

Definition at line 461 of file MergeTreeAxesAlgorithmBase.h.

◆ preprocessingTrees() [2/2]

template<class dataType>
void ttk::MergeTreeAxesAlgorithmBase::preprocessingTrees ( std::vector< ftm::MergeTree< dataType > > & trees,
std::vector< std::vector< int > > & nodeCorr,
bool useMinMaxPairT = true )
inline

Definition at line 442 of file MergeTreeAxesAlgorithmBase.h.

◆ setBarycenterSizeLimitPercent()

void ttk::MergeTreeAxesAlgorithmBase::setBarycenterSizeLimitPercent ( const double barycenterSizeLimitPercent)

Definition at line 16 of file MergeTreeAxesAlgorithmBase.cpp.

◆ setDeterministic()

void ttk::MergeTreeAxesAlgorithmBase::setDeterministic ( const bool deterministic)

Definition at line 6 of file MergeTreeAxesAlgorithmBase.cpp.

◆ setNumberOfProjectionSteps()

void ttk::MergeTreeAxesAlgorithmBase::setNumberOfProjectionSteps ( const unsigned int k)

Definition at line 11 of file MergeTreeAxesAlgorithmBase.cpp.

◆ setProbabilisticVectorsInit()

void ttk::MergeTreeAxesAlgorithmBase::setProbabilisticVectorsInit ( const bool probabilisticVectorsInit)

Definition at line 21 of file MergeTreeAxesAlgorithmBase.cpp.

Member Data Documentation

◆ barycenterSizeLimitPercent_

double ttk::MergeTreeAxesAlgorithmBase::barycenterSizeLimitPercent_ = 20.0
protected

Definition at line 32 of file MergeTreeAxesAlgorithmBase.h.

◆ deterministic_

bool ttk::MergeTreeAxesAlgorithmBase::deterministic_ = true
protected

Definition at line 29 of file MergeTreeAxesAlgorithmBase.h.

◆ k_

unsigned int ttk::MergeTreeAxesAlgorithmBase::k_ = 16
protected

Definition at line 31 of file MergeTreeAxesAlgorithmBase.h.

◆ numberOfAxes_

unsigned int ttk::MergeTreeAxesAlgorithmBase::numberOfAxes_ = 2
protected

Definition at line 30 of file MergeTreeAxesAlgorithmBase.h.

◆ probabilisticVectorsInit_

bool ttk::MergeTreeAxesAlgorithmBase::probabilisticVectorsInit_ = false
protected

Definition at line 33 of file MergeTreeAxesAlgorithmBase.h.

◆ trees2NodeCorr_

std::vector<std::vector<int> > ttk::MergeTreeAxesAlgorithmBase::trees2NodeCorr_
protected

Definition at line 36 of file MergeTreeAxesAlgorithmBase.h.


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