any alternative function to speed up the interpolation process? because interp1 is very slow?

19 ビュー (過去 30 日間)
my data is not evenly spaced . I made it as a monotonic increasing, and interp 1 works correctly, but it is very slow. Thanks in advance.

採用された回答

John D'Errico
John D'Errico 2016 年 6 月 18 日
The crystal ball is so foggy.
1. We have no idea how much data you have. Big problems take longer to solve. Sometimes you just need to accept that fact, and get some coffee while you wait.
2. We have no idea what method you are using in interp1. pchip will be faster than spline. Linear faster yet.
3. We have no idea how you are calling it. For example, are you calling with ONE point at a time, using a spline method, but on the same set of data? This will force interp1 to recompute the spline over and over again.
If 3 is the case, then create an interpolant using a tool like spline or pchip IN ADVANCE. Then use tools like ppval to evaluate the spline. This avoids recomputing the spline repeatedly.
If your data is changing constantly, and you need to use a smooth interpolant, then accept that it will take longer than you wish, or use a lower order interpolant which will be faster.

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeInterpolation についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by