Ich habe einen Code, der unstrukturiertes Netz liest. Ich schrieb Wrapper um geometrische Objekte von sympy.geometry
wie:sympy.geometry Punktklasse arbeitet langsam
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()
Alles funktioniert gut, aber die Initialisierung von sympy.geometry.Point
braucht viel Zeit für jeden Point
. Tatsächlich beendete der Code die Ausführung für Tausende von Punkten nicht. Ein in C++ geschriebener Code ist in wenigen Sekunden fertig. Ohne es ist der Code schnell genug (ich habe es entfernt und zeitlich festgelegt). Ich lese, dass ein möglicher Grund sein könnte, dass sympy.geometry
Fließkommazahlen in rationals für Präzision umwandelt. Gibt es einen Weg (Flagge), um sympy.geometry
zu beschleunigen, da ich keine genaue Präzision brauche?
Ja, das hat das Problem gelöst. Ich hätte die Dokumentation besser lesen sollen. Vielen Dank. – Shibli
Obwohl jetzt sympy.geometry.Triangle arbeitet sehr langsam und es gibt nichts über "evaluate" in diesem Fall. – Shibli
"Dreieck" kann mit 3 Punkten initialisiert werden, also sollten Sie diese Punkte nicht in Rational umsetzen. –