@ladybugmem/icebug 0.1.0
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/README.md +14 -0
- package/binding.gyp +54 -0
- package/build/Release/.deps/Release/icebug.node.d +1 -0
- package/build/Release/.deps/Release/obj.target/icebug/src/addon.o.d +291 -0
- package/build/Release/icebug.node +0 -0
- package/build/Release/obj.target/icebug/src/addon.o +0 -0
- package/lib/index.d.ts +361 -0
- package/lib/index.js +102 -0
- package/package.json +42 -0
- package/src/addon.cpp +1253 -0
- package/vendor/include/networkit/GlobalState.hpp +86 -0
- package/vendor/include/networkit/Globals.hpp +41 -0
- package/vendor/include/networkit/algebraic/AlgebraicGlobals.hpp +27 -0
- package/vendor/include/networkit/algebraic/CSRGeneralMatrix.hpp +1292 -0
- package/vendor/include/networkit/algebraic/CSRMatrix.hpp +11 -0
- package/vendor/include/networkit/algebraic/DenseMatrix.hpp +537 -0
- package/vendor/include/networkit/algebraic/DynamicMatrix.hpp +514 -0
- package/vendor/include/networkit/algebraic/GraphBLAS.hpp +323 -0
- package/vendor/include/networkit/algebraic/MatrixTools.hpp +156 -0
- package/vendor/include/networkit/algebraic/Semirings.hpp +171 -0
- package/vendor/include/networkit/algebraic/SparseAccumulator.hpp +111 -0
- package/vendor/include/networkit/algebraic/Vector.hpp +371 -0
- package/vendor/include/networkit/algebraic/algorithms/AlgebraicBFS.hpp +72 -0
- package/vendor/include/networkit/algebraic/algorithms/AlgebraicBellmanFord.hpp +88 -0
- package/vendor/include/networkit/algebraic/algorithms/AlgebraicMatchingCoarsening.hpp +96 -0
- package/vendor/include/networkit/algebraic/algorithms/AlgebraicPageRank.hpp +145 -0
- package/vendor/include/networkit/algebraic/algorithms/AlgebraicSpanningEdgeCentrality.hpp +122 -0
- package/vendor/include/networkit/algebraic/algorithms/AlgebraicTriangleCounting.hpp +76 -0
- package/vendor/include/networkit/auxiliary/AlignedAllocator.hpp +113 -0
- package/vendor/include/networkit/auxiliary/ArrayTools.hpp +85 -0
- package/vendor/include/networkit/auxiliary/BloomFilter.hpp +70 -0
- package/vendor/include/networkit/auxiliary/BucketPQ.hpp +142 -0
- package/vendor/include/networkit/auxiliary/Enforce.hpp +117 -0
- package/vendor/include/networkit/auxiliary/FunctionTraits.hpp +74 -0
- package/vendor/include/networkit/auxiliary/HashUtils.hpp +28 -0
- package/vendor/include/networkit/auxiliary/IncrementalUniformRandomSelector.hpp +52 -0
- package/vendor/include/networkit/auxiliary/Log.hpp +119 -0
- package/vendor/include/networkit/auxiliary/MissingMath.hpp +48 -0
- package/vendor/include/networkit/auxiliary/Multiprecision.hpp +17 -0
- package/vendor/include/networkit/auxiliary/NumberParsing.hpp +307 -0
- package/vendor/include/networkit/auxiliary/NumericTools.hpp +57 -0
- package/vendor/include/networkit/auxiliary/Parallel.hpp +56 -0
- package/vendor/include/networkit/auxiliary/Parallelism.hpp +33 -0
- package/vendor/include/networkit/auxiliary/PrioQueue.hpp +252 -0
- package/vendor/include/networkit/auxiliary/Random.hpp +122 -0
- package/vendor/include/networkit/auxiliary/SetIntersector.hpp +72 -0
- package/vendor/include/networkit/auxiliary/SignalHandling.hpp +39 -0
- package/vendor/include/networkit/auxiliary/SortedList.hpp +128 -0
- package/vendor/include/networkit/auxiliary/SparseVector.hpp +215 -0
- package/vendor/include/networkit/auxiliary/SpinLock.hpp +23 -0
- package/vendor/include/networkit/auxiliary/StringBuilder.hpp +322 -0
- package/vendor/include/networkit/auxiliary/StringTools.hpp +76 -0
- package/vendor/include/networkit/auxiliary/TemplateUtils.hpp +76 -0
- package/vendor/include/networkit/auxiliary/Timer.hpp +145 -0
- package/vendor/include/networkit/auxiliary/VectorComparator.hpp +32 -0
- package/vendor/include/networkit/base/Algorithm.hpp +41 -0
- package/vendor/include/networkit/base/DynAlgorithm.hpp +31 -0
- package/vendor/include/networkit/centrality/ApproxBetweenness.hpp +62 -0
- package/vendor/include/networkit/centrality/ApproxCloseness.hpp +136 -0
- package/vendor/include/networkit/centrality/ApproxElectricalCloseness.hpp +156 -0
- package/vendor/include/networkit/centrality/ApproxGroupBetweenness.hpp +124 -0
- package/vendor/include/networkit/centrality/ApproxSpanningEdge.hpp +84 -0
- package/vendor/include/networkit/centrality/Betweenness.hpp +47 -0
- package/vendor/include/networkit/centrality/Centrality.hpp +98 -0
- package/vendor/include/networkit/centrality/Closeness.hpp +107 -0
- package/vendor/include/networkit/centrality/ComplexPaths.hpp +113 -0
- package/vendor/include/networkit/centrality/CoreDecomposition.hpp +161 -0
- package/vendor/include/networkit/centrality/DegreeCentrality.hpp +55 -0
- package/vendor/include/networkit/centrality/DynApproxBetweenness.hpp +95 -0
- package/vendor/include/networkit/centrality/DynBetweenness.hpp +99 -0
- package/vendor/include/networkit/centrality/DynBetweennessOneNode.hpp +98 -0
- package/vendor/include/networkit/centrality/DynKatzCentrality.hpp +115 -0
- package/vendor/include/networkit/centrality/DynTopHarmonicCloseness.hpp +223 -0
- package/vendor/include/networkit/centrality/EigenvectorCentrality.hpp +41 -0
- package/vendor/include/networkit/centrality/EstimateBetweenness.hpp +51 -0
- package/vendor/include/networkit/centrality/ForestCentrality.hpp +112 -0
- package/vendor/include/networkit/centrality/GedWalk.hpp +225 -0
- package/vendor/include/networkit/centrality/GroupCloseness.hpp +115 -0
- package/vendor/include/networkit/centrality/GroupClosenessGrowShrink.hpp +78 -0
- package/vendor/include/networkit/centrality/GroupClosenessLocalSearch.hpp +77 -0
- package/vendor/include/networkit/centrality/GroupClosenessLocalSwaps.hpp +106 -0
- package/vendor/include/networkit/centrality/GroupDegree.hpp +155 -0
- package/vendor/include/networkit/centrality/GroupHarmonicCloseness.hpp +83 -0
- package/vendor/include/networkit/centrality/HarmonicCloseness.hpp +48 -0
- package/vendor/include/networkit/centrality/KPathCentrality.hpp +52 -0
- package/vendor/include/networkit/centrality/KadabraBetweenness.hpp +242 -0
- package/vendor/include/networkit/centrality/KatzCentrality.hpp +62 -0
- package/vendor/include/networkit/centrality/LaplacianCentrality.hpp +44 -0
- package/vendor/include/networkit/centrality/LocalClusteringCoefficient.hpp +60 -0
- package/vendor/include/networkit/centrality/LocalPartitionCoverage.hpp +43 -0
- package/vendor/include/networkit/centrality/LocalSquareClusteringCoefficient.hpp +42 -0
- package/vendor/include/networkit/centrality/PageRank.hpp +101 -0
- package/vendor/include/networkit/centrality/PermanenceCentrality.hpp +48 -0
- package/vendor/include/networkit/centrality/Sfigality.hpp +45 -0
- package/vendor/include/networkit/centrality/SpanningEdgeCentrality.hpp +86 -0
- package/vendor/include/networkit/centrality/TopCloseness.hpp +136 -0
- package/vendor/include/networkit/centrality/TopHarmonicCloseness.hpp +151 -0
- package/vendor/include/networkit/clique/MaximalCliques.hpp +83 -0
- package/vendor/include/networkit/coarsening/ClusteringProjector.hpp +59 -0
- package/vendor/include/networkit/coarsening/CoarsenedGraphView.hpp +156 -0
- package/vendor/include/networkit/coarsening/GraphCoarsening.hpp +57 -0
- package/vendor/include/networkit/coarsening/MatchingCoarsening.hpp +43 -0
- package/vendor/include/networkit/coarsening/ParallelPartitionCoarsening.hpp +33 -0
- package/vendor/include/networkit/coarsening/ParallelPartitionCoarseningView.hpp +62 -0
- package/vendor/include/networkit/community/AdjustedRandMeasure.hpp +31 -0
- package/vendor/include/networkit/community/ClusteringGenerator.hpp +75 -0
- package/vendor/include/networkit/community/CommunityDetectionAlgorithm.hpp +58 -0
- package/vendor/include/networkit/community/Conductance.hpp +32 -0
- package/vendor/include/networkit/community/CoverF1Similarity.hpp +53 -0
- package/vendor/include/networkit/community/CoverHubDominance.hpp +38 -0
- package/vendor/include/networkit/community/Coverage.hpp +25 -0
- package/vendor/include/networkit/community/CutClustering.hpp +62 -0
- package/vendor/include/networkit/community/DissimilarityMeasure.hpp +31 -0
- package/vendor/include/networkit/community/DynamicNMIDistance.hpp +44 -0
- package/vendor/include/networkit/community/EdgeCut.hpp +24 -0
- package/vendor/include/networkit/community/GraphClusteringTools.hpp +103 -0
- package/vendor/include/networkit/community/GraphStructuralRandMeasure.hpp +28 -0
- package/vendor/include/networkit/community/HubDominance.hpp +46 -0
- package/vendor/include/networkit/community/IntrapartitionDensity.hpp +44 -0
- package/vendor/include/networkit/community/IsolatedInterpartitionConductance.hpp +40 -0
- package/vendor/include/networkit/community/IsolatedInterpartitionExpansion.hpp +40 -0
- package/vendor/include/networkit/community/JaccardMeasure.hpp +25 -0
- package/vendor/include/networkit/community/LFM.hpp +49 -0
- package/vendor/include/networkit/community/LPDegreeOrdered.hpp +48 -0
- package/vendor/include/networkit/community/LocalCommunityEvaluation.hpp +100 -0
- package/vendor/include/networkit/community/LocalCoverEvaluation.hpp +31 -0
- package/vendor/include/networkit/community/LocalPartitionEvaluation.hpp +31 -0
- package/vendor/include/networkit/community/LouvainMapEquation.hpp +135 -0
- package/vendor/include/networkit/community/Modularity.hpp +54 -0
- package/vendor/include/networkit/community/NMIDistance.hpp +28 -0
- package/vendor/include/networkit/community/NodeStructuralRandMeasure.hpp +27 -0
- package/vendor/include/networkit/community/OverlappingCommunityDetectionAlgorithm.hpp +51 -0
- package/vendor/include/networkit/community/OverlappingNMIDistance.hpp +175 -0
- package/vendor/include/networkit/community/PLM.hpp +89 -0
- package/vendor/include/networkit/community/PLP.hpp +83 -0
- package/vendor/include/networkit/community/ParallelAgglomerativeClusterer.hpp +37 -0
- package/vendor/include/networkit/community/ParallelLeiden.hpp +96 -0
- package/vendor/include/networkit/community/ParallelLeidenView.hpp +138 -0
- package/vendor/include/networkit/community/PartitionFragmentation.hpp +30 -0
- package/vendor/include/networkit/community/PartitionHubDominance.hpp +37 -0
- package/vendor/include/networkit/community/PartitionIntersection.hpp +25 -0
- package/vendor/include/networkit/community/QualityMeasure.hpp +27 -0
- package/vendor/include/networkit/community/SampledGraphStructuralRandMeasure.hpp +40 -0
- package/vendor/include/networkit/community/SampledNodeStructuralRandMeasure.hpp +40 -0
- package/vendor/include/networkit/community/StablePartitionNodes.hpp +48 -0
- package/vendor/include/networkit/components/BiconnectedComponents.hpp +116 -0
- package/vendor/include/networkit/components/ComponentDecomposition.hpp +72 -0
- package/vendor/include/networkit/components/ConnectedComponents.hpp +55 -0
- package/vendor/include/networkit/components/DynConnectedComponents.hpp +71 -0
- package/vendor/include/networkit/components/DynWeaklyConnectedComponents.hpp +73 -0
- package/vendor/include/networkit/components/ParallelConnectedComponents.hpp +44 -0
- package/vendor/include/networkit/components/RandomSpanningForest.hpp +36 -0
- package/vendor/include/networkit/components/StronglyConnectedComponents.hpp +50 -0
- package/vendor/include/networkit/components/WeaklyConnectedComponents.hpp +59 -0
- package/vendor/include/networkit/correlation/Assortativity.hpp +64 -0
- package/vendor/include/networkit/distance/APSP.hpp +70 -0
- package/vendor/include/networkit/distance/AStar.hpp +68 -0
- package/vendor/include/networkit/distance/AStarGeneral.hpp +110 -0
- package/vendor/include/networkit/distance/AdamicAdarDistance.hpp +52 -0
- package/vendor/include/networkit/distance/AffectedNodes.hpp +130 -0
- package/vendor/include/networkit/distance/AlgebraicDistance.hpp +63 -0
- package/vendor/include/networkit/distance/BFS.hpp +43 -0
- package/vendor/include/networkit/distance/BidirectionalBFS.hpp +51 -0
- package/vendor/include/networkit/distance/BidirectionalDijkstra.hpp +69 -0
- package/vendor/include/networkit/distance/CommuteTimeDistance.hpp +89 -0
- package/vendor/include/networkit/distance/Diameter.hpp +97 -0
- package/vendor/include/networkit/distance/Dijkstra.hpp +50 -0
- package/vendor/include/networkit/distance/DynAPSP.hpp +67 -0
- package/vendor/include/networkit/distance/DynBFS.hpp +56 -0
- package/vendor/include/networkit/distance/DynDijkstra.hpp +57 -0
- package/vendor/include/networkit/distance/DynPrunedLandmarkLabeling.hpp +67 -0
- package/vendor/include/networkit/distance/DynSSSP.hpp +87 -0
- package/vendor/include/networkit/distance/Eccentricity.hpp +32 -0
- package/vendor/include/networkit/distance/EffectiveDiameter.hpp +47 -0
- package/vendor/include/networkit/distance/EffectiveDiameterApproximation.hpp +57 -0
- package/vendor/include/networkit/distance/FloydWarshall.hpp +93 -0
- package/vendor/include/networkit/distance/GraphDistance.hpp +49 -0
- package/vendor/include/networkit/distance/HopPlotApproximation.hpp +62 -0
- package/vendor/include/networkit/distance/IncompleteDijkstra.hpp +66 -0
- package/vendor/include/networkit/distance/IncompleteSSSP.hpp +41 -0
- package/vendor/include/networkit/distance/JaccardDistance.hpp +57 -0
- package/vendor/include/networkit/distance/MultiTargetBFS.hpp +32 -0
- package/vendor/include/networkit/distance/MultiTargetDijkstra.hpp +40 -0
- package/vendor/include/networkit/distance/NeighborhoodFunction.hpp +47 -0
- package/vendor/include/networkit/distance/NeighborhoodFunctionApproximation.hpp +56 -0
- package/vendor/include/networkit/distance/NeighborhoodFunctionHeuristic.hpp +56 -0
- package/vendor/include/networkit/distance/NodeDistance.hpp +54 -0
- package/vendor/include/networkit/distance/PrunedLandmarkLabeling.hpp +76 -0
- package/vendor/include/networkit/distance/ReverseBFS.hpp +46 -0
- package/vendor/include/networkit/distance/SPSP.hpp +143 -0
- package/vendor/include/networkit/distance/SSSP.hpp +216 -0
- package/vendor/include/networkit/distance/STSP.hpp +193 -0
- package/vendor/include/networkit/distance/Volume.hpp +66 -0
- package/vendor/include/networkit/dynamics/DGSStreamParser.hpp +40 -0
- package/vendor/include/networkit/dynamics/DGSWriter.hpp +30 -0
- package/vendor/include/networkit/dynamics/GraphDifference.hpp +110 -0
- package/vendor/include/networkit/dynamics/GraphEvent.hpp +55 -0
- package/vendor/include/networkit/dynamics/GraphEventHandler.hpp +39 -0
- package/vendor/include/networkit/dynamics/GraphEventProxy.hpp +55 -0
- package/vendor/include/networkit/dynamics/GraphUpdater.hpp +38 -0
- package/vendor/include/networkit/edgescores/ChibaNishizekiQuadrangleEdgeScore.hpp +26 -0
- package/vendor/include/networkit/edgescores/ChibaNishizekiTriangleEdgeScore.hpp +33 -0
- package/vendor/include/networkit/edgescores/EdgeScore.hpp +50 -0
- package/vendor/include/networkit/edgescores/EdgeScoreAsWeight.hpp +33 -0
- package/vendor/include/networkit/edgescores/EdgeScoreBlender.hpp +33 -0
- package/vendor/include/networkit/edgescores/EdgeScoreLinearizer.hpp +32 -0
- package/vendor/include/networkit/edgescores/EdgeScoreNormalizer.hpp +35 -0
- package/vendor/include/networkit/edgescores/GeometricMeanScore.hpp +29 -0
- package/vendor/include/networkit/edgescores/PrefixJaccardScore.hpp +23 -0
- package/vendor/include/networkit/edgescores/TriangleEdgeScore.hpp +39 -0
- package/vendor/include/networkit/embedding/Node2Vec.hpp +83 -0
- package/vendor/include/networkit/flow/EdmondsKarp.hpp +112 -0
- package/vendor/include/networkit/generators/BarabasiAlbertGenerator.hpp +87 -0
- package/vendor/include/networkit/generators/ChungLuGenerator.hpp +46 -0
- package/vendor/include/networkit/generators/ChungLuGeneratorAlamEtAl.hpp +63 -0
- package/vendor/include/networkit/generators/ClusteredRandomGraphGenerator.hpp +56 -0
- package/vendor/include/networkit/generators/ConfigurationModel.hpp +36 -0
- package/vendor/include/networkit/generators/DorogovtsevMendesGenerator.hpp +33 -0
- package/vendor/include/networkit/generators/DynamicBarabasiAlbertGenerator.hpp +33 -0
- package/vendor/include/networkit/generators/DynamicDGSParser.hpp +51 -0
- package/vendor/include/networkit/generators/DynamicDorogovtsevMendesGenerator.hpp +34 -0
- package/vendor/include/networkit/generators/DynamicForestFireGenerator.hpp +55 -0
- package/vendor/include/networkit/generators/DynamicGraphGenerator.hpp +40 -0
- package/vendor/include/networkit/generators/DynamicGraphSource.hpp +79 -0
- package/vendor/include/networkit/generators/DynamicHyperbolicGenerator.hpp +143 -0
- package/vendor/include/networkit/generators/DynamicPathGenerator.hpp +26 -0
- package/vendor/include/networkit/generators/DynamicPubWebGenerator.hpp +54 -0
- package/vendor/include/networkit/generators/EdgeSwitchingMarkovChainGenerator.hpp +65 -0
- package/vendor/include/networkit/generators/ErdosRenyiEnumerator.hpp +318 -0
- package/vendor/include/networkit/generators/ErdosRenyiGenerator.hpp +56 -0
- package/vendor/include/networkit/generators/HavelHakimiGenerator.hpp +48 -0
- package/vendor/include/networkit/generators/HyperbolicGenerator.hpp +236 -0
- package/vendor/include/networkit/generators/LFRGenerator.hpp +175 -0
- package/vendor/include/networkit/generators/MocnikGenerator.hpp +147 -0
- package/vendor/include/networkit/generators/MocnikGeneratorBasic.hpp +58 -0
- package/vendor/include/networkit/generators/PowerlawDegreeSequence.hpp +128 -0
- package/vendor/include/networkit/generators/PubWebGenerator.hpp +94 -0
- package/vendor/include/networkit/generators/RegularRingLatticeGenerator.hpp +37 -0
- package/vendor/include/networkit/generators/RmatGenerator.hpp +67 -0
- package/vendor/include/networkit/generators/StaticDegreeSequenceGenerator.hpp +42 -0
- package/vendor/include/networkit/generators/StaticGraphGenerator.hpp +30 -0
- package/vendor/include/networkit/generators/StochasticBlockmodel.hpp +41 -0
- package/vendor/include/networkit/generators/WattsStrogatzGenerator.hpp +43 -0
- package/vendor/include/networkit/generators/quadtree/QuadNode.hpp +857 -0
- package/vendor/include/networkit/generators/quadtree/QuadNodeCartesianEuclid.hpp +587 -0
- package/vendor/include/networkit/generators/quadtree/QuadNodePolarEuclid.hpp +726 -0
- package/vendor/include/networkit/generators/quadtree/Quadtree.hpp +232 -0
- package/vendor/include/networkit/generators/quadtree/QuadtreeCartesianEuclid.hpp +149 -0
- package/vendor/include/networkit/generators/quadtree/QuadtreePolarEuclid.hpp +143 -0
- package/vendor/include/networkit/geometric/HyperbolicSpace.hpp +248 -0
- package/vendor/include/networkit/geometric/Point2DWithIndex.hpp +145 -0
- package/vendor/include/networkit/global/ClusteringCoefficient.hpp +42 -0
- package/vendor/include/networkit/global/GlobalClusteringCoefficient.hpp +24 -0
- package/vendor/include/networkit/graph/Attributes.hpp +568 -0
- package/vendor/include/networkit/graph/BFS.hpp +111 -0
- package/vendor/include/networkit/graph/DFS.hpp +71 -0
- package/vendor/include/networkit/graph/Dijkstra.hpp +83 -0
- package/vendor/include/networkit/graph/EdgeIterators.hpp +171 -0
- package/vendor/include/networkit/graph/Graph.hpp +2083 -0
- package/vendor/include/networkit/graph/GraphBuilder.hpp +289 -0
- package/vendor/include/networkit/graph/GraphR.hpp +133 -0
- package/vendor/include/networkit/graph/GraphTools.hpp +589 -0
- package/vendor/include/networkit/graph/GraphW.hpp +1236 -0
- package/vendor/include/networkit/graph/KruskalMSF.hpp +50 -0
- package/vendor/include/networkit/graph/NeighborIterators.hpp +163 -0
- package/vendor/include/networkit/graph/NodeIterators.hpp +127 -0
- package/vendor/include/networkit/graph/PrimMSF.hpp +66 -0
- package/vendor/include/networkit/graph/RandomMaximumSpanningForest.hpp +133 -0
- package/vendor/include/networkit/graph/SpanningForest.hpp +41 -0
- package/vendor/include/networkit/graph/TopologicalSort.hpp +87 -0
- package/vendor/include/networkit/graph/UnionMaximumSpanningForest.hpp +126 -0
- package/vendor/include/networkit/graph/test/GraphBuilderBenchmark.hpp +68 -0
- package/vendor/include/networkit/independentset/IndependentSetFinder.hpp +44 -0
- package/vendor/include/networkit/independentset/Luby.hpp +27 -0
- package/vendor/include/networkit/io/BinaryEdgeListPartitionReader.hpp +45 -0
- package/vendor/include/networkit/io/BinaryEdgeListPartitionWriter.hpp +47 -0
- package/vendor/include/networkit/io/BinaryPartitionReader.hpp +41 -0
- package/vendor/include/networkit/io/BinaryPartitionWriter.hpp +44 -0
- package/vendor/include/networkit/io/CoverReader.hpp +27 -0
- package/vendor/include/networkit/io/CoverWriter.hpp +21 -0
- package/vendor/include/networkit/io/DGSReader.hpp +39 -0
- package/vendor/include/networkit/io/DibapGraphReader.hpp +43 -0
- package/vendor/include/networkit/io/DotGraphWriter.hpp +39 -0
- package/vendor/include/networkit/io/DotPartitionWriter.hpp +23 -0
- package/vendor/include/networkit/io/DynamicGraphReader.hpp +29 -0
- package/vendor/include/networkit/io/EdgeListCoverReader.hpp +35 -0
- package/vendor/include/networkit/io/EdgeListPartitionReader.hpp +43 -0
- package/vendor/include/networkit/io/EdgeListReader.hpp +61 -0
- package/vendor/include/networkit/io/EdgeListWriter.hpp +48 -0
- package/vendor/include/networkit/io/GMLGraphReader.hpp +33 -0
- package/vendor/include/networkit/io/GMLGraphWriter.hpp +33 -0
- package/vendor/include/networkit/io/GraphIO.hpp +52 -0
- package/vendor/include/networkit/io/GraphReader.hpp +40 -0
- package/vendor/include/networkit/io/GraphToolBinaryReader.hpp +71 -0
- package/vendor/include/networkit/io/GraphToolBinaryWriter.hpp +61 -0
- package/vendor/include/networkit/io/GraphWriter.hpp +27 -0
- package/vendor/include/networkit/io/KONECTGraphReader.hpp +44 -0
- package/vendor/include/networkit/io/LineFileReader.hpp +42 -0
- package/vendor/include/networkit/io/METISGraphReader.hpp +36 -0
- package/vendor/include/networkit/io/METISGraphWriter.hpp +29 -0
- package/vendor/include/networkit/io/METISParser.hpp +63 -0
- package/vendor/include/networkit/io/MTXGraphReader.hpp +31 -0
- package/vendor/include/networkit/io/MTXParser.hpp +87 -0
- package/vendor/include/networkit/io/MatrixMarketReader.hpp +33 -0
- package/vendor/include/networkit/io/MatrixReader.hpp +33 -0
- package/vendor/include/networkit/io/MemoryMappedFile.hpp +80 -0
- package/vendor/include/networkit/io/NetworkitBinaryGraph.hpp +144 -0
- package/vendor/include/networkit/io/NetworkitBinaryReader.hpp +50 -0
- package/vendor/include/networkit/io/NetworkitBinaryWriter.hpp +71 -0
- package/vendor/include/networkit/io/PartitionReader.hpp +34 -0
- package/vendor/include/networkit/io/PartitionWriter.hpp +31 -0
- package/vendor/include/networkit/io/RBGraphReader.hpp +37 -0
- package/vendor/include/networkit/io/RBMatrixReader.hpp +49 -0
- package/vendor/include/networkit/io/RasterReader.hpp +40 -0
- package/vendor/include/networkit/io/SNAPEdgeListPartitionReader.hpp +28 -0
- package/vendor/include/networkit/io/SNAPGraphReader.hpp +53 -0
- package/vendor/include/networkit/io/SNAPGraphWriter.hpp +53 -0
- package/vendor/include/networkit/io/ThrillGraphBinaryReader.hpp +44 -0
- package/vendor/include/networkit/io/ThrillGraphBinaryWriter.hpp +27 -0
- package/vendor/include/networkit/layout/LayoutAlgorithm.hpp +39 -0
- package/vendor/include/networkit/linkprediction/AdamicAdarIndex.hpp +37 -0
- package/vendor/include/networkit/linkprediction/AdjustedRandIndex.hpp +36 -0
- package/vendor/include/networkit/linkprediction/AlgebraicDistanceIndex.hpp +70 -0
- package/vendor/include/networkit/linkprediction/CommonNeighborsIndex.hpp +39 -0
- package/vendor/include/networkit/linkprediction/EvaluationMetric.hpp +135 -0
- package/vendor/include/networkit/linkprediction/JaccardIndex.hpp +44 -0
- package/vendor/include/networkit/linkprediction/KatzIndex.hpp +84 -0
- package/vendor/include/networkit/linkprediction/LinkPredictor.hpp +98 -0
- package/vendor/include/networkit/linkprediction/LinkThresholder.hpp +56 -0
- package/vendor/include/networkit/linkprediction/MissingLinksFinder.hpp +60 -0
- package/vendor/include/networkit/linkprediction/NeighborhoodDistanceIndex.hpp +42 -0
- package/vendor/include/networkit/linkprediction/NeighborhoodUtility.hpp +54 -0
- package/vendor/include/networkit/linkprediction/NeighborsMeasureIndex.hpp +48 -0
- package/vendor/include/networkit/linkprediction/PrecisionRecallMetric.hpp +40 -0
- package/vendor/include/networkit/linkprediction/PredictionsSorter.hpp +66 -0
- package/vendor/include/networkit/linkprediction/PreferentialAttachmentIndex.hpp +37 -0
- package/vendor/include/networkit/linkprediction/ROCMetric.hpp +39 -0
- package/vendor/include/networkit/linkprediction/RandomLinkSampler.hpp +47 -0
- package/vendor/include/networkit/linkprediction/ResourceAllocationIndex.hpp +38 -0
- package/vendor/include/networkit/linkprediction/SameCommunityIndex.hpp +50 -0
- package/vendor/include/networkit/linkprediction/TotalNeighborsIndex.hpp +39 -0
- package/vendor/include/networkit/linkprediction/UDegreeIndex.hpp +35 -0
- package/vendor/include/networkit/linkprediction/VDegreeIndex.hpp +35 -0
- package/vendor/include/networkit/matching/BMatcher.hpp +52 -0
- package/vendor/include/networkit/matching/BMatching.hpp +115 -0
- package/vendor/include/networkit/matching/BSuitorMatcher.hpp +170 -0
- package/vendor/include/networkit/matching/DynamicBSuitorMatcher.hpp +78 -0
- package/vendor/include/networkit/matching/LocalMaxMatcher.hpp +35 -0
- package/vendor/include/networkit/matching/Matcher.hpp +55 -0
- package/vendor/include/networkit/matching/Matching.hpp +111 -0
- package/vendor/include/networkit/matching/PathGrowingMatcher.hpp +46 -0
- package/vendor/include/networkit/matching/SuitorMatcher.hpp +62 -0
- package/vendor/include/networkit/numerics/ConjugateGradient.hpp +163 -0
- package/vendor/include/networkit/numerics/GaussSeidelRelaxation.hpp +99 -0
- package/vendor/include/networkit/numerics/LAMG/LAMGSettings.hpp +70 -0
- package/vendor/include/networkit/numerics/LAMG/Lamg.hpp +460 -0
- package/vendor/include/networkit/numerics/LAMG/Level/EliminationStage.hpp +47 -0
- package/vendor/include/networkit/numerics/LAMG/Level/Level.hpp +56 -0
- package/vendor/include/networkit/numerics/LAMG/Level/LevelAggregation.hpp +52 -0
- package/vendor/include/networkit/numerics/LAMG/Level/LevelElimination.hpp +133 -0
- package/vendor/include/networkit/numerics/LAMG/Level/LevelFinest.hpp +28 -0
- package/vendor/include/networkit/numerics/LAMG/LevelHierarchy.hpp +165 -0
- package/vendor/include/networkit/numerics/LAMG/MultiLevelSetup.hpp +1090 -0
- package/vendor/include/networkit/numerics/LAMG/SolverLamg.hpp +316 -0
- package/vendor/include/networkit/numerics/LinearSolver.hpp +151 -0
- package/vendor/include/networkit/numerics/Preconditioner/DiagonalPreconditioner.hpp +61 -0
- package/vendor/include/networkit/numerics/Preconditioner/IdentityPreconditioner.hpp +36 -0
- package/vendor/include/networkit/numerics/Smoother.hpp +37 -0
- package/vendor/include/networkit/overlap/HashingOverlapper.hpp +28 -0
- package/vendor/include/networkit/overlap/Overlapper.hpp +27 -0
- package/vendor/include/networkit/planarity/LeftRightPlanarityCheck.hpp +113 -0
- package/vendor/include/networkit/randomization/Curveball.hpp +49 -0
- package/vendor/include/networkit/randomization/CurveballGlobalTradeGenerator.hpp +39 -0
- package/vendor/include/networkit/randomization/CurveballUniformTradeGenerator.hpp +39 -0
- package/vendor/include/networkit/randomization/DegreePreservingShuffle.hpp +82 -0
- package/vendor/include/networkit/randomization/EdgeSwitching.hpp +157 -0
- package/vendor/include/networkit/randomization/GlobalCurveball.hpp +69 -0
- package/vendor/include/networkit/randomization/GlobalTradeSequence.hpp +303 -0
- package/vendor/include/networkit/reachability/AllSimplePaths.hpp +122 -0
- package/vendor/include/networkit/reachability/ReachableNodes.hpp +83 -0
- package/vendor/include/networkit/scd/ApproximatePageRank.hpp +51 -0
- package/vendor/include/networkit/scd/CliqueDetect.hpp +55 -0
- package/vendor/include/networkit/scd/CombinedSCD.hpp +51 -0
- package/vendor/include/networkit/scd/GCE.hpp +42 -0
- package/vendor/include/networkit/scd/LFMLocal.hpp +54 -0
- package/vendor/include/networkit/scd/LocalT.hpp +40 -0
- package/vendor/include/networkit/scd/LocalTightnessExpansion.hpp +46 -0
- package/vendor/include/networkit/scd/PageRankNibble.hpp +55 -0
- package/vendor/include/networkit/scd/RandomBFS.hpp +33 -0
- package/vendor/include/networkit/scd/SCDGroundTruthComparison.hpp +121 -0
- package/vendor/include/networkit/scd/SelectiveCommunityDetector.hpp +76 -0
- package/vendor/include/networkit/scd/SetConductance.hpp +47 -0
- package/vendor/include/networkit/scd/TCE.hpp +41 -0
- package/vendor/include/networkit/scd/TwoPhaseL.hpp +40 -0
- package/vendor/include/networkit/scoring/EdgeScoring.hpp +44 -0
- package/vendor/include/networkit/scoring/ModularityScoring.hpp +79 -0
- package/vendor/include/networkit/simulation/EpidemicSimulationSEIR.hpp +59 -0
- package/vendor/include/networkit/sparsification/ChanceCorrectedTriangleScore.hpp +28 -0
- package/vendor/include/networkit/sparsification/ForestFireScore.hpp +34 -0
- package/vendor/include/networkit/sparsification/GlobalThresholdFilter.hpp +40 -0
- package/vendor/include/networkit/sparsification/LocalDegreeScore.hpp +30 -0
- package/vendor/include/networkit/sparsification/LocalFilterScore.hpp +124 -0
- package/vendor/include/networkit/sparsification/LocalSimilarityScore.hpp +63 -0
- package/vendor/include/networkit/sparsification/MultiscaleScore.hpp +38 -0
- package/vendor/include/networkit/sparsification/RandomEdgeScore.hpp +33 -0
- package/vendor/include/networkit/sparsification/RandomNodeEdgeScore.hpp +29 -0
- package/vendor/include/networkit/sparsification/SCANStructuralSimilarityScore.hpp +23 -0
- package/vendor/include/networkit/sparsification/SimmelianOverlapScore.hpp +35 -0
- package/vendor/include/networkit/sparsification/SimmelianScore.hpp +92 -0
- package/vendor/include/networkit/sparsification/Sparsifiers.hpp +166 -0
- package/vendor/include/networkit/structures/Cover.hpp +248 -0
- package/vendor/include/networkit/structures/LocalCommunity.hpp +363 -0
- package/vendor/include/networkit/structures/Partition.hpp +335 -0
- package/vendor/include/networkit/structures/UnionFind.hpp +66 -0
- package/vendor/include/networkit/viz/GraphLayoutAlgorithm.hpp +157 -0
- package/vendor/include/networkit/viz/MaxentStress.hpp +346 -0
- package/vendor/include/networkit/viz/Octree.hpp +428 -0
- package/vendor/include/networkit/viz/PivotMDS.hpp +63 -0
- package/vendor/include/networkit/viz/Point.hpp +415 -0
- package/vendor/include/networkit/viz/PostscriptWriter.hpp +78 -0
- package/vendor/include/tlx/algorithm/exclusive_scan.hpp +56 -0
- package/vendor/include/tlx/algorithm/is_sorted_cmp.hpp +56 -0
- package/vendor/include/tlx/algorithm/merge_advance.hpp +177 -0
- package/vendor/include/tlx/algorithm/merge_combine.hpp +76 -0
- package/vendor/include/tlx/algorithm/multisequence_partition.hpp +346 -0
- package/vendor/include/tlx/algorithm/multisequence_selection.hpp +351 -0
- package/vendor/include/tlx/algorithm/multiway_merge.hpp +1385 -0
- package/vendor/include/tlx/algorithm/multiway_merge_splitting.hpp +257 -0
- package/vendor/include/tlx/algorithm/parallel_multiway_merge.hpp +408 -0
- package/vendor/include/tlx/algorithm/random_bipartition_shuffle.hpp +116 -0
- package/vendor/include/tlx/algorithm.hpp +36 -0
- package/vendor/include/tlx/allocator_base.hpp +100 -0
- package/vendor/include/tlx/backtrace.hpp +54 -0
- package/vendor/include/tlx/cmdline_parser.hpp +498 -0
- package/vendor/include/tlx/container/btree.hpp +3977 -0
- package/vendor/include/tlx/container/btree_map.hpp +634 -0
- package/vendor/include/tlx/container/btree_multimap.hpp +627 -0
- package/vendor/include/tlx/container/btree_multiset.hpp +612 -0
- package/vendor/include/tlx/container/btree_set.hpp +612 -0
- package/vendor/include/tlx/container/d_ary_addressable_int_heap.hpp +416 -0
- package/vendor/include/tlx/container/d_ary_heap.hpp +311 -0
- package/vendor/include/tlx/container/loser_tree.hpp +1009 -0
- package/vendor/include/tlx/container/lru_cache.hpp +319 -0
- package/vendor/include/tlx/container/radix_heap.hpp +735 -0
- package/vendor/include/tlx/container/ring_buffer.hpp +428 -0
- package/vendor/include/tlx/container/simple_vector.hpp +304 -0
- package/vendor/include/tlx/container/splay_tree.hpp +399 -0
- package/vendor/include/tlx/container/string_view.hpp +805 -0
- package/vendor/include/tlx/container.hpp +40 -0
- package/vendor/include/tlx/counting_ptr.hpp +522 -0
- package/vendor/include/tlx/define/attribute_always_inline.hpp +34 -0
- package/vendor/include/tlx/define/attribute_fallthrough.hpp +36 -0
- package/vendor/include/tlx/define/attribute_format_printf.hpp +34 -0
- package/vendor/include/tlx/define/attribute_packed.hpp +34 -0
- package/vendor/include/tlx/define/attribute_warn_unused_result.hpp +34 -0
- package/vendor/include/tlx/define/constexpr.hpp +31 -0
- package/vendor/include/tlx/define/deprecated.hpp +39 -0
- package/vendor/include/tlx/define/endian.hpp +49 -0
- package/vendor/include/tlx/define/likely.hpp +33 -0
- package/vendor/include/tlx/define/visibility_hidden.hpp +34 -0
- package/vendor/include/tlx/define.hpp +36 -0
- package/vendor/include/tlx/delegate.hpp +524 -0
- package/vendor/include/tlx/die/core.hpp +311 -0
- package/vendor/include/tlx/die.hpp +106 -0
- package/vendor/include/tlx/digest/md5.hpp +81 -0
- package/vendor/include/tlx/digest/sha1.hpp +81 -0
- package/vendor/include/tlx/digest/sha256.hpp +81 -0
- package/vendor/include/tlx/digest/sha512.hpp +81 -0
- package/vendor/include/tlx/digest.hpp +30 -0
- package/vendor/include/tlx/logger/all.hpp +33 -0
- package/vendor/include/tlx/logger/array.hpp +43 -0
- package/vendor/include/tlx/logger/core.hpp +287 -0
- package/vendor/include/tlx/logger/deque.hpp +42 -0
- package/vendor/include/tlx/logger/map.hpp +65 -0
- package/vendor/include/tlx/logger/set.hpp +60 -0
- package/vendor/include/tlx/logger/tuple.hpp +66 -0
- package/vendor/include/tlx/logger/unordered_map.hpp +68 -0
- package/vendor/include/tlx/logger/unordered_set.hpp +64 -0
- package/vendor/include/tlx/logger/wrap_unprintable.hpp +75 -0
- package/vendor/include/tlx/logger.hpp +44 -0
- package/vendor/include/tlx/math/abs_diff.hpp +35 -0
- package/vendor/include/tlx/math/aggregate.hpp +231 -0
- package/vendor/include/tlx/math/aggregate_min_max.hpp +116 -0
- package/vendor/include/tlx/math/bswap.hpp +148 -0
- package/vendor/include/tlx/math/bswap_be.hpp +79 -0
- package/vendor/include/tlx/math/bswap_le.hpp +79 -0
- package/vendor/include/tlx/math/clz.hpp +174 -0
- package/vendor/include/tlx/math/ctz.hpp +174 -0
- package/vendor/include/tlx/math/div_ceil.hpp +36 -0
- package/vendor/include/tlx/math/ffs.hpp +123 -0
- package/vendor/include/tlx/math/integer_log2.hpp +189 -0
- package/vendor/include/tlx/math/is_power_of_two.hpp +74 -0
- package/vendor/include/tlx/math/polynomial_regression.hpp +243 -0
- package/vendor/include/tlx/math/popcount.hpp +173 -0
- package/vendor/include/tlx/math/power_to_the.hpp +44 -0
- package/vendor/include/tlx/math/rol.hpp +112 -0
- package/vendor/include/tlx/math/ror.hpp +112 -0
- package/vendor/include/tlx/math/round_to_power_of_two.hpp +121 -0
- package/vendor/include/tlx/math/round_up.hpp +36 -0
- package/vendor/include/tlx/math/sgn.hpp +38 -0
- package/vendor/include/tlx/math.hpp +46 -0
- package/vendor/include/tlx/meta/apply_tuple.hpp +55 -0
- package/vendor/include/tlx/meta/call_for_range.hpp +78 -0
- package/vendor/include/tlx/meta/call_foreach.hpp +60 -0
- package/vendor/include/tlx/meta/call_foreach_tuple.hpp +60 -0
- package/vendor/include/tlx/meta/call_foreach_tuple_with_index.hpp +61 -0
- package/vendor/include/tlx/meta/call_foreach_with_index.hpp +64 -0
- package/vendor/include/tlx/meta/enable_if.hpp +37 -0
- package/vendor/include/tlx/meta/fold_left.hpp +63 -0
- package/vendor/include/tlx/meta/fold_left_tuple.hpp +60 -0
- package/vendor/include/tlx/meta/fold_right.hpp +63 -0
- package/vendor/include/tlx/meta/fold_right_tuple.hpp +60 -0
- package/vendor/include/tlx/meta/function_chain.hpp +197 -0
- package/vendor/include/tlx/meta/function_stack.hpp +189 -0
- package/vendor/include/tlx/meta/has_member.hpp +80 -0
- package/vendor/include/tlx/meta/has_method.hpp +117 -0
- package/vendor/include/tlx/meta/index_sequence.hpp +66 -0
- package/vendor/include/tlx/meta/is_std_array.hpp +40 -0
- package/vendor/include/tlx/meta/is_std_pair.hpp +39 -0
- package/vendor/include/tlx/meta/is_std_tuple.hpp +39 -0
- package/vendor/include/tlx/meta/is_std_vector.hpp +39 -0
- package/vendor/include/tlx/meta/log2.hpp +101 -0
- package/vendor/include/tlx/meta/no_operation.hpp +55 -0
- package/vendor/include/tlx/meta/static_index.hpp +42 -0
- package/vendor/include/tlx/meta/vexpand.hpp +34 -0
- package/vendor/include/tlx/meta/vmap_for_range.hpp +84 -0
- package/vendor/include/tlx/meta/vmap_foreach.hpp +63 -0
- package/vendor/include/tlx/meta/vmap_foreach_tuple.hpp +59 -0
- package/vendor/include/tlx/meta/vmap_foreach_tuple_with_index.hpp +62 -0
- package/vendor/include/tlx/meta/vmap_foreach_with_index.hpp +70 -0
- package/vendor/include/tlx/meta.hpp +55 -0
- package/vendor/include/tlx/multi_timer.hpp +148 -0
- package/vendor/include/tlx/port/setenv.hpp +31 -0
- package/vendor/include/tlx/port.hpp +27 -0
- package/vendor/include/tlx/semaphore.hpp +119 -0
- package/vendor/include/tlx/simple_vector.hpp +20 -0
- package/vendor/include/tlx/siphash.hpp +282 -0
- package/vendor/include/tlx/sort/networks/best.hpp +611 -0
- package/vendor/include/tlx/sort/networks/bose_nelson.hpp +412 -0
- package/vendor/include/tlx/sort/networks/bose_nelson_parameter.hpp +507 -0
- package/vendor/include/tlx/sort/networks/cswap.hpp +60 -0
- package/vendor/include/tlx/sort/parallel_mergesort.hpp +398 -0
- package/vendor/include/tlx/sort/strings/insertion_sort.hpp +232 -0
- package/vendor/include/tlx/sort/strings/multikey_quicksort.hpp +185 -0
- package/vendor/include/tlx/sort/strings/parallel_sample_sort.hpp +1647 -0
- package/vendor/include/tlx/sort/strings/radix_sort.hpp +934 -0
- package/vendor/include/tlx/sort/strings/sample_sort_tools.hpp +756 -0
- package/vendor/include/tlx/sort/strings/string_ptr.hpp +426 -0
- package/vendor/include/tlx/sort/strings/string_set.hpp +800 -0
- package/vendor/include/tlx/sort/strings.hpp +329 -0
- package/vendor/include/tlx/sort/strings_parallel.hpp +325 -0
- package/vendor/include/tlx/sort.hpp +29 -0
- package/vendor/include/tlx/stack_allocator.hpp +226 -0
- package/vendor/include/tlx/string/appendline.hpp +35 -0
- package/vendor/include/tlx/string/base64.hpp +87 -0
- package/vendor/include/tlx/string/bitdump.hpp +139 -0
- package/vendor/include/tlx/string/compare_icase.hpp +42 -0
- package/vendor/include/tlx/string/contains.hpp +36 -0
- package/vendor/include/tlx/string/contains_word.hpp +42 -0
- package/vendor/include/tlx/string/ends_with.hpp +79 -0
- package/vendor/include/tlx/string/equal_icase.hpp +42 -0
- package/vendor/include/tlx/string/erase_all.hpp +70 -0
- package/vendor/include/tlx/string/escape_html.hpp +34 -0
- package/vendor/include/tlx/string/escape_uri.hpp +34 -0
- package/vendor/include/tlx/string/expand_environment_variables.hpp +49 -0
- package/vendor/include/tlx/string/extract_between.hpp +40 -0
- package/vendor/include/tlx/string/format_iec_units.hpp +32 -0
- package/vendor/include/tlx/string/format_si_iec_units.hpp +19 -0
- package/vendor/include/tlx/string/format_si_units.hpp +32 -0
- package/vendor/include/tlx/string/hash_djb2.hpp +87 -0
- package/vendor/include/tlx/string/hash_sdbm.hpp +86 -0
- package/vendor/include/tlx/string/hexdump.hpp +154 -0
- package/vendor/include/tlx/string/index_of.hpp +56 -0
- package/vendor/include/tlx/string/join.hpp +65 -0
- package/vendor/include/tlx/string/join_generic.hpp +89 -0
- package/vendor/include/tlx/string/join_quoted.hpp +46 -0
- package/vendor/include/tlx/string/less_icase.hpp +64 -0
- package/vendor/include/tlx/string/levenshtein.hpp +193 -0
- package/vendor/include/tlx/string/pad.hpp +39 -0
- package/vendor/include/tlx/string/parse_si_iec_units.hpp +46 -0
- package/vendor/include/tlx/string/parse_uri.hpp +66 -0
- package/vendor/include/tlx/string/parse_uri_form_data.hpp +136 -0
- package/vendor/include/tlx/string/replace.hpp +141 -0
- package/vendor/include/tlx/string/split.hpp +170 -0
- package/vendor/include/tlx/string/split_quoted.hpp +49 -0
- package/vendor/include/tlx/string/split_view.hpp +218 -0
- package/vendor/include/tlx/string/split_words.hpp +53 -0
- package/vendor/include/tlx/string/ssprintf.hpp +45 -0
- package/vendor/include/tlx/string/ssprintf_generic.hpp +95 -0
- package/vendor/include/tlx/string/starts_with.hpp +44 -0
- package/vendor/include/tlx/string/to_lower.hpp +47 -0
- package/vendor/include/tlx/string/to_upper.hpp +47 -0
- package/vendor/include/tlx/string/trim.hpp +298 -0
- package/vendor/include/tlx/string/union_words.hpp +33 -0
- package/vendor/include/tlx/string/word_wrap.hpp +35 -0
- package/vendor/include/tlx/string.hpp +68 -0
- package/vendor/include/tlx/thread_barrier_mutex.hpp +109 -0
- package/vendor/include/tlx/thread_barrier_spin.hpp +127 -0
- package/vendor/include/tlx/thread_pool.hpp +151 -0
- package/vendor/include/tlx/timestamp.hpp +23 -0
- package/vendor/include/tlx/unused.hpp +28 -0
- package/vendor/include/tlx/vector_free.hpp +30 -0
- package/vendor/include/tlx/version.hpp +49 -0
- package/vendor/include/ttmath/ttmath.h +2881 -0
- package/vendor/include/ttmath/ttmathbig.h +6111 -0
- package/vendor/include/ttmath/ttmathdec.h +419 -0
- package/vendor/include/ttmath/ttmathint.h +1923 -0
- package/vendor/include/ttmath/ttmathmisc.h +250 -0
- package/vendor/include/ttmath/ttmathobjects.h +812 -0
- package/vendor/include/ttmath/ttmathparser.h +2791 -0
- package/vendor/include/ttmath/ttmaththreads.h +252 -0
- package/vendor/include/ttmath/ttmathtypes.h +707 -0
- package/vendor/include/ttmath/ttmathuint.h +4190 -0
- package/vendor/include/ttmath/ttmathuint_noasm.h +1038 -0
- package/vendor/include/ttmath/ttmathuint_x86.h +1620 -0
- package/vendor/include/ttmath/ttmathuint_x86_64.h +1177 -0
- package/vendor/lib/cmake/tlx/tlx-config.cmake +51 -0
- package/vendor/lib/cmake/tlx/tlx-targets-release.cmake +19 -0
- package/vendor/lib/cmake/tlx/tlx-targets.cmake +106 -0
- package/vendor/lib/cmake/tlx/tlx-version.cmake +11 -0
- package/vendor/lib/libnetworkit.dylib +0 -0
- package/vendor/lib/libtlx.a +0 -0
- package/vendor/lib/pkgconfig/networkit.pc +11 -0
- package/vendor/lib/pkgconfig/tlx.pc +11 -0
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* RBMatrixReader.hpp
|
|
3
|
+
*
|
|
4
|
+
* Created on: 16.10.2024
|
|
5
|
+
* Author: bernlu
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
#ifndef NETWORKIT_IO_RB_MATRIX_READER_HPP_
|
|
9
|
+
#define NETWORKIT_IO_RB_MATRIX_READER_HPP_
|
|
10
|
+
|
|
11
|
+
#include <networkit/io/MatrixReader.hpp>
|
|
12
|
+
#include <networkit/io/RBGraphReader.hpp>
|
|
13
|
+
|
|
14
|
+
namespace NetworKit {
|
|
15
|
+
|
|
16
|
+
/**
|
|
17
|
+
* @ingroup io
|
|
18
|
+
* Reader for the Rutherford Boeing (RB) matrix file format as described in
|
|
19
|
+
* http://sparse-files.engr.tamu.edu/files/DOC/rb.pdf.
|
|
20
|
+
*
|
|
21
|
+
* @note currently the reader only supports compressed column format for real, integer, or pattern
|
|
22
|
+
* data types.
|
|
23
|
+
*/
|
|
24
|
+
class RBMatrixReader final : public MatrixReader {
|
|
25
|
+
public:
|
|
26
|
+
RBMatrixReader() = default;
|
|
27
|
+
|
|
28
|
+
CSRMatrix read(std::string_view path) override;
|
|
29
|
+
|
|
30
|
+
/** Reads the matrix in @a in. */
|
|
31
|
+
CSRMatrix read(std::istream &in);
|
|
32
|
+
|
|
33
|
+
private:
|
|
34
|
+
friend RBGraphReader;
|
|
35
|
+
// data format is CSC
|
|
36
|
+
std::vector<index> pointers;
|
|
37
|
+
std::vector<index> rowindex;
|
|
38
|
+
std::vector<double> values;
|
|
39
|
+
|
|
40
|
+
count nMatrixRows;
|
|
41
|
+
count nMatrixCols;
|
|
42
|
+
count nMatrixVals;
|
|
43
|
+
bool symmetric = false;
|
|
44
|
+
bool patternOnly = false;
|
|
45
|
+
void readToVectors(std::istream &in);
|
|
46
|
+
};
|
|
47
|
+
|
|
48
|
+
} // namespace NetworKit
|
|
49
|
+
#endif // NETWORKIT_IO_RB_MATRIX_READER_HPP_
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* RasterReader.hpp
|
|
3
|
+
*
|
|
4
|
+
* Created on: 20.07.2015
|
|
5
|
+
* Author: Henning
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
#ifndef NETWORKIT_IO_RASTER_READER_HPP_
|
|
9
|
+
#define NETWORKIT_IO_RASTER_READER_HPP_
|
|
10
|
+
|
|
11
|
+
#include <string>
|
|
12
|
+
#include <vector>
|
|
13
|
+
|
|
14
|
+
namespace NetworKit {
|
|
15
|
+
|
|
16
|
+
/**
|
|
17
|
+
* Reader for NASA raster data of population.
|
|
18
|
+
* Coordinate transformation into the unit square takes place.
|
|
19
|
+
* Within each grid cell, points get a random location.
|
|
20
|
+
*/
|
|
21
|
+
class RasterReader final {
|
|
22
|
+
double normalizationFactor;
|
|
23
|
+
|
|
24
|
+
public:
|
|
25
|
+
/**
|
|
26
|
+
* @param[in] Factor by which population per grid cell should be multiplied
|
|
27
|
+
*/
|
|
28
|
+
RasterReader(double normalizationFactor);
|
|
29
|
+
|
|
30
|
+
~RasterReader() = default;
|
|
31
|
+
|
|
32
|
+
/**
|
|
33
|
+
* @param[in] path Path and name of file to be read.
|
|
34
|
+
* @return Vectors of x- and y-coordinates of the points.
|
|
35
|
+
*/
|
|
36
|
+
std::pair<std::vector<double>, std::vector<double>> read(std::string_view path);
|
|
37
|
+
};
|
|
38
|
+
|
|
39
|
+
} /* namespace NetworKit */
|
|
40
|
+
#endif // NETWORKIT_IO_RASTER_READER_HPP_
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* SNAPEdgeListPartitionReader.hpp
|
|
3
|
+
*
|
|
4
|
+
* Created on: Jun 20, 2013
|
|
5
|
+
* Author: forigem
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
#ifndef NETWORKIT_IO_SNAP_EDGE_LIST_PARTITION_READER_HPP_
|
|
9
|
+
#define NETWORKIT_IO_SNAP_EDGE_LIST_PARTITION_READER_HPP_
|
|
10
|
+
|
|
11
|
+
#include <unordered_map>
|
|
12
|
+
|
|
13
|
+
#include <networkit/graph/Graph.hpp>
|
|
14
|
+
#include <networkit/structures/Cover.hpp>
|
|
15
|
+
|
|
16
|
+
namespace NetworKit {
|
|
17
|
+
|
|
18
|
+
/**
|
|
19
|
+
* @ingroup io
|
|
20
|
+
* Reads the clustering files from the SNAP collection.
|
|
21
|
+
*/
|
|
22
|
+
class SNAPEdgeListPartitionReader final {
|
|
23
|
+
public:
|
|
24
|
+
Cover read(std::string_view path, std::unordered_map<node, node> &mapNodeIds, Graph &G);
|
|
25
|
+
};
|
|
26
|
+
|
|
27
|
+
} /* namespace NetworKit */
|
|
28
|
+
#endif // NETWORKIT_IO_SNAP_EDGE_LIST_PARTITION_READER_HPP_
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* SNAPGraphReader.hpp
|
|
3
|
+
*
|
|
4
|
+
* Created on: 04.05.2018
|
|
5
|
+
* Author: Alexander van der Grinten
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
#ifndef NETWORKIT_IO_SNAP_GRAPH_READER_HPP_
|
|
9
|
+
#define NETWORKIT_IO_SNAP_GRAPH_READER_HPP_
|
|
10
|
+
|
|
11
|
+
#include <unordered_map>
|
|
12
|
+
|
|
13
|
+
#include <networkit/graph/Graph.hpp>
|
|
14
|
+
#include <networkit/io/GraphReader.hpp>
|
|
15
|
+
|
|
16
|
+
namespace NetworKit {
|
|
17
|
+
|
|
18
|
+
/**
|
|
19
|
+
* @ingroup io
|
|
20
|
+
*/
|
|
21
|
+
class SNAPGraphReader final : public GraphReader {
|
|
22
|
+
std::unordered_map<node, node> nodeIdMap;
|
|
23
|
+
bool directed;
|
|
24
|
+
count nodeCount;
|
|
25
|
+
bool remapNodes;
|
|
26
|
+
|
|
27
|
+
public:
|
|
28
|
+
/**
|
|
29
|
+
* Default constructor for the SNAPGraphReader.
|
|
30
|
+
* NOTE: Keep in mind that many SNAP graphs do not have consecutive node ids.
|
|
31
|
+
* Passing a "false" in remapNodes forces the reader to add nodes for the highest occuring node
|
|
32
|
+
* id. This may result in a lot of isolated nodes, but further increases the speed of x2(in
|
|
33
|
+
* benchmarking)
|
|
34
|
+
*
|
|
35
|
+
* @param[in] directed reads in the graph as directed, if set to true
|
|
36
|
+
* @param[in] remapNodes indicates whether nodes should be remapped to other node ids in order
|
|
37
|
+
* to create consecutive node ids
|
|
38
|
+
* @param[in] nodeCount nodeCount is used to preallocated memory for the number of nodes
|
|
39
|
+
*/
|
|
40
|
+
SNAPGraphReader(bool directed = false, const bool &remapNodes = true,
|
|
41
|
+
const count &nodeCount = 0);
|
|
42
|
+
|
|
43
|
+
/**
|
|
44
|
+
* Given the path of an input file, read the graph contained.
|
|
45
|
+
*
|
|
46
|
+
* @param[in] path input file path
|
|
47
|
+
*/
|
|
48
|
+
GraphW read(std::string_view path) override;
|
|
49
|
+
};
|
|
50
|
+
|
|
51
|
+
} /* namespace NetworKit */
|
|
52
|
+
|
|
53
|
+
#endif // NETWORKIT_IO_SNAP_GRAPH_READER_HPP_
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* SNAPGraphWriter.hpp
|
|
3
|
+
*
|
|
4
|
+
* Created on: 24.09.2013
|
|
5
|
+
* Author: cls
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
#ifndef NETWORKIT_IO_SNAP_GRAPH_WRITER_HPP_
|
|
9
|
+
#define NETWORKIT_IO_SNAP_GRAPH_WRITER_HPP_
|
|
10
|
+
|
|
11
|
+
#include <networkit/io/GraphWriter.hpp>
|
|
12
|
+
|
|
13
|
+
namespace NetworKit {
|
|
14
|
+
|
|
15
|
+
/**
|
|
16
|
+
* @ingroup io
|
|
17
|
+
* Write graph in the Georgia Tech SNAP (Small-world Network
|
|
18
|
+
* Analysis and Partitioning) (http://snap-graph.sourceforge.net/)
|
|
19
|
+
* file format (do not confuse this with the Stanford Network Analysis Project.)
|
|
20
|
+
* From the SNAP user guide:
|
|
21
|
+
*
|
|
22
|
+
* A sample graph file in the SNAP format (.gr extension)
|
|
23
|
+
* (lines beginning with a # symbol indicate comments)
|
|
24
|
+
*
|
|
25
|
+
* p denotes the problem line
|
|
26
|
+
* p <n> <m> <undirected/directed> <weight_type> <0 or 1-indexed>
|
|
27
|
+
*
|
|
28
|
+
* n indicates the number of vertices.
|
|
29
|
+
*
|
|
30
|
+
* m denotes the number of edges.
|
|
31
|
+
*
|
|
32
|
+
* The third parameter can be either u denoting a undirected graph,
|
|
33
|
+
* or d denoting a directed graph. Internally, an edge <u, v> in an
|
|
34
|
+
* undirected graph is stored as two directed links u->v and v->u.
|
|
35
|
+
*
|
|
36
|
+
* weight_type can be u (unweighted), i (integer), l (long, 8 bytes on 64-bit
|
|
37
|
+
* architectures), f (float), or d (double)
|
|
38
|
+
*
|
|
39
|
+
* For the fifth parameter, 0 indicates that the valid range of vertex IDs
|
|
40
|
+
* is 0 to n-1. 1 indicates that it is 1 to n.
|
|
41
|
+
*
|
|
42
|
+
* The problem line is followed by a listing on exactly m edges. The format
|
|
43
|
+
* is <u v w> for a weighted graph, and <u v> for an unweighted graph.
|
|
44
|
+
*/
|
|
45
|
+
class SNAPGraphWriter final : public GraphWriter {
|
|
46
|
+
public:
|
|
47
|
+
SNAPGraphWriter() = default;
|
|
48
|
+
|
|
49
|
+
void write(const Graph &G, std::string_view path) override;
|
|
50
|
+
};
|
|
51
|
+
|
|
52
|
+
} /* namespace NetworKit */
|
|
53
|
+
#endif // NETWORKIT_IO_SNAP_GRAPH_WRITER_HPP_
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* ThrillGraphBinaryReader.hpp
|
|
3
|
+
*
|
|
4
|
+
* @author Michael Hamann
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
#ifndef NETWORKIT_IO_THRILL_GRAPH_BINARY_READER_HPP_
|
|
8
|
+
#define NETWORKIT_IO_THRILL_GRAPH_BINARY_READER_HPP_
|
|
9
|
+
|
|
10
|
+
#include <string>
|
|
11
|
+
#include <vector>
|
|
12
|
+
|
|
13
|
+
#include <networkit/io/GraphReader.hpp>
|
|
14
|
+
|
|
15
|
+
namespace NetworKit {
|
|
16
|
+
|
|
17
|
+
/**
|
|
18
|
+
* Reads a graph format consisting of a serialized DIA of vector<uint32_t> from thrill.
|
|
19
|
+
*/
|
|
20
|
+
class ThrillGraphBinaryReader final : public GraphReader {
|
|
21
|
+
|
|
22
|
+
public:
|
|
23
|
+
/**
|
|
24
|
+
* When the number of nodes is given, reading the graph is more efficient.
|
|
25
|
+
*
|
|
26
|
+
* @param[in] n The number of nodes
|
|
27
|
+
*/
|
|
28
|
+
ThrillGraphBinaryReader(count n = 0);
|
|
29
|
+
|
|
30
|
+
/**
|
|
31
|
+
* Given the path of an input file, read the graph contained.
|
|
32
|
+
*
|
|
33
|
+
* @param[in] path input file path
|
|
34
|
+
*/
|
|
35
|
+
GraphW read(std::string_view path) override;
|
|
36
|
+
|
|
37
|
+
GraphW read(const std::vector<std::string> &path);
|
|
38
|
+
|
|
39
|
+
private:
|
|
40
|
+
const count n;
|
|
41
|
+
};
|
|
42
|
+
|
|
43
|
+
} /* namespace NetworKit */
|
|
44
|
+
#endif // NETWORKIT_IO_THRILL_GRAPH_BINARY_READER_HPP_
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* ThrillGraphBinaryWriter.hpp
|
|
3
|
+
*
|
|
4
|
+
* @author Michael Hamann
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
#ifndef NETWORKIT_IO_THRILL_GRAPH_BINARY_WRITER_HPP_
|
|
8
|
+
#define NETWORKIT_IO_THRILL_GRAPH_BINARY_WRITER_HPP_
|
|
9
|
+
|
|
10
|
+
#include <networkit/io/GraphWriter.hpp>
|
|
11
|
+
|
|
12
|
+
namespace NetworKit {
|
|
13
|
+
|
|
14
|
+
class ThrillGraphBinaryWriter final : public GraphWriter {
|
|
15
|
+
public:
|
|
16
|
+
/**
|
|
17
|
+
* Write the given graph into a binary file at the given path.
|
|
18
|
+
*
|
|
19
|
+
* @param[in] G The graph to write.
|
|
20
|
+
* @param[in] path The path where to write the graph.
|
|
21
|
+
*/
|
|
22
|
+
void write(const Graph &G, std::string_view path) override;
|
|
23
|
+
};
|
|
24
|
+
|
|
25
|
+
} /* namespace NetworKit */
|
|
26
|
+
|
|
27
|
+
#endif // NETWORKIT_IO_THRILL_GRAPH_BINARY_WRITER_HPP_
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* LayoutAlgorithm.hpp
|
|
3
|
+
*
|
|
4
|
+
* Created on: May 20 2015
|
|
5
|
+
* Author: Christian Staudt
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
#ifndef NETWORKIT_LAYOUT_LAYOUT_ALGORITHM_HPP_
|
|
9
|
+
#define NETWORKIT_LAYOUT_LAYOUT_ALGORITHM_HPP_
|
|
10
|
+
|
|
11
|
+
#include <networkit/graph/Graph.hpp>
|
|
12
|
+
|
|
13
|
+
namespace NetworKit {
|
|
14
|
+
|
|
15
|
+
/**
|
|
16
|
+
* @ingroup layout
|
|
17
|
+
*
|
|
18
|
+
* Base class for graph layout algorithms, i.e. algorithms that compute
|
|
19
|
+
* a layout in form of 2D coordinates for nodes.
|
|
20
|
+
*/
|
|
21
|
+
class LayoutAlgorithm {
|
|
22
|
+
|
|
23
|
+
public:
|
|
24
|
+
LayoutAlgorithm(const Graph &G)
|
|
25
|
+
: G(G){
|
|
26
|
+
|
|
27
|
+
};
|
|
28
|
+
|
|
29
|
+
virtual void run() = 0;
|
|
30
|
+
|
|
31
|
+
virtual std::vector<std::pair<double, double>> getLayout() { return layout; };
|
|
32
|
+
|
|
33
|
+
protected:
|
|
34
|
+
const Graph *G;
|
|
35
|
+
std::vector<std::pair<double, double>> layout;
|
|
36
|
+
};
|
|
37
|
+
|
|
38
|
+
} /* namespace NetworKit */
|
|
39
|
+
#endif // NETWORKIT_LAYOUT_LAYOUT_ALGORITHM_HPP_
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* AdamicAdarIndex.hpp
|
|
3
|
+
*
|
|
4
|
+
* Created on: 25.03.2015
|
|
5
|
+
* Author: Kolja Esders
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
#ifndef NETWORKIT_LINKPREDICTION_ADAMIC_ADAR_INDEX_HPP_
|
|
9
|
+
#define NETWORKIT_LINKPREDICTION_ADAMIC_ADAR_INDEX_HPP_
|
|
10
|
+
|
|
11
|
+
#include <networkit/linkprediction/LinkPredictor.hpp>
|
|
12
|
+
|
|
13
|
+
namespace NetworKit {
|
|
14
|
+
|
|
15
|
+
/**
|
|
16
|
+
* @ingroup linkprediction
|
|
17
|
+
*
|
|
18
|
+
* Implementation of the Adamic/Adar Index.
|
|
19
|
+
* The index sums up the reciprocals of the logarithm of the degree of all
|
|
20
|
+
* common neighbors of u and v.
|
|
21
|
+
*/
|
|
22
|
+
class AdamicAdarIndex final : public LinkPredictor {
|
|
23
|
+
/**
|
|
24
|
+
* Returns the Adamic/Adar Index of the given node-pair (@a u, @a v).
|
|
25
|
+
* @param u First node
|
|
26
|
+
* @param v Second node
|
|
27
|
+
* @return the Adamic/Adar Index of the given node-pair (@a u, @a v)
|
|
28
|
+
*/
|
|
29
|
+
double runImpl(node u, node v) override;
|
|
30
|
+
|
|
31
|
+
public:
|
|
32
|
+
using LinkPredictor::LinkPredictor;
|
|
33
|
+
};
|
|
34
|
+
|
|
35
|
+
} // namespace NetworKit
|
|
36
|
+
|
|
37
|
+
#endif // NETWORKIT_LINKPREDICTION_ADAMIC_ADAR_INDEX_HPP_
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* AdjustedRandIndex.hpp
|
|
3
|
+
*
|
|
4
|
+
* Created on: 11.04.2015
|
|
5
|
+
* Author: Kolja Esders
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
#ifndef NETWORKIT_LINKPREDICTION_ADJUSTED_RAND_INDEX_HPP_
|
|
9
|
+
#define NETWORKIT_LINKPREDICTION_ADJUSTED_RAND_INDEX_HPP_
|
|
10
|
+
|
|
11
|
+
#include <networkit/linkprediction/LinkPredictor.hpp>
|
|
12
|
+
|
|
13
|
+
namespace NetworKit {
|
|
14
|
+
|
|
15
|
+
/**
|
|
16
|
+
* @ingroup linkprediction
|
|
17
|
+
*
|
|
18
|
+
* AdjustedRandIndex proposed by Hoffman et al. with natural threshold of 0.
|
|
19
|
+
* See http://www.sciencedirect.com/science/article/pii/S0378873315000210 for details.
|
|
20
|
+
*/
|
|
21
|
+
class AdjustedRandIndex final : public LinkPredictor {
|
|
22
|
+
/**
|
|
23
|
+
* Returns the Adjusted Rand Index of the given node-pair (@a u, @a v).
|
|
24
|
+
* @param u First node
|
|
25
|
+
* @param v Second node
|
|
26
|
+
* @return the Adjusted Rand Index of the given node-pair (@a u, @a v)
|
|
27
|
+
*/
|
|
28
|
+
double runImpl(node u, node v) override;
|
|
29
|
+
|
|
30
|
+
public:
|
|
31
|
+
using LinkPredictor::LinkPredictor;
|
|
32
|
+
};
|
|
33
|
+
|
|
34
|
+
} // namespace NetworKit
|
|
35
|
+
|
|
36
|
+
#endif // NETWORKIT_LINKPREDICTION_ADJUSTED_RAND_INDEX_HPP_
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* AlgebraicDistanceIndex.hpp
|
|
3
|
+
*
|
|
4
|
+
* Created on: 19.06.2013
|
|
5
|
+
* Authors: cls, Kolja Esders
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
#ifndef NETWORKIT_LINKPREDICTION_ALGEBRAIC_DISTANCE_INDEX_HPP_
|
|
9
|
+
#define NETWORKIT_LINKPREDICTION_ALGEBRAIC_DISTANCE_INDEX_HPP_
|
|
10
|
+
|
|
11
|
+
#include <networkit/auxiliary/Timer.hpp>
|
|
12
|
+
#include <networkit/graph/Graph.hpp>
|
|
13
|
+
#include <networkit/linkprediction/LinkPredictor.hpp>
|
|
14
|
+
|
|
15
|
+
namespace NetworKit {
|
|
16
|
+
|
|
17
|
+
/**
|
|
18
|
+
* @ingroup linkprediction
|
|
19
|
+
*
|
|
20
|
+
* Algebraic distance assigns a distance value to pairs of nodes
|
|
21
|
+
* according to their structural closeness in the graph.
|
|
22
|
+
*/
|
|
23
|
+
class AlgebraicDistanceIndex final : public LinkPredictor {
|
|
24
|
+
/**
|
|
25
|
+
* Returns the extended algebraic distance between node @a u and node @a v in the norm specified
|
|
26
|
+
* in the constructor.
|
|
27
|
+
* @param u The first node
|
|
28
|
+
* @param v The second node
|
|
29
|
+
* @return Extended algebraic distance between the two nodes.
|
|
30
|
+
*/
|
|
31
|
+
double runImpl(node u, node v) override;
|
|
32
|
+
|
|
33
|
+
count numSystems; //!< number of vectors/systems used for algebraic iteration
|
|
34
|
+
count numIters; //!< number of iterations in each system
|
|
35
|
+
double omega;
|
|
36
|
+
index norm;
|
|
37
|
+
static constexpr index MAX_NORM{0};
|
|
38
|
+
|
|
39
|
+
std::vector<std::vector<double>>
|
|
40
|
+
loads; //!< loads[i]: vector of loads of length n for one system
|
|
41
|
+
|
|
42
|
+
void randomInit();
|
|
43
|
+
|
|
44
|
+
public:
|
|
45
|
+
explicit AlgebraicDistanceIndex(count numberSystems, count numberIterations, double omega = 0.5,
|
|
46
|
+
index norm = 2);
|
|
47
|
+
|
|
48
|
+
/**
|
|
49
|
+
* @param G The graph.
|
|
50
|
+
* @param numberSystems Number of vectors/systems used for algebraic iteration.
|
|
51
|
+
* @param numberIterations Number of iterations in each system.
|
|
52
|
+
* @param omega Overrelaxation parameter.
|
|
53
|
+
* @param norm The norm factor of the extended algebraic distance. Maximum norm is realized by
|
|
54
|
+
* setting @a norm to 0.
|
|
55
|
+
*/
|
|
56
|
+
explicit AlgebraicDistanceIndex(const Graph &G, count numberSystems, count numberIterations,
|
|
57
|
+
double omega = 0.5, index norm = 2);
|
|
58
|
+
|
|
59
|
+
/**
|
|
60
|
+
* Starting with random initialization, compute for all @a numberSystems
|
|
61
|
+
* "diffusion" systems the situation after @a numberIterations iterations
|
|
62
|
+
* of overrelaxation with overrelaxation parameter @a omega.
|
|
63
|
+
*
|
|
64
|
+
* REQ: Needs to be called before algdist delivers meaningful results!
|
|
65
|
+
*/
|
|
66
|
+
void preprocess();
|
|
67
|
+
};
|
|
68
|
+
|
|
69
|
+
} /* namespace NetworKit */
|
|
70
|
+
#endif // NETWORKIT_LINKPREDICTION_ALGEBRAIC_DISTANCE_INDEX_HPP_
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* CommonNeighborsIndex.hpp
|
|
3
|
+
*
|
|
4
|
+
* Created on: 06.12.2014
|
|
5
|
+
* Author: Kolja Esders
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
#ifndef NETWORKIT_LINKPREDICTION_COMMON_NEIGHBORS_INDEX_HPP_
|
|
9
|
+
#define NETWORKIT_LINKPREDICTION_COMMON_NEIGHBORS_INDEX_HPP_
|
|
10
|
+
|
|
11
|
+
#include <networkit/linkprediction/LinkPredictor.hpp>
|
|
12
|
+
#include <networkit/linkprediction/NeighborhoodUtility.hpp>
|
|
13
|
+
|
|
14
|
+
namespace NetworKit {
|
|
15
|
+
|
|
16
|
+
/**
|
|
17
|
+
* @ingroup linkprediction
|
|
18
|
+
*
|
|
19
|
+
* The CommonNeighborsIndex calculates the number of common
|
|
20
|
+
* neighbors of a node-pair in a given graph.
|
|
21
|
+
*/
|
|
22
|
+
class CommonNeighborsIndex final : public LinkPredictor {
|
|
23
|
+
/**
|
|
24
|
+
* Returns the number of common neighbors of the given nodes @a u and @a v.
|
|
25
|
+
* @param u First node
|
|
26
|
+
* @param v Second node
|
|
27
|
+
* @return the number of common neighbors of @a u and @a v
|
|
28
|
+
*/
|
|
29
|
+
double runImpl(node u, node v) override {
|
|
30
|
+
return NeighborhoodUtility::getCommonNeighbors(*G, u, v).size();
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
public:
|
|
34
|
+
using LinkPredictor::LinkPredictor;
|
|
35
|
+
};
|
|
36
|
+
|
|
37
|
+
} // namespace NetworKit
|
|
38
|
+
|
|
39
|
+
#endif // NETWORKIT_LINKPREDICTION_COMMON_NEIGHBORS_INDEX_HPP_
|
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* EvaluationMetric.hpp
|
|
3
|
+
*
|
|
4
|
+
* Created on: 17.03.2015
|
|
5
|
+
* Author: Kolja Esders
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
#ifndef NETWORKIT_LINKPREDICTION_EVALUATION_METRIC_HPP_
|
|
9
|
+
#define NETWORKIT_LINKPREDICTION_EVALUATION_METRIC_HPP_
|
|
10
|
+
|
|
11
|
+
#include <networkit/graph/Graph.hpp>
|
|
12
|
+
#include <networkit/linkprediction/LinkPredictor.hpp>
|
|
13
|
+
|
|
14
|
+
namespace NetworKit {
|
|
15
|
+
|
|
16
|
+
/**
|
|
17
|
+
* @ingroup linkprediction
|
|
18
|
+
*
|
|
19
|
+
* Abstract base class for evaluation curves.
|
|
20
|
+
* The evaluation curves are generated based on the predictions calculated
|
|
21
|
+
* by the link predictor and a testGraph to compare against.
|
|
22
|
+
*/
|
|
23
|
+
class EvaluationMetric {
|
|
24
|
+
/**
|
|
25
|
+
* Generates the points on the evaluation curve. Each metric will implement
|
|
26
|
+
* it's own way to generate those points.
|
|
27
|
+
* Doesn't have to check if testGraph or predictions are existent.
|
|
28
|
+
* @return a pair of X- and Y-vectors (in that order) that can be used for plotting
|
|
29
|
+
*/
|
|
30
|
+
virtual std::pair<std::vector<double>, std::vector<double>> generatePoints() = 0;
|
|
31
|
+
|
|
32
|
+
/**
|
|
33
|
+
* Helper function that bundles the calculation of all statistical measures including
|
|
34
|
+
* number of TP, FP, TN, FN and also absolute number of positives and negatives.
|
|
35
|
+
*/
|
|
36
|
+
void calculateStatisticalMeasures();
|
|
37
|
+
|
|
38
|
+
// The following three helper methods generate statistical measures for every threshold
|
|
39
|
+
// based on the given predictions. The names should be self-explanatory.
|
|
40
|
+
void setPositivesAndNegatives();
|
|
41
|
+
|
|
42
|
+
void setTrueAndFalsePositives();
|
|
43
|
+
|
|
44
|
+
void setTrueAndFalseNegatives();
|
|
45
|
+
|
|
46
|
+
/**
|
|
47
|
+
* Sorts the given pair of vectors ascendingly with respect to the values of the first vector.
|
|
48
|
+
* This effectively leads to an sorted pair of vectors where each x-value still maps to the
|
|
49
|
+
* same y-value but the x-values are sorted ascendingly from 0 to 1.
|
|
50
|
+
* @param curve Points to sort
|
|
51
|
+
*/
|
|
52
|
+
void sortPointsOfCurve(std::pair<std::vector<double>, std::vector<double>> &curve) const;
|
|
53
|
+
|
|
54
|
+
protected:
|
|
55
|
+
std::pair<std::vector<double>, std::vector<double>>
|
|
56
|
+
generatedPoints; //!< Points describing the generated curve. Will be set after a call to
|
|
57
|
+
//!< getCurve
|
|
58
|
+
|
|
59
|
+
const Graph *testGraph; //!< Used to evaluate the binary predictions at the thresholds
|
|
60
|
+
|
|
61
|
+
std::vector<LinkPredictor::prediction> predictions; //!< Predictions that should be evaluated
|
|
62
|
+
|
|
63
|
+
std::vector<index> thresholds; //!< Indices for the thresholds to use. All node-pairs with an
|
|
64
|
+
//!< index < thresholds[i] will be regarded as links
|
|
65
|
+
|
|
66
|
+
count numPositives; //!< Absolute number of positive instances in the prediction-set
|
|
67
|
+
|
|
68
|
+
count numNegatives; //!< Absolute number of negative instances in the prediction-set
|
|
69
|
+
|
|
70
|
+
std::vector<count> truePositives; //!< True positives regarding the corresponding threshold
|
|
71
|
+
|
|
72
|
+
std::vector<count> falsePositives; //!< False positives regarding the corresponding threshold
|
|
73
|
+
|
|
74
|
+
std::vector<count> trueNegatives; //!< True negatives regarding the corresponding threshold
|
|
75
|
+
|
|
76
|
+
std::vector<count> falseNegatives; //!< False negatives regarding the corresponding threshold
|
|
77
|
+
|
|
78
|
+
public:
|
|
79
|
+
EvaluationMetric();
|
|
80
|
+
|
|
81
|
+
/**
|
|
82
|
+
*
|
|
83
|
+
* @param testGraph Graph containing the links to use for evaluation
|
|
84
|
+
* @param predictions Dyad-score-pairs whose prediction quality will be evaluated
|
|
85
|
+
*/
|
|
86
|
+
explicit EvaluationMetric(const Graph &testGraph);
|
|
87
|
+
|
|
88
|
+
/**
|
|
89
|
+
* Default destructor.
|
|
90
|
+
*/
|
|
91
|
+
virtual ~EvaluationMetric() = default;
|
|
92
|
+
|
|
93
|
+
/**
|
|
94
|
+
* Sets a new graph to use as ground truth for evaluation.
|
|
95
|
+
* Note that this won't reset the most recently calculated curve and as a consequence
|
|
96
|
+
* getAreaUnderCurve() const will still behave as expected by returning the AUC of the most
|
|
97
|
+
* recent curve.
|
|
98
|
+
* @param newTestGraph New graph to use as ground truth
|
|
99
|
+
*/
|
|
100
|
+
void setTestGraph(const Graph &newTestGraph);
|
|
101
|
+
|
|
102
|
+
/**
|
|
103
|
+
* Returns a pair of X- and Y-vectors describing the evaluation curve generated from the @a
|
|
104
|
+
* predictions. The latest y-value will be used as a tie-breaker in case there are multiple
|
|
105
|
+
* y-values for one x-value. Note that the given number of thresholds (@a numThresholds) is an
|
|
106
|
+
* upper bound for the number of points returned. This is due to the fact that multiple y-values
|
|
107
|
+
* can map to one x-value in which case the tie-breaking behavior described above will
|
|
108
|
+
* intervene.
|
|
109
|
+
* @param predictions Predictions to evaluate
|
|
110
|
+
* @param numThresholds The number of thresholds to use the metric on
|
|
111
|
+
* @return a pair of vectors where the first vectors contains all x-values and the second one
|
|
112
|
+
* contains the corresponding y-value
|
|
113
|
+
*/
|
|
114
|
+
virtual std::pair<std::vector<double>, std::vector<double>>
|
|
115
|
+
getCurve(std::vector<LinkPredictor::prediction> predictions, count numThresholds = 1000);
|
|
116
|
+
|
|
117
|
+
/**
|
|
118
|
+
* Returns the area under the given @a curve by using the trapezoidal rule.
|
|
119
|
+
* @param curve Curve whose AUC to determine
|
|
120
|
+
* @return the area under the given curve
|
|
121
|
+
*/
|
|
122
|
+
virtual double
|
|
123
|
+
getAreaUnderCurve(std::pair<std::vector<double>, std::vector<double>> curve) const;
|
|
124
|
+
|
|
125
|
+
/**
|
|
126
|
+
* Returns the area under the curve that was most recently calculated by this instance.
|
|
127
|
+
* This implies that getCurve() has to get called beforehand.
|
|
128
|
+
* @return area under the most recently calculated curve
|
|
129
|
+
*/
|
|
130
|
+
virtual double getAreaUnderCurve() const;
|
|
131
|
+
};
|
|
132
|
+
|
|
133
|
+
} // namespace NetworKit
|
|
134
|
+
|
|
135
|
+
#endif // NETWORKIT_LINKPREDICTION_EVALUATION_METRIC_HPP_
|