Mathematics & Programme

返回主页<-

双曲线三角函数的高精度计算
 
基本关系:
 
sinh[iZ] = i sin[Z] sin[iz] = i sinh[z]
cosh[iz] =   cos[z] cos[iz] =   cosh[z]
tanh[iz] = i tan[z] tan[iz] = i tanh[z]
coth[iz] =-i cot[z] cot[iz] =-i coth[z]
sech[iz] =   sec[z] sec[iz] =   sech[z]
csch[iz] =-i csc[z] csc[iz] =-i csch[z]

 

sinh(z) = (e^z-e^-z)/2 cosh(z) = (e^z+e^-z)/2
tanh(z) = (e^z-e^-z)/(e^z+e^-z) sinh(z) = (e^z+e^-z)/(e^z-e^-z)

 

arcsinh[iz] = i arcsin[z] arcsin[iz] = i arcsinh[z]
arccosh[ix] = i arccos[x] (x<1) {*} arccos[iz] =  {*}
arctanh[iz] = i arctan[z] arctan[iz] = i arctanh[z]
arccoth[iz] =-i arccot[z] arccot[iz] =-i arccoth[z]
arcsech[iz] =                   {*}   arcsec[iz] =  {*}
arccsch[iz] =-i arccsc[z] arccsc[iz] =-i arccsch[z]

{*}情况较为复杂, 参见下表

sin(x+iy) = sin[x] cosh[y] + i cos[x] sinh[y]
cos(x+iy) = cos[x] cosh[y] - i sin[x] sinh[y]
tan(x+iy) = (sin(2x)+isinh(2y))/(cos(2x)+cosh(2y))
cot(x+iy) = (-sin(2x)+isinh(2y))/(cos(2x)-cosh(2y))
sec(x+iy) = 2(cos(x)cosh(y)+isin(x)sinh(y))/(cos(2x)+cosh(2y))
csc(x+iy) = 2(-sin(x)cosh(y)+icos(x)sinh(y))/(cos(2x)-cosh(2y))

1+sinh(x)^2=cosh(x)^2  
1+csch(x)^2=coth(x)^2  
tanh(x)^2+sec(x)^2=1  

{*}以上公式来自 Mathematica 5.

 

幂级数:

 

sinh x = x+x3/3!+x5/5!+...(-1)k-1*x2k-1/(2k-1)!+...      (-∞<x<∞)

cosh x = 1+x2/2!+x4/4!+...(-1)k*x2k/(2k)!+...            (-∞<x<∞)

arcsinh x = x - 1/2*x3/3 + 1*3/(2*4)*x5/5 - ...       (|x|<1)

arctanh x = x + x^3/3 + x^5/5 + ...        (|x|<1)

倍(半)角关系
   
sinh(2x) = 2sinh(x)cosh(x)  
cosh(2x) = 2cosh(x)^2-1 = 1+2sinh(x)^2
tanh(2x) = 2tanh(x)/(1+tanh(x)^2)

 

计算
  先用 倍(半)角关系 将角度化小, 再用幂级数计算.

Last update 10/02/2007

 

交流:  留言本 or xyy82148@163.com