Creating your own MCTDH-X simulations

After redoing the simulations provided in this tutorial, the readers are encouraged to create their own simulations tailored to their own specific problems at hand. In this case, the following steps should be taken:

  1. Create a working folder, copy the exemplary input file MCTDHX.inp into the working folder using command inpcp and modify it according to the following steps:

    1. Determine the type of the problem, i.e., whether it is static (ground state) or dynamic (time-evolving state). Related input variables in MCTDHX.inp: Job_Prefactor.

    2. Determine the Hamiltonian of the problem, i.e., determine the number and statistics of the particles, the one-body potential and the two-body interaction. Related input variables in MCTDHX.inp: JOB_TYPE, Npar, whichpot, parameter1, parameter2, $\ldots$, xlambda_0, which_interaction, Interaction_Type, Interaction_Parameter1, Interaction_Parameter2 ... Customized potentials and interactions can be created using the source files Get_1bodyPotential.F and Get_InterParticle_Potential.F, respectively.

    3. Determine the other physical parameters used in the simulation, including the number of orbitals, the dimension of the system, the spatial extent, the spatial grid, etc. Related input variables in MCTDHX.inp: Morb, DIM_MCTDH, NDVR_X, x_initial, x_final, etc.

    4. Determine the initial state of the problem. This is usually done by using a randomly generated initial state or preparing the initial state with another simulation. In the latter case, the user should set up the ground state or a time-evolving state of a particular Hamiltonian as initial state with another simulation directory. Then the user should copy the generated files Header, PSI_bin and CIc_bin into the working folder. Related input variables in MCTDHX.inp: GUESS, Binary_Start_Time.

    5. Determine the integration parameters. Related input variables in MCTDHX.inp: Time_Begin, Time_Final, Output_TimeStep, Integration_Stepsize, Coefficients_Integrator.

  2. Copy the executables MCTDHX_gcc/MCTDHX_intel and analysis_gcc/analysis_intel into the working folder using command bincp. Run the executable using command MCTDHX.

  3. Sanity test of the result

    1. Check the one-body potential in ***orbs.dat to see if they are correctly generated as specified by the Hamiltonian. Check the evolution of the energy and orbital occupations as functions of real/imaginary time in the generated file NO_PR.out and the evolution of the real-space density distribution in ***orbs.dat to see if they are physically sensible. If not, confirm that there is no mistake/typo in the input file.

    2. Check if the real-space density distribution vanishes at the boundary. If not, use a wider spatial extent.

    3. Test the convergence in different parameters. Use a different spatial grid and orbital number and check if the results remain unchanged. A detailed discussion on the convergence in orbital number can be found in Sec. S3 and in Ref. [1,2].

  4. Analysis of the result
    1. Specify the desired time interval of analysis. Related input variables in analysis.inp: Time_From, Time_To.

    2. Specify the desired quantities of interest. Refer to the manual at http://ultracold.org/data/manual for related input variables in analysis.inp.

    3. Visualize the generated quantities of interest.