/** * @param ssf * @param data */ @Override public void prepare(final IMSsf ssf, final IMSsfData data) { if (m_var.isOpen()) { m_fdata.checkSize(data.getCount()); } else { super.clear(); m_fdata.init(ssf.getStateDim(), data.getVarsCount(), data.getCount()); } m_var.prepare(ssf, data); }
/** * @param t * @param state */ @Override public void save(final int t, final MState state) { m_var.save(t, state); m_fdata.save(t, state); DataBlock diag = state.F.diagonal(); for (int i = 0; i < state.E.getLength(); ++i) { double r = diag.get(i); if (r != 0) { addStd(state.E.get(i), r); } } }
/** @param start */ public void saveAll(int start) { m_var.setSavingK(true); m_var.setSavingP(true); m_var.setStartSaving(start); }
/** @param start */ public void setStartSaving(int start) { m_var.setStartSaving(start); }
@Override public void clear() { super.clear(); m_fdata.clear(); m_var.clear(); }