📄 levex.h
字号:
Doub func(const Doub x)
{
if (x == 0.0)
return 0.0;
else {
Bessel bess;
return x*bess.jnu(0.0,x)/(1.0+x*x);
}
}
Int main_levex(void)
{
const Doub PI=3.141592653589793;
Int nterm=12;
Doub beta=1.0,a=0.0,b=0.0,sum=0.0;
Levin series(100,0.0);
cout << setw(5) << "N" << setw(19) << "Sum (direct)" << setw(21)
<< "Sum (Levin)" << endl;
for (Int n=0; n<=nterm; n++) {
b+=PI;
Doub s=qromb(func,a,b,1.e-8);
a=b;
sum+=s;
Doub omega=(beta+n)*s;
Doub ans=series.next(sum,omega,beta);
cout << setw(5) << n << fixed << setprecision(14) << setw(21)
<< sum << setw(21) << ans << endl;
}
return 0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -