⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 bessy0.cpp

📁 零阶、一阶和任意整数阶的第一二类贝赛尔函数算法
💻 CPP
字号:
double bessy0(double x)
{
	double p1,p2,p3,p4,p5,q1,q2,q3,q4,q5;
	double r1,r2,r3,r4,r5,r6,s1,s2,s3,s4,s5,s6;
	double y,bbb,ccc,aaa,temp,xx,z;
    p1 = 1.0;                  p2 = -0.001098628627;
    p3 = 0.00002734510407;     p4 = -0.000002073370639;
    p5 = 2.093887211e-07;
    q1 = -0.01562499995;       q2 = 0.0001430488765;
    q3 = -0.000006911147651;   q4 = 7.621095161e-07;
    q5 = -9.34945152e-08;
    r1 = -2957821389.0;        r2 = 7062834065.0;
    r3 = -512359803.6;         r4 = 10879881.29;
    r5 = -86327.92757;         r6 = 228.4622733;
    s1 = 40076544269.0;        s2 = 745249964.8;
    s3 = 7189466.438;          s4 = 47447.2647;
    s5 = 226.1030244;          s6 = 1.0;
    if (x < 8.0 )
	{
        y = x*x;
        aaa = r1 + y * (r2 + y * (r3 + y * (r4 + y * (r5 + y * r6))));
        bbb = s1 + y * (s2 + y * (s3 + y * (s4 + y * (s5 + y * s6))));
        temp = aaa / bbb + 0.636619772 * bessj0(x) * log(x);
	}
    else
	{
        z = 8.0 / x;
        y = z*z;
        xx = x - 0.785398164;
        aaa = sqrt(0.636619772 / x);
        bbb = p1 + y * (p2 + y * (p3 + y * (p4 + y * p5)));
        ccc = q1 + y * (q2 + y * (q3 + y * (q4 + y * q5)));
        temp = aaa * (sin(xx) * bbb + z * cos(xx) * ccc);
	}
	return temp;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -