Lambda Systems

I am trying to simulate a 3-level lambda system. I have defined the operators such as sigma_ee, sigma_es, sigma_eg, etc. as 3-level matrices.
To build the Hamiltonian as an MPO, do I use spin-1?

Moreover, in order to create a Hamiltonian that looks like


how do you define the MPO

Here,

Hello and welcome to the community! :wave: You have posted in the category “General usage”, but your question assumes highly specific knowledge of a particular problem domain, something the general Julia user may not have. Please consider placing your post in a suitable topic, and provide more context to your question for those not intimately familiar with your problem domain.

Are you using any particular library (e.g. QuantumOptics.jl) or are you asking more generally how to set this up with the basic linear algebra capabilities that come with julia? Could you share what you have currently tried?

No I am not using any library. I am just defining single-atom operators, for instance, ITensors.op(::OpName"See", ::SiteType"S=1") =
[0 0 0
0 1 0
0 0 0] and then using that to construct the Hamiltonian. For example, for the first term, I write os1 = OpSum()
for i=1:N
os1 += -1im*γ_prime/2, “See”, i
end

It seems you are using the ITensor.jl library. This is a pretty great library, but it is not something that is in base Julia, it is one of many packages implemented in Julia that one needs to install in additional the the language itself. I assume you have already taken care of the installation of the base language and of this library.

Please check out this post for some pointers on how to make it easier for others to answer your question: Please read: make it easier to help you

One thing that would help is to format your code so that it is easy to read for others (using the backtick markdown notation as described in that post).

If I am getting your question correctly, you already can build various states and operators, but you are asking what are following best practices? Or are you stuck and do not really know yet how to start constructing these objects? Could post the complete code of what you have tried and explain why you are not satisfied with it or what is missing in it?

1 Like