Matlabwilliam hill官网
直播中

ande124

9年用户 9经验值
擅长:电源/新能源 模拟技术 控制/MCU RF/无线
私信 关注
[问答]

拟合函数的修正

最近在做一个非线性拟合的模型,拟合出来的关系是一个S型函数。但是当自变量的值过大时,自变量和因变量对应关系不是非常好,换句话说从因变量的值不能反推自变量的值,于是需要做一个修正,将数值过大的一段函数关系修正成为和函数中间段差不多的线性关系。我把函数的原数据贴上来:
x = [-10 0 10 20 30 40];%%对数表示
y = [0.00275 0.02280 0.08609 0.12055 0.12566 0.12619];
xi=linspace(-10,40,500);
b0=[0.5 0.5 0];   
b=nlinfit(x,y,@myfunc,b0);%%myfunc已定义在m文件中
yii = 1./(b(1)+b(2)*exp(-b(3).*xi));
plot(x,y,'-ob',xi,yii,'k');
grid on;
xlabel('电阻抗增加值(X=10logK)');
ylabel('重构电阻抗变化');
title '电阻抗与重构值关系';
legend('原始数据','非线性拟合','Location','Northwest');


m文件如下:
function f = myfunc(b,x)
f = 1./(b(1)+b(2)*exp(-b(3).*x));
end

下面传图:
原始拟合关系如下 054116dhvvvcvcczhh28hh.png
希望找到一个函数可以修正成如下关系(红色标注):
054251rtftxd0t93i8t0df.png

希望能到到指点和启发。

已退回1积分

回帖(2)

ande124

2015-4-21 10:47:51
感觉没人感兴趣啊
举报

ande124

2015-4-21 14:56:57
引用: tttddd1234 发表于 2015-4-20 22:11
摩尔吧网站上新出来的课程,http://www.moore8.com/courses/555,关于MATLAB的,但是里面有拟合函数的内容 ...

好的,谢谢。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分