Filter löschen
Filter löschen

Interpolation using for loop

5 Ansichten (letzte 30 Tage)
Sanley Guerrier
Sanley Guerrier am 18 Nov. 2023
Kommentiert: Sanley Guerrier am 18 Nov. 2023
Hi all;
I have a table temperature (35040 X 6),
Space mesh (1 X 104),
And Z_sensor (1 X 6)
I want to interpolate them to find the initial temperature using a for loop. Can someone help me with that?
Thank you!
for i =1: length(z_mesh)
T(i,1) = interp1( z_mesh, temp(i,:), z_sensor,'linear');
end
  6 Kommentare
Torsten
Torsten am 18 Nov. 2023
Bearbeitet: Torsten am 18 Nov. 2023
Is it correct then that you are given a single value for time (tq) and a single value for z_mesh (xq) and you want to interpolate Tq from a given time vector t, a sensor vector x (z_sensor) and a temperature matrix T ?
Then study how to use "interp2" instead of "interp1".
E.g.
tstart = 0;
tend = 10;
dt = 0.1;
zstart = 0;
zend = 1;
dz = 0.1;
z = zstart:dz:zend;
t = (tstart:dt:tend)';
T = z.^2+t.^2;
tq = 9.25;
zq = 0.135;
Tq = interp2(z,t,T,zq,tq)
Tq = 85.5855
Sanley Guerrier
Sanley Guerrier am 18 Nov. 2023
Thank you!

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Matt J
Matt J am 18 Nov. 2023
Bearbeitet: Matt J am 18 Nov. 2023
You don't need a for-loop to interpolate successive temp(i,:). Just do,
T = interp1(z_sensor, temp', z_mesh ,'linear');
  3 Kommentare
Matt J
Matt J am 18 Nov. 2023
Bearbeitet: Matt J am 18 Nov. 2023
Whatever you are doing later is unrelated to the task you describe in your post. The code I gave you is equivalent to what the loop you posted is trying to do.
Sanley Guerrier
Sanley Guerrier am 18 Nov. 2023
yes, you are right I can use it without a for loop. thanks.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Programmatic Model Editing finden Sie in Help Center und File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by