summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authornatrixaeria <upezu@student.kit.edu>2019-12-13 05:18:14 +0100
committernatrixaeria <upezu@student.kit.edu>2019-12-13 05:20:12 +0100
commit05f85f625eadb2688c69af89d533eeb69ba76da0 (patch)
treee8a044f7e3b9082def36c62308c170e17a26cfcf
parentfc7daf3cb0ab42733a52ce9993570909ed059574 (diff)
Make two_level trait impl more readable
Also fix a little non-returning result issue
-rw-r--r--src/plot/gnuplot.rs1
-rw-r--r--src/simulation/two_level.rs6
2 files changed, 3 insertions, 4 deletions
diff --git a/src/plot/gnuplot.rs b/src/plot/gnuplot.rs
index 8bb5ac6..fec64b7 100644
--- a/src/plot/gnuplot.rs
+++ b/src/plot/gnuplot.rs
@@ -29,6 +29,7 @@ fn write_data_file(path: &str, data: &[[f64; 6]]) -> Result<(), io::Error> {
line[0], line[1], line[2], line[3], line[4], line[5]
))?;
}
+ Ok(())
}
impl Gnuplot {
diff --git a/src/simulation/two_level.rs b/src/simulation/two_level.rs
index 99336a5..2d9d459 100644
--- a/src/simulation/two_level.rs
+++ b/src/simulation/two_level.rs
@@ -16,10 +16,8 @@ impl TwoLevel {
impl State for TwoLevel {
fn fibrate(&self) -> Vec<f64> {
- self.state
- .iter()
- .flat_map(|c| [c.re, c.im])
- .map(|v| *v)
+ self.state.iter()
+ .flat_map(|c| std::iter::once(c.re).chain(std::iter::once(c.im)))
.collect()
}