matlab 拟合曲线u=a*i+b*i1+c*i2+d*i3+e*i4+f*i5;求abcdef的值,保证误差最小.u=[-190 -180 -170 -160 -150 -145 -140 -135 -130 -125 -120 -115 -110 -105 -100 -95 -90 -85 -80 0 80 85 90 95 100 105 110 115 120 125 130 135 140 145 150 160 170 180 1

来源:学生作业帮助网 编辑:六六作业网 时间:2024/11/25 19:27:51
matlab拟合曲线u=a*i+b*i1+c*i2+d*i3+e*i4+f*i5;求abcdef的值,保证误差最小.u=[-190-180-170-160-150-145-140-135-130-12

matlab 拟合曲线u=a*i+b*i1+c*i2+d*i3+e*i4+f*i5;求abcdef的值,保证误差最小.u=[-190 -180 -170 -160 -150 -145 -140 -135 -130 -125 -120 -115 -110 -105 -100 -95 -90 -85 -80 0 80 85 90 95 100 105 110 115 120 125 130 135 140 145 150 160 170 180 1
matlab 拟合曲线u=a*i+b*i1+c*i2+d*i3+e*i4+f*i5;求abcdef的值,保证误差最小.
u=[-190 -180 -170 -160 -150 -145 -140 -135 -130 -125 -120 -115 -110 -105 -100 -95 -90 -85 -80 0 80 85 90 95 100 105 110 115 120 125 130 135 140 145 150 160 170 180 190];
i=[-11.75 -8 -5.4 -3.6 -2.55 -2.15 -1.78 -1.48 -1.24 -1.04 -0.84 -0.68 -0.54 -0.435 -0.35 -0.275 -0.225 -0.185 -0.155 0 0.155 0.185 0.225 0.275 0.35 0.435 0.54 0.68 0.84 1.04 1.24 1.48 1.78 2.15 2.55 3.6 5.4 8 11.75];
i1=[0 -14.5951 -8.70624 -5.05775 -3.15684 -2.6184 -2.03686 -1.57287 -1.21393 -0.92088 -0.61245 -0.38355 -0.18644 -0.05543 0.044303 0.132361 0.174174 0.204067 0.21981 0.509332 0.776095 0.766345 0.799222 0.859508 0.974783 1.107592 1.279786 1.520952 1.794451 2.143856 2.479135 2.892101 3.419236 4.075011 4.768147 6.829628 10.34208 15.33185 22.48945]
i2=[0 -25.8377 -13.0789 -6.01813 -2.83163 -2.39606 -1.58883 -0.95314 -0.48477 -0.11084 0.330913 0.616307 0.85861 0.978365 1.055434 1.126835 1.112922 1.092006 1.053912 1.612786 2.072008 1.92409 1.916399 1.977689 2.157985 2.366555 2.652525 3.074362 3.544815 4.16022 4.719022 5.432375 6.36428 7.532184 8.730749 12.81957 19.69495 29.26946 42.9261]
i3=[
0 -43.7625 -17.2727 -4.31146 0.439183 -0.14852 0.734815 1.423325 1.879181 2.232085 2.801955 3.062991 3.284045 3.279887 3.23269 3.209288 3.026973 2.864398 2.687172 3.805746 4.597123 4.064587 3.943544 3.985286 4.28014 4.613459 5.098447 5.85074 6.666365 7.760898 8.684832 9.924039 11.58369 13.67485 15.74084 23.92964 37.41955 55.7766 81.81628
]
i4=[
0 -69.0122 -16.5211 5.688279 11.26781 6.950073 7.329381 7.617703 7.657272 7.671443 8.285783 8.278246 8.28862 7.884205 7.479878 7.18926 6.595848 6.10784 5.622838 7.938698 9.300645 7.79536 7.42128 7.410709 7.928991 8.478009 9.32364 10.69434 12.11987 14.08715 15.59626 17.76465 20.74487 24.50981 28.05347 44.60122 71.11044 106.2533 155.8581
]
i5=[
0 -95.0329 3.074593 37.31438 39.53298 24.43079 22.78125 21.4573 20.05314 18.94978 19.36722 18.49246 17.85301 16.43822 15.19365 14.2947 12.79884 11.64078 10.5363 15.46346 17.78781 13.94605 13.08437 12.99184 13.98467 14.92531 16.44629 18.99726 21.50568 25.07885 27.49587 31.32388 36.72266 43.53728 49.56938 83.28256 135.4131 202.5398 296.9241
]

matlab 拟合曲线u=a*i+b*i1+c*i2+d*i3+e*i4+f*i5;求abcdef的值,保证误差最小.u=[-190 -180 -170 -160 -150 -145 -140 -135 -130 -125 -120 -115 -110 -105 -100 -95 -90 -85 -80 0 80 85 90 95 100 105 110 115 120 125 130 135 140 145 150 160 170 180 1
从下图的曲线可见,问题最大的症结在于:u在第20个点处有比较激烈的变化,而i,i1-i5都没有这样的变化的特征,所以想要使用这6个信号的先行叠加得到和u比较接近的值是不太现实的.
 

 
要想使拟合的总误差最小,可以用lsqcurvefit函数,代码如下(前面应该是你贴出来的数据定义,省略):
c0=ones(1,6);

c0=[16 -331 369 50 -153 39];
x=[i;i1;i2;i3;i4;i5];
f=inline('c(1)*x(1,:)+c(2)*x(2,:)+c(3)*x(3,:)+c(4)*x(4,:)+c(5)*x(5,:)+c(6)*x(6,:)','c','x');
opt=optimset('MaxFunEvals',1e5,'MaxIter',1e5);
c=lsqcurvefit(f,c0,x,u,[],[],opt)   % 6个元素,分别对应a-f

 
plot(u,'o-')
hold on
plot(f(c,x),'x:r')
legend('原始数据','拟合数据',0)

 
 
得到的结果如下:

 

x = lsqr(A,u) attempts to solve the system of linear equations A*x=u for x if A is consistent, otherwise it attempts to solve the least squares solution x that
minimizes norm(b-A*x), x=(a,b,c,d,e,...

全部展开

x = lsqr(A,u) attempts to solve the system of linear equations A*x=u for x if A is consistent, otherwise it attempts to solve the least squares solution x that
minimizes norm(b-A*x), x=(a,b,c,d,e,f)
MATLAB
u=matrix(1,40,-190 -180 -170 -160 -150 -145 -140 -135 -130 -125 -120 -115 -110 -105 -100 -95 -90 -85 -80 0 80 85 90 95 100 105 110 115 120 125 130 135 140 145 150 160 170 180 190);
i=....,i1=...,..,i5=...
A=matrix(6,40,i,i1,i2,i3,i4,i5);
x = lsqr(A,u)

收起

遗传算法求方程系数,可以试试。

怎么运行matlab,附录一:求GM(1,1)拟合曲线的matlab代码%compute the coefficient(a andu)------------------------n=length(x_orig);%first generate the matrix Bfor i=1:(n-1);B(i)=-(x(i)+x(i+1))/2;endB=[B' ones(n-1,1)];%then generate the matrix 求matlab拟合出y=a-b^x的曲线得程序 matlab 拟合曲线u=a*i+b*i1+c*i2+d*i3+e*i4+f*i5;求abcdef的值,保证误差最小.u=[-190 -180 -170 -160 -150 -145 -140 -135 -130 -125 -120 -115 -110 -105 -100 -95 -90 -85 -80 0 80 85 90 95 100 105 110 115 120 125 130 135 140 145 150 160 170 180 1 matlab数据拟合问题我想要拟合y=a*x1+b*x2+c形式的曲线,用matlab如何实现? matlab二次曲线拟合电容c=10^-6*[0 0.47 1.47 2.47 3.67 4.2 4.67 5.87 6.87] (F);对应的电流i=[0.369 0.342 0.289 0.242 0.204 0.198 0.202 0.234 0.274] (A);求描绘二次拟合出来的c与i^2的拟合曲线.我先开始二次拟合的参数 已知,x和y两组数据,怎样用matlab求解拟合曲线 P=a+b*x+c*x^3 matlab拟合曲线及图形i 20 30 40 50 60 70 80 90 100 110 120vi 0 0 43 143 303 497 650 805 913 1000 1075vi=a+bi MATLAB 抛物线拟合 曲线标注问题我用matlab 拟合了一条曲线 并 画出了曲线图 我现在想要做的就是将曲线的方程y=a*x^2+b*x+c (其中a,b,c在拟合参数p1中) 标注在图形上 请问高手如何编程实现 附上 A = B{i};在matlab是什么意思 matlab用最小二乘法拟合散点出问题了 请大大们帮我看看哪里出错了.u=[-11.4,-11.2,-11.0,-10.8,-10.6,-10.4,-10.2,-10.0];i=[0.86,1.24,1.62,2.01,2.41,2.81,3.22,3.63];p=polyfit(x,y,1);i1=polyval(p,u);k=p(1),b=p(2)r=corrcoef(i,u)plot 用MATLAB能拟合曲线Z=A(X^B)*(10^CY)吗?有Z,X,Y的值,求系数A,B, 用MATLAB拟合曲线Z=A+BX+CY时,想要得到A,C都小于0,B大于1,怎么设啊 MATLAB拟合二元一次函数,求参量a、b、cX1 =[6.7276 6.8386 7.0171 7.1476 7.3165 7.5428 7.5605]X2 =[5.7659 + 3.1416i 5.7662 + 3.1416i 5.8266 + 3.1416i 5.8738 + 3.1416i 6.1117 + 3.1416i 6.2977 + 3.1416i 5.9172 + 3.1416i]Y=[8.6580 8.8148 9.1354 I-U伏安特性曲线 MATLAB曲线非线性拟合 1:给出五组数据 x=[100 200 400 600 800];y=[40 60 80 120 150];想要拟合的线性是 y=a+b*x^m,其中规定了m值的范围在1到2之间,用MATLAB里什么函数能求出系数a,b,2:在这个已经拟合出来 matlab数据拟合我要在拟合一条关系曲线,关系式为y=a[1-exp9(-b*x^c)],待拟合数据有9个,请哪位熟悉matlab数据处理的高手能帮忙写一段代码,求出关系式中的a b c三个参数,由于我的财富已经不错了, matlab非线性拟合问题,急用,待拟合函数形式为:ln[(230-a)/(y-a)]=[(x-1/4)/b]^c,需要拟合a,b,c,其中40 关于matlab曲线拟合的问题,做了提高功率因数的实验,实验测得I、P、C、cosΦ,要画出I^2-C(拟合曲线是抛物线)、P-C(拟合曲线是直线)、cosΦ-C的图,老师说她用了f=polyfit(x,y,n),y=polyval(f,x),但是