mirror of
https://github.com/dnlbauer/WHAM.git
synced 2026-09-10 22:25:31 +00:00
perform unneeded filter
This commit is contained in:
12
src/lib.rs
12
src/lib.rs
@@ -63,14 +63,10 @@ fn calc_bin_probability(bin: usize, ds: &Dataset, F: &[f64]) -> f64 {
|
|||||||
// This evaluates the second WHAM equation for each window and returns exp(F/kT)
|
// This evaluates the second WHAM equation for each window and returns exp(F/kT)
|
||||||
fn calc_window_F(window: usize, ds: &Dataset, P: &[f64]) -> f64 {
|
fn calc_window_F(window: usize, ds: &Dataset, P: &[f64]) -> f64 {
|
||||||
let f: f64 = (0..ds.num_bins).zip(P.iter()) // zip bins and P
|
let f: f64 = (0..ds.num_bins).zip(P.iter()) // zip bins and P
|
||||||
.filter_map(|bin_and_prob: (usize, &f64)| {
|
.map(|bin_and_prob: (usize, &f64)| {
|
||||||
if bin_and_prob.1 == &0.0 { // skip zeros for speed
|
let bias = ds.calc_bias(bin_and_prob.0, window);
|
||||||
None
|
bin_and_prob.1 * bias
|
||||||
} else {
|
}).sum();
|
||||||
let bias = ds.calc_bias(bin_and_prob.0, window);
|
|
||||||
Some(bin_and_prob.1 * bias)
|
|
||||||
}
|
|
||||||
}).sum();
|
|
||||||
1.0/f
|
1.0/f
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user