
用matlab求牛顿迭代法解方程时出现错误!
源程序如下:clear;symsabcdefghifun=@(N)([4.06*N(1)+0.96*N(2)+5.96*N(3)+2.36*N(4)+0.093*N(5)...
源程序如下:
clear;
syms a b c d e f g h i
fun=@(N)([ 4.06*N(1)+0.96*N(2)+5.96*N(3)+2.36*N(4)+0.093*N(5)+137.66*N(6)+0*N(7)+0*N(8)+0*N(9)-1701,...
3.54*N(1)+0.91*N(2)+6.01*N(3)+3.11*N(4)+0.089*N(5)+137.99*N(6)+0*N(7)+0*N(8)+0*N(9)-1673,...
3.89*N(1)+1.00*N(2)+6.38*N(3)+3.05*N(4)+0.097*N(5)+136.89*N(6)+0*N(7)+0*N(8)+0*N(9)-1664,...
3.81*N(1)+1.04*N(2)+6.06*N(3)+2.38*N(4)+0.097*N(5)+137.87*N(6)+0*N(7)+0*N(8)+0*N(9)-1668,...
3.19*N(1)+3.56*N(2)+2.87*N(3)+2.84*N(4)+0.013*N(5)+139.13*N(6)+0.753*N(7)+0*N(8)+0*N(9)-1747,...
3.48*N(1)+1.82*N(2)+1.38*N(3)+6.36*N(4)+0.008*N(5)+138.79*N(6)+1.160*N(7)+0.003*N(8)+0.020*N(9)-1883,...
3.96*N(1)+1.94*N(2)+3.20*N(3)+2.39*N(4)+0.017*N(5)+139.25*N(6)+0.014*N(7)+1.720*N(8)+0.048*N(9)-1717,...
3.37*N(1)+3.30*N(2)+2.09*N(3)+3.535*N(4)+0.013*N(5)+138.78*N(6)+1.160*N(7)+0.361*N(8)+0.515*N(9)-1610,...
2.34*N(1)+1.35*N(2)+1.33*N(3)+6.633*N(4)+0.085*N(5)+140.65*N(6)+0.932*N(7)+0.0095*N(8)+0.430*N(9)-1916,...
3.70*N(1)+0.93*N(2)+5.83*N(3)+2.32*N(4)+0.085*N(5)+137.90*N(6)+0.698*N(7)+0*N(8)+0*N(9)-1783,...
3.60*N(1)+1.85*N(2)+1.47*N(3)+6.56*N(4)+0.669*N(5)+139.30*N(6)+0.002*N(7)+0*N(8)+0*N(9)-1846,...
4.14*N(1)+0.89*N(2)+6.27*N(3)+2.60*N(4)+0*N(5)+136.14*N(6)+0.845*N(7)+0*N(8)+0*N(9)-1820 ]);
[f,fval]=fsolve(fun,[10,10,10,10,10,10,10,10,10],optimset('display','iter-detailed'));
a=f(1)
b=f(2)
c=f(3)
d=f(4)
e=f(5)
f=f(6)
g=f(7)
h=f(8)
i=f(9)
运行时出现以下错误提示:
Attempted to access f(7); index out of bounds because numel(f)=1.
Error in dongdaniudun (line 22)
g=f(7) 展开
clear;
syms a b c d e f g h i
fun=@(N)([ 4.06*N(1)+0.96*N(2)+5.96*N(3)+2.36*N(4)+0.093*N(5)+137.66*N(6)+0*N(7)+0*N(8)+0*N(9)-1701,...
3.54*N(1)+0.91*N(2)+6.01*N(3)+3.11*N(4)+0.089*N(5)+137.99*N(6)+0*N(7)+0*N(8)+0*N(9)-1673,...
3.89*N(1)+1.00*N(2)+6.38*N(3)+3.05*N(4)+0.097*N(5)+136.89*N(6)+0*N(7)+0*N(8)+0*N(9)-1664,...
3.81*N(1)+1.04*N(2)+6.06*N(3)+2.38*N(4)+0.097*N(5)+137.87*N(6)+0*N(7)+0*N(8)+0*N(9)-1668,...
3.19*N(1)+3.56*N(2)+2.87*N(3)+2.84*N(4)+0.013*N(5)+139.13*N(6)+0.753*N(7)+0*N(8)+0*N(9)-1747,...
3.48*N(1)+1.82*N(2)+1.38*N(3)+6.36*N(4)+0.008*N(5)+138.79*N(6)+1.160*N(7)+0.003*N(8)+0.020*N(9)-1883,...
3.96*N(1)+1.94*N(2)+3.20*N(3)+2.39*N(4)+0.017*N(5)+139.25*N(6)+0.014*N(7)+1.720*N(8)+0.048*N(9)-1717,...
3.37*N(1)+3.30*N(2)+2.09*N(3)+3.535*N(4)+0.013*N(5)+138.78*N(6)+1.160*N(7)+0.361*N(8)+0.515*N(9)-1610,...
2.34*N(1)+1.35*N(2)+1.33*N(3)+6.633*N(4)+0.085*N(5)+140.65*N(6)+0.932*N(7)+0.0095*N(8)+0.430*N(9)-1916,...
3.70*N(1)+0.93*N(2)+5.83*N(3)+2.32*N(4)+0.085*N(5)+137.90*N(6)+0.698*N(7)+0*N(8)+0*N(9)-1783,...
3.60*N(1)+1.85*N(2)+1.47*N(3)+6.56*N(4)+0.669*N(5)+139.30*N(6)+0.002*N(7)+0*N(8)+0*N(9)-1846,...
4.14*N(1)+0.89*N(2)+6.27*N(3)+2.60*N(4)+0*N(5)+136.14*N(6)+0.845*N(7)+0*N(8)+0*N(9)-1820 ]);
[f,fval]=fsolve(fun,[10,10,10,10,10,10,10,10,10],optimset('display','iter-detailed'));
a=f(1)
b=f(2)
c=f(3)
d=f(4)
e=f(5)
f=f(6)
g=f(7)
h=f(8)
i=f(9)
运行时出现以下错误提示:
Attempted to access f(7); index out of bounds because numel(f)=1.
Error in dongdaniudun (line 22)
g=f(7) 展开
1个回答
展开全部
[f,fval] 是1*N的矩阵,你矩阵转置下看看。
追问
我是新手,能麻烦你说的再详细一点吗?谢谢!
只有9个未知数,有12个方程啊?不过前面几个方程到N(7)的时候系数是0,是不是这个出问题了,怎么修改呢?

2023-08-01 广告
计算过程如下:首先,计算4个数值的和:∑Xs = 0.3 + 0.2 + 0.4 + 0.1 = 1然后,计算 lg-1(∑Xs/4):lg-1(∑Xs/4) = lg-1(1/4) = -1其中,lg表示以10为底的对数,即 log10。...
点击进入详情页
本回答由厦门鲎试剂生物科技股份有限公司提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询