Interpolation of matrices corresponding to time vector

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 commentaires

KALYAN ACHARJYA
KALYAN ACHARJYA le 25 Juin 2019
Modifié(e) : KALYAN ACHARJYA le 25 Juin 2019
Can you illustrate with example?
Consider t = [1, 2, 3] and corresponding cell is A, where
A{1} = [1 1; 1 1] , A{2} = [1 0.9;0.95 .87] , A{3} = [1.1 0.85;0.91 .8].
Now want to find the corresponding matrices at other time points, say for time t_new = [1.2, 2.1, 2.9].
Hello,
You could try to look at this
maybe it will help.
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

Connectez-vous pour commenter.

 Réponse acceptée

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 commentaires

Thank you for yor reply. Can you please elaborate the code a bit. It will be reallly helpfull.
The answered is already provided by @Andrei, Hello @Ashok, please accept the answer to give due credit to the answer provider.

Connectez-vous pour commenter.

Catégories

En savoir plus sur Interpolation dans Centre d'aide et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by