Как построить маргинальные распределения в Qutip Python?
Я сгенерировал функцию Wigner для моей проблемы, используя qutip.wigner. И, как мы все знаем, интегрируя квази-вероятностное распределение Вигнера, мы получаем, что предельные вероятностные распределения
|ψ(q)|2=∫W(q,p)dp=⟨q|ρ̂|q⟩, |ψ̃(p)|2=∫W(q,p)dq=⟨p|ρ̂|p⟩
Мой вопрос заключается в том, как я могу получить эти квадратурные распределения из сгенерированной функции Вигнера в Python?
Также я прочитал о маргинальной команде в qutip.distributions. Написал некоторый следующий код:
from qutip import *
from numpy import *
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D
from matplotlib import cm
from qutip.distributions import Distribution
## Parameters ##
N = 64 # number of states of quantum system
## Basis State ##
rho = coherent_dm(N, 0)
## Operators ##
a = destroy(N) # lowering operator
x = position(N) # Position operator
v = 0.5*(a + a.dag())
u = 0.5*i*(a.dag() - a)
## Wigner Function ##
xvec = linspace(-15,15,500) # range of phase space
W = wigner(rho, xvec, xvec) # generate Wigner Function
class Distribution:
def marginal(self, dim=1):
Но это не выполняется от меня, интеграция также не работает. Также я попытался получить это из значений ожидания моей матрицы плотности на квадратурные собственные состояния.
| ψ (q) | 2 = ⟨q | ρ̂ | q⟩, | ψ̃ (p) | 2 = ⟨p | ρ̂ | p⟩
Но так как я нуби, то ничего не работает. Кто-нибудь может мне помочь? В каком направлении я должен идти? и как это будет сделано?