gpt4 book ai didi

python - sympy.geometry 点类工作缓慢

转载 作者:行者123 更新时间:2023-11-28 22:34:38 26 4
gpt4 key购买 nike

我有一个读取非结构化网格的代码。我围绕 sympy.geometry 的几何实体编写了包装器,例如:

class Point:
def __init__(self, x, y, parent_mesh):
self.shape = sympy.geometry.Point(x,y)
self.parent_mesh = parent_mesh
self.parent_cell = list()

一切正常,但 sympy.geometry.Point 的初始化需要为每个 Point 花费大量时间。实际上,代码并没有执行完数千个点。用 C++ 编写的类似代码在几秒钟内完成。没有它,代码就足够快了(我删除了它并计时)。我读到一个可能的原因可能是 sympy.geometry 将 float 转换为有理数以提高精度。有没有一种方法(标志)可以加快 sympy.geometry 的速度,因为我不需要精确度?

最佳答案

看看 Point class documentation ,具体来说,在第一个示例中:

Floats are automatically converted to Rational unless the evaluate flag is False.

因此,您可以在初始化Point 类时传递一个名为evaluate 的标志:

self.shape = sympy.geometry.Point(x,y, evaluate=False)

这显然表明您在寻找什么。

关于python - sympy.geometry 点类工作缓慢,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38830236/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com