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

📄 test_coulomb.c

📁 This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY without ev
💻 C
📖 第 1 页 / 共 2 页
字号:
  s += test_sf_check_result(message_buff,  G,  1.27577878476828e+00, TEST_TOL3);  s += test_sf_check_result(message_buff, Gp, -5.82728813097184e-01, TEST_TOL3);  printf("%s", message_buff);  gsl_test(s, "  gsl_sf_coulomb_wave_FG_e(1.0, 2.0, lam_F=0, lam_G=0)");  status += s;  lam_F = 0.0;  k_G = 0;  eta = 1.0;  x = 0.5;  gsl_sf_coulomb_wave_FG_e(eta, x, lam_F, k_G, &F, &Fp, &G, &Gp, &Fe, &Ge);  s = 0;  message_buff[0] = 0;  s += test_sf_check_result(message_buff,  F,  0.08315404535022023302, TEST_TOL3);  s += test_sf_check_result(message_buff, Fp,  0.22693874616222787568, TEST_TOL3);  s += test_sf_check_result(message_buff,  G,  3.1060069279548875140,  TEST_TOL3);  s += test_sf_check_result(message_buff, Gp, -3.549156038719924236,   TEST_TOL3);  printf("%s", message_buff);  gsl_test(s, "  gsl_sf_coulomb_wave_FG_e(1.0, 0.5, lam_F=0, lam_G=0)");  status += s;  lam_F = 0.5;  k_G = 0;  eta = 1.0;  x = 0.5;  gsl_sf_coulomb_wave_FG_e(eta, x, lam_F, k_G, &F, &Fp, &G, &Gp, &Fe, &Ge);  s = 0;  message_buff[0] = 0;  s += test_sf_check_result(message_buff,  F,  0.04049078073829290935, TEST_TOL3);  s += test_sf_check_result(message_buff, Fp,  0.14194939168094778795, TEST_TOL3);  s += test_sf_check_result(message_buff,  G,  4.720553853049677897,   TEST_TOL3);  s += test_sf_check_result(message_buff, Gp, -8.148033852319180005,   TEST_TOL3);  printf("%s", message_buff);  gsl_test(s, "  gsl_sf_coulomb_wave_FG_e(1.0, 0.5, lam_F=0.5, lam_G=0.5)");  status += s;  lam_F = 0.1;  k_G = 0;  eta = 1.0;  x = 0.5;  gsl_sf_coulomb_wave_FG_e(eta, x, lam_F, k_G, &F, &Fp, &G, &Gp, &Fe, &Ge);  s = 0;  message_buff[0] = 0;  s += test_sf_check_result(message_buff,  F,  0.07365466672379703418, TEST_TOL5);  s += test_sf_check_result(message_buff, Fp,  0.21147121807178518647, TEST_TOL5);  s += test_sf_check_result(message_buff,  G,  3.306705446241024890, TEST_TOL5);  s += test_sf_check_result(message_buff, Gp, -4.082931670935696644, TEST_TOL5);  printf("%s", message_buff);  gsl_test(s, "  gsl_sf_coulomb_wave_FG_e(1.0, 0.5, lam_F=0.1, lam_G=0.1)");  status += s;  lam_F = 0.0;  k_G = 0;  eta = 8.0;  x = 1.05;  gsl_sf_coulomb_wave_FG_e(eta, x, lam_F, k_G, &F, &Fp, &G, &Gp, &Fe, &Ge);  s = 0;  message_buff[0] = 0;  s += test_sf_check_result(message_buff,  F,  9.882706082810274357e-09, TEST_TOL5);  s += test_sf_check_result(message_buff, Fp,  4.005167028235547770e-08, TEST_TOL5);  s += test_sf_check_result(message_buff,  G,  1.333127992006686320e+07, TEST_SQRT_TOL0);  s += test_sf_check_result(message_buff, Gp, -4.715914530842402330e+07, TEST_SQRT_TOL0);  printf("%s", message_buff);  gsl_test(s, "  gsl_sf_coulomb_wave_FG_e(8.0, 1.05, lam_F=0, lam_G=0)");  status += s;  lam_F = 0.1;  k_G = 0;  eta = 8.0;  x = 1.05;  gsl_sf_coulomb_wave_FG_e(eta, x, lam_F, k_G, &F, &Fp, &G, &Gp, &Fe, &Ge);  s = 0;  message_buff[0] = 0;  s += test_sf_check_result(message_buff,  F,  9.611416736061987761e-09, TEST_TOL5);  s += test_sf_check_result(message_buff, Fp,  3.909628126126824140e-08, TEST_TOL5);  s += test_sf_check_result(message_buff,  G,  1.365928464219262581e+07, 4.0*TEST_SQRT_TOL0);  s += test_sf_check_result(message_buff, Gp, -4.848117385783386850e+07, 4.0*TEST_SQRT_TOL0);  printf("%s", message_buff);  gsl_test(s, "  gsl_sf_coulomb_wave_FG_e(8.0, 1.05, lam_F=0.1, lam_G=0.1)");  status += s;  lam_F = 0.0;  k_G = 0;  eta = 50.0;  x = 0.1;  gsl_sf_coulomb_wave_FG_e(eta, x, lam_F, k_G, &F, &Fp, &G, &Gp, &Fe, &Ge);  s = 0;  message_buff[0] = 0;  s += test_sf_check_result(message_buff,  F,  2.807788027954216071e-67, TEST_TOL5);  s += test_sf_check_result(message_buff, Fp,  9.677600748751576606e-66, TEST_TOL5);  s += test_sf_check_result(message_buff,  G,  5.579810686998358766e+64, TEST_SQRT_TOL0);  s += test_sf_check_result(message_buff, Gp, -1.638329512756321424e+66, TEST_SQRT_TOL0);  printf("%s", message_buff);  gsl_test(s, "  gsl_sf_coulomb_wave_FG_e(50.0, 0.1, lam_F=0, lam_G=0)");  status += s;  lam_F = 0.0;  k_G = 0;  eta = 10.0;  x = 5.0;  gsl_sf_coulomb_wave_FG_e(eta, x, lam_F, k_G, &F, &Fp, &G, &Gp, &Fe, &Ge);  s = 0;  message_buff[0] = 0;  s += test_sf_check_result(message_buff,  F,  1.7207454091787930614e-06, 10.0*WKB_TOL);  s += test_sf_check_result(message_buff, Fp,  3.0975994706405458046e-06, 10.0*WKB_TOL);  s += test_sf_check_result(message_buff,  G,  167637.56609459967623, 10.0*WKB_TOL);  s += test_sf_check_result(message_buff, Gp, -279370.76655361803075, 10.0*WKB_TOL);  printf("%s", message_buff);  gsl_test(s, "  gsl_sf_coulomb_wave_FG_e(10.0, 5.0, lam_F=0, lam_G=0)");  status += s;  lam_F = 0.0;  k_G = 0;  eta = 25.0;  x = 10.0;  gsl_sf_coulomb_wave_FG_e(eta, x, lam_F, k_G, &F, &Fp, &G, &Gp, &Fe, &Ge);  s = 0;  message_buff[0] = 0;  s += test_sf_check_result(message_buff,  F,  1.5451274501076114315e-16, 5.0*WKB_TOL);  s += test_sf_check_result(message_buff, Fp,  3.1390869393378630928e-16, 5.0*WKB_TOL);  s += test_sf_check_result(message_buff,  G,  1.6177129008336318136e+15, 5.0*WKB_TOL);  s += test_sf_check_result(message_buff, Gp, -3.1854062013149740860e+15, 5.0*WKB_TOL);  printf("%s", message_buff);  gsl_test(s, "  gsl_sf_coulomb_wave_FG_e(25.0, 10.0, lam_F=0, lam_G=0)");  status += s;  lam_F = 0.0;  k_G = 0;  eta = 1.0;  x = 9.2;  gsl_sf_coulomb_wave_FG_e(eta, x, lam_F, k_G, &F, &Fp, &G, &Gp, &Fe, &Ge);  s = 0;  message_buff[0] = 0;  s += test_sf_check_result(message_buff,  F, -0.25632012319757955655, TEST_TOL5);  s += test_sf_check_result(message_buff, Fp,  0.91518792286724220370, TEST_TOL5);  s += test_sf_check_result(message_buff,  G,  1.03120585918973466110, TEST_SQRT_TOL0);  s += test_sf_check_result(message_buff, Gp,  0.21946326717491250193, TEST_SQRT_TOL0);  printf("%s", message_buff);  gsl_test(s, "  gsl_sf_coulomb_wave_FG_e(1.0, 9.2, lam_F=0, lam_G=0)");  status += s;  lam_F = 0.0;  eta = 10.0;  x = 10.0;  gsl_sf_coulomb_wave_FG_e(eta, x, lam_F, k_G, &F, &Fp, &G, &Gp, &Fe, &Ge);  s = 0;  message_buff[0] = 0;  s += test_sf_check_result(message_buff,  F,  0.0016262711250135878249, WKB_TOL);  s += test_sf_check_result(message_buff, Fp,  0.0017060476320792806014, WKB_TOL);  s += test_sf_check_result(message_buff,  G,  307.87321661090837987, WKB_TOL);  s += test_sf_check_result(message_buff, Gp, -291.92772380826822871, WKB_TOL);  printf("%s", message_buff);  gsl_test(s, "  gsl_sf_coulomb_wave_FG_e(10.0, 10.0, lam_F=0, lam_G=0)");  status += s;  lam_F = 0.0;  eta = 100.0;  x = 1.0;  gsl_sf_coulomb_wave_FG_e(eta, x, lam_F, k_G, &F, &Fp, &G, &Gp, &Fe, &Ge);  s = 0;  message_buff[0] = 0;  s += test_sf_check_result(message_buff,  F,  8.999367996930662705e-126, 10.0*WKB_TOL);  s += test_sf_check_result(message_buff, Fp,  1.292746745757069321e-124, 10.0*WKB_TOL);  s += test_sf_check_result(message_buff,  G,  3.936654148133683610e+123, 10.0*WKB_TOL);  s += test_sf_check_result(message_buff, Gp, -5.456942268061526371e+124, 10.0*WKB_TOL);  printf("%s", message_buff);  gsl_test(s, "  gsl_sf_coulomb_wave_FG_e(100.0, 1.0, lam_F=0, lam_G=0)");  status += s;  /* compute F_1(eta=0,x=3.25), F'_1 and G_1(eta=0,x=3.25), G'_1 */  lam_F = 1.0;  eta = 0.0;  x = 3.25;  k_G = 0;  gsl_sf_coulomb_wave_FG_e(eta, x, lam_F, k_G, &F, &Fp, &G, &Gp, &Fe, &Ge);  s = 0;  message_buff[0] = 0;  s += test_sf_check_result(message_buff,  F,  sin(x)/x - cos(x), TEST_TOL3);  s += test_sf_check_result(message_buff, Fp,  -sin(x)/(x*x) + cos(x)/x +sin(x), TEST_TOL3);  s += test_sf_check_result(message_buff,  G,  cos(x)/x + sin(x), TEST_TOL3);  s += test_sf_check_result(message_buff, Gp,  -cos(x)/(x*x) - sin(x)/x + cos(x), TEST_TOL3);  printf("%s", message_buff);  gsl_test(s, "  gsl_sf_coulomb_wave_FG_e(3.25, 0.0, lam_F=1, lam_G=1)");  status += s;  /* compute F_1(eta=0,x=3.25), F'_1 and G_0(eta=0,x=3.25), G'_0 */  lam_F = 1.0;  eta = 0.0;  x = 3.25;  k_G = 1;  gsl_sf_coulomb_wave_FG_e(eta, x, lam_F, k_G, &F, &Fp, &G, &Gp, &Fe, &Ge);  s = 0;  message_buff[0] = 0;  s += test_sf_check_result(message_buff,  F,  sin(x)/x - cos(x), TEST_TOL3);  s += test_sf_check_result(message_buff, Fp,  -sin(x)/(x*x) + cos(x)/x +sin(x), TEST_TOL3);  s += test_sf_check_result(message_buff,  G,  cos(x), TEST_TOL3);  s += test_sf_check_result(message_buff, Gp,  -sin(x), TEST_TOL3);  printf("%s", message_buff);  gsl_test(s, "  gsl_sf_coulomb_wave_FG_e(3.25, 0.0, lam_F=1, lam_G=0)");  status += s;  return status;}

⌨️ 快捷键说明

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