Burg |
public double GetMeanPredictionErrorNonrecursivelyBackward( IROComplexDoubleVector x )
| Exception | Condition |
|---|---|
| InvalidOperationException | Thrown if the algorithm has not been executed yet. |
The prediction is done non-recursively, i.e. a part of the signal (the signal window) is used to predict the signal value before the window, and this predicted signal value is then compared with the original signal value stored in x to build the sum of errors.
The predicted signal value is not used to make further predictions. Instead, the signal window is moved by one point to the left and another prediction is made, using the original signal in x. This is repeated until the first point (index 0) is predicted.
The return value is the square root of the sum of squared differences between predicted signal values and original values, divided by the number of predicted values. The number of predicted values is the length of the signal x minus the number of coefficients of the model.