Conjugate transpose l'opérateur ".H" en numpy
Il est très pratique dans numpy pour utiliser le .T
attribut pour obtenir une version transposée d'une ndarray
. Cependant, il n'existe aucune autre façon d'obtenir le conjugué transposer. Numpy est la matrice de la classe a l' .H
opérateur, mais pas ndarray. Parce que j'aime un code lisible, et parce que je suis trop paresseux pour écrire toujours .conj().T
je voudrais le .H
propriété d'être toujours disponible pour moi. Comment puis-je ajouter cette fonctionnalité? Est-il possible de l'ajouter, de sorte qu'il est brainlessly disponible à chaque fois que numpy est importé?
(Même question pourrait être posée à propos de la .I
inverse de l'opérateur.)
source d'informationauteur benpro
Vous devez vous connecter pour publier un commentaire.
Vous pouvez sous-classe de la
ndarray
objet comme:tels que:
vous donnera le comportement désiré...
En général, la difficulté de ce problème est que Numpy est une C-extension, qui ne peut pas être singe patché...ou peut-il? Le forbiddenfruit module permet de le faire, bien qu'il se sent un peu comme jouer avec des couteaux.
Voici donc ce que j'ai fait:
Installer le très simple forbiddenfruit paquet
Déterminer l'utilisateur le répertoire de personnalisation:
Dans ce répertoire, modifier
usercustomize.py
à inclure les éléments suivants:Tester:
Résultats dans: