Labfans是一个针对大学生、工程师和科研工作者的技术社区。 论坛首页 | 联系我们(Contact Us)
MATLAB爱好者论坛-LabFans.com
返回   MATLAB爱好者论坛-LabFans.com > 工程数学软件 > MATLAB论坛
MATLAB论坛 一切MATLAB相关问题在此讨论。
回复
 
主题工具 显示模式
旧 2009-05-28, 00:46   #1
学习蜗牛
初级会员
 
注册日期: 2009-05-26
住址: 西南交大
年龄: 35
帖子: 5
声望力: 0
学习蜗牛 正向着好的方向发展
默认 怎么解这非线性方程组

本人刚接触matlab不久,菜鸟级的,希望各位帮下,谢谢了
已知某非线性方程组如下:
ff(1)=(3-5*x(1))*x(1)+1-2*x(2)=0
for k=2:9
ff(k)=(3-5*x(k))*x(k)+1-x(k-1)-2*x(k+1)=0
end
ff(10)=(3-5*x(10))*x(10)+1-x(9)=0

试求该方程组的解。
__________________
本着虚心的心,向各位前辈学习,我会像蜗牛一样一步一步往上爬,在最高点乘着叶片往前.......[
学习蜗牛 当前离线   回复时引用此帖
旧 2009-05-28, 17:48   #2
zsy312
普通会员
 
注册日期: 2008-08-17
年龄: 43
帖子: 77
声望力: 18
zsy312 正向着好的方向发展
默认 回复: 怎么解这非线性方程组

方程求解应该用mathematica,给出数值解方法,算出来1024组解(想算符号解的话把最开头第一个N去掉,估计电脑死机了也算不出来)
NSolve[Flatten[{Table[(3 - 5 Subscript[x, i]) Subscript[x, i] + 1 -
Subscript[x, i - 1] - 2 Subscript[x, i + 1] == 0, {i, 2,
9}], (3 - 5 Subscript[x, 1]) Subscript[x, 1] + 1 -
2 Subscript[x, 2] ==
0, (3 - 5 Subscript[x, 10]) Subscript[x, 10] + 1 - Subscript[x,
9] == 0}], Table[Subscript[x, i], {i, 10}]]
zsy312 当前离线   回复时引用此帖
旧 2009-05-29, 13:12   #3
学习蜗牛
初级会员
 
注册日期: 2009-05-26
住址: 西南交大
年龄: 35
帖子: 5
声望力: 0
学习蜗牛 正向着好的方向发展
默认 回复: 怎么解这非线性方程组

谢谢了,非常感谢,我试试
__________________
本着虚心的心,向各位前辈学习,我会像蜗牛一样一步一步往上爬,在最高点乘着叶片往前.......[
学习蜗牛 当前离线   回复时引用此帖
旧 2009-05-30, 09:23   #4
学习蜗牛
初级会员
 
注册日期: 2009-05-26
住址: 西南交大
年龄: 35
帖子: 5
声望力: 0
学习蜗牛 正向着好的方向发展
默认 回复: 怎么解这非线性方程组

我老师说一定要MATLAB做,各位帮帮忙
__________________
本着虚心的心,向各位前辈学习,我会像蜗牛一样一步一步往上爬,在最高点乘着叶片往前.......[
学习蜗牛 当前离线   回复时引用此帖
旧 2009-05-30, 11:23   #5
zsy312
普通会员
 
注册日期: 2008-08-17
年龄: 43
帖子: 77
声望力: 18
zsy312 正向着好的方向发展
默认 回复: 怎么解这非线性方程组

只能解带初值的问题了,先创建函数:
%创建sol函数
function y=sol(a)
y(1)=(3-5*a(1))*a(1)+1-2*a(2);
for k=2:9
y(k)=(3-5*a(k))*a(k)+1-a(k-1)-2*a(k+1);
end
y(10)=(3-5*a(10))*a(10)+1-a(9);
%保存下来,到matlab能识别的路径下

在主程序中调用:
x=fsolve('sol',zeros(1,10))
其中zeros(1,10)表示初值全为0,也可以换成你想要的初值,比如
换成ones(1,10),
[1,2,3,……]自己按需要写吧。
zsy312 当前离线   回复时引用此帖
旧 2009-05-30, 11:26   #6
zsy312
普通会员
 
注册日期: 2008-08-17
年龄: 43
帖子: 77
声望力: 18
zsy312 正向着好的方向发展
默认 回复: 怎么解这非线性方程组

注意,这里只是给一个解,可不是所有解。
再者,fsolve在初始值为实数的时候求不出虚数解,你可以试一下

此帖于 2009-05-30 11:56 被 zsy312 编辑。
zsy312 当前离线   回复时引用此帖
旧 2009-06-01, 18:54   #7
学习蜗牛
初级会员
 
注册日期: 2009-05-26
住址: 西南交大
年龄: 35
帖子: 5
声望力: 0
学习蜗牛 正向着好的方向发展
默认 回复: 怎么解这非线性方程组

朋友,谢谢了,我试试
__________________
本着虚心的心,向各位前辈学习,我会像蜗牛一样一步一步往上爬,在最高点乘着叶片往前.......[
学习蜗牛 当前离线   回复时引用此帖
旧 2009-06-01, 23:59   #8
pxlsword
初级会员
 
注册日期: 2009-05-17
年龄: 39
帖子: 2
声望力: 0
pxlsword 正向着好的方向发展
默认 回复: 怎么解这非线性方程组

引用:
作者: 学习蜗牛 查看帖子
本人刚接触matlab不久,菜鸟级的,希望各位帮下,谢谢了
已知某非线性方程组如下:
ff(1)=(3-5*x(1))*x(1)+1-2*x(2)=0
for k=2:9
ff(k)=(3-5*x(k))*x(k)+1-x(k-1)-2*x(k+1)=0
end
ff(10)=(3-5*x(10))*x(10)+1-x(9)=0

试求该方程组的解。
哥们儿``前几天这个方程我也发了!估计是一个老师的作业~~怎么样?做出来没有``?交流哈啊~~QQ:343387355,也是交大的!
pxlsword 当前离线   回复时引用此帖
回复

主题工具
显示模式

发帖规则
不可以发表新主题
不可以发表回复
不可以上传附件
不可以编辑自己的帖子

启用 BB 代码
论坛启用 表情符号
论坛启用 [IMG] 代码
论坛禁用 HTML 代码



所有时间均为北京时间。现在的时间是 01:44


Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.