Ich versuche, numpy.complex64
Unterklasse zu bilden, um die Art und Weise numpy speichert die Daten, (zusammenhängende, Real-und Imaginärteil abwechselnd) verwenden aber meine eigenen __add__
, __sub__
, ... Routinen.Subclassing numpy Skalartypen
Mein Problem ist, dass, wenn ich ein numpy.ndarray
machen, das Setzen von dtype=mysubclass
, ich numpy.ndarray
mit dtype='numpy.complex64'
anstelle bekommen, die in numpy führt nicht meine eigenen Funktionen für Ergänzungen verwenden, Subtraktionen und so weiter.
Beispiel:
import numpy as np
class mysubclass(np.complex64):
pass
a = mysubclass(1+1j)
A = np.empty(2, dtype=mysubclass)
print type(a)
print repr(A)
Ausgang:
<class '__main__.mysubclass'>
array([ -2.07782988e-20 +4.58546896e-41j, -2.07782988e-20 +4.58546896e-41j], dtype=complex64)'
Wer weiß, wie dies zu tun?
Dank im Voraus - Soren
Ich denke, a sah eine ähnliche Frage vor kurzem, aber kann es nicht sofort finden ... – NPE