matlab算法不收敛,被积函数很快收敛到0,为什么积分不收敛。

函数f4(qz)在qz=1e3*kf时已经为0,将f4在(1,Inf)积分,按说,积分上限取到1e3*kf就可以了,事实上,积分上限在10*kf到1e3*kf之间时,积分结果是一致的,但是如果把上限放的非常大,(1,1e8*kf)这时候,积分结果变化又非常大。

后进末学,求大贤指点一二,感激涕零,顿首再拜!

global EF A D h2 x Epsilon0 Epsilons Epsilonh e m m2 Ns kb T B DP ul ut rho E0 kf K2 KL KT;

kb=1.38e-23;

T=3;                     %温度

h2=1.055e-34;

x=0.3;                    %Mg%

Epsilon0=8.8542e-12;      %真空介电常数

Epsilons=7.9;  % 间接

Epsilonh=3.7;   %

a1=(3.250+0.05*x)*1e-10;  c1=(5.204-0.17*x)*1e-10; a2=3.250e-10;c2=5.204e-10; %

e=1.6022e-19; %电子电荷

DP=3.8*e;

rho=5760;

ul=5e3;    %

ut=2.1e3;   %

cl=14.1e10;  %

ct=2.47e10; %

h15=-0.37;%压电系数间接引用

h31=-0.62;

h33=0.96;

ela2=(8*(2*h15+h31)^2+12*(2*h15+h31)*h33+15*h33^2)/105; %

eta2=(6*(h33-h15-h31)^2+16*(h33-h15-h31)*h15+48*h15^2)/105;

K2=ela2/(Epsilon0*Epsilons*cl)+eta2/(Epsilon0*Epsilons*ct); %

KL=ela2/(Epsilon0*Epsilons*cl);

KT=eta2/(Epsilon0*Epsilons*ct);

m0=9.11e-31; m=0.26*m0; %自由电子

Vc=0.9*2.145*x*e;%

sigmat=-0.054-0.038*x; sigmai=0.038*x;sigmab=0.054;

deltaz=0.1e-9;%变分间隔

sigmad=1e17/1e-6*e*deltaz;%一

Ns=1.4e15;

B=(12*m*e^2/(Epsilon0*Epsilons*h2^2))^(1/3)*(11*Ns/32)^(1/3);

kf=sqrt(2*pi*Ns);%费米

E0=h2^2*B^2/(8*m)+3*e^2/(Epsilon0*Epsilons*B)*(11*Ns/16);%

EF=E0+pi*h2^2*Ns/m;%

f4=@(qz)B.^6./(B.^2+qz.^2).^3.*DP.^2.*h2.*sqrt(kf.^2+qz.^2)./(2.*rho.*ul).*(1./(exp(h2.*ul.*sqrt(kf.^2+qz.^2)./(kb.*T))-1)).*(1-1./(exp((h2.^2.*kf.^2./(2.*m)+E0+h2.*ul.*sqrt(kf.^2+qz.^2)-EF)./(kb.*T))+1));

>> quadgk(f4,1,10*kf)

ans =

2.8824e-063

>> quadgk(f4,1,100*kf)

ans =

2.8824e-063

>> quadgk(f4,1,1e8*kf)

ans =

4.0394e-094

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值