@ladybugmem/icebug 0.1.0 → 0.1.1
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 +8 -13
- 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,65 +0,0 @@
|
|
|
1
|
-
#ifndef NETWORKIT_GENERATORS_EDGE_SWITCHING_MARKOV_CHAIN_GENERATOR_HPP_
|
|
2
|
-
#define NETWORKIT_GENERATORS_EDGE_SWITCHING_MARKOV_CHAIN_GENERATOR_HPP_
|
|
3
|
-
|
|
4
|
-
#include <networkit/generators/StaticDegreeSequenceGenerator.hpp>
|
|
5
|
-
|
|
6
|
-
namespace NetworKit {
|
|
7
|
-
|
|
8
|
-
/**
|
|
9
|
-
* @ingroup generators
|
|
10
|
-
* Graph generator for generating a random simple graph with exactly the given degree sequence based
|
|
11
|
-
* on the Edge-Switching Markov-Chain method.
|
|
12
|
-
*
|
|
13
|
-
* This implementation is based on the paper
|
|
14
|
-
* "Random generation of large connected simple graphs with prescribed degree distribution" by
|
|
15
|
-
* Fabien Viger and Matthieu Latapy, available at http://www-rp.lip6.fr/~latapy/FV/generation.html,
|
|
16
|
-
* however without preserving connectivity (this could later be added as optional feature).
|
|
17
|
-
*
|
|
18
|
-
* The Havel-Hakami generator is used for the initial graph generation, then the Markov-Chain
|
|
19
|
-
* Monte-Carlo algorithm as described and implemented by Fabien Viger and Matthieu Latapy but
|
|
20
|
-
* without the steps for ensuring connectivity is executed. This should lead to a graph that is
|
|
21
|
-
* drawn uniformly at random from all graphs with the given degree sequence.
|
|
22
|
-
*
|
|
23
|
-
* Note that at most 10 times the number of edges edge swaps are performed (same number as in the
|
|
24
|
-
* aforementioned implementation) and in order to limit the running time, at most 200 times as many
|
|
25
|
-
* attempts to perform an edge swap are made (as certain degree distributions do not allow edge
|
|
26
|
-
* swaps at all).
|
|
27
|
-
*/
|
|
28
|
-
class EdgeSwitchingMarkovChainGenerator final : public StaticDegreeSequenceGenerator {
|
|
29
|
-
public:
|
|
30
|
-
/**
|
|
31
|
-
* Initializes the configuration model generator with the given degree sequence @a sequence.
|
|
32
|
-
*
|
|
33
|
-
* If the sequence cannot be realized, optionally if @a ignoreIfRealizable is true, a graph with
|
|
34
|
-
* a different degree sequence is generated where certain nodes might not have their full
|
|
35
|
-
* degree.
|
|
36
|
-
*
|
|
37
|
-
* @param sequence The wanted degree sequence.
|
|
38
|
-
* @param ignoreIfNotRealizable Ignore if the sequence is not realizable and generate a graph
|
|
39
|
-
* anyway.
|
|
40
|
-
* @param numSwitchesPerEdge Average number of edge switches (Markov chain steps) per edge
|
|
41
|
-
*/
|
|
42
|
-
EdgeSwitchingMarkovChainGenerator(const std::vector<count> &sequence,
|
|
43
|
-
bool ignoreIfNotRealizable = false,
|
|
44
|
-
count numSwitchesPerEdge = 10);
|
|
45
|
-
|
|
46
|
-
/**
|
|
47
|
-
* Generate a graph according to the configuration model.
|
|
48
|
-
*
|
|
49
|
-
* Issues a INFO log message if the wanted number of edge swaps cannot be performed because of
|
|
50
|
-
* the limit of attempts (see in the description of the class for details).
|
|
51
|
-
*
|
|
52
|
-
* @throws std::runtime_error If the sequence cannot be generated and ignoreIfRealizable is
|
|
53
|
-
* false.
|
|
54
|
-
* @return The generated graph
|
|
55
|
-
*/
|
|
56
|
-
GraphW generate() override;
|
|
57
|
-
|
|
58
|
-
private:
|
|
59
|
-
bool ignoreIfNotRealizable;
|
|
60
|
-
count numSwitchesPerEdge;
|
|
61
|
-
};
|
|
62
|
-
|
|
63
|
-
} // namespace NetworKit
|
|
64
|
-
|
|
65
|
-
#endif // NETWORKIT_GENERATORS_EDGE_SWITCHING_MARKOV_CHAIN_GENERATOR_HPP_
|
|
@@ -1,318 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
* ErdosRenyiGenerator.hpp
|
|
3
|
-
*
|
|
4
|
-
* Created on: 07.08.2018
|
|
5
|
-
* Author: Manuel Penschuck (networkit@manuel.jetzt)
|
|
6
|
-
*/
|
|
7
|
-
|
|
8
|
-
#ifndef NETWORKIT_GENERATORS_ERDOS_RENYI_ENUMERATOR_HPP_
|
|
9
|
-
#define NETWORKIT_GENERATORS_ERDOS_RENYI_ENUMERATOR_HPP_
|
|
10
|
-
|
|
11
|
-
#include <omp.h>
|
|
12
|
-
|
|
13
|
-
#include <atomic>
|
|
14
|
-
#include <cassert>
|
|
15
|
-
#include <cmath>
|
|
16
|
-
#include <random>
|
|
17
|
-
|
|
18
|
-
#include <networkit/Globals.hpp>
|
|
19
|
-
#include <networkit/auxiliary/Random.hpp>
|
|
20
|
-
#include <networkit/auxiliary/SignalHandling.hpp>
|
|
21
|
-
|
|
22
|
-
namespace NetworKit {
|
|
23
|
-
|
|
24
|
-
/**
|
|
25
|
-
* Generates a stream of edges of a G(n,p) graph. The edges are not
|
|
26
|
-
* written to memory, but emitted only via usual @a forEdges semantics
|
|
27
|
-
* to a callback.
|
|
28
|
-
*
|
|
29
|
-
* Use @ref ErdosRenyiGenerator as a wrapper to output a graph.
|
|
30
|
-
*
|
|
31
|
-
* The enumerator implements both floating point and fixed point arithmetic,
|
|
32
|
-
* to compute the edges which can be selected via the template parameter
|
|
33
|
-
* @a UseFixedPoint. It defaults to true, as this algorithm is typically
|
|
34
|
-
* 2 to 3 times faster. In theory, floating point arithmetic allows for
|
|
35
|
-
* longer runs of consecutive edges not selected. As those events virtually
|
|
36
|
-
* never occur, there are no measurable implications of using the faster
|
|
37
|
-
* variant.
|
|
38
|
-
*/
|
|
39
|
-
template <bool UseFixedPoint = true>
|
|
40
|
-
class ErdosRenyiEnumerator final {
|
|
41
|
-
//! this type is used only internally for fixed-point arithmetic
|
|
42
|
-
using integral_t = unsigned long long;
|
|
43
|
-
|
|
44
|
-
public:
|
|
45
|
-
/**
|
|
46
|
-
* Generates a G(n, p) graph for n > 1 and 0 < p < 1.
|
|
47
|
-
*
|
|
48
|
-
* For an @b directed graph, the resulting edge stream is equivalent
|
|
49
|
-
* to throwing a coin for each node pair (u, v) and accepting it
|
|
50
|
-
* with probability @a prob; i.e. the stream may include self-loops.
|
|
51
|
-
* Hence the expected number of edges is n*n*prob.
|
|
52
|
-
*
|
|
53
|
-
* For an @b undirected graph, all node pairs (u, v) with 1 < v < u < n
|
|
54
|
-
* are considered. Hence the expected number of edges is n*(n-1)/2*prob
|
|
55
|
-
*
|
|
56
|
-
* @param n Number of nodes to generate
|
|
57
|
-
* @param prob Probability that an edge exists
|
|
58
|
-
* @param directed Selects an directed graph
|
|
59
|
-
*/
|
|
60
|
-
ErdosRenyiEnumerator(node n, double prob, bool directed)
|
|
61
|
-
: n{n}, prob{prob}, directed{directed} {
|
|
62
|
-
assert(n > 0);
|
|
63
|
-
}
|
|
64
|
-
|
|
65
|
-
/**
|
|
66
|
-
* Generates an Erdos-Renyi-Graph as specified in the constructor on the fly.
|
|
67
|
-
* The stream is generated in parallel on as many core as an OpenMP parallel
|
|
68
|
-
* section is allotted to. For each edge the callback @a handle is invoked.
|
|
69
|
-
* Two signatures are supported for callback:
|
|
70
|
-
*
|
|
71
|
-
* (unsigned tid, node u, node v)
|
|
72
|
-
* (node u, node v)
|
|
73
|
-
*
|
|
74
|
-
* where tid is the current thread id as returned by omp_get_thread_num() and
|
|
75
|
-
* u and v are the edge's nodes. In case of an undirected graph u > v.
|
|
76
|
-
*
|
|
77
|
-
* It is guaranteed that no two threads emit edges for the same u.
|
|
78
|
-
*
|
|
79
|
-
* It can be expected that all threads emit a similar number of edges.
|
|
80
|
-
*
|
|
81
|
-
* Returns number of edges produced.
|
|
82
|
-
*/
|
|
83
|
-
template <typename Handle>
|
|
84
|
-
count forEdgesParallel(Handle handle) {
|
|
85
|
-
std::atomic<count> numEdges{0};
|
|
86
|
-
if (directed) {
|
|
87
|
-
#pragma omp parallel
|
|
88
|
-
{
|
|
89
|
-
const unsigned threads = omp_get_num_threads();
|
|
90
|
-
const unsigned tid = omp_get_thread_num();
|
|
91
|
-
|
|
92
|
-
const node chunk_size = (n + threads - 1) / threads;
|
|
93
|
-
const node first_node = std::min<node>(n, tid * chunk_size);
|
|
94
|
-
const node last_node = std::min<node>(n, (tid + 1) * chunk_size);
|
|
95
|
-
|
|
96
|
-
const auto localNumEdges =
|
|
97
|
-
enumerate<true>(handle, tid, prob, first_node, last_node);
|
|
98
|
-
numEdges.fetch_add(localNumEdges, std::memory_order_relaxed);
|
|
99
|
-
}
|
|
100
|
-
} else {
|
|
101
|
-
#pragma omp parallel
|
|
102
|
-
{
|
|
103
|
-
const unsigned threads = omp_get_num_threads();
|
|
104
|
-
const unsigned tid = omp_get_thread_num();
|
|
105
|
-
|
|
106
|
-
// cells in adj matrix per thread
|
|
107
|
-
const node chunk_size = (n * (n - 1) / 2 + threads - 1) / threads;
|
|
108
|
-
|
|
109
|
-
double first_node;
|
|
110
|
-
double last_node = 0.0;
|
|
111
|
-
|
|
112
|
-
for (unsigned i = 0; i <= tid; i++) {
|
|
113
|
-
first_node = last_node;
|
|
114
|
-
node upper_node = std::ceil(
|
|
115
|
-
std::sqrt(0.25 + first_node * first_node + first_node + 2 * chunk_size));
|
|
116
|
-
last_node = std::min<node>(n, upper_node);
|
|
117
|
-
}
|
|
118
|
-
|
|
119
|
-
if (tid + 1 == threads)
|
|
120
|
-
last_node = n;
|
|
121
|
-
|
|
122
|
-
if (first_node < last_node) {
|
|
123
|
-
const auto localNumEdges =
|
|
124
|
-
enumerate<false>(handle, tid, prob, first_node, last_node);
|
|
125
|
-
numEdges.fetch_add(localNumEdges, std::memory_order_relaxed);
|
|
126
|
-
}
|
|
127
|
-
}
|
|
128
|
-
}
|
|
129
|
-
|
|
130
|
-
return numEdges.load();
|
|
131
|
-
}
|
|
132
|
-
|
|
133
|
-
/**
|
|
134
|
-
* Similarly to @ref forEdgesParallel but computed on one thread only.
|
|
135
|
-
* If the callback accepts three arguments tid is always 0.
|
|
136
|
-
*/
|
|
137
|
-
template <typename Handle>
|
|
138
|
-
count forEdges(Handle handle) {
|
|
139
|
-
if (directed) {
|
|
140
|
-
return enumerate<true>(handle, 0, prob, 0, n);
|
|
141
|
-
} else {
|
|
142
|
-
return enumerate<false>(handle, 0, prob, 0, n);
|
|
143
|
-
}
|
|
144
|
-
}
|
|
145
|
-
|
|
146
|
-
/**
|
|
147
|
-
* Returns the expected number of edges to be generated.
|
|
148
|
-
*/
|
|
149
|
-
count expectedNumberOfEdges() const { return prob * n * (directed ? n : (n - 1) * 0.5); }
|
|
150
|
-
|
|
151
|
-
private:
|
|
152
|
-
const node n; //< number of nodes
|
|
153
|
-
const double prob; //< probability p
|
|
154
|
-
const bool directed; //< true if a directed graph should be generated
|
|
155
|
-
|
|
156
|
-
// In the undirected case we only traverse the lower triangle (excluding the
|
|
157
|
-
// diagonal) of the adjacency matrix
|
|
158
|
-
template <bool Directed, typename Handle>
|
|
159
|
-
count enumerate(Handle handle, unsigned tid, double prob, const node node_begin,
|
|
160
|
-
const node node_end) const {
|
|
161
|
-
if (prob > 0.9) {
|
|
162
|
-
// for p > 0.5 we invert the generator and draw the edges NOT in the graph.
|
|
163
|
-
// While this does not change the asymptotical work, it decrease the
|
|
164
|
-
// random bits drawn from prng.
|
|
165
|
-
|
|
166
|
-
node cur_u = node_begin;
|
|
167
|
-
node cur_v = 0;
|
|
168
|
-
count num_edges = 0;
|
|
169
|
-
|
|
170
|
-
if (!Directed && cur_u == 0)
|
|
171
|
-
cur_u = 1; // all edges need to be of form u > v!
|
|
172
|
-
|
|
173
|
-
auto complement_graph = [&](unsigned tid, node u, node v) {
|
|
174
|
-
while (!(cur_u == u && cur_v == v)) {
|
|
175
|
-
callHandle(handle, tid, cur_u, cur_v);
|
|
176
|
-
num_edges++;
|
|
177
|
-
|
|
178
|
-
if (++cur_v == (Directed ? n : cur_u)) {
|
|
179
|
-
cur_v = 0;
|
|
180
|
-
cur_u++;
|
|
181
|
-
}
|
|
182
|
-
}
|
|
183
|
-
};
|
|
184
|
-
|
|
185
|
-
enumerate_<Directed>(complement_graph, tid, 1.0 - prob, node_begin, node_end);
|
|
186
|
-
complement_graph(tid, node_end, 0);
|
|
187
|
-
|
|
188
|
-
return num_edges;
|
|
189
|
-
}
|
|
190
|
-
|
|
191
|
-
return enumerate_<Directed>(handle, tid, prob, node_begin, node_end);
|
|
192
|
-
}
|
|
193
|
-
|
|
194
|
-
template <bool Directed, typename Handle>
|
|
195
|
-
count enumerate_(Handle handle, unsigned tid, double prob, const node node_begin,
|
|
196
|
-
const node node_end) const {
|
|
197
|
-
Aux::SignalHandler handler;
|
|
198
|
-
|
|
199
|
-
if (prob < std::pow(n, -3.0)) {
|
|
200
|
-
// Even with a union bound over all candidates, WHP no edge will be emitted
|
|
201
|
-
return 0;
|
|
202
|
-
}
|
|
203
|
-
|
|
204
|
-
const double inv_log2_cp = 1.0 / std::log2(1.0 - prob);
|
|
205
|
-
|
|
206
|
-
// random source
|
|
207
|
-
auto &prng = Aux::Random::getURNG(); // this is thread local
|
|
208
|
-
auto distr = get_distribution<UseFixedPoint>();
|
|
209
|
-
|
|
210
|
-
count curr = node_begin;
|
|
211
|
-
if (!Directed && !curr)
|
|
212
|
-
curr = 1;
|
|
213
|
-
node next = -1;
|
|
214
|
-
|
|
215
|
-
node max_skip = 0;
|
|
216
|
-
count numEdges = 0;
|
|
217
|
-
|
|
218
|
-
while (curr < node_end) {
|
|
219
|
-
handler.assureRunning();
|
|
220
|
-
// compute new step length
|
|
221
|
-
auto skip = skip_distance(distr(prng), inv_log2_cp);
|
|
222
|
-
next += skip;
|
|
223
|
-
if (skip > max_skip)
|
|
224
|
-
max_skip = skip;
|
|
225
|
-
|
|
226
|
-
// check if at end of row (assuming an average degree of 1,
|
|
227
|
-
// its typically faster to repeatedly subtract than to
|
|
228
|
-
// divide; it is in any case easier easier ...)
|
|
229
|
-
while (next >= (Directed ? n : curr)) {
|
|
230
|
-
// adapt to next row
|
|
231
|
-
next = next - (Directed ? n : curr);
|
|
232
|
-
curr++;
|
|
233
|
-
}
|
|
234
|
-
|
|
235
|
-
// insert edge
|
|
236
|
-
if (curr < node_end) {
|
|
237
|
-
numEdges++;
|
|
238
|
-
callHandle(handle, tid, curr, next);
|
|
239
|
-
}
|
|
240
|
-
}
|
|
241
|
-
|
|
242
|
-
return numEdges;
|
|
243
|
-
}
|
|
244
|
-
|
|
245
|
-
// Optimized version of the computation of the skip distance as proposed Batagelj and Brandes.
|
|
246
|
-
// It basically converts a uniform variate to a geometric random variable.
|
|
247
|
-
count skip_distance(integral_t random_prob, double inv_log2_cp) const {
|
|
248
|
-
/*
|
|
249
|
-
* The original idea is to compute
|
|
250
|
-
* 1 + floor(log(1 - x) / log(1 - prob)) where x is
|
|
251
|
-
* a uniform real from (0, 1).
|
|
252
|
-
*
|
|
253
|
-
* We now precompute inv_log_cp := 1.0 / log(1 - prob) once
|
|
254
|
-
* to avoid recomputing the second log and to replace a
|
|
255
|
-
* division by a multiplication. Hence we compute
|
|
256
|
-
* 1 + floor(log(1 - x) * inv_log_cp).
|
|
257
|
-
*
|
|
258
|
-
* Observe that P[x = k] = P[x = 1-k] and hence we avoid the subtraction:
|
|
259
|
-
* 1 + floor(log(x) * inv_log_cp).
|
|
260
|
-
*
|
|
261
|
-
* Then, typically log() is slower than log2(). On my
|
|
262
|
-
* machines its a factor of roughly 1.5. Thus we replace
|
|
263
|
-
* log by log2 in both equations:
|
|
264
|
-
* inv_log2_cp := 1.0 / log2(1 - prob)
|
|
265
|
-
* 1 + floor(log2(x) * inv_log2_cp)
|
|
266
|
-
*
|
|
267
|
-
* Now we optimise the generation of the random number.
|
|
268
|
-
* uniform_real_distribution is roughly 3 times slower than
|
|
269
|
-
* uniform_int_distribution. Hence let's switch to fix-point arithmetic.
|
|
270
|
-
* Let X a real drawn uniformly from (0, 2**64), i.e. we model
|
|
271
|
-
* X = (2**64) * x:
|
|
272
|
-
*
|
|
273
|
-
* 1 + floor(log2(x) * inv_log2_cp)
|
|
274
|
-
* = 1 + floor(log2(X/2**64) * inv_log2_cp)
|
|
275
|
-
* = 1 + floor((log2(X) - 64) * inv_log2_cp).
|
|
276
|
-
*/
|
|
277
|
-
return 1
|
|
278
|
-
+ static_cast<count>(
|
|
279
|
-
std::floor((std::log2(random_prob) - 8 * sizeof(integral_t)) * inv_log2_cp));
|
|
280
|
-
}
|
|
281
|
-
|
|
282
|
-
count skip_distance(double random_prob, double inv_log2_cp) const {
|
|
283
|
-
return 1 + static_cast<count>(std::floor((std::log2(random_prob)) * inv_log2_cp));
|
|
284
|
-
}
|
|
285
|
-
|
|
286
|
-
// SFINAE to determine and construct the right uniform distribution
|
|
287
|
-
template <bool FixedPoint>
|
|
288
|
-
auto get_distribution() const ->
|
|
289
|
-
typename std::enable_if<FixedPoint, std::uniform_int_distribution<integral_t>>::type {
|
|
290
|
-
return std::uniform_int_distribution<integral_t>{1, std::numeric_limits<integral_t>::max()};
|
|
291
|
-
}
|
|
292
|
-
|
|
293
|
-
template <bool FixedPoint>
|
|
294
|
-
auto get_distribution() const ->
|
|
295
|
-
typename std::enable_if<!FixedPoint, std::uniform_real_distribution<double>>::type {
|
|
296
|
-
return std::uniform_real_distribution<double>{std::nextafter(0.0, 1.0),
|
|
297
|
-
std::nextafter(1.0, 0.0)};
|
|
298
|
-
}
|
|
299
|
-
|
|
300
|
-
// SFINAE to allow using functors with and without thread id as parameter
|
|
301
|
-
template <typename Handle>
|
|
302
|
-
auto callHandle(Handle h, unsigned tid, node u, node v) const
|
|
303
|
-
-> decltype(h(0u, node{0}, node{0})) {
|
|
304
|
-
return h(tid, u, v);
|
|
305
|
-
}
|
|
306
|
-
|
|
307
|
-
template <typename Handle>
|
|
308
|
-
auto callHandle(Handle h, unsigned /*tid*/, node u, node v) const
|
|
309
|
-
-> decltype(h(node{0}, node{0})) {
|
|
310
|
-
return h(u, v);
|
|
311
|
-
}
|
|
312
|
-
};
|
|
313
|
-
|
|
314
|
-
using ErdosRenyiEnumeratorDefault = ErdosRenyiEnumerator<true>;
|
|
315
|
-
|
|
316
|
-
} // namespace NetworKit
|
|
317
|
-
|
|
318
|
-
#endif // NETWORKIT_GENERATORS_ERDOS_RENYI_ENUMERATOR_HPP_
|
|
@@ -1,56 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
* ErdosRenyiGenerator.hpp
|
|
3
|
-
*
|
|
4
|
-
* Created on: 21.01.2014
|
|
5
|
-
* Author: Henning
|
|
6
|
-
*/
|
|
7
|
-
|
|
8
|
-
#ifndef NETWORKIT_GENERATORS_ERDOS_RENYI_GENERATOR_HPP_
|
|
9
|
-
#define NETWORKIT_GENERATORS_ERDOS_RENYI_GENERATOR_HPP_
|
|
10
|
-
|
|
11
|
-
#include <networkit/generators/StaticGraphGenerator.hpp>
|
|
12
|
-
|
|
13
|
-
namespace NetworKit {
|
|
14
|
-
/**
|
|
15
|
-
* @ingroup generators
|
|
16
|
-
* Creates G(n, p) graphs.
|
|
17
|
-
*
|
|
18
|
-
* This class is a wrapper to @ref ErdosRenyiEnumerator.
|
|
19
|
-
*/
|
|
20
|
-
class ErdosRenyiGenerator final : public StaticGraphGenerator {
|
|
21
|
-
public:
|
|
22
|
-
/**
|
|
23
|
-
* Creates random graphs in the G(n,p) model.
|
|
24
|
-
* The generation follows a parallelized version of Vladimir Batagelj
|
|
25
|
-
* and Ulrik Brandes: "Efficient generation of large random networks",
|
|
26
|
-
* Phys Rev E 71, 036113 (2005) with a runtime of O((n+m) / P) (WHP),
|
|
27
|
-
* where n, m, and P are the numbers of nodes, edges and parallel threads
|
|
28
|
-
* respectively.
|
|
29
|
-
*
|
|
30
|
-
* The generator can also be used to generate empty or complete graphs
|
|
31
|
-
* efficiently by setting (p = 0.0 or p = 1.0). Observe that this is
|
|
32
|
-
* implemented as a special case and requires p to be exactly zero or
|
|
33
|
-
* one.
|
|
34
|
-
*
|
|
35
|
-
* @warning For compatibility reasons, the generator does not produce
|
|
36
|
-
* self-loops by default.
|
|
37
|
-
*
|
|
38
|
-
* @param nNodes Number of nodes n in the graph.
|
|
39
|
-
* @param prob Probability of existence for each edge p.
|
|
40
|
-
* @param directed generates a directed graph
|
|
41
|
-
* @param self_loops Controls whether a directed graph may contain self_loops
|
|
42
|
-
* (undirected graphs never have them)
|
|
43
|
-
*/
|
|
44
|
-
ErdosRenyiGenerator(count nNodes, double prob, bool directed = false, bool self_loops = false);
|
|
45
|
-
|
|
46
|
-
GraphW generate() override;
|
|
47
|
-
|
|
48
|
-
private:
|
|
49
|
-
node nNodes;
|
|
50
|
-
double prob;
|
|
51
|
-
bool directed;
|
|
52
|
-
bool self_loops;
|
|
53
|
-
};
|
|
54
|
-
|
|
55
|
-
} /* namespace NetworKit */
|
|
56
|
-
#endif // NETWORKIT_GENERATORS_ERDOS_RENYI_GENERATOR_HPP_
|
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
* HavelHakimiGenerator.hpp
|
|
3
|
-
*
|
|
4
|
-
* Created on: Dec 10, 2013
|
|
5
|
-
* Author: Henning
|
|
6
|
-
*/
|
|
7
|
-
|
|
8
|
-
#ifndef NETWORKIT_GENERATORS_HAVEL_HAKIMI_GENERATOR_HPP_
|
|
9
|
-
#define NETWORKIT_GENERATORS_HAVEL_HAKIMI_GENERATOR_HPP_
|
|
10
|
-
|
|
11
|
-
#include <vector>
|
|
12
|
-
|
|
13
|
-
#include <networkit/generators/StaticDegreeSequenceGenerator.hpp>
|
|
14
|
-
#include <networkit/graph/Graph.hpp>
|
|
15
|
-
|
|
16
|
-
namespace NetworKit {
|
|
17
|
-
|
|
18
|
-
/**
|
|
19
|
-
* @ingroup generators
|
|
20
|
-
* Havel-Hakimi algorithm for generating a graph according to a given degree sequence.
|
|
21
|
-
* The sequence, if it is realizable, is reconstructed exactly.
|
|
22
|
-
* The resulting graph usually has a high clustering coefficient.
|
|
23
|
-
* Construction runs in linear time O(m). However, the test if a sequence is realizable
|
|
24
|
-
* is quadratic in the sequence length.
|
|
25
|
-
*/
|
|
26
|
-
class HavelHakimiGenerator final : public StaticDegreeSequenceGenerator {
|
|
27
|
-
public:
|
|
28
|
-
/**
|
|
29
|
-
* @param[in] sequence Degree sequence to realize. Must be non-increasing.
|
|
30
|
-
* @param[in] ignoreIfRealizable If true, generate the graph even if the degree sequence is not
|
|
31
|
-
* realizable. Some nodes may get lower degrees than requested in the sequence.
|
|
32
|
-
*/
|
|
33
|
-
HavelHakimiGenerator(const std::vector<count> &sequence, bool ignoreIfRealizable = false);
|
|
34
|
-
|
|
35
|
-
/**
|
|
36
|
-
* Generates degree sequence seq (if it is realizable).
|
|
37
|
-
* @throws std::runtime_error If the sequence is not realizable and ignoreIfRealizable is false.
|
|
38
|
-
* @return Graph with degree sequence seq or modified sequence if ignoreIfRealizable is true and
|
|
39
|
-
* the sequence is not realizable.
|
|
40
|
-
*/
|
|
41
|
-
GraphW generate() override;
|
|
42
|
-
|
|
43
|
-
private:
|
|
44
|
-
bool ignoreIfRealizable;
|
|
45
|
-
};
|
|
46
|
-
|
|
47
|
-
} /* namespace NetworKit */
|
|
48
|
-
#endif // NETWORKIT_GENERATORS_HAVEL_HAKIMI_GENERATOR_HPP_
|