簡體   English   中英

如何在Matlab中讀取表,找到與x對應的y值

[英]How to read a table in matlab, find the y values corresponding to x

我想使用與表中給定x值相對應的y值(我的當前表具有1000個值,帶有10-4個小數點,因此我使用:

load question_table.mat
eta_p = %assign a value 
F12_p=find( (eta <eta_p+0.01) & (eta > eta_p-0.01), 1, 'first' )

什么東西少了 ?

這是我創建表的方式,運行此程序。

i = 1;
etaspan = -500:0.001:500;
y = zeros(length(etaspan),1);
f = @(x,eta) (x.^(1/2))./(1+exp(x-eta));

for eta = etaspan
   g = @(x) f(x,eta);
   y(i) = integral(g,0,500);
   i = i + 1;
end

f=y 
eta=etaspan 
save question_table.mat eta f

只需讓MATLAB為您完成插值即可:

y_p = interp1(eta, y, eta_p);

默認情況下, interp1使用線性插值,但可以使用高階插值方法。 即使使用線性,您的表似乎也比所需的密度大得多。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM