Four level atom

854 views
Skip to first unread message

mehrosadate...@gmail.com

unread,
May 21, 2016, 11:11:20 AM5/21/16
to QuTiP: Quantum Toolbox in Python
Hello,

I have a Hamiltonian, that describes the interaction of single four level atom with electromagnetic field.
I do not know how I should enter it in QuTiP.
I only know the situation for single two level atom.
Can you please help me?

Regards
Mehrosadat

Andrew Dawes

unread,
May 21, 2016, 4:10:33 PM5/21/16
to qu...@googlegroups.com
There isn't anything particular about how to enter a four-level other than that you can't use built-in operators like sigma operators etc. Look at the source code for "three_level_basis" and extend that to four levels. The Hamiltonian should be a 4-by-4 matrix.


And
 
Qutrit basis from:



Sent from my phone using voice-recognition software and/or clumsy thumbs, please forgive any typos.
--
You received this message because you are subscribed to the Google Groups "QuTiP: Quantum Toolbox in Python" group.
To unsubscribe from this group and stop receiving emails from it, send an email to qutip+un...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

mehrosadate...@gmail.com

unread,
May 24, 2016, 11:37:03 AM5/24/16
to QuTiP: Quantum Toolbox in Python
Hello,

I could not solve my problem.
I want to investigate a system that is described by Hamiltonian, equation (1) in my attached paper, but I do not know how I should identify each operators, even the operator of the field ! (for example in the form a=tensor (identity(4),destroy(N)) ??)

Can you please help me?

Regards
Mehrosadat


Large kerr nonlnearity with a single atom.pdf

Andrew M. C. Dawes

unread,
May 24, 2016, 12:29:33 PM5/24/16
to qu...@googlegroups.com
Yes, you'll want operators that look like this:

# first, define the four atomic states:
one = basis(4,0)
two = basis(4,1)
three = basis(4,2)
four = basis(4,3)

# second, define the populations and coherences of the atom:
sig11 = one * one.dag()
sig22 = two * two.dag()
sig33 = three * three.dag()
sig44 = four *four.dag()
sig43 = four * three.dag()
sig32 = three * two.dag()
sig21 = two * one.dag()

N = 10  # limit the photon space to N dimensions

# Now, form tensor operators
# the tensor space will be in the form |atom> (*) |photon>:

a = tensor(identity(4),destroy(N))
sig11 = tensor(sig11,identity(N))
sig22 = tensor(sig22,identity(N))

... etc fill in the rest

I didn't type all of the tensor operators but you should be able to extend that idea.

The last piece is that your collapse operators are given in eq. 3b. These will be as follows:

np.sqrt(kappa)*a
np.sqrt(gamma1)*sig12

etc (the other two follow this pattern.


mehrosadate...@gmail.com

unread,
May 24, 2016, 3:26:35 PM5/24/16
to QuTiP: Quantum Toolbox in Python
Thank you very much.
your guidance was excellent.

Regards
Mehrosadat

ahmed SALAH

unread,
Feb 27, 2017, 6:45:23 AM2/27/17
to QuTiP: Quantum Toolbox in Python

Hi Dear
I have seen your request Hamiltonian which describe the interaction of single four level atom with electromagnetic field.
Find the code with Qutip
def hamiltonian_t(t, args):       
    H0  = args[0]
    H12 = args[1]
    H21 = args[2]
    H13 = args[3]
    H31 = args[4]
    H24 = args[5]
    H42 = args[6]
    H34 = args[7]
    H43 = args[8]
    H=H0+(H12*exp(1j*delta1*t)+H21*exp(-1j*delta1*t))+\
    (exp(1j*delta2*t)*H13+H31*exp(-1j*delta2*t))+\
    (H24*exp(1j*delta3*t)+H42*exp(-1j*delta3*t))+\
    (H34*exp(1j*delta4*t)+H43*exp(-1j*delta4*t))          
    return H
     
   
N=30 
Karr=0.0   
delta1=7.0
delta2=7.0
delta3=15.0
delta4=15.0
      
# cavity operators
a = tensor(destroy(N), qeye(4))
A = a 
nc = a.dag() * a
xc = a + a.dag()
 
#atomic operators atomic raising
   
sigma11=tensor(qeye(N),basis(4,0)*basis(4,0).dag())
sigma22=tensor(qeye(N),basis(4,1)*basis(4,1).dag())
sigma33=tensor(qeye(N),basis(4,2)*basis(4,2).dag())
sigma44=tensor(qeye(N),basis(4,3)*basis(4,3).dag())
       
#atomic operators atomic loweing
sigma12=tensor(qeye(N),basis(4,0)*basis(4,1).dag())
sigma13=tensor(qeye(N),basis(4,0)*basis(4,2).dag())
sigma24=tensor(qeye(N),basis(4,1)*basis(4,3).dag())
sigma34=tensor(qeye(N),basis(4,2)*basis(4,3).dag())
I = tensor(qeye(N), qeye(4))
# effective Hamiltonian
H0=  Karr * A.dag()**2 * A**2
H12= A * sigma12
H21= A.dag() * sigma12.dag()
H13= A * sigma13
H31= A.dag() * sigma13.dag()
H24= A * sigma24
H42= A.dag() * sigma24.dag()
H34= A * sigma34
H43= A.dag() * sigma34.dag()
args = (H0, H12, H21, H13, H31, H24, H42, H34, H43)
   
#
c_ops = []

psi0 = tensor(SS(N, sqrt(10),arcsinh(1),0), (basis(4,0)).unit())
tlist = linspace(0, 100, 1500)
res = mesolve(hamiltonian_t, psi0, tlist, c_ops, [], args)
Reply all
Reply to author
Forward
0 new messages