フィルターのクリア

Interpolation using for loop

5 ビュー (過去 30 日間)
Sanley Guerrier
Sanley Guerrier 2023 年 11 月 18 日
コメント済み: Sanley Guerrier 2023 年 11 月 18 日
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 件のコメント
Torsten
Torsten 2023 年 11 月 18 日
編集済み: Torsten 2023 年 11 月 18 日
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 2023 年 11 月 18 日
Thank you!

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

採用された回答

Matt J
Matt J 2023 年 11 月 18 日
編集済み: Matt J 2023 年 11 月 18 日
You don't need a for-loop to interpolate successive temp(i,:). Just do,
T = interp1(z_sensor, temp', z_mesh ,'linear');
  3 件のコメント
Matt J
Matt J 2023 年 11 月 18 日
編集済み: Matt J 2023 年 11 月 18 日
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 2023 年 11 月 18 日
yes, you are right I can use it without a for loop. thanks.

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

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeProgrammatic Model Editing についてさらに検索

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by