1 递推算式
摘自《MATLAB语音常用程序集》
第二类修正贝塞尔函数需要用第一类修正贝塞尔函数来计算
2 vc编程实现
#include <stdio.h>
#include <math.h>
double first_xzbsl(int n,double x)//第一类修正的贝塞尔函数
{
double a[7]={
1.0,3.5156229,3.0899424,1.2067492,0.2659732,0.0360768,0.0045813};
double c[7]={
0.5,0.87890594,0.51498869,0.15084934,0.02658773,0.00301532,0.00032411};
double b[9]={
0.39894228,0.01328592,0.00225319,-0.00157565,0.00916281,-0.02057706,0.02635537,-0.01647633,0.00392377};
double d[9]={
0.39894228,-0.03988024,-0.00362018,0.00163801,-0.01031555,0.02282967,-0.02895312,0.01787654,-0.00420059};
double z=0;
double t=0;//临时变量
int k=0;
int xl=1;//X<0 xl=FALSE,X>0 xl=TRUE
double y=0;
if(n==0 && abs(x)<3.75)
{
//第一类修正0阶贝塞尔函数
t=x/3.75;
y=pow(t,2);<