Problem with emission spectrum function (an its diverse methods)

75 views
Skip to first unread message

Javier Del Pino Gutiérrez

unread,
Mar 23, 2015, 2:11:05 PM3/23/15
to qu...@googlegroups.com
Hi,
I was doing some simple tests of the new steady state emission spectrum function, and I'm finding something surprising...
I'm providing a minimal example here, corresponding to the emission of a 2LS under coherent pumping of zero frequency, with some small losses. The emission is computed using the new routine with the available methods and also the old one.
The results seem to be irrespective of using the numpy pseudoinverse method or not. In that case There are only 2 peaks (by the way, which are not physical). The results coming from the eseries solver agree with the old function (I guess the function is at the end the same), but the emission is negative
for negative frequencies which doesn't make any sense.  For higher driving intensities the peak at the left appears for all the possible approaches but the right one only exists for the 'pi' solver.
Here is the minimal example I was referring to

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
from qutip import *
%pylab inline #I'm using ipython notebook

w0 = 1.

#System Hamiltonian
sm = destroy(2)
H = w0*sm.dag()*sm + 1e-5*(sm + sm.dag())
#Collapse operators
c_ops = [sqrt(0.01)*sm]

#Frequencies
wlist = linspace(-w0-0.2,w0+0.2,250)
#eseries method
sp1 = spectrum(H,wlist,c_ops,sm.dag(),sm,solver='es', use_pinv=False)
#pi method without pinv
sp2 = spectrum(H,wlist,c_ops,sm.dag(),sm,solver='pi', use_pinv=False)
#pi method with pinv
sp3 = spectrum(H,wlist,c_ops,sm.dag(),sm,solver='pi', use_pinv=True)
#sp using the older spectrum_ss function
sp4 = spectrum(H,wlist,c_ops,sm.dag(),sm)
#plot the results
plot(wlist,sp1,lw=3,label='eseries method')
plot(wlist,sp2,lw=3,linestyle='--',label='use_pinv=False')
plot(wlist,sp3,'o',label='use_pinv=True')
plot(wlist,sp4,lw=3,linestyle='--',label='old_function')
xlabel('Frequency')
ylabel('Emission')

legend(loc='upper center')
savefig('2LS_emission_problem.png')
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Small driving

Small but higher driving 

------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------


from qutip.ipynbtools import version_table
version_table()

SoftwareVersion
Cython0.22
SciPy0.15.1
QuTiP3.1.0
Python2.7.9 |Anaconda 2.1.0 (x86_64)| (default, Dec 15 2014, 10:37:34) [GCC 4.2.1 (Apple Inc. build 5577)]
IPython3.0.0-dev
OSposix [darwin]
Numpy1.9.2
matplotlib1.4.3

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Thanks in advance for your attention. I apologize if I missed something.

Best

Message has been deleted
Message has been deleted
Message has been deleted

Kevin Fischer

unread,
Mar 23, 2015, 8:46:40 PM3/23/15
to qu...@googlegroups.com
Hi Javier,

From QuTiP's perspective, your Hamiltonian models a system driven far off resonance (by w0). That is why the expectation values of the emission are so low (1e-15/1e-19). If you consider your drive to be a coherent laser beam, then in this time-independent frame the drive of the laser amplitude modulates the 2TLS florescence, resulting in two side-bands (roughly +/- w0). The system only re-emits energy at the drive frequency for much higher driving powers (1e-1 vs 1e-5) and this is more easily visible on a log plot. The reason why these methods do not all yield the same values is because so far off resonance with such a weak drive, you're actually running into the machine's floating point precision and rounding errors (and they're calculated slightly different ways so the precision can enter differently).

For more detail, e.g., see the rotating frame transformations and the sections on resonance florescence in Steck's quantum optics notes.

Best,
Kevin

Javier Del Pino Gutiérrez

unread,
Mar 24, 2015, 6:20:21 AM3/24/15
to qu...@googlegroups.com
Wow! That definitely solved my problem! (a problem of background by the way)
Indeed I didn't know about the notes you have linked and the are treat the problem of stimulated emission by a coherent field in an impressive deep way.
Thank you very much for your time!

Best

Kevin Fischer

unread,
Mar 24, 2015, 2:56:46 PM3/24/15
to qu...@googlegroups.com
Great, glad I was able to help!
Reply all
Reply to author
Forward
0 new messages