第一类修正贝塞尔函数公式

Iν(z)=(z2)ν∑(k=0)∞(z24)kk!Γ(ν+k+1)I_{\nu}(z)=\left(\frac{z}{2}\right)^{\nu} \sum_{(k=0)}^{\infty} \frac{\left(\frac{z^{2}}{4}\right)^{k}}{k ! \Gamma(\nu+k+1)}Iν​(z)=(2z​)ν(k=0)∑∞​k!Γ(ν+k+1)(4z2​)k​

其中,Γ(a)\Gamma(a)Γ(a)是gamma函数。

常量和结构体定义

常量和结构体定义的头文件ConstParam.h在下面文章中
MATLAB库函数hilbert(希尔伯特变换)的C语言实现(FFT采用FFTW库)

第一类修正贝塞尔函数的C语言实现

/* PURPOSE: Evaluate modified Bessel function In(x) and n=0. */
double bessi0(double x)
{double ax, ans;double y;if ((ax = fabs(x)) < 3.75) {y = x / 3.75, y = y * y;ans = 1.0 + y * (3.5156229 + y * (3.0899424 + y * (1.2067492+ y * (0.2659732 + y * (0.360768e-1 + y * 0.45813e-2)))));}else {y = 3.75 / ax;ans = (exp(ax) / sqrt(ax))*(0.39894228 + y * (0.1328592e-1+ y * (0.225319e-2 + y * (-0.157565e-2 + y * (0.916281e-2+ y * (-0.2057706e-1 + y * (0.2635537e-1 + y * (-0.1647633e-1+ y * 0.392377e-2))))))));}return ans;
}/* PURPOSE: Evaluate modified Bessel function In(x) and n=1. */
double bessi1(double x)
{double ax, ans;double y;if ((ax = fabs(x)) < 3.75) {y = x / 3.75, y = y * y;ans = ax * (0.5 + y * (0.87890594 + y * (0.51498869 + y * (0.15084934+ y * (0.2658733e-1 + y * (0.301532e-2 + y * 0.32411e-3))))));}else {y = 3.75 / ax;ans = 0.2282967e-1 + y * (-0.2895312e-1 + y * (0.1787654e-1- y * 0.420059e-2));ans = 0.39894228 + y * (-0.3988024e-1 + y * (-0.362018e-2+ y * (0.163801e-2 + y * (-0.1031555e-1 + y * ans))));ans *= (exp(ax) / sqrt(ax));}return x < 0.0 ? -ans : ans;
}/* PURPOSE: Evaluate modified Bessel function In(x) for n >= 0*/
double bessi(int n, double x)
{int j;double bi, bim, bip, tox, ans;if (n < 0){return -INFINITY;}if (n == 0)return(bessi0(x));if (n == 1)return(bessi1(x));if (x == 0.0)return 0.0;else {tox = 2.0 / fabs(x);bip = ans = 0.0;bi = 1.0;for (j = 2 * (n + (int)sqrt(ACC*n)); j > 0; j--) {bim = bip + j * tox*bi;bip = bi;bi = bim;if (fabs(bi) > BIGNO) {ans *= BIGNI;bi *= BIGNI;bip *= BIGNI;}if (j == n) ans = bip;}ans *= bessi0(x) / bi;return  x < 0.0 && n % 2 == 1 ? -ans : ans;}
}

第一类修正贝塞尔函数的C语言实现相关推荐

  1. 第一类修正贝塞尔函数

    #include "stdio.h" #include "math.h" /****************************************** ...

  2. 第一类修正贝塞尔函数[转]

    http://blog.csdn.net/wangjiannuaa/article/details/6117988 #include "stdio.h" #include &quo ...

  3. matlab 第一类修正贝塞尔函数,零阶贝塞尔函数 在MATLAB中怎样画出零阶修正贝塞尔函数...

    第二类修正贝塞尔函数的零阶和一阶,分别怎样用mat回忆终究只是回忆,它只代表一段过去,一段历史,回忆再美也只是曾经,告别过去,期待未来. 书上说 (0和1都是下标) K0(z), the zeroth ...

  4. matlab第一类修正贝塞尔函数,bessel(第一类修正贝塞尔函数)

    MATLAB提供了计算贝塞尔函数的函数,具体包来括:besselj - 第一类贝塞尔函数,或简称贝塞尔函数:bessely - 第二类贝塞尔函数,又称诺伊曼函数(Neumann . 对光纤中传播的电磁 ...

  5. matlab 第一类修正贝塞尔函数,bessel(第一类修正贝塞尔函数)

    MATLAB提供了计算贝塞尔函数的函数,具体包来括:besselj - 第一类贝塞尔函数,或简称贝塞尔函数:bessely - 第二类贝塞尔函数,又称诺伊曼函数(Neumann . 对光纤中传播的电磁 ...

  6. 第二类修正贝塞尔函数

    1 递推算式 摘自<MATLAB语音常用程序集> 第二类修正贝塞尔函数需要用第一类修正贝塞尔函数来计算

  7. 广义逆高斯分布(Generalized Inverse Gaussian Distribution)及修正贝塞尔函数

    1. PDF generalized inverse Gaussian distribution (GIG) 是一个三参数的连续型概率分布: f(x)=(a/b)p/22Kp(ab−−√)xp−1e− ...

  8. 自己实现MATLAB支持向量化输入输出的零阶修正贝塞尔函数

    function [ y ] = Bessel0( x ) % 此函数用于计算0阶修正贝塞尔函数值 % 支持向量化输入输出 % 作用相当于MATLAB自带的库函数besseli(0,x) theta ...

  9. 第一类修正Bessel 函数

    摘自图书:

最新文章

  1. getIntExtra() 获取传递过来的int 值总是默认值
  2. centos yum php apc,centos – PECL APC安装 – 错误:’make’失败
  3. 向量程序C语言,一个有关向量与矩阵的实用计算器程序
  4. leetcode 12 ,13 Integer to Roman amp;amp;Roman to Integer 罗马与阿拉伯数组转换
  5. bzoj1303[CQOI2009]中位数图
  6. Linux学习之七--mysql的安装使用
  7. 目标检测之SSD数据处理、训练与预测流程记录
  8. IDEA 这么设置 Maven,再也不用担心依赖下载失败了
  9. 迅歌点歌系统服务器过期或不信任怎么办,点歌机常见问题解析
  10. 湖南科技大学计算机实力强吗,湖南省这2所重点大学,吉首大学和湖南科技大学,谁的实力更强...
  11. 3S基础知识:MapInfo教程--二次开发入门
  12. local_listener参数(2)---elaine
  13. 【css】鼠标禁用样式
  14. python h5游戏_记一次游戏H5开发经验
  15. SQL Server安装中错误该性能计数器注册表配置单元已损坏。若要继续,必须修复该性能计数器注册表配置单元的解决
  16. NodeBB – 基于 Node.js 的开源论坛系统
  17. 如何制作一封高打开率的邮件?
  18. python模块之signal信号
  19. [hive 报错]:FAILED:SemanticException [Error 10025] Expression not in GROUP BY key
  20. Android博通BCM libbt-vendor.so 分析蓝牙初始化流程

热门文章

  1. ZK的实际应用:MVVM –以编程方式更新视图
  2. 有时在Java中,一个布局管理器是不够的
  3. Servlet中的监听器
  4. IntelliJ IDEA 选中变量名,高亮显示其它地方的这个变量名,高亮颜色如何设置呢?
  5. 夸克浏览器怎么安装脚本_iOS 第一浏览器发布安卓版,除了真香我还能说什么...
  6. python编程狮题库答案_‎Python编程狮-零基础学Python dans l’App Store
  7. python如何读取文件内容求和_使用python对文件中的数值进行累加的实例
  8. petalinux 配置_澧县高压管道工厂化配置专业销售
  9. matlab 三维图像配准,[转载]Matlab实现多种图像配准(转)
  10. 内存不能为read进不去桌面_四级报名进不去怎么办