Interpolation of matrices corresponding to time vector

1 view (last 30 days)
I have a vector containing time points, and a cell structure containing matrices as its elements.
I want to interpolate the corresponding matrix for some time point which is not in the time vector. How to do that?
Presentation1.png
  4 Comments
Bjorn Gustavsson
Bjorn Gustavsson on 26 Jun 2019
Or, depending on sizes, it might be more efficient to interpolate all matrix components at the same time with interp3, or interpn. The different interpolation functions have slightly different options when it comes to interpolation methods.
HTH

Sign in to comment.

Accepted Answer

Andrei Bobrov
Andrei Bobrov on 26 Jun 2019
Variant with interp1:
t = [1, 2, 3];
A = {[1, 1; 1, 1] ,[1, 0.9;0.95, .87] , [1.1, 0.85;0.91, .8]};
tt = [1.2, 2.1, 2.9];
out = interp1(t(:),permute(cat(3,A{:}),[3,2,1]),tt);
out = permute(out,3:-1:1);
  2 Comments
Ashok Das
Ashok Das on 26 Jun 2019
Thank you for yor reply. Can you please elaborate the code a bit. It will be reallly helpfull.
KALYAN ACHARJYA
KALYAN ACHARJYA on 26 Jun 2019
The answered is already provided by @Andrei, Hello @Ashok, please accept the answer to give due credit to the answer provider.

Sign in to comment.

More Answers (1)

Vismay Raj
Vismay Raj on 26 Jun 2019

Categories

Find more on Interpolation in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!