Understanding the Propagation Output¶
Once the propagation starts, MCTDH periodically writes the status of the simulation to the output file. The interval between two consecutive output blocks is controlled by the tout keyword specified in the propagation input file.
Each time block contains
- propagation time,
- CPU time,
- wavefunction norm,
- total energy,
- natural weights,
- vibrational expectation values,
- electronic populations.
Since every time step has the same structure, understanding one output block is sufficient to interpret the complete propagation.
Throughout this chapter, we use the output corresponding to 0.50 fs as an example.
Overall Structure¶
Each propagation block consists of the following sections.
- Time and Energy Information
- Natural Weights
- Mode Expectation Values
- Electronic Populations
Time and Energy Information¶
The first lines summarize the numerical status of the propagation.
Snippet 1 — Time and Energy
Time = 0.50 fs, CPU = 243.25 s, Norm = 0.99999979
E-tot = 5.667911 eV,
E-corr = 5.667911 eV,
Delta-E = 0.0000 meV
Time¶
This indicates that the wavepacket has propagated for 0.50 femtoseconds from the initial state.
Each subsequent block corresponds to the next output interval specified by
in the input file.
CPU Time¶
This is the cumulative processor time required to reach the current propagation step.
The CPU time depends on
- number of electronic states,
- number of vibrational modes,
- multilayer tree,
- number of SPFs,
- integration tolerances.
Wavefunction Norm¶
The propagated wavefunction should satisfy
A value very close to unity indicates that the numerical propagation remains stable.
For a well-converged calculation,
throughout the entire simulation.
Total Energy¶
This is the expectation value
For a time-independent Hamiltonian, the total energy should remain nearly constant during propagation.
Energy Drift¶
The energy drift measures the deviation of the total energy from its initial value.
For this calculation,
showing excellent energy conservation throughout the propagation.
Natural Weights¶
The next section prints the natural weights of every node in the multilayer wavefunction.
Snippet 2 — Root Node
Natural weights are the eigenvalues of the reduced density matrix for each node.
They indicate how efficiently the wavefunction is represented by the chosen Single Particle Functions (SPFs).
Because the values are printed multiplied by 1000, the first weight corresponds to
Thus,
| Weight | Contribution |
|---|---|
| 988.137 | 98.81 % |
| 5.625 | 0.56 % |
| 4.684 | 0.47 % |
| 1.553 | 0.16 % |
The first SPF therefore contains almost the entire wavefunction.
Higher Layer Nodes¶
Each branch of the multilayer tree is printed separately.
Snippet 3 — Layer 1
Lower natural weights indicate that higher SPFs contribute only small corrections.
If the last few natural weights become large, additional SPFs may be required for convergence.
Monitoring these values throughout the propagation is one of the standard convergence tests in ML-MCTDH calculations.
Mode Expectation Values¶
The next section reports the expectation values for every active vibrational mode.
Snippet 4 — Mode v32
Each quantity has a direct physical interpretation.
| Quantity | Meaning |
|---|---|
<q> |
Average displacement along the normal coordinate |
<dq> |
Width (standard deviation) of the wavepacket |
<n> |
Average vibrational occupation number |
<dn> |
Fluctuation in vibrational occupation |
Coordinate Expectation Value¶
represents
A positive value indicates that the wavepacket has moved slightly along the positive direction of the normal coordinate.
Wavepacket Width¶
corresponds to
This quantity measures the spatial spread of the nuclear wavepacket.
Vibrational Excitation¶
is the expectation value
which gives the average vibrational excitation of the mode.
Occupation Fluctuation¶
measures the fluctuation in vibrational occupation,
Electronic Populations¶
The final line of each output block gives the electronic populations.
Snippet 5 — Electronic Populations
These numbers correspond to the probability of finding the wavepacket on each diabatic electronic state.
| Electronic State | Population |
|---|---|
| State 1 | 0.16042 |
| State 2 | 0.00321 |
| State 3 | 0.82544 |
| State 4 | 0.01093 |
The populations always satisfy
apart from small numerical errors.
Comparing these values at successive time steps reveals the transfer of population between electronic states caused by vibronic coupling.
Successful Completion¶
After the final propagation step, MCTDH prints a summary indicating that the calculation completed successfully.
Snippet 6 — End of Propagation
Propagation was successful.
total time/wall time : 7.53
Total time [h:m:s] : 8 : 23 : 50.33
Wall time [h:m:s] : 1 : 6 : 55.78
Interpretation¶
The message
confirms that the propagation reached the requested final time without numerical failure.
The timing information reports
- Total CPU time — the cumulative processor time used by all computing cores.
- Wall time — the actual elapsed time experienced by the user.
- CPU/Wall ratio — an indication of the parallel efficiency of the calculation.
Finally, MCTDH prints the host name, working directory, and calculation title, providing a complete record of where the propagation was executed.
Summary¶
The propagation output provides a complete snapshot of the quantum dynamics at each output time. The Time and Energy section monitors numerical stability, the Natural Weights assess the convergence of the multilayer wavefunction, the Mode Expectation Values describe the evolution of the nuclear wavepacket, and the Electronic Populations track the redistribution of probability among the electronic states. Together, these quantities allow both the numerical quality and the physical behavior of the MCTDH propagation to be evaluated throughout the simulation.