| 查看: 1895 | 回复: 7 | |||
| 本帖产生 1 个 博学EPI ,点击这里进行查看 | |||
[交流]
非线性方程组的迭代法(数值计算高手请进)
|
|||
| 我在用matlab求解一组非线性方程组的时候遇到了困难,因为初值选择不合适,迭代几乎都不收敛,由于数据量较大,没有办法对每个初值进行调整,有没有一种迭代算法可以对初值没有要求,我目前使用的是几个教科书上的算法,牛顿法,不动点迭代,弦割法。期待有高手可以指点迷津,先行谢过! |
» 猜你喜欢
AI论文写作工具:是科研加速器还是学术作弊器?
已经有3人回复
孩子确诊有中度注意力缺陷
已经有6人回复
康复大学泰山学者周祺惠团队招收博士研究生
已经有4人回复
2026博士申请-功能高分子,水凝胶方向
已经有6人回复
论文投稿,期刊推荐
已经有4人回复
硕士和导师闹得不愉快
已经有13人回复
请问2026国家基金面上项目会启动申2停1吗
已经有5人回复
同一篇文章,用不同账号投稿对编辑决定是否送审有没有影响?
已经有3人回复
ACS Applied Polymer Materials投稿
已经有10人回复
RSC ADV状态问题
已经有4人回复
gaofeng925
版主 (知名作家)
- 博学EPI: 76
- 应助: 504 (博士)
- 贵宾: 5.002
- 金币: 77551.5
- 散金: 370
- 红花: 20
- 沙发: 2
- 帖子: 9437
- 在线: 689.2小时
- 虫号: 957495
- 注册: 2010-02-22
- 性别: GG
- 专业: 环境工程
- 管辖: 环境
2楼2010-05-19 10:02:39
lgm19851116
木虫 (正式写手)
清静的女孩
- 博学EPI: 40
- 应助: 0 (幼儿园)
- 金币: 1867.6
- 帖子: 433
- 在线: 12.5小时
- 虫号: 494217
- 注册: 2008-01-12
- 性别: MM
- 专业: 无机合成和制备化学

3楼2010-05-19 10:12:08
4楼2010-05-20 10:20:35
求助
|
为了方便向大家请教,我把我的程序贴了出来,第一次使用matlab,对着手册编了一周,有不够简洁的地方还望见谅:) 基本问题就是求解kesai afa gama J0afa J1afa J0gama J1gama(分别为afa gama的零阶和一阶bessel函数)七个变量的非线性方程组;共有5328个数据点,每个点都需要求解这样一个方程组,初值只给了kesai的初值,其它变量有显式的关系可以通过kesai求解,实际上是利用迭代法求fkesai=0; j=1,j=2都是收敛的,j=3就不收敛了 % 不动点迭代 %define constant clear; E=3000000000; rou=1200; K=2500000000; a=0.015; ita=1000000; sampling_rate=10000000; f=(1:5238)*sampling_rate/5238; im=i; %calculate parameters for j=1:5238 Estar(j)=-im*E*ita*f(j)/(E-im*ita*f(j)); end for j=1:5238 kesai0(j)=sqrt(rou*f(j)^2/Estar(j)); end for j=1:5238 miu(j)=3*K*f(j)*ita*im/(9*K*(1+im*f(j)*ita/E)-im*f(j)*ita); lamda(j)=K-2/3*miu(j); end %initial value of variables for j=1:5238 kesai(j)=kesai0(j); afa(j)=sqrt(rou*f(j)^2/(lamda(j)+2*miu(j))-kesai(j)^2); gama(j)=sqrt(rou*f(j)^2/miu(j)-kesai(j)^2); J0afa(j)=besselj(0,afa(j)*a); J1afa(j)=besselj(1,afa(j)*a); J0gama(j)=besselj(0,gama(j)*a); J1gama(j)=besselj(1,gama(j)*a); fkesai(j)=2*afa(j)/a*(gama(j)^2+kesai(j)^2)*J1afa(j)*J1gama(j)-(gama(j)^2-kesai(j)^2)*J0afa(j)*J1gama(j)-4*kesai(j)*afa(j)*gama(j)*J1afa(j)*J0gama(j); j %iterative n=1; while abs(fkesai(j))>0.0001&(n<=10000) %不动点迭代from fkesai=0 kesai(j)=(2*afa(j)/a*(gama(j)^2+kesai(j)^2)*J1afa(j)*J1gama(j)-(gama(j)^2-kesai(j)^2)*J0afa(j)*J1gama(j))/(4*afa(j)*gama(j)*J1afa(j)*J0gama(j)); afa(j)=sqrt(rou*f(j)^2/(lamda(j)+2*miu(j))-kesai(j)^2); gama(j)=sqrt(rou*f(j)^2/miu(j)-kesai(j)^2); J0afa(j)=besselj(0,afa(j)); J1afa(j)=besselj(1,afa(j)); J0gama(j)=besselj(0,gama(j)); J1gama(j)=besselj(1,gama(j)); fkesai(j)=2*afa(j)/a*(gama(j)^2+kesai(j)^2)*J1afa(j)*J1gama(j)-(gama(j)^2-kesai(j)^2)*J0afa(j)*J1gama(j)-4*kesai(j)*afa(j)*gama(j)*J1afa(j)*J0gama(j); n=n+1; abs(fkesai) end end |
5楼2010-05-20 11:07:37
6楼2010-05-20 11:28:47
7楼2010-05-20 23:53:16
dingd
铁杆木虫 (职业作家)
- 博学EPI: 1
- 应助: 1641 (讲师)
- 金币: 15037.3
- 散金: 101
- 红花: 234
- 帖子: 3410
- 在线: 1223.5小时
- 虫号: 291104
- 注册: 2006-10-28
8楼2011-04-18 10:33:40













回复此楼