Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

A Approximating a QF with finite-dimensional Hilbert space

  1. Jul 14, 2016 #1

    hilbert2

    User Avatar
    Science Advisor
    Gold Member

    Is it possible to approximately calculate the dynamics of a "phi-fourth" interacting Klein-Gordon field by using a
    finite dimensional Hilbert state space where the possible values of momentum are limited to a discrete set

    ##-p_{max},-\frac{N-1}{N}p_{max},-\frac{N-2}{N}p_{max},..., -\frac{2}{N}p_{max}, -\frac{1}{N}p_{max}, 0 ,\frac{1}{N}p_{max}, \frac{2}{N}p_{max}, ..., \frac{N-2}{N}p_{max}, \frac{N-1}{N}p_{max} , p_{max}##

    and each momentum state can be excited at most M times from the ground (vacuum) state? The energy eigenstates could then be solved from a finite-dimensional matrix eigenvalue problem and I could calculate the probabilities of particles with different momenta being spontaneously created from the vacuum of the noninteracting Klein-Gordon field (which of course isn't the real ground state of the system anymore once the phi-fourth interaction is added).
     
  2. jcsd
  3. Jul 14, 2016 #2

    jambaugh

    User Avatar
    Science Advisor
    Gold Member

    I have been working on something related to this off and on since my thesis. I have a framework involving deformed BE statistics yielding a finite dim Fock space. I have not yet constructed a dynamical model. Interestingly the Bosonic vacuum is relativized which gives me hope of incorporating Unruh effect in a relativistic theory.
     
  4. Jul 14, 2016 #3

    hilbert2

    User Avatar
    Science Advisor
    Gold Member

    Nice to see that someone else is thinking about the same problem.

    A finite-dimensional QFT model could possibly be used as a pedagogical tool to explain QFT to someone who's only done regular nonrelativistic QM before. It would be easy to write a computer program that plots the time dependence of the expectation values of particle number, total squared momentum, and other quantities, given some initial state vector. That would be similar to how the two-state system with a small off-diagonal perturbation in the Hamiltonian matrix is used to demonstrate quantum dynamics to undergraduates.
     
  5. Jul 14, 2016 #4

    A. Neumaier

    User Avatar
    Science Advisor
    2016 Award

    More profitable is to discretize space by considering only a finite number of points. To have a meaningful notion of momentum, one usually chooses a periodic lattice as the set of points. This is what is actually done in lattice gauge theory!
     
  6. Jul 14, 2016 #5

    hilbert2

    User Avatar
    Science Advisor
    Gold Member

    Yeah, that would probably lead to possible values of momenta being limited, too. Obviously the wavelength corresponding to some momentum can't be shorter than the spacing between the lattice points...

    By the way, is this the correct formula for the phi-fourth interaction term when written in terms of creation and annihilation operators:

    _{3}&space;+&space;p_{4})x}&space;a_{p_{1}}&space;a_{p_{2}}&space;a_{p_{3}}&space;a_{p_{4}}.gif
    gif.gif
    gif.gif
    gif.gif
    gif.gif
    gif.gif

    ?

    Are there any problems with the convergence of those integrals, unless the integration contours are somehow displaced in complex plane? Discretizing the state space of the system would probably solve that problem, too.
     
  7. Jul 14, 2016 #6

    jambaugh

    User Avatar
    Science Advisor
    Gold Member

    The 900lb gorilla in the room is of course the question of unitarity. We cannot represent the non-compact relativity group of SR unitarily in a finite dimensional setting.
    My objection to this approach (except within a numerical method or the described application of an effective field theory) is that I do not recognize space or space-time as a physical object, it is parametric rather than observable in nature (or so I believe). Thus to carry out such a scheme consistently at a fundamental level you should discretize \emph{all} parameters, i.e. switch from Lie groups to finite groups of Lie type. (I see Born duality is morphing in the general context into the algebraic duality between Lie group parameters and their generators which in the unitary QM become {i times} hermitian observables.)
    But then by discretizing parameters you're really developing a whole new type of physical theory beyond quantum mechanics even. That and you lose manifest covariance.

    If not this then you're talking about a non-fundamental theory and pushing certain critical issues under the rug rather than dealing with them. This I think is the virtue of seeking a finite dimensional theory. We sweep issues down the infinite rug rather than resolving them and seeing/testing the physical implications of various resolutions. Renormalizing our regularized infinite dimensional theories is a kludge ultimately and that's why it ultimately fails when attempted for gravitation. In a gravitational theory there are too many variables because we reify too far (those pesky spatial or space-time points one wants to quantize).

    My line of thinking is a Gupta-Bleuler type quantization where the indefinite part of the pseudo-hilbert space of a finite dimensional representation is factored out via gauge constraint. In my scheme this is in part the fixing of a vacuum (plus a space-time origin and an inertial frame).

    Of course my goals and hence heuristic of what is of value may differ from yours and the OP's so take my opinions in that context. And also of course I don't have an actual physical theory (yet) to put my money where my mouth is s.t.s. so there is that to temper my critique.
     
  8. Jul 14, 2016 #7

    A. Neumaier

    User Avatar
    Science Advisor
    2016 Award

    You do not need to recognize the finite approximation to space as physical, either. Nevertheless, we cannot do physics without the notions of space and time. You cannot even plan a holiday trip without it. For that you need to be convinced that the points on a map or the pictures shown on TV point to real objects in real space.
     
  9. Jul 14, 2016 #8

    jambaugh

    User Avatar
    Science Advisor
    Gold Member

    I agree. Approximating? No problem. And yes we cannot do physics without the notion of space-time but that notion should IMNSHO be parametric. The reality behind the positions on a map is physical objects, bits of dirt and rock. Likewise with effective field theory the "points" are defined by the atoms of the lattice in the crystalline structure one is describing. It is how we compare the physical objects by moving them (active transformations) or moving the observer (passive transformations) that gives meaning to the transformation groups and thence to their parameters. We can't do physics without angles or boost parameters either but I don't objectify the angle, I understand it as a rotation parameter and rotation as an action I may do to the physical objects.

    Why and where I see this as important is in the big bugaboo of quantum gravitation. I see many people trying to "quantize space-time" which I see as moving in the wrong direction. String/brane theory even more so by building up a big mess-o-substructure which is fundamentally unobservable. It's epicycles all over again.

    Putting my proselytizing aside though, you're quite correct -I'm sure- as far as the practical answer to the OP's question is concerned.
     
  10. Jul 14, 2016 #9

    hilbert2

    User Avatar
    Science Advisor
    Gold Member

    Here's an old article from the 1980s, where the authors seem to be doing exactly what I was thinking about:

    http://www.sciencedirect.com/science/article/pii/0370269385900437
    However, the full text isn't available with my univ. library account, and I'm not sure whether a scanned pdf form of this paper exists at all...
     
  11. Jul 14, 2016 #10

    jambaugh

    User Avatar
    Science Advisor
    Gold Member

    Check with your university library they should be able to get you a copy for just the copy costs as that's a mainstream journal (in fact *THE* US physics journal) and IAm sure your state's university system has a subscription.
     
  12. Jul 14, 2016 #11

    hilbert2

    User Avatar
    Science Advisor
    Gold Member

  13. Jul 15, 2016 #12

    A. Neumaier

    User Avatar
    Science Advisor
    2016 Award

    But scattering is only the transition between the times $\pm\infty$, not dynamics, which your original post was asking for.
     
  14. Jul 15, 2016 #13
    hilbert2,

    You can check arXiv:1304.7237 and other papers by the same authors. They are doing QFT in the Fock space with discretized momentum, as you suggested.

    Eugene.
     
  15. Jul 15, 2016 #14

    hilbert2

    User Avatar
    Science Advisor
    Gold Member

    Thanks, I'll take a look.
     
  16. Jul 19, 2016 #15

    hilbert2

    User Avatar
    Science Advisor
    Gold Member

    I wrote a Mathematica code to calculate the time dependence of states of a simple system where a massless Klein-Gordon field is constrained to have only modes corresponding to momenta ##p_1 = -1##, ##p_2 = 0##, ##p_3 = 1##. (the momenta are in natural units) Each mode is possible to be excited at most 3 times. Therefore the hilbert space of the system is ##3^3 = 27## - dimensional.

    To the noninteracting hamiltonian ##H_0 = a_{p1}^\dagger a_{p1} + a_{p3}^\dagger a_{p3}## I add the ##\phi^4## interaction that consists of terms like ##a_{p1}a_{p2}^\dagger a_{p3} a_{p2} ##. (I made a C++ program that automatically writes the Mathematica code for all possible momentum-conserving terms like that)

    Code (Text):
    Id = Table[KroneckerDelta[i, j], {i, 1, 3}, {j, 1, 3}]  (* 3X3 identity matrix *)

    a0d = Table[KroneckerDelta[i - 1, j] Sqrt[i - 1], {i, 1, 3}, {j, 1, 3}]  (* creation operator for a momentum mode *)

    a0 = Transpose[a0d]   (* annihilation operator *)

    ap1d = KroneckerProduct(a0d,Id,Id)  (* creation operator for momentum p=-1 *)
    ap2d = KroneckerProduct(Id,a0d,Id)  (* creation operator for momentum p=0 *)
    ap3d = KroneckerProduct(Id,Id,a0d)  (* creation operator for momentum p=+1 *)

    ap1 = KroneckerProduct(a0,Id,Id)  (* annihilation operator for momentum p=-1 *)
    ap2 = KroneckerProduct(Id,a0,Id)  (* annihilation operator for momentum p=0 *)
    ap3 = KroneckerProduct(Id,Id,a0)  (* annihilation operator for momentum p=+1 *)

    vacuum = Table[KroneckerDelta[1,n],{n,1,27}]   (* vacuum state vector of the system *)

    H0 = ap1d.ap1 + ap3d.ap3   (* Noninteracting Klein-Gordon Hamiltonian *)

    H = H0 + 0.1(ap1d.ap1d.ap3d.ap3d + ap1d.ap1d.ap3d.ap3 + ap1d.ap1d.ap3.ap3d
    + ap1d.ap1d.ap3.ap3 + ap1d.ap1.ap3d.ap3d + ap1d.ap1.ap3d.ap3
    + ap1d.ap1.ap3.ap3d + ap1d.ap1.ap3.ap3 + ap1.ap1d.ap3d.ap3d
    + ap1.ap1d.ap3d.ap3 + ap1.ap1d.ap3.ap3d + ap1.ap1d.ap3.ap3
    + ap1.ap1.ap3d.ap3d + ap1.ap1.ap3d.ap3 + ap1.ap1.ap3.ap3d
    + ap1.ap1.ap3.ap3 + ap1d.ap2d.ap2d.ap3d + ap1d.ap2d.ap2d.ap3
    + ap1d.ap2d.ap2.ap3d + ap1d.ap2d.ap2.ap3 + ap1d.ap2.ap2d.ap3d
    + ap1d.ap2.ap2d.ap3 + ap1d.ap2.ap2.ap3d + ap1d.ap2.ap2.ap3
    + ap1.ap2d.ap2d.ap3d + ap1.ap2d.ap2d.ap3 + ap1.ap2d.ap2.ap3d
    + ap1.ap2d.ap2.ap3 + ap1.ap2.ap2d.ap3d + ap1.ap2.ap2d.ap3
    + ap1.ap2.ap2.ap3d + ap1.ap2.ap2.ap3 + ap1d.ap2d.ap3d.ap2d
    + ap1d.ap2d.ap3d.ap2 + ap1d.ap2d.ap3.ap2d + ap1d.ap2d.ap3.ap2
    + ap1d.ap2.ap3d.ap2d + ap1d.ap2.ap3d.ap2 + ap1d.ap2.ap3.ap2d
    + ap1d.ap2.ap3.ap2 + ap1.ap2d.ap3d.ap2d + ap1.ap2d.ap3d.ap2
    + ap1.ap2d.ap3.ap2d + ap1.ap2d.ap3.ap2 + ap1.ap2.ap3d.ap2d
    + ap1.ap2.ap3d.ap2 + ap1.ap2.ap3.ap2d + ap1.ap2.ap3.ap2
    + ap1d.ap3d.ap1d.ap3d + ap1d.ap3d.ap1d.ap3 + ap1d.ap3d.ap1.ap3d
    + ap1d.ap3d.ap1.ap3 + ap1d.ap3.ap1d.ap3d + ap1d.ap3.ap1d.ap3
    + ap1d.ap3.ap1.ap3d + ap1d.ap3.ap1.ap3 + ap1.ap3d.ap1d.ap3d
    + ap1.ap3d.ap1d.ap3 + ap1.ap3d.ap1.ap3d + ap1.ap3d.ap1.ap3
    + ap1.ap3.ap1d.ap3d + ap1.ap3.ap1d.ap3 + ap1.ap3.ap1.ap3d
    + ap1.ap3.ap1.ap3 + ap1d.ap3d.ap2d.ap2d + ap1d.ap3d.ap2d.ap2
    + ap1d.ap3d.ap2.ap2d + ap1d.ap3d.ap2.ap2 + ap1d.ap3.ap2d.ap2d
    + ap1d.ap3.ap2d.ap2 + ap1d.ap3.ap2.ap2d + ap1d.ap3.ap2.ap2
    + ap1.ap3d.ap2d.ap2d + ap1.ap3d.ap2d.ap2 + ap1.ap3d.ap2.ap2d
    + ap1.ap3d.ap2.ap2 + ap1.ap3.ap2d.ap2d + ap1.ap3.ap2d.ap2
    + ap1.ap3.ap2.ap2d + ap1.ap3.ap2.ap2 + ap1d.ap3d.ap3d.ap1d
    + ap1d.ap3d.ap3d.ap1 + ap1d.ap3d.ap3.ap1d + ap1d.ap3d.ap3.ap1
    + ap1d.ap3.ap3d.ap1d + ap1d.ap3.ap3d.ap1 + ap1d.ap3.ap3.ap1d
    + ap1d.ap3.ap3.ap1 + ap1.ap3d.ap3d.ap1d + ap1.ap3d.ap3d.ap1
    + ap1.ap3d.ap3.ap1d + ap1.ap3d.ap3.ap1 + ap1.ap3.ap3d.ap1d
    + ap1.ap3.ap3d.ap1 + ap1.ap3.ap3.ap1d + ap1.ap3.ap3.ap1
    + ap2d.ap1d.ap2d.ap3d + ap2d.ap1d.ap2d.ap3 + ap2d.ap1d.ap2.ap3d
    + ap2d.ap1d.ap2.ap3 + ap2d.ap1.ap2d.ap3d + ap2d.ap1.ap2d.ap3
    + ap2d.ap1.ap2.ap3d + ap2d.ap1.ap2.ap3 + ap2.ap1d.ap2d.ap3d
    + ap2.ap1d.ap2d.ap3 + ap2.ap1d.ap2.ap3d + ap2.ap1d.ap2.ap3
    + ap2.ap1.ap2d.ap3d + ap2.ap1.ap2d.ap3 + ap2.ap1.ap2.ap3d
    + ap2.ap1.ap2.ap3 + ap2d.ap1d.ap3d.ap2d + ap2d.ap1d.ap3d.ap2
    + ap2d.ap1d.ap3.ap2d + ap2d.ap1d.ap3.ap2 + ap2d.ap1.ap3d.ap2d
    + ap2d.ap1.ap3d.ap2 + ap2d.ap1.ap3.ap2d + ap2d.ap1.ap3.ap2
    + ap2.ap1d.ap3d.ap2d + ap2.ap1d.ap3d.ap2 + ap2.ap1d.ap3.ap2d
    + ap2.ap1d.ap3.ap2 + ap2.ap1.ap3d.ap2d + ap2.ap1.ap3d.ap2
    + ap2.ap1.ap3.ap2d + ap2.ap1.ap3.ap2 + ap2d.ap2d.ap1d.ap3d
    + ap2d.ap2d.ap1d.ap3 + ap2d.ap2d.ap1.ap3d + ap2d.ap2d.ap1.ap3
    + ap2d.ap2.ap1d.ap3d + ap2d.ap2.ap1d.ap3 + ap2d.ap2.ap1.ap3d
    + ap2d.ap2.ap1.ap3 + ap2.ap2d.ap1d.ap3d + ap2.ap2d.ap1d.ap3
    + ap2.ap2d.ap1.ap3d + ap2.ap2d.ap1.ap3 + ap2.ap2.ap1d.ap3d
    + ap2.ap2.ap1d.ap3 + ap2.ap2.ap1.ap3d + ap2.ap2.ap1.ap3
    + ap2d.ap2d.ap2d.ap2d + ap2d.ap2d.ap2d.ap2 + ap2d.ap2d.ap2.ap2d
    + ap2d.ap2d.ap2.ap2 + ap2d.ap2.ap2d.ap2d + ap2d.ap2.ap2d.ap2
    + ap2d.ap2.ap2.ap2d + ap2d.ap2.ap2.ap2 + ap2.ap2d.ap2d.ap2d
    + ap2.ap2d.ap2d.ap2 + ap2.ap2d.ap2.ap2d + ap2.ap2d.ap2.ap2
    + ap2.ap2.ap2d.ap2d + ap2.ap2.ap2d.ap2 + ap2.ap2.ap2.ap2d
    + ap2.ap2.ap2.ap2 + ap2d.ap2d.ap3d.ap1d + ap2d.ap2d.ap3d.ap1
    + ap2d.ap2d.ap3.ap1d + ap2d.ap2d.ap3.ap1 + ap2d.ap2.ap3d.ap1d
    + ap2d.ap2.ap3d.ap1 + ap2d.ap2.ap3.ap1d + ap2d.ap2.ap3.ap1
    + ap2.ap2d.ap3d.ap1d + ap2.ap2d.ap3d.ap1 + ap2.ap2d.ap3.ap1d
    + ap2.ap2d.ap3.ap1 + ap2.ap2.ap3d.ap1d + ap2.ap2.ap3d.ap1
    + ap2.ap2.ap3.ap1d + ap2.ap2.ap3.ap1 + ap2d.ap3d.ap1d.ap2d
    + ap2d.ap3d.ap1d.ap2 + ap2d.ap3d.ap1.ap2d + ap2d.ap3d.ap1.ap2
    + ap2d.ap3.ap1d.ap2d + ap2d.ap3.ap1d.ap2 + ap2d.ap3.ap1.ap2d
    + ap2d.ap3.ap1.ap2 + ap2.ap3d.ap1d.ap2d + ap2.ap3d.ap1d.ap2
    + ap2.ap3d.ap1.ap2d + ap2.ap3d.ap1.ap2 + ap2.ap3.ap1d.ap2d
    + ap2.ap3.ap1d.ap2 + ap2.ap3.ap1.ap2d + ap2.ap3.ap1.ap2
    + ap2d.ap3d.ap2d.ap1d + ap2d.ap3d.ap2d.ap1 + ap2d.ap3d.ap2.ap1d
    + ap2d.ap3d.ap2.ap1 + ap2d.ap3.ap2d.ap1d + ap2d.ap3.ap2d.ap1
    + ap2d.ap3.ap2.ap1d + ap2d.ap3.ap2.ap1 + ap2.ap3d.ap2d.ap1d
    + ap2.ap3d.ap2d.ap1 + ap2.ap3d.ap2.ap1d + ap2.ap3d.ap2.ap1
    + ap2.ap3.ap2d.ap1d + ap2.ap3.ap2d.ap1 + ap2.ap3.ap2.ap1d
    + ap2.ap3.ap2.ap1 + ap3d.ap1d.ap1d.ap3d + ap3d.ap1d.ap1d.ap3
    + ap3d.ap1d.ap1.ap3d + ap3d.ap1d.ap1.ap3 + ap3d.ap1.ap1d.ap3d
    + ap3d.ap1.ap1d.ap3 + ap3d.ap1.ap1.ap3d + ap3d.ap1.ap1.ap3
    + ap3.ap1d.ap1d.ap3d + ap3.ap1d.ap1d.ap3 + ap3.ap1d.ap1.ap3d
    + ap3.ap1d.ap1.ap3 + ap3.ap1.ap1d.ap3d + ap3.ap1.ap1d.ap3
    + ap3.ap1.ap1.ap3d + ap3.ap1.ap1.ap3 + ap3d.ap1d.ap2d.ap2d
    + ap3d.ap1d.ap2d.ap2 + ap3d.ap1d.ap2.ap2d + ap3d.ap1d.ap2.ap2
    + ap3d.ap1.ap2d.ap2d + ap3d.ap1.ap2d.ap2 + ap3d.ap1.ap2.ap2d
    + ap3d.ap1.ap2.ap2 + ap3.ap1d.ap2d.ap2d + ap3.ap1d.ap2d.ap2
    + ap3.ap1d.ap2.ap2d + ap3.ap1d.ap2.ap2 + ap3.ap1.ap2d.ap2d
    + ap3.ap1.ap2d.ap2 + ap3.ap1.ap2.ap2d + ap3.ap1.ap2.ap2
    + ap3d.ap1d.ap3d.ap1d + ap3d.ap1d.ap3d.ap1 + ap3d.ap1d.ap3.ap1d
    + ap3d.ap1d.ap3.ap1 + ap3d.ap1.ap3d.ap1d + ap3d.ap1.ap3d.ap1
    + ap3d.ap1.ap3.ap1d + ap3d.ap1.ap3.ap1 + ap3.ap1d.ap3d.ap1d
    + ap3.ap1d.ap3d.ap1 + ap3.ap1d.ap3.ap1d + ap3.ap1d.ap3.ap1
    + ap3.ap1.ap3d.ap1d + ap3.ap1.ap3d.ap1 + ap3.ap1.ap3.ap1d
    + ap3.ap1.ap3.ap1 + ap3d.ap2d.ap1d.ap2d + ap3d.ap2d.ap1d.ap2
    + ap3d.ap2d.ap1.ap2d + ap3d.ap2d.ap1.ap2 + ap3d.ap2.ap1d.ap2d
    + ap3d.ap2.ap1d.ap2 + ap3d.ap2.ap1.ap2d + ap3d.ap2.ap1.ap2
    + ap3.ap2d.ap1d.ap2d + ap3.ap2d.ap1d.ap2 + ap3.ap2d.ap1.ap2d
    + ap3.ap2d.ap1.ap2 + ap3.ap2.ap1d.ap2d + ap3.ap2.ap1d.ap2
    + ap3.ap2.ap1.ap2d + ap3.ap2.ap1.ap2 + ap3d.ap2d.ap2d.ap1d
    + ap3d.ap2d.ap2d.ap1 + ap3d.ap2d.ap2.ap1d + ap3d.ap2d.ap2.ap1
    + ap3d.ap2.ap2d.ap1d + ap3d.ap2.ap2d.ap1 + ap3d.ap2.ap2.ap1d
    + ap3d.ap2.ap2.ap1 + ap3.ap2d.ap2d.ap1d + ap3.ap2d.ap2d.ap1
    + ap3.ap2d.ap2.ap1d + ap3.ap2d.ap2.ap1 + ap3.ap2.ap2d.ap1d
    + ap3.ap2.ap2d.ap1 + ap3.ap2.ap2.ap1d + ap3.ap2.ap2.ap1
    + ap3d.ap3d.ap1d.ap1d + ap3d.ap3d.ap1d.ap1 + ap3d.ap3d.ap1.ap1d
    + ap3d.ap3d.ap1.ap1 + ap3d.ap3.ap1d.ap1d + ap3d.ap3.ap1d.ap1
    + ap3d.ap3.ap1.ap1d + ap3d.ap3.ap1.ap1 + ap3.ap3d.ap1d.ap1d
    + ap3.ap3d.ap1d.ap1 + ap3.ap3d.ap1.ap1d + ap3.ap3d.ap1.ap1
    + ap3.ap3.ap1d.ap1d + ap3.ap3.ap1d.ap1 + ap3.ap3.ap1.ap1d
    + ap3.ap3.ap1.ap1)   (* Full Hamiltonian with phi-fourth interaction *)
    Then I use these definitions to calculate the quantum autocorrelation function of the vacuum state ##\left|0\right>## : ##C(t)=\left<0\right|U(t)\left|0\right>##.

    Here ##U(t)## is the time evolution operator of the system.

    Code (Text):
    state = Table[Abs[vacuum.MatrixExp[-I*t*H/50].vacuum]^2, {t, 0, 250}]
    ListPlot[state, PlotRange -> {0., 1}]
    The plot of the autocorrelation function looks like this:

    314fiht.jpg

    This plot looks like it is some kind of complicated function that has many sine and cosine components of different frequencies... I was expecting something simpler.
     
    Last edited: Jul 19, 2016
  17. Jul 19, 2016 #16
    Your model is very approximate, so, in my opinion, the first thing would be trying to establish how robust are your results. Try to change parameters of the model (basis size, number of excitations, etc.) to see if you can reach convergence with respect to these parameters. Your results can be deemed reliable only if they converged.

    Eugene.
     
  18. Jul 19, 2016 #17

    hilbert2

    User Avatar
    Science Advisor
    Gold Member

    To test the effect of increasing the number of momenta and excitations, I'll need to write this as a C++ code and use a supercomputer meant for scientific computation (I have access to one). The main thing that struck me as interesting here is that this autocorrelation function has no simple periodicity and it has features that look similar to random noise. I should probably try to find an analytical formula for the frequency spectrum of the fourier components of that function.
     
  19. Jul 20, 2016 #18

    A. Neumaier

    User Avatar
    Science Advisor
    2016 Award

    There are no such features. You simply get a superposition of 27 periodic functions with appropriate frequencies that you could find by solving the eigenvalue problem for your perturbed Hamiltonian.
     
  20. Jul 20, 2016 #19

    hilbert2

    User Avatar
    Science Advisor
    Gold Member

    Yes, there is no mathematical way to generate genuinely "random" noise, anyway. All random number algorithms generate only pseudorandom numbers. What I'm saying is that the distribution of fourier frequencies and amplitudes in those autocorrelation functions seems to be similar to that in fractal noise functions such as this in the image below:

    0fd97fc7ab7ac5a7670935f1695d2a0c614e5252.png

    For instance, if I use mathematica to generate a random sine series with frequencies uniformly distributed on the interval [0,10] and amplitudes distributed on [0,1]:

    Code (Text):
    f[x_] = Sum[RandomReal[{0, 1}] Sin[RandomReal[{0, 10}] x], {n, 0, 10}]
    Plot[f[x], {x, 0, 10}]
    I get a plot like this:

    167jrb4.jpg

    which has an appearance completely different from either that vacuum state autocorrelation function or the perlin noise function.
     
  21. Jul 21, 2016 #20

    hilbert2

    User Avatar
    Science Advisor
    Gold Member

    I made some more plots of the absolute squares of vacuum autocorrelation function ##|C(t)|^2 = |<0|e^{-iHt}|0>|^2## and
    the expectation value of the particle number operator ##<N>(t)=<0|e^{iHt}Ne^{-iHt}|0>## for different numbers of momentum
    modes and excitations available for each mode. All the plots are for the time interval ##0<t<10##.

    3 modes, 3 excitations (##p_1 = -1##, ##p_2 = 0##, ##p_3 = +1##):
    Mathematica code:
    Code (Text):
    Id = SparseArray[Table[KroneckerDelta[i, j], {i, 1, 3}, {j, 1, 3}]]  (* 3X3 identity matrix *)

    a0d = SparseArray[Table[KroneckerDelta[i - 1, j] Sqrt[i - 1], {i, 1, 3}, {j, 1, 3}]]  (* creation operator for a momentum mode *)

    a0 = Transpose[a0d]   (* annihilation operator *)

    ap1d = KroneckerProduct[a0d,Id,Id]  (* creation operator for momentum p=-1 *)
    ap2d = KroneckerProduct[Id,a0d,Id]  (* creation operator for momentum p=0 *)
    ap3d = KroneckerProduct[Id,Id,a0d]  (* creation operator for momentum p=+1 *)

    ap1 = KroneckerProduct[a0,Id,Id]  (* annihilation operator for momentum p=-1 *)
    ap2 = KroneckerProduct[Id,a0,Id]  (* annihilation operator for momentum p=0 *)
    ap3 = KroneckerProduct[Id,Id,a0]  (* annihilation operator for momentum p=+1 *)

    vacuum = Table[KroneckerDelta[1,n],{n,1,27}]   (* vacuum state vector of the system *)

    H0 = ap1d.ap1 + ap3d.ap3   (* Noninteracting Klein-Gordon Hamiltonian *)

    H = H0 + 0.1(ap1d.ap1d.ap3d.ap3d + ap1d.ap1d.ap3d.ap3 + ap1d.ap1d.ap3.ap3d
    + ap1d.ap1d.ap3.ap3 + ap1d.ap1.ap3d.ap3d + ap1d.ap1.ap3d.ap3
    + ap1d.ap1.ap3.ap3d + ap1d.ap1.ap3.ap3 + ap1.ap1d.ap3d.ap3d
    + ap1.ap1d.ap3d.ap3 + ap1.ap1d.ap3.ap3d + ap1.ap1d.ap3.ap3
    + ap1.ap1.ap3d.ap3d + ap1.ap1.ap3d.ap3 + ap1.ap1.ap3.ap3d
    + ap1.ap1.ap3.ap3 + ap1d.ap2d.ap2d.ap3d + ap1d.ap2d.ap2d.ap3
    + ap1d.ap2d.ap2.ap3d + ap1d.ap2d.ap2.ap3 + ap1d.ap2.ap2d.ap3d
    + ap1d.ap2.ap2d.ap3 + ap1d.ap2.ap2.ap3d + ap1d.ap2.ap2.ap3
    + ap1.ap2d.ap2d.ap3d + ap1.ap2d.ap2d.ap3 + ap1.ap2d.ap2.ap3d
    + ap1.ap2d.ap2.ap3 + ap1.ap2.ap2d.ap3d + ap1.ap2.ap2d.ap3
    + ap1.ap2.ap2.ap3d + ap1.ap2.ap2.ap3 + ap1d.ap2d.ap3d.ap2d
    + ap1d.ap2d.ap3d.ap2 + ap1d.ap2d.ap3.ap2d + ap1d.ap2d.ap3.ap2
    + ap1d.ap2.ap3d.ap2d + ap1d.ap2.ap3d.ap2 + ap1d.ap2.ap3.ap2d
    + ap1d.ap2.ap3.ap2 + ap1.ap2d.ap3d.ap2d + ap1.ap2d.ap3d.ap2
    + ap1.ap2d.ap3.ap2d + ap1.ap2d.ap3.ap2 + ap1.ap2.ap3d.ap2d
    + ap1.ap2.ap3d.ap2 + ap1.ap2.ap3.ap2d + ap1.ap2.ap3.ap2
    + ap1d.ap3d.ap1d.ap3d + ap1d.ap3d.ap1d.ap3 + ap1d.ap3d.ap1.ap3d
    + ap1d.ap3d.ap1.ap3 + ap1d.ap3.ap1d.ap3d + ap1d.ap3.ap1d.ap3
    + ap1d.ap3.ap1.ap3d + ap1d.ap3.ap1.ap3 + ap1.ap3d.ap1d.ap3d
    + ap1.ap3d.ap1d.ap3 + ap1.ap3d.ap1.ap3d + ap1.ap3d.ap1.ap3
    + ap1.ap3.ap1d.ap3d + ap1.ap3.ap1d.ap3 + ap1.ap3.ap1.ap3d
    + ap1.ap3.ap1.ap3 + ap1d.ap3d.ap2d.ap2d + ap1d.ap3d.ap2d.ap2
    + ap1d.ap3d.ap2.ap2d + ap1d.ap3d.ap2.ap2 + ap1d.ap3.ap2d.ap2d
    + ap1d.ap3.ap2d.ap2 + ap1d.ap3.ap2.ap2d + ap1d.ap3.ap2.ap2
    + ap1.ap3d.ap2d.ap2d + ap1.ap3d.ap2d.ap2 + ap1.ap3d.ap2.ap2d
    + ap1.ap3d.ap2.ap2 + ap1.ap3.ap2d.ap2d + ap1.ap3.ap2d.ap2
    + ap1.ap3.ap2.ap2d + ap1.ap3.ap2.ap2 + ap1d.ap3d.ap3d.ap1d
    + ap1d.ap3d.ap3d.ap1 + ap1d.ap3d.ap3.ap1d + ap1d.ap3d.ap3.ap1
    + ap1d.ap3.ap3d.ap1d + ap1d.ap3.ap3d.ap1 + ap1d.ap3.ap3.ap1d
    + ap1d.ap3.ap3.ap1 + ap1.ap3d.ap3d.ap1d + ap1.ap3d.ap3d.ap1
    + ap1.ap3d.ap3.ap1d + ap1.ap3d.ap3.ap1 + ap1.ap3.ap3d.ap1d
    + ap1.ap3.ap3d.ap1 + ap1.ap3.ap3.ap1d + ap1.ap3.ap3.ap1
    + ap2d.ap1d.ap2d.ap3d + ap2d.ap1d.ap2d.ap3 + ap2d.ap1d.ap2.ap3d
    + ap2d.ap1d.ap2.ap3 + ap2d.ap1.ap2d.ap3d + ap2d.ap1.ap2d.ap3
    + ap2d.ap1.ap2.ap3d + ap2d.ap1.ap2.ap3 + ap2.ap1d.ap2d.ap3d
    + ap2.ap1d.ap2d.ap3 + ap2.ap1d.ap2.ap3d + ap2.ap1d.ap2.ap3
    + ap2.ap1.ap2d.ap3d + ap2.ap1.ap2d.ap3 + ap2.ap1.ap2.ap3d
    + ap2.ap1.ap2.ap3 + ap2d.ap1d.ap3d.ap2d + ap2d.ap1d.ap3d.ap2
    + ap2d.ap1d.ap3.ap2d + ap2d.ap1d.ap3.ap2 + ap2d.ap1.ap3d.ap2d
    + ap2d.ap1.ap3d.ap2 + ap2d.ap1.ap3.ap2d + ap2d.ap1.ap3.ap2
    + ap2.ap1d.ap3d.ap2d + ap2.ap1d.ap3d.ap2 + ap2.ap1d.ap3.ap2d
    + ap2.ap1d.ap3.ap2 + ap2.ap1.ap3d.ap2d + ap2.ap1.ap3d.ap2
    + ap2.ap1.ap3.ap2d + ap2.ap1.ap3.ap2 + ap2d.ap2d.ap1d.ap3d
    + ap2d.ap2d.ap1d.ap3 + ap2d.ap2d.ap1.ap3d + ap2d.ap2d.ap1.ap3
    + ap2d.ap2.ap1d.ap3d + ap2d.ap2.ap1d.ap3 + ap2d.ap2.ap1.ap3d
    + ap2d.ap2.ap1.ap3 + ap2.ap2d.ap1d.ap3d + ap2.ap2d.ap1d.ap3
    + ap2.ap2d.ap1.ap3d + ap2.ap2d.ap1.ap3 + ap2.ap2.ap1d.ap3d
    + ap2.ap2.ap1d.ap3 + ap2.ap2.ap1.ap3d + ap2.ap2.ap1.ap3
    + ap2d.ap2d.ap2d.ap2d + ap2d.ap2d.ap2d.ap2 + ap2d.ap2d.ap2.ap2d
    + ap2d.ap2d.ap2.ap2 + ap2d.ap2.ap2d.ap2d + ap2d.ap2.ap2d.ap2
    + ap2d.ap2.ap2.ap2d + ap2d.ap2.ap2.ap2 + ap2.ap2d.ap2d.ap2d
    + ap2.ap2d.ap2d.ap2 + ap2.ap2d.ap2.ap2d + ap2.ap2d.ap2.ap2
    + ap2.ap2.ap2d.ap2d + ap2.ap2.ap2d.ap2 + ap2.ap2.ap2.ap2d
    + ap2.ap2.ap2.ap2 + ap2d.ap2d.ap3d.ap1d + ap2d.ap2d.ap3d.ap1
    + ap2d.ap2d.ap3.ap1d + ap2d.ap2d.ap3.ap1 + ap2d.ap2.ap3d.ap1d
    + ap2d.ap2.ap3d.ap1 + ap2d.ap2.ap3.ap1d + ap2d.ap2.ap3.ap1
    + ap2.ap2d.ap3d.ap1d + ap2.ap2d.ap3d.ap1 + ap2.ap2d.ap3.ap1d
    + ap2.ap2d.ap3.ap1 + ap2.ap2.ap3d.ap1d + ap2.ap2.ap3d.ap1
    + ap2.ap2.ap3.ap1d + ap2.ap2.ap3.ap1 + ap2d.ap3d.ap1d.ap2d
    + ap2d.ap3d.ap1d.ap2 + ap2d.ap3d.ap1.ap2d + ap2d.ap3d.ap1.ap2
    + ap2d.ap3.ap1d.ap2d + ap2d.ap3.ap1d.ap2 + ap2d.ap3.ap1.ap2d
    + ap2d.ap3.ap1.ap2 + ap2.ap3d.ap1d.ap2d + ap2.ap3d.ap1d.ap2
    + ap2.ap3d.ap1.ap2d + ap2.ap3d.ap1.ap2 + ap2.ap3.ap1d.ap2d
    + ap2.ap3.ap1d.ap2 + ap2.ap3.ap1.ap2d + ap2.ap3.ap1.ap2
    + ap2d.ap3d.ap2d.ap1d + ap2d.ap3d.ap2d.ap1 + ap2d.ap3d.ap2.ap1d
    + ap2d.ap3d.ap2.ap1 + ap2d.ap3.ap2d.ap1d + ap2d.ap3.ap2d.ap1
    + ap2d.ap3.ap2.ap1d + ap2d.ap3.ap2.ap1 + ap2.ap3d.ap2d.ap1d
    + ap2.ap3d.ap2d.ap1 + ap2.ap3d.ap2.ap1d + ap2.ap3d.ap2.ap1
    + ap2.ap3.ap2d.ap1d + ap2.ap3.ap2d.ap1 + ap2.ap3.ap2.ap1d
    + ap2.ap3.ap2.ap1 + ap3d.ap1d.ap1d.ap3d + ap3d.ap1d.ap1d.ap3
    + ap3d.ap1d.ap1.ap3d + ap3d.ap1d.ap1.ap3 + ap3d.ap1.ap1d.ap3d
    + ap3d.ap1.ap1d.ap3 + ap3d.ap1.ap1.ap3d + ap3d.ap1.ap1.ap3
    + ap3.ap1d.ap1d.ap3d + ap3.ap1d.ap1d.ap3 + ap3.ap1d.ap1.ap3d
    + ap3.ap1d.ap1.ap3 + ap3.ap1.ap1d.ap3d + ap3.ap1.ap1d.ap3
    + ap3.ap1.ap1.ap3d + ap3.ap1.ap1.ap3 + ap3d.ap1d.ap2d.ap2d
    + ap3d.ap1d.ap2d.ap2 + ap3d.ap1d.ap2.ap2d + ap3d.ap1d.ap2.ap2
    + ap3d.ap1.ap2d.ap2d + ap3d.ap1.ap2d.ap2 + ap3d.ap1.ap2.ap2d
    + ap3d.ap1.ap2.ap2 + ap3.ap1d.ap2d.ap2d + ap3.ap1d.ap2d.ap2
    + ap3.ap1d.ap2.ap2d + ap3.ap1d.ap2.ap2 + ap3.ap1.ap2d.ap2d
    + ap3.ap1.ap2d.ap2 + ap3.ap1.ap2.ap2d + ap3.ap1.ap2.ap2
    + ap3d.ap1d.ap3d.ap1d + ap3d.ap1d.ap3d.ap1 + ap3d.ap1d.ap3.ap1d
    + ap3d.ap1d.ap3.ap1 + ap3d.ap1.ap3d.ap1d + ap3d.ap1.ap3d.ap1
    + ap3d.ap1.ap3.ap1d + ap3d.ap1.ap3.ap1 + ap3.ap1d.ap3d.ap1d
    + ap3.ap1d.ap3d.ap1 + ap3.ap1d.ap3.ap1d + ap3.ap1d.ap3.ap1
    + ap3.ap1.ap3d.ap1d + ap3.ap1.ap3d.ap1 + ap3.ap1.ap3.ap1d
    + ap3.ap1.ap3.ap1 + ap3d.ap2d.ap1d.ap2d + ap3d.ap2d.ap1d.ap2
    + ap3d.ap2d.ap1.ap2d + ap3d.ap2d.ap1.ap2 + ap3d.ap2.ap1d.ap2d
    + ap3d.ap2.ap1d.ap2 + ap3d.ap2.ap1.ap2d + ap3d.ap2.ap1.ap2
    + ap3.ap2d.ap1d.ap2d + ap3.ap2d.ap1d.ap2 + ap3.ap2d.ap1.ap2d
    + ap3.ap2d.ap1.ap2 + ap3.ap2.ap1d.ap2d + ap3.ap2.ap1d.ap2
    + ap3.ap2.ap1.ap2d + ap3.ap2.ap1.ap2 + ap3d.ap2d.ap2d.ap1d
    + ap3d.ap2d.ap2d.ap1 + ap3d.ap2d.ap2.ap1d + ap3d.ap2d.ap2.ap1
    + ap3d.ap2.ap2d.ap1d + ap3d.ap2.ap2d.ap1 + ap3d.ap2.ap2.ap1d
    + ap3d.ap2.ap2.ap1 + ap3.ap2d.ap2d.ap1d + ap3.ap2d.ap2d.ap1
    + ap3.ap2d.ap2.ap1d + ap3.ap2d.ap2.ap1 + ap3.ap2.ap2d.ap1d
    + ap3.ap2.ap2d.ap1 + ap3.ap2.ap2.ap1d + ap3.ap2.ap2.ap1
    + ap3d.ap3d.ap1d.ap1d + ap3d.ap3d.ap1d.ap1 + ap3d.ap3d.ap1.ap1d
    + ap3d.ap3d.ap1.ap1 + ap3d.ap3.ap1d.ap1d + ap3d.ap3.ap1d.ap1
    + ap3d.ap3.ap1.ap1d + ap3d.ap3.ap1.ap1 + ap3.ap3d.ap1d.ap1d
    + ap3.ap3d.ap1d.ap1 + ap3.ap3d.ap1.ap1d + ap3.ap3d.ap1.ap1
    + ap3.ap3.ap1d.ap1d + ap3.ap3.ap1d.ap1 + ap3.ap3.ap1.ap1d
    + ap3.ap3.ap1.ap1)   (* Full Hamiltonian with phi-fourth interaction *)

    ListDensityPlot[H]

    Numo = ap1d.ap1 + ap2d.ap2 + ap3d.ap3

    AutoCorr = Table[{t/200, Abs[vacuum.MatrixExp[-I*t*H/200].vacuum]^2}, {t, 1, 2000}]
    Graphics[Line[AutoCorr], PlotRange -> {{0, 10}, {0, 1}}, Axes -> True]

    NumberOp = Table[{t/200, Re[vacuum.MatrixExp[I*t*H/200].Numo.MatrixExp[-I*t*H/200].vacuum]}, {t, 0, 2000}]
    Graphics[Line[NumberOp], PlotRange -> {{0, 10}, {0, 3}}, Axes -> True]

    Histogram[Eigenvalues[H]]
    Plot of the absolute square of vacuum autocorrelation function:
    dr320.jpg

    Plot of the expectation value of the particle number operator (at t=0 the system is in vacuum state and there are zero particles):
    8ze550.jpg

    Mathematica's density plot of the Hamiltonian matrix (the element (1,1) is in the lower left corner):
    29wvj20.jpg

    Histogram of the eigenvalues of the Hamiltonian matrix:
    why689.jpg

    3 modes, 4 excitations (##p_1 = -1##, ##p_2 = 0##, ##p_3 = +1##):
    Plot of the absolute square of vacuum autocorrelation function:
    lkysj.jpg

    Plot of the expectation value of the particle number operator:
    9kv8xs.jpg

    Mathematica's density plot of the Hamiltonian matrix:
    yjb80.jpg

    Histogram of the eigenvalues of the Hamiltonian matrix:
    24b3kb8.jpg

    3 modes, 5 excitations (##p_1 = -1##, ##p_2 = 0##, ##p_3 = +1##):
    Plot of the absolute square of vacuum autocorrelation function:
    359a8ph.jpg

    Plot of the expectation value of the particle number operator:
    25870d4.jpg

    Mathematica's density plot of the Hamiltonian matrix:
    1221apk.jpg

    Histogram of the eigenvalues of the Hamiltonian matrix:
    rwrmoj.jpg

    4 modes, 3 excitations (##p_1 = -1##, ##p_2 = -1/3##, ##p_3 = +1/3##, ##p_4 = +1##):
    Code (Text):
    Id = SparseArray[Table[KroneckerDelta[i, j], {i, 1, 3}, {j, 1,3}]]  (* 3X3 identity matrix *)

    a0d = SparseArray[Table[KroneckerDelta[i - 1, j] Sqrt[i - 1], {i, 1, 3}, {j, 1, 3}]]  (* creation operator for a momentum mode *)

    a0 = Transpose[a0d]   (* annihilation operator *)

    ap1d = KroneckerProduct[a0d,Id,Id,Id]  (* creation operator for momentum p=-1 *)
    ap2d = KroneckerProduct[Id,a0d,Id,Id]  (* creation operator for momentum p=-1/3 *)
    ap3d = KroneckerProduct[Id,Id,a0d,Id]  (* creation operator for momentum p=+1/3 *)
    ap4d = KroneckerProduct[Id,Id,Id,a0d]  (* creation operator for momentum p=+1 *)

    ap1 = KroneckerProduct[a0,Id,Id,Id]  (* annihilation operator for momentum p=-1 *)
    ap2 = KroneckerProduct[Id,a0,Id,Id]  (* annihilation operator for momentum p=-1/3 *)
    ap3 = KroneckerProduct[Id,Id,a0,Id]  (* annihilation operator for momentum p=+1/3 *)
    ap4 = KroneckerProduct[Id,Id,Id,a0]  (* annihilation operator for momentum p=+1 *)

    vacuum = Table[KroneckerDelta[1,n],{n,1,3^4}]   (* vacuum state vector of the system *)

    H0 = ap1d.ap1 + ap2d.ap2/3 + ap3d.ap3/3 + ap4d.ap4   (* Noninteracting Klein-Gordon Hamiltonian *)

    H = H0 + 0.1(ap1d.ap1d.ap4d.ap4d +ap1d.ap1d.ap4d.ap4 +
    ap1d.ap1d.ap4.ap4d +ap1d.ap1d.ap4.ap4 + ap1d.ap1.ap4d.ap4d +
    ap1d.ap1.ap4d.ap4 + ap1d.ap1.ap4.ap4d +ap1d.ap1.ap4.ap4 +
    ap1.ap1d.ap4d.ap4d +ap1.ap1d.ap4d.ap4 + ap1.ap1d.ap4.ap4d +
    ap1.ap1d.ap4.ap4 + ap1.ap1.ap4d.ap4d +ap1.ap1.ap4d.ap4 +
    ap1.ap1.ap4.ap4d +ap1.ap1.ap4.ap4 + ap1d.ap2d.ap3d.ap4d +
    ap1d.ap2d.ap3d.ap4 + ap1d.ap2d.ap3.ap4d +ap1d.ap2d.ap3.ap4 +
    ap1d.ap2.ap3d.ap4d +ap1d.ap2.ap3d.ap4 + ap1d.ap2.ap3.ap4d +
    ap1d.ap2.ap3.ap4 + ap1.ap2d.ap3d.ap4d +ap1.ap2d.ap3d.ap4 +
    ap1.ap2d.ap3.ap4d +ap1.ap2d.ap3.ap4 + ap1.ap2.ap3d.ap4d +
    ap1.ap2.ap3d.ap4 + ap1.ap2.ap3.ap4d +ap1.ap2.ap3.ap4 +
    ap1d.ap2d.ap4d.ap3d +ap1d.ap2d.ap4d.ap3 + ap1d.ap2d.ap4.ap3d +
    ap1d.ap2d.ap4.ap3 + ap1d.ap2.ap4d.ap3d +ap1d.ap2.ap4d.ap3 +
    ap1d.ap2.ap4.ap3d +ap1d.ap2.ap4.ap3 + ap1.ap2d.ap4d.ap3d +
    ap1.ap2d.ap4d.ap3 + ap1.ap2d.ap4.ap3d +ap1.ap2d.ap4.ap3 +
    ap1.ap2.ap4d.ap3d +ap1.ap2.ap4d.ap3 + ap1.ap2.ap4.ap3d +
    ap1.ap2.ap4.ap3 + ap1d.ap3d.ap2d.ap4d +ap1d.ap3d.ap2d.ap4 +
    ap1d.ap3d.ap2.ap4d +ap1d.ap3d.ap2.ap4 + ap1d.ap3.ap2d.ap4d +
    ap1d.ap3.ap2d.ap4 + ap1d.ap3.ap2.ap4d +ap1d.ap3.ap2.ap4 +
    ap1.ap3d.ap2d.ap4d +ap1.ap3d.ap2d.ap4 + ap1.ap3d.ap2.ap4d +
    ap1.ap3d.ap2.ap4 + ap1.ap3.ap2d.ap4d +ap1.ap3.ap2d.ap4 +
    ap1.ap3.ap2.ap4d +ap1.ap3.ap2.ap4 + ap1d.ap3d.ap3d.ap3d +
    ap1d.ap3d.ap3d.ap3 + ap1d.ap3d.ap3.ap3d +ap1d.ap3d.ap3.ap3 +
    ap1d.ap3.ap3d.ap3d +ap1d.ap3.ap3d.ap3 + ap1d.ap3.ap3.ap3d +
    ap1d.ap3.ap3.ap3 + ap1.ap3d.ap3d.ap3d +ap1.ap3d.ap3d.ap3 +
    ap1.ap3d.ap3.ap3d +ap1.ap3d.ap3.ap3 + ap1.ap3.ap3d.ap3d +
    ap1.ap3.ap3d.ap3 + ap1.ap3.ap3.ap3d +ap1.ap3.ap3.ap3 +
    ap1d.ap3d.ap4d.ap2d +ap1d.ap3d.ap4d.ap2 + ap1d.ap3d.ap4.ap2d +
    ap1d.ap3d.ap4.ap2 + ap1d.ap3.ap4d.ap2d +ap1d.ap3.ap4d.ap2 +
    ap1d.ap3.ap4.ap2d +ap1d.ap3.ap4.ap2 + ap1.ap3d.ap4d.ap2d +
    ap1.ap3d.ap4d.ap2 + ap1.ap3d.ap4.ap2d +ap1.ap3d.ap4.ap2 +
    ap1.ap3.ap4d.ap2d +ap1.ap3.ap4d.ap2 + ap1.ap3.ap4.ap2d +
    ap1.ap3.ap4.ap2 + ap1d.ap4d.ap1d.ap4d +ap1d.ap4d.ap1d.ap4 +
    ap1d.ap4d.ap1.ap4d +ap1d.ap4d.ap1.ap4 + ap1d.ap4.ap1d.ap4d +
    ap1d.ap4.ap1d.ap4 + ap1d.ap4.ap1.ap4d +ap1d.ap4.ap1.ap4 +
    ap1.ap4d.ap1d.ap4d +ap1.ap4d.ap1d.ap4 + ap1.ap4d.ap1.ap4d +
    ap1.ap4d.ap1.ap4 + ap1.ap4.ap1d.ap4d +ap1.ap4.ap1d.ap4 +
    ap1.ap4.ap1.ap4d +ap1.ap4.ap1.ap4 + ap1d.ap4d.ap2d.ap3d +
    ap1d.ap4d.ap2d.ap3 + ap1d.ap4d.ap2.ap3d +ap1d.ap4d.ap2.ap3 +
    ap1d.ap4.ap2d.ap3d +ap1d.ap4.ap2d.ap3 + ap1d.ap4.ap2.ap3d +
    ap1d.ap4.ap2.ap3 + ap1.ap4d.ap2d.ap3d +ap1.ap4d.ap2d.ap3 +
    ap1.ap4d.ap2.ap3d +ap1.ap4d.ap2.ap3 + ap1.ap4.ap2d.ap3d +
    ap1.ap4.ap2d.ap3 + ap1.ap4.ap2.ap3d +ap1.ap4.ap2.ap3 +
    ap1d.ap4d.ap3d.ap2d +ap1d.ap4d.ap3d.ap2 + ap1d.ap4d.ap3.ap2d +
    ap1d.ap4d.ap3.ap2 + ap1d.ap4.ap3d.ap2d +ap1d.ap4.ap3d.ap2 +
    ap1d.ap4.ap3.ap2d +ap1d.ap4.ap3.ap2 + ap1.ap4d.ap3d.ap2d +
    ap1.ap4d.ap3d.ap2 + ap1.ap4d.ap3.ap2d +ap1.ap4d.ap3.ap2 +
    ap1.ap4.ap3d.ap2d +ap1.ap4.ap3d.ap2 + ap1.ap4.ap3.ap2d +
    ap1.ap4.ap3.ap2 + ap1d.ap4d.ap4d.ap1d +ap1d.ap4d.ap4d.ap1 +
    ap1d.ap4d.ap4.ap1d +ap1d.ap4d.ap4.ap1 + ap1d.ap4.ap4d.ap1d +
    ap1d.ap4.ap4d.ap1 + ap1d.ap4.ap4.ap1d +ap1d.ap4.ap4.ap1 +
    ap1.ap4d.ap4d.ap1d +ap1.ap4d.ap4d.ap1 + ap1.ap4d.ap4.ap1d +
    ap1.ap4d.ap4.ap1 + ap1.ap4.ap4d.ap1d +ap1.ap4.ap4d.ap1 +
    ap1.ap4.ap4.ap1d +ap1.ap4.ap4.ap1 + ap2d.ap1d.ap3d.ap4d +
    ap2d.ap1d.ap3d.ap4 + ap2d.ap1d.ap3.ap4d +ap2d.ap1d.ap3.ap4 +
    ap2d.ap1.ap3d.ap4d +ap2d.ap1.ap3d.ap4 + ap2d.ap1.ap3.ap4d +
    ap2d.ap1.ap3.ap4 + ap2.ap1d.ap3d.ap4d +ap2.ap1d.ap3d.ap4 +
    ap2.ap1d.ap3.ap4d +ap2.ap1d.ap3.ap4 + ap2.ap1.ap3d.ap4d +
    ap2.ap1.ap3d.ap4 + ap2.ap1.ap3.ap4d +ap2.ap1.ap3.ap4 +
    ap2d.ap1d.ap4d.ap3d +ap2d.ap1d.ap4d.ap3 + ap2d.ap1d.ap4.ap3d +
    ap2d.ap1d.ap4.ap3 + ap2d.ap1.ap4d.ap3d +ap2d.ap1.ap4d.ap3 +
    ap2d.ap1.ap4.ap3d +ap2d.ap1.ap4.ap3 + ap2.ap1d.ap4d.ap3d +
    ap2.ap1d.ap4d.ap3 + ap2.ap1d.ap4.ap3d +ap2.ap1d.ap4.ap3 +
    ap2.ap1.ap4d.ap3d +ap2.ap1.ap4d.ap3 + ap2.ap1.ap4.ap3d +
    ap2.ap1.ap4.ap3 + ap2d.ap2d.ap2d.ap4d +ap2d.ap2d.ap2d.ap4 +
    ap2d.ap2d.ap2.ap4d +ap2d.ap2d.ap2.ap4 + ap2d.ap2.ap2d.ap4d +
    ap2d.ap2.ap2d.ap4 + ap2d.ap2.ap2.ap4d +ap2d.ap2.ap2.ap4 +
    ap2.ap2d.ap2d.ap4d +ap2.ap2d.ap2d.ap4 + ap2.ap2d.ap2.ap4d +
    ap2.ap2d.ap2.ap4 + ap2.ap2.ap2d.ap4d +ap2.ap2.ap2d.ap4 +
    ap2.ap2.ap2.ap4d +ap2.ap2.ap2.ap4 + ap2d.ap2d.ap3d.ap3d +
    ap2d.ap2d.ap3d.ap3 + ap2d.ap2d.ap3.ap3d +ap2d.ap2d.ap3.ap3 +
    ap2d.ap2.ap3d.ap3d +ap2d.ap2.ap3d.ap3 + ap2d.ap2.ap3.ap3d +
    ap2d.ap2.ap3.ap3 + ap2.ap2d.ap3d.ap3d +ap2.ap2d.ap3d.ap3 +
    ap2.ap2d.ap3.ap3d +ap2.ap2d.ap3.ap3 + ap2.ap2.ap3d.ap3d +
    ap2.ap2.ap3d.ap3 + ap2.ap2.ap3.ap3d +ap2.ap2.ap3.ap3 +
    ap2d.ap2d.ap4d.ap2d +ap2d.ap2d.ap4d.ap2 + ap2d.ap2d.ap4.ap2d +
    ap2d.ap2d.ap4.ap2 + ap2d.ap2.ap4d.ap2d +ap2d.ap2.ap4d.ap2 +
    ap2d.ap2.ap4.ap2d +ap2d.ap2.ap4.ap2 + ap2.ap2d.ap4d.ap2d +
    ap2.ap2d.ap4d.ap2 + ap2.ap2d.ap4.ap2d +ap2.ap2d.ap4.ap2 +
    ap2.ap2.ap4d.ap2d +ap2.ap2.ap4d.ap2 + ap2.ap2.ap4.ap2d +
    ap2.ap2.ap4.ap2 + ap2d.ap3d.ap1d.ap4d +ap2d.ap3d.ap1d.ap4 +
    ap2d.ap3d.ap1.ap4d +ap2d.ap3d.ap1.ap4 + ap2d.ap3.ap1d.ap4d +
    ap2d.ap3.ap1d.ap4 + ap2d.ap3.ap1.ap4d +ap2d.ap3.ap1.ap4 +
    ap2.ap3d.ap1d.ap4d +ap2.ap3d.ap1d.ap4 + ap2.ap3d.ap1.ap4d +
    ap2.ap3d.ap1.ap4 + ap2.ap3.ap1d.ap4d +ap2.ap3.ap1d.ap4 +
    ap2.ap3.ap1.ap4d +ap2.ap3.ap1.ap4 + ap2d.ap3d.ap2d.ap3d +
    ap2d.ap3d.ap2d.ap3 + ap2d.ap3d.ap2.ap3d +ap2d.ap3d.ap2.ap3 +
    ap2d.ap3.ap2d.ap3d +ap2d.ap3.ap2d.ap3 + ap2d.ap3.ap2.ap3d +
    ap2d.ap3.ap2.ap3 + ap2.ap3d.ap2d.ap3d +ap2.ap3d.ap2d.ap3 +
    ap2.ap3d.ap2.ap3d +ap2.ap3d.ap2.ap3 + ap2.ap3.ap2d.ap3d +
    ap2.ap3.ap2d.ap3 + ap2.ap3.ap2.ap3d +ap2.ap3.ap2.ap3 +
    ap2d.ap3d.ap3d.ap2d +ap2d.ap3d.ap3d.ap2 + ap2d.ap3d.ap3.ap2d +
    ap2d.ap3d.ap3.ap2 + ap2d.ap3.ap3d.ap2d +ap2d.ap3.ap3d.ap2 +
    ap2d.ap3.ap3.ap2d +ap2d.ap3.ap3.ap2 + ap2.ap3d.ap3d.ap2d +
    ap2.ap3d.ap3d.ap2 + ap2.ap3d.ap3.ap2d +ap2.ap3d.ap3.ap2 +
    ap2.ap3.ap3d.ap2d +ap2.ap3.ap3d.ap2 + ap2.ap3.ap3.ap2d +
    ap2.ap3.ap3.ap2 + ap2d.ap3d.ap4d.ap1d +ap2d.ap3d.ap4d.ap1 +
    ap2d.ap3d.ap4.ap1d +ap2d.ap3d.ap4.ap1 + ap2d.ap3.ap4d.ap1d +
    ap2d.ap3.ap4d.ap1 + ap2d.ap3.ap4.ap1d +ap2d.ap3.ap4.ap1 +
    ap2.ap3d.ap4d.ap1d +ap2.ap3d.ap4d.ap1 + ap2.ap3d.ap4.ap1d +
    ap2.ap3d.ap4.ap1 + ap2.ap3.ap4d.ap1d +ap2.ap3.ap4d.ap1 +
    ap2.ap3.ap4.ap1d +ap2.ap3.ap4.ap1 + ap2d.ap4d.ap1d.ap3d +
    ap2d.ap4d.ap1d.ap3 + ap2d.ap4d.ap1.ap3d +ap2d.ap4d.ap1.ap3 +
    ap2d.ap4.ap1d.ap3d +ap2d.ap4.ap1d.ap3 + ap2d.ap4.ap1.ap3d +
    ap2d.ap4.ap1.ap3 + ap2.ap4d.ap1d.ap3d +ap2.ap4d.ap1d.ap3 +
    ap2.ap4d.ap1.ap3d +ap2.ap4d.ap1.ap3 + ap2.ap4.ap1d.ap3d +
    ap2.ap4.ap1d.ap3 + ap2.ap4.ap1.ap3d +ap2.ap4.ap1.ap3 +
    ap2d.ap4d.ap2d.ap2d +ap2d.ap4d.ap2d.ap2 + ap2d.ap4d.ap2.ap2d +
    ap2d.ap4d.ap2.ap2 + ap2d.ap4.ap2d.ap2d +ap2d.ap4.ap2d.ap2 +
    ap2d.ap4.ap2.ap2d +ap2d.ap4.ap2.ap2 + ap2.ap4d.ap2d.ap2d +
    ap2.ap4d.ap2d.ap2 + ap2.ap4d.ap2.ap2d +ap2.ap4d.ap2.ap2 +
    ap2.ap4.ap2d.ap2d +ap2.ap4.ap2d.ap2 + ap2.ap4.ap2.ap2d +
    ap2.ap4.ap2.ap2 + ap2d.ap4d.ap3d.ap1d +ap2d.ap4d.ap3d.ap1 +
    ap2d.ap4d.ap3.ap1d +ap2d.ap4d.ap3.ap1 + ap2d.ap4.ap3d.ap1d +
    ap2d.ap4.ap3d.ap1 + ap2d.ap4.ap3.ap1d +ap2d.ap4.ap3.ap1 +
    ap2.ap4d.ap3d.ap1d +ap2.ap4d.ap3d.ap1 + ap2.ap4d.ap3.ap1d +
    ap2.ap4d.ap3.ap1 + ap2.ap4.ap3d.ap1d +ap2.ap4.ap3d.ap1 +
    ap2.ap4.ap3.ap1d +ap2.ap4.ap3.ap1 + ap3d.ap1d.ap2d.ap4d +
    ap3d.ap1d.ap2d.ap4 + ap3d.ap1d.ap2.ap4d +ap3d.ap1d.ap2.ap4 +
    ap3d.ap1.ap2d.ap4d +ap3d.ap1.ap2d.ap4 + ap3d.ap1.ap2.ap4d +
    ap3d.ap1.ap2.ap4 + ap3.ap1d.ap2d.ap4d +ap3.ap1d.ap2d.ap4 +
    ap3.ap1d.ap2.ap4d +ap3.ap1d.ap2.ap4 + ap3.ap1.ap2d.ap4d +
    ap3.ap1.ap2d.ap4 + ap3.ap1.ap2.ap4d +ap3.ap1.ap2.ap4 +
    ap3d.ap1d.ap3d.ap3d +ap3d.ap1d.ap3d.ap3 + ap3d.ap1d.ap3.ap3d +
    ap3d.ap1d.ap3.ap3 + ap3d.ap1.ap3d.ap3d +ap3d.ap1.ap3d.ap3 +
    ap3d.ap1.ap3.ap3d +ap3d.ap1.ap3.ap3 + ap3.ap1d.ap3d.ap3d +
    ap3.ap1d.ap3d.ap3 + ap3.ap1d.ap3.ap3d +ap3.ap1d.ap3.ap3 +
    ap3.ap1.ap3d.ap3d +ap3.ap1.ap3d.ap3 + ap3.ap1.ap3.ap3d +
    ap3.ap1.ap3.ap3 + ap3d.ap1d.ap4d.ap2d +ap3d.ap1d.ap4d.ap2 +
    ap3d.ap1d.ap4.ap2d +ap3d.ap1d.ap4.ap2 + ap3d.ap1.ap4d.ap2d +
    ap3d.ap1.ap4d.ap2 + ap3d.ap1.ap4.ap2d +ap3d.ap1.ap4.ap2 +
    ap3.ap1d.ap4d.ap2d +ap3.ap1d.ap4d.ap2 + ap3.ap1d.ap4.ap2d +
    ap3.ap1d.ap4.ap2 + ap3.ap1.ap4d.ap2d +ap3.ap1.ap4d.ap2 +
    ap3.ap1.ap4.ap2d +ap3.ap1.ap4.ap2 + ap3d.ap2d.ap1d.ap4d +
    ap3d.ap2d.ap1d.ap4 + ap3d.ap2d.ap1.ap4d +ap3d.ap2d.ap1.ap4 +
    ap3d.ap2.ap1d.ap4d +ap3d.ap2.ap1d.ap4 + ap3d.ap2.ap1.ap4d +
    ap3d.ap2.ap1.ap4 + ap3.ap2d.ap1d.ap4d +ap3.ap2d.ap1d.ap4 +
    ap3.ap2d.ap1.ap4d +ap3.ap2d.ap1.ap4 + ap3.ap2.ap1d.ap4d +
    ap3.ap2.ap1d.ap4 + ap3.ap2.ap1.ap4d +ap3.ap2.ap1.ap4 +
    ap3d.ap2d.ap2d.ap3d +ap3d.ap2d.ap2d.ap3 + ap3d.ap2d.ap2.ap3d +
    ap3d.ap2d.ap2.ap3 + ap3d.ap2.ap2d.ap3d +ap3d.ap2.ap2d.ap3 +
    ap3d.ap2.ap2.ap3d +ap3d.ap2.ap2.ap3 + ap3.ap2d.ap2d.ap3d +
    ap3.ap2d.ap2d.ap3 + ap3.ap2d.ap2.ap3d +ap3.ap2d.ap2.ap3 +
    ap3.ap2.ap2d.ap3d +ap3.ap2.ap2d.ap3 + ap3.ap2.ap2.ap3d +
    ap3.ap2.ap2.ap3 + ap3d.ap2d.ap3d.ap2d +ap3d.ap2d.ap3d.ap2 +
    ap3d.ap2d.ap3.ap2d +ap3d.ap2d.ap3.ap2 + ap3d.ap2.ap3d.ap2d +
    ap3d.ap2.ap3d.ap2 + ap3d.ap2.ap3.ap2d +ap3d.ap2.ap3.ap2 +
    ap3.ap2d.ap3d.ap2d +ap3.ap2d.ap3d.ap2 + ap3.ap2d.ap3.ap2d +
    ap3.ap2d.ap3.ap2 + ap3.ap2.ap3d.ap2d +ap3.ap2.ap3d.ap2 +
    ap3.ap2.ap3.ap2d +ap3.ap2.ap3.ap2 + ap3d.ap2d.ap4d.ap1d +
    ap3d.ap2d.ap4d.ap1 + ap3d.ap2d.ap4.ap1d +ap3d.ap2d.ap4.ap1 +
    ap3d.ap2.ap4d.ap1d +ap3d.ap2.ap4d.ap1 + ap3d.ap2.ap4.ap1d +
    ap3d.ap2.ap4.ap1 + ap3.ap2d.ap4d.ap1d +ap3.ap2d.ap4d.ap1 +
    ap3.ap2d.ap4.ap1d +ap3.ap2d.ap4.ap1 + ap3.ap2.ap4d.ap1d +
    ap3.ap2.ap4d.ap1 + ap3.ap2.ap4.ap1d +ap3.ap2.ap4.ap1 +
    ap3d.ap3d.ap1d.ap3d +ap3d.ap3d.ap1d.ap3 + ap3d.ap3d.ap1.ap3d +
    ap3d.ap3d.ap1.ap3 + ap3d.ap3.ap1d.ap3d +ap3d.ap3.ap1d.ap3 +
    ap3d.ap3.ap1.ap3d +ap3d.ap3.ap1.ap3 + ap3.ap3d.ap1d.ap3d +
    ap3.ap3d.ap1d.ap3 + ap3.ap3d.ap1.ap3d +ap3.ap3d.ap1.ap3 +
    ap3.ap3.ap1d.ap3d +ap3.ap3.ap1d.ap3 + ap3.ap3.ap1.ap3d +
    ap3.ap3.ap1.ap3 + ap3d.ap3d.ap2d.ap2d +ap3d.ap3d.ap2d.ap2 +
    ap3d.ap3d.ap2.ap2d +ap3d.ap3d.ap2.ap2 + ap3d.ap3.ap2d.ap2d +
    ap3d.ap3.ap2d.ap2 + ap3d.ap3.ap2.ap2d +ap3d.ap3.ap2.ap2 +
    ap3.ap3d.ap2d.ap2d +ap3.ap3d.ap2d.ap2 + ap3.ap3d.ap2.ap2d +
    ap3.ap3d.ap2.ap2 + ap3.ap3.ap2d.ap2d +ap3.ap3.ap2d.ap2 +
    ap3.ap3.ap2.ap2d +ap3.ap3.ap2.ap2 + ap3d.ap3d.ap3d.ap1d +
    ap3d.ap3d.ap3d.ap1 + ap3d.ap3d.ap3.ap1d +ap3d.ap3d.ap3.ap1 +
    ap3d.ap3.ap3d.ap1d +ap3d.ap3.ap3d.ap1 + ap3d.ap3.ap3.ap1d +
    ap3d.ap3.ap3.ap1 + ap3.ap3d.ap3d.ap1d +ap3.ap3d.ap3d.ap1 +
    ap3.ap3d.ap3.ap1d +ap3.ap3d.ap3.ap1 + ap3.ap3.ap3d.ap1d +
    ap3.ap3.ap3d.ap1 + ap3.ap3.ap3.ap1d +ap3.ap3.ap3.ap1 +
    ap3d.ap4d.ap1d.ap2d +ap3d.ap4d.ap1d.ap2 + ap3d.ap4d.ap1.ap2d +
    ap3d.ap4d.ap1.ap2 + ap3d.ap4.ap1d.ap2d +ap3d.ap4.ap1d.ap2 +
    ap3d.ap4.ap1.ap2d +ap3d.ap4.ap1.ap2 + ap3.ap4d.ap1d.ap2d +
    ap3.ap4d.ap1d.ap2 + ap3.ap4d.ap1.ap2d +ap3.ap4d.ap1.ap2 +
    ap3.ap4.ap1d.ap2d +ap3.ap4.ap1d.ap2 + ap3.ap4.ap1.ap2d +
    ap3.ap4.ap1.ap2 + ap3d.ap4d.ap2d.ap1d +ap3d.ap4d.ap2d.ap1 +
    ap3d.ap4d.ap2.ap1d +ap3d.ap4d.ap2.ap1 + ap3d.ap4.ap2d.ap1d +
    ap3d.ap4.ap2d.ap1 + ap3d.ap4.ap2.ap1d +ap3d.ap4.ap2.ap1 +
    ap3.ap4d.ap2d.ap1d +ap3.ap4d.ap2d.ap1 + ap3.ap4d.ap2.ap1d +
    ap3.ap4d.ap2.ap1 + ap3.ap4.ap2d.ap1d +ap3.ap4.ap2d.ap1 +
    ap3.ap4.ap2.ap1d +ap3.ap4.ap2.ap1 + ap4d.ap1d.ap1d.ap4d +
    ap4d.ap1d.ap1d.ap4 + ap4d.ap1d.ap1.ap4d +ap4d.ap1d.ap1.ap4 +
    ap4d.ap1.ap1d.ap4d +ap4d.ap1.ap1d.ap4 + ap4d.ap1.ap1.ap4d +
    ap4d.ap1.ap1.ap4 + ap4.ap1d.ap1d.ap4d +ap4.ap1d.ap1d.ap4 +
    ap4.ap1d.ap1.ap4d +ap4.ap1d.ap1.ap4 + ap4.ap1.ap1d.ap4d +
    ap4.ap1.ap1d.ap4 + ap4.ap1.ap1.ap4d +ap4.ap1.ap1.ap4 +
    ap4d.ap1d.ap2d.ap3d +ap4d.ap1d.ap2d.ap3 + ap4d.ap1d.ap2.ap3d +
    ap4d.ap1d.ap2.ap3 + ap4d.ap1.ap2d.ap3d +ap4d.ap1.ap2d.ap3 +
    ap4d.ap1.ap2.ap3d +ap4d.ap1.ap2.ap3 + ap4.ap1d.ap2d.ap3d +
    ap4.ap1d.ap2d.ap3 + ap4.ap1d.ap2.ap3d +ap4.ap1d.ap2.ap3 +
    ap4.ap1.ap2d.ap3d +ap4.ap1.ap2d.ap3 + ap4.ap1.ap2.ap3d +
    ap4.ap1.ap2.ap3 + ap4d.ap1d.ap3d.ap2d +ap4d.ap1d.ap3d.ap2 +
    ap4d.ap1d.ap3.ap2d +ap4d.ap1d.ap3.ap2 + ap4d.ap1.ap3d.ap2d +
    ap4d.ap1.ap3d.ap2 + ap4d.ap1.ap3.ap2d +ap4d.ap1.ap3.ap2 +
    ap4.ap1d.ap3d.ap2d +ap4.ap1d.ap3d.ap2 + ap4.ap1d.ap3.ap2d +
    ap4.ap1d.ap3.ap2 + ap4.ap1.ap3d.ap2d +ap4.ap1.ap3d.ap2 +
    ap4.ap1.ap3.ap2d +ap4.ap1.ap3.ap2 + ap4d.ap1d.ap4d.ap1d +
    ap4d.ap1d.ap4d.ap1 + ap4d.ap1d.ap4.ap1d +ap4d.ap1d.ap4.ap1 +
    ap4d.ap1.ap4d.ap1d +ap4d.ap1.ap4d.ap1 + ap4d.ap1.ap4.ap1d +
    ap4d.ap1.ap4.ap1 + ap4.ap1d.ap4d.ap1d +ap4.ap1d.ap4d.ap1 +
    ap4.ap1d.ap4.ap1d +ap4.ap1d.ap4.ap1 + ap4.ap1.ap4d.ap1d +
    ap4.ap1.ap4d.ap1 + ap4.ap1.ap4.ap1d +ap4.ap1.ap4.ap1 +
    ap4d.ap2d.ap1d.ap3d +ap4d.ap2d.ap1d.ap3 + ap4d.ap2d.ap1.ap3d +
    ap4d.ap2d.ap1.ap3 + ap4d.ap2.ap1d.ap3d +ap4d.ap2.ap1d.ap3 +
    ap4d.ap2.ap1.ap3d +ap4d.ap2.ap1.ap3 + ap4.ap2d.ap1d.ap3d +
    ap4.ap2d.ap1d.ap3 + ap4.ap2d.ap1.ap3d +ap4.ap2d.ap1.ap3 +
    ap4.ap2.ap1d.ap3d +ap4.ap2.ap1d.ap3 + ap4.ap2.ap1.ap3d +
    ap4.ap2.ap1.ap3 + ap4d.ap2d.ap2d.ap2d +ap4d.ap2d.ap2d.ap2 +
    ap4d.ap2d.ap2.ap2d +ap4d.ap2d.ap2.ap2 + ap4d.ap2.ap2d.ap2d +
    ap4d.ap2.ap2d.ap2 + ap4d.ap2.ap2.ap2d +ap4d.ap2.ap2.ap2 +
    ap4.ap2d.ap2d.ap2d +ap4.ap2d.ap2d.ap2 + ap4.ap2d.ap2.ap2d +
    ap4.ap2d.ap2.ap2 + ap4.ap2.ap2d.ap2d +ap4.ap2.ap2d.ap2 +
    ap4.ap2.ap2.ap2d +ap4.ap2.ap2.ap2 + ap4d.ap2d.ap3d.ap1d +
    ap4d.ap2d.ap3d.ap1 + ap4d.ap2d.ap3.ap1d +ap4d.ap2d.ap3.ap1 +
    ap4d.ap2.ap3d.ap1d +ap4d.ap2.ap3d.ap1 + ap4d.ap2.ap3.ap1d +
    ap4d.ap2.ap3.ap1 + ap4.ap2d.ap3d.ap1d +ap4.ap2d.ap3d.ap1 +
    ap4.ap2d.ap3.ap1d +ap4.ap2d.ap3.ap1 + ap4.ap2.ap3d.ap1d +
    ap4.ap2.ap3d.ap1 + ap4.ap2.ap3.ap1d +ap4.ap2.ap3.ap1 +
    ap4d.ap3d.ap1d.ap2d +ap4d.ap3d.ap1d.ap2 + ap4d.ap3d.ap1.ap2d +
    ap4d.ap3d.ap1.ap2 + ap4d.ap3.ap1d.ap2d +ap4d.ap3.ap1d.ap2 +
    ap4d.ap3.ap1.ap2d +ap4d.ap3.ap1.ap2 + ap4.ap3d.ap1d.ap2d +
    ap4.ap3d.ap1d.ap2 + ap4.ap3d.ap1.ap2d +ap4.ap3d.ap1.ap2 +
    ap4.ap3.ap1d.ap2d +ap4.ap3.ap1d.ap2 + ap4.ap3.ap1.ap2d +
    ap4.ap3.ap1.ap2 + ap4d.ap3d.ap2d.ap1d +ap4d.ap3d.ap2d.ap1 +
    ap4d.ap3d.ap2.ap1d +ap4d.ap3d.ap2.ap1 + ap4d.ap3.ap2d.ap1d +
    ap4d.ap3.ap2d.ap1 + ap4d.ap3.ap2.ap1d +ap4d.ap3.ap2.ap1 +
    ap4.ap3d.ap2d.ap1d +ap4.ap3d.ap2d.ap1 + ap4.ap3d.ap2.ap1d +
    ap4.ap3d.ap2.ap1 + ap4.ap3.ap2d.ap1d +ap4.ap3.ap2d.ap1 +
    ap4.ap3.ap2.ap1d +ap4.ap3.ap2.ap1 + ap4d.ap4d.ap1d.ap1d +
    ap4d.ap4d.ap1d.ap1 + ap4d.ap4d.ap1.ap1d +ap4d.ap4d.ap1.ap1 +
    ap4d.ap4.ap1d.ap1d +ap4d.ap4.ap1d.ap1 + ap4d.ap4.ap1.ap1d +
    ap4d.ap4.ap1.ap1 + ap4.ap4d.ap1d.ap1d +ap4.ap4d.ap1d.ap1 +
    ap4.ap4d.ap1.ap1d +ap4.ap4d.ap1.ap1 + ap4.ap4.ap1d.ap1d +
    ap4.ap4.ap1d.ap1 + ap4.ap4.ap1.ap1d +ap4.ap4.ap1.ap1)

    NumberOp = ap1d.ap1 + ap2d.ap2 + ap3d.ap3 + ap4d.ap4

    AutoCorr = Table[{t/200, Abs[vacuum.MatrixExp[-I*t*H/200].vacuum]^2}, {t, 1, 2000}]
    Graphics[Line[AutoCorr], PlotRange -> {{0, 10}, {0, 1}}, Axes -> True]

    Numbo = Table[{t/200, Re[vacuum.MatrixExp[I*t*H/200].NumberOp.MatrixExp[-I*t*H/200].vacuum]}, {t, 0, 2000}]
    Graphics[Line[Numbo], PlotRange -> {{0, 10}, {0, 3}}, Axes -> True]

    ListDensityPlot[H]

    Histogram[Eigenvalues[H]]
    Plot of the absolute square of vacuum autocorrelation function:
    2ba3cn.jpg

    Plot of the expectation value of the particle number operator:
    wb81dv.jpg

    Mathematica's density plot of the Hamiltonian matrix:
    2ij3l8o.jpg

    Histogram of the eigenvalues of the Hamiltonian matrix:
    21mevzo.jpg

    4 modes, 4 excitations (##p_1 = -1##, ##p_2 = -1/3##, ##p_3 = +1/3##, ##p_4 = +1##):
    Plot of the absolute square of vacuum autocorrelation function:
    2qn8tmu.jpg

    Plot of the expectation value of the particle number operator:
    2drib9x.jpg

    Mathematica's density plot of the Hamiltonian matrix:
    2luuhxe.jpg

    Histogram of the eigenvalues of the Hamiltonian matrix:
    95mtkp.jpg
     
    Last edited: Jul 21, 2016
Know someone interested in this topic? Share this thread via Reddit, Google+, Twitter, or Facebook

Have something to add?
Draft saved Draft deleted