| 查看: 1392 | 回复: 7 | |||
| 当前主题已经存档。 | |||
| 当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖 | |||
zhangyatao木虫 (正式写手)
|
[交流]
[color=Blue]【求助】Bessel函数的Matlab解法[/color]
|
||
|
对于下面的Bessel函数,如何用Matlab求解,麻烦给出源程序或类似程序,多谢了! D*x*J1(x)=J0(x),其中D是常数。 [ Last edited by zhangyatao on 2009-4-1 at 16:51 ] |
» 猜你喜欢
交叉科学部支持青年基金,对三无青椒是个机会吗?
已经有4人回复
招博士
已经有6人回复
限项规定
已经有8人回复
国家基金申请书模板内插入图片不可调整大小?
已经有5人回复
国家级人才课题组招收2026年入学博士
已经有5人回复
Fe3O4@SiO2合成
已经有6人回复
青年基金C终止
已经有4人回复
青椒八年已不青,大家都被折磨成啥样了?
已经有7人回复
为什么nbs上溴 没有产物点出现呢
已经有10人回复
救命帖
已经有11人回复

★ ★ ★ ★
sunxiao(金币+4,VIP+0):谢谢参与交流,欢迎常来仿真编程版 4-1 22:37
sunxiao(金币+4,VIP+0):谢谢参与交流,欢迎常来仿真编程版 4-1 22:37
|
function x=solvefun(a,b,D,tol) %-------------------------------------------------------------------------- range=a:1:b; if range(end) range=[range,b]; end tag=[abs(diff(sign(fun(range,D)))) 0]; range=range(find(tag>0))'; range=[range range+1]; %-------------------------------------------------------------------------- n=size(range,1); tol=tol/10; x=zeros(n,1); for i=1:n xmin=range(i,1); xmax=range(i,2); xcur=(xmin+xmax)/2; while xmax-xmin>tol if sign(fun(xmin,D))*sign(fun(xcur,D))>0 xmin=xcur; else xmax=xcur; end xcur=(xmin+xmax)/2; end x(i)=xcur; end %-------------------------------------------------------------------------- function y=fun(x,D) y=D.*x.*Bessel(1,x)-Bessel(0,x); |
8楼2009-04-01 16:55:01
★ ★ ★ ★ ★ ★ ★ ★ ★ ★
zhangyatao(金币+8,VIP+0):程序有点错误,不过还是挺感谢你的! 4-1 15:41
sunxiao(金币+2,VIP+0):谢谢参与交流,欢迎常来仿真编程版 4-1 22:38
zhangyatao(金币+8,VIP+0):程序有点错误,不过还是挺感谢你的! 4-1 15:41
sunxiao(金币+2,VIP+0):谢谢参与交流,欢迎常来仿真编程版 4-1 22:38
|
可以先画图像看看啊 fplot('x*Bessel(x,1)-Bessel(x,0)',[-10,100]) 可以看出,方程无解,但函数随x的增大是趋近于零的 >> x=20 x = 20 >> x*Bessel(x,1)-Bessel(x,0) ans = 7.7470e-024 >> x=10000 x = 10000 >> x*Bessel(x,1)-Bessel(x,0) ans = 0 [ Last edited by fspdlh on 2009-4-1 at 15:19 ] |
2楼2009-04-01 15:16:49
zhangyatao
木虫 (正式写手)
- 应助: 0 (幼儿园)
- 金币: 3307.9
- 散金: 840
- 红花: 2
- 帖子: 646
- 在线: 677.5小时
- 虫号: 325718
- 注册: 2007-03-17
- 性别: GG
- 专业: 分离过程

3楼2009-04-01 15:24:49
4楼2009-04-01 15:34:29













回复此楼