Uwaga Nie korzystaj z poniższych wskazówek w sytuacjach innych niż kryzysowe. Pracuj samodzielnie i ciesz się sukcesem
from qutip import *
from pylab import *
%pylab inline
Populating the interactive namespace from numpy and matplotlib
WARNING: pylab import has clobbered these variables: ['power', 'info', 'linalg', 'draw_if_interactive', 'random', 'fft', 'load', 'save'] `%pylab --no-import-all` prevents importing * from pylab and numpy
Ad 1. Przeprowadź obliczenia dla warunku początkowego $|\psi\rangle=a|0\rangle+b|1\rangle$ Pamiętaj o normalizacji!
up=basis(2,0)
dn=basis(2,1)
#
a=1.0
b=2.0
vv=(a*up+b*dn).unit()
Wykreśl uzyskane wyniki w analogiczny sposób. Zwróć szczególną uwagę na przypadki skrajne $a=0$ albo $b=0$.
Ad 2. Przypadek $A=0$ jest bardzo szczególny. Opisuje sytuację, gdy qubit nie wymienia energii z otoczeniem. Zwróć uwagę, że w tym przypadku produkcja entropii jest najmniejsza.
Ad 3. Stany Bella to wektory:
$|B0\rangle=\frac{1}{\sqrt{2}}(|00\rangle+|11\rangle)$
$|B1\rangle=\frac{1}{\sqrt{2}}(|00\rangle-|11\rangle)$
$|B2\rangle=\frac{1}{\sqrt{2}}(|01\rangle+|10\rangle)$
$|B3\rangle=\frac{1}{\sqrt{2}}(|01\rangle-|10\rangle)$
Poniżej zapisano dwa spośród powyższych. Które?
rpp=up*up.dag()
rpm=up*dn.dag()
rmp=rpm.trans()
rmm=dn*dn.dag()
#
BB0=(tensor(rpp,rmm)+tensor(rpm,rmp)+tensor(rmp,rpm)+tensor(rmm,rpp))/2.0
BB1=(tensor(rpp,rpp)+tensor(rpm,rpm)+tensor(rmp,rmp)+tensor(rmm,rmm))/2.0
Ad 1 Rzowiązując to zadanie wykorzystaj stany Bella otrzymane w poprzednim przykładzie powyżej. Powtórz obliczenia dla
B0=(tensor(basis(2,0),basis(2,1))+tensor(basis(2,1),basis(2,0))).unit()
Ad 2 Wykreśl wyniki dla pozostałych czterech stanów Bella. Umieść je na jednym wykresie. Krzywe będą nieodóżnialne
Ad 3 Zastosuj
Hint=tensor(sigmaz(),sigmaz())
a następnie powtórz obliczenia z materiałów dydaktycznych
Ad 1 $\delta_r=0$, $\delta_t=-\pi/2$ a $\kappa=\pi/2$, sprawdź :)
Ad 2 $\delta_r=\pi/2$, $\delta_t=\pi/2$ a $\kappa=-\pi/2$, też sprawdź :)
Ad 1 Przeprowadź powtórne obliczenia dla różnych wartości parametru $\mu$, zaś uzyskane wyniki umieść na jednym wykresie
Ad 2 Zastosuj hamiltonian
X=create(N)+destroy(N) H=num(N)-mu((1jX).expm()+(-1j*X).expm())/2
Ad 1 Powtórz obliczenia wykonane w materiałach dla funkcji damp() oraz flip() użytych w miejsce deopl()
Ad 2 Wykorzystaj fynkcję concurrence() do obliczenia splatania. Wykorzystaj funkcje depol() w działaniu na wynbrany stan Bella dla uzyskania zdpolaryzowanego stanu Bella
Ad 1 & 2: rozwiazanie znajdziesz w podręczniku Gerry & Knight "Wstęp do optyki kwantowej". Lepiej tam niż w Wikipedii :)
Ad 1 Powtórz obliczenia z materiałów dydaktycznych. Zamiast obserwabli
outlist[i1]=(rho*num(N)).tr()
użyj
outlist[i1]=(rho*sigmax()).tr()
Ad 2 Użyj D=sqrt(0.1)*num(N)
Ad 1 $p=2/3$
Ad 2 uzyj funkcji concurrence() w miejsce negat()
Ad 1 & 2 Wykonaj ponowne obliczenia przy uzyciu narzędzi z materiałów dydaktycznych. Wykreśl wyniki na jednym wykresie
Ad 1 Wykorzystaj funcję tracedist()
Ad 3 Skorzystaj ze wskazówek do rozwiązań zadania o stanach koherentnych Gazeau-Klaudera
Ad 1 &2 Skorzystaj ze wskazówek do zadań o qubicie w otoczeniu termicznym:
Dla stanu R uzyj w obliczeniach
BB1=(tensor(rpp,rpp)+tensor(rpm,rpm)+tensor(rmp,rmp)+tensor(rmm,rmm))/2.0