Remove dependency.
This commit is contained in:
@@ -7,7 +7,6 @@ license = "MIT OR Apache-2.0"
|
||||
|
||||
[dependencies]
|
||||
cblas = "0.2"
|
||||
derivative = "2.1"
|
||||
lapacke = "0.2"
|
||||
ndarray = "0.13"
|
||||
ordered-float = "1.0"
|
||||
|
||||
@@ -1,4 +1,6 @@
|
||||
use derivative::Derivative;
|
||||
use std::fmt;
|
||||
|
||||
// use derivative::Derivative;
|
||||
use ndarray::prelude::*;
|
||||
use ndarray::stack;
|
||||
|
||||
@@ -6,11 +8,8 @@ use crate::kernel::Kernel;
|
||||
|
||||
use super::Fitter;
|
||||
|
||||
#[derive(Derivative)]
|
||||
#[derivative(Debug)]
|
||||
pub struct RecursiveFitter {
|
||||
ts_new: Vec<f64>,
|
||||
#[derivative(Debug = "ignore")]
|
||||
kernel: Box<dyn Kernel>,
|
||||
ts: Vec<f64>,
|
||||
ms: ArrayD<f64>, // TODO Replace with a vec
|
||||
@@ -58,6 +57,30 @@ impl RecursiveFitter {
|
||||
}
|
||||
}
|
||||
|
||||
impl fmt::Debug for RecursiveFitter {
|
||||
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
|
||||
f.debug_struct("RecursiveFitter")
|
||||
.field("ts_new", &self.ts_new)
|
||||
.field("ts", &self.ts)
|
||||
.field("ms", &self.ms)
|
||||
.field("vs", &self.vs)
|
||||
.field("ns", &self.ns)
|
||||
.field("xs", &self.xs)
|
||||
.field("is_fitted", &self.is_fitted)
|
||||
.field("h", &self.h)
|
||||
.field("i", &self.i)
|
||||
.field("a", &self.a)
|
||||
.field("q", &self.q)
|
||||
.field("m_p", &self.m_p)
|
||||
.field("p_p", &self.p_p)
|
||||
.field("m_f", &self.m_f)
|
||||
.field("p_f", &self.p_f)
|
||||
.field("m_s", &self.m_s)
|
||||
.field("p_s", &self.p_s)
|
||||
.finish()
|
||||
}
|
||||
}
|
||||
|
||||
impl Fitter for RecursiveFitter {
|
||||
fn add_sample(&mut self, t: f64) -> usize {
|
||||
let idx = self.ts.len() + self.ts_new.len();
|
||||
@@ -146,8 +169,6 @@ impl Fitter for RecursiveFitter {
|
||||
let k = self.p_p[i].dot(&self.h)
|
||||
/ (1.0 + self.xs[i] * self.h.dot(&self.p_p[i]).dot(&self.h));
|
||||
|
||||
// let k = Array1::from(k);
|
||||
|
||||
self.m_f[i] =
|
||||
&self.m_p[i] + &(&k * (self.ns[i] - self.xs[i] * self.h.dot(&self.m_p[i])));
|
||||
|
||||
|
||||
Reference in New Issue
Block a user