Double Interpolation from a table
12 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Karthik Agnihotri
am 22 Okt. 2020
Kommentiert: Karthik Agnihotri
am 22 Okt. 2020
I'm trying to interpolate off the table attached.
E = xlsread('Exhaust_Cp.xlsx')
m_dot_exhaust =[0.0168758667758187 0.0168286355030812 0.0168280643029830 0.0163466175171450]
T_avg_rankine =[871.065000000000 974.025000000000 1115.12700000000 1304.31600000000]
[x,y]=meshgrid(E(2:end,1),E(1,2:end))
z=[E(2:end,2:end)]
Vq=interp2(x,y,z,m_dot_exhaust(1),T_avg_rankine(1))
But I keep getting this error. Can anyone tell me how to resolve this?
Error using griddedInterpolant
The sample points arrays must have the same size as the sample values array.
4 Kommentare
KSSV
am 22 Okt. 2020
It is beacuse, your points are lying outside the given grid....it comes to extrapolation and the result cannot be trusted.
Akzeptierte Antwort
KSSV
am 22 Okt. 2020
Vq=interp2(x,y,z',m_dot_exhaust(1),T_avg_rankine(1)) ;
2 Kommentare
KSSV
am 22 Okt. 2020
m_dot_exhaust =[0.0168758667758187 0.0168286355030812 0.0168280643029830 0.0163466175171450];
T_avg_rankine =[871.065000000000 974.025000000000 1115.12700000000 1304.31600000000];
[x,y]=meshgrid(E(2:end,1),E(1,2:end));
z=[E(2:end,2:end)];
Vq=interp2(X,Y,z',T_avg_rankine,m_dot_exhaust*1000)
From your given points T_avg_rankine is x-axis and m_dot_exhaust is y-axis. Check your units......if I multiply this by 1000, the points very much lie in the grid.
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Interpolation finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!