Interpolate non-unique values

I have two vectors for a symmetrical flyover to compute an aircraft noise footprint:
pressure = [0 0.5 1 2 4 2 1 0.5 0]
tUnequal = [4 4.3 5 6 6.3 7 7.13 9]
I want to interpolate that symmetric pressure vector for an evenly spaced time like:
tEqual = [4 5 6 7 8 9].
Interp1 does not work in this case due to the symmetry of the pressure vector:
Error using griddedInterpolant
The grid vectors must contain unique points.
Any suggestions?

2 Commenti

Matt J
Matt J il 18 Giu 2018
In what way does it "not work"?
Error using griddedInterpolant
The grid vectors must contain unique points.

Accedi per commentare.

 Risposta accettata

Matt J
Matt J il 18 Giu 2018
Modificato: Matt J il 18 Giu 2018
This might be what you want
>> pressureEqual=interp1(tUnequal, pressure(1:length(tUnequal)), tEqual)
pressureEqual =
0 1.0000 2.0000 2.0000 0.7674 0.5000

Più risposte (0)

Prodotti

Release

R2018a

Richiesto:

il 18 Giu 2018

Commentato:

il 6 Ago 2018

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by