Often PSDs are provided with only a few points. This is done with convenience and as a measure of being conservative - i.e. the PSD contains all of the expected disturbances by enveloping the expected PSD.
Using the PSD with only a few points will almost always cause problems. As a result interpolation on a log scale is used to fill in PSD with lots of points.
If a PSD's frequency vector is defined by the vector x and the PSD's magnitude by y then interpolating a new vector of frequencies xi can be done using the interp1q command as follows
>> logX = log10(x); >> logY = log10(y); >> logXi = log10(xi); >> yi = 10.^interp1q(logX, logY, logXi);
- yi is the interpolated PSD magnitudes corresponding to the frequencies of xi.