scipy.stats.unitary_group#

scipy.stats.unitary_group = <scipy.stats._multivariate.unitary_group_gen object>[Quelle]#

Eine matrix-wertige U(N) Zufallsvariable.

Gibt eine zufällige unitäre Matrix zurück.

Das Schlüsselwort dim gibt die Dimension N an.

Parameter:
dimSkalar

Dimension der Matrizen.

seed{None, int, np.random.RandomState, np.random.Generator}, optional

Wird zum Ziehen von Zufallsvarianten verwendet. Wenn seed None ist, wird die RandomState Singleton verwendet. Wenn seed eine Ganzzahl ist, wird eine neue RandomState-Instanz verwendet, die mit seed initialisiert wird. Wenn seed bereits eine RandomState- oder Generator-Instanz ist, wird dieses Objekt verwendet. Standard ist None.

Methoden

rvs(dim=None, size=1, random_state=None)

Zufällige Stichproben aus U(N) ziehen.

Siehe auch

ortho_group

Hinweise

Diese Klasse ist ähnlich wie ortho_group.

Referenzen

[1]

F. Mezzadri, „How to generate random matrices from the classical compact groups“, arXiv:math-ph/0609050v2.

Beispiele

>>> import numpy as np
>>> from scipy.stats import unitary_group
>>> x = unitary_group.rvs(3)
>>> np.dot(x, x.conj().T)
array([[  1.00000000e+00,   1.13231364e-17,  -2.86852790e-16],
       [  1.13231364e-17,   1.00000000e+00,  -1.46845020e-16],
       [ -2.86852790e-16,  -1.46845020e-16,   1.00000000e+00]])  # may vary

Dies generiert eine zufällige Matrix aus U(3). Das Skalarprodukt bestätigt, dass sie bis auf Maschinengenauigkeit unitär ist.

Alternativ kann das Objekt (als Funktion) aufgerufen werden, um den dim Parameter festzulegen, wodurch eine „eingefrorene“ unitary_group Zufallsvariable zurückgegeben wird.

>>> rv = unitary_group(5)