在Haskell中是否有办法为三角函数的数值计算指定精度(比如r位)?
答案 0 :(得分:1)
就Haskell而言,语言中指定的所有三角函数(以及base
--- sin
,cos
等中的所有三角函数都是重载/多态的类型类,因此每种类型都可以实现一次性实现的sin
,cos
等。
因此Float
可以实施sin
,cos
,Double
可以实现它等等。
因此,自定义sin
的精度可能只是找到一个符合您所需精度的类型。每种类型都可以实现自己的sin
,因此他们可以自由地提供他们想要的任何精度。
您也可以编写自己的sin
和cos
版本,其中" round"或以您想要的方式截断精度,并将其命名为sin'
或cos'
或类似的东西:)
sin' x = (/100) . realToFrac . round . (*100) . sin
或许,例如