matlab 用fsolve解方程组的问题我需要解一个方程组,编了一个cs.m函数文件,然后通过fsolve('cs',[1,1,1,1,1])语句求解,可是总是提示出错,不知道错在哪了,cs.m函数文件代码如下:function f=cs(uu)b1=uu(1);b2=
来源:学生作业帮助网 编辑:作业帮 时间:2024/07/01 22:58:33
![matlab 用fsolve解方程组的问题我需要解一个方程组,编了一个cs.m函数文件,然后通过fsolve('cs',[1,1,1,1,1])语句求解,可是总是提示出错,不知道错在哪了,cs.m函数文件代码如下:function f=cs(uu)b1=uu(1);b2=](/uploads/image/z/8624488-40-8.jpg?t=matlab+%E7%94%A8fsolve%E8%A7%A3%E6%96%B9%E7%A8%8B%E7%BB%84%E7%9A%84%E9%97%AE%E9%A2%98%E6%88%91%E9%9C%80%E8%A6%81%E8%A7%A3%E4%B8%80%E4%B8%AA%E6%96%B9%E7%A8%8B%E7%BB%84%2C%E7%BC%96%E4%BA%86%E4%B8%80%E4%B8%AAcs.m%E5%87%BD%E6%95%B0%E6%96%87%E4%BB%B6%2C%E7%84%B6%E5%90%8E%E9%80%9A%E8%BF%87fsolve%28%27cs%27%2C%5B1%2C1%2C1%2C1%2C1%5D%29%E8%AF%AD%E5%8F%A5%E6%B1%82%E8%A7%A3%2C%E5%8F%AF%E6%98%AF%E6%80%BB%E6%98%AF%E6%8F%90%E7%A4%BA%E5%87%BA%E9%94%99%2C%E4%B8%8D%E7%9F%A5%E9%81%93%E9%94%99%E5%9C%A8%E5%93%AA%E4%BA%86%2Ccs.m%E5%87%BD%E6%95%B0%E6%96%87%E4%BB%B6%E4%BB%A3%E7%A0%81%E5%A6%82%E4%B8%8B%EF%BC%9Afunction+f%3Dcs%28uu%29b1%3Duu%281%29%3Bb2%3D)
matlab 用fsolve解方程组的问题我需要解一个方程组,编了一个cs.m函数文件,然后通过fsolve('cs',[1,1,1,1,1])语句求解,可是总是提示出错,不知道错在哪了,cs.m函数文件代码如下:function f=cs(uu)b1=uu(1);b2=
matlab 用fsolve解方程组的问题
我需要解一个方程组,编了一个cs.m函数文件,然后通过fsolve('cs',[1,1,1,1,1])语句求解,可是总是提示出错,不知道错在哪了,
cs.m函数文件代码如下:
function f=cs(uu)
b1=uu(1);
b2=uu(2);
b3=uu(3);
b4=uu(4);
m=uu(5);
fff=(b1*m.^3+b2*m.^2+b3*m.^6+b4-m).^2+(b1*m.^3+b2*m.^2+b3*m.^6+b4-m).^2+(b1*2*m.^3+b2*2*m.^2+b3*2*m.^6+b4-2*m.^2).^2+(b1*4*m.^3+b2*4*m.^2+b3*4*m.^6+b4-4*m).^2;
f(1)=diff(fff,b1);
f(2)=diff(fff,b2);
f(3)=diff(fff,b3);
f(4)=diff(fff,b4);
f(5)=b1*m.^3+b2*m.^2+b3*m.^6+b4-2;
很简单的五个方程,错误提示如下:
In an assignment A(I) = B,the number of elements in B and
I must be the same.
Error in ==> cs at 12
f(1)=diff(fff,b1);
Error in ==> fsolve at 180
fuser = feval(funfcn{3},x,varargin{:});
我实在不知道这和元素个数不对应有什么关系啊?
matlab 用fsolve解方程组的问题我需要解一个方程组,编了一个cs.m函数文件,然后通过fsolve('cs',[1,1,1,1,1])语句求解,可是总是提示出错,不知道错在哪了,cs.m函数文件代码如下:function f=cs(uu)b1=uu(1);b2=
fsolve函数是用于求解非线性方程的,但是在你的程序里没看到非线性方程
在你所给的求根初值[1,1,1,1,1]下,你所定义的变量 fff 的值为124,而函数diff(X,n)表示求向量X的前后两项之差并重复n次,例如diff(X,2)就相当于 diff(diff(X)),在你的程序中有如下语句:
f(1)=diff(fff,b1);
式子右侧的fff,b1均为一个数,则diff(fff,b1)的计算结果为 [ ],将一个空的结果赋值给f(1)从而导致如下错误(赋值符号左右维数不匹配):
In an assignment A(I) = B,the number of elements in B and I must be the same.
你先把上面的问题解决吧,如果还不可以,麻烦把你的方程贴出来 :)