public CMNVectorFilterParams GetParams() { CMNVectorFilterParams p = new CMNVectorFilterParams(); p.FHat = CMNF.FHat.Select(x => x.Value).ToArray(); p.fHat = CMNF.fHat.Select(x => x.Value.ToColumnMatrix()).ToArray(); p.HHat = CMNF.HHat.Select(x => x.Value).ToArray(); p.hHat = CMNF.hHat.Select(x => x.Value.ToColumnMatrix()).ToArray(); p.KTilde = CMNF.KTilde.Select(x => x.Value).ToArray(); p.KHat = CMNF.KHat.Select(x => x.Value).ToArray(); return(p); }
public void SetParams(CMNVectorFilterParams p) { for (int t = 0; t < p.FHat.Length; t++) { // t+1 since we start filtring from t = 1 CMNF.FHat.Add(t + 1, p.FHat[t]); CMNF.fHat.Add(t + 1, p.fHat[t].Column(0)); CMNF.HHat.Add(t + 1, p.HHat[t]); CMNF.hHat.Add(t + 1, p.hHat[t].Column(0)); CMNF.KTilde.Add(t + 1, p.KTilde[t]); CMNF.KHat.Add(t + 1, p.KHat[t]); } }