@ladybugmem/icebug 0.1.0 → 0.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/binding.gyp +32 -10
- package/lib/index.js +23 -11
- package/package.json +9 -15
- package/prebuilds/darwin-arm64/icebug.node +0 -0
- package/{vendor/lib → prebuilds/darwin-arm64}/libnetworkit.dylib +0 -0
- package/prebuilds/linux-x64/icebug.node +0 -0
- package/prebuilds/linux-x64/libnetworkit.so +0 -0
- package/scripts/download-icebug.sh +92 -0
- package/build/Release/.deps/Release/icebug.node.d +0 -1
- package/build/Release/.deps/Release/obj.target/icebug/src/addon.o.d +0 -291
- package/build/Release/icebug.node +0 -0
- package/build/Release/obj.target/icebug/src/addon.o +0 -0
- package/vendor/include/networkit/GlobalState.hpp +0 -86
- package/vendor/include/networkit/Globals.hpp +0 -41
- package/vendor/include/networkit/algebraic/AlgebraicGlobals.hpp +0 -27
- package/vendor/include/networkit/algebraic/CSRGeneralMatrix.hpp +0 -1292
- package/vendor/include/networkit/algebraic/CSRMatrix.hpp +0 -11
- package/vendor/include/networkit/algebraic/DenseMatrix.hpp +0 -537
- package/vendor/include/networkit/algebraic/DynamicMatrix.hpp +0 -514
- package/vendor/include/networkit/algebraic/GraphBLAS.hpp +0 -323
- package/vendor/include/networkit/algebraic/MatrixTools.hpp +0 -156
- package/vendor/include/networkit/algebraic/Semirings.hpp +0 -171
- package/vendor/include/networkit/algebraic/SparseAccumulator.hpp +0 -111
- package/vendor/include/networkit/algebraic/Vector.hpp +0 -371
- package/vendor/include/networkit/algebraic/algorithms/AlgebraicBFS.hpp +0 -72
- package/vendor/include/networkit/algebraic/algorithms/AlgebraicBellmanFord.hpp +0 -88
- package/vendor/include/networkit/algebraic/algorithms/AlgebraicMatchingCoarsening.hpp +0 -96
- package/vendor/include/networkit/algebraic/algorithms/AlgebraicPageRank.hpp +0 -145
- package/vendor/include/networkit/algebraic/algorithms/AlgebraicSpanningEdgeCentrality.hpp +0 -122
- package/vendor/include/networkit/algebraic/algorithms/AlgebraicTriangleCounting.hpp +0 -76
- package/vendor/include/networkit/auxiliary/AlignedAllocator.hpp +0 -113
- package/vendor/include/networkit/auxiliary/ArrayTools.hpp +0 -85
- package/vendor/include/networkit/auxiliary/BloomFilter.hpp +0 -70
- package/vendor/include/networkit/auxiliary/BucketPQ.hpp +0 -142
- package/vendor/include/networkit/auxiliary/Enforce.hpp +0 -117
- package/vendor/include/networkit/auxiliary/FunctionTraits.hpp +0 -74
- package/vendor/include/networkit/auxiliary/HashUtils.hpp +0 -28
- package/vendor/include/networkit/auxiliary/IncrementalUniformRandomSelector.hpp +0 -52
- package/vendor/include/networkit/auxiliary/Log.hpp +0 -119
- package/vendor/include/networkit/auxiliary/MissingMath.hpp +0 -48
- package/vendor/include/networkit/auxiliary/Multiprecision.hpp +0 -17
- package/vendor/include/networkit/auxiliary/NumberParsing.hpp +0 -307
- package/vendor/include/networkit/auxiliary/NumericTools.hpp +0 -57
- package/vendor/include/networkit/auxiliary/Parallel.hpp +0 -56
- package/vendor/include/networkit/auxiliary/Parallelism.hpp +0 -33
- package/vendor/include/networkit/auxiliary/PrioQueue.hpp +0 -252
- package/vendor/include/networkit/auxiliary/Random.hpp +0 -122
- package/vendor/include/networkit/auxiliary/SetIntersector.hpp +0 -72
- package/vendor/include/networkit/auxiliary/SignalHandling.hpp +0 -39
- package/vendor/include/networkit/auxiliary/SortedList.hpp +0 -128
- package/vendor/include/networkit/auxiliary/SparseVector.hpp +0 -215
- package/vendor/include/networkit/auxiliary/SpinLock.hpp +0 -23
- package/vendor/include/networkit/auxiliary/StringBuilder.hpp +0 -322
- package/vendor/include/networkit/auxiliary/StringTools.hpp +0 -76
- package/vendor/include/networkit/auxiliary/TemplateUtils.hpp +0 -76
- package/vendor/include/networkit/auxiliary/Timer.hpp +0 -145
- package/vendor/include/networkit/auxiliary/VectorComparator.hpp +0 -32
- package/vendor/include/networkit/base/Algorithm.hpp +0 -41
- package/vendor/include/networkit/base/DynAlgorithm.hpp +0 -31
- package/vendor/include/networkit/centrality/ApproxBetweenness.hpp +0 -62
- package/vendor/include/networkit/centrality/ApproxCloseness.hpp +0 -136
- package/vendor/include/networkit/centrality/ApproxElectricalCloseness.hpp +0 -156
- package/vendor/include/networkit/centrality/ApproxGroupBetweenness.hpp +0 -124
- package/vendor/include/networkit/centrality/ApproxSpanningEdge.hpp +0 -84
- package/vendor/include/networkit/centrality/Betweenness.hpp +0 -47
- package/vendor/include/networkit/centrality/Centrality.hpp +0 -98
- package/vendor/include/networkit/centrality/Closeness.hpp +0 -107
- package/vendor/include/networkit/centrality/ComplexPaths.hpp +0 -113
- package/vendor/include/networkit/centrality/CoreDecomposition.hpp +0 -161
- package/vendor/include/networkit/centrality/DegreeCentrality.hpp +0 -55
- package/vendor/include/networkit/centrality/DynApproxBetweenness.hpp +0 -95
- package/vendor/include/networkit/centrality/DynBetweenness.hpp +0 -99
- package/vendor/include/networkit/centrality/DynBetweennessOneNode.hpp +0 -98
- package/vendor/include/networkit/centrality/DynKatzCentrality.hpp +0 -115
- package/vendor/include/networkit/centrality/DynTopHarmonicCloseness.hpp +0 -223
- package/vendor/include/networkit/centrality/EigenvectorCentrality.hpp +0 -41
- package/vendor/include/networkit/centrality/EstimateBetweenness.hpp +0 -51
- package/vendor/include/networkit/centrality/ForestCentrality.hpp +0 -112
- package/vendor/include/networkit/centrality/GedWalk.hpp +0 -225
- package/vendor/include/networkit/centrality/GroupCloseness.hpp +0 -115
- package/vendor/include/networkit/centrality/GroupClosenessGrowShrink.hpp +0 -78
- package/vendor/include/networkit/centrality/GroupClosenessLocalSearch.hpp +0 -77
- package/vendor/include/networkit/centrality/GroupClosenessLocalSwaps.hpp +0 -106
- package/vendor/include/networkit/centrality/GroupDegree.hpp +0 -155
- package/vendor/include/networkit/centrality/GroupHarmonicCloseness.hpp +0 -83
- package/vendor/include/networkit/centrality/HarmonicCloseness.hpp +0 -48
- package/vendor/include/networkit/centrality/KPathCentrality.hpp +0 -52
- package/vendor/include/networkit/centrality/KadabraBetweenness.hpp +0 -242
- package/vendor/include/networkit/centrality/KatzCentrality.hpp +0 -62
- package/vendor/include/networkit/centrality/LaplacianCentrality.hpp +0 -44
- package/vendor/include/networkit/centrality/LocalClusteringCoefficient.hpp +0 -60
- package/vendor/include/networkit/centrality/LocalPartitionCoverage.hpp +0 -43
- package/vendor/include/networkit/centrality/LocalSquareClusteringCoefficient.hpp +0 -42
- package/vendor/include/networkit/centrality/PageRank.hpp +0 -101
- package/vendor/include/networkit/centrality/PermanenceCentrality.hpp +0 -48
- package/vendor/include/networkit/centrality/Sfigality.hpp +0 -45
- package/vendor/include/networkit/centrality/SpanningEdgeCentrality.hpp +0 -86
- package/vendor/include/networkit/centrality/TopCloseness.hpp +0 -136
- package/vendor/include/networkit/centrality/TopHarmonicCloseness.hpp +0 -151
- package/vendor/include/networkit/clique/MaximalCliques.hpp +0 -83
- package/vendor/include/networkit/coarsening/ClusteringProjector.hpp +0 -59
- package/vendor/include/networkit/coarsening/CoarsenedGraphView.hpp +0 -156
- package/vendor/include/networkit/coarsening/GraphCoarsening.hpp +0 -57
- package/vendor/include/networkit/coarsening/MatchingCoarsening.hpp +0 -43
- package/vendor/include/networkit/coarsening/ParallelPartitionCoarsening.hpp +0 -33
- package/vendor/include/networkit/coarsening/ParallelPartitionCoarseningView.hpp +0 -62
- package/vendor/include/networkit/community/AdjustedRandMeasure.hpp +0 -31
- package/vendor/include/networkit/community/ClusteringGenerator.hpp +0 -75
- package/vendor/include/networkit/community/CommunityDetectionAlgorithm.hpp +0 -58
- package/vendor/include/networkit/community/Conductance.hpp +0 -32
- package/vendor/include/networkit/community/CoverF1Similarity.hpp +0 -53
- package/vendor/include/networkit/community/CoverHubDominance.hpp +0 -38
- package/vendor/include/networkit/community/Coverage.hpp +0 -25
- package/vendor/include/networkit/community/CutClustering.hpp +0 -62
- package/vendor/include/networkit/community/DissimilarityMeasure.hpp +0 -31
- package/vendor/include/networkit/community/DynamicNMIDistance.hpp +0 -44
- package/vendor/include/networkit/community/EdgeCut.hpp +0 -24
- package/vendor/include/networkit/community/GraphClusteringTools.hpp +0 -103
- package/vendor/include/networkit/community/GraphStructuralRandMeasure.hpp +0 -28
- package/vendor/include/networkit/community/HubDominance.hpp +0 -46
- package/vendor/include/networkit/community/IntrapartitionDensity.hpp +0 -44
- package/vendor/include/networkit/community/IsolatedInterpartitionConductance.hpp +0 -40
- package/vendor/include/networkit/community/IsolatedInterpartitionExpansion.hpp +0 -40
- package/vendor/include/networkit/community/JaccardMeasure.hpp +0 -25
- package/vendor/include/networkit/community/LFM.hpp +0 -49
- package/vendor/include/networkit/community/LPDegreeOrdered.hpp +0 -48
- package/vendor/include/networkit/community/LocalCommunityEvaluation.hpp +0 -100
- package/vendor/include/networkit/community/LocalCoverEvaluation.hpp +0 -31
- package/vendor/include/networkit/community/LocalPartitionEvaluation.hpp +0 -31
- package/vendor/include/networkit/community/LouvainMapEquation.hpp +0 -135
- package/vendor/include/networkit/community/Modularity.hpp +0 -54
- package/vendor/include/networkit/community/NMIDistance.hpp +0 -28
- package/vendor/include/networkit/community/NodeStructuralRandMeasure.hpp +0 -27
- package/vendor/include/networkit/community/OverlappingCommunityDetectionAlgorithm.hpp +0 -51
- package/vendor/include/networkit/community/OverlappingNMIDistance.hpp +0 -175
- package/vendor/include/networkit/community/PLM.hpp +0 -89
- package/vendor/include/networkit/community/PLP.hpp +0 -83
- package/vendor/include/networkit/community/ParallelAgglomerativeClusterer.hpp +0 -37
- package/vendor/include/networkit/community/ParallelLeiden.hpp +0 -96
- package/vendor/include/networkit/community/ParallelLeidenView.hpp +0 -138
- package/vendor/include/networkit/community/PartitionFragmentation.hpp +0 -30
- package/vendor/include/networkit/community/PartitionHubDominance.hpp +0 -37
- package/vendor/include/networkit/community/PartitionIntersection.hpp +0 -25
- package/vendor/include/networkit/community/QualityMeasure.hpp +0 -27
- package/vendor/include/networkit/community/SampledGraphStructuralRandMeasure.hpp +0 -40
- package/vendor/include/networkit/community/SampledNodeStructuralRandMeasure.hpp +0 -40
- package/vendor/include/networkit/community/StablePartitionNodes.hpp +0 -48
- package/vendor/include/networkit/components/BiconnectedComponents.hpp +0 -116
- package/vendor/include/networkit/components/ComponentDecomposition.hpp +0 -72
- package/vendor/include/networkit/components/ConnectedComponents.hpp +0 -55
- package/vendor/include/networkit/components/DynConnectedComponents.hpp +0 -71
- package/vendor/include/networkit/components/DynWeaklyConnectedComponents.hpp +0 -73
- package/vendor/include/networkit/components/ParallelConnectedComponents.hpp +0 -44
- package/vendor/include/networkit/components/RandomSpanningForest.hpp +0 -36
- package/vendor/include/networkit/components/StronglyConnectedComponents.hpp +0 -50
- package/vendor/include/networkit/components/WeaklyConnectedComponents.hpp +0 -59
- package/vendor/include/networkit/correlation/Assortativity.hpp +0 -64
- package/vendor/include/networkit/distance/APSP.hpp +0 -70
- package/vendor/include/networkit/distance/AStar.hpp +0 -68
- package/vendor/include/networkit/distance/AStarGeneral.hpp +0 -110
- package/vendor/include/networkit/distance/AdamicAdarDistance.hpp +0 -52
- package/vendor/include/networkit/distance/AffectedNodes.hpp +0 -130
- package/vendor/include/networkit/distance/AlgebraicDistance.hpp +0 -63
- package/vendor/include/networkit/distance/BFS.hpp +0 -43
- package/vendor/include/networkit/distance/BidirectionalBFS.hpp +0 -51
- package/vendor/include/networkit/distance/BidirectionalDijkstra.hpp +0 -69
- package/vendor/include/networkit/distance/CommuteTimeDistance.hpp +0 -89
- package/vendor/include/networkit/distance/Diameter.hpp +0 -97
- package/vendor/include/networkit/distance/Dijkstra.hpp +0 -50
- package/vendor/include/networkit/distance/DynAPSP.hpp +0 -67
- package/vendor/include/networkit/distance/DynBFS.hpp +0 -56
- package/vendor/include/networkit/distance/DynDijkstra.hpp +0 -57
- package/vendor/include/networkit/distance/DynPrunedLandmarkLabeling.hpp +0 -67
- package/vendor/include/networkit/distance/DynSSSP.hpp +0 -87
- package/vendor/include/networkit/distance/Eccentricity.hpp +0 -32
- package/vendor/include/networkit/distance/EffectiveDiameter.hpp +0 -47
- package/vendor/include/networkit/distance/EffectiveDiameterApproximation.hpp +0 -57
- package/vendor/include/networkit/distance/FloydWarshall.hpp +0 -93
- package/vendor/include/networkit/distance/GraphDistance.hpp +0 -49
- package/vendor/include/networkit/distance/HopPlotApproximation.hpp +0 -62
- package/vendor/include/networkit/distance/IncompleteDijkstra.hpp +0 -66
- package/vendor/include/networkit/distance/IncompleteSSSP.hpp +0 -41
- package/vendor/include/networkit/distance/JaccardDistance.hpp +0 -57
- package/vendor/include/networkit/distance/MultiTargetBFS.hpp +0 -32
- package/vendor/include/networkit/distance/MultiTargetDijkstra.hpp +0 -40
- package/vendor/include/networkit/distance/NeighborhoodFunction.hpp +0 -47
- package/vendor/include/networkit/distance/NeighborhoodFunctionApproximation.hpp +0 -56
- package/vendor/include/networkit/distance/NeighborhoodFunctionHeuristic.hpp +0 -56
- package/vendor/include/networkit/distance/NodeDistance.hpp +0 -54
- package/vendor/include/networkit/distance/PrunedLandmarkLabeling.hpp +0 -76
- package/vendor/include/networkit/distance/ReverseBFS.hpp +0 -46
- package/vendor/include/networkit/distance/SPSP.hpp +0 -143
- package/vendor/include/networkit/distance/SSSP.hpp +0 -216
- package/vendor/include/networkit/distance/STSP.hpp +0 -193
- package/vendor/include/networkit/distance/Volume.hpp +0 -66
- package/vendor/include/networkit/dynamics/DGSStreamParser.hpp +0 -40
- package/vendor/include/networkit/dynamics/DGSWriter.hpp +0 -30
- package/vendor/include/networkit/dynamics/GraphDifference.hpp +0 -110
- package/vendor/include/networkit/dynamics/GraphEvent.hpp +0 -55
- package/vendor/include/networkit/dynamics/GraphEventHandler.hpp +0 -39
- package/vendor/include/networkit/dynamics/GraphEventProxy.hpp +0 -55
- package/vendor/include/networkit/dynamics/GraphUpdater.hpp +0 -38
- package/vendor/include/networkit/edgescores/ChibaNishizekiQuadrangleEdgeScore.hpp +0 -26
- package/vendor/include/networkit/edgescores/ChibaNishizekiTriangleEdgeScore.hpp +0 -33
- package/vendor/include/networkit/edgescores/EdgeScore.hpp +0 -50
- package/vendor/include/networkit/edgescores/EdgeScoreAsWeight.hpp +0 -33
- package/vendor/include/networkit/edgescores/EdgeScoreBlender.hpp +0 -33
- package/vendor/include/networkit/edgescores/EdgeScoreLinearizer.hpp +0 -32
- package/vendor/include/networkit/edgescores/EdgeScoreNormalizer.hpp +0 -35
- package/vendor/include/networkit/edgescores/GeometricMeanScore.hpp +0 -29
- package/vendor/include/networkit/edgescores/PrefixJaccardScore.hpp +0 -23
- package/vendor/include/networkit/edgescores/TriangleEdgeScore.hpp +0 -39
- package/vendor/include/networkit/embedding/Node2Vec.hpp +0 -83
- package/vendor/include/networkit/flow/EdmondsKarp.hpp +0 -112
- package/vendor/include/networkit/generators/BarabasiAlbertGenerator.hpp +0 -87
- package/vendor/include/networkit/generators/ChungLuGenerator.hpp +0 -46
- package/vendor/include/networkit/generators/ChungLuGeneratorAlamEtAl.hpp +0 -63
- package/vendor/include/networkit/generators/ClusteredRandomGraphGenerator.hpp +0 -56
- package/vendor/include/networkit/generators/ConfigurationModel.hpp +0 -36
- package/vendor/include/networkit/generators/DorogovtsevMendesGenerator.hpp +0 -33
- package/vendor/include/networkit/generators/DynamicBarabasiAlbertGenerator.hpp +0 -33
- package/vendor/include/networkit/generators/DynamicDGSParser.hpp +0 -51
- package/vendor/include/networkit/generators/DynamicDorogovtsevMendesGenerator.hpp +0 -34
- package/vendor/include/networkit/generators/DynamicForestFireGenerator.hpp +0 -55
- package/vendor/include/networkit/generators/DynamicGraphGenerator.hpp +0 -40
- package/vendor/include/networkit/generators/DynamicGraphSource.hpp +0 -79
- package/vendor/include/networkit/generators/DynamicHyperbolicGenerator.hpp +0 -143
- package/vendor/include/networkit/generators/DynamicPathGenerator.hpp +0 -26
- package/vendor/include/networkit/generators/DynamicPubWebGenerator.hpp +0 -54
- package/vendor/include/networkit/generators/EdgeSwitchingMarkovChainGenerator.hpp +0 -65
- package/vendor/include/networkit/generators/ErdosRenyiEnumerator.hpp +0 -318
- package/vendor/include/networkit/generators/ErdosRenyiGenerator.hpp +0 -56
- package/vendor/include/networkit/generators/HavelHakimiGenerator.hpp +0 -48
- package/vendor/include/networkit/generators/HyperbolicGenerator.hpp +0 -236
- package/vendor/include/networkit/generators/LFRGenerator.hpp +0 -175
- package/vendor/include/networkit/generators/MocnikGenerator.hpp +0 -147
- package/vendor/include/networkit/generators/MocnikGeneratorBasic.hpp +0 -58
- package/vendor/include/networkit/generators/PowerlawDegreeSequence.hpp +0 -128
- package/vendor/include/networkit/generators/PubWebGenerator.hpp +0 -94
- package/vendor/include/networkit/generators/RegularRingLatticeGenerator.hpp +0 -37
- package/vendor/include/networkit/generators/RmatGenerator.hpp +0 -67
- package/vendor/include/networkit/generators/StaticDegreeSequenceGenerator.hpp +0 -42
- package/vendor/include/networkit/generators/StaticGraphGenerator.hpp +0 -30
- package/vendor/include/networkit/generators/StochasticBlockmodel.hpp +0 -41
- package/vendor/include/networkit/generators/WattsStrogatzGenerator.hpp +0 -43
- package/vendor/include/networkit/generators/quadtree/QuadNode.hpp +0 -857
- package/vendor/include/networkit/generators/quadtree/QuadNodeCartesianEuclid.hpp +0 -587
- package/vendor/include/networkit/generators/quadtree/QuadNodePolarEuclid.hpp +0 -726
- package/vendor/include/networkit/generators/quadtree/Quadtree.hpp +0 -232
- package/vendor/include/networkit/generators/quadtree/QuadtreeCartesianEuclid.hpp +0 -149
- package/vendor/include/networkit/generators/quadtree/QuadtreePolarEuclid.hpp +0 -143
- package/vendor/include/networkit/geometric/HyperbolicSpace.hpp +0 -248
- package/vendor/include/networkit/geometric/Point2DWithIndex.hpp +0 -145
- package/vendor/include/networkit/global/ClusteringCoefficient.hpp +0 -42
- package/vendor/include/networkit/global/GlobalClusteringCoefficient.hpp +0 -24
- package/vendor/include/networkit/graph/Attributes.hpp +0 -568
- package/vendor/include/networkit/graph/BFS.hpp +0 -111
- package/vendor/include/networkit/graph/DFS.hpp +0 -71
- package/vendor/include/networkit/graph/Dijkstra.hpp +0 -83
- package/vendor/include/networkit/graph/EdgeIterators.hpp +0 -171
- package/vendor/include/networkit/graph/Graph.hpp +0 -2083
- package/vendor/include/networkit/graph/GraphBuilder.hpp +0 -289
- package/vendor/include/networkit/graph/GraphR.hpp +0 -133
- package/vendor/include/networkit/graph/GraphTools.hpp +0 -589
- package/vendor/include/networkit/graph/GraphW.hpp +0 -1236
- package/vendor/include/networkit/graph/KruskalMSF.hpp +0 -50
- package/vendor/include/networkit/graph/NeighborIterators.hpp +0 -163
- package/vendor/include/networkit/graph/NodeIterators.hpp +0 -127
- package/vendor/include/networkit/graph/PrimMSF.hpp +0 -66
- package/vendor/include/networkit/graph/RandomMaximumSpanningForest.hpp +0 -133
- package/vendor/include/networkit/graph/SpanningForest.hpp +0 -41
- package/vendor/include/networkit/graph/TopologicalSort.hpp +0 -87
- package/vendor/include/networkit/graph/UnionMaximumSpanningForest.hpp +0 -126
- package/vendor/include/networkit/graph/test/GraphBuilderBenchmark.hpp +0 -68
- package/vendor/include/networkit/independentset/IndependentSetFinder.hpp +0 -44
- package/vendor/include/networkit/independentset/Luby.hpp +0 -27
- package/vendor/include/networkit/io/BinaryEdgeListPartitionReader.hpp +0 -45
- package/vendor/include/networkit/io/BinaryEdgeListPartitionWriter.hpp +0 -47
- package/vendor/include/networkit/io/BinaryPartitionReader.hpp +0 -41
- package/vendor/include/networkit/io/BinaryPartitionWriter.hpp +0 -44
- package/vendor/include/networkit/io/CoverReader.hpp +0 -27
- package/vendor/include/networkit/io/CoverWriter.hpp +0 -21
- package/vendor/include/networkit/io/DGSReader.hpp +0 -39
- package/vendor/include/networkit/io/DibapGraphReader.hpp +0 -43
- package/vendor/include/networkit/io/DotGraphWriter.hpp +0 -39
- package/vendor/include/networkit/io/DotPartitionWriter.hpp +0 -23
- package/vendor/include/networkit/io/DynamicGraphReader.hpp +0 -29
- package/vendor/include/networkit/io/EdgeListCoverReader.hpp +0 -35
- package/vendor/include/networkit/io/EdgeListPartitionReader.hpp +0 -43
- package/vendor/include/networkit/io/EdgeListReader.hpp +0 -61
- package/vendor/include/networkit/io/EdgeListWriter.hpp +0 -48
- package/vendor/include/networkit/io/GMLGraphReader.hpp +0 -33
- package/vendor/include/networkit/io/GMLGraphWriter.hpp +0 -33
- package/vendor/include/networkit/io/GraphIO.hpp +0 -52
- package/vendor/include/networkit/io/GraphReader.hpp +0 -40
- package/vendor/include/networkit/io/GraphToolBinaryReader.hpp +0 -71
- package/vendor/include/networkit/io/GraphToolBinaryWriter.hpp +0 -61
- package/vendor/include/networkit/io/GraphWriter.hpp +0 -27
- package/vendor/include/networkit/io/KONECTGraphReader.hpp +0 -44
- package/vendor/include/networkit/io/LineFileReader.hpp +0 -42
- package/vendor/include/networkit/io/METISGraphReader.hpp +0 -36
- package/vendor/include/networkit/io/METISGraphWriter.hpp +0 -29
- package/vendor/include/networkit/io/METISParser.hpp +0 -63
- package/vendor/include/networkit/io/MTXGraphReader.hpp +0 -31
- package/vendor/include/networkit/io/MTXParser.hpp +0 -87
- package/vendor/include/networkit/io/MatrixMarketReader.hpp +0 -33
- package/vendor/include/networkit/io/MatrixReader.hpp +0 -33
- package/vendor/include/networkit/io/MemoryMappedFile.hpp +0 -80
- package/vendor/include/networkit/io/NetworkitBinaryGraph.hpp +0 -144
- package/vendor/include/networkit/io/NetworkitBinaryReader.hpp +0 -50
- package/vendor/include/networkit/io/NetworkitBinaryWriter.hpp +0 -71
- package/vendor/include/networkit/io/PartitionReader.hpp +0 -34
- package/vendor/include/networkit/io/PartitionWriter.hpp +0 -31
- package/vendor/include/networkit/io/RBGraphReader.hpp +0 -37
- package/vendor/include/networkit/io/RBMatrixReader.hpp +0 -49
- package/vendor/include/networkit/io/RasterReader.hpp +0 -40
- package/vendor/include/networkit/io/SNAPEdgeListPartitionReader.hpp +0 -28
- package/vendor/include/networkit/io/SNAPGraphReader.hpp +0 -53
- package/vendor/include/networkit/io/SNAPGraphWriter.hpp +0 -53
- package/vendor/include/networkit/io/ThrillGraphBinaryReader.hpp +0 -44
- package/vendor/include/networkit/io/ThrillGraphBinaryWriter.hpp +0 -27
- package/vendor/include/networkit/layout/LayoutAlgorithm.hpp +0 -39
- package/vendor/include/networkit/linkprediction/AdamicAdarIndex.hpp +0 -37
- package/vendor/include/networkit/linkprediction/AdjustedRandIndex.hpp +0 -36
- package/vendor/include/networkit/linkprediction/AlgebraicDistanceIndex.hpp +0 -70
- package/vendor/include/networkit/linkprediction/CommonNeighborsIndex.hpp +0 -39
- package/vendor/include/networkit/linkprediction/EvaluationMetric.hpp +0 -135
- package/vendor/include/networkit/linkprediction/JaccardIndex.hpp +0 -44
- package/vendor/include/networkit/linkprediction/KatzIndex.hpp +0 -84
- package/vendor/include/networkit/linkprediction/LinkPredictor.hpp +0 -98
- package/vendor/include/networkit/linkprediction/LinkThresholder.hpp +0 -56
- package/vendor/include/networkit/linkprediction/MissingLinksFinder.hpp +0 -60
- package/vendor/include/networkit/linkprediction/NeighborhoodDistanceIndex.hpp +0 -42
- package/vendor/include/networkit/linkprediction/NeighborhoodUtility.hpp +0 -54
- package/vendor/include/networkit/linkprediction/NeighborsMeasureIndex.hpp +0 -48
- package/vendor/include/networkit/linkprediction/PrecisionRecallMetric.hpp +0 -40
- package/vendor/include/networkit/linkprediction/PredictionsSorter.hpp +0 -66
- package/vendor/include/networkit/linkprediction/PreferentialAttachmentIndex.hpp +0 -37
- package/vendor/include/networkit/linkprediction/ROCMetric.hpp +0 -39
- package/vendor/include/networkit/linkprediction/RandomLinkSampler.hpp +0 -47
- package/vendor/include/networkit/linkprediction/ResourceAllocationIndex.hpp +0 -38
- package/vendor/include/networkit/linkprediction/SameCommunityIndex.hpp +0 -50
- package/vendor/include/networkit/linkprediction/TotalNeighborsIndex.hpp +0 -39
- package/vendor/include/networkit/linkprediction/UDegreeIndex.hpp +0 -35
- package/vendor/include/networkit/linkprediction/VDegreeIndex.hpp +0 -35
- package/vendor/include/networkit/matching/BMatcher.hpp +0 -52
- package/vendor/include/networkit/matching/BMatching.hpp +0 -115
- package/vendor/include/networkit/matching/BSuitorMatcher.hpp +0 -170
- package/vendor/include/networkit/matching/DynamicBSuitorMatcher.hpp +0 -78
- package/vendor/include/networkit/matching/LocalMaxMatcher.hpp +0 -35
- package/vendor/include/networkit/matching/Matcher.hpp +0 -55
- package/vendor/include/networkit/matching/Matching.hpp +0 -111
- package/vendor/include/networkit/matching/PathGrowingMatcher.hpp +0 -46
- package/vendor/include/networkit/matching/SuitorMatcher.hpp +0 -62
- package/vendor/include/networkit/numerics/ConjugateGradient.hpp +0 -163
- package/vendor/include/networkit/numerics/GaussSeidelRelaxation.hpp +0 -99
- package/vendor/include/networkit/numerics/LAMG/LAMGSettings.hpp +0 -70
- package/vendor/include/networkit/numerics/LAMG/Lamg.hpp +0 -460
- package/vendor/include/networkit/numerics/LAMG/Level/EliminationStage.hpp +0 -47
- package/vendor/include/networkit/numerics/LAMG/Level/Level.hpp +0 -56
- package/vendor/include/networkit/numerics/LAMG/Level/LevelAggregation.hpp +0 -52
- package/vendor/include/networkit/numerics/LAMG/Level/LevelElimination.hpp +0 -133
- package/vendor/include/networkit/numerics/LAMG/Level/LevelFinest.hpp +0 -28
- package/vendor/include/networkit/numerics/LAMG/LevelHierarchy.hpp +0 -165
- package/vendor/include/networkit/numerics/LAMG/MultiLevelSetup.hpp +0 -1090
- package/vendor/include/networkit/numerics/LAMG/SolverLamg.hpp +0 -316
- package/vendor/include/networkit/numerics/LinearSolver.hpp +0 -151
- package/vendor/include/networkit/numerics/Preconditioner/DiagonalPreconditioner.hpp +0 -61
- package/vendor/include/networkit/numerics/Preconditioner/IdentityPreconditioner.hpp +0 -36
- package/vendor/include/networkit/numerics/Smoother.hpp +0 -37
- package/vendor/include/networkit/overlap/HashingOverlapper.hpp +0 -28
- package/vendor/include/networkit/overlap/Overlapper.hpp +0 -27
- package/vendor/include/networkit/planarity/LeftRightPlanarityCheck.hpp +0 -113
- package/vendor/include/networkit/randomization/Curveball.hpp +0 -49
- package/vendor/include/networkit/randomization/CurveballGlobalTradeGenerator.hpp +0 -39
- package/vendor/include/networkit/randomization/CurveballUniformTradeGenerator.hpp +0 -39
- package/vendor/include/networkit/randomization/DegreePreservingShuffle.hpp +0 -82
- package/vendor/include/networkit/randomization/EdgeSwitching.hpp +0 -157
- package/vendor/include/networkit/randomization/GlobalCurveball.hpp +0 -69
- package/vendor/include/networkit/randomization/GlobalTradeSequence.hpp +0 -303
- package/vendor/include/networkit/reachability/AllSimplePaths.hpp +0 -122
- package/vendor/include/networkit/reachability/ReachableNodes.hpp +0 -83
- package/vendor/include/networkit/scd/ApproximatePageRank.hpp +0 -51
- package/vendor/include/networkit/scd/CliqueDetect.hpp +0 -55
- package/vendor/include/networkit/scd/CombinedSCD.hpp +0 -51
- package/vendor/include/networkit/scd/GCE.hpp +0 -42
- package/vendor/include/networkit/scd/LFMLocal.hpp +0 -54
- package/vendor/include/networkit/scd/LocalT.hpp +0 -40
- package/vendor/include/networkit/scd/LocalTightnessExpansion.hpp +0 -46
- package/vendor/include/networkit/scd/PageRankNibble.hpp +0 -55
- package/vendor/include/networkit/scd/RandomBFS.hpp +0 -33
- package/vendor/include/networkit/scd/SCDGroundTruthComparison.hpp +0 -121
- package/vendor/include/networkit/scd/SelectiveCommunityDetector.hpp +0 -76
- package/vendor/include/networkit/scd/SetConductance.hpp +0 -47
- package/vendor/include/networkit/scd/TCE.hpp +0 -41
- package/vendor/include/networkit/scd/TwoPhaseL.hpp +0 -40
- package/vendor/include/networkit/scoring/EdgeScoring.hpp +0 -44
- package/vendor/include/networkit/scoring/ModularityScoring.hpp +0 -79
- package/vendor/include/networkit/simulation/EpidemicSimulationSEIR.hpp +0 -59
- package/vendor/include/networkit/sparsification/ChanceCorrectedTriangleScore.hpp +0 -28
- package/vendor/include/networkit/sparsification/ForestFireScore.hpp +0 -34
- package/vendor/include/networkit/sparsification/GlobalThresholdFilter.hpp +0 -40
- package/vendor/include/networkit/sparsification/LocalDegreeScore.hpp +0 -30
- package/vendor/include/networkit/sparsification/LocalFilterScore.hpp +0 -124
- package/vendor/include/networkit/sparsification/LocalSimilarityScore.hpp +0 -63
- package/vendor/include/networkit/sparsification/MultiscaleScore.hpp +0 -38
- package/vendor/include/networkit/sparsification/RandomEdgeScore.hpp +0 -33
- package/vendor/include/networkit/sparsification/RandomNodeEdgeScore.hpp +0 -29
- package/vendor/include/networkit/sparsification/SCANStructuralSimilarityScore.hpp +0 -23
- package/vendor/include/networkit/sparsification/SimmelianOverlapScore.hpp +0 -35
- package/vendor/include/networkit/sparsification/SimmelianScore.hpp +0 -92
- package/vendor/include/networkit/sparsification/Sparsifiers.hpp +0 -166
- package/vendor/include/networkit/structures/Cover.hpp +0 -248
- package/vendor/include/networkit/structures/LocalCommunity.hpp +0 -363
- package/vendor/include/networkit/structures/Partition.hpp +0 -335
- package/vendor/include/networkit/structures/UnionFind.hpp +0 -66
- package/vendor/include/networkit/viz/GraphLayoutAlgorithm.hpp +0 -157
- package/vendor/include/networkit/viz/MaxentStress.hpp +0 -346
- package/vendor/include/networkit/viz/Octree.hpp +0 -428
- package/vendor/include/networkit/viz/PivotMDS.hpp +0 -63
- package/vendor/include/networkit/viz/Point.hpp +0 -415
- package/vendor/include/networkit/viz/PostscriptWriter.hpp +0 -78
- package/vendor/include/tlx/algorithm/exclusive_scan.hpp +0 -56
- package/vendor/include/tlx/algorithm/is_sorted_cmp.hpp +0 -56
- package/vendor/include/tlx/algorithm/merge_advance.hpp +0 -177
- package/vendor/include/tlx/algorithm/merge_combine.hpp +0 -76
- package/vendor/include/tlx/algorithm/multisequence_partition.hpp +0 -346
- package/vendor/include/tlx/algorithm/multisequence_selection.hpp +0 -351
- package/vendor/include/tlx/algorithm/multiway_merge.hpp +0 -1385
- package/vendor/include/tlx/algorithm/multiway_merge_splitting.hpp +0 -257
- package/vendor/include/tlx/algorithm/parallel_multiway_merge.hpp +0 -408
- package/vendor/include/tlx/algorithm/random_bipartition_shuffle.hpp +0 -116
- package/vendor/include/tlx/algorithm.hpp +0 -36
- package/vendor/include/tlx/allocator_base.hpp +0 -100
- package/vendor/include/tlx/backtrace.hpp +0 -54
- package/vendor/include/tlx/cmdline_parser.hpp +0 -498
- package/vendor/include/tlx/container/btree.hpp +0 -3977
- package/vendor/include/tlx/container/btree_map.hpp +0 -634
- package/vendor/include/tlx/container/btree_multimap.hpp +0 -627
- package/vendor/include/tlx/container/btree_multiset.hpp +0 -612
- package/vendor/include/tlx/container/btree_set.hpp +0 -612
- package/vendor/include/tlx/container/d_ary_addressable_int_heap.hpp +0 -416
- package/vendor/include/tlx/container/d_ary_heap.hpp +0 -311
- package/vendor/include/tlx/container/loser_tree.hpp +0 -1009
- package/vendor/include/tlx/container/lru_cache.hpp +0 -319
- package/vendor/include/tlx/container/radix_heap.hpp +0 -735
- package/vendor/include/tlx/container/ring_buffer.hpp +0 -428
- package/vendor/include/tlx/container/simple_vector.hpp +0 -304
- package/vendor/include/tlx/container/splay_tree.hpp +0 -399
- package/vendor/include/tlx/container/string_view.hpp +0 -805
- package/vendor/include/tlx/container.hpp +0 -40
- package/vendor/include/tlx/counting_ptr.hpp +0 -522
- package/vendor/include/tlx/define/attribute_always_inline.hpp +0 -34
- package/vendor/include/tlx/define/attribute_fallthrough.hpp +0 -36
- package/vendor/include/tlx/define/attribute_format_printf.hpp +0 -34
- package/vendor/include/tlx/define/attribute_packed.hpp +0 -34
- package/vendor/include/tlx/define/attribute_warn_unused_result.hpp +0 -34
- package/vendor/include/tlx/define/constexpr.hpp +0 -31
- package/vendor/include/tlx/define/deprecated.hpp +0 -39
- package/vendor/include/tlx/define/endian.hpp +0 -49
- package/vendor/include/tlx/define/likely.hpp +0 -33
- package/vendor/include/tlx/define/visibility_hidden.hpp +0 -34
- package/vendor/include/tlx/define.hpp +0 -36
- package/vendor/include/tlx/delegate.hpp +0 -524
- package/vendor/include/tlx/die/core.hpp +0 -311
- package/vendor/include/tlx/die.hpp +0 -106
- package/vendor/include/tlx/digest/md5.hpp +0 -81
- package/vendor/include/tlx/digest/sha1.hpp +0 -81
- package/vendor/include/tlx/digest/sha256.hpp +0 -81
- package/vendor/include/tlx/digest/sha512.hpp +0 -81
- package/vendor/include/tlx/digest.hpp +0 -30
- package/vendor/include/tlx/logger/all.hpp +0 -33
- package/vendor/include/tlx/logger/array.hpp +0 -43
- package/vendor/include/tlx/logger/core.hpp +0 -287
- package/vendor/include/tlx/logger/deque.hpp +0 -42
- package/vendor/include/tlx/logger/map.hpp +0 -65
- package/vendor/include/tlx/logger/set.hpp +0 -60
- package/vendor/include/tlx/logger/tuple.hpp +0 -66
- package/vendor/include/tlx/logger/unordered_map.hpp +0 -68
- package/vendor/include/tlx/logger/unordered_set.hpp +0 -64
- package/vendor/include/tlx/logger/wrap_unprintable.hpp +0 -75
- package/vendor/include/tlx/logger.hpp +0 -44
- package/vendor/include/tlx/math/abs_diff.hpp +0 -35
- package/vendor/include/tlx/math/aggregate.hpp +0 -231
- package/vendor/include/tlx/math/aggregate_min_max.hpp +0 -116
- package/vendor/include/tlx/math/bswap.hpp +0 -148
- package/vendor/include/tlx/math/bswap_be.hpp +0 -79
- package/vendor/include/tlx/math/bswap_le.hpp +0 -79
- package/vendor/include/tlx/math/clz.hpp +0 -174
- package/vendor/include/tlx/math/ctz.hpp +0 -174
- package/vendor/include/tlx/math/div_ceil.hpp +0 -36
- package/vendor/include/tlx/math/ffs.hpp +0 -123
- package/vendor/include/tlx/math/integer_log2.hpp +0 -189
- package/vendor/include/tlx/math/is_power_of_two.hpp +0 -74
- package/vendor/include/tlx/math/polynomial_regression.hpp +0 -243
- package/vendor/include/tlx/math/popcount.hpp +0 -173
- package/vendor/include/tlx/math/power_to_the.hpp +0 -44
- package/vendor/include/tlx/math/rol.hpp +0 -112
- package/vendor/include/tlx/math/ror.hpp +0 -112
- package/vendor/include/tlx/math/round_to_power_of_two.hpp +0 -121
- package/vendor/include/tlx/math/round_up.hpp +0 -36
- package/vendor/include/tlx/math/sgn.hpp +0 -38
- package/vendor/include/tlx/math.hpp +0 -46
- package/vendor/include/tlx/meta/apply_tuple.hpp +0 -55
- package/vendor/include/tlx/meta/call_for_range.hpp +0 -78
- package/vendor/include/tlx/meta/call_foreach.hpp +0 -60
- package/vendor/include/tlx/meta/call_foreach_tuple.hpp +0 -60
- package/vendor/include/tlx/meta/call_foreach_tuple_with_index.hpp +0 -61
- package/vendor/include/tlx/meta/call_foreach_with_index.hpp +0 -64
- package/vendor/include/tlx/meta/enable_if.hpp +0 -37
- package/vendor/include/tlx/meta/fold_left.hpp +0 -63
- package/vendor/include/tlx/meta/fold_left_tuple.hpp +0 -60
- package/vendor/include/tlx/meta/fold_right.hpp +0 -63
- package/vendor/include/tlx/meta/fold_right_tuple.hpp +0 -60
- package/vendor/include/tlx/meta/function_chain.hpp +0 -197
- package/vendor/include/tlx/meta/function_stack.hpp +0 -189
- package/vendor/include/tlx/meta/has_member.hpp +0 -80
- package/vendor/include/tlx/meta/has_method.hpp +0 -117
- package/vendor/include/tlx/meta/index_sequence.hpp +0 -66
- package/vendor/include/tlx/meta/is_std_array.hpp +0 -40
- package/vendor/include/tlx/meta/is_std_pair.hpp +0 -39
- package/vendor/include/tlx/meta/is_std_tuple.hpp +0 -39
- package/vendor/include/tlx/meta/is_std_vector.hpp +0 -39
- package/vendor/include/tlx/meta/log2.hpp +0 -101
- package/vendor/include/tlx/meta/no_operation.hpp +0 -55
- package/vendor/include/tlx/meta/static_index.hpp +0 -42
- package/vendor/include/tlx/meta/vexpand.hpp +0 -34
- package/vendor/include/tlx/meta/vmap_for_range.hpp +0 -84
- package/vendor/include/tlx/meta/vmap_foreach.hpp +0 -63
- package/vendor/include/tlx/meta/vmap_foreach_tuple.hpp +0 -59
- package/vendor/include/tlx/meta/vmap_foreach_tuple_with_index.hpp +0 -62
- package/vendor/include/tlx/meta/vmap_foreach_with_index.hpp +0 -70
- package/vendor/include/tlx/meta.hpp +0 -55
- package/vendor/include/tlx/multi_timer.hpp +0 -148
- package/vendor/include/tlx/port/setenv.hpp +0 -31
- package/vendor/include/tlx/port.hpp +0 -27
- package/vendor/include/tlx/semaphore.hpp +0 -119
- package/vendor/include/tlx/simple_vector.hpp +0 -20
- package/vendor/include/tlx/siphash.hpp +0 -282
- package/vendor/include/tlx/sort/networks/best.hpp +0 -611
- package/vendor/include/tlx/sort/networks/bose_nelson.hpp +0 -412
- package/vendor/include/tlx/sort/networks/bose_nelson_parameter.hpp +0 -507
- package/vendor/include/tlx/sort/networks/cswap.hpp +0 -60
- package/vendor/include/tlx/sort/parallel_mergesort.hpp +0 -398
- package/vendor/include/tlx/sort/strings/insertion_sort.hpp +0 -232
- package/vendor/include/tlx/sort/strings/multikey_quicksort.hpp +0 -185
- package/vendor/include/tlx/sort/strings/parallel_sample_sort.hpp +0 -1647
- package/vendor/include/tlx/sort/strings/radix_sort.hpp +0 -934
- package/vendor/include/tlx/sort/strings/sample_sort_tools.hpp +0 -756
- package/vendor/include/tlx/sort/strings/string_ptr.hpp +0 -426
- package/vendor/include/tlx/sort/strings/string_set.hpp +0 -800
- package/vendor/include/tlx/sort/strings.hpp +0 -329
- package/vendor/include/tlx/sort/strings_parallel.hpp +0 -325
- package/vendor/include/tlx/sort.hpp +0 -29
- package/vendor/include/tlx/stack_allocator.hpp +0 -226
- package/vendor/include/tlx/string/appendline.hpp +0 -35
- package/vendor/include/tlx/string/base64.hpp +0 -87
- package/vendor/include/tlx/string/bitdump.hpp +0 -139
- package/vendor/include/tlx/string/compare_icase.hpp +0 -42
- package/vendor/include/tlx/string/contains.hpp +0 -36
- package/vendor/include/tlx/string/contains_word.hpp +0 -42
- package/vendor/include/tlx/string/ends_with.hpp +0 -79
- package/vendor/include/tlx/string/equal_icase.hpp +0 -42
- package/vendor/include/tlx/string/erase_all.hpp +0 -70
- package/vendor/include/tlx/string/escape_html.hpp +0 -34
- package/vendor/include/tlx/string/escape_uri.hpp +0 -34
- package/vendor/include/tlx/string/expand_environment_variables.hpp +0 -49
- package/vendor/include/tlx/string/extract_between.hpp +0 -40
- package/vendor/include/tlx/string/format_iec_units.hpp +0 -32
- package/vendor/include/tlx/string/format_si_iec_units.hpp +0 -19
- package/vendor/include/tlx/string/format_si_units.hpp +0 -32
- package/vendor/include/tlx/string/hash_djb2.hpp +0 -87
- package/vendor/include/tlx/string/hash_sdbm.hpp +0 -86
- package/vendor/include/tlx/string/hexdump.hpp +0 -154
- package/vendor/include/tlx/string/index_of.hpp +0 -56
- package/vendor/include/tlx/string/join.hpp +0 -65
- package/vendor/include/tlx/string/join_generic.hpp +0 -89
- package/vendor/include/tlx/string/join_quoted.hpp +0 -46
- package/vendor/include/tlx/string/less_icase.hpp +0 -64
- package/vendor/include/tlx/string/levenshtein.hpp +0 -193
- package/vendor/include/tlx/string/pad.hpp +0 -39
- package/vendor/include/tlx/string/parse_si_iec_units.hpp +0 -46
- package/vendor/include/tlx/string/parse_uri.hpp +0 -66
- package/vendor/include/tlx/string/parse_uri_form_data.hpp +0 -136
- package/vendor/include/tlx/string/replace.hpp +0 -141
- package/vendor/include/tlx/string/split.hpp +0 -170
- package/vendor/include/tlx/string/split_quoted.hpp +0 -49
- package/vendor/include/tlx/string/split_view.hpp +0 -218
- package/vendor/include/tlx/string/split_words.hpp +0 -53
- package/vendor/include/tlx/string/ssprintf.hpp +0 -45
- package/vendor/include/tlx/string/ssprintf_generic.hpp +0 -95
- package/vendor/include/tlx/string/starts_with.hpp +0 -44
- package/vendor/include/tlx/string/to_lower.hpp +0 -47
- package/vendor/include/tlx/string/to_upper.hpp +0 -47
- package/vendor/include/tlx/string/trim.hpp +0 -298
- package/vendor/include/tlx/string/union_words.hpp +0 -33
- package/vendor/include/tlx/string/word_wrap.hpp +0 -35
- package/vendor/include/tlx/string.hpp +0 -68
- package/vendor/include/tlx/thread_barrier_mutex.hpp +0 -109
- package/vendor/include/tlx/thread_barrier_spin.hpp +0 -127
- package/vendor/include/tlx/thread_pool.hpp +0 -151
- package/vendor/include/tlx/timestamp.hpp +0 -23
- package/vendor/include/tlx/unused.hpp +0 -28
- package/vendor/include/tlx/vector_free.hpp +0 -30
- package/vendor/include/tlx/version.hpp +0 -49
- package/vendor/include/ttmath/ttmath.h +0 -2881
- package/vendor/include/ttmath/ttmathbig.h +0 -6111
- package/vendor/include/ttmath/ttmathdec.h +0 -419
- package/vendor/include/ttmath/ttmathint.h +0 -1923
- package/vendor/include/ttmath/ttmathmisc.h +0 -250
- package/vendor/include/ttmath/ttmathobjects.h +0 -812
- package/vendor/include/ttmath/ttmathparser.h +0 -2791
- package/vendor/include/ttmath/ttmaththreads.h +0 -252
- package/vendor/include/ttmath/ttmathtypes.h +0 -707
- package/vendor/include/ttmath/ttmathuint.h +0 -4190
- package/vendor/include/ttmath/ttmathuint_noasm.h +0 -1038
- package/vendor/include/ttmath/ttmathuint_x86.h +0 -1620
- package/vendor/include/ttmath/ttmathuint_x86_64.h +0 -1177
- package/vendor/lib/cmake/tlx/tlx-config.cmake +0 -51
- package/vendor/lib/cmake/tlx/tlx-targets-release.cmake +0 -19
- package/vendor/lib/cmake/tlx/tlx-targets.cmake +0 -106
- package/vendor/lib/cmake/tlx/tlx-version.cmake +0 -11
- package/vendor/lib/libtlx.a +0 -0
- package/vendor/lib/pkgconfig/networkit.pc +0 -11
- package/vendor/lib/pkgconfig/tlx.pc +0 -11
|
@@ -1,175 +0,0 @@
|
|
|
1
|
-
#ifndef NETWORKIT_COMMUNITY_OVERLAPPING_NMI_DISTANCE_HPP_
|
|
2
|
-
#define NETWORKIT_COMMUNITY_OVERLAPPING_NMI_DISTANCE_HPP_
|
|
3
|
-
|
|
4
|
-
#include <unordered_map>
|
|
5
|
-
|
|
6
|
-
#include <networkit/auxiliary/HashUtils.hpp>
|
|
7
|
-
#include <networkit/community/DissimilarityMeasure.hpp>
|
|
8
|
-
|
|
9
|
-
namespace NetworKit {
|
|
10
|
-
|
|
11
|
-
/**
|
|
12
|
-
* @ingroup community
|
|
13
|
-
* Compare two covers using the overlapping normalized mutual information measure. This is a
|
|
14
|
-
* dissimilarity measure with a range of [0, 1]. A value of 0 indicates a perfect agreement while
|
|
15
|
-
* a 1 indicates complete disagreement.
|
|
16
|
-
*
|
|
17
|
-
* For the `MAX` normalization, this is the measure introduced in [NMI13]. Other normalization
|
|
18
|
-
* methods result in similar measures.
|
|
19
|
-
*
|
|
20
|
-
* Please note that non-overlapping NMIDistance uses another definition of the normalized mutual
|
|
21
|
-
* information. See NMIDistance for details on its computation. Both NMIDistance and
|
|
22
|
-
* OverlappingNMIDistance can be used with partitions, but produce different values.
|
|
23
|
-
*
|
|
24
|
-
* [NMI13]
|
|
25
|
-
* McDaid, Aaron F., Derek Greene, and Neil Hurley.
|
|
26
|
-
* “Normalized Mutual Information to Evaluate Overlapping Community Finding Algorithms.”
|
|
27
|
-
* ArXiv:1110.2515 [Physics], August 2, 2013. http://arxiv.org/abs/1110.2515.
|
|
28
|
-
*/
|
|
29
|
-
class OverlappingNMIDistance final : public DissimilarityMeasure {
|
|
30
|
-
|
|
31
|
-
public:
|
|
32
|
-
enum Normalization { MIN, GEOMETRIC_MEAN, ARITHMETIC_MEAN, MAX, JOINT_ENTROPY };
|
|
33
|
-
|
|
34
|
-
private:
|
|
35
|
-
Normalization mNormalization{Normalization::MAX};
|
|
36
|
-
|
|
37
|
-
public:
|
|
38
|
-
OverlappingNMIDistance() = default;
|
|
39
|
-
|
|
40
|
-
explicit OverlappingNMIDistance(Normalization normalization) : mNormalization(normalization) {}
|
|
41
|
-
|
|
42
|
-
void setNormalization(Normalization normalization) { mNormalization = normalization; }
|
|
43
|
-
|
|
44
|
-
double getDissimilarity(const Graph &G, const Partition &zeta, const Partition &eta) override;
|
|
45
|
-
double getDissimilarity(const Graph &G, const Cover &zeta, const Cover &eta) override;
|
|
46
|
-
|
|
47
|
-
private:
|
|
48
|
-
struct SizesAndIntersections {
|
|
49
|
-
std::vector<count> sizesX;
|
|
50
|
-
std::vector<count> sizesY;
|
|
51
|
-
std::unordered_map<std::pair<index, index>, count, Aux::PairHash> intersectionSizes;
|
|
52
|
-
};
|
|
53
|
-
|
|
54
|
-
/**
|
|
55
|
-
* Calculating cluster sizes of covers and intersection sizes between two covers.
|
|
56
|
-
*
|
|
57
|
-
* @param X
|
|
58
|
-
* @param Y
|
|
59
|
-
* @return The cluster and intersection sizes of X and Y.
|
|
60
|
-
*/
|
|
61
|
-
static SizesAndIntersections
|
|
62
|
-
calculateClusterAndIntersectionSizes(const Graph &graph, const Cover &X, const Cover &Y);
|
|
63
|
-
|
|
64
|
-
/**
|
|
65
|
-
* Calculates partial entropy.
|
|
66
|
-
*
|
|
67
|
-
* $$
|
|
68
|
-
* h(w, n) = -w \log_2\left(\frac{w}{n}\right)
|
|
69
|
-
* $$
|
|
70
|
-
*
|
|
71
|
-
* @param w Number of occurrences.
|
|
72
|
-
* @param n Total number of nodes.
|
|
73
|
-
* @return
|
|
74
|
-
*/
|
|
75
|
-
static double h(count w, count n);
|
|
76
|
-
|
|
77
|
-
/**
|
|
78
|
-
* Calculates the entropy of a cluster.
|
|
79
|
-
*
|
|
80
|
-
* $$
|
|
81
|
-
* H(X_i) = h(|\{ u | u \in X_i \}, n) + h(\{ u | u \notin X_i \}, n)
|
|
82
|
-
* $$
|
|
83
|
-
*
|
|
84
|
-
* @param size Cluster size.
|
|
85
|
-
* @param n Total number of nodes.
|
|
86
|
-
* @return
|
|
87
|
-
*/
|
|
88
|
-
static double entropy(count size, count n);
|
|
89
|
-
|
|
90
|
-
/**
|
|
91
|
-
* Calculates the entropy of a clustering.
|
|
92
|
-
*
|
|
93
|
-
* $$
|
|
94
|
-
* H(X) = \sum_{X_i \in X} H(X_i)
|
|
95
|
-
* $$
|
|
96
|
-
*
|
|
97
|
-
* @param sizesX The sizes of the clusters in X.
|
|
98
|
-
* @param n Total number of nodes.
|
|
99
|
-
* @return
|
|
100
|
-
*/
|
|
101
|
-
static double entropy(const std::vector<count> &sizesX, count n);
|
|
102
|
-
|
|
103
|
-
/**
|
|
104
|
-
* Calculates the adjusted conditional entropy between two clusters.
|
|
105
|
-
*
|
|
106
|
-
* $$
|
|
107
|
-
* H^*(X_i|Y_j) =
|
|
108
|
-
* \begin{cases}
|
|
109
|
-
* H(X_i|Y_j), & \text{if $h(a, n) + h(d, n) \geq h(b, n) + h(c, n)$}\\
|
|
110
|
-
* H(X_i), & \text{otherwise}
|
|
111
|
-
* \end{cases}
|
|
112
|
-
* $$
|
|
113
|
-
* where
|
|
114
|
-
* $$
|
|
115
|
-
* H(X_i|Y_j) &= H(X_i, Y_j) - H(Y_j)\\
|
|
116
|
-
* &= h(a, n) + h(b, n) + h(c, n) + h(d, n) - h(b + d, n) - h(a + c, n),
|
|
117
|
-
* $$
|
|
118
|
-
* $a = \sum_u \[X_{i,u} = 0 and Y_{j,u} = 0\]$, $b = \sum_u \[X_{i,u} = 0 and Y_{j,u} = 1\]$,
|
|
119
|
-
* $c = \sum_u \[X_{i,u} = 1 and Y_{j,u} = 0\]$ and $d = \sum_u \[X_{i,u} = 1 and Y_{j,u} =
|
|
120
|
-
* 1\]$.
|
|
121
|
-
*
|
|
122
|
-
* @param sizeXi Size of cluster X_i.
|
|
123
|
-
* @param sizeYj Size of cluster Y_j.
|
|
124
|
-
* @param intersectionSize Size of the intersection of X_i and Y_j.
|
|
125
|
-
* @param n Total number of nodes.
|
|
126
|
-
* @return
|
|
127
|
-
*/
|
|
128
|
-
static double adjustedConditionalEntropy(count sizeXi, count sizeYj, count intersectionSize,
|
|
129
|
-
count n);
|
|
130
|
-
|
|
131
|
-
/**
|
|
132
|
-
* Calculates the entropy of the clustering X conditioned by the clustering Y.
|
|
133
|
-
*
|
|
134
|
-
* $$
|
|
135
|
-
* H(X|Y) = \sum_{X_i \in X} \min_{Y_j \in Y} H^*(X_i|Y_j)
|
|
136
|
-
* $$
|
|
137
|
-
*
|
|
138
|
-
* @param sizesX
|
|
139
|
-
* @param sizesY
|
|
140
|
-
* @param intersectionSizes
|
|
141
|
-
* A map which stores the the intersection size between clusters X[i] and Y[j] with indices
|
|
142
|
-
* i and j as keys.
|
|
143
|
-
* @param invertPairIndices
|
|
144
|
-
* Whether to invert the indices of the intersectionSizes map entries.
|
|
145
|
-
* This allows reusing the same map for H(X|Y) and H(Y|X).
|
|
146
|
-
* @param n Total number of nodes.
|
|
147
|
-
* @return
|
|
148
|
-
*/
|
|
149
|
-
static double conditionalEntropy(
|
|
150
|
-
const std::vector<count> &sizesX, const std::vector<count> &sizesY,
|
|
151
|
-
const std::unordered_map<std::pair<index, index>, count, Aux::PairHash> &intersectionSizes,
|
|
152
|
-
bool invertPairIndices, count n);
|
|
153
|
-
|
|
154
|
-
static void clampBelow(double &value, double lowerBound, const char *format,
|
|
155
|
-
int printPrecision = 20);
|
|
156
|
-
|
|
157
|
-
static void clampAbove(double &value, double upperBound, const char *format,
|
|
158
|
-
int printPrecision = 20);
|
|
159
|
-
|
|
160
|
-
/**
|
|
161
|
-
* Normalize the given mutual information value.
|
|
162
|
-
*
|
|
163
|
-
* @param normalization
|
|
164
|
-
* @param mutualInformation
|
|
165
|
-
* @param entropyX
|
|
166
|
-
* @param entropyY
|
|
167
|
-
* @return
|
|
168
|
-
*/
|
|
169
|
-
static double normalize(OverlappingNMIDistance::Normalization normalization,
|
|
170
|
-
double mutualInformation, double entropyX, double entropyY);
|
|
171
|
-
};
|
|
172
|
-
|
|
173
|
-
} // namespace NetworKit
|
|
174
|
-
|
|
175
|
-
#endif // NETWORKIT_COMMUNITY_OVERLAPPING_NMI_DISTANCE_HPP_
|
|
@@ -1,89 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
* PLM.hpp
|
|
3
|
-
*
|
|
4
|
-
* Created on: 20.11.2013
|
|
5
|
-
* Author: cls
|
|
6
|
-
*/
|
|
7
|
-
|
|
8
|
-
#ifndef NETWORKIT_COMMUNITY_PLM_HPP_
|
|
9
|
-
#define NETWORKIT_COMMUNITY_PLM_HPP_
|
|
10
|
-
|
|
11
|
-
#include <networkit/community/CommunityDetectionAlgorithm.hpp>
|
|
12
|
-
|
|
13
|
-
namespace NetworKit {
|
|
14
|
-
|
|
15
|
-
/**
|
|
16
|
-
* @ingroup community
|
|
17
|
-
* Parallel Louvain Method - a multi-level modularity maximizer.
|
|
18
|
-
*/
|
|
19
|
-
class PLM final : public CommunityDetectionAlgorithm {
|
|
20
|
-
|
|
21
|
-
public:
|
|
22
|
-
/**
|
|
23
|
-
* @param[in] G input graph
|
|
24
|
-
* @param[in] refine add a second move phase to refine the communities
|
|
25
|
-
* @param[in] par parallelization strategy
|
|
26
|
-
* @param[in] gammamulti-resolution modularity parameter:
|
|
27
|
-
* 1.0 -> standard modularity
|
|
28
|
-
* 0.0 -> one community
|
|
29
|
-
* 2m -> singleton communities
|
|
30
|
-
* @param[in] maxIter maximum number of iterations for move phase
|
|
31
|
-
* @param[in] parallelCoarsening use parallel graph coarsening
|
|
32
|
-
* @param[in] turbo faster but uses O(n) additional memory per thread
|
|
33
|
-
* @param[in] recurse use recursive coarsening, see
|
|
34
|
-
* http://journals.aps.org/pre/abstract/10.1103/PhysRevE.89.049902 for some explanations
|
|
35
|
-
* (default: true)
|
|
36
|
-
*
|
|
37
|
-
*/
|
|
38
|
-
PLM(const Graph &G, bool refine = false, double gamma = 1.0, std::string par = "balanced",
|
|
39
|
-
count maxIter = 32, bool turbo = true, bool recurse = true);
|
|
40
|
-
|
|
41
|
-
PLM(const Graph &G, const PLM &other);
|
|
42
|
-
|
|
43
|
-
/**
|
|
44
|
-
* Detect communities.
|
|
45
|
-
*/
|
|
46
|
-
void run() override;
|
|
47
|
-
|
|
48
|
-
/**
|
|
49
|
-
* Coarsens a graph based on a given partition and returns both the coarsened graph and a
|
|
50
|
-
* mapping for the nodes from fine to coarse.
|
|
51
|
-
*
|
|
52
|
-
* @param graph The input graph
|
|
53
|
-
* @param zeta Partition of the graph, which represents the desired state of the coarsened graph
|
|
54
|
-
* @return pair of coarsened graph and node-mappings from fine to coarse graph
|
|
55
|
-
*/
|
|
56
|
-
static std::pair<GraphW, std::vector<node>> coarsen(const Graph &G, const Partition &zeta);
|
|
57
|
-
|
|
58
|
-
/**
|
|
59
|
-
* Calculates a partition containing the mapping of node-id from a fine graph
|
|
60
|
-
* to a cluster-id from partition based on a coarse graph.
|
|
61
|
-
*
|
|
62
|
-
* @param Gcoarse Coarsened graph
|
|
63
|
-
* @param zetaCoarse Partition, which contains information about clusters in the coarsened graph
|
|
64
|
-
* @param Gfine Fine graph
|
|
65
|
-
* @param nodeToMetaNode mapping for node-id from fine to coarse graph
|
|
66
|
-
* @return Partition, which contains the cluster-id in the coarse graph for every node from the
|
|
67
|
-
* fine graph
|
|
68
|
-
*/
|
|
69
|
-
static Partition prolong(const Graph &Gcoarse, const Partition &zetaCoarse, const Graph &Gfine,
|
|
70
|
-
std::vector<node> nodeToMetaNode);
|
|
71
|
-
|
|
72
|
-
/**
|
|
73
|
-
* Returns fine-grained running time measurements for algorithm engineering purposes.
|
|
74
|
-
*/
|
|
75
|
-
const std::map<std::string, std::vector<count>> &getTiming() const;
|
|
76
|
-
|
|
77
|
-
private:
|
|
78
|
-
std::string parallelism;
|
|
79
|
-
bool refine;
|
|
80
|
-
double gamma = 1.0;
|
|
81
|
-
count maxIter;
|
|
82
|
-
bool turbo;
|
|
83
|
-
bool recurse;
|
|
84
|
-
std::map<std::string, std::vector<count>> timing; // fine-grained running time measurement
|
|
85
|
-
};
|
|
86
|
-
|
|
87
|
-
} /* namespace NetworKit */
|
|
88
|
-
|
|
89
|
-
#endif // NETWORKIT_COMMUNITY_PLM_HPP_
|
|
@@ -1,83 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
* PLP.hpp
|
|
3
|
-
*
|
|
4
|
-
* Created on: 07.12.2012
|
|
5
|
-
* Author: Christian Staudt
|
|
6
|
-
*/
|
|
7
|
-
|
|
8
|
-
#ifndef NETWORKIT_COMMUNITY_PLP_HPP_
|
|
9
|
-
#define NETWORKIT_COMMUNITY_PLP_HPP_
|
|
10
|
-
|
|
11
|
-
#include <networkit/community/CommunityDetectionAlgorithm.hpp>
|
|
12
|
-
#include <networkit/structures/Partition.hpp>
|
|
13
|
-
|
|
14
|
-
namespace NetworKit {
|
|
15
|
-
|
|
16
|
-
/**
|
|
17
|
-
* @ingroup community
|
|
18
|
-
* As described in Ovelgoenne et al: An Ensemble Learning Strategy for Graph Clustering
|
|
19
|
-
* Raghavan et al. proposed a label propagation algorithm for graph clustering.
|
|
20
|
-
* This algorithm initializes every vertex of a graph with a unique label. Then, in iterative
|
|
21
|
-
* sweeps over the set of vertices the vertex labels are updated. A vertex gets the label
|
|
22
|
-
* that the maximum number of its neighbors have. The procedure is stopped when every vertex
|
|
23
|
-
* has the label that at least half of its neighbors have.
|
|
24
|
-
*
|
|
25
|
-
*/
|
|
26
|
-
class PLP final : public CommunityDetectionAlgorithm {
|
|
27
|
-
|
|
28
|
-
private:
|
|
29
|
-
count updateThreshold = 0;
|
|
30
|
-
count maxIterations;
|
|
31
|
-
count nIterations = 0; //!< number of iterations in last run
|
|
32
|
-
std::vector<count> timing; //!< running times for each iteration
|
|
33
|
-
|
|
34
|
-
public:
|
|
35
|
-
/**
|
|
36
|
-
* Constructor to the label propagation community detection algorithm.
|
|
37
|
-
*
|
|
38
|
-
* @param[in] G input graph
|
|
39
|
-
* @param[in] theta updateThreshold: number of nodes that have to be changed in each iteration
|
|
40
|
-
* so that a new iteration starts.
|
|
41
|
-
*/
|
|
42
|
-
PLP(const Graph &G, count theta = none, count maxIterations = none);
|
|
43
|
-
|
|
44
|
-
/**
|
|
45
|
-
* Constructor to the label propagation community detection algorithm.
|
|
46
|
-
*
|
|
47
|
-
* @param[in] G input graph
|
|
48
|
-
* @param[in] baseClustering optional; the algorithm will start from the given clustering.
|
|
49
|
-
* @param[in] theta updateThreshold: number of nodes that have to be changed in each iteration
|
|
50
|
-
* so that a new iteration starts.
|
|
51
|
-
*/
|
|
52
|
-
PLP(const Graph &G, const Partition &baseClustering, count theta = none);
|
|
53
|
-
|
|
54
|
-
/**
|
|
55
|
-
* Run the label propagation clustering algorithm.
|
|
56
|
-
*/
|
|
57
|
-
void run() override;
|
|
58
|
-
|
|
59
|
-
/**
|
|
60
|
-
* The algorithm runs until a number of nodes less than
|
|
61
|
-
* the threshold is updated.
|
|
62
|
-
*
|
|
63
|
-
* @param th The threshold.
|
|
64
|
-
*/
|
|
65
|
-
void setUpdateThreshold(count th);
|
|
66
|
-
|
|
67
|
-
/**
|
|
68
|
-
* Get number of iterations in last run.
|
|
69
|
-
*
|
|
70
|
-
* @return The number of iterations.
|
|
71
|
-
*/
|
|
72
|
-
count numberOfIterations();
|
|
73
|
-
|
|
74
|
-
/**
|
|
75
|
-
* Get list of running times for each iteration.
|
|
76
|
-
*
|
|
77
|
-
* @return The list of running times in milliseconds
|
|
78
|
-
*/
|
|
79
|
-
const std::vector<count> &getTiming() const;
|
|
80
|
-
};
|
|
81
|
-
|
|
82
|
-
} /* namespace NetworKit */
|
|
83
|
-
#endif // NETWORKIT_COMMUNITY_PLP_HPP_
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
* ParallelAgglomerativeClusterer.hpp
|
|
3
|
-
*
|
|
4
|
-
* Created on: 30.10.2012
|
|
5
|
-
* Author: Christian Staudt, Henning Meyerhenke
|
|
6
|
-
*/
|
|
7
|
-
|
|
8
|
-
#ifndef NETWORKIT_COMMUNITY_PARALLEL_AGGLOMERATIVE_CLUSTERER_HPP_
|
|
9
|
-
#define NETWORKIT_COMMUNITY_PARALLEL_AGGLOMERATIVE_CLUSTERER_HPP_
|
|
10
|
-
|
|
11
|
-
#include <networkit/community/CommunityDetectionAlgorithm.hpp>
|
|
12
|
-
#include <networkit/graph/GraphW.hpp>
|
|
13
|
-
|
|
14
|
-
namespace NetworKit {
|
|
15
|
-
|
|
16
|
-
/**
|
|
17
|
-
* @ingroup community
|
|
18
|
-
* A parallel agglomerative community detection algorithm, maximizing modularity.
|
|
19
|
-
*/
|
|
20
|
-
class ParallelAgglomerativeClusterer final : public CommunityDetectionAlgorithm {
|
|
21
|
-
|
|
22
|
-
public:
|
|
23
|
-
/**
|
|
24
|
-
* Constructor to the parallel agglomerative clusterer.
|
|
25
|
-
*
|
|
26
|
-
* @param[in] G input graph
|
|
27
|
-
*/
|
|
28
|
-
ParallelAgglomerativeClusterer(const Graph &G);
|
|
29
|
-
|
|
30
|
-
/**
|
|
31
|
-
* Detect communities.
|
|
32
|
-
*/
|
|
33
|
-
void run() override;
|
|
34
|
-
};
|
|
35
|
-
|
|
36
|
-
} /* namespace NetworKit */
|
|
37
|
-
#endif // NETWORKIT_COMMUNITY_PARALLEL_AGGLOMERATIVE_CLUSTERER_HPP_
|
|
@@ -1,96 +0,0 @@
|
|
|
1
|
-
#ifndef NETWORKIT_COMMUNITY_PARALLEL_LEIDEN_HPP_
|
|
2
|
-
#define NETWORKIT_COMMUNITY_PARALLEL_LEIDEN_HPP_
|
|
3
|
-
|
|
4
|
-
#include <atomic>
|
|
5
|
-
#include <condition_variable>
|
|
6
|
-
#include <iomanip>
|
|
7
|
-
#include <iostream>
|
|
8
|
-
#include <mutex>
|
|
9
|
-
#include <omp.h>
|
|
10
|
-
#include <thread>
|
|
11
|
-
#include <tlx/unused.hpp>
|
|
12
|
-
#include <networkit/Globals.hpp>
|
|
13
|
-
#include <networkit/auxiliary/Parallel.hpp>
|
|
14
|
-
#include <networkit/auxiliary/Parallelism.hpp>
|
|
15
|
-
#include <networkit/auxiliary/SignalHandling.hpp>
|
|
16
|
-
#include <networkit/auxiliary/Timer.hpp>
|
|
17
|
-
#include <networkit/coarsening/ParallelPartitionCoarsening.hpp>
|
|
18
|
-
#include <networkit/community/CommunityDetectionAlgorithm.hpp>
|
|
19
|
-
#include <networkit/community/Modularity.hpp>
|
|
20
|
-
#include <networkit/community/PLM.hpp>
|
|
21
|
-
#include <networkit/graph/Graph.hpp>
|
|
22
|
-
#include <networkit/structures/Partition.hpp>
|
|
23
|
-
|
|
24
|
-
namespace NetworKit {
|
|
25
|
-
|
|
26
|
-
class ParallelLeiden final : public CommunityDetectionAlgorithm {
|
|
27
|
-
public:
|
|
28
|
-
/**
|
|
29
|
-
* @note As reported by Sahu et. al in "GVE-Leiden: Fast Leiden Algorithm for Community
|
|
30
|
-
* Detection in Shared Memory Setting", the current implementation in NetworKit might create a
|
|
31
|
-
* small fraction of disconnected communities. Since this violates the guarantees from the
|
|
32
|
-
* original algorithm, ParallelLeiden should be used with caution. In addition the modularity
|
|
33
|
-
* value of the resulting partition / clustering can be lower compared to other Leiden
|
|
34
|
-
* implementations and even Louvain.
|
|
35
|
-
*
|
|
36
|
-
* @param graph A networkit graph
|
|
37
|
-
* @param iterations Number of Leiden Iterations to be run
|
|
38
|
-
* @param randomize Randomize node order?
|
|
39
|
-
* @param gamma Resolution parameter
|
|
40
|
-
*/
|
|
41
|
-
explicit ParallelLeiden(const Graph &graph, int iterations = 3, bool randomize = true,
|
|
42
|
-
double gamma = 1);
|
|
43
|
-
|
|
44
|
-
void run() override;
|
|
45
|
-
|
|
46
|
-
int VECTOR_OVERSIZE = 10000;
|
|
47
|
-
|
|
48
|
-
private:
|
|
49
|
-
inline double modularityDelta(double cutD, double degreeV, double volD) const {
|
|
50
|
-
return cutD - gamma * degreeV * volD * inverseGraphVolume;
|
|
51
|
-
};
|
|
52
|
-
|
|
53
|
-
inline double modularityThreshold(double cutC, double volC, double degreeV) const {
|
|
54
|
-
return cutC - gamma * (volC - degreeV) * degreeV * inverseGraphVolume;
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
static inline void lockLowerFirst(index a, index b, std::vector<std::mutex> &locks) {
|
|
58
|
-
if (a < b) {
|
|
59
|
-
locks[a].lock();
|
|
60
|
-
locks[b].lock();
|
|
61
|
-
} else {
|
|
62
|
-
locks[b].lock();
|
|
63
|
-
locks[a].lock();
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
|
|
67
|
-
void flattenPartition();
|
|
68
|
-
|
|
69
|
-
void calculateVolumes(const Graph &graph);
|
|
70
|
-
|
|
71
|
-
void parallelMove(const Graph &graph);
|
|
72
|
-
|
|
73
|
-
Partition parallelRefine(const Graph &graph);
|
|
74
|
-
|
|
75
|
-
double inverseGraphVolume; // 1/vol(V)
|
|
76
|
-
|
|
77
|
-
std::vector<double> communityVolumes;
|
|
78
|
-
|
|
79
|
-
std::vector<std::vector<node>> mappings;
|
|
80
|
-
|
|
81
|
-
static constexpr int WORKING_SIZE = 1000;
|
|
82
|
-
|
|
83
|
-
double gamma; // Resolution parameter
|
|
84
|
-
|
|
85
|
-
bool changed;
|
|
86
|
-
|
|
87
|
-
int numberOfIterations;
|
|
88
|
-
|
|
89
|
-
Aux::SignalHandler handler;
|
|
90
|
-
|
|
91
|
-
bool random;
|
|
92
|
-
};
|
|
93
|
-
|
|
94
|
-
} // namespace NetworKit
|
|
95
|
-
|
|
96
|
-
#endif // NETWORKIT_COMMUNITY_PARALLEL_LEIDEN_HPP_
|
|
@@ -1,138 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
* ParallelLeidenView.hpp
|
|
3
|
-
*
|
|
4
|
-
* Memory-efficient version of ParallelLeiden using CoarsenedGraphView
|
|
5
|
-
*/
|
|
6
|
-
|
|
7
|
-
#ifndef NETWORKIT_COMMUNITY_PARALLEL_LEIDEN_VIEW_HPP_
|
|
8
|
-
#define NETWORKIT_COMMUNITY_PARALLEL_LEIDEN_VIEW_HPP_
|
|
9
|
-
|
|
10
|
-
#include <atomic>
|
|
11
|
-
#include <condition_variable>
|
|
12
|
-
#include <iomanip>
|
|
13
|
-
#include <iostream>
|
|
14
|
-
#include <limits>
|
|
15
|
-
#include <memory>
|
|
16
|
-
#include <mutex>
|
|
17
|
-
#include <omp.h>
|
|
18
|
-
#include <thread>
|
|
19
|
-
#include <tlx/unused.hpp>
|
|
20
|
-
#include <networkit/Globals.hpp>
|
|
21
|
-
#include <networkit/auxiliary/Parallel.hpp>
|
|
22
|
-
#include <networkit/auxiliary/Parallelism.hpp>
|
|
23
|
-
#include <networkit/auxiliary/SignalHandling.hpp>
|
|
24
|
-
#include <networkit/auxiliary/Timer.hpp>
|
|
25
|
-
#include <networkit/coarsening/CoarsenedGraphView.hpp>
|
|
26
|
-
#include <networkit/coarsening/ParallelPartitionCoarseningView.hpp>
|
|
27
|
-
#include <networkit/community/CommunityDetectionAlgorithm.hpp>
|
|
28
|
-
#include <networkit/community/Modularity.hpp>
|
|
29
|
-
#include <networkit/community/PLM.hpp>
|
|
30
|
-
#include <networkit/graph/Graph.hpp>
|
|
31
|
-
#include <networkit/structures/Partition.hpp>
|
|
32
|
-
|
|
33
|
-
namespace NetworKit {
|
|
34
|
-
|
|
35
|
-
/**
|
|
36
|
-
* Memory-efficient version of ParallelLeiden that uses CoarsenedGraphView
|
|
37
|
-
* instead of creating new graph structures, significantly reducing memory usage
|
|
38
|
-
* during the coarsening process.
|
|
39
|
-
*/
|
|
40
|
-
class ParallelLeidenView final : public CommunityDetectionAlgorithm {
|
|
41
|
-
public:
|
|
42
|
-
/**
|
|
43
|
-
* @note As reported by Sahu et. al in "GVE-Leiden: Fast Leiden Algorithm for Community
|
|
44
|
-
* Detection in Shared Memory Setting", the current implementation in NetworKit might create a
|
|
45
|
-
* small fraction of disconnected communities. Since this violates the guarantees from the
|
|
46
|
-
* original algorithm, ParallelLeidenView should be used with caution. In addition the
|
|
47
|
-
* modularity value of the resulting partition / clustering can be lower compared to other
|
|
48
|
-
* Leiden implementations and even Louvain.
|
|
49
|
-
*
|
|
50
|
-
* @param graph A networkit graph
|
|
51
|
-
* @param iterations Number of Leiden Iterations to be run
|
|
52
|
-
* @param randomize Randomize node order?
|
|
53
|
-
* @param gamma Resolution parameter
|
|
54
|
-
*/
|
|
55
|
-
explicit ParallelLeidenView(const Graph &graph, int iterations = 3, bool randomize = true,
|
|
56
|
-
double gamma = 1);
|
|
57
|
-
|
|
58
|
-
~ParallelLeidenView();
|
|
59
|
-
|
|
60
|
-
void run() override;
|
|
61
|
-
|
|
62
|
-
int VECTOR_OVERSIZE = 10000;
|
|
63
|
-
|
|
64
|
-
private:
|
|
65
|
-
struct MoveStats {
|
|
66
|
-
count moved = 0;
|
|
67
|
-
count movedToSingleton = 0;
|
|
68
|
-
count marginalMovesRejected = 0;
|
|
69
|
-
double gainMarginSum = 0.0;
|
|
70
|
-
double gainMarginMin = std::numeric_limits<double>::max();
|
|
71
|
-
double gainMarginMax = std::numeric_limits<double>::lowest();
|
|
72
|
-
};
|
|
73
|
-
|
|
74
|
-
// Template interface to work with both Graph and CoarsenedGraphView
|
|
75
|
-
template <typename GraphType>
|
|
76
|
-
void calculateVolumes(const GraphType &graph);
|
|
77
|
-
|
|
78
|
-
template <typename GraphType>
|
|
79
|
-
MoveStats parallelMove(const GraphType &graph);
|
|
80
|
-
|
|
81
|
-
template <typename GraphType>
|
|
82
|
-
Partition parallelRefine(const GraphType &graph);
|
|
83
|
-
|
|
84
|
-
inline double modularityDelta(double cutD, double degreeV, double volD) const {
|
|
85
|
-
return cutD - gamma * degreeV * volD * inverseGraphVolume;
|
|
86
|
-
};
|
|
87
|
-
|
|
88
|
-
inline double modularityThreshold(double cutC, double volC, double degreeV) const {
|
|
89
|
-
return cutC - gamma * (volC - degreeV) * degreeV * inverseGraphVolume;
|
|
90
|
-
}
|
|
91
|
-
|
|
92
|
-
static inline void lockLowerFirst(index a, index b, std::vector<std::mutex> &locks) {
|
|
93
|
-
if (a < b) {
|
|
94
|
-
locks[a].lock();
|
|
95
|
-
locks[b].lock();
|
|
96
|
-
} else {
|
|
97
|
-
locks[b].lock();
|
|
98
|
-
locks[a].lock();
|
|
99
|
-
}
|
|
100
|
-
}
|
|
101
|
-
|
|
102
|
-
void flattenPartition();
|
|
103
|
-
|
|
104
|
-
double inverseGraphVolume; // 1/vol(V)
|
|
105
|
-
|
|
106
|
-
std::vector<double> communityVolumes;
|
|
107
|
-
|
|
108
|
-
std::vector<node> composedMapping;
|
|
109
|
-
|
|
110
|
-
static constexpr int WORKING_SIZE = 1000;
|
|
111
|
-
|
|
112
|
-
double gamma; // Resolution parameter
|
|
113
|
-
|
|
114
|
-
bool changed;
|
|
115
|
-
|
|
116
|
-
int numberOfIterations;
|
|
117
|
-
|
|
118
|
-
Aux::SignalHandler handler;
|
|
119
|
-
|
|
120
|
-
bool random;
|
|
121
|
-
|
|
122
|
-
// Current coarsened graph view (only keep current, not all historical)
|
|
123
|
-
std::shared_ptr<CoarsenedGraphView> currentCoarsenedView;
|
|
124
|
-
|
|
125
|
-
// Reject moves whose gain margin is too small (numerical-noise churn filter).
|
|
126
|
-
double moveGainMarginEpsilon = 1e-4;
|
|
127
|
-
|
|
128
|
-
// Maximum inner iterations per Leiden iteration.
|
|
129
|
-
int maxInnerIterations = 20;
|
|
130
|
-
|
|
131
|
-
// Optional convergence stop: minimum relative reduction in community count per inner iter.
|
|
132
|
-
// 0.0 disables this criterion.
|
|
133
|
-
double minCommunityReduction = 0.0;
|
|
134
|
-
};
|
|
135
|
-
|
|
136
|
-
} // namespace NetworKit
|
|
137
|
-
|
|
138
|
-
#endif // NETWORKIT_COMMUNITY_PARALLEL_LEIDEN_VIEW_HPP_
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
#ifndef NETWORKIT_COMMUNITY_PARTITION_FRAGMENTATION_HPP_
|
|
2
|
-
#define NETWORKIT_COMMUNITY_PARTITION_FRAGMENTATION_HPP_
|
|
3
|
-
|
|
4
|
-
#include <networkit/community/LocalPartitionEvaluation.hpp>
|
|
5
|
-
|
|
6
|
-
namespace NetworKit {
|
|
7
|
-
|
|
8
|
-
/**
|
|
9
|
-
* This measure evaluates how fragmented a partition is. The fragmentation of a single cluster is
|
|
10
|
-
* defined as one minus the number of nodes in its maximum connected components divided by its total
|
|
11
|
-
* number of nodes. Smaller values thus indicate a smaller fragmentation.
|
|
12
|
-
*/
|
|
13
|
-
class PartitionFragmentation final : public LocalPartitionEvaluation {
|
|
14
|
-
public:
|
|
15
|
-
using LocalPartitionEvaluation::LocalPartitionEvaluation;
|
|
16
|
-
|
|
17
|
-
/**
|
|
18
|
-
* Execute the algorithm. The algorithm is not parallel.
|
|
19
|
-
*/
|
|
20
|
-
void run() override;
|
|
21
|
-
|
|
22
|
-
/**
|
|
23
|
-
* @return true - smaller values are better than larger values.
|
|
24
|
-
*/
|
|
25
|
-
bool isSmallBetter() const override { return true; };
|
|
26
|
-
};
|
|
27
|
-
|
|
28
|
-
} // namespace NetworKit
|
|
29
|
-
|
|
30
|
-
#endif // NETWORKIT_COMMUNITY_PARTITION_FRAGMENTATION_HPP_
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
#ifndef NETWORKIT_COMMUNITY_PARTITION_HUB_DOMINANCE_HPP_
|
|
2
|
-
#define NETWORKIT_COMMUNITY_PARTITION_HUB_DOMINANCE_HPP_
|
|
3
|
-
|
|
4
|
-
#include <networkit/community/LocalPartitionEvaluation.hpp>
|
|
5
|
-
|
|
6
|
-
namespace NetworKit {
|
|
7
|
-
|
|
8
|
-
/**
|
|
9
|
-
* A quality measure that measures the dominance of hubs in clusters. The hub dominance of a single
|
|
10
|
-
* cluster is defined as the maximum cluster-internal degree of a node in that cluster divided by
|
|
11
|
-
* the maximum cluster-internal degree, i.e. the number of nodes in the cluster minus one. The
|
|
12
|
-
* value for all clusters is defined as the average of all clusters.
|
|
13
|
-
* Strictly speaking this is not a quality measure as this is rather dependent on the type of the
|
|
14
|
-
* considered graph, for more information see
|
|
15
|
-
* Lancichinetti A, Kivel M, Saramki J, Fortunato S (2010)
|
|
16
|
-
* Characterizing the Community Structure of Complex Networks
|
|
17
|
-
* PLoS ONE 5(8): e11976. doi: 10.1371/journal.pone.0011976
|
|
18
|
-
* http://www.plosone.org/article/info%3Adoi%2F10.1371%2Fjournal.pone.0011976
|
|
19
|
-
*/
|
|
20
|
-
class PartitionHubDominance final : public LocalPartitionEvaluation {
|
|
21
|
-
public:
|
|
22
|
-
using LocalPartitionEvaluation::LocalPartitionEvaluation;
|
|
23
|
-
|
|
24
|
-
/**
|
|
25
|
-
* Execute the algorithm. The algorithm is not parallel.
|
|
26
|
-
*/
|
|
27
|
-
void run() override;
|
|
28
|
-
|
|
29
|
-
/**
|
|
30
|
-
* @return false - small values are not better, large values indicate better cluster cohesion.
|
|
31
|
-
*/
|
|
32
|
-
bool isSmallBetter() const override { return false; }
|
|
33
|
-
};
|
|
34
|
-
|
|
35
|
-
} // namespace NetworKit
|
|
36
|
-
|
|
37
|
-
#endif // NETWORKIT_COMMUNITY_PARTITION_HUB_DOMINANCE_HPP_
|