14
epsilon=0.5j #sqeezing parameter
17
tlist=arange(0.0,tfinal+dt,dt)
18
taulist=K*tlist #non-dimensional times
22
a0=tensor(destroy(N0),qeye(N1),qeye(N2))
23
a1=tensor(qeye(N0),destroy(N1),qeye(N2))
24
a2=tensor(qeye(N0),qeye(N1),destroy(N2))
30
#dissipative operators for zero-temp. baths
31
C0=sqrt(2.0*gamma0)*a0
32
C1=sqrt(2.0*gamma1)*a1
33
C2=sqrt(2.0*gamma2)*a2
36
#initial state: coherent mode 0 & vacuum for modes #1 & #2
37
vacuum=tensor(basis(N0,0),basis(N1,0),basis(N2,0))
38
D=(alpha*a0.dag()-conj(alpha)*a0).expm()
41
H=1j*K*(a0*a1.dag()*a2.dag()-a0.dag()*a1*a2)
42
Heff=H-0.5*1j*(C0.dag()*C0+C1.dag()*C1+C2.dag()*C2)
45
start_time=time.time()
46
ops=mcsolve(Heff,psi0,taulist,ntraj,[C0,C1,C2],[num0,num1,num2])
47
finish_time=time.time()
48
print 'time elapsed = ',finish_time-start_time
50
avg=sum(ops,axis=0)/ntraj
52
plot(taulist,avg[0],taulist,avg[1],taulist,avg[2])