Polynomial Interpolation
- Updated2025-12-08
- 1 minute(s) read
C/C++ Equivalent: NISCOPE_VAL_POLYNOMIAL_INTERPOLATION
Polynomial interpolation allows oversampling or undersampling a waveform using any order polynomial set by the Measurement Polynomial Interpolation Order property or the NISCOPE_ATTR_MEAS_POLYNOMIAL_INTERPOLATION_ORDER attribute. For example, an order of 1 corresponds to linear interpolation. The new number of points is determined by the input size times the Measurement Interpolation Sampling Factor property or the NISCOPE_ATTR_MEAS_INTERPOLATION_SAMPLING_FACTOR attribute. The sampling factor can be any number greater than 0.
For every consecutive (order + 1) number of points, a polynomial is fit to the points, and new points are interpolated in a region of size dx in the middle of these order + 1 points, where dx is the original x spacing between two points in the waveform. This results in the interpolation shrinking the total x size of the waveform, since points cannot be accurately interpolated near the boundaries. In particular, the waveform loses 0.5 × dx × (order – 1) amount of x range at both the beginning and the end of the waveform.
Units
Volts
X Units
Seconds
Resulting Array Size
inputSize × Measurement Interpolation Sampling Factor property
or
inputSize × NISCOPE_ATTR_MEAS_INTERPOLATION_SAMPLING_FACTOR attribute