急求MATLAB解非线性方程组的程序现有方程组:2*x(t+1)+3*y(t+1)+z(t+1)=0 ①2*y(t+1)*z(t+1)+4*y(t+1)=0 ②x(t+1)+3*z(t+1)=1+3z(t) ③注:x(t+1),y(t+1),z(t+1)和z(t)分别表示t+1时刻和t时刻的x,y,z所以这个方程本身就
来源:学生作业帮助网 编辑:六六作业网 时间:2024/11/09 10:41:53
急求MATLAB解非线性方程组的程序现有方程组:2*x(t+1)+3*y(t+1)+z(t+1)=0 ①2*y(t+1)*z(t+1)+4*y(t+1)=0 ②x(t+1)+3*z(t+1)=1+3z(t) ③注:x(t+1),y(t+1),z(t+1)和z(t)分别表示t+1时刻和t时刻的x,y,z所以这个方程本身就
急求MATLAB解非线性方程组的程序
现有方程组:2*x(t+1)+3*y(t+1)+z(t+1)=0 ①
2*y(t+1)*z(t+1)+4*y(t+1)=0 ②
x(t+1)+3*z(t+1)=1+3z(t) ③
注:x(t+1),y(t+1),z(t+1)和z(t)分别表示t+1时刻和t时刻的x,y,z所以这个方程本身就是一个对t的迭代.而方程②又是一个非线性方程,所以对每个t+1时刻又得用迭代使得该时刻的值达到一个精确值,再把这个精确值带入方程组进行对t的迭代.这里我们设定:t=1:100,z(1)=1,x(1)=y(1)=0.精确值的精确度可自己设定.
求MATLAB高手解决啊,送上100分.越详细越好,最好能在后面有标注,本人学MATLAB不久,很多不懂!一定再加一倍分数!
不好意思,这是我随便造的个.主要想知道这样双重迭代怎么编!
这样吧,把第②个方程改为2*y(t+1)*z(t+1)+3*x(t+1)=0.
这个东西实在太麻烦,我自己都搞得有点糊涂了.
再改下应该是非线性了2*y(t+1)*sin(z(t+1))+3*x(t+1)=0 ② .如果还有多组解就选一组迭代吧!我主要不是想解出答案,而是想知道思路和程序的具体步骤.二楼说的是创建三维数组吧,可是这样迭代以后只能得到最后的一组x,y,z.而我想得到的是每一时刻的x,y,z的值.也就是得出他们随时间变化的曲线图!而且你说的思路我明白,可我主要的问题是不知道怎么编,能有个相关思路的程序就好了,至少我能看懂~麻烦你们了,如果这个方程组还是不行,你们能大体编出我这种想法的程序么?主要是每一步程序是怎么编的,这个方程组是次要的!
急求MATLAB解非线性方程组的程序现有方程组:2*x(t+1)+3*y(t+1)+z(t+1)=0 ①2*y(t+1)*z(t+1)+4*y(t+1)=0 ②x(t+1)+3*z(t+1)=1+3z(t) ③注:x(t+1),y(t+1),z(t+1)和z(t)分别表示t+1时刻和t时刻的x,y,z所以这个方程本身就
你改了以后总的式子还是错的
我说一下我的思想吧
你构造一个n*3的0矩阵,1,2,3行分别代表x,y,z的值,然后循环,这样就免去了迭代了,把得到的结果再取代原先矩阵里的相应位置的值.
然后每一次循环就可以认为是在解一次非线性方程,这样到最后结果就出来了
因为你给的式子不正确我也没有办法把程序编出来 ,就只说一下思路了
有问题的话留言