Fix clippy warning

This commit is contained in:
2022-12-16 15:51:58 +01:00
parent 6dd84f7fd2
commit 51467f7b69
2 changed files with 39 additions and 40 deletions

View File

@@ -14,7 +14,7 @@ pub(crate) struct Skill {
} }
impl Skill { impl Skill {
fn posterior(&self) -> Gaussian { pub(crate) fn posterior(&self) -> Gaussian {
self.likelihood * self.backward * self.forward self.likelihood * self.backward * self.forward
} }
} }
@@ -251,6 +251,7 @@ impl Batch {
self.iteration(from, agents); self.iteration(from, agents);
} }
// TODO(anders): Use Item::posterior() instead.
pub fn posterior(&self, agent: Index) -> Gaussian { pub fn posterior(&self, agent: Index) -> Gaussian {
let skill = &self.skills[&agent]; let skill = &self.skills[&agent];
@@ -259,8 +260,8 @@ impl Batch {
pub(crate) fn posteriors(&self) -> HashMap<Index, Gaussian> { pub(crate) fn posteriors(&self) -> HashMap<Index, Gaussian> {
self.skills self.skills
.keys() .iter()
.map(|&idx| (idx, self.posterior(idx))) .map(|(&idx, skill)| (idx, skill.posterior()))
.collect::<HashMap<_, _>>() .collect::<HashMap<_, _>>()
} }
@@ -388,8 +389,7 @@ impl Batch {
} else { } else {
self.events.iter().map(|event| event.evidence.ln()).sum() self.events.iter().map(|event| event.evidence.ln()).sum()
} }
} else { } else if online || forward {
if online || forward {
self.events self.events
.iter() .iter()
.enumerate() .enumerate()
@@ -425,7 +425,6 @@ impl Batch {
.sum() .sum()
} }
} }
}
pub fn get_composition(&self) -> Vec<Vec<Vec<Index>>> { pub fn get_composition(&self) -> Vec<Vec<Vec<Index>>> {
self.events self.events

View File

@@ -210,8 +210,8 @@ impl History {
let mut data: HashMap<Index, Vec<(i64, Gaussian)>> = HashMap::new(); let mut data: HashMap<Index, Vec<(i64, Gaussian)>> = HashMap::new();
for b in &self.batches { for b in &self.batches {
for agent in b.skills.keys() { for (agent, skill) in b.skills.iter() {
let point = (b.time, b.posterior(*agent)); let point = (b.time, skill.posterior());
if let Some(entry) = data.get_mut(agent) { if let Some(entry) = data.get_mut(agent) {
entry.push(point); entry.push(point);