|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?我要加入
x
看了篇文献想用matlab来显现它里面的一个重要公式,计算出最后结果。附件是要是实现的公式。里面含有贝塞尔函数,要对它进行0到无穷大的积分。以下是我写的代码:
- function T=T_3D(L,a,f)
- syms r lamda;
- P=1;
- k=[0.026,65,51.9];
- alpha=[2.08e-5,17.14e-6,13.6e-6];
- omiga=2*pi*f;
- det=(1+i).*sqrt(omiga./(2*alpha));
- sigma=(lamda^2+det.^2).^(1/2);
- b10=k(2)*sigma(2)/(k(1)*sigma(1));
- b21=k(3)*sigma(3)/(k(2)*sigma(2));
- gama10=(b10-1)/(b10+1);
- gama21=(b21-1)/(b21+1);
- part1=1/(k(1)*sigma(1)*(1+b10));
- part2=(1-gama21*exp(-2*sigma(2)*L))/(1+gama10*gama21*exp(-2*sigma(2)*L));
- F=part1*part2*exp(-lamda^2*a^2/4)*besselj(0,lamda*r)*lamda;
- T=P*int(F,lamda,0,inf)
复制代码 运行的结果是matlab不报错也不给出结果,比较郁闷。想请大家帮忙看一看是不是不能用int函数来实现,这个公式里面带有贝塞尔0阶函数,以前没有接触过它的积分,还是0到无穷大限,望赐教,万分感激!
|
|