I am working with seismic ground motion records from the PEER database. They are acceleration measurements that are band limited to 50 Hz and sampled at 200 Hz.

I use these records to drive an explicit finite element analysis of a structure to determine its response under the earthquake. This analysis runs with a 1e-5 time step (100,000 Hz). If I were to input the sampled records directly the FEA program would linearly interpolate the time steps between the samples, which would distort the signal.

Therefore I need to reconstruct the original signal and resample it at 100,000 Hz (or high enough that the interpolation doesn't affect accuracy much).

One property that I would like to preserve is the double integral of the signal, which gives displacement. This keeps the structure from drifting away over time. I do not care about the calculation time, as it only needs to be done once and is trivial compared to the FEA calculation time.

A previous answer discussed several methods for interpolation but not how to choose from among them.

I have experimented with sinc interpolation using a Kaiser window with an artificially generated signal that I sampled and then reconstructed and I see decent results, but there are visible differences in the time domain.

Is there some way to determine what interpolation method (and parameters in the case of a windowed method) would give the most accurate results?

  • 1
    $\begingroup$ If you don't care about calculation time, and you have a large number of samples, sinc interpolation (which is theoretically perfect) should be your choice. $\endgroup$
    – MBaz
    Feb 15 '17 at 18:22
  • $\begingroup$ @MBaz so by that do you mean sinc interpolation without windowing? $\endgroup$ Feb 15 '17 at 21:19
  • $\begingroup$ Yes. Note that in practice you need to truncate the sinc pulse, since it becomes numerically very tricky to handle when the sidelobe amplitudes are small; you may need to experiment. Also, I'm no expert in this area -- you should test this idea and verify it meets your requirements. $\endgroup$
    – MBaz
    Feb 15 '17 at 22:37

If there are differences then some likely sources might be that the window on the Sinc wasn't wide enough, that the data wasn't really sufficiently bandlimited, or too much quantization noise in the samples.

The double integration of anything with system offsets or quantization noise is unlikely to be zero. (See random walk) One solution would be to compute the double integral of the first pass interpolated result and then bias the interpolator (noise filtered if needed) until the resulting double integral goes to zero.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.