Interpolate non-unique values

8 ビュー (過去 30 日間)
mldmnn
mldmnn 2018 年 6 月 18 日
コメント済み: mldmnn 2018 年 8 月 6 日
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 件のコメント
Matt J
Matt J 2018 年 6 月 18 日
In what way does it "not work"?
mldmnn
mldmnn 2018 年 6 月 18 日
Error using griddedInterpolant
The grid vectors must contain unique points.

サインインしてコメントする。

採用された回答

Matt J
Matt J 2018 年 6 月 18 日
編集済み: Matt J 2018 年 6 月 18 日
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
  1 件のコメント
mldmnn
mldmnn 2018 年 8 月 6 日
Thanks!

サインインしてコメントする。

その他の回答 (0 件)

製品


リリース

R2018a

Community Treasure Hunt

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

Start Hunting!

Translated by