我已经使用numpy编写了这个优化过程,我必须执行以下计算:
B是对称负半定矩阵,I是单位矩阵。 问题是B的值可能太大(> 1e25),并且当通过对角矩阵减去某些元素时,因为有足够的精度。 有没有办法克服这个问题,还是我需要使用另一个像mpmath这样的库来重写它?
答案 0 :(得分:0)
您需要重新实现,但实现可能很简单:更改数字表示。既然你没有指定你正在使用的基本类型,或者实际值范围(1e25对什么?),我无法做出明确的建议。
但是,请注意numpy
有几种类型具有更高的精度,包括longdouble(80位),float96和float128。如果您需要超过128位(精度为38位),那么mpmath
就可以了。