double[] scomponent() { DisturbanceSmoother smoother = new DisturbanceSmoother(); smoother.setSsf(ssf); smoother.process(ssfdata); SmoothingResults sstates = smoother.calcSmoothedStates(); double[] cmp = new double[ssfdata.getCount()]; DataBlock z = new DataBlock(ssf.getStateDim()); DataBlock zc = z.drop(2, 0); for (int i = 0; i < cmp.length; ++i) { zc.copy(S.row(i)); cmp[i] = sstates.zcomponent(i, z); } return cmp; }