invertOrd function

List<double> invertOrd(
  1. List<double> history,
  2. List<double> diffs,
  3. int d
)

Implementation

List<double> invertOrd(List<double> history, List<double> diffs, int d) {
  if (d <= 0) return List<double>.from(diffs);
  var out = List<double>.from(history);
  var cur = List<double>.from(diffs);
  for (int k = 0; k < d; k++) {
    for (final v in cur) out.add(out.last + v);
    cur = out.sublist(history.length);
    history = List<double>.from(out);
  }
  return out.sublist(history.length - diffs.length);
}