我希望使用与表中给定的y
值相对应的x
值(我的当前表有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
发布于 2014-12-24 16:02:26
让MATLAB帮你做插补:
y_p = interp1(eta, y, eta_p);
interp1
默认使用线性插值,但可以使用高阶插值方法。即使是线性的,您的桌子似乎比必要的密度大得多。
https://stackoverflow.com/questions/27638814
复制相似问题