9 Commits

Author SHA1 Message Date
Daniel Bauer
b130596fe8 Merge branch 'master' of github.com:danijoo/WHAM 2020-10-24 20:44:30 +02:00
Daniel Bauer
05451a6cb2 cli 2020-10-24 20:44:27 +02:00
Daniel Bauer
bf8bf39319 edit todo 2020-10-24 20:44:18 +02:00
Daniel Bauer
6c63eda769 Update README.md 2020-10-24 20:43:54 +02:00
Daniel Bauer
1bbafeba70 lock update 2020-10-24 20:38:37 +02:00
Daniel Bauer
64f468e636 version up 2020-10-24 20:35:24 +02:00
Daniel Bauer
2f93b77879 update rand lib 2020-10-24 20:35:06 +02:00
Daniel Bauer
b148998b11 update GSL version 2020-10-24 20:21:32 +02:00
Daniel Bauer
87f3cceb6a keywords,categories 2020-10-24 20:06:28 +02:00
7 changed files with 252 additions and 175 deletions

157
Cargo.lock generated
View File

@@ -60,12 +60,12 @@ checksum = "cdb031dd78e28731d87d56cc8ffef4a8f36ca26c38fe2de700543e627f8a464a"
[[package]]
name = "backtrace"
version = "0.3.50"
version = "0.3.53"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "46254cf2fdcdf1badb5934448c1bcbe046a56537b3987d96c51a7afc5d03f293"
checksum = "707b586e0e2f247cbde68cdd2c3ce69ea7b7be43e1c5b426e37c9319c4b9838e"
dependencies = [
"addr2line",
"cfg-if",
"cfg-if 1.0.0",
"libc",
"miniz_oxide",
"object",
@@ -90,6 +90,12 @@ version = "0.1.10"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4785bdd1c96b2a846b2bd7cc02e86b6b3dbf14e7e53446c4f54c92a361040822"
[[package]]
name = "cfg-if"
version = "1.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
[[package]]
name = "clap"
version = "2.33.3"
@@ -107,66 +113,63 @@ dependencies = [
]
[[package]]
name = "cloudabi"
version = "0.0.3"
name = "const_fn"
version = "0.4.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ddfc5b9aa5d4507acaf872de71051dfd0e309860e88966e1051e462a077aac4f"
dependencies = [
"bitflags",
]
checksum = "ce90df4c658c62f12d78f7508cf92f9173e5184a539c10bfe54a3107b3ffd0f2"
[[package]]
name = "crossbeam-channel"
version = "0.4.4"
version = "0.5.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b153fe7cbef478c567df0f972e02e6d736db11affe43dfc9c56a9374d1adfb87"
checksum = "dca26ee1f8d361640700bde38b2c37d8c22b3ce2d360e1fc1c74ea4b0aa7d775"
dependencies = [
"cfg-if 1.0.0",
"crossbeam-utils",
"maybe-uninit",
]
[[package]]
name = "crossbeam-deque"
version = "0.7.3"
version = "0.8.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9f02af974daeee82218205558e51ec8768b48cf524bd01d550abe5573a608285"
checksum = "94af6efb46fef72616855b036a624cf27ba656ffc9be1b9a3c931cfc7749a9a9"
dependencies = [
"cfg-if 1.0.0",
"crossbeam-epoch",
"crossbeam-utils",
"maybe-uninit",
]
[[package]]
name = "crossbeam-epoch"
version = "0.8.2"
version = "0.9.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "058ed274caafc1f60c4997b5fc07bf7dc7cca454af7c6e81edffe5f33f70dace"
checksum = "ec0f606a85340376eef0d6d8fec399e6d4a544d648386c6645eb6d0653b27d9f"
dependencies = [
"autocfg",
"cfg-if",
"cfg-if 1.0.0",
"const_fn",
"crossbeam-utils",
"lazy_static",
"maybe-uninit",
"memoffset",
"scopeguard",
]
[[package]]
name = "crossbeam-utils"
version = "0.7.2"
version = "0.8.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c3c7c73a2d1e9fc0886a08b93e98eb643461230d5f1925e4036204d5f2e261a8"
checksum = "ec91540d98355f690a86367e566ecad2e9e579f230230eb7c21398372be73ea5"
dependencies = [
"autocfg",
"cfg-if",
"cfg-if 1.0.0",
"const_fn",
"lazy_static",
]
[[package]]
name = "either"
version = "1.6.0"
version = "1.6.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "cd56b59865bce947ac5958779cfa508f6c3b9497cc762b7e24a12d11ccde2c4f"
checksum = "e78d4f1cc4ae33bbfc157ed5d5a5ef3bc29227303d595861deb238fcec4e9457"
[[package]]
name = "error-chain"
@@ -179,10 +182,15 @@ dependencies = [
]
[[package]]
name = "fuchsia-cprng"
version = "0.1.1"
name = "getrandom"
version = "0.1.15"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a06f77d526c1a601b7c4cdd98f54b5eaabffc14d5f2f0296febdc7f357c6d3ba"
checksum = "fc587bc0ec293155d5bfa6b9891ec18a1e330c234f896ea47fbada4cadbe47e6"
dependencies = [
"cfg-if 0.1.10",
"libc",
"wasi",
]
[[package]]
name = "gimli"
@@ -192,9 +200,9 @@ checksum = "aaf91faf136cb47367fa430cd46e37a788775e7fa104f8b4bcb3861dc389b724"
[[package]]
name = "hermit-abi"
version = "0.1.15"
version = "0.1.17"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3deed196b6e7f9e44a2ae8d94225d80302d81208b1bb673fd21fe634645c85a9"
checksum = "5aca5565f760fb5b220e499d72710ed156fdb74e631659e99377d9ebfbd13ae8"
dependencies = [
"libc",
]
@@ -207,30 +215,24 @@ checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
[[package]]
name = "libc"
version = "0.2.77"
version = "0.2.79"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f2f96b10ec2560088a8e76961b00d47107b3a625fecb76dedb29ee7ccbf98235"
[[package]]
name = "maybe-uninit"
version = "2.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "60302e4db3a61da70c0cb7991976248362f30319e88850c487b9b95bbf059e00"
checksum = "2448f6066e80e3bfc792e9c98bf705b4b0fc6e8ef5b43e5889aff0eaa9c58743"
[[package]]
name = "memoffset"
version = "0.5.5"
version = "0.5.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c198b026e1bbf08a937e94c6c60f9ec4a2267f5b0d2eec9c1b21b061ce2be55f"
checksum = "043175f069eda7b85febe4a74abbaeff828d9f8b448515d3151a14a3542811aa"
dependencies = [
"autocfg",
]
[[package]]
name = "miniz_oxide"
version = "0.4.2"
version = "0.4.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c60c0dfe32c10b43a144bad8fc83538c52f58302c92300ea7ec7bf7b38d5a7b9"
checksum = "0f2d26ec3309788e423cfbf68ad1800f061638098d76a83681af979dc4eda19d"
dependencies = [
"adler",
"autocfg",
@@ -248,49 +250,68 @@ dependencies = [
[[package]]
name = "object"
version = "0.20.0"
version = "0.21.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1ab52be62400ca80aa00285d25253d7f7c437b7375c4de678f5405d3afe82ca5"
checksum = "37fd5004feb2ce328a52b0b3d01dbf4ffff72583493900ed15f22d4111c51693"
[[package]]
name = "pkg-config"
version = "0.3.18"
version = "0.3.19"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d36492546b6af1463394d46f0c834346f31548646f6ba10849802c9c9a27ac33"
checksum = "3831453b3449ceb48b6d9c7ad7c96d5ea673e9b470a1dc578c2ce6521230884c"
[[package]]
name = "ppv-lite86"
version = "0.2.9"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c36fa947111f5c62a733b652544dd0016a43ce89619538a8ef92724a6f501a20"
[[package]]
name = "rand"
version = "0.5.6"
version = "0.7.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c618c47cd3ebd209790115ab837de41425723956ad3ce2e6a7f09890947cacb9"
checksum = "6a6b1679d49b24bbfe0c803429aa1874472f50d9b363131f0e89fc356b544d03"
dependencies = [
"cloudabi",
"fuchsia-cprng",
"getrandom",
"libc",
"rand_core 0.3.1",
"winapi",
"rand_chacha",
"rand_core",
"rand_hc",
]
[[package]]
name = "rand_core"
version = "0.3.1"
name = "rand_chacha"
version = "0.2.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7a6fdeb83b075e8266dcc8762c22776f6877a63111121f5f8c7411e5be7eed4b"
checksum = "f4c8ed856279c9737206bf725bf36935d8666ead7aa69b52be55af369d193402"
dependencies = [
"rand_core 0.4.2",
"ppv-lite86",
"rand_core",
]
[[package]]
name = "rand_core"
version = "0.4.2"
version = "0.5.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9c33a3c44ca05fa6f1807d8e6743f3824e8509beca625669633be0acbdf509dc"
checksum = "90bde5296fc891b0cef12a6d03ddccc162ce7b2aff54160af9338f8d40df6d19"
dependencies = [
"getrandom",
]
[[package]]
name = "rand_hc"
version = "0.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ca3129af7b92a17112d59ad498c6f81eaf463253766b90396d39ea7a39d6613c"
dependencies = [
"rand_core",
]
[[package]]
name = "rayon"
version = "1.4.0"
version = "1.5.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "cfd016f0c045ad38b5251be2c9c0ab806917f82da4d36b2a327e5166adad9270"
checksum = "8b0d8e0819fadc20c74ea8373106ead0600e3a67ef1fe8da56e39b9ae7275674"
dependencies = [
"autocfg",
"crossbeam-deque",
@@ -300,9 +321,9 @@ dependencies = [
[[package]]
name = "rayon-core"
version = "1.8.0"
version = "1.9.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "91739a34c4355b5434ce54c9086c5895604a9c278586d1f1aa95e04f66b525a0"
checksum = "9ab346ac5921dc62ffa9f89b7a773907511cdfa5490c572ae9be1be33e8afa4a"
dependencies = [
"crossbeam-channel",
"crossbeam-deque",
@@ -313,9 +334,9 @@ dependencies = [
[[package]]
name = "rustc-demangle"
version = "0.1.16"
version = "0.1.18"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4c691c0e608126e00913e33f0ccf3727d5fc84573623b8d65b2df340b5201783"
checksum = "6e3bad0ee36814ca07d7968269dd4b7ec89ec2da10c4bb613928d3077083c232"
[[package]]
name = "scopeguard"
@@ -356,9 +377,15 @@ version = "0.9.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b5a972e5669d67ba988ce3dc826706fb0a8b01471c088cb0b6110b805cc36aed"
[[package]]
name = "wasi"
version = "0.9.0+wasi-snapshot-preview1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "cccddf32554fecc6acb585f82a32a72e28b48f8c4c1883ddfeeeaa96f7d8e519"
[[package]]
name = "wham"
version = "0.9.8"
version = "0.9.9"
dependencies = [
"GSL",
"assert_approx_eq",

View File

@@ -1,23 +1,24 @@
[package]
name = "wham"
version = "0.9.8"
version = "0.9.9"
authors = ["Daniel Bauer <bauer@cbs.tu-darmstadt.de>"]
description = "An implementation of the weighted histogram analysis method"
license = "GPL-3.0"
repository = "https://github.com/danijoo/WHAM"
readme = "README.md"
categories = ["science", "command-line-utilities", "molecular-dynamics", "algorithms"]
keywords = ["math", "statistics", "histogram", "bioinformatics", "molecular-dynamics"]
[dependencies]
clap = {version="2.32.0", features=['yaml']}
error-chain = "0.12.0"
rand = "0.5.5"
GSL = "1.0.0"
rand = "0.7.*"
GSL = "1.1"
rayon = "1.0.3"
[dev-dependencies]
assert_approx_eq = "1.1.0"
[profile.release]
opt-level = 2
opt-level = 3
[features]
default = ["GSL/v2"]

View File

@@ -38,6 +38,56 @@ Usage
wham has a convenient command line interface. You can see all options with
```wham -h```:
```
wham 0.9.9
D. Bauer <bauer@bio.tu-darmstadt.de>
wham is a fast implementation of the weighted histogram analysis method (WHAM) written in Rust. It currently supports
potential of mean force (PMF) calculations in multiple dimensions at constant temperature.
Metadata file format:
/path/to/timeseries_file1 x_1 x_2 x_N fc_1 fc_2 fc_N
/path/to/timeseries_file2 x_1 x_2 x_N fc_1 fc_2 fc_N
/path/to/timeseries_file3 x_1 x_2 x_N fc_1 fc_2 fc_N
The first column is a path to a timeseries file _relative_ to the metadata file (see below). This is followed by the
position of the umbrella potential x in N dimensions and the force constant fc in each dimension. Lines starting with a
# are treated as comments and will not be parsed.
Timeseries file format:
time x_1 x_2 x_N
time x_1 x_2 x_N
time x_1 x_2 x_N
The first column will be ignored and is followed by N reaction coordinates x.
Shipped under the GPLv3 license.
USAGE:
wham [FLAGS] [OPTIONS] --bins <BINS> --max <HIST_MAX> --file <METADATA> --min <HIST_MIN> --temperature <temperature>
FLAGS:
-c, --cyclic For periodic reaction coordinates. If this is set, the first and last coordinate bin in each
dimension are treated as neighbors for the bias calculation.
-h, --help Prints help information
-V, --version Prints version information
-v, --verbose Enables verbose output.
OPTIONS:
-b, --bins <BINS> Number of histogram bins (comma separated).
--bt <bootstrap> Number of bayesian bootstrapping runs for error analysis by assigning random
weights (defaults to 0).
--seed <bootstrap_seed> Random seed for bootstrapping runs.
--end <end> Skip rows in timeseries with an index larger than this value (defaults to 1e+20)
-i, --iterations <ITERATIONS> Stop WHAM after this many iterations without convergence (defaults to 100,000).
--max <HIST_MAX> Histogram maxima (comma separated). Also accepts "pi".
-f, --file <METADATA> Path to the metadata file.
--min <HIST_MIN> Histogram minima (comma separated for multiple dimensions). Also accepts "pi".
-o, --output <output> Free energy output file (defaults to wham.out).
--start <start> Skip rows in timeseries with an index smaller than this value (defaults to 0)
-T, --temperature <temperature> WHAM temperature in Kelvin.
-t, --tolerance <TOLERANCE> Abortion criteria for WHAM calculation. WHAM stops if abs(F_new - F_old) <
tolerance (defaults to 0.000001).
```
To run the two dimensional example (simulation of dialanine phi and psi angle):
```bash
wham --max 3.14,3.14 --min -3.14,-3.14 -T 300 --bins 100,100 --cyclic -f example/2d/metadata.dat
@@ -94,7 +144,6 @@ The example folder contains input and output files for two simple test systems:
TODO
---
- better error estimation
- Autocorrelation
- Replica exchange

View File

@@ -1,101 +1,101 @@
#coord1 Free Energy +/- Probability +/-
-3.110177 7.158102 0.069244 0.003494 0.000067
-3.047345 5.365727 0.068503 0.007168 0.000135
-2.984513 3.873190 0.065883 0.013039 0.000226
-2.921681 2.953162 0.066856 0.018855 0.000334
-2.858849 1.949554 0.066705 0.028195 0.000501
-2.796017 1.391747 0.064012 0.035261 0.000576
-2.733186 1.128270 0.061522 0.039189 0.000598
-2.670354 0.839970 0.060810 0.043991 0.000653
-2.607522 0.624769 0.061888 0.047955 0.000733
-2.544690 0.663757 0.062566 0.047211 0.000736
-2.481858 1.051932 0.061093 0.040407 0.000616
-2.419026 1.463048 0.062547 0.034267 0.000543
-2.356194 1.990616 0.057022 0.027734 0.000373
-2.293363 2.190692 0.044029 0.025597 0.000202
-2.230531 2.553036 0.041867 0.022136 0.000157
-2.167699 2.572522 0.044817 0.021964 0.000184
-2.104867 2.472360 0.038778 0.022863 0.000155
-2.042035 2.517562 0.030296 0.022453 0.000150
-1.979203 2.469778 0.025852 0.022887 0.000167
-1.916372 2.223125 0.030799 0.025266 0.000411
-1.853540 2.080157 0.024928 0.026756 0.000365
-1.790708 1.793841 0.027529 0.030011 0.000475
-1.727876 1.458784 0.026130 0.034326 0.000462
-1.665044 0.914441 0.024774 0.042697 0.000576
-1.602212 0.303813 0.020400 0.054540 0.000701
-1.539380 0.268335 0.020423 0.055321 0.000733
-1.476549 0.000000 0.020271 0.061604 0.000835
-1.413717 0.537061 0.023895 0.049671 0.000735
-1.350885 1.439940 0.023678 0.034586 0.000528
-1.288053 2.391838 0.025951 0.023614 0.000386
-1.225221 3.779470 0.026215 0.013538 0.000224
-1.162389 5.685555 0.028543 0.006305 0.000109
-1.099557 7.661896 0.030579 0.002855 0.000051
-1.036726 9.946594 0.039243 0.001142 0.000022
-0.973894 12.359408 0.054067 0.000434 0.000009
-0.911062 14.954655 0.066597 0.000153 0.000004
-0.848230 17.742242 0.073582 0.000050 0.000002
-0.785398 20.555785 0.074644 0.000016 0.000001
-0.722566 22.811160 0.078503 0.000007 0.000000
-0.659734 25.178094 0.088961 0.000003 0.000000
-0.596903 26.442288 0.093509 0.000002 0.000000
-0.534071 27.897565 0.091353 0.000001 0.000000
-0.471239 29.062473 0.086244 0.000001 0.000000
-0.408407 30.384521 0.084285 0.000000 0.000000
-0.345575 31.638454 0.084871 0.000000 0.000000
-0.282743 32.817727 0.092750 0.000000 0.000000
-0.219911 33.770369 0.094479 0.000000 0.000000
-0.157080 34.505503 0.095774 0.000000 0.000000
-0.094248 35.431659 0.107598 0.000000 0.000000
-0.031416 35.615810 0.108959 0.000000 0.000000
0.031416 35.561946 0.107382 0.000000 0.000000
0.094248 35.382089 0.096643 0.000000 0.000000
0.157080 34.934827 0.107624 0.000000 0.000000
0.219911 33.673460 0.100231 0.000000 0.000000
0.282743 32.731563 0.096604 0.000000 0.000000
0.345575 31.261855 0.099036 0.000000 0.000000
0.408407 29.717377 0.107915 0.000000 0.000000
0.471239 28.076620 0.104513 0.000001 0.000000
0.534071 26.481097 0.103164 0.000002 0.000000
0.596903 24.487358 0.103039 0.000003 0.000000
0.659734 22.344251 0.100666 0.000008 0.000000
0.722566 20.241543 0.102150 0.000018 0.000001
0.785398 18.341869 0.101957 0.000039 0.000002
0.848230 16.261582 0.105391 0.000091 0.000005
0.911062 14.301801 0.107389 0.000199 0.000010
0.973894 12.603788 0.105487 0.000394 0.000020
1.036726 11.249601 0.106308 0.000678 0.000035
1.099557 10.087886 0.106741 0.001079 0.000055
1.162389 9.443303 0.106957 0.001398 0.000071
1.225221 9.152799 0.105940 0.001570 0.000079
1.288053 9.331937 0.105860 0.001462 0.000074
1.350885 9.905546 0.105389 0.001161 0.000058
1.413717 11.042050 0.105466 0.000736 0.000037
1.476549 12.598167 0.105119 0.000395 0.000020
1.539380 14.520167 0.104367 0.000183 0.000009
1.602212 16.569783 0.104184 0.000080 0.000004
1.665044 18.687390 0.104276 0.000034 0.000002
1.727876 20.775408 0.104944 0.000015 0.000001
1.790708 22.905200 0.101547 0.000006 0.000000
1.853540 24.643852 0.103914 0.000003 0.000000
1.916372 26.301740 0.101973 0.000002 0.000000
1.979203 27.372071 0.101762 0.000001 0.000000
2.042035 28.697726 0.105177 0.000001 0.000000
2.104867 29.417901 0.100003 0.000000 0.000000
2.167699 30.008351 0.100038 0.000000 0.000000
2.230531 30.406016 0.096233 0.000000 0.000000
2.293363 30.171275 0.096428 0.000000 0.000000
2.356194 29.884646 0.108339 0.000000 0.000000
2.419026 29.428153 0.106679 0.000000 0.000000
2.481858 28.546982 0.123259 0.000001 0.000000
2.544690 27.757520 0.108526 0.000001 0.000000
2.607522 26.505787 0.111134 0.000001 0.000000
2.670354 24.491866 0.095963 0.000003 0.000000
2.733186 22.320664 0.096576 0.000008 0.000000
2.796017 20.052723 0.098813 0.000020 0.000001
2.858849 17.655650 0.097052 0.000052 0.000002
2.921681 15.471590 0.100497 0.000125 0.000005
2.984513 13.138167 0.092102 0.000318 0.000011
3.047345 11.092386 0.081862 0.000722 0.000020
3.110177 9.065722 0.072111 0.001626 0.000034
-3.110177 7.158102 0.071438 0.003494 0.000068
-3.047345 5.365727 0.069449 0.007168 0.000135
-2.984513 3.873190 0.067495 0.013039 0.000232
-2.921681 2.953162 0.067589 0.018855 0.000343
-2.858849 1.949554 0.064640 0.028195 0.000480
-2.796017 1.391747 0.063570 0.035261 0.000584
-2.733186 1.128270 0.061710 0.039189 0.000620
-2.670354 0.839970 0.060445 0.043991 0.000667
-2.607522 0.624769 0.060762 0.047955 0.000739
-2.544690 0.663757 0.060786 0.047211 0.000731
-2.481858 1.051932 0.059774 0.040407 0.000617
-2.419026 1.463048 0.060422 0.034267 0.000527
-2.356194 1.990616 0.055242 0.027734 0.000360
-2.293363 2.190692 0.044458 0.025597 0.000210
-2.230531 2.553036 0.042144 0.022136 0.000159
-2.167699 2.572522 0.043313 0.021964 0.000165
-2.104867 2.472360 0.039799 0.022863 0.000157
-2.042035 2.517562 0.036792 0.022453 0.000203
-1.979203 2.469778 0.036324 0.022887 0.000237
-1.916372 2.223125 0.049496 0.025266 0.000565
-1.853540 2.080157 0.039205 0.026756 0.000453
-1.790708 1.793841 0.041488 0.030011 0.000558
-1.727876 1.458784 0.042362 0.034326 0.000565
-1.665044 0.914441 0.037561 0.042697 0.000682
-1.602212 0.303813 0.028701 0.054540 0.000761
-1.539380 0.268335 0.025765 0.055321 0.000771
-1.476549 0.000000 0.023371 0.061604 0.000866
-1.413717 0.537061 0.026370 0.049671 0.000715
-1.350885 1.439940 0.025620 0.034586 0.000547
-1.288053 2.391838 0.027653 0.023614 0.000393
-1.225221 3.779470 0.027093 0.013538 0.000229
-1.162389 5.685555 0.027762 0.006305 0.000111
-1.099557 7.661896 0.028996 0.002855 0.000051
-1.036726 9.946594 0.032118 0.001142 0.000021
-0.973894 12.359408 0.042801 0.000434 0.000009
-0.911062 14.954655 0.052443 0.000153 0.000004
-0.848230 17.742242 0.063261 0.000050 0.000002
-0.785398 20.555785 0.068133 0.000016 0.000001
-0.722566 22.811160 0.075518 0.000007 0.000000
-0.659734 25.178094 0.086226 0.000003 0.000000
-0.596903 26.442288 0.091783 0.000002 0.000000
-0.534071 27.897565 0.093175 0.000001 0.000000
-0.471239 29.062473 0.096027 0.000001 0.000000
-0.408407 30.384521 0.096855 0.000000 0.000000
-0.345575 31.638454 0.099956 0.000000 0.000000
-0.282743 32.817727 0.107689 0.000000 0.000000
-0.219911 33.770369 0.108946 0.000000 0.000000
-0.157080 34.505503 0.112902 0.000000 0.000000
-0.094248 35.431659 0.120856 0.000000 0.000000
-0.031416 35.615810 0.122046 0.000000 0.000000
0.031416 35.561946 0.118225 0.000000 0.000000
0.094248 35.382089 0.108652 0.000000 0.000000
0.157080 34.934827 0.118384 0.000000 0.000000
0.219911 33.673460 0.119195 0.000000 0.000000
0.282743 32.731563 0.121592 0.000000 0.000000
0.345575 31.261855 0.129698 0.000000 0.000000
0.408407 29.717377 0.139789 0.000000 0.000000
0.471239 28.076620 0.137289 0.000001 0.000000
0.534071 26.481097 0.135712 0.000002 0.000000
0.596903 24.487358 0.135156 0.000003 0.000000
0.659734 22.344251 0.131027 0.000008 0.000000
0.722566 20.241543 0.133145 0.000018 0.000001
0.785398 18.341869 0.131952 0.000039 0.000002
0.848230 16.261582 0.134676 0.000091 0.000006
0.911062 14.301801 0.134417 0.000199 0.000013
0.973894 12.603788 0.131018 0.000394 0.000024
1.036726 11.249601 0.131276 0.000678 0.000043
1.099557 10.087886 0.132498 0.001079 0.000070
1.162389 9.443303 0.132990 0.001398 0.000092
1.225221 9.152799 0.132250 0.001570 0.000104
1.288053 9.331937 0.133178 0.001462 0.000099
1.350885 9.905546 0.133357 0.001161 0.000078
1.413717 11.042050 0.133807 0.000736 0.000051
1.476549 12.598167 0.132722 0.000395 0.000027
1.539380 14.520167 0.131816 0.000183 0.000012
1.602212 16.569783 0.131773 0.000080 0.000005
1.665044 18.687390 0.132601 0.000034 0.000002
1.727876 20.775408 0.133867 0.000015 0.000001
1.790708 22.905200 0.129265 0.000006 0.000000
1.853540 24.643852 0.128894 0.000003 0.000000
1.916372 26.301740 0.130266 0.000002 0.000000
1.979203 27.372071 0.128620 0.000001 0.000000
2.042035 28.697726 0.133263 0.000001 0.000000
2.104867 29.417901 0.133513 0.000000 0.000000
2.167699 30.008351 0.130925 0.000000 0.000000
2.230531 30.406016 0.124398 0.000000 0.000000
2.293363 30.171275 0.122493 0.000000 0.000000
2.356194 29.884646 0.130278 0.000000 0.000000
2.419026 29.428153 0.130844 0.000000 0.000000
2.481858 28.546982 0.148114 0.000001 0.000000
2.544690 27.757520 0.133045 0.000001 0.000000
2.607522 26.505787 0.134364 0.000001 0.000000
2.670354 24.491866 0.115061 0.000003 0.000000
2.733186 22.320664 0.110036 0.000008 0.000000
2.796017 20.052723 0.107894 0.000020 0.000001
2.858849 17.655650 0.105964 0.000052 0.000002
2.921681 15.471590 0.107005 0.000125 0.000005
2.984513 13.138167 0.099378 0.000318 0.000012
3.047345 11.092386 0.087770 0.000722 0.000022
3.110177 9.065722 0.077092 0.001626 0.000038

View File

@@ -1,5 +1,5 @@
name: wham
version: "0.9.0"
version: "0.9.9"
author: D. Bauer <bauer@bio.tu-darmstadt.de>
about: |
wham is a fast implementation of the weighted histogram analysis method (WHAM) written in Rust. It currently supports potential of mean force (PMF) calculations in multiple dimensions at constant temperature.

View File

@@ -1,4 +1,4 @@
use rand::{SeedableRng, StdRng, Rng};
use rand::prelude::*;
use super::histogram::{Dataset};
use super::perform_wham;
use super::{Config,calc_free_energy};

View File

@@ -3,6 +3,7 @@ extern crate wham;
extern crate clap;
extern crate rand;
use rand::prelude::*;
use clap::App;
use wham::Config;
use wham::errors::*;
@@ -49,7 +50,6 @@ fn cli() -> Result<Config> {
.chain_err(|| "Cannot parse bootstrap iteration.")?;
let bootstrap_seed: u64 = matches.value_of("bootstrap_seed")
.unwrap_or({
use rand::Rng;
let mut rng = rand::thread_rng();
&rng.gen::<u32>().to_string()
}).parse()