invertOrdinary function
Invert nonseasonal differencing
Implementation
List<double> invertOrdinary(List<double> base, List<double> diffs, int d) {
if (d == 0) return List<double>.from(diffs);
var cur = List<double>.from(diffs);
var hist = List<double>.from(base);
List<double> restored = [];
for (int k=0; k<d; k++) {
double last = hist.last;
final inv = <double>[];
for (final v in cur) { last += v; inv.add(last); }
restored = inv;
hist = hist + inv;
cur = restored;
}
return restored;
}