5.7 数学函数速览
Julia 预定义了非常丰富的数学函数。一些常用的函数如下:
- 数值类型转换: 主要有
T(x)
和convert(T, x)
。其中,T
代表目的类型,x
代表源值。 - 数值特殊性判断: 有
isequal
、isfinite
、isinf
和isnan
。 - 舍入: 有四舍五入的
round(T, x)
、向正无穷舍入的ceil(T, x)
、向负无穷舍入的floor(T, x)
,以及总是向0
舍入的trunc(T, x)
。 - 除法: 有
cld(x, y)
、fld(x, y)
和div(x, y)
,它们分别会将商向正无穷、负无穷和0
做舍入。其中的x
代表被除数,y
代表除数。另外,与之相关的还有取余函数rem(x, y)
和取模函数mod(x, y)
,等等。 - 公约数与公倍数: 函数
gcd(x, y...)
用于求取最大正公约数,而函数lcm(x, y...)
则用于求取最小正公倍数。圆括号中的...
的意思是,除了x
和y
,函数还允许传入更多的数值。但要注意,这里的数值都应该是整数。 - 符号获取: 函数
sign(x)
和signbit(x)
都用于获取一个数值的符号。但不同的是,前者对于正整数、0
和负整数会分别返回1
、0
和-1
,而后者会分别返回false
、false
和true
。 - 绝对值获取: 用于获取绝对值的函数是
abs(x)
。一个相关的函数是,用于求平方的abs2(x)
。 - 求根: 函数
sqrt(x)
用于求取x
的平方根,而函数cbrt(x)
则用于求取x
的立方根。 - 求指数: 函数
exp(x)
会求取x
的自然指数。另外还有expm1(x)
,为接近0
的x
计算exp(x)-1
。 - 求对数:
log(x)
会求取x
的自然对数,log(b, x)
会求以b
为底的x
的对数,而log2(x)
和log10(x)
则会分别以2
和10
为底求对数。另外还有log1p(x)
,为接近0
的x
计算log(1+x)
。
除了以上函数之外,Julia 的Base
包中还定义了很多三角函数和双曲函数,比如sin
、cos
、atanh
、acoth
等等。另外,在SpecialFunctions.jl
包里还有许多特殊的数学函数。不过这个包就需要我们手动下载了。
当前内容版权归 郝林 hyper0x 或其关联方所有,如需对内容或内容相关联开源项目进行关注与资助,请访问 郝林 hyper0x .