Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/kkloste/nexpokit
Matrix Exponential for node centrality, link-prediction, and more
https://github.com/kkloste/nexpokit
Last synced: 2 days ago
JSON representation
Matrix Exponential for node centrality, link-prediction, and more
- Host: GitHub
- URL: https://github.com/kkloste/nexpokit
- Owner: kkloste
- Created: 2013-07-17T03:23:33.000Z (over 11 years ago)
- Default Branch: master
- Last Pushed: 2014-05-03T17:44:37.000Z (over 10 years ago)
- Last Synced: 2023-08-02T05:12:42.368Z (over 1 year ago)
- Language: Matlab
- Size: 51.5 MB
- Stars: 7
- Watchers: 2
- Forks: 4
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
---
title: "Network Matrix Exponentials for link-prediction, centrality, and more"
layout: project
---NEXPOKIT: Network Matrix Exponentials for link-prediction, centrality, and more
===============================================================================### Kyle Kloster
### David F. Gleich_These are research codes and may not work for you._
Download
--------* [nexpokit.tar.gz](nexpokit.tar.gz) (2013-08-05)
Synopsis
--------compile % compile the mex files
G = load_graph('dolphins');
P = normout(G)';
x = gexpmq_mex(P,1,11,1e-5,10*size(P,1));
Reusable codes
--------------* `gexpm_mex` a C++ mex implementation of Gauss-Southwell with a heap
* `gexpmq_mex` a C++ mex implemetation of pseudo-Gauss-Southwell (rounded Gauss-Seidel) with
a queue.
* `expmimv_mex` a C++ mex implemetation of an N step Taylor polynomial via Horner rule and "incomplete" matrix-vector products
a queue.
* `kmatexp` a matlab implementation of an N+1 step Taylor polynomial via Horner rule
* `taydeg.hpp` : contains function for selecting Taylor degree appropriate for input error of “tol”
* `heap.hpp` : contains heap functions used in gexpm_mexCodes from others
-----------------* `mexpv` from expokit
* `expv` from expokit
For Higham & Al-Mohy's "expmv":
* `expmv`
* `expmv_tspan`
* `normAm`
* `select_taylor_degree
* `theta_taylor_half.mat`
* `theta_taylor_single.mat`
* `theta_taylor.mat`Results from the paper
----------------------To reproduce figures 1 and 2, run:
experiment/localization_demo/example_localization_ljournal.mTo reproduce figure 4, first generate the data by running:
experiments/accuracy_vs_error/compute_tol_accuracy_data.m
Then, to produce the plots for figure 4, run:
experiments/accuracy_vs_error/plot_tol_accuracy.m
To generate the data for figure 5, run:experiments/accuracy_vs_work/compute_steps_accuracy_order.m
To reproduce figure 5, run:
experiments/accuracy_vs_work/plot_tol_steps_accuracy.m
To reproduce figure 6, first generate the data by running:experiments/acc_vs_maxnnz/maxnnz_experiment.m
experiments/acc_vs_maxnnz/maxnnz_experiment_web.m
experiments/acc_vs_maxnnz/maxnnz_experiment_friend.m
experiments/acc_vs_maxnnz/maxnnz_experiment_twitter.mThen, to produce the plots for figure 6, run
experiments/acc_vs_maxnnz/maxnnz_plots_finalized.m
To reproduce figure 7, first generate the data by running:
experiments/runtimes/runtime_experiment.m
experiments/runtimes/runtime_experiment_web.m
experiments/runtimes/runtime_experiment_friend.m
experiments/runtimes/runtime_experiment_twitter.m
experiments/runtimes/runtime_process.mThen, to produce the plots for figure 7, run:
experiments/runtimes/runtime_plot.m
To reproduce figure 8, first generate the data by running:
experiments/scaling/scaling_study_1.m
experiments/scaling/scaling_study_s.mThen, to produce the plots for figure 8, run:
experiments/scaling/scaling_plots.m