Change vs to be a vec instead of array
This commit is contained in:
@@ -2,7 +2,6 @@ use std::fmt;
|
|||||||
use std::iter;
|
use std::iter;
|
||||||
|
|
||||||
use ndarray::prelude::*;
|
use ndarray::prelude::*;
|
||||||
use ndarray::stack;
|
|
||||||
|
|
||||||
use crate::kernel::Kernel;
|
use crate::kernel::Kernel;
|
||||||
|
|
||||||
@@ -12,10 +11,10 @@ pub struct RecursiveFitter {
|
|||||||
ts_new: Vec<f64>,
|
ts_new: Vec<f64>,
|
||||||
kernel: Box<dyn Kernel>,
|
kernel: Box<dyn Kernel>,
|
||||||
ts: Vec<f64>,
|
ts: Vec<f64>,
|
||||||
ms: Vec<f64>, // TODO Replace with a vec
|
ms: Vec<f64>,
|
||||||
vs: Array1<f64>, // TODO Replace with a vec
|
vs: Vec<f64>,
|
||||||
ns: Vec<f64>, // TODO Replace with a vec
|
ns: Vec<f64>,
|
||||||
xs: Vec<f64>, // TODO Replace with a vec
|
xs: Vec<f64>,
|
||||||
is_fitted: bool,
|
is_fitted: bool,
|
||||||
h: Array1<f64>,
|
h: Array1<f64>,
|
||||||
i: Array2<f64>,
|
i: Array2<f64>,
|
||||||
@@ -39,7 +38,7 @@ impl RecursiveFitter {
|
|||||||
kernel,
|
kernel,
|
||||||
ts: Vec::new(),
|
ts: Vec::new(),
|
||||||
ms: Vec::new(),
|
ms: Vec::new(),
|
||||||
vs: Array1::zeros(0),
|
vs: Vec::new(),
|
||||||
ns: Vec::new(),
|
ns: Vec::new(),
|
||||||
xs: Vec::new(),
|
xs: Vec::new(),
|
||||||
is_fitted: true,
|
is_fitted: true,
|
||||||
@@ -101,7 +100,7 @@ impl Fitter for RecursiveFitter {
|
|||||||
// Usual variables.
|
// Usual variables.
|
||||||
self.ts.extend(self.ts_new.iter());
|
self.ts.extend(self.ts_new.iter());
|
||||||
self.ms.extend(iter::repeat(0.0).take(n_new));
|
self.ms.extend(iter::repeat(0.0).take(n_new));
|
||||||
self.vs = stack![Axis(0), self.vs, self.kernel.k_diag(&self.ts_new)];
|
self.vs.extend(self.kernel.k_diag(&self.ts_new).iter());
|
||||||
self.ns.extend(iter::repeat(0.0).take(n_new));
|
self.ns.extend(iter::repeat(0.0).take(n_new));
|
||||||
self.xs.extend(iter::repeat(0.0).take(n_new));
|
self.xs.extend(iter::repeat(0.0).take(n_new));
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user