<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://chemwiki.ch.ic.ac.uk/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Vs13</id>
	<title>ChemWiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://chemwiki.ch.ic.ac.uk/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Vs13"/>
	<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/wiki/Special:Contributions/Vs13"/>
	<updated>2026-05-18T09:04:07Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.43.0</generator>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/run&amp;diff=333959</id>
		<title>Resgrp:comp-photo-dyn/mctdh90.56dv Fulvene Tutorial/run</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/run&amp;diff=333959"/>
		<updated>2013-04-29T11:55:49Z</updated>

		<summary type="html">&lt;p&gt;Vs13: /* Files created by the generator */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= &#039;&#039;&#039;Basic use of the MCTDH (DD-vMCG) package&#039;&#039;&#039; =&lt;br /&gt;
&lt;br /&gt;
A script called dd_generator uses GAUSSIAN output files and user input to write the input files for mctdh (DD-vMCG).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Notes&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;The number of gaussian wavepackets (requested by the dd_generator script)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
When studying a new system, start with one (to keep calculation times short). When an appropriate momentum, time period, time step and integrator have been established, increase the number of wavepackets until the results are not changed by adding more. Calculation times are proportional to the number of wavepackets. To ensure efficient use of computing resources, always specify an even number of wavepackets if using more than one processor (since the number of processors can only be an even number: currently 2, 4 or 8).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;The database&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The most time-consuming part of a dynamics run is the GAUSSIAN CASSCF calculations. The results of these calculations can be stored in a database and re-used in future runs. The user must choose whether or not to read and/or write a database. Each calculation will write a separate database so the databases from each run must be combined (and any duplicate entries removed (to save space)).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Initial momentum&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
An initial momentum can be specified to direct the wavepacket to a particular area of the PES (e.g. towards a conical intersection, a transition state or minimum geometry). The momentum is given as a geometry (in frequency mass weighted normal coordinates). The dd_rotation program used for rotation of the conical intersection can be used to transform the coordinates of the desired geometry. If the user requests an initial momentum, dd_generator will search for a file called momentum.dat. If this file is found, dd_generator will ask if the user wishes to use the momentum specified in it. The user can then specify how much energy to give (in eV). Thus, the values in momentum.dat need only be relative values (since they will be multiplied by a scaling factor to provide the total number of eV requested). If there is no file called momentum.dat in the appropriate folder, the user will not be asked to specify a total number of eV to give to the wavepacket(s). A momentum can still be added by manually modifying the .inp file after the dd_generator script has been run (replace the zero values in the fifth column of the section of the .inp file entitled INIT_WF-SECTION). However, it is simpler to create the momentum.dat file mainly because if the user edits the .inp file directly, there is no way of knowing what the total excess energy will be: the values listed in .inp also incorporate magnitude (not just relative values as in momentum.dat). &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Memory and number of processors&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
In template.dat, the memory for each GAUSSIAN CASSCF calculation is specified. In the .job file (created by dd_generator from user input) the total memory is specified. Thus, the memory specified in .job must be at least as great as the memory given in template.dat multiplied by the number of processors.&lt;br /&gt;
&lt;br /&gt;
The GAUSSIAN calculations for each wavepacket will run on a single processor. If the user specifies more than one processor then the calculations for each wavepacket can run simultaneously. To ensure efficient use of computing resources, always specify an even number of wavepackets when using more than one processor (since the number of processors can only be an even number: currently 2, 4 or 8).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Symmetry Considerations&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The way the diabatisation is performed in mctdh90.31dv sometimes leads to complications involving symmetry.  The diabatic states are defined using the conical intersection (or other geometry) described in coin.log. If the molecule is highly symmetric, there will be more than one conical intersection (all identical by symmetry). If the wavepacket moves close to one of the other conical intersections that is not described in coin.log, the diabatic states may not be properly described in this area of the PES. This of course means that the behaviour of the wavepacket(s) is likely to be described poorly also.&lt;br /&gt;
&lt;br /&gt;
If the conical intersection has lower symmetry than the starting material, the symmetry must necessarily be broken during the dynamics calculation before the conical intersection is reached. The breaking of each mode will occur either due to the accumulation of small numerical inaccuracies or if a momentum is given which forces particular modes to break symmetry.&lt;br /&gt;
Mctdh90.31dv uses frequency-mass-weighted normal coordinates to describe molecular geometries. Each frequency-mass-weighted coordinate corresponds to a vibration of the molecule (and there are therefore 3N-6 coordinates). Displacements of atoms are described by a (or a combination of) vibration(s). Each vibration can be displaced in one of two directions: positive or negative. The 3N-6 frequency-mass-weighted coordinates can be classified by symmetry. Whether a particular symmetry mode is broken in the positive or negative direction will be equally likely if no initial momentum is given. Thus for each mode that is broken during a simulation the symmetry may break in the positive direction or the negative direction. There will be 2&amp;lt;sup&amp;gt;x&amp;lt;/sup&amp;gt; possible conical intersections corresponding to a particular starting geometry, where x is the number of modes that must be broken going from starting material to conical intersection.&lt;br /&gt;
&lt;br /&gt;
Additionally, care must be taken over atom labeling. It must be possible to transform the starting material into the conical intersection without permuting atom labels. If the conical intersection has been optimised by following the MEP downhill from the starting material this is not likely to be a problem. However, bear this in mind if drawing the conical intersection by hand.  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Creating the Directories&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* First of all, create a folder in which to save the calculations in your $HOME and $WORK directories. Create a directory in $HOME, and an identical directory in $WORK that has the same path. Keep pathlengths as short as possible (if the total path becomes too long the dynamics code will not run). For simplicity, in this case, we are going to assume that this directory is named &#039;&#039;fulv&#039;&#039; (for fulvene).&lt;br /&gt;
&lt;br /&gt;
     mkdir fulv&lt;br /&gt;
&lt;br /&gt;
* Create a subdirectory called &#039;&#039;&#039;dd_data&#039;&#039;&#039; in the new directory in $WORK.  Thus you should start with:&lt;br /&gt;
&lt;br /&gt;
    /home/$USER/fulv&lt;br /&gt;
    /work/$USER/fulv/dd_data&lt;br /&gt;
&lt;br /&gt;
* Important Note: it is essential to have the same path in both directories, $HOME and $WORK. Do not change the path-names within the HOME/WORK directories. If you re-name or move any subdirectory in your, for example HOME directory, you have to be consistent and make the same changes in the $WORK directory.&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Gaussian Output to be Used as Input for the Dynamics Program&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* Populate the new directory /work/$USER/buta/dd_data with four files which must be named: &#039;&#039;&#039;coin.log&#039;&#039;&#039;; &#039;&#039;&#039;start.fchk&#039;&#039;&#039;; &#039;&#039;&#039;start.log&#039;&#039;&#039;; and &#039;&#039;&#039;template.dat&#039;&#039;&#039;.These files are required in order to run any dynamics simulation, they are the basis that the script dd_generator (see the following section) will use to create the necessary files for running MCTDH (DD-vMCG).  You may also create a file named &amp;quot;&#039;momentum.dat&amp;quot;&#039; if you wish to give a momentum to the wavepacket(s) (this is optional and may be created later instead). &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;coin.log&#039;&#039;&#039; is the logfile resulting from the optimisation of the conical intersection. NB The MCTDH (DD-vMCG) program will rotate the conical intersection before starting the dynamics. To do this it must be provided with three angles which describe the appropriate rotation. There is an Excel spreadsheet available to calculate these angles (see the section entitled &amp;quot;Rotating the Conical Intersection&amp;quot;). NB the structure in coin.log need not necessarily be a true conical intersection: this point is only used for performing the diabatisation. Thus the diabatisation will be exact at this point and will become more approximate the further you are from it (on the PES). If you wish to use a point that is not a conical intersection, simply run a conical intersection optimisation (with only a single step) on the desired geometry. This will create a file with the same layout as a conical intersection optimisation output file (mctdh looks for certain things in this file so if some other type of .log file were used instead, it might not contain the required information). NB the final conical intersection log file must only contain one geometry (otherwise the dynamics program will not know which geometry to use). IS THIS STATEMENT TRUE FOR THIS VERSION??&lt;br /&gt;
&lt;br /&gt;
[[Media:Coin.log]]&lt;br /&gt;
&lt;br /&gt;
(Insert a link here to section &amp;quot;Rotating the Conical Intersection&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;start.chk&#039;&#039;&#039; is the checkpoint file from the high precision vibrational modes of the ground state with state averaged orbitals (with atom types rather than numbers)&lt;br /&gt;
[[Media:Start.chk]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;start.log&#039;&#039;&#039; is the log file from the high precision vibrational modes of the ground state with state averaged orbitals (with atom types rather than numbers)&lt;br /&gt;
&lt;br /&gt;
[[Media:Start.log]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;template.dat&#039;&#039;&#039; is a template for the creation of GAUSSIAN input files by the MCTDH (DD-vMCG) program. It contains all the mutual keywords of the GAUSSIAN calculations which will be run on-the-fly by MCTDH (DD-vMCG). It also contains other information relating to the GAUSSIAN calculations such as memory requirements.&lt;br /&gt;
 &lt;br /&gt;
[[Media:Template.dat]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;momentum.dat&#039;&#039;&#039; is a file containing a list of values to be used as vectors to indicate the momentum to be given to a particular (set of) wavepacket(s). The vectors must be listed in the order of the frequency-mass-weighted normal coordinates specified in the coin.out file (i.e. the output file from dd_rotation program). They give the magnitude of the momentum to be given along each of these frequency-mass-weighted normal coordinates. N.B. The signs of the values here are important!&lt;br /&gt;
We are not giving a momentum in this simulation.&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;The Generator&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* The &amp;quot;generator&amp;quot; script uses the GAUSSIAN output files (above) along with other information supplied by the user to create input files for MCTDH (DD-vMCG).&lt;br /&gt;
&lt;br /&gt;
* Navigate to /home/$USER/fulv and run the generator by typing:&lt;br /&gt;
&lt;br /&gt;
     dd_generator&lt;br /&gt;
&lt;br /&gt;
for the HPC Cluster, or &lt;br /&gt;
&lt;br /&gt;
     dd_generator_MAC&lt;br /&gt;
&lt;br /&gt;
for a MAC OS X system&lt;br /&gt;
&lt;br /&gt;
* Typing dd_generator will run the script automatically. After installing the MCTDH (DD-vMCG) package this command has been added to your list of executable commands. &lt;br /&gt;
&lt;br /&gt;
     ********************************************************************************&lt;br /&gt;
     ********************    -------  DD GENERATOR  --------    *****************&lt;br /&gt;
     ********************************************************************************&lt;br /&gt;
&lt;br /&gt;
* The generator will ask a series of questions and will use the answers provided to prepare the input files for the dynamics program. The questions it asks are listed below along with answers for a trial run on butadiene.&lt;br /&gt;
&lt;br /&gt;
==== List of questions asked by dd_generator====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;blockquote style=&amp;quot;background: white; border: 1px solid black; padding: 1em;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Question&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; &#039;&#039;&#039;Answer for this tutorial&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; &#039;&#039;&#039;Explanation&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Which version of GAUSSIAN should we use? (gdvh01|g03)&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; gdvh01 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;How many shared-memory processors should we use? (1|2|4|8)&lt;br /&gt;
N.B.: (ncpus=1) serial or (ncpus=2|4|8) parallel (omp) version of MCTDH launched as batch job&lt;br /&gt;
and launching monoprocessor GAUSSIAN interactive jobs (nprocshared=1 or no specification)&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 4 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the name of the molecule?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; fsto &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; The first four letters will be used to name the new files that the generator is creating &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the number of atoms?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 12 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;The number of nuclear degrees of freedom is 30.&lt;br /&gt;
Do you want to reduce the dimensionality? (y|n)&lt;br /&gt;
(N.B.: this can be used also for re-ordering the coordinates)&lt;br /&gt;
&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; n &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the number of nuclear Gaussian functions?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 4 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt; 4 means 4 gaussian on state 1 and 4 gaussian on state 2. This is the &amp;quot;single-set&amp;quot; implementation of MCTDH (DD-vMCG) therefore the gaussian wavepackets on state 1 are the same as the gaussian wavepackets on state 2.&amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;&#039;What is the final propagation time (in fs)?&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 150 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the propagation time step (in fs)?&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 0.1 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the number of electronic states? (1|2)&#039;&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 2 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the highest electronic root?&#039;&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 2 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;From which electronic state should the wavepacket start? (2|1)&#039;&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 2 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Will there be an initial momentum given to the wavepacket? (y|n)&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; n &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Do you want to add a reference label to the name of the case? (y|n)&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; y &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Please type your text:&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; trial &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;This question is only asked if the answer to the previous question was yes.  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What will be the status of the database? (rdwr|rd|wr|none)&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; none &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; Choose rd for read, wr for write etc. In this case we are not going to use the database, but if it was used (rd or rdwr is specified) the script would ask the user to specify the threshold below which the database values will be used (%). In this case the value none is chosen so this question is not asked.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;&amp;gt;&amp;gt; Manual rotation (using Excel spreadsheet) &amp;lt;&amp;lt;&lt;br /&gt;
   Please type the values of the three Euler angles (in deg)&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 0&lt;br /&gt;
0&lt;br /&gt;
0 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Tuple from the dd_rotation method (insert link)&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;The generator will now tell you that it has read the files start.chk from the folder /work/$USER/fulv/dd_data/ .&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Files created by the generator&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* The generator will now tell you that it has read the files start.log, coin.log and momentum.dat (if a momentum has been specified) from the folder /work/$USER/fulv/dd_data/:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
   about to read parameters...&lt;br /&gt;
   ... parameters just read&lt;br /&gt;
   about to read file /work/vs13/fulv/dd_data/start.log                   &lt;br /&gt;
                                                               ...&lt;br /&gt;
   ... file /work/vs13/fulv/dd_data/start.log                             &lt;br /&gt;
                                                      read successfully&lt;br /&gt;
   about to read file /work/vs13/fulv/dd_data/coin.log                    &lt;br /&gt;
                                                               ...&lt;br /&gt;
 *********************************************************&lt;br /&gt;
 Mass-weighted displacement from start to coin:&lt;br /&gt;
    old total norm: 22.070387&lt;br /&gt;
    new total norm:  4.669035&lt;br /&gt;
  vibrational part:  4.669035&lt;br /&gt;
   rotational part:  0.000000&lt;br /&gt;
 *********************************************************&lt;br /&gt;
   ... file /work/vs13/fulv/dd_data/coin.log                             &lt;br /&gt;
                                                      read successfully&lt;br /&gt;
&amp;lt;/pre&amp;gt; &lt;br /&gt;
&lt;br /&gt;
and that the extraction of data and the creation of a summary file were done successfully. If the Mass-weighted displacement from start to coin appears as NaN it may be because the start.log contains atom numbers rather than atom types. You will need to redo the freq=hpmodes job with atom types.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Data extracted successfully&lt;br /&gt;
The summary of this file generation is in:&lt;br /&gt;
-rw-r--r--  1 vs13 hpc-users 3070 Dec  2 17:06 /home/vs13/fulv/fstodd4o.txt&lt;br /&gt;
 &lt;br /&gt;
Do not forget you still can add a momentum, change the integrator,&lt;br /&gt;
change convergence criteria for GAUSSIAN and MCTDH...&lt;br /&gt;
 &lt;br /&gt;
Do not forget to check the order of the atoms of the conical intersection geometry&lt;br /&gt;
in /work/vs13/fulv/dd_data/coin.log&lt;br /&gt;
 &lt;br /&gt;
Now go to your jobscript file and give values to the memory and walltime.&lt;br /&gt;
 &lt;br /&gt;
Good luck!&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* The dd_generator script has generated four files in the same directory (/home/$USER/fulv):&lt;br /&gt;
&lt;br /&gt;
# fstodd4o_trial.inp  &lt;br /&gt;
# fstodd4o_trial.job  &lt;br /&gt;
# fstodd4o_trial.txt  &lt;br /&gt;
# fstodd_none.op&lt;br /&gt;
&lt;br /&gt;
(Link to a more detailed explanation of this files)&lt;br /&gt;
&lt;br /&gt;
* The script has also created some files and directories in /work/$USER/fulv where the MCTDH (DD-vMCG) and GAUSSIAN calculations will be stored:&lt;br /&gt;
&lt;br /&gt;
1) Directories:&lt;br /&gt;
&lt;br /&gt;
* fstodd4o_trial&lt;br /&gt;
* fstodd4o_trial/dd_data&lt;br /&gt;
&lt;br /&gt;
2) Files (in fstodd4o_trial/dd_data):&lt;br /&gt;
&lt;br /&gt;
# refdb.dat &lt;br /&gt;
# start.chk  &lt;br /&gt;
# template.dat&lt;br /&gt;
# forward.dat&lt;br /&gt;
# backward.dat&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Modifications to be made to the files before running the dynamics&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* In the .job file in /home/$USER/fulv specify the memory (in this case use 4000MB) and walltime (72:00:00) if you are in the HPC Cluster.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* When running a development version of GAUSSIAN (gdvg03 or gdvg01), copy the start.chk file into the folder /work/$USER/dyn_90dev/but1dd1p_trial/dd_data. The unformatted checkpoint file from start.fchk that dd_generator has created is corrupted (due to a bug in formchk in gdvg01).&lt;br /&gt;
has this been fixed?&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Running the dynamics&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* Navigate to /home/$USER/fulv. Queue the job file. In this case, type:&lt;br /&gt;
&lt;br /&gt;
     qsub fstodd4p_trial.job&lt;br /&gt;
&lt;br /&gt;
for MAC OS X users the shell command is already written in fstodd4p_trial.job&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;The Database (DB)&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
The DB is made of four binary files:&lt;br /&gt;
geo.db&lt;br /&gt;
pes.db&lt;br /&gt;
gra.db&lt;br /&gt;
hes.db&lt;br /&gt;
They can be used in place of GAUSSIAN calculations to save some&lt;br /&gt;
computation time when you ask for DBrd or DBrdwr.&lt;br /&gt;
&lt;br /&gt;
Each set of geometry, energy, gradient and Hessian (the latter&lt;br /&gt;
three quantities having been calculated by GAUSSIAN for the two&lt;br /&gt;
adiabatic electronic states) will be called a DB record and&lt;br /&gt;
assigned a record number defining the order of occurrence in the DB.&lt;br /&gt;
If you run a calculation where the DB is to be read, in the *.res&lt;br /&gt;
file that you obtain after the calculation is done (file that&lt;br /&gt;
actually is a redirection of the standard output) you will see the&lt;br /&gt;
number of records in the DB as it grows.&lt;br /&gt;
Example (formaldehyde, multi-set 1+1):&lt;br /&gt;
          53&lt;br /&gt;
 s=  1 e=  1 t=   0.000 V1=   0.001 V2=   4.533 H11=   0.001 H22=&lt;br /&gt;
 4.533 H12=   0.000 q=   0.0000    0.0000    0.0000    0.0000&lt;br /&gt;
 0.0000    0.0000&lt;br /&gt;
          53&lt;br /&gt;
 s=  2 e=  1 t=   0.000 V1=   0.001 V2=   4.533 H11=   0.001 H22=&lt;br /&gt;
 4.533 H12=   0.000 q=   0.0000    0.0000    0.0000    0.0000&lt;br /&gt;
 0.0000    0.0000&lt;br /&gt;
          53&lt;br /&gt;
 s=  1 e=  1 t=   0.500 V1=   0.197 V2=   4.701 H11=   0.211 H22=&lt;br /&gt;
 4.687 H12=   0.251 q=  -0.6258   -0.6146    0.6136    0.6049&lt;br /&gt;
 -0.5520   -0.0616&lt;br /&gt;
          53&lt;br /&gt;
 s=  2 e=  1 t=   0.500 V1=   0.000 V2=   4.533 H11=   0.000 H22=&lt;br /&gt;
 4.533 H12=  -0.001 q=   0.0009    0.0009    0.0093   -0.0245&lt;br /&gt;
 -0.0066    0.0001&lt;br /&gt;
          53&lt;br /&gt;
 &lt;br /&gt;
 ERROR in subroutine Distdb :&lt;br /&gt;
 Redundant records in Data Base:   18   19&lt;br /&gt;
 s=  1 e=  1 t=   1.000 V1=   0.469 V2=   4.455 H11=   0.479 H22=&lt;br /&gt;
 4.445 H12=   0.200 q=  -0.4640   -0.5641    1.2594   -0.5871&lt;br /&gt;
 -1.0864   -0.1120&lt;br /&gt;
          53&lt;br /&gt;
 s=  2 e=  1 t=   1.000 V1=   0.001 V2=   4.473 H11=   0.001 H22=&lt;br /&gt;
 4.473 H12=  -0.002 q=   0.0003    0.0004    0.0404   -0.0944&lt;br /&gt;
 -0.0292    0.0001&lt;br /&gt;
          53&lt;br /&gt;
 s=  1 e=  1 t=   1.500 V1=   0.113 V2=   4.543 H11=   0.120 H22=&lt;br /&gt;
 4.536 H12=   0.170 q=  -0.3994   -0.4377    0.5444    0.2057&lt;br /&gt;
 -0.5149   -0.0638&lt;br /&gt;
          53&lt;br /&gt;
 s=  2 e=  1 t=   1.500 V1=   0.013 V2=   4.390 H11=   0.013 H22=&lt;br /&gt;
 4.390 H12=  -0.005 q=   0.0009    0.0010    0.0897   -0.2104&lt;br /&gt;
 -0.0634    0.0002&lt;br /&gt;
          53&lt;br /&gt;
 s=  1 e=  1 t=   2.000 V1=   0.068 V2=   4.431 H11=   0.071 H22=&lt;br /&gt;
 4.428 H12=   0.110 q=  -0.2751   -0.3274    0.4796   -0.0812&lt;br /&gt;
 -0.3880   -0.0605&lt;br /&gt;
          54&lt;br /&gt;
 s=  2 e=  1 t=   2.000 V1=   0.019 V2=   4.367 H11=   0.019 H22=&lt;br /&gt;
 4.367 H12=  -0.009 q=   0.0012    0.0013    0.1563   -0.3658&lt;br /&gt;
 -0.1058    0.0003&lt;br /&gt;
          54&lt;br /&gt;
 s=  1 e=  1 t=   2.500 V1=   0.064 V2=   4.273 H11=   0.065 H22=&lt;br /&gt;
 4.272 H12=  -0.064 q=   0.2559    0.0914    0.1691   -0.7218&lt;br /&gt;
 -0.1052   -0.0595&lt;br /&gt;
          55&lt;br /&gt;
 s=  2 e=  1 t=   2.500 V1=   0.070 V2=   4.258 H11=   0.070 H22=&lt;br /&gt;
 4.257 H12=  -0.013 q=   0.0013    0.0015    0.2384   -0.5572&lt;br /&gt;
 -0.1528    0.0004&lt;br /&gt;
&lt;br /&gt;
Here, we started with a DB of 53 records. It is large enough until&lt;br /&gt;
2 fs, where an additional record is produced, and so on.&lt;br /&gt;
The error message saying here that records 18 and 19 are identical&lt;br /&gt;
will not prevent the code from working. It is just here to remind you&lt;br /&gt;
that the DB is not clean in that it has redundant records.&lt;br /&gt;
This is to be prevented as the DB files might become large quite&lt;br /&gt;
rapidly and all records will be read at each update time (dd_update&lt;br /&gt;
= tout in the integrator section, tout = xxx fs in the run section&lt;br /&gt;
of the *.inp file) for each Gaussian function.&lt;br /&gt;
&lt;br /&gt;
Incidentally, when you want to analyse results written to a *.res&lt;br /&gt;
file, you need to look for lines starting with &amp;quot;s=&amp;quot; (other lines&lt;br /&gt;
are various messages and numbers of DB records).&lt;br /&gt;
The criterion for using the DB is to be seen as a maximum-allowed&lt;br /&gt;
relative difference&lt;br /&gt;
&lt;br /&gt;
So, it is up to you to clean the DB when you see this, and to keep&lt;br /&gt;
this in mind when you concatenate DBs that have branched in their&lt;br /&gt;
past (see more details below).&lt;br /&gt;
&lt;br /&gt;
Also, a given DB depends on the choice of a reference geometry in&lt;br /&gt;
Cartesian coordinates because geometries written to the DB files&lt;br /&gt;
will always be re-orientated with respect to this particular&lt;br /&gt;
geometry. The back and forth transformations are performed by MCTDH (DD-vMCG)&lt;br /&gt;
so you don&#039;t need not worry about this.&lt;br /&gt;
This geometry is written to refdb.dat. It is the starting geometry&lt;br /&gt;
that comes from start.log (the only difference being that it is&lt;br /&gt;
mass-centred).&lt;br /&gt;
As long as you do not change the starting geometry or the nature&lt;br /&gt;
of the electronic states, you can thus keep growing the DB of your&lt;br /&gt;
system.&lt;br /&gt;
&lt;br /&gt;
MANAGING THE DATA BASE&lt;br /&gt;
&lt;br /&gt;
A set of DB  programs can be found in XXXXX. Their roles are&lt;br /&gt;
explained below.&lt;br /&gt;
For now, the sources are in dd_utildev and dd_util.31dv and the&lt;br /&gt;
executables are in mctdh90dev/bin and mctdh90.31dv/bin, so you can&lt;br /&gt;
call them from anywhere, as long as DB files are there.&lt;br /&gt;
&lt;br /&gt;
1) countdb.out: returns the number of records of the current DB&lt;br /&gt;
2) cleandb.out: &amp;quot;brute-force&amp;quot; cleaning of the current DB. This&lt;br /&gt;
might be too long to be run interactively when the number of&lt;br /&gt;
records is too large, because each record needs to be compared to&lt;br /&gt;
each other record (e.g. a DB with ca. 3800 records will take a couple of minutes to clean interactively). If so, run in batch mode (ask me or Marta if you&lt;br /&gt;
have a doubt).&lt;br /&gt;
The cleaned files are:&lt;br /&gt;
geoclean.db&lt;br /&gt;
pesclean.db&lt;br /&gt;
graclean.db&lt;br /&gt;
hesclean.db&lt;br /&gt;
You need to rename them without &#039;clean&#039; for them to be used as a DB.&lt;br /&gt;
3) cutdb.out: allows you to cut out the beginning of a DB.&lt;br /&gt;
This is to be used in the following situation:&lt;br /&gt;
- You start from a mother DB, DB0, assumed to be clean, with N0&lt;br /&gt;
records.&lt;br /&gt;
- You want to use DB0 in two independent calculations. You&lt;br /&gt;
replicate DB0 to daughter DBs, DB1 and DB2.&lt;br /&gt;
- When these calculations are done, DB1 and DB2 have grown to N0+N1&lt;br /&gt;
and N0+N2 records, respectively.&lt;br /&gt;
- You want to concatenate them to create a new mother DB, DB3.&lt;br /&gt;
- DB1 and DB2 have their N0 first records the same. To avoid&lt;br /&gt;
redundant records, you need to cut N0 records from DB2 for example.&lt;br /&gt;
--&amp;gt; go to where DB2 is and use cleandb.out&lt;br /&gt;
The resulting files are:&lt;br /&gt;
geocut.db&lt;br /&gt;
pescut.db&lt;br /&gt;
gracut.db&lt;br /&gt;
hescut.db&lt;br /&gt;
these have N1 records.&lt;br /&gt;
--&amp;gt; rename DB1, for instance geo.db1 etc., and concatenate the files:&lt;br /&gt;
cat geo.db1 geoclean.db &amp;gt; geo.db&lt;br /&gt;
etc.&lt;br /&gt;
- Your new mother DB, DB3, should now have N0+N1+N2 distinct records.&lt;br /&gt;
4) deldb.out: allows you to remove one selected record (for&lt;br /&gt;
instance if corrupted) from the DB if you know its number.&lt;br /&gt;
The resulting files are:&lt;br /&gt;
geodel.db&lt;br /&gt;
pesdel.db&lt;br /&gt;
gradel.db&lt;br /&gt;
hesdel.db&lt;br /&gt;
You need to rename them without &#039;del&#039; for them to be used as a DB.&lt;br /&gt;
5) seedb.out: allows you extract one selected record from the&lt;br /&gt;
binary files for reading it (the record is not removed from the DB).&lt;br /&gt;
The resulting file can be read as a text file (ascii) and is:&lt;br /&gt;
see.db&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Restarting dynamics jobs&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
The examples below make use of the directory and filenames in the examples above.&lt;br /&gt;
&lt;br /&gt;
A dynamics run can be restarted if the job was terminated before completion (e.g if it ran out of time or failed because of convergence problems) or if the user wishes to continue the job for a longer time period than had originally been specified. The program will continue writing the same output file but will overwrite the .res file. Thus the .res file should be saved under a different name to prevent loss of the data calculated in the original run. The .res is not written until the job stops so this can be done after the restart.&lt;br /&gt;
&lt;br /&gt;
*To increase the final propagation time&lt;br /&gt;
&lt;br /&gt;
Retrieve the .inp file (in $HOME/fulv) and change &#039;&#039;propagation&#039;&#039; to &#039;&#039;continuation&#039;&#039; in the section entitled RUN-SECTION. Then change the final time &#039;&#039;tfinal&#039;&#039; to a larger value. (NB this new value should include the time already done).&lt;br /&gt;
&lt;br /&gt;
Re-queue the job.&lt;br /&gt;
&lt;br /&gt;
*To increase the number of scf cycles (the most common reason for convergence failure)&lt;br /&gt;
&lt;br /&gt;
Edit the template.dat file in $WORK/fulv/fstodd4p_trial/dd_data. Insert scf=(maxcycle=128) on the keyword line (for example). It is important that you change the template.dat file in the fstodd4p_trial/dd_data folder that was created by dd_generator (rather than the one created by the user in $WORK/fulv/dd_data) because the original $WORK/fulv/dd_data/template.dat file is only read by dd_generator and used to create the job-specific file in the job folder. (Of course if you wish all future jobs run in $WORK/fulv  to have increased scf cycles, change the other template.dat file in $WORK/buta/dd_data too.)&lt;br /&gt;
&lt;br /&gt;
Re-queue the job.&lt;br /&gt;
&lt;br /&gt;
*To increase the run-time so that a job will finish&lt;br /&gt;
&lt;br /&gt;
Edit the walltime in the .job file in the $HOME directory and re-queue the job.&lt;br /&gt;
&lt;br /&gt;
=&#039;&#039;&#039;Analysis of the results&#039;&#039;&#039;=&lt;br /&gt;
&lt;br /&gt;
The most important files are the output and .res files.&lt;br /&gt;
&lt;br /&gt;
=== Detailed information about files and directories ===&lt;br /&gt;
&lt;br /&gt;
*output&lt;br /&gt;
&lt;br /&gt;
The output contains some standard results:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Time&#039;&#039;&#039;: time in fs.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;CPU&#039;&#039;&#039;:  CPU time in s.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Norm&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;E-tot&#039;&#039;&#039;: the total energy in eV. This value should be conserved (i.e by the end of the run the E-tot value should not be too different  from what it was a time=0).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;E-corr&#039;&#039;&#039;: correlated Hamiltonian energy&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Delta-E&#039;&#039;&#039;: diference between E-tot at time t=0 and the current time t&lt;br /&gt;
&lt;br /&gt;
Note: In a multi-packet run, i.e. when npacket &amp;gt; 1, the total energy and the norm of the wavefunction, as given in the &amp;quot;total&amp;quot; part, are averaged over the packets.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;population&#039;&#039;&#039; : diabatic populations of state 1 and state 2 (in that order) at the current time t&lt;br /&gt;
&lt;br /&gt;
For every mode:	&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt; q &amp;gt;&#039;&#039;&#039;: position expectation value&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;dq&amp;gt;&#039;&#039;&#039;: standard deviation Sqrt[&amp;lt; q&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt; &amp;gt; - &amp;lt; q &amp;gt;&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt; p &amp;gt;&#039;&#039;&#039; : momentum expectation value&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;dq&amp;gt;&#039;&#039;&#039;: standard deviation Sqrt[&amp;lt; p&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt; &amp;gt; - &amp;lt; p &amp;gt;&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*.res&lt;br /&gt;
&lt;br /&gt;
This file contains the energy of each state (diabatic and adiabatic) at each timestep for each gaussian function:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;s&#039;&#039;&#039; is a redundant value in mctdh90.31dv. It is only meaningful in multi-set implementations of mctdh (where there are double the number of gaussian functions than specified: one for each state). (It indicates whether the gaussian function in question is on the lower (1) or upper (2) state. (In the single set implementation, the gaussian functions on each state are identical)).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;e&#039;&#039;&#039; is a label given to each gaussian function&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;t&#039;&#039;&#039; is the current time in fs&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;V1&#039;&#039;&#039; is the energy of the lower adiabatic state at time t&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;V2&#039;&#039;&#039; is the energy of the upper adiabatic state at time t&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;H11&#039;&#039;&#039; is the energy of the lower diabatic state at time t&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;H22&#039;&#039;&#039; is the energy of the upper diabatic state at time t&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;H12&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;q&#039;&#039;&#039; is the list of frequency mass-weighted normal coordinates that describe the geometry at time t&lt;br /&gt;
&lt;br /&gt;
The end of the file will read something like: &lt;br /&gt;
&lt;br /&gt;
     Propagation was successful.&lt;br /&gt;
     &lt;br /&gt;
     Total time     [h:m:s] :    0 :  1 : 21.60&lt;br /&gt;
     &lt;br /&gt;
      ---------------------------------------------------------------------------&lt;br /&gt;
      ------ Host: &amp;quot;cx1-3-2-4&amp;quot; ----------Sat Jan 17 06:50:20 2009&lt;br /&gt;
&lt;br /&gt;
The other most common result is that the calculation aborted because of scf convergence problems in the CASSCF GAUSSIAN calculations. In this case the ouput file will break off after the last complete step and the end of the .res file will read something like:&lt;br /&gt;
     ERROR in subroutine Getddpes :&lt;br /&gt;
     CAS convergence failed for gwp on state:    1    1&lt;br /&gt;
&lt;br /&gt;
If the job terminates due to scf convergence problems, it may be possible to restart it after modifying the .inp and/or .job and/or template.dat files.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*log&lt;br /&gt;
&lt;br /&gt;
This file contains information such as the source code version, type of calculation performed, integrator used, numerical parameters, which data files are opened, any error messages, and much more. The information provided by the log file can be very helpful, in particular when searching for errors. One should always carefully inspect the log file.&lt;br /&gt;
&lt;br /&gt;
* dvr&lt;br /&gt;
&lt;br /&gt;
* oper&lt;br /&gt;
&lt;br /&gt;
*ddpeserr&lt;br /&gt;
&lt;br /&gt;
*input&lt;br /&gt;
&lt;br /&gt;
*op.log&lt;br /&gt;
&lt;br /&gt;
*psi&lt;br /&gt;
&lt;br /&gt;
*check&lt;br /&gt;
&lt;br /&gt;
*auto&lt;br /&gt;
&lt;br /&gt;
*ddpes&lt;br /&gt;
&lt;br /&gt;
*restart&lt;br /&gt;
&lt;br /&gt;
*stop&lt;br /&gt;
&lt;br /&gt;
*speed&lt;br /&gt;
&lt;br /&gt;
*timing&lt;br /&gt;
&lt;br /&gt;
*update&lt;br /&gt;
&lt;br /&gt;
=== Example: fulvene ===&lt;br /&gt;
&lt;br /&gt;
*Examine the end of the output file to check that the calculation ran to completion.&lt;br /&gt;
     &lt;br /&gt;
*Plot the energy of the diabatic and adiabatic states over time (.res file: V1, V2, H11 and H22). Calculate V2-V1 and H22-H11 and plot these also. H12 may also be plotted on the same graph.&lt;br /&gt;
[[Image:EnergyofStates.png]]&lt;br /&gt;
&lt;br /&gt;
The diabatic states cross at 176.2 fs and the adiabatic states cross at 174.5 fs. At a conical intersection, the value V2-V1 will become negative and the H22-H11 will be a minimum (&amp;lt;1eV). Ideally these crossings will occur at the same time. If the diabatisation has worked well, after V2-V1 becomes negative, V2-V1 and H22-H11 will become mirror images (i.e. the diabatic and adiabatic states follow each other). &lt;br /&gt;
&lt;br /&gt;
*Plot the value of the total energy over time (.res file: E-tot). Verify that the Delta-E value is not too large (compare with the total energy (E-tot) at time 0).&lt;br /&gt;
[[Image:TotalEnergy.png]]&lt;br /&gt;
&lt;br /&gt;
*Plot the population of one of the (diabatic) states over time (.res file: population).&lt;br /&gt;
[[Image:Population.png]]&lt;br /&gt;
&lt;br /&gt;
At the conical intersection the population transfer is large. In this case the job has been terminated after 200 fs. Usually the calculation should be continued until the populations stabilise (which obviously has not happened in this case).&lt;br /&gt;
&lt;br /&gt;
=== Making a Movie ===&lt;br /&gt;
&lt;br /&gt;
Navigate to /work/$USER/fulv/fstodd4p_trial (the place where the .res file was written). Type:&lt;br /&gt;
 movie.x&lt;br /&gt;
* The script will ask a series of questions and will use the answers provided to create a file that can be read into Molden or iMol.&lt;br /&gt;
&lt;br /&gt;
==== List of questions asked by dd_movie.out====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;blockquote style=&amp;quot;background: white; border: 1px solid black; padding: 1em;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Question&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; &#039;&#039;&#039;Answer for this tutorial&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; &#039;&#039;&#039;Explanation&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the number of atoms?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 12 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the actual number of active coordinates?&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 30 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; In this case all coordinates were active (so there are 3N-6 where N is the number of atoms) &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Name of result file to read?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; fstodd4p_trial.res &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;Ensure that the forward.dat and backward.dat files are located in the current directory in the folder dd_data (they will have been written there automatically)&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Name of movie file to write?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; e1.xyz &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; Choose any name .xyz &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Which electronic state (s=...)?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 1 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;Choose 1 (this question dates from the multi-set implementation of mctdh where the wavepackets on each state were different)  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Which Gaussian function (e=...)?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 1 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;In this case we can chose between 4 wavepackets&amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;The script will now return the number of lines and the initial number of points&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
number of lines:        4684&lt;br /&gt;
initial number of points:        1501&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Maximum number of points you want?&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 1501 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The .xyz file is ready to be opened in Molden or iMol.&lt;br /&gt;
&lt;br /&gt;
= &#039;&#039;&#039;Current Known Bugs&#039;&#039;&#039; =&lt;br /&gt;
&lt;br /&gt;
Parallelisation:&lt;br /&gt;
&lt;br /&gt;
It is not possible to run calculations in parallel with version 90.31dv (reading the same template.dat file simultaneously by each processor is causing problems). In 90.35tmp this is ok. In 90.4X it will also be fixed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Total energy:&lt;br /&gt;
&lt;br /&gt;
1) The total energy is sometimes &amp;quot;artificially&amp;quot; increased by a lot. If so, try a different integrator or play around with the timestep (may need to get larger or smaller). Or try increasing scf convergence to 10&amp;lt;sup&amp;gt;-12&amp;lt;/sup&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
2) If Delta-E suddenly becomes too large, you can get the following message: &lt;br /&gt;
&amp;quot;ERROR in subroutine WRGAUSSIAN :&lt;br /&gt;
 Do not use $Swap:...$ metastring in file /.../template.dat&amp;quot;&lt;br /&gt;
Often, when getting this message, no more steps are added to the simulation, although the calculation seems to keep running (the integrator keeps trying and failing).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Using the database:&lt;br /&gt;
&lt;br /&gt;
1) Every record generated with mctdh90.31dev and several GWPs is corrupted, so, for now, when launching calculations with more that one wavepacket, use &amp;quot;formdd_none.op&amp;quot; (i.e. do not read nor write the database).&lt;br /&gt;
[For instance, when using dbrdwr and starting from a clean db, all newly generated records are added to the existing database, even if they are identical to records that were already written in the db.]  In 90.35tmp this is ok. In 90.4X it will also be fixed.&lt;br /&gt;
&lt;br /&gt;
2) Records obtained in calculations with one GWP should be OK, but this is still to be confirmed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Impossible case&amp;quot;:&lt;br /&gt;
&lt;br /&gt;
Error message that forces the calculation to stop. It seems to be associated with moving towards an &amp;quot;unexpected&amp;quot; geometry (e.g. a radical).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
State Averaging:&lt;br /&gt;
&lt;br /&gt;
To increase the threshold above which stateaveraging is turned off, increase the default value of 10 (to e.g. 50)  in the line &#039;&#039;ddregions&#039;&#039; in the OPERATOR-SECTION of the .inp file.&lt;br /&gt;
&lt;br /&gt;
= &#039;&#039;&#039;Questions and Modifications to be made to this wiki&#039;&#039;&#039; =&lt;br /&gt;
&lt;br /&gt;
*Why we would ever need to start the gwps from the lower state? To study GS rxns; chemiluminesence (eg glowworms).&lt;br /&gt;
*In terms of Delta-E, how much is too much? ca1eV but shape of E-tot vs time is important: discontiunities or v flat then steep increase are less reliable than smooth gradual increases.&lt;br /&gt;
*Benjamin: Note that Marta has noticed that for very strange geometries, you may receive an error message saying &amp;quot;impossible case&amp;quot;, which stops MCTDH. It is too complicated to explain here. I know where this happens in the code, and I should prevent this error to stop the code but I didn&#039;t have time to fix this. I&#039;ll do it soon.&lt;br /&gt;
*Need to edit/correct section on the DB.&lt;br /&gt;
*Is does unfchk in gdvg03 create corrupted fchk files? G03 is fine. we don&#039;t know about gdvg03 but we don&#039;t care because we probablly won&#039;t use it.&lt;br /&gt;
&lt;br /&gt;
=== [[Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial|back]] ===&lt;/div&gt;</summary>
		<author><name>Vs13</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/run&amp;diff=333958</id>
		<title>Resgrp:comp-photo-dyn/mctdh90.56dv Fulvene Tutorial/run</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/run&amp;diff=333958"/>
		<updated>2013-04-29T11:54:15Z</updated>

		<summary type="html">&lt;p&gt;Vs13: /* The Generator */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= &#039;&#039;&#039;Basic use of the MCTDH (DD-vMCG) package&#039;&#039;&#039; =&lt;br /&gt;
&lt;br /&gt;
A script called dd_generator uses GAUSSIAN output files and user input to write the input files for mctdh (DD-vMCG).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Notes&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;The number of gaussian wavepackets (requested by the dd_generator script)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
When studying a new system, start with one (to keep calculation times short). When an appropriate momentum, time period, time step and integrator have been established, increase the number of wavepackets until the results are not changed by adding more. Calculation times are proportional to the number of wavepackets. To ensure efficient use of computing resources, always specify an even number of wavepackets if using more than one processor (since the number of processors can only be an even number: currently 2, 4 or 8).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;The database&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The most time-consuming part of a dynamics run is the GAUSSIAN CASSCF calculations. The results of these calculations can be stored in a database and re-used in future runs. The user must choose whether or not to read and/or write a database. Each calculation will write a separate database so the databases from each run must be combined (and any duplicate entries removed (to save space)).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Initial momentum&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
An initial momentum can be specified to direct the wavepacket to a particular area of the PES (e.g. towards a conical intersection, a transition state or minimum geometry). The momentum is given as a geometry (in frequency mass weighted normal coordinates). The dd_rotation program used for rotation of the conical intersection can be used to transform the coordinates of the desired geometry. If the user requests an initial momentum, dd_generator will search for a file called momentum.dat. If this file is found, dd_generator will ask if the user wishes to use the momentum specified in it. The user can then specify how much energy to give (in eV). Thus, the values in momentum.dat need only be relative values (since they will be multiplied by a scaling factor to provide the total number of eV requested). If there is no file called momentum.dat in the appropriate folder, the user will not be asked to specify a total number of eV to give to the wavepacket(s). A momentum can still be added by manually modifying the .inp file after the dd_generator script has been run (replace the zero values in the fifth column of the section of the .inp file entitled INIT_WF-SECTION). However, it is simpler to create the momentum.dat file mainly because if the user edits the .inp file directly, there is no way of knowing what the total excess energy will be: the values listed in .inp also incorporate magnitude (not just relative values as in momentum.dat). &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Memory and number of processors&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
In template.dat, the memory for each GAUSSIAN CASSCF calculation is specified. In the .job file (created by dd_generator from user input) the total memory is specified. Thus, the memory specified in .job must be at least as great as the memory given in template.dat multiplied by the number of processors.&lt;br /&gt;
&lt;br /&gt;
The GAUSSIAN calculations for each wavepacket will run on a single processor. If the user specifies more than one processor then the calculations for each wavepacket can run simultaneously. To ensure efficient use of computing resources, always specify an even number of wavepackets when using more than one processor (since the number of processors can only be an even number: currently 2, 4 or 8).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Symmetry Considerations&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The way the diabatisation is performed in mctdh90.31dv sometimes leads to complications involving symmetry.  The diabatic states are defined using the conical intersection (or other geometry) described in coin.log. If the molecule is highly symmetric, there will be more than one conical intersection (all identical by symmetry). If the wavepacket moves close to one of the other conical intersections that is not described in coin.log, the diabatic states may not be properly described in this area of the PES. This of course means that the behaviour of the wavepacket(s) is likely to be described poorly also.&lt;br /&gt;
&lt;br /&gt;
If the conical intersection has lower symmetry than the starting material, the symmetry must necessarily be broken during the dynamics calculation before the conical intersection is reached. The breaking of each mode will occur either due to the accumulation of small numerical inaccuracies or if a momentum is given which forces particular modes to break symmetry.&lt;br /&gt;
Mctdh90.31dv uses frequency-mass-weighted normal coordinates to describe molecular geometries. Each frequency-mass-weighted coordinate corresponds to a vibration of the molecule (and there are therefore 3N-6 coordinates). Displacements of atoms are described by a (or a combination of) vibration(s). Each vibration can be displaced in one of two directions: positive or negative. The 3N-6 frequency-mass-weighted coordinates can be classified by symmetry. Whether a particular symmetry mode is broken in the positive or negative direction will be equally likely if no initial momentum is given. Thus for each mode that is broken during a simulation the symmetry may break in the positive direction or the negative direction. There will be 2&amp;lt;sup&amp;gt;x&amp;lt;/sup&amp;gt; possible conical intersections corresponding to a particular starting geometry, where x is the number of modes that must be broken going from starting material to conical intersection.&lt;br /&gt;
&lt;br /&gt;
Additionally, care must be taken over atom labeling. It must be possible to transform the starting material into the conical intersection without permuting atom labels. If the conical intersection has been optimised by following the MEP downhill from the starting material this is not likely to be a problem. However, bear this in mind if drawing the conical intersection by hand.  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Creating the Directories&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* First of all, create a folder in which to save the calculations in your $HOME and $WORK directories. Create a directory in $HOME, and an identical directory in $WORK that has the same path. Keep pathlengths as short as possible (if the total path becomes too long the dynamics code will not run). For simplicity, in this case, we are going to assume that this directory is named &#039;&#039;fulv&#039;&#039; (for fulvene).&lt;br /&gt;
&lt;br /&gt;
     mkdir fulv&lt;br /&gt;
&lt;br /&gt;
* Create a subdirectory called &#039;&#039;&#039;dd_data&#039;&#039;&#039; in the new directory in $WORK.  Thus you should start with:&lt;br /&gt;
&lt;br /&gt;
    /home/$USER/fulv&lt;br /&gt;
    /work/$USER/fulv/dd_data&lt;br /&gt;
&lt;br /&gt;
* Important Note: it is essential to have the same path in both directories, $HOME and $WORK. Do not change the path-names within the HOME/WORK directories. If you re-name or move any subdirectory in your, for example HOME directory, you have to be consistent and make the same changes in the $WORK directory.&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Gaussian Output to be Used as Input for the Dynamics Program&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* Populate the new directory /work/$USER/buta/dd_data with four files which must be named: &#039;&#039;&#039;coin.log&#039;&#039;&#039;; &#039;&#039;&#039;start.fchk&#039;&#039;&#039;; &#039;&#039;&#039;start.log&#039;&#039;&#039;; and &#039;&#039;&#039;template.dat&#039;&#039;&#039;.These files are required in order to run any dynamics simulation, they are the basis that the script dd_generator (see the following section) will use to create the necessary files for running MCTDH (DD-vMCG).  You may also create a file named &amp;quot;&#039;momentum.dat&amp;quot;&#039; if you wish to give a momentum to the wavepacket(s) (this is optional and may be created later instead). &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;coin.log&#039;&#039;&#039; is the logfile resulting from the optimisation of the conical intersection. NB The MCTDH (DD-vMCG) program will rotate the conical intersection before starting the dynamics. To do this it must be provided with three angles which describe the appropriate rotation. There is an Excel spreadsheet available to calculate these angles (see the section entitled &amp;quot;Rotating the Conical Intersection&amp;quot;). NB the structure in coin.log need not necessarily be a true conical intersection: this point is only used for performing the diabatisation. Thus the diabatisation will be exact at this point and will become more approximate the further you are from it (on the PES). If you wish to use a point that is not a conical intersection, simply run a conical intersection optimisation (with only a single step) on the desired geometry. This will create a file with the same layout as a conical intersection optimisation output file (mctdh looks for certain things in this file so if some other type of .log file were used instead, it might not contain the required information). NB the final conical intersection log file must only contain one geometry (otherwise the dynamics program will not know which geometry to use). IS THIS STATEMENT TRUE FOR THIS VERSION??&lt;br /&gt;
&lt;br /&gt;
[[Media:Coin.log]]&lt;br /&gt;
&lt;br /&gt;
(Insert a link here to section &amp;quot;Rotating the Conical Intersection&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;start.chk&#039;&#039;&#039; is the checkpoint file from the high precision vibrational modes of the ground state with state averaged orbitals (with atom types rather than numbers)&lt;br /&gt;
[[Media:Start.chk]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;start.log&#039;&#039;&#039; is the log file from the high precision vibrational modes of the ground state with state averaged orbitals (with atom types rather than numbers)&lt;br /&gt;
&lt;br /&gt;
[[Media:Start.log]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;template.dat&#039;&#039;&#039; is a template for the creation of GAUSSIAN input files by the MCTDH (DD-vMCG) program. It contains all the mutual keywords of the GAUSSIAN calculations which will be run on-the-fly by MCTDH (DD-vMCG). It also contains other information relating to the GAUSSIAN calculations such as memory requirements.&lt;br /&gt;
 &lt;br /&gt;
[[Media:Template.dat]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;momentum.dat&#039;&#039;&#039; is a file containing a list of values to be used as vectors to indicate the momentum to be given to a particular (set of) wavepacket(s). The vectors must be listed in the order of the frequency-mass-weighted normal coordinates specified in the coin.out file (i.e. the output file from dd_rotation program). They give the magnitude of the momentum to be given along each of these frequency-mass-weighted normal coordinates. N.B. The signs of the values here are important!&lt;br /&gt;
We are not giving a momentum in this simulation.&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;The Generator&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* The &amp;quot;generator&amp;quot; script uses the GAUSSIAN output files (above) along with other information supplied by the user to create input files for MCTDH (DD-vMCG).&lt;br /&gt;
&lt;br /&gt;
* Navigate to /home/$USER/fulv and run the generator by typing:&lt;br /&gt;
&lt;br /&gt;
     dd_generator&lt;br /&gt;
&lt;br /&gt;
for the HPC Cluster, or &lt;br /&gt;
&lt;br /&gt;
     dd_generator_MAC&lt;br /&gt;
&lt;br /&gt;
for a MAC OS X system&lt;br /&gt;
&lt;br /&gt;
* Typing dd_generator will run the script automatically. After installing the MCTDH (DD-vMCG) package this command has been added to your list of executable commands. &lt;br /&gt;
&lt;br /&gt;
     ********************************************************************************&lt;br /&gt;
     ********************    -------  DD GENERATOR  --------    *****************&lt;br /&gt;
     ********************************************************************************&lt;br /&gt;
&lt;br /&gt;
* The generator will ask a series of questions and will use the answers provided to prepare the input files for the dynamics program. The questions it asks are listed below along with answers for a trial run on butadiene.&lt;br /&gt;
&lt;br /&gt;
==== List of questions asked by dd_generator====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;blockquote style=&amp;quot;background: white; border: 1px solid black; padding: 1em;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Question&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; &#039;&#039;&#039;Answer for this tutorial&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; &#039;&#039;&#039;Explanation&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Which version of GAUSSIAN should we use? (gdvh01|g03)&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; gdvh01 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;How many shared-memory processors should we use? (1|2|4|8)&lt;br /&gt;
N.B.: (ncpus=1) serial or (ncpus=2|4|8) parallel (omp) version of MCTDH launched as batch job&lt;br /&gt;
and launching monoprocessor GAUSSIAN interactive jobs (nprocshared=1 or no specification)&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 4 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the name of the molecule?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; fsto &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; The first four letters will be used to name the new files that the generator is creating &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the number of atoms?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 12 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;The number of nuclear degrees of freedom is 30.&lt;br /&gt;
Do you want to reduce the dimensionality? (y|n)&lt;br /&gt;
(N.B.: this can be used also for re-ordering the coordinates)&lt;br /&gt;
&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; n &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the number of nuclear Gaussian functions?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 4 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt; 4 means 4 gaussian on state 1 and 4 gaussian on state 2. This is the &amp;quot;single-set&amp;quot; implementation of MCTDH (DD-vMCG) therefore the gaussian wavepackets on state 1 are the same as the gaussian wavepackets on state 2.&amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;&#039;What is the final propagation time (in fs)?&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 150 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the propagation time step (in fs)?&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 0.1 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the number of electronic states? (1|2)&#039;&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 2 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the highest electronic root?&#039;&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 2 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;From which electronic state should the wavepacket start? (2|1)&#039;&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 2 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Will there be an initial momentum given to the wavepacket? (y|n)&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; n &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Do you want to add a reference label to the name of the case? (y|n)&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; y &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Please type your text:&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; trial &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;This question is only asked if the answer to the previous question was yes.  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What will be the status of the database? (rdwr|rd|wr|none)&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; none &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; Choose rd for read, wr for write etc. In this case we are not going to use the database, but if it was used (rd or rdwr is specified) the script would ask the user to specify the threshold below which the database values will be used (%). In this case the value none is chosen so this question is not asked.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;&amp;gt;&amp;gt; Manual rotation (using Excel spreadsheet) &amp;lt;&amp;lt;&lt;br /&gt;
   Please type the values of the three Euler angles (in deg)&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 0&lt;br /&gt;
0&lt;br /&gt;
0 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Tuple from the dd_rotation method (insert link)&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;The generator will now tell you that it has read the files start.chk from the folder /work/$USER/fulv/dd_data/ .&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Files created by the generator&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* The generator will now tell you that it has read the files start.log, coin.log and momentum.dat (if a momentum has been specified) from the folder /work/$USER/fulv/dd_data/:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
   about to read parameters...&lt;br /&gt;
   ... parameters just read&lt;br /&gt;
   about to read file /work/vs13/fulv/dd_data/start.log                   &lt;br /&gt;
                                                               ...&lt;br /&gt;
   ... file /work/vs13/fulv/dd_data/start.log                             &lt;br /&gt;
                                                      read successfully&lt;br /&gt;
   about to read file /work/vs13/fulv/dd_data/coin.log                    &lt;br /&gt;
                                                               ...&lt;br /&gt;
 *********************************************************&lt;br /&gt;
 Mass-weighted displacement from start to coin:&lt;br /&gt;
    old total norm: 22.070387&lt;br /&gt;
    new total norm:  4.669035&lt;br /&gt;
  vibrational part:  4.669035&lt;br /&gt;
   rotational part:  0.000000&lt;br /&gt;
 *********************************************************&lt;br /&gt;
   ... file /work/vs13/fulv/dd_data/coin.log                             &lt;br /&gt;
                                                      read successfully&lt;br /&gt;
&amp;lt;/pre&amp;gt; &lt;br /&gt;
&lt;br /&gt;
and that the extraction of data and the creation of a summary file were done successfully. If the Mass-weighted displacement from start to coin appears as NaN it may be because the start.log contains atom numbers rather than atom types. You will need to redo the freq=hpmodes job with atom types.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Data extracted successfully&lt;br /&gt;
The summary of this file generation is in:&lt;br /&gt;
-rw-r--r--  1 vs13 hpc-users 3070 Dec  2 17:06 /home/vs13/fulv/fstodd4o.txt&lt;br /&gt;
 &lt;br /&gt;
Do not forget you still can add a momentum, change the integrator,&lt;br /&gt;
change convergence criteria for GAUSSIAN and MCTDH...&lt;br /&gt;
 &lt;br /&gt;
Do not forget to check the order of the atoms of the conical intersection geometry&lt;br /&gt;
in /work/vs13/fulv/dd_data/coin.log&lt;br /&gt;
 &lt;br /&gt;
Now go to your jobscript file and give values to the memory and walltime.&lt;br /&gt;
 &lt;br /&gt;
Good luck!&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* The dd_generator script has generated four files in the same directory (/home/$USER/fulv):&lt;br /&gt;
&lt;br /&gt;
# fstodd4p_trial.inp  &lt;br /&gt;
# fstodd4p_trial.job  &lt;br /&gt;
# fstodd4p_trial.txt  &lt;br /&gt;
# fstodd_none.op&lt;br /&gt;
&lt;br /&gt;
(Link to a more detailed explanation of this files)&lt;br /&gt;
&lt;br /&gt;
* The script has also created some files and directories in /work/$USER/fulv where the MCTDH (DD-vMCG) and GAUSSIAN calculations will be stored:&lt;br /&gt;
&lt;br /&gt;
1) Directories:&lt;br /&gt;
&lt;br /&gt;
* fstodd4p_trial&lt;br /&gt;
* fstodd4p_trial/dd_data&lt;br /&gt;
&lt;br /&gt;
2) Files (in fstodd4o_trial/dd_data):&lt;br /&gt;
&lt;br /&gt;
# refdb.dat &lt;br /&gt;
# start.chk  &lt;br /&gt;
# template.dat&lt;br /&gt;
# forward.dat&lt;br /&gt;
# backward.dat&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Modifications to be made to the files before running the dynamics&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* In the .job file in /home/$USER/fulv specify the memory (in this case use 4000MB) and walltime (72:00:00) if you are in the HPC Cluster.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* When running a development version of GAUSSIAN (gdvg03 or gdvg01), copy the start.chk file into the folder /work/$USER/dyn_90dev/but1dd1p_trial/dd_data. The unformatted checkpoint file from start.fchk that dd_generator has created is corrupted (due to a bug in formchk in gdvg01).&lt;br /&gt;
has this been fixed?&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Running the dynamics&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* Navigate to /home/$USER/fulv. Queue the job file. In this case, type:&lt;br /&gt;
&lt;br /&gt;
     qsub fstodd4p_trial.job&lt;br /&gt;
&lt;br /&gt;
for MAC OS X users the shell command is already written in fstodd4p_trial.job&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;The Database (DB)&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
The DB is made of four binary files:&lt;br /&gt;
geo.db&lt;br /&gt;
pes.db&lt;br /&gt;
gra.db&lt;br /&gt;
hes.db&lt;br /&gt;
They can be used in place of GAUSSIAN calculations to save some&lt;br /&gt;
computation time when you ask for DBrd or DBrdwr.&lt;br /&gt;
&lt;br /&gt;
Each set of geometry, energy, gradient and Hessian (the latter&lt;br /&gt;
three quantities having been calculated by GAUSSIAN for the two&lt;br /&gt;
adiabatic electronic states) will be called a DB record and&lt;br /&gt;
assigned a record number defining the order of occurrence in the DB.&lt;br /&gt;
If you run a calculation where the DB is to be read, in the *.res&lt;br /&gt;
file that you obtain after the calculation is done (file that&lt;br /&gt;
actually is a redirection of the standard output) you will see the&lt;br /&gt;
number of records in the DB as it grows.&lt;br /&gt;
Example (formaldehyde, multi-set 1+1):&lt;br /&gt;
          53&lt;br /&gt;
 s=  1 e=  1 t=   0.000 V1=   0.001 V2=   4.533 H11=   0.001 H22=&lt;br /&gt;
 4.533 H12=   0.000 q=   0.0000    0.0000    0.0000    0.0000&lt;br /&gt;
 0.0000    0.0000&lt;br /&gt;
          53&lt;br /&gt;
 s=  2 e=  1 t=   0.000 V1=   0.001 V2=   4.533 H11=   0.001 H22=&lt;br /&gt;
 4.533 H12=   0.000 q=   0.0000    0.0000    0.0000    0.0000&lt;br /&gt;
 0.0000    0.0000&lt;br /&gt;
          53&lt;br /&gt;
 s=  1 e=  1 t=   0.500 V1=   0.197 V2=   4.701 H11=   0.211 H22=&lt;br /&gt;
 4.687 H12=   0.251 q=  -0.6258   -0.6146    0.6136    0.6049&lt;br /&gt;
 -0.5520   -0.0616&lt;br /&gt;
          53&lt;br /&gt;
 s=  2 e=  1 t=   0.500 V1=   0.000 V2=   4.533 H11=   0.000 H22=&lt;br /&gt;
 4.533 H12=  -0.001 q=   0.0009    0.0009    0.0093   -0.0245&lt;br /&gt;
 -0.0066    0.0001&lt;br /&gt;
          53&lt;br /&gt;
 &lt;br /&gt;
 ERROR in subroutine Distdb :&lt;br /&gt;
 Redundant records in Data Base:   18   19&lt;br /&gt;
 s=  1 e=  1 t=   1.000 V1=   0.469 V2=   4.455 H11=   0.479 H22=&lt;br /&gt;
 4.445 H12=   0.200 q=  -0.4640   -0.5641    1.2594   -0.5871&lt;br /&gt;
 -1.0864   -0.1120&lt;br /&gt;
          53&lt;br /&gt;
 s=  2 e=  1 t=   1.000 V1=   0.001 V2=   4.473 H11=   0.001 H22=&lt;br /&gt;
 4.473 H12=  -0.002 q=   0.0003    0.0004    0.0404   -0.0944&lt;br /&gt;
 -0.0292    0.0001&lt;br /&gt;
          53&lt;br /&gt;
 s=  1 e=  1 t=   1.500 V1=   0.113 V2=   4.543 H11=   0.120 H22=&lt;br /&gt;
 4.536 H12=   0.170 q=  -0.3994   -0.4377    0.5444    0.2057&lt;br /&gt;
 -0.5149   -0.0638&lt;br /&gt;
          53&lt;br /&gt;
 s=  2 e=  1 t=   1.500 V1=   0.013 V2=   4.390 H11=   0.013 H22=&lt;br /&gt;
 4.390 H12=  -0.005 q=   0.0009    0.0010    0.0897   -0.2104&lt;br /&gt;
 -0.0634    0.0002&lt;br /&gt;
          53&lt;br /&gt;
 s=  1 e=  1 t=   2.000 V1=   0.068 V2=   4.431 H11=   0.071 H22=&lt;br /&gt;
 4.428 H12=   0.110 q=  -0.2751   -0.3274    0.4796   -0.0812&lt;br /&gt;
 -0.3880   -0.0605&lt;br /&gt;
          54&lt;br /&gt;
 s=  2 e=  1 t=   2.000 V1=   0.019 V2=   4.367 H11=   0.019 H22=&lt;br /&gt;
 4.367 H12=  -0.009 q=   0.0012    0.0013    0.1563   -0.3658&lt;br /&gt;
 -0.1058    0.0003&lt;br /&gt;
          54&lt;br /&gt;
 s=  1 e=  1 t=   2.500 V1=   0.064 V2=   4.273 H11=   0.065 H22=&lt;br /&gt;
 4.272 H12=  -0.064 q=   0.2559    0.0914    0.1691   -0.7218&lt;br /&gt;
 -0.1052   -0.0595&lt;br /&gt;
          55&lt;br /&gt;
 s=  2 e=  1 t=   2.500 V1=   0.070 V2=   4.258 H11=   0.070 H22=&lt;br /&gt;
 4.257 H12=  -0.013 q=   0.0013    0.0015    0.2384   -0.5572&lt;br /&gt;
 -0.1528    0.0004&lt;br /&gt;
&lt;br /&gt;
Here, we started with a DB of 53 records. It is large enough until&lt;br /&gt;
2 fs, where an additional record is produced, and so on.&lt;br /&gt;
The error message saying here that records 18 and 19 are identical&lt;br /&gt;
will not prevent the code from working. It is just here to remind you&lt;br /&gt;
that the DB is not clean in that it has redundant records.&lt;br /&gt;
This is to be prevented as the DB files might become large quite&lt;br /&gt;
rapidly and all records will be read at each update time (dd_update&lt;br /&gt;
= tout in the integrator section, tout = xxx fs in the run section&lt;br /&gt;
of the *.inp file) for each Gaussian function.&lt;br /&gt;
&lt;br /&gt;
Incidentally, when you want to analyse results written to a *.res&lt;br /&gt;
file, you need to look for lines starting with &amp;quot;s=&amp;quot; (other lines&lt;br /&gt;
are various messages and numbers of DB records).&lt;br /&gt;
The criterion for using the DB is to be seen as a maximum-allowed&lt;br /&gt;
relative difference&lt;br /&gt;
&lt;br /&gt;
So, it is up to you to clean the DB when you see this, and to keep&lt;br /&gt;
this in mind when you concatenate DBs that have branched in their&lt;br /&gt;
past (see more details below).&lt;br /&gt;
&lt;br /&gt;
Also, a given DB depends on the choice of a reference geometry in&lt;br /&gt;
Cartesian coordinates because geometries written to the DB files&lt;br /&gt;
will always be re-orientated with respect to this particular&lt;br /&gt;
geometry. The back and forth transformations are performed by MCTDH (DD-vMCG)&lt;br /&gt;
so you don&#039;t need not worry about this.&lt;br /&gt;
This geometry is written to refdb.dat. It is the starting geometry&lt;br /&gt;
that comes from start.log (the only difference being that it is&lt;br /&gt;
mass-centred).&lt;br /&gt;
As long as you do not change the starting geometry or the nature&lt;br /&gt;
of the electronic states, you can thus keep growing the DB of your&lt;br /&gt;
system.&lt;br /&gt;
&lt;br /&gt;
MANAGING THE DATA BASE&lt;br /&gt;
&lt;br /&gt;
A set of DB  programs can be found in XXXXX. Their roles are&lt;br /&gt;
explained below.&lt;br /&gt;
For now, the sources are in dd_utildev and dd_util.31dv and the&lt;br /&gt;
executables are in mctdh90dev/bin and mctdh90.31dv/bin, so you can&lt;br /&gt;
call them from anywhere, as long as DB files are there.&lt;br /&gt;
&lt;br /&gt;
1) countdb.out: returns the number of records of the current DB&lt;br /&gt;
2) cleandb.out: &amp;quot;brute-force&amp;quot; cleaning of the current DB. This&lt;br /&gt;
might be too long to be run interactively when the number of&lt;br /&gt;
records is too large, because each record needs to be compared to&lt;br /&gt;
each other record (e.g. a DB with ca. 3800 records will take a couple of minutes to clean interactively). If so, run in batch mode (ask me or Marta if you&lt;br /&gt;
have a doubt).&lt;br /&gt;
The cleaned files are:&lt;br /&gt;
geoclean.db&lt;br /&gt;
pesclean.db&lt;br /&gt;
graclean.db&lt;br /&gt;
hesclean.db&lt;br /&gt;
You need to rename them without &#039;clean&#039; for them to be used as a DB.&lt;br /&gt;
3) cutdb.out: allows you to cut out the beginning of a DB.&lt;br /&gt;
This is to be used in the following situation:&lt;br /&gt;
- You start from a mother DB, DB0, assumed to be clean, with N0&lt;br /&gt;
records.&lt;br /&gt;
- You want to use DB0 in two independent calculations. You&lt;br /&gt;
replicate DB0 to daughter DBs, DB1 and DB2.&lt;br /&gt;
- When these calculations are done, DB1 and DB2 have grown to N0+N1&lt;br /&gt;
and N0+N2 records, respectively.&lt;br /&gt;
- You want to concatenate them to create a new mother DB, DB3.&lt;br /&gt;
- DB1 and DB2 have their N0 first records the same. To avoid&lt;br /&gt;
redundant records, you need to cut N0 records from DB2 for example.&lt;br /&gt;
--&amp;gt; go to where DB2 is and use cleandb.out&lt;br /&gt;
The resulting files are:&lt;br /&gt;
geocut.db&lt;br /&gt;
pescut.db&lt;br /&gt;
gracut.db&lt;br /&gt;
hescut.db&lt;br /&gt;
these have N1 records.&lt;br /&gt;
--&amp;gt; rename DB1, for instance geo.db1 etc., and concatenate the files:&lt;br /&gt;
cat geo.db1 geoclean.db &amp;gt; geo.db&lt;br /&gt;
etc.&lt;br /&gt;
- Your new mother DB, DB3, should now have N0+N1+N2 distinct records.&lt;br /&gt;
4) deldb.out: allows you to remove one selected record (for&lt;br /&gt;
instance if corrupted) from the DB if you know its number.&lt;br /&gt;
The resulting files are:&lt;br /&gt;
geodel.db&lt;br /&gt;
pesdel.db&lt;br /&gt;
gradel.db&lt;br /&gt;
hesdel.db&lt;br /&gt;
You need to rename them without &#039;del&#039; for them to be used as a DB.&lt;br /&gt;
5) seedb.out: allows you extract one selected record from the&lt;br /&gt;
binary files for reading it (the record is not removed from the DB).&lt;br /&gt;
The resulting file can be read as a text file (ascii) and is:&lt;br /&gt;
see.db&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Restarting dynamics jobs&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
The examples below make use of the directory and filenames in the examples above.&lt;br /&gt;
&lt;br /&gt;
A dynamics run can be restarted if the job was terminated before completion (e.g if it ran out of time or failed because of convergence problems) or if the user wishes to continue the job for a longer time period than had originally been specified. The program will continue writing the same output file but will overwrite the .res file. Thus the .res file should be saved under a different name to prevent loss of the data calculated in the original run. The .res is not written until the job stops so this can be done after the restart.&lt;br /&gt;
&lt;br /&gt;
*To increase the final propagation time&lt;br /&gt;
&lt;br /&gt;
Retrieve the .inp file (in $HOME/fulv) and change &#039;&#039;propagation&#039;&#039; to &#039;&#039;continuation&#039;&#039; in the section entitled RUN-SECTION. Then change the final time &#039;&#039;tfinal&#039;&#039; to a larger value. (NB this new value should include the time already done).&lt;br /&gt;
&lt;br /&gt;
Re-queue the job.&lt;br /&gt;
&lt;br /&gt;
*To increase the number of scf cycles (the most common reason for convergence failure)&lt;br /&gt;
&lt;br /&gt;
Edit the template.dat file in $WORK/fulv/fstodd4p_trial/dd_data. Insert scf=(maxcycle=128) on the keyword line (for example). It is important that you change the template.dat file in the fstodd4p_trial/dd_data folder that was created by dd_generator (rather than the one created by the user in $WORK/fulv/dd_data) because the original $WORK/fulv/dd_data/template.dat file is only read by dd_generator and used to create the job-specific file in the job folder. (Of course if you wish all future jobs run in $WORK/fulv  to have increased scf cycles, change the other template.dat file in $WORK/buta/dd_data too.)&lt;br /&gt;
&lt;br /&gt;
Re-queue the job.&lt;br /&gt;
&lt;br /&gt;
*To increase the run-time so that a job will finish&lt;br /&gt;
&lt;br /&gt;
Edit the walltime in the .job file in the $HOME directory and re-queue the job.&lt;br /&gt;
&lt;br /&gt;
=&#039;&#039;&#039;Analysis of the results&#039;&#039;&#039;=&lt;br /&gt;
&lt;br /&gt;
The most important files are the output and .res files.&lt;br /&gt;
&lt;br /&gt;
=== Detailed information about files and directories ===&lt;br /&gt;
&lt;br /&gt;
*output&lt;br /&gt;
&lt;br /&gt;
The output contains some standard results:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Time&#039;&#039;&#039;: time in fs.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;CPU&#039;&#039;&#039;:  CPU time in s.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Norm&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;E-tot&#039;&#039;&#039;: the total energy in eV. This value should be conserved (i.e by the end of the run the E-tot value should not be too different  from what it was a time=0).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;E-corr&#039;&#039;&#039;: correlated Hamiltonian energy&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Delta-E&#039;&#039;&#039;: diference between E-tot at time t=0 and the current time t&lt;br /&gt;
&lt;br /&gt;
Note: In a multi-packet run, i.e. when npacket &amp;gt; 1, the total energy and the norm of the wavefunction, as given in the &amp;quot;total&amp;quot; part, are averaged over the packets.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;population&#039;&#039;&#039; : diabatic populations of state 1 and state 2 (in that order) at the current time t&lt;br /&gt;
&lt;br /&gt;
For every mode:	&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt; q &amp;gt;&#039;&#039;&#039;: position expectation value&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;dq&amp;gt;&#039;&#039;&#039;: standard deviation Sqrt[&amp;lt; q&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt; &amp;gt; - &amp;lt; q &amp;gt;&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt; p &amp;gt;&#039;&#039;&#039; : momentum expectation value&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;dq&amp;gt;&#039;&#039;&#039;: standard deviation Sqrt[&amp;lt; p&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt; &amp;gt; - &amp;lt; p &amp;gt;&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*.res&lt;br /&gt;
&lt;br /&gt;
This file contains the energy of each state (diabatic and adiabatic) at each timestep for each gaussian function:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;s&#039;&#039;&#039; is a redundant value in mctdh90.31dv. It is only meaningful in multi-set implementations of mctdh (where there are double the number of gaussian functions than specified: one for each state). (It indicates whether the gaussian function in question is on the lower (1) or upper (2) state. (In the single set implementation, the gaussian functions on each state are identical)).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;e&#039;&#039;&#039; is a label given to each gaussian function&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;t&#039;&#039;&#039; is the current time in fs&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;V1&#039;&#039;&#039; is the energy of the lower adiabatic state at time t&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;V2&#039;&#039;&#039; is the energy of the upper adiabatic state at time t&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;H11&#039;&#039;&#039; is the energy of the lower diabatic state at time t&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;H22&#039;&#039;&#039; is the energy of the upper diabatic state at time t&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;H12&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;q&#039;&#039;&#039; is the list of frequency mass-weighted normal coordinates that describe the geometry at time t&lt;br /&gt;
&lt;br /&gt;
The end of the file will read something like: &lt;br /&gt;
&lt;br /&gt;
     Propagation was successful.&lt;br /&gt;
     &lt;br /&gt;
     Total time     [h:m:s] :    0 :  1 : 21.60&lt;br /&gt;
     &lt;br /&gt;
      ---------------------------------------------------------------------------&lt;br /&gt;
      ------ Host: &amp;quot;cx1-3-2-4&amp;quot; ----------Sat Jan 17 06:50:20 2009&lt;br /&gt;
&lt;br /&gt;
The other most common result is that the calculation aborted because of scf convergence problems in the CASSCF GAUSSIAN calculations. In this case the ouput file will break off after the last complete step and the end of the .res file will read something like:&lt;br /&gt;
     ERROR in subroutine Getddpes :&lt;br /&gt;
     CAS convergence failed for gwp on state:    1    1&lt;br /&gt;
&lt;br /&gt;
If the job terminates due to scf convergence problems, it may be possible to restart it after modifying the .inp and/or .job and/or template.dat files.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*log&lt;br /&gt;
&lt;br /&gt;
This file contains information such as the source code version, type of calculation performed, integrator used, numerical parameters, which data files are opened, any error messages, and much more. The information provided by the log file can be very helpful, in particular when searching for errors. One should always carefully inspect the log file.&lt;br /&gt;
&lt;br /&gt;
* dvr&lt;br /&gt;
&lt;br /&gt;
* oper&lt;br /&gt;
&lt;br /&gt;
*ddpeserr&lt;br /&gt;
&lt;br /&gt;
*input&lt;br /&gt;
&lt;br /&gt;
*op.log&lt;br /&gt;
&lt;br /&gt;
*psi&lt;br /&gt;
&lt;br /&gt;
*check&lt;br /&gt;
&lt;br /&gt;
*auto&lt;br /&gt;
&lt;br /&gt;
*ddpes&lt;br /&gt;
&lt;br /&gt;
*restart&lt;br /&gt;
&lt;br /&gt;
*stop&lt;br /&gt;
&lt;br /&gt;
*speed&lt;br /&gt;
&lt;br /&gt;
*timing&lt;br /&gt;
&lt;br /&gt;
*update&lt;br /&gt;
&lt;br /&gt;
=== Example: fulvene ===&lt;br /&gt;
&lt;br /&gt;
*Examine the end of the output file to check that the calculation ran to completion.&lt;br /&gt;
     &lt;br /&gt;
*Plot the energy of the diabatic and adiabatic states over time (.res file: V1, V2, H11 and H22). Calculate V2-V1 and H22-H11 and plot these also. H12 may also be plotted on the same graph.&lt;br /&gt;
[[Image:EnergyofStates.png]]&lt;br /&gt;
&lt;br /&gt;
The diabatic states cross at 176.2 fs and the adiabatic states cross at 174.5 fs. At a conical intersection, the value V2-V1 will become negative and the H22-H11 will be a minimum (&amp;lt;1eV). Ideally these crossings will occur at the same time. If the diabatisation has worked well, after V2-V1 becomes negative, V2-V1 and H22-H11 will become mirror images (i.e. the diabatic and adiabatic states follow each other). &lt;br /&gt;
&lt;br /&gt;
*Plot the value of the total energy over time (.res file: E-tot). Verify that the Delta-E value is not too large (compare with the total energy (E-tot) at time 0).&lt;br /&gt;
[[Image:TotalEnergy.png]]&lt;br /&gt;
&lt;br /&gt;
*Plot the population of one of the (diabatic) states over time (.res file: population).&lt;br /&gt;
[[Image:Population.png]]&lt;br /&gt;
&lt;br /&gt;
At the conical intersection the population transfer is large. In this case the job has been terminated after 200 fs. Usually the calculation should be continued until the populations stabilise (which obviously has not happened in this case).&lt;br /&gt;
&lt;br /&gt;
=== Making a Movie ===&lt;br /&gt;
&lt;br /&gt;
Navigate to /work/$USER/fulv/fstodd4p_trial (the place where the .res file was written). Type:&lt;br /&gt;
 movie.x&lt;br /&gt;
* The script will ask a series of questions and will use the answers provided to create a file that can be read into Molden or iMol.&lt;br /&gt;
&lt;br /&gt;
==== List of questions asked by dd_movie.out====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;blockquote style=&amp;quot;background: white; border: 1px solid black; padding: 1em;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Question&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; &#039;&#039;&#039;Answer for this tutorial&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; &#039;&#039;&#039;Explanation&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the number of atoms?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 12 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the actual number of active coordinates?&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 30 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; In this case all coordinates were active (so there are 3N-6 where N is the number of atoms) &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Name of result file to read?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; fstodd4p_trial.res &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;Ensure that the forward.dat and backward.dat files are located in the current directory in the folder dd_data (they will have been written there automatically)&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Name of movie file to write?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; e1.xyz &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; Choose any name .xyz &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Which electronic state (s=...)?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 1 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;Choose 1 (this question dates from the multi-set implementation of mctdh where the wavepackets on each state were different)  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Which Gaussian function (e=...)?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 1 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;In this case we can chose between 4 wavepackets&amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;The script will now return the number of lines and the initial number of points&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
number of lines:        4684&lt;br /&gt;
initial number of points:        1501&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Maximum number of points you want?&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 1501 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The .xyz file is ready to be opened in Molden or iMol.&lt;br /&gt;
&lt;br /&gt;
= &#039;&#039;&#039;Current Known Bugs&#039;&#039;&#039; =&lt;br /&gt;
&lt;br /&gt;
Parallelisation:&lt;br /&gt;
&lt;br /&gt;
It is not possible to run calculations in parallel with version 90.31dv (reading the same template.dat file simultaneously by each processor is causing problems). In 90.35tmp this is ok. In 90.4X it will also be fixed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Total energy:&lt;br /&gt;
&lt;br /&gt;
1) The total energy is sometimes &amp;quot;artificially&amp;quot; increased by a lot. If so, try a different integrator or play around with the timestep (may need to get larger or smaller). Or try increasing scf convergence to 10&amp;lt;sup&amp;gt;-12&amp;lt;/sup&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
2) If Delta-E suddenly becomes too large, you can get the following message: &lt;br /&gt;
&amp;quot;ERROR in subroutine WRGAUSSIAN :&lt;br /&gt;
 Do not use $Swap:...$ metastring in file /.../template.dat&amp;quot;&lt;br /&gt;
Often, when getting this message, no more steps are added to the simulation, although the calculation seems to keep running (the integrator keeps trying and failing).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Using the database:&lt;br /&gt;
&lt;br /&gt;
1) Every record generated with mctdh90.31dev and several GWPs is corrupted, so, for now, when launching calculations with more that one wavepacket, use &amp;quot;formdd_none.op&amp;quot; (i.e. do not read nor write the database).&lt;br /&gt;
[For instance, when using dbrdwr and starting from a clean db, all newly generated records are added to the existing database, even if they are identical to records that were already written in the db.]  In 90.35tmp this is ok. In 90.4X it will also be fixed.&lt;br /&gt;
&lt;br /&gt;
2) Records obtained in calculations with one GWP should be OK, but this is still to be confirmed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Impossible case&amp;quot;:&lt;br /&gt;
&lt;br /&gt;
Error message that forces the calculation to stop. It seems to be associated with moving towards an &amp;quot;unexpected&amp;quot; geometry (e.g. a radical).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
State Averaging:&lt;br /&gt;
&lt;br /&gt;
To increase the threshold above which stateaveraging is turned off, increase the default value of 10 (to e.g. 50)  in the line &#039;&#039;ddregions&#039;&#039; in the OPERATOR-SECTION of the .inp file.&lt;br /&gt;
&lt;br /&gt;
= &#039;&#039;&#039;Questions and Modifications to be made to this wiki&#039;&#039;&#039; =&lt;br /&gt;
&lt;br /&gt;
*Why we would ever need to start the gwps from the lower state? To study GS rxns; chemiluminesence (eg glowworms).&lt;br /&gt;
*In terms of Delta-E, how much is too much? ca1eV but shape of E-tot vs time is important: discontiunities or v flat then steep increase are less reliable than smooth gradual increases.&lt;br /&gt;
*Benjamin: Note that Marta has noticed that for very strange geometries, you may receive an error message saying &amp;quot;impossible case&amp;quot;, which stops MCTDH. It is too complicated to explain here. I know where this happens in the code, and I should prevent this error to stop the code but I didn&#039;t have time to fix this. I&#039;ll do it soon.&lt;br /&gt;
*Need to edit/correct section on the DB.&lt;br /&gt;
*Is does unfchk in gdvg03 create corrupted fchk files? G03 is fine. we don&#039;t know about gdvg03 but we don&#039;t care because we probablly won&#039;t use it.&lt;br /&gt;
&lt;br /&gt;
=== [[Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial|back]] ===&lt;/div&gt;</summary>
		<author><name>Vs13</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=File:Fulv_totalE.png&amp;diff=333957</id>
		<title>File:Fulv totalE.png</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=File:Fulv_totalE.png&amp;diff=333957"/>
		<updated>2013-04-29T11:48:21Z</updated>

		<summary type="html">&lt;p&gt;Vs13: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Vs13</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=File:Fulv_pop.png&amp;diff=333956</id>
		<title>File:Fulv pop.png</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=File:Fulv_pop.png&amp;diff=333956"/>
		<updated>2013-04-29T11:47:54Z</updated>

		<summary type="html">&lt;p&gt;Vs13: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Vs13</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=File:Fulv1.png&amp;diff=333955</id>
		<title>File:Fulv1.png</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=File:Fulv1.png&amp;diff=333955"/>
		<updated>2013-04-29T11:47:24Z</updated>

		<summary type="html">&lt;p&gt;Vs13: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Vs13</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/run&amp;diff=333954</id>
		<title>Resgrp:comp-photo-dyn/mctdh90.56dv Fulvene Tutorial/run</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/run&amp;diff=333954"/>
		<updated>2013-04-29T11:43:52Z</updated>

		<summary type="html">&lt;p&gt;Vs13: /* Making a Movie */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= &#039;&#039;&#039;Basic use of the MCTDH (DD-vMCG) package&#039;&#039;&#039; =&lt;br /&gt;
&lt;br /&gt;
A script called dd_generator uses GAUSSIAN output files and user input to write the input files for mctdh (DD-vMCG).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Notes&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;The number of gaussian wavepackets (requested by the dd_generator script)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
When studying a new system, start with one (to keep calculation times short). When an appropriate momentum, time period, time step and integrator have been established, increase the number of wavepackets until the results are not changed by adding more. Calculation times are proportional to the number of wavepackets. To ensure efficient use of computing resources, always specify an even number of wavepackets if using more than one processor (since the number of processors can only be an even number: currently 2, 4 or 8).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;The database&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The most time-consuming part of a dynamics run is the GAUSSIAN CASSCF calculations. The results of these calculations can be stored in a database and re-used in future runs. The user must choose whether or not to read and/or write a database. Each calculation will write a separate database so the databases from each run must be combined (and any duplicate entries removed (to save space)).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Initial momentum&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
An initial momentum can be specified to direct the wavepacket to a particular area of the PES (e.g. towards a conical intersection, a transition state or minimum geometry). The momentum is given as a geometry (in frequency mass weighted normal coordinates). The dd_rotation program used for rotation of the conical intersection can be used to transform the coordinates of the desired geometry. If the user requests an initial momentum, dd_generator will search for a file called momentum.dat. If this file is found, dd_generator will ask if the user wishes to use the momentum specified in it. The user can then specify how much energy to give (in eV). Thus, the values in momentum.dat need only be relative values (since they will be multiplied by a scaling factor to provide the total number of eV requested). If there is no file called momentum.dat in the appropriate folder, the user will not be asked to specify a total number of eV to give to the wavepacket(s). A momentum can still be added by manually modifying the .inp file after the dd_generator script has been run (replace the zero values in the fifth column of the section of the .inp file entitled INIT_WF-SECTION). However, it is simpler to create the momentum.dat file mainly because if the user edits the .inp file directly, there is no way of knowing what the total excess energy will be: the values listed in .inp also incorporate magnitude (not just relative values as in momentum.dat). &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Memory and number of processors&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
In template.dat, the memory for each GAUSSIAN CASSCF calculation is specified. In the .job file (created by dd_generator from user input) the total memory is specified. Thus, the memory specified in .job must be at least as great as the memory given in template.dat multiplied by the number of processors.&lt;br /&gt;
&lt;br /&gt;
The GAUSSIAN calculations for each wavepacket will run on a single processor. If the user specifies more than one processor then the calculations for each wavepacket can run simultaneously. To ensure efficient use of computing resources, always specify an even number of wavepackets when using more than one processor (since the number of processors can only be an even number: currently 2, 4 or 8).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Symmetry Considerations&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The way the diabatisation is performed in mctdh90.31dv sometimes leads to complications involving symmetry.  The diabatic states are defined using the conical intersection (or other geometry) described in coin.log. If the molecule is highly symmetric, there will be more than one conical intersection (all identical by symmetry). If the wavepacket moves close to one of the other conical intersections that is not described in coin.log, the diabatic states may not be properly described in this area of the PES. This of course means that the behaviour of the wavepacket(s) is likely to be described poorly also.&lt;br /&gt;
&lt;br /&gt;
If the conical intersection has lower symmetry than the starting material, the symmetry must necessarily be broken during the dynamics calculation before the conical intersection is reached. The breaking of each mode will occur either due to the accumulation of small numerical inaccuracies or if a momentum is given which forces particular modes to break symmetry.&lt;br /&gt;
Mctdh90.31dv uses frequency-mass-weighted normal coordinates to describe molecular geometries. Each frequency-mass-weighted coordinate corresponds to a vibration of the molecule (and there are therefore 3N-6 coordinates). Displacements of atoms are described by a (or a combination of) vibration(s). Each vibration can be displaced in one of two directions: positive or negative. The 3N-6 frequency-mass-weighted coordinates can be classified by symmetry. Whether a particular symmetry mode is broken in the positive or negative direction will be equally likely if no initial momentum is given. Thus for each mode that is broken during a simulation the symmetry may break in the positive direction or the negative direction. There will be 2&amp;lt;sup&amp;gt;x&amp;lt;/sup&amp;gt; possible conical intersections corresponding to a particular starting geometry, where x is the number of modes that must be broken going from starting material to conical intersection.&lt;br /&gt;
&lt;br /&gt;
Additionally, care must be taken over atom labeling. It must be possible to transform the starting material into the conical intersection without permuting atom labels. If the conical intersection has been optimised by following the MEP downhill from the starting material this is not likely to be a problem. However, bear this in mind if drawing the conical intersection by hand.  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Creating the Directories&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* First of all, create a folder in which to save the calculations in your $HOME and $WORK directories. Create a directory in $HOME, and an identical directory in $WORK that has the same path. Keep pathlengths as short as possible (if the total path becomes too long the dynamics code will not run). For simplicity, in this case, we are going to assume that this directory is named &#039;&#039;fulv&#039;&#039; (for fulvene).&lt;br /&gt;
&lt;br /&gt;
     mkdir fulv&lt;br /&gt;
&lt;br /&gt;
* Create a subdirectory called &#039;&#039;&#039;dd_data&#039;&#039;&#039; in the new directory in $WORK.  Thus you should start with:&lt;br /&gt;
&lt;br /&gt;
    /home/$USER/fulv&lt;br /&gt;
    /work/$USER/fulv/dd_data&lt;br /&gt;
&lt;br /&gt;
* Important Note: it is essential to have the same path in both directories, $HOME and $WORK. Do not change the path-names within the HOME/WORK directories. If you re-name or move any subdirectory in your, for example HOME directory, you have to be consistent and make the same changes in the $WORK directory.&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Gaussian Output to be Used as Input for the Dynamics Program&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* Populate the new directory /work/$USER/buta/dd_data with four files which must be named: &#039;&#039;&#039;coin.log&#039;&#039;&#039;; &#039;&#039;&#039;start.fchk&#039;&#039;&#039;; &#039;&#039;&#039;start.log&#039;&#039;&#039;; and &#039;&#039;&#039;template.dat&#039;&#039;&#039;.These files are required in order to run any dynamics simulation, they are the basis that the script dd_generator (see the following section) will use to create the necessary files for running MCTDH (DD-vMCG).  You may also create a file named &amp;quot;&#039;momentum.dat&amp;quot;&#039; if you wish to give a momentum to the wavepacket(s) (this is optional and may be created later instead). &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;coin.log&#039;&#039;&#039; is the logfile resulting from the optimisation of the conical intersection. NB The MCTDH (DD-vMCG) program will rotate the conical intersection before starting the dynamics. To do this it must be provided with three angles which describe the appropriate rotation. There is an Excel spreadsheet available to calculate these angles (see the section entitled &amp;quot;Rotating the Conical Intersection&amp;quot;). NB the structure in coin.log need not necessarily be a true conical intersection: this point is only used for performing the diabatisation. Thus the diabatisation will be exact at this point and will become more approximate the further you are from it (on the PES). If you wish to use a point that is not a conical intersection, simply run a conical intersection optimisation (with only a single step) on the desired geometry. This will create a file with the same layout as a conical intersection optimisation output file (mctdh looks for certain things in this file so if some other type of .log file were used instead, it might not contain the required information). NB the final conical intersection log file must only contain one geometry (otherwise the dynamics program will not know which geometry to use). IS THIS STATEMENT TRUE FOR THIS VERSION??&lt;br /&gt;
&lt;br /&gt;
[[Media:Coin.log]]&lt;br /&gt;
&lt;br /&gt;
(Insert a link here to section &amp;quot;Rotating the Conical Intersection&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;start.chk&#039;&#039;&#039; is the checkpoint file from the high precision vibrational modes of the ground state with state averaged orbitals (with atom types rather than numbers)&lt;br /&gt;
[[Media:Start.chk]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;start.log&#039;&#039;&#039; is the log file from the high precision vibrational modes of the ground state with state averaged orbitals (with atom types rather than numbers)&lt;br /&gt;
&lt;br /&gt;
[[Media:Start.log]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;template.dat&#039;&#039;&#039; is a template for the creation of GAUSSIAN input files by the MCTDH (DD-vMCG) program. It contains all the mutual keywords of the GAUSSIAN calculations which will be run on-the-fly by MCTDH (DD-vMCG). It also contains other information relating to the GAUSSIAN calculations such as memory requirements.&lt;br /&gt;
 &lt;br /&gt;
[[Media:Template.dat]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;momentum.dat&#039;&#039;&#039; is a file containing a list of values to be used as vectors to indicate the momentum to be given to a particular (set of) wavepacket(s). The vectors must be listed in the order of the frequency-mass-weighted normal coordinates specified in the coin.out file (i.e. the output file from dd_rotation program). They give the magnitude of the momentum to be given along each of these frequency-mass-weighted normal coordinates. N.B. The signs of the values here are important!&lt;br /&gt;
We are not giving a momentum in this simulation.&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;The Generator&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* The &amp;quot;generator&amp;quot; script uses the GAUSSIAN output files (above) along with other information supplied by the user to create input files for MCTDH (DD-vMCG).&lt;br /&gt;
&lt;br /&gt;
* Navigate to /home/$USER/fulv and run the generator by typing:&lt;br /&gt;
&lt;br /&gt;
     dd_generator&lt;br /&gt;
&lt;br /&gt;
for the HPC Cluster, or &lt;br /&gt;
&lt;br /&gt;
     dd_generator_MAC&lt;br /&gt;
&lt;br /&gt;
for a MAC OS X system&lt;br /&gt;
&lt;br /&gt;
* Typing dd_generator will run the script automatically. After installing the MCTDH (DD-vMCG) package this command has been added to your list of executable commands. &lt;br /&gt;
&lt;br /&gt;
     ********************************************************************************&lt;br /&gt;
     ********************    -------  DD GENERATOR  --------    *****************&lt;br /&gt;
     ********************************************************************************&lt;br /&gt;
&lt;br /&gt;
* The generator will ask a series of questions and will use the answers provided to prepare the input files for the dynamics program. The questions it asks are listed below along with answers for a trial run on butadiene.&lt;br /&gt;
&lt;br /&gt;
==== List of questions asked by dd_generator====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;blockquote style=&amp;quot;background: white; border: 1px solid black; padding: 1em;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Question&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; &#039;&#039;&#039;Answer for this tutorial&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; &#039;&#039;&#039;Explanation&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Which version of GAUSSIAN should we use? (gdvh01|g03)&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; gdvh01 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;How many shared-memory processors should we use? (1|2|4|8)&lt;br /&gt;
N.B.: (ncpus=1) serial or (ncpus=2|4|8) parallel (omp) version of MCTDH launched as batch job&lt;br /&gt;
and launching monoprocessor GAUSSIAN interactive jobs (nprocshared=1 or no specification)&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 4 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the name of the molecule?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; fulvene &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; The first four letters will be used to name the new files that the generator is creating &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the number of atoms?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 12 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;The number of nuclear degrees of freedom is 30.&lt;br /&gt;
Do you want to reduce the dimensionality? (y|n)&lt;br /&gt;
(N.B.: this can be used also for re-ordering the coordinates)&lt;br /&gt;
&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; n &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the number of nuclear Gaussian functions?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 4 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt; 4 means 4 gaussian on state 1 and 4 gaussian on state 2. This is the &amp;quot;single-set&amp;quot; implementation of MCTDH (DD-vMCG) therefore the gaussian wavepackets on state 1 are the same as the gaussian wavepackets on state 2.&amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;&#039;What is the final propagation time (in fs)?&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 150 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the propagation time step (in fs)?&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 0.1 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the number of electronic states? (1|2)&#039;&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 2 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the highest electronic root?&#039;&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 2 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;From which electronic state should the wavepacket start? (2|1)&#039;&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 2 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Will there be an initial momentum given to the wavepacket? (y|n)&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; n &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Do you want to add a reference label to the name of the case? (y|n)&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; y &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Please type your text:&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; trial &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;This question is only asked if the answer to the previous question was yes.  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What will be the status of the database? (rdwr|rd|wr|none)&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; none &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; Choose rd for read, wr for write etc. In this case we are not going to use the database, but if it was used (rd or rdwr is specified) the script would ask the user to specify the threshold below which the database values will be used (%). In this case the value none is chosen so this question is not asked.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;&amp;gt;&amp;gt; Manual rotation (using Excel spreadsheet) &amp;lt;&amp;lt;&lt;br /&gt;
   Please type the values of the three Euler angles (in deg)&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 0&lt;br /&gt;
0&lt;br /&gt;
0 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Tuple from the dd_rotation method (insert link)&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;The generator will now tell you that it has read the files start.chk from the folder /work/$USER/fulv/dd_data/ .&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Files created by the generator&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* The generator will now tell you that it has read the files start.log, coin.log and momentum.dat (if a momentum has been specified) from the folder /work/$USER/fulv/dd_data/:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
   about to read parameters...&lt;br /&gt;
   ... parameters just read&lt;br /&gt;
   about to read file /work/vs13/fulv/dd_data/start.log                   &lt;br /&gt;
                                                               ...&lt;br /&gt;
   ... file /work/vs13/fulv/dd_data/start.log                             &lt;br /&gt;
                                                      read successfully&lt;br /&gt;
   about to read file /work/vs13/fulv/dd_data/coin.log                    &lt;br /&gt;
                                                               ...&lt;br /&gt;
 *********************************************************&lt;br /&gt;
 Mass-weighted displacement from start to coin:&lt;br /&gt;
    old total norm: 22.070387&lt;br /&gt;
    new total norm:  4.669035&lt;br /&gt;
  vibrational part:  4.669035&lt;br /&gt;
   rotational part:  0.000000&lt;br /&gt;
 *********************************************************&lt;br /&gt;
   ... file /work/vs13/fulv/dd_data/coin.log                             &lt;br /&gt;
                                                      read successfully&lt;br /&gt;
&amp;lt;/pre&amp;gt; &lt;br /&gt;
&lt;br /&gt;
and that the extraction of data and the creation of a summary file were done successfully. If the Mass-weighted displacement from start to coin appears as NaN it may be because the start.log contains atom numbers rather than atom types. You will need to redo the freq=hpmodes job with atom types.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Data extracted successfully&lt;br /&gt;
The summary of this file generation is in:&lt;br /&gt;
-rw-r--r--  1 vs13 hpc-users 3070 Dec  2 17:06 /home/vs13/fulv/fstodd4o.txt&lt;br /&gt;
 &lt;br /&gt;
Do not forget you still can add a momentum, change the integrator,&lt;br /&gt;
change convergence criteria for GAUSSIAN and MCTDH...&lt;br /&gt;
 &lt;br /&gt;
Do not forget to check the order of the atoms of the conical intersection geometry&lt;br /&gt;
in /work/vs13/fulv/dd_data/coin.log&lt;br /&gt;
 &lt;br /&gt;
Now go to your jobscript file and give values to the memory and walltime.&lt;br /&gt;
 &lt;br /&gt;
Good luck!&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* The dd_generator script has generated four files in the same directory (/home/$USER/fulv):&lt;br /&gt;
&lt;br /&gt;
# fstodd4p_trial.inp  &lt;br /&gt;
# fstodd4p_trial.job  &lt;br /&gt;
# fstodd4p_trial.txt  &lt;br /&gt;
# fstodd_none.op&lt;br /&gt;
&lt;br /&gt;
(Link to a more detailed explanation of this files)&lt;br /&gt;
&lt;br /&gt;
* The script has also created some files and directories in /work/$USER/fulv where the MCTDH (DD-vMCG) and GAUSSIAN calculations will be stored:&lt;br /&gt;
&lt;br /&gt;
1) Directories:&lt;br /&gt;
&lt;br /&gt;
* fstodd4p_trial&lt;br /&gt;
* fstodd4p_trial/dd_data&lt;br /&gt;
&lt;br /&gt;
2) Files (in fstodd4o_trial/dd_data):&lt;br /&gt;
&lt;br /&gt;
# refdb.dat &lt;br /&gt;
# start.chk  &lt;br /&gt;
# template.dat&lt;br /&gt;
# forward.dat&lt;br /&gt;
# backward.dat&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Modifications to be made to the files before running the dynamics&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* In the .job file in /home/$USER/fulv specify the memory (in this case use 4000MB) and walltime (72:00:00) if you are in the HPC Cluster.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* When running a development version of GAUSSIAN (gdvg03 or gdvg01), copy the start.chk file into the folder /work/$USER/dyn_90dev/but1dd1p_trial/dd_data. The unformatted checkpoint file from start.fchk that dd_generator has created is corrupted (due to a bug in formchk in gdvg01).&lt;br /&gt;
has this been fixed?&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Running the dynamics&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* Navigate to /home/$USER/fulv. Queue the job file. In this case, type:&lt;br /&gt;
&lt;br /&gt;
     qsub fstodd4p_trial.job&lt;br /&gt;
&lt;br /&gt;
for MAC OS X users the shell command is already written in fstodd4p_trial.job&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;The Database (DB)&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
The DB is made of four binary files:&lt;br /&gt;
geo.db&lt;br /&gt;
pes.db&lt;br /&gt;
gra.db&lt;br /&gt;
hes.db&lt;br /&gt;
They can be used in place of GAUSSIAN calculations to save some&lt;br /&gt;
computation time when you ask for DBrd or DBrdwr.&lt;br /&gt;
&lt;br /&gt;
Each set of geometry, energy, gradient and Hessian (the latter&lt;br /&gt;
three quantities having been calculated by GAUSSIAN for the two&lt;br /&gt;
adiabatic electronic states) will be called a DB record and&lt;br /&gt;
assigned a record number defining the order of occurrence in the DB.&lt;br /&gt;
If you run a calculation where the DB is to be read, in the *.res&lt;br /&gt;
file that you obtain after the calculation is done (file that&lt;br /&gt;
actually is a redirection of the standard output) you will see the&lt;br /&gt;
number of records in the DB as it grows.&lt;br /&gt;
Example (formaldehyde, multi-set 1+1):&lt;br /&gt;
          53&lt;br /&gt;
 s=  1 e=  1 t=   0.000 V1=   0.001 V2=   4.533 H11=   0.001 H22=&lt;br /&gt;
 4.533 H12=   0.000 q=   0.0000    0.0000    0.0000    0.0000&lt;br /&gt;
 0.0000    0.0000&lt;br /&gt;
          53&lt;br /&gt;
 s=  2 e=  1 t=   0.000 V1=   0.001 V2=   4.533 H11=   0.001 H22=&lt;br /&gt;
 4.533 H12=   0.000 q=   0.0000    0.0000    0.0000    0.0000&lt;br /&gt;
 0.0000    0.0000&lt;br /&gt;
          53&lt;br /&gt;
 s=  1 e=  1 t=   0.500 V1=   0.197 V2=   4.701 H11=   0.211 H22=&lt;br /&gt;
 4.687 H12=   0.251 q=  -0.6258   -0.6146    0.6136    0.6049&lt;br /&gt;
 -0.5520   -0.0616&lt;br /&gt;
          53&lt;br /&gt;
 s=  2 e=  1 t=   0.500 V1=   0.000 V2=   4.533 H11=   0.000 H22=&lt;br /&gt;
 4.533 H12=  -0.001 q=   0.0009    0.0009    0.0093   -0.0245&lt;br /&gt;
 -0.0066    0.0001&lt;br /&gt;
          53&lt;br /&gt;
 &lt;br /&gt;
 ERROR in subroutine Distdb :&lt;br /&gt;
 Redundant records in Data Base:   18   19&lt;br /&gt;
 s=  1 e=  1 t=   1.000 V1=   0.469 V2=   4.455 H11=   0.479 H22=&lt;br /&gt;
 4.445 H12=   0.200 q=  -0.4640   -0.5641    1.2594   -0.5871&lt;br /&gt;
 -1.0864   -0.1120&lt;br /&gt;
          53&lt;br /&gt;
 s=  2 e=  1 t=   1.000 V1=   0.001 V2=   4.473 H11=   0.001 H22=&lt;br /&gt;
 4.473 H12=  -0.002 q=   0.0003    0.0004    0.0404   -0.0944&lt;br /&gt;
 -0.0292    0.0001&lt;br /&gt;
          53&lt;br /&gt;
 s=  1 e=  1 t=   1.500 V1=   0.113 V2=   4.543 H11=   0.120 H22=&lt;br /&gt;
 4.536 H12=   0.170 q=  -0.3994   -0.4377    0.5444    0.2057&lt;br /&gt;
 -0.5149   -0.0638&lt;br /&gt;
          53&lt;br /&gt;
 s=  2 e=  1 t=   1.500 V1=   0.013 V2=   4.390 H11=   0.013 H22=&lt;br /&gt;
 4.390 H12=  -0.005 q=   0.0009    0.0010    0.0897   -0.2104&lt;br /&gt;
 -0.0634    0.0002&lt;br /&gt;
          53&lt;br /&gt;
 s=  1 e=  1 t=   2.000 V1=   0.068 V2=   4.431 H11=   0.071 H22=&lt;br /&gt;
 4.428 H12=   0.110 q=  -0.2751   -0.3274    0.4796   -0.0812&lt;br /&gt;
 -0.3880   -0.0605&lt;br /&gt;
          54&lt;br /&gt;
 s=  2 e=  1 t=   2.000 V1=   0.019 V2=   4.367 H11=   0.019 H22=&lt;br /&gt;
 4.367 H12=  -0.009 q=   0.0012    0.0013    0.1563   -0.3658&lt;br /&gt;
 -0.1058    0.0003&lt;br /&gt;
          54&lt;br /&gt;
 s=  1 e=  1 t=   2.500 V1=   0.064 V2=   4.273 H11=   0.065 H22=&lt;br /&gt;
 4.272 H12=  -0.064 q=   0.2559    0.0914    0.1691   -0.7218&lt;br /&gt;
 -0.1052   -0.0595&lt;br /&gt;
          55&lt;br /&gt;
 s=  2 e=  1 t=   2.500 V1=   0.070 V2=   4.258 H11=   0.070 H22=&lt;br /&gt;
 4.257 H12=  -0.013 q=   0.0013    0.0015    0.2384   -0.5572&lt;br /&gt;
 -0.1528    0.0004&lt;br /&gt;
&lt;br /&gt;
Here, we started with a DB of 53 records. It is large enough until&lt;br /&gt;
2 fs, where an additional record is produced, and so on.&lt;br /&gt;
The error message saying here that records 18 and 19 are identical&lt;br /&gt;
will not prevent the code from working. It is just here to remind you&lt;br /&gt;
that the DB is not clean in that it has redundant records.&lt;br /&gt;
This is to be prevented as the DB files might become large quite&lt;br /&gt;
rapidly and all records will be read at each update time (dd_update&lt;br /&gt;
= tout in the integrator section, tout = xxx fs in the run section&lt;br /&gt;
of the *.inp file) for each Gaussian function.&lt;br /&gt;
&lt;br /&gt;
Incidentally, when you want to analyse results written to a *.res&lt;br /&gt;
file, you need to look for lines starting with &amp;quot;s=&amp;quot; (other lines&lt;br /&gt;
are various messages and numbers of DB records).&lt;br /&gt;
The criterion for using the DB is to be seen as a maximum-allowed&lt;br /&gt;
relative difference&lt;br /&gt;
&lt;br /&gt;
So, it is up to you to clean the DB when you see this, and to keep&lt;br /&gt;
this in mind when you concatenate DBs that have branched in their&lt;br /&gt;
past (see more details below).&lt;br /&gt;
&lt;br /&gt;
Also, a given DB depends on the choice of a reference geometry in&lt;br /&gt;
Cartesian coordinates because geometries written to the DB files&lt;br /&gt;
will always be re-orientated with respect to this particular&lt;br /&gt;
geometry. The back and forth transformations are performed by MCTDH (DD-vMCG)&lt;br /&gt;
so you don&#039;t need not worry about this.&lt;br /&gt;
This geometry is written to refdb.dat. It is the starting geometry&lt;br /&gt;
that comes from start.log (the only difference being that it is&lt;br /&gt;
mass-centred).&lt;br /&gt;
As long as you do not change the starting geometry or the nature&lt;br /&gt;
of the electronic states, you can thus keep growing the DB of your&lt;br /&gt;
system.&lt;br /&gt;
&lt;br /&gt;
MANAGING THE DATA BASE&lt;br /&gt;
&lt;br /&gt;
A set of DB  programs can be found in XXXXX. Their roles are&lt;br /&gt;
explained below.&lt;br /&gt;
For now, the sources are in dd_utildev and dd_util.31dv and the&lt;br /&gt;
executables are in mctdh90dev/bin and mctdh90.31dv/bin, so you can&lt;br /&gt;
call them from anywhere, as long as DB files are there.&lt;br /&gt;
&lt;br /&gt;
1) countdb.out: returns the number of records of the current DB&lt;br /&gt;
2) cleandb.out: &amp;quot;brute-force&amp;quot; cleaning of the current DB. This&lt;br /&gt;
might be too long to be run interactively when the number of&lt;br /&gt;
records is too large, because each record needs to be compared to&lt;br /&gt;
each other record (e.g. a DB with ca. 3800 records will take a couple of minutes to clean interactively). If so, run in batch mode (ask me or Marta if you&lt;br /&gt;
have a doubt).&lt;br /&gt;
The cleaned files are:&lt;br /&gt;
geoclean.db&lt;br /&gt;
pesclean.db&lt;br /&gt;
graclean.db&lt;br /&gt;
hesclean.db&lt;br /&gt;
You need to rename them without &#039;clean&#039; for them to be used as a DB.&lt;br /&gt;
3) cutdb.out: allows you to cut out the beginning of a DB.&lt;br /&gt;
This is to be used in the following situation:&lt;br /&gt;
- You start from a mother DB, DB0, assumed to be clean, with N0&lt;br /&gt;
records.&lt;br /&gt;
- You want to use DB0 in two independent calculations. You&lt;br /&gt;
replicate DB0 to daughter DBs, DB1 and DB2.&lt;br /&gt;
- When these calculations are done, DB1 and DB2 have grown to N0+N1&lt;br /&gt;
and N0+N2 records, respectively.&lt;br /&gt;
- You want to concatenate them to create a new mother DB, DB3.&lt;br /&gt;
- DB1 and DB2 have their N0 first records the same. To avoid&lt;br /&gt;
redundant records, you need to cut N0 records from DB2 for example.&lt;br /&gt;
--&amp;gt; go to where DB2 is and use cleandb.out&lt;br /&gt;
The resulting files are:&lt;br /&gt;
geocut.db&lt;br /&gt;
pescut.db&lt;br /&gt;
gracut.db&lt;br /&gt;
hescut.db&lt;br /&gt;
these have N1 records.&lt;br /&gt;
--&amp;gt; rename DB1, for instance geo.db1 etc., and concatenate the files:&lt;br /&gt;
cat geo.db1 geoclean.db &amp;gt; geo.db&lt;br /&gt;
etc.&lt;br /&gt;
- Your new mother DB, DB3, should now have N0+N1+N2 distinct records.&lt;br /&gt;
4) deldb.out: allows you to remove one selected record (for&lt;br /&gt;
instance if corrupted) from the DB if you know its number.&lt;br /&gt;
The resulting files are:&lt;br /&gt;
geodel.db&lt;br /&gt;
pesdel.db&lt;br /&gt;
gradel.db&lt;br /&gt;
hesdel.db&lt;br /&gt;
You need to rename them without &#039;del&#039; for them to be used as a DB.&lt;br /&gt;
5) seedb.out: allows you extract one selected record from the&lt;br /&gt;
binary files for reading it (the record is not removed from the DB).&lt;br /&gt;
The resulting file can be read as a text file (ascii) and is:&lt;br /&gt;
see.db&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Restarting dynamics jobs&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
The examples below make use of the directory and filenames in the examples above.&lt;br /&gt;
&lt;br /&gt;
A dynamics run can be restarted if the job was terminated before completion (e.g if it ran out of time or failed because of convergence problems) or if the user wishes to continue the job for a longer time period than had originally been specified. The program will continue writing the same output file but will overwrite the .res file. Thus the .res file should be saved under a different name to prevent loss of the data calculated in the original run. The .res is not written until the job stops so this can be done after the restart.&lt;br /&gt;
&lt;br /&gt;
*To increase the final propagation time&lt;br /&gt;
&lt;br /&gt;
Retrieve the .inp file (in $HOME/fulv) and change &#039;&#039;propagation&#039;&#039; to &#039;&#039;continuation&#039;&#039; in the section entitled RUN-SECTION. Then change the final time &#039;&#039;tfinal&#039;&#039; to a larger value. (NB this new value should include the time already done).&lt;br /&gt;
&lt;br /&gt;
Re-queue the job.&lt;br /&gt;
&lt;br /&gt;
*To increase the number of scf cycles (the most common reason for convergence failure)&lt;br /&gt;
&lt;br /&gt;
Edit the template.dat file in $WORK/fulv/fstodd4p_trial/dd_data. Insert scf=(maxcycle=128) on the keyword line (for example). It is important that you change the template.dat file in the fstodd4p_trial/dd_data folder that was created by dd_generator (rather than the one created by the user in $WORK/fulv/dd_data) because the original $WORK/fulv/dd_data/template.dat file is only read by dd_generator and used to create the job-specific file in the job folder. (Of course if you wish all future jobs run in $WORK/fulv  to have increased scf cycles, change the other template.dat file in $WORK/buta/dd_data too.)&lt;br /&gt;
&lt;br /&gt;
Re-queue the job.&lt;br /&gt;
&lt;br /&gt;
*To increase the run-time so that a job will finish&lt;br /&gt;
&lt;br /&gt;
Edit the walltime in the .job file in the $HOME directory and re-queue the job.&lt;br /&gt;
&lt;br /&gt;
=&#039;&#039;&#039;Analysis of the results&#039;&#039;&#039;=&lt;br /&gt;
&lt;br /&gt;
The most important files are the output and .res files.&lt;br /&gt;
&lt;br /&gt;
=== Detailed information about files and directories ===&lt;br /&gt;
&lt;br /&gt;
*output&lt;br /&gt;
&lt;br /&gt;
The output contains some standard results:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Time&#039;&#039;&#039;: time in fs.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;CPU&#039;&#039;&#039;:  CPU time in s.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Norm&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;E-tot&#039;&#039;&#039;: the total energy in eV. This value should be conserved (i.e by the end of the run the E-tot value should not be too different  from what it was a time=0).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;E-corr&#039;&#039;&#039;: correlated Hamiltonian energy&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Delta-E&#039;&#039;&#039;: diference between E-tot at time t=0 and the current time t&lt;br /&gt;
&lt;br /&gt;
Note: In a multi-packet run, i.e. when npacket &amp;gt; 1, the total energy and the norm of the wavefunction, as given in the &amp;quot;total&amp;quot; part, are averaged over the packets.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;population&#039;&#039;&#039; : diabatic populations of state 1 and state 2 (in that order) at the current time t&lt;br /&gt;
&lt;br /&gt;
For every mode:	&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt; q &amp;gt;&#039;&#039;&#039;: position expectation value&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;dq&amp;gt;&#039;&#039;&#039;: standard deviation Sqrt[&amp;lt; q&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt; &amp;gt; - &amp;lt; q &amp;gt;&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt; p &amp;gt;&#039;&#039;&#039; : momentum expectation value&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;dq&amp;gt;&#039;&#039;&#039;: standard deviation Sqrt[&amp;lt; p&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt; &amp;gt; - &amp;lt; p &amp;gt;&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*.res&lt;br /&gt;
&lt;br /&gt;
This file contains the energy of each state (diabatic and adiabatic) at each timestep for each gaussian function:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;s&#039;&#039;&#039; is a redundant value in mctdh90.31dv. It is only meaningful in multi-set implementations of mctdh (where there are double the number of gaussian functions than specified: one for each state). (It indicates whether the gaussian function in question is on the lower (1) or upper (2) state. (In the single set implementation, the gaussian functions on each state are identical)).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;e&#039;&#039;&#039; is a label given to each gaussian function&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;t&#039;&#039;&#039; is the current time in fs&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;V1&#039;&#039;&#039; is the energy of the lower adiabatic state at time t&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;V2&#039;&#039;&#039; is the energy of the upper adiabatic state at time t&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;H11&#039;&#039;&#039; is the energy of the lower diabatic state at time t&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;H22&#039;&#039;&#039; is the energy of the upper diabatic state at time t&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;H12&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;q&#039;&#039;&#039; is the list of frequency mass-weighted normal coordinates that describe the geometry at time t&lt;br /&gt;
&lt;br /&gt;
The end of the file will read something like: &lt;br /&gt;
&lt;br /&gt;
     Propagation was successful.&lt;br /&gt;
     &lt;br /&gt;
     Total time     [h:m:s] :    0 :  1 : 21.60&lt;br /&gt;
     &lt;br /&gt;
      ---------------------------------------------------------------------------&lt;br /&gt;
      ------ Host: &amp;quot;cx1-3-2-4&amp;quot; ----------Sat Jan 17 06:50:20 2009&lt;br /&gt;
&lt;br /&gt;
The other most common result is that the calculation aborted because of scf convergence problems in the CASSCF GAUSSIAN calculations. In this case the ouput file will break off after the last complete step and the end of the .res file will read something like:&lt;br /&gt;
     ERROR in subroutine Getddpes :&lt;br /&gt;
     CAS convergence failed for gwp on state:    1    1&lt;br /&gt;
&lt;br /&gt;
If the job terminates due to scf convergence problems, it may be possible to restart it after modifying the .inp and/or .job and/or template.dat files.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*log&lt;br /&gt;
&lt;br /&gt;
This file contains information such as the source code version, type of calculation performed, integrator used, numerical parameters, which data files are opened, any error messages, and much more. The information provided by the log file can be very helpful, in particular when searching for errors. One should always carefully inspect the log file.&lt;br /&gt;
&lt;br /&gt;
* dvr&lt;br /&gt;
&lt;br /&gt;
* oper&lt;br /&gt;
&lt;br /&gt;
*ddpeserr&lt;br /&gt;
&lt;br /&gt;
*input&lt;br /&gt;
&lt;br /&gt;
*op.log&lt;br /&gt;
&lt;br /&gt;
*psi&lt;br /&gt;
&lt;br /&gt;
*check&lt;br /&gt;
&lt;br /&gt;
*auto&lt;br /&gt;
&lt;br /&gt;
*ddpes&lt;br /&gt;
&lt;br /&gt;
*restart&lt;br /&gt;
&lt;br /&gt;
*stop&lt;br /&gt;
&lt;br /&gt;
*speed&lt;br /&gt;
&lt;br /&gt;
*timing&lt;br /&gt;
&lt;br /&gt;
*update&lt;br /&gt;
&lt;br /&gt;
=== Example: fulvene ===&lt;br /&gt;
&lt;br /&gt;
*Examine the end of the output file to check that the calculation ran to completion.&lt;br /&gt;
     &lt;br /&gt;
*Plot the energy of the diabatic and adiabatic states over time (.res file: V1, V2, H11 and H22). Calculate V2-V1 and H22-H11 and plot these also. H12 may also be plotted on the same graph.&lt;br /&gt;
[[Image:EnergyofStates.png]]&lt;br /&gt;
&lt;br /&gt;
The diabatic states cross at 176.2 fs and the adiabatic states cross at 174.5 fs. At a conical intersection, the value V2-V1 will become negative and the H22-H11 will be a minimum (&amp;lt;1eV). Ideally these crossings will occur at the same time. If the diabatisation has worked well, after V2-V1 becomes negative, V2-V1 and H22-H11 will become mirror images (i.e. the diabatic and adiabatic states follow each other). &lt;br /&gt;
&lt;br /&gt;
*Plot the value of the total energy over time (.res file: E-tot). Verify that the Delta-E value is not too large (compare with the total energy (E-tot) at time 0).&lt;br /&gt;
[[Image:TotalEnergy.png]]&lt;br /&gt;
&lt;br /&gt;
*Plot the population of one of the (diabatic) states over time (.res file: population).&lt;br /&gt;
[[Image:Population.png]]&lt;br /&gt;
&lt;br /&gt;
At the conical intersection the population transfer is large. In this case the job has been terminated after 200 fs. Usually the calculation should be continued until the populations stabilise (which obviously has not happened in this case).&lt;br /&gt;
&lt;br /&gt;
=== Making a Movie ===&lt;br /&gt;
&lt;br /&gt;
Navigate to /work/$USER/fulv/fstodd4p_trial (the place where the .res file was written). Type:&lt;br /&gt;
 movie.x&lt;br /&gt;
* The script will ask a series of questions and will use the answers provided to create a file that can be read into Molden or iMol.&lt;br /&gt;
&lt;br /&gt;
==== List of questions asked by dd_movie.out====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;blockquote style=&amp;quot;background: white; border: 1px solid black; padding: 1em;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Question&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; &#039;&#039;&#039;Answer for this tutorial&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; &#039;&#039;&#039;Explanation&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the number of atoms?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 12 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the actual number of active coordinates?&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 30 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; In this case all coordinates were active (so there are 3N-6 where N is the number of atoms) &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Name of result file to read?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; fstodd4p_trial.res &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;Ensure that the forward.dat and backward.dat files are located in the current directory in the folder dd_data (they will have been written there automatically)&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Name of movie file to write?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; e1.xyz &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; Choose any name .xyz &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Which electronic state (s=...)?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 1 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;Choose 1 (this question dates from the multi-set implementation of mctdh where the wavepackets on each state were different)  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Which Gaussian function (e=...)?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 1 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;In this case we can chose between 4 wavepackets&amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;The script will now return the number of lines and the initial number of points&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
number of lines:        4684&lt;br /&gt;
initial number of points:        1501&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Maximum number of points you want?&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 1501 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The .xyz file is ready to be opened in Molden or iMol.&lt;br /&gt;
&lt;br /&gt;
= &#039;&#039;&#039;Current Known Bugs&#039;&#039;&#039; =&lt;br /&gt;
&lt;br /&gt;
Parallelisation:&lt;br /&gt;
&lt;br /&gt;
It is not possible to run calculations in parallel with version 90.31dv (reading the same template.dat file simultaneously by each processor is causing problems). In 90.35tmp this is ok. In 90.4X it will also be fixed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Total energy:&lt;br /&gt;
&lt;br /&gt;
1) The total energy is sometimes &amp;quot;artificially&amp;quot; increased by a lot. If so, try a different integrator or play around with the timestep (may need to get larger or smaller). Or try increasing scf convergence to 10&amp;lt;sup&amp;gt;-12&amp;lt;/sup&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
2) If Delta-E suddenly becomes too large, you can get the following message: &lt;br /&gt;
&amp;quot;ERROR in subroutine WRGAUSSIAN :&lt;br /&gt;
 Do not use $Swap:...$ metastring in file /.../template.dat&amp;quot;&lt;br /&gt;
Often, when getting this message, no more steps are added to the simulation, although the calculation seems to keep running (the integrator keeps trying and failing).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Using the database:&lt;br /&gt;
&lt;br /&gt;
1) Every record generated with mctdh90.31dev and several GWPs is corrupted, so, for now, when launching calculations with more that one wavepacket, use &amp;quot;formdd_none.op&amp;quot; (i.e. do not read nor write the database).&lt;br /&gt;
[For instance, when using dbrdwr and starting from a clean db, all newly generated records are added to the existing database, even if they are identical to records that were already written in the db.]  In 90.35tmp this is ok. In 90.4X it will also be fixed.&lt;br /&gt;
&lt;br /&gt;
2) Records obtained in calculations with one GWP should be OK, but this is still to be confirmed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Impossible case&amp;quot;:&lt;br /&gt;
&lt;br /&gt;
Error message that forces the calculation to stop. It seems to be associated with moving towards an &amp;quot;unexpected&amp;quot; geometry (e.g. a radical).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
State Averaging:&lt;br /&gt;
&lt;br /&gt;
To increase the threshold above which stateaveraging is turned off, increase the default value of 10 (to e.g. 50)  in the line &#039;&#039;ddregions&#039;&#039; in the OPERATOR-SECTION of the .inp file.&lt;br /&gt;
&lt;br /&gt;
= &#039;&#039;&#039;Questions and Modifications to be made to this wiki&#039;&#039;&#039; =&lt;br /&gt;
&lt;br /&gt;
*Why we would ever need to start the gwps from the lower state? To study GS rxns; chemiluminesence (eg glowworms).&lt;br /&gt;
*In terms of Delta-E, how much is too much? ca1eV but shape of E-tot vs time is important: discontiunities or v flat then steep increase are less reliable than smooth gradual increases.&lt;br /&gt;
*Benjamin: Note that Marta has noticed that for very strange geometries, you may receive an error message saying &amp;quot;impossible case&amp;quot;, which stops MCTDH. It is too complicated to explain here. I know where this happens in the code, and I should prevent this error to stop the code but I didn&#039;t have time to fix this. I&#039;ll do it soon.&lt;br /&gt;
*Need to edit/correct section on the DB.&lt;br /&gt;
*Is does unfchk in gdvg03 create corrupted fchk files? G03 is fine. we don&#039;t know about gdvg03 but we don&#039;t care because we probablly won&#039;t use it.&lt;br /&gt;
&lt;br /&gt;
=== [[Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial|back]] ===&lt;/div&gt;</summary>
		<author><name>Vs13</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/run&amp;diff=333953</id>
		<title>Resgrp:comp-photo-dyn/mctdh90.56dv Fulvene Tutorial/run</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/run&amp;diff=333953"/>
		<updated>2013-04-29T11:25:48Z</updated>

		<summary type="html">&lt;p&gt;Vs13: /* Example: butadiene */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= &#039;&#039;&#039;Basic use of the MCTDH (DD-vMCG) package&#039;&#039;&#039; =&lt;br /&gt;
&lt;br /&gt;
A script called dd_generator uses GAUSSIAN output files and user input to write the input files for mctdh (DD-vMCG).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Notes&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;The number of gaussian wavepackets (requested by the dd_generator script)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
When studying a new system, start with one (to keep calculation times short). When an appropriate momentum, time period, time step and integrator have been established, increase the number of wavepackets until the results are not changed by adding more. Calculation times are proportional to the number of wavepackets. To ensure efficient use of computing resources, always specify an even number of wavepackets if using more than one processor (since the number of processors can only be an even number: currently 2, 4 or 8).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;The database&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The most time-consuming part of a dynamics run is the GAUSSIAN CASSCF calculations. The results of these calculations can be stored in a database and re-used in future runs. The user must choose whether or not to read and/or write a database. Each calculation will write a separate database so the databases from each run must be combined (and any duplicate entries removed (to save space)).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Initial momentum&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
An initial momentum can be specified to direct the wavepacket to a particular area of the PES (e.g. towards a conical intersection, a transition state or minimum geometry). The momentum is given as a geometry (in frequency mass weighted normal coordinates). The dd_rotation program used for rotation of the conical intersection can be used to transform the coordinates of the desired geometry. If the user requests an initial momentum, dd_generator will search for a file called momentum.dat. If this file is found, dd_generator will ask if the user wishes to use the momentum specified in it. The user can then specify how much energy to give (in eV). Thus, the values in momentum.dat need only be relative values (since they will be multiplied by a scaling factor to provide the total number of eV requested). If there is no file called momentum.dat in the appropriate folder, the user will not be asked to specify a total number of eV to give to the wavepacket(s). A momentum can still be added by manually modifying the .inp file after the dd_generator script has been run (replace the zero values in the fifth column of the section of the .inp file entitled INIT_WF-SECTION). However, it is simpler to create the momentum.dat file mainly because if the user edits the .inp file directly, there is no way of knowing what the total excess energy will be: the values listed in .inp also incorporate magnitude (not just relative values as in momentum.dat). &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Memory and number of processors&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
In template.dat, the memory for each GAUSSIAN CASSCF calculation is specified. In the .job file (created by dd_generator from user input) the total memory is specified. Thus, the memory specified in .job must be at least as great as the memory given in template.dat multiplied by the number of processors.&lt;br /&gt;
&lt;br /&gt;
The GAUSSIAN calculations for each wavepacket will run on a single processor. If the user specifies more than one processor then the calculations for each wavepacket can run simultaneously. To ensure efficient use of computing resources, always specify an even number of wavepackets when using more than one processor (since the number of processors can only be an even number: currently 2, 4 or 8).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Symmetry Considerations&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The way the diabatisation is performed in mctdh90.31dv sometimes leads to complications involving symmetry.  The diabatic states are defined using the conical intersection (or other geometry) described in coin.log. If the molecule is highly symmetric, there will be more than one conical intersection (all identical by symmetry). If the wavepacket moves close to one of the other conical intersections that is not described in coin.log, the diabatic states may not be properly described in this area of the PES. This of course means that the behaviour of the wavepacket(s) is likely to be described poorly also.&lt;br /&gt;
&lt;br /&gt;
If the conical intersection has lower symmetry than the starting material, the symmetry must necessarily be broken during the dynamics calculation before the conical intersection is reached. The breaking of each mode will occur either due to the accumulation of small numerical inaccuracies or if a momentum is given which forces particular modes to break symmetry.&lt;br /&gt;
Mctdh90.31dv uses frequency-mass-weighted normal coordinates to describe molecular geometries. Each frequency-mass-weighted coordinate corresponds to a vibration of the molecule (and there are therefore 3N-6 coordinates). Displacements of atoms are described by a (or a combination of) vibration(s). Each vibration can be displaced in one of two directions: positive or negative. The 3N-6 frequency-mass-weighted coordinates can be classified by symmetry. Whether a particular symmetry mode is broken in the positive or negative direction will be equally likely if no initial momentum is given. Thus for each mode that is broken during a simulation the symmetry may break in the positive direction or the negative direction. There will be 2&amp;lt;sup&amp;gt;x&amp;lt;/sup&amp;gt; possible conical intersections corresponding to a particular starting geometry, where x is the number of modes that must be broken going from starting material to conical intersection.&lt;br /&gt;
&lt;br /&gt;
Additionally, care must be taken over atom labeling. It must be possible to transform the starting material into the conical intersection without permuting atom labels. If the conical intersection has been optimised by following the MEP downhill from the starting material this is not likely to be a problem. However, bear this in mind if drawing the conical intersection by hand.  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Creating the Directories&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* First of all, create a folder in which to save the calculations in your $HOME and $WORK directories. Create a directory in $HOME, and an identical directory in $WORK that has the same path. Keep pathlengths as short as possible (if the total path becomes too long the dynamics code will not run). For simplicity, in this case, we are going to assume that this directory is named &#039;&#039;fulv&#039;&#039; (for fulvene).&lt;br /&gt;
&lt;br /&gt;
     mkdir fulv&lt;br /&gt;
&lt;br /&gt;
* Create a subdirectory called &#039;&#039;&#039;dd_data&#039;&#039;&#039; in the new directory in $WORK.  Thus you should start with:&lt;br /&gt;
&lt;br /&gt;
    /home/$USER/fulv&lt;br /&gt;
    /work/$USER/fulv/dd_data&lt;br /&gt;
&lt;br /&gt;
* Important Note: it is essential to have the same path in both directories, $HOME and $WORK. Do not change the path-names within the HOME/WORK directories. If you re-name or move any subdirectory in your, for example HOME directory, you have to be consistent and make the same changes in the $WORK directory.&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Gaussian Output to be Used as Input for the Dynamics Program&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* Populate the new directory /work/$USER/buta/dd_data with four files which must be named: &#039;&#039;&#039;coin.log&#039;&#039;&#039;; &#039;&#039;&#039;start.fchk&#039;&#039;&#039;; &#039;&#039;&#039;start.log&#039;&#039;&#039;; and &#039;&#039;&#039;template.dat&#039;&#039;&#039;.These files are required in order to run any dynamics simulation, they are the basis that the script dd_generator (see the following section) will use to create the necessary files for running MCTDH (DD-vMCG).  You may also create a file named &amp;quot;&#039;momentum.dat&amp;quot;&#039; if you wish to give a momentum to the wavepacket(s) (this is optional and may be created later instead). &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;coin.log&#039;&#039;&#039; is the logfile resulting from the optimisation of the conical intersection. NB The MCTDH (DD-vMCG) program will rotate the conical intersection before starting the dynamics. To do this it must be provided with three angles which describe the appropriate rotation. There is an Excel spreadsheet available to calculate these angles (see the section entitled &amp;quot;Rotating the Conical Intersection&amp;quot;). NB the structure in coin.log need not necessarily be a true conical intersection: this point is only used for performing the diabatisation. Thus the diabatisation will be exact at this point and will become more approximate the further you are from it (on the PES). If you wish to use a point that is not a conical intersection, simply run a conical intersection optimisation (with only a single step) on the desired geometry. This will create a file with the same layout as a conical intersection optimisation output file (mctdh looks for certain things in this file so if some other type of .log file were used instead, it might not contain the required information). NB the final conical intersection log file must only contain one geometry (otherwise the dynamics program will not know which geometry to use). IS THIS STATEMENT TRUE FOR THIS VERSION??&lt;br /&gt;
&lt;br /&gt;
[[Media:Coin.log]]&lt;br /&gt;
&lt;br /&gt;
(Insert a link here to section &amp;quot;Rotating the Conical Intersection&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;start.chk&#039;&#039;&#039; is the checkpoint file from the high precision vibrational modes of the ground state with state averaged orbitals (with atom types rather than numbers)&lt;br /&gt;
[[Media:Start.chk]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;start.log&#039;&#039;&#039; is the log file from the high precision vibrational modes of the ground state with state averaged orbitals (with atom types rather than numbers)&lt;br /&gt;
&lt;br /&gt;
[[Media:Start.log]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;template.dat&#039;&#039;&#039; is a template for the creation of GAUSSIAN input files by the MCTDH (DD-vMCG) program. It contains all the mutual keywords of the GAUSSIAN calculations which will be run on-the-fly by MCTDH (DD-vMCG). It also contains other information relating to the GAUSSIAN calculations such as memory requirements.&lt;br /&gt;
 &lt;br /&gt;
[[Media:Template.dat]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;momentum.dat&#039;&#039;&#039; is a file containing a list of values to be used as vectors to indicate the momentum to be given to a particular (set of) wavepacket(s). The vectors must be listed in the order of the frequency-mass-weighted normal coordinates specified in the coin.out file (i.e. the output file from dd_rotation program). They give the magnitude of the momentum to be given along each of these frequency-mass-weighted normal coordinates. N.B. The signs of the values here are important!&lt;br /&gt;
We are not giving a momentum in this simulation.&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;The Generator&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* The &amp;quot;generator&amp;quot; script uses the GAUSSIAN output files (above) along with other information supplied by the user to create input files for MCTDH (DD-vMCG).&lt;br /&gt;
&lt;br /&gt;
* Navigate to /home/$USER/fulv and run the generator by typing:&lt;br /&gt;
&lt;br /&gt;
     dd_generator&lt;br /&gt;
&lt;br /&gt;
for the HPC Cluster, or &lt;br /&gt;
&lt;br /&gt;
     dd_generator_MAC&lt;br /&gt;
&lt;br /&gt;
for a MAC OS X system&lt;br /&gt;
&lt;br /&gt;
* Typing dd_generator will run the script automatically. After installing the MCTDH (DD-vMCG) package this command has been added to your list of executable commands. &lt;br /&gt;
&lt;br /&gt;
     ********************************************************************************&lt;br /&gt;
     ********************    -------  DD GENERATOR  --------    *****************&lt;br /&gt;
     ********************************************************************************&lt;br /&gt;
&lt;br /&gt;
* The generator will ask a series of questions and will use the answers provided to prepare the input files for the dynamics program. The questions it asks are listed below along with answers for a trial run on butadiene.&lt;br /&gt;
&lt;br /&gt;
==== List of questions asked by dd_generator====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;blockquote style=&amp;quot;background: white; border: 1px solid black; padding: 1em;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Question&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; &#039;&#039;&#039;Answer for this tutorial&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; &#039;&#039;&#039;Explanation&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Which version of GAUSSIAN should we use? (gdvh01|g03)&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; gdvh01 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;How many shared-memory processors should we use? (1|2|4|8)&lt;br /&gt;
N.B.: (ncpus=1) serial or (ncpus=2|4|8) parallel (omp) version of MCTDH launched as batch job&lt;br /&gt;
and launching monoprocessor GAUSSIAN interactive jobs (nprocshared=1 or no specification)&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 4 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the name of the molecule?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; fulvene &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; The first four letters will be used to name the new files that the generator is creating &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the number of atoms?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 12 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;The number of nuclear degrees of freedom is 30.&lt;br /&gt;
Do you want to reduce the dimensionality? (y|n)&lt;br /&gt;
(N.B.: this can be used also for re-ordering the coordinates)&lt;br /&gt;
&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; n &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the number of nuclear Gaussian functions?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 4 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt; 4 means 4 gaussian on state 1 and 4 gaussian on state 2. This is the &amp;quot;single-set&amp;quot; implementation of MCTDH (DD-vMCG) therefore the gaussian wavepackets on state 1 are the same as the gaussian wavepackets on state 2.&amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;&#039;What is the final propagation time (in fs)?&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 150 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the propagation time step (in fs)?&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 0.1 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the number of electronic states? (1|2)&#039;&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 2 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the highest electronic root?&#039;&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 2 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;From which electronic state should the wavepacket start? (2|1)&#039;&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 2 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Will there be an initial momentum given to the wavepacket? (y|n)&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; n &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Do you want to add a reference label to the name of the case? (y|n)&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; y &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Please type your text:&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; trial &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;This question is only asked if the answer to the previous question was yes.  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What will be the status of the database? (rdwr|rd|wr|none)&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; none &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; Choose rd for read, wr for write etc. In this case we are not going to use the database, but if it was used (rd or rdwr is specified) the script would ask the user to specify the threshold below which the database values will be used (%). In this case the value none is chosen so this question is not asked.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;&amp;gt;&amp;gt; Manual rotation (using Excel spreadsheet) &amp;lt;&amp;lt;&lt;br /&gt;
   Please type the values of the three Euler angles (in deg)&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 0&lt;br /&gt;
0&lt;br /&gt;
0 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Tuple from the dd_rotation method (insert link)&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;The generator will now tell you that it has read the files start.chk from the folder /work/$USER/fulv/dd_data/ .&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Files created by the generator&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* The generator will now tell you that it has read the files start.log, coin.log and momentum.dat (if a momentum has been specified) from the folder /work/$USER/fulv/dd_data/:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
   about to read parameters...&lt;br /&gt;
   ... parameters just read&lt;br /&gt;
   about to read file /work/vs13/fulv/dd_data/start.log                   &lt;br /&gt;
                                                               ...&lt;br /&gt;
   ... file /work/vs13/fulv/dd_data/start.log                             &lt;br /&gt;
                                                      read successfully&lt;br /&gt;
   about to read file /work/vs13/fulv/dd_data/coin.log                    &lt;br /&gt;
                                                               ...&lt;br /&gt;
 *********************************************************&lt;br /&gt;
 Mass-weighted displacement from start to coin:&lt;br /&gt;
    old total norm: 22.070387&lt;br /&gt;
    new total norm:  4.669035&lt;br /&gt;
  vibrational part:  4.669035&lt;br /&gt;
   rotational part:  0.000000&lt;br /&gt;
 *********************************************************&lt;br /&gt;
   ... file /work/vs13/fulv/dd_data/coin.log                             &lt;br /&gt;
                                                      read successfully&lt;br /&gt;
&amp;lt;/pre&amp;gt; &lt;br /&gt;
&lt;br /&gt;
and that the extraction of data and the creation of a summary file were done successfully. If the Mass-weighted displacement from start to coin appears as NaN it may be because the start.log contains atom numbers rather than atom types. You will need to redo the freq=hpmodes job with atom types.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Data extracted successfully&lt;br /&gt;
The summary of this file generation is in:&lt;br /&gt;
-rw-r--r--  1 vs13 hpc-users 3070 Dec  2 17:06 /home/vs13/fulv/fstodd4o.txt&lt;br /&gt;
 &lt;br /&gt;
Do not forget you still can add a momentum, change the integrator,&lt;br /&gt;
change convergence criteria for GAUSSIAN and MCTDH...&lt;br /&gt;
 &lt;br /&gt;
Do not forget to check the order of the atoms of the conical intersection geometry&lt;br /&gt;
in /work/vs13/fulv/dd_data/coin.log&lt;br /&gt;
 &lt;br /&gt;
Now go to your jobscript file and give values to the memory and walltime.&lt;br /&gt;
 &lt;br /&gt;
Good luck!&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* The dd_generator script has generated four files in the same directory (/home/$USER/fulv):&lt;br /&gt;
&lt;br /&gt;
# fstodd4p_trial.inp  &lt;br /&gt;
# fstodd4p_trial.job  &lt;br /&gt;
# fstodd4p_trial.txt  &lt;br /&gt;
# fstodd_none.op&lt;br /&gt;
&lt;br /&gt;
(Link to a more detailed explanation of this files)&lt;br /&gt;
&lt;br /&gt;
* The script has also created some files and directories in /work/$USER/fulv where the MCTDH (DD-vMCG) and GAUSSIAN calculations will be stored:&lt;br /&gt;
&lt;br /&gt;
1) Directories:&lt;br /&gt;
&lt;br /&gt;
* fstodd4p_trial&lt;br /&gt;
* fstodd4p_trial/dd_data&lt;br /&gt;
&lt;br /&gt;
2) Files (in fstodd4o_trial/dd_data):&lt;br /&gt;
&lt;br /&gt;
# refdb.dat &lt;br /&gt;
# start.chk  &lt;br /&gt;
# template.dat&lt;br /&gt;
# forward.dat&lt;br /&gt;
# backward.dat&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Modifications to be made to the files before running the dynamics&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* In the .job file in /home/$USER/fulv specify the memory (in this case use 4000MB) and walltime (72:00:00) if you are in the HPC Cluster.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* When running a development version of GAUSSIAN (gdvg03 or gdvg01), copy the start.chk file into the folder /work/$USER/dyn_90dev/but1dd1p_trial/dd_data. The unformatted checkpoint file from start.fchk that dd_generator has created is corrupted (due to a bug in formchk in gdvg01).&lt;br /&gt;
has this been fixed?&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Running the dynamics&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* Navigate to /home/$USER/fulv. Queue the job file. In this case, type:&lt;br /&gt;
&lt;br /&gt;
     qsub fstodd4p_trial.job&lt;br /&gt;
&lt;br /&gt;
for MAC OS X users the shell command is already written in fstodd4p_trial.job&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;The Database (DB)&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
The DB is made of four binary files:&lt;br /&gt;
geo.db&lt;br /&gt;
pes.db&lt;br /&gt;
gra.db&lt;br /&gt;
hes.db&lt;br /&gt;
They can be used in place of GAUSSIAN calculations to save some&lt;br /&gt;
computation time when you ask for DBrd or DBrdwr.&lt;br /&gt;
&lt;br /&gt;
Each set of geometry, energy, gradient and Hessian (the latter&lt;br /&gt;
three quantities having been calculated by GAUSSIAN for the two&lt;br /&gt;
adiabatic electronic states) will be called a DB record and&lt;br /&gt;
assigned a record number defining the order of occurrence in the DB.&lt;br /&gt;
If you run a calculation where the DB is to be read, in the *.res&lt;br /&gt;
file that you obtain after the calculation is done (file that&lt;br /&gt;
actually is a redirection of the standard output) you will see the&lt;br /&gt;
number of records in the DB as it grows.&lt;br /&gt;
Example (formaldehyde, multi-set 1+1):&lt;br /&gt;
          53&lt;br /&gt;
 s=  1 e=  1 t=   0.000 V1=   0.001 V2=   4.533 H11=   0.001 H22=&lt;br /&gt;
 4.533 H12=   0.000 q=   0.0000    0.0000    0.0000    0.0000&lt;br /&gt;
 0.0000    0.0000&lt;br /&gt;
          53&lt;br /&gt;
 s=  2 e=  1 t=   0.000 V1=   0.001 V2=   4.533 H11=   0.001 H22=&lt;br /&gt;
 4.533 H12=   0.000 q=   0.0000    0.0000    0.0000    0.0000&lt;br /&gt;
 0.0000    0.0000&lt;br /&gt;
          53&lt;br /&gt;
 s=  1 e=  1 t=   0.500 V1=   0.197 V2=   4.701 H11=   0.211 H22=&lt;br /&gt;
 4.687 H12=   0.251 q=  -0.6258   -0.6146    0.6136    0.6049&lt;br /&gt;
 -0.5520   -0.0616&lt;br /&gt;
          53&lt;br /&gt;
 s=  2 e=  1 t=   0.500 V1=   0.000 V2=   4.533 H11=   0.000 H22=&lt;br /&gt;
 4.533 H12=  -0.001 q=   0.0009    0.0009    0.0093   -0.0245&lt;br /&gt;
 -0.0066    0.0001&lt;br /&gt;
          53&lt;br /&gt;
 &lt;br /&gt;
 ERROR in subroutine Distdb :&lt;br /&gt;
 Redundant records in Data Base:   18   19&lt;br /&gt;
 s=  1 e=  1 t=   1.000 V1=   0.469 V2=   4.455 H11=   0.479 H22=&lt;br /&gt;
 4.445 H12=   0.200 q=  -0.4640   -0.5641    1.2594   -0.5871&lt;br /&gt;
 -1.0864   -0.1120&lt;br /&gt;
          53&lt;br /&gt;
 s=  2 e=  1 t=   1.000 V1=   0.001 V2=   4.473 H11=   0.001 H22=&lt;br /&gt;
 4.473 H12=  -0.002 q=   0.0003    0.0004    0.0404   -0.0944&lt;br /&gt;
 -0.0292    0.0001&lt;br /&gt;
          53&lt;br /&gt;
 s=  1 e=  1 t=   1.500 V1=   0.113 V2=   4.543 H11=   0.120 H22=&lt;br /&gt;
 4.536 H12=   0.170 q=  -0.3994   -0.4377    0.5444    0.2057&lt;br /&gt;
 -0.5149   -0.0638&lt;br /&gt;
          53&lt;br /&gt;
 s=  2 e=  1 t=   1.500 V1=   0.013 V2=   4.390 H11=   0.013 H22=&lt;br /&gt;
 4.390 H12=  -0.005 q=   0.0009    0.0010    0.0897   -0.2104&lt;br /&gt;
 -0.0634    0.0002&lt;br /&gt;
          53&lt;br /&gt;
 s=  1 e=  1 t=   2.000 V1=   0.068 V2=   4.431 H11=   0.071 H22=&lt;br /&gt;
 4.428 H12=   0.110 q=  -0.2751   -0.3274    0.4796   -0.0812&lt;br /&gt;
 -0.3880   -0.0605&lt;br /&gt;
          54&lt;br /&gt;
 s=  2 e=  1 t=   2.000 V1=   0.019 V2=   4.367 H11=   0.019 H22=&lt;br /&gt;
 4.367 H12=  -0.009 q=   0.0012    0.0013    0.1563   -0.3658&lt;br /&gt;
 -0.1058    0.0003&lt;br /&gt;
          54&lt;br /&gt;
 s=  1 e=  1 t=   2.500 V1=   0.064 V2=   4.273 H11=   0.065 H22=&lt;br /&gt;
 4.272 H12=  -0.064 q=   0.2559    0.0914    0.1691   -0.7218&lt;br /&gt;
 -0.1052   -0.0595&lt;br /&gt;
          55&lt;br /&gt;
 s=  2 e=  1 t=   2.500 V1=   0.070 V2=   4.258 H11=   0.070 H22=&lt;br /&gt;
 4.257 H12=  -0.013 q=   0.0013    0.0015    0.2384   -0.5572&lt;br /&gt;
 -0.1528    0.0004&lt;br /&gt;
&lt;br /&gt;
Here, we started with a DB of 53 records. It is large enough until&lt;br /&gt;
2 fs, where an additional record is produced, and so on.&lt;br /&gt;
The error message saying here that records 18 and 19 are identical&lt;br /&gt;
will not prevent the code from working. It is just here to remind you&lt;br /&gt;
that the DB is not clean in that it has redundant records.&lt;br /&gt;
This is to be prevented as the DB files might become large quite&lt;br /&gt;
rapidly and all records will be read at each update time (dd_update&lt;br /&gt;
= tout in the integrator section, tout = xxx fs in the run section&lt;br /&gt;
of the *.inp file) for each Gaussian function.&lt;br /&gt;
&lt;br /&gt;
Incidentally, when you want to analyse results written to a *.res&lt;br /&gt;
file, you need to look for lines starting with &amp;quot;s=&amp;quot; (other lines&lt;br /&gt;
are various messages and numbers of DB records).&lt;br /&gt;
The criterion for using the DB is to be seen as a maximum-allowed&lt;br /&gt;
relative difference&lt;br /&gt;
&lt;br /&gt;
So, it is up to you to clean the DB when you see this, and to keep&lt;br /&gt;
this in mind when you concatenate DBs that have branched in their&lt;br /&gt;
past (see more details below).&lt;br /&gt;
&lt;br /&gt;
Also, a given DB depends on the choice of a reference geometry in&lt;br /&gt;
Cartesian coordinates because geometries written to the DB files&lt;br /&gt;
will always be re-orientated with respect to this particular&lt;br /&gt;
geometry. The back and forth transformations are performed by MCTDH (DD-vMCG)&lt;br /&gt;
so you don&#039;t need not worry about this.&lt;br /&gt;
This geometry is written to refdb.dat. It is the starting geometry&lt;br /&gt;
that comes from start.log (the only difference being that it is&lt;br /&gt;
mass-centred).&lt;br /&gt;
As long as you do not change the starting geometry or the nature&lt;br /&gt;
of the electronic states, you can thus keep growing the DB of your&lt;br /&gt;
system.&lt;br /&gt;
&lt;br /&gt;
MANAGING THE DATA BASE&lt;br /&gt;
&lt;br /&gt;
A set of DB  programs can be found in XXXXX. Their roles are&lt;br /&gt;
explained below.&lt;br /&gt;
For now, the sources are in dd_utildev and dd_util.31dv and the&lt;br /&gt;
executables are in mctdh90dev/bin and mctdh90.31dv/bin, so you can&lt;br /&gt;
call them from anywhere, as long as DB files are there.&lt;br /&gt;
&lt;br /&gt;
1) countdb.out: returns the number of records of the current DB&lt;br /&gt;
2) cleandb.out: &amp;quot;brute-force&amp;quot; cleaning of the current DB. This&lt;br /&gt;
might be too long to be run interactively when the number of&lt;br /&gt;
records is too large, because each record needs to be compared to&lt;br /&gt;
each other record (e.g. a DB with ca. 3800 records will take a couple of minutes to clean interactively). If so, run in batch mode (ask me or Marta if you&lt;br /&gt;
have a doubt).&lt;br /&gt;
The cleaned files are:&lt;br /&gt;
geoclean.db&lt;br /&gt;
pesclean.db&lt;br /&gt;
graclean.db&lt;br /&gt;
hesclean.db&lt;br /&gt;
You need to rename them without &#039;clean&#039; for them to be used as a DB.&lt;br /&gt;
3) cutdb.out: allows you to cut out the beginning of a DB.&lt;br /&gt;
This is to be used in the following situation:&lt;br /&gt;
- You start from a mother DB, DB0, assumed to be clean, with N0&lt;br /&gt;
records.&lt;br /&gt;
- You want to use DB0 in two independent calculations. You&lt;br /&gt;
replicate DB0 to daughter DBs, DB1 and DB2.&lt;br /&gt;
- When these calculations are done, DB1 and DB2 have grown to N0+N1&lt;br /&gt;
and N0+N2 records, respectively.&lt;br /&gt;
- You want to concatenate them to create a new mother DB, DB3.&lt;br /&gt;
- DB1 and DB2 have their N0 first records the same. To avoid&lt;br /&gt;
redundant records, you need to cut N0 records from DB2 for example.&lt;br /&gt;
--&amp;gt; go to where DB2 is and use cleandb.out&lt;br /&gt;
The resulting files are:&lt;br /&gt;
geocut.db&lt;br /&gt;
pescut.db&lt;br /&gt;
gracut.db&lt;br /&gt;
hescut.db&lt;br /&gt;
these have N1 records.&lt;br /&gt;
--&amp;gt; rename DB1, for instance geo.db1 etc., and concatenate the files:&lt;br /&gt;
cat geo.db1 geoclean.db &amp;gt; geo.db&lt;br /&gt;
etc.&lt;br /&gt;
- Your new mother DB, DB3, should now have N0+N1+N2 distinct records.&lt;br /&gt;
4) deldb.out: allows you to remove one selected record (for&lt;br /&gt;
instance if corrupted) from the DB if you know its number.&lt;br /&gt;
The resulting files are:&lt;br /&gt;
geodel.db&lt;br /&gt;
pesdel.db&lt;br /&gt;
gradel.db&lt;br /&gt;
hesdel.db&lt;br /&gt;
You need to rename them without &#039;del&#039; for them to be used as a DB.&lt;br /&gt;
5) seedb.out: allows you extract one selected record from the&lt;br /&gt;
binary files for reading it (the record is not removed from the DB).&lt;br /&gt;
The resulting file can be read as a text file (ascii) and is:&lt;br /&gt;
see.db&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Restarting dynamics jobs&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
The examples below make use of the directory and filenames in the examples above.&lt;br /&gt;
&lt;br /&gt;
A dynamics run can be restarted if the job was terminated before completion (e.g if it ran out of time or failed because of convergence problems) or if the user wishes to continue the job for a longer time period than had originally been specified. The program will continue writing the same output file but will overwrite the .res file. Thus the .res file should be saved under a different name to prevent loss of the data calculated in the original run. The .res is not written until the job stops so this can be done after the restart.&lt;br /&gt;
&lt;br /&gt;
*To increase the final propagation time&lt;br /&gt;
&lt;br /&gt;
Retrieve the .inp file (in $HOME/fulv) and change &#039;&#039;propagation&#039;&#039; to &#039;&#039;continuation&#039;&#039; in the section entitled RUN-SECTION. Then change the final time &#039;&#039;tfinal&#039;&#039; to a larger value. (NB this new value should include the time already done).&lt;br /&gt;
&lt;br /&gt;
Re-queue the job.&lt;br /&gt;
&lt;br /&gt;
*To increase the number of scf cycles (the most common reason for convergence failure)&lt;br /&gt;
&lt;br /&gt;
Edit the template.dat file in $WORK/fulv/fstodd4p_trial/dd_data. Insert scf=(maxcycle=128) on the keyword line (for example). It is important that you change the template.dat file in the fstodd4p_trial/dd_data folder that was created by dd_generator (rather than the one created by the user in $WORK/fulv/dd_data) because the original $WORK/fulv/dd_data/template.dat file is only read by dd_generator and used to create the job-specific file in the job folder. (Of course if you wish all future jobs run in $WORK/fulv  to have increased scf cycles, change the other template.dat file in $WORK/buta/dd_data too.)&lt;br /&gt;
&lt;br /&gt;
Re-queue the job.&lt;br /&gt;
&lt;br /&gt;
*To increase the run-time so that a job will finish&lt;br /&gt;
&lt;br /&gt;
Edit the walltime in the .job file in the $HOME directory and re-queue the job.&lt;br /&gt;
&lt;br /&gt;
=&#039;&#039;&#039;Analysis of the results&#039;&#039;&#039;=&lt;br /&gt;
&lt;br /&gt;
The most important files are the output and .res files.&lt;br /&gt;
&lt;br /&gt;
=== Detailed information about files and directories ===&lt;br /&gt;
&lt;br /&gt;
*output&lt;br /&gt;
&lt;br /&gt;
The output contains some standard results:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Time&#039;&#039;&#039;: time in fs.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;CPU&#039;&#039;&#039;:  CPU time in s.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Norm&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;E-tot&#039;&#039;&#039;: the total energy in eV. This value should be conserved (i.e by the end of the run the E-tot value should not be too different  from what it was a time=0).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;E-corr&#039;&#039;&#039;: correlated Hamiltonian energy&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Delta-E&#039;&#039;&#039;: diference between E-tot at time t=0 and the current time t&lt;br /&gt;
&lt;br /&gt;
Note: In a multi-packet run, i.e. when npacket &amp;gt; 1, the total energy and the norm of the wavefunction, as given in the &amp;quot;total&amp;quot; part, are averaged over the packets.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;population&#039;&#039;&#039; : diabatic populations of state 1 and state 2 (in that order) at the current time t&lt;br /&gt;
&lt;br /&gt;
For every mode:	&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt; q &amp;gt;&#039;&#039;&#039;: position expectation value&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;dq&amp;gt;&#039;&#039;&#039;: standard deviation Sqrt[&amp;lt; q&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt; &amp;gt; - &amp;lt; q &amp;gt;&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt; p &amp;gt;&#039;&#039;&#039; : momentum expectation value&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;dq&amp;gt;&#039;&#039;&#039;: standard deviation Sqrt[&amp;lt; p&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt; &amp;gt; - &amp;lt; p &amp;gt;&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*.res&lt;br /&gt;
&lt;br /&gt;
This file contains the energy of each state (diabatic and adiabatic) at each timestep for each gaussian function:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;s&#039;&#039;&#039; is a redundant value in mctdh90.31dv. It is only meaningful in multi-set implementations of mctdh (where there are double the number of gaussian functions than specified: one for each state). (It indicates whether the gaussian function in question is on the lower (1) or upper (2) state. (In the single set implementation, the gaussian functions on each state are identical)).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;e&#039;&#039;&#039; is a label given to each gaussian function&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;t&#039;&#039;&#039; is the current time in fs&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;V1&#039;&#039;&#039; is the energy of the lower adiabatic state at time t&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;V2&#039;&#039;&#039; is the energy of the upper adiabatic state at time t&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;H11&#039;&#039;&#039; is the energy of the lower diabatic state at time t&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;H22&#039;&#039;&#039; is the energy of the upper diabatic state at time t&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;H12&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;q&#039;&#039;&#039; is the list of frequency mass-weighted normal coordinates that describe the geometry at time t&lt;br /&gt;
&lt;br /&gt;
The end of the file will read something like: &lt;br /&gt;
&lt;br /&gt;
     Propagation was successful.&lt;br /&gt;
     &lt;br /&gt;
     Total time     [h:m:s] :    0 :  1 : 21.60&lt;br /&gt;
     &lt;br /&gt;
      ---------------------------------------------------------------------------&lt;br /&gt;
      ------ Host: &amp;quot;cx1-3-2-4&amp;quot; ----------Sat Jan 17 06:50:20 2009&lt;br /&gt;
&lt;br /&gt;
The other most common result is that the calculation aborted because of scf convergence problems in the CASSCF GAUSSIAN calculations. In this case the ouput file will break off after the last complete step and the end of the .res file will read something like:&lt;br /&gt;
     ERROR in subroutine Getddpes :&lt;br /&gt;
     CAS convergence failed for gwp on state:    1    1&lt;br /&gt;
&lt;br /&gt;
If the job terminates due to scf convergence problems, it may be possible to restart it after modifying the .inp and/or .job and/or template.dat files.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*log&lt;br /&gt;
&lt;br /&gt;
This file contains information such as the source code version, type of calculation performed, integrator used, numerical parameters, which data files are opened, any error messages, and much more. The information provided by the log file can be very helpful, in particular when searching for errors. One should always carefully inspect the log file.&lt;br /&gt;
&lt;br /&gt;
* dvr&lt;br /&gt;
&lt;br /&gt;
* oper&lt;br /&gt;
&lt;br /&gt;
*ddpeserr&lt;br /&gt;
&lt;br /&gt;
*input&lt;br /&gt;
&lt;br /&gt;
*op.log&lt;br /&gt;
&lt;br /&gt;
*psi&lt;br /&gt;
&lt;br /&gt;
*check&lt;br /&gt;
&lt;br /&gt;
*auto&lt;br /&gt;
&lt;br /&gt;
*ddpes&lt;br /&gt;
&lt;br /&gt;
*restart&lt;br /&gt;
&lt;br /&gt;
*stop&lt;br /&gt;
&lt;br /&gt;
*speed&lt;br /&gt;
&lt;br /&gt;
*timing&lt;br /&gt;
&lt;br /&gt;
*update&lt;br /&gt;
&lt;br /&gt;
=== Example: fulvene ===&lt;br /&gt;
&lt;br /&gt;
*Examine the end of the output file to check that the calculation ran to completion.&lt;br /&gt;
     &lt;br /&gt;
*Plot the energy of the diabatic and adiabatic states over time (.res file: V1, V2, H11 and H22). Calculate V2-V1 and H22-H11 and plot these also. H12 may also be plotted on the same graph.&lt;br /&gt;
[[Image:EnergyofStates.png]]&lt;br /&gt;
&lt;br /&gt;
The diabatic states cross at 176.2 fs and the adiabatic states cross at 174.5 fs. At a conical intersection, the value V2-V1 will become negative and the H22-H11 will be a minimum (&amp;lt;1eV). Ideally these crossings will occur at the same time. If the diabatisation has worked well, after V2-V1 becomes negative, V2-V1 and H22-H11 will become mirror images (i.e. the diabatic and adiabatic states follow each other). &lt;br /&gt;
&lt;br /&gt;
*Plot the value of the total energy over time (.res file: E-tot). Verify that the Delta-E value is not too large (compare with the total energy (E-tot) at time 0).&lt;br /&gt;
[[Image:TotalEnergy.png]]&lt;br /&gt;
&lt;br /&gt;
*Plot the population of one of the (diabatic) states over time (.res file: population).&lt;br /&gt;
[[Image:Population.png]]&lt;br /&gt;
&lt;br /&gt;
At the conical intersection the population transfer is large. In this case the job has been terminated after 200 fs. Usually the calculation should be continued until the populations stabilise (which obviously has not happened in this case).&lt;br /&gt;
&lt;br /&gt;
=== Making a Movie ===&lt;br /&gt;
&lt;br /&gt;
Navigate to /work/$USER/buta/but1dd1p_trial (the place where the .res file was written). Type:&lt;br /&gt;
 dd_movie.out&lt;br /&gt;
* The script will ask a series of questions and will use the answers provided to create a file that can be read into Molden or iMol.&lt;br /&gt;
&lt;br /&gt;
==== List of questions asked by dd_movie.out====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;blockquote style=&amp;quot;background: white; border: 1px solid black; padding: 1em;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Question&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; &#039;&#039;&#039;Answer for this tutorial&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; &#039;&#039;&#039;Explanation&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the number of atoms?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 10 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the actual number of active coordinates?&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 24 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; In this case all coordinates were active (so there are 3N-6 where N is the number of atoms) &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Name of result file to read?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; but1dd1p_trial.res &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;Ensure that the forward.dat and backward.dat files are located in the current directory in the folder dd_data (they will have been written there automatically)&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Name of movie file to write?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; but1dd1p_trial.xyz &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; Choose any name .xyz &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Which electronic state (s=...)?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 1 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;Choose 1 (this question dates from the multi-set implementation of mctdh where the wavepackets on each state were different)  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Which Gaussian function (e=...)?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 1 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;In this case we have only one wavepacket&amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;The script will now return the number of lines and the initial number of points&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
number of lines:        4684&lt;br /&gt;
initial number of points:        4674&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Maximum number of points you want?&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 4674 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;If you wish to view the movie in Molden you must reduce the number of points to less than 100 (so choose 99 for maximum number of points). iMol can cope with any number of frames so choose the number printed by the script: this number will be reduced and the script will tell you how many points it has written. &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
writing frequency:           2&lt;br /&gt;
   final number of points:        2337&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The .xyz file is ready to be opened in Molden or iMol.&lt;br /&gt;
&lt;br /&gt;
= &#039;&#039;&#039;Current Known Bugs&#039;&#039;&#039; =&lt;br /&gt;
&lt;br /&gt;
Parallelisation:&lt;br /&gt;
&lt;br /&gt;
It is not possible to run calculations in parallel with version 90.31dv (reading the same template.dat file simultaneously by each processor is causing problems). In 90.35tmp this is ok. In 90.4X it will also be fixed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Total energy:&lt;br /&gt;
&lt;br /&gt;
1) The total energy is sometimes &amp;quot;artificially&amp;quot; increased by a lot. If so, try a different integrator or play around with the timestep (may need to get larger or smaller). Or try increasing scf convergence to 10&amp;lt;sup&amp;gt;-12&amp;lt;/sup&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
2) If Delta-E suddenly becomes too large, you can get the following message: &lt;br /&gt;
&amp;quot;ERROR in subroutine WRGAUSSIAN :&lt;br /&gt;
 Do not use $Swap:...$ metastring in file /.../template.dat&amp;quot;&lt;br /&gt;
Often, when getting this message, no more steps are added to the simulation, although the calculation seems to keep running (the integrator keeps trying and failing).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Using the database:&lt;br /&gt;
&lt;br /&gt;
1) Every record generated with mctdh90.31dev and several GWPs is corrupted, so, for now, when launching calculations with more that one wavepacket, use &amp;quot;formdd_none.op&amp;quot; (i.e. do not read nor write the database).&lt;br /&gt;
[For instance, when using dbrdwr and starting from a clean db, all newly generated records are added to the existing database, even if they are identical to records that were already written in the db.]  In 90.35tmp this is ok. In 90.4X it will also be fixed.&lt;br /&gt;
&lt;br /&gt;
2) Records obtained in calculations with one GWP should be OK, but this is still to be confirmed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Impossible case&amp;quot;:&lt;br /&gt;
&lt;br /&gt;
Error message that forces the calculation to stop. It seems to be associated with moving towards an &amp;quot;unexpected&amp;quot; geometry (e.g. a radical).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
State Averaging:&lt;br /&gt;
&lt;br /&gt;
To increase the threshold above which stateaveraging is turned off, increase the default value of 10 (to e.g. 50)  in the line &#039;&#039;ddregions&#039;&#039; in the OPERATOR-SECTION of the .inp file.&lt;br /&gt;
&lt;br /&gt;
= &#039;&#039;&#039;Questions and Modifications to be made to this wiki&#039;&#039;&#039; =&lt;br /&gt;
&lt;br /&gt;
*Why we would ever need to start the gwps from the lower state? To study GS rxns; chemiluminesence (eg glowworms).&lt;br /&gt;
*In terms of Delta-E, how much is too much? ca1eV but shape of E-tot vs time is important: discontiunities or v flat then steep increase are less reliable than smooth gradual increases.&lt;br /&gt;
*Benjamin: Note that Marta has noticed that for very strange geometries, you may receive an error message saying &amp;quot;impossible case&amp;quot;, which stops MCTDH. It is too complicated to explain here. I know where this happens in the code, and I should prevent this error to stop the code but I didn&#039;t have time to fix this. I&#039;ll do it soon.&lt;br /&gt;
*Need to edit/correct section on the DB.&lt;br /&gt;
*Is does unfchk in gdvg03 create corrupted fchk files? G03 is fine. we don&#039;t know about gdvg03 but we don&#039;t care because we probablly won&#039;t use it.&lt;br /&gt;
&lt;br /&gt;
=== [[Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial|back]] ===&lt;/div&gt;</summary>
		<author><name>Vs13</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/run&amp;diff=333952</id>
		<title>Resgrp:comp-photo-dyn/mctdh90.56dv Fulvene Tutorial/run</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/run&amp;diff=333952"/>
		<updated>2013-04-29T11:08:05Z</updated>

		<summary type="html">&lt;p&gt;Vs13: /* Restarting dynamics jobs */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= &#039;&#039;&#039;Basic use of the MCTDH (DD-vMCG) package&#039;&#039;&#039; =&lt;br /&gt;
&lt;br /&gt;
A script called dd_generator uses GAUSSIAN output files and user input to write the input files for mctdh (DD-vMCG).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Notes&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;The number of gaussian wavepackets (requested by the dd_generator script)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
When studying a new system, start with one (to keep calculation times short). When an appropriate momentum, time period, time step and integrator have been established, increase the number of wavepackets until the results are not changed by adding more. Calculation times are proportional to the number of wavepackets. To ensure efficient use of computing resources, always specify an even number of wavepackets if using more than one processor (since the number of processors can only be an even number: currently 2, 4 or 8).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;The database&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The most time-consuming part of a dynamics run is the GAUSSIAN CASSCF calculations. The results of these calculations can be stored in a database and re-used in future runs. The user must choose whether or not to read and/or write a database. Each calculation will write a separate database so the databases from each run must be combined (and any duplicate entries removed (to save space)).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Initial momentum&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
An initial momentum can be specified to direct the wavepacket to a particular area of the PES (e.g. towards a conical intersection, a transition state or minimum geometry). The momentum is given as a geometry (in frequency mass weighted normal coordinates). The dd_rotation program used for rotation of the conical intersection can be used to transform the coordinates of the desired geometry. If the user requests an initial momentum, dd_generator will search for a file called momentum.dat. If this file is found, dd_generator will ask if the user wishes to use the momentum specified in it. The user can then specify how much energy to give (in eV). Thus, the values in momentum.dat need only be relative values (since they will be multiplied by a scaling factor to provide the total number of eV requested). If there is no file called momentum.dat in the appropriate folder, the user will not be asked to specify a total number of eV to give to the wavepacket(s). A momentum can still be added by manually modifying the .inp file after the dd_generator script has been run (replace the zero values in the fifth column of the section of the .inp file entitled INIT_WF-SECTION). However, it is simpler to create the momentum.dat file mainly because if the user edits the .inp file directly, there is no way of knowing what the total excess energy will be: the values listed in .inp also incorporate magnitude (not just relative values as in momentum.dat). &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Memory and number of processors&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
In template.dat, the memory for each GAUSSIAN CASSCF calculation is specified. In the .job file (created by dd_generator from user input) the total memory is specified. Thus, the memory specified in .job must be at least as great as the memory given in template.dat multiplied by the number of processors.&lt;br /&gt;
&lt;br /&gt;
The GAUSSIAN calculations for each wavepacket will run on a single processor. If the user specifies more than one processor then the calculations for each wavepacket can run simultaneously. To ensure efficient use of computing resources, always specify an even number of wavepackets when using more than one processor (since the number of processors can only be an even number: currently 2, 4 or 8).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Symmetry Considerations&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The way the diabatisation is performed in mctdh90.31dv sometimes leads to complications involving symmetry.  The diabatic states are defined using the conical intersection (or other geometry) described in coin.log. If the molecule is highly symmetric, there will be more than one conical intersection (all identical by symmetry). If the wavepacket moves close to one of the other conical intersections that is not described in coin.log, the diabatic states may not be properly described in this area of the PES. This of course means that the behaviour of the wavepacket(s) is likely to be described poorly also.&lt;br /&gt;
&lt;br /&gt;
If the conical intersection has lower symmetry than the starting material, the symmetry must necessarily be broken during the dynamics calculation before the conical intersection is reached. The breaking of each mode will occur either due to the accumulation of small numerical inaccuracies or if a momentum is given which forces particular modes to break symmetry.&lt;br /&gt;
Mctdh90.31dv uses frequency-mass-weighted normal coordinates to describe molecular geometries. Each frequency-mass-weighted coordinate corresponds to a vibration of the molecule (and there are therefore 3N-6 coordinates). Displacements of atoms are described by a (or a combination of) vibration(s). Each vibration can be displaced in one of two directions: positive or negative. The 3N-6 frequency-mass-weighted coordinates can be classified by symmetry. Whether a particular symmetry mode is broken in the positive or negative direction will be equally likely if no initial momentum is given. Thus for each mode that is broken during a simulation the symmetry may break in the positive direction or the negative direction. There will be 2&amp;lt;sup&amp;gt;x&amp;lt;/sup&amp;gt; possible conical intersections corresponding to a particular starting geometry, where x is the number of modes that must be broken going from starting material to conical intersection.&lt;br /&gt;
&lt;br /&gt;
Additionally, care must be taken over atom labeling. It must be possible to transform the starting material into the conical intersection without permuting atom labels. If the conical intersection has been optimised by following the MEP downhill from the starting material this is not likely to be a problem. However, bear this in mind if drawing the conical intersection by hand.  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Creating the Directories&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* First of all, create a folder in which to save the calculations in your $HOME and $WORK directories. Create a directory in $HOME, and an identical directory in $WORK that has the same path. Keep pathlengths as short as possible (if the total path becomes too long the dynamics code will not run). For simplicity, in this case, we are going to assume that this directory is named &#039;&#039;fulv&#039;&#039; (for fulvene).&lt;br /&gt;
&lt;br /&gt;
     mkdir fulv&lt;br /&gt;
&lt;br /&gt;
* Create a subdirectory called &#039;&#039;&#039;dd_data&#039;&#039;&#039; in the new directory in $WORK.  Thus you should start with:&lt;br /&gt;
&lt;br /&gt;
    /home/$USER/fulv&lt;br /&gt;
    /work/$USER/fulv/dd_data&lt;br /&gt;
&lt;br /&gt;
* Important Note: it is essential to have the same path in both directories, $HOME and $WORK. Do not change the path-names within the HOME/WORK directories. If you re-name or move any subdirectory in your, for example HOME directory, you have to be consistent and make the same changes in the $WORK directory.&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Gaussian Output to be Used as Input for the Dynamics Program&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* Populate the new directory /work/$USER/buta/dd_data with four files which must be named: &#039;&#039;&#039;coin.log&#039;&#039;&#039;; &#039;&#039;&#039;start.fchk&#039;&#039;&#039;; &#039;&#039;&#039;start.log&#039;&#039;&#039;; and &#039;&#039;&#039;template.dat&#039;&#039;&#039;.These files are required in order to run any dynamics simulation, they are the basis that the script dd_generator (see the following section) will use to create the necessary files for running MCTDH (DD-vMCG).  You may also create a file named &amp;quot;&#039;momentum.dat&amp;quot;&#039; if you wish to give a momentum to the wavepacket(s) (this is optional and may be created later instead). &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;coin.log&#039;&#039;&#039; is the logfile resulting from the optimisation of the conical intersection. NB The MCTDH (DD-vMCG) program will rotate the conical intersection before starting the dynamics. To do this it must be provided with three angles which describe the appropriate rotation. There is an Excel spreadsheet available to calculate these angles (see the section entitled &amp;quot;Rotating the Conical Intersection&amp;quot;). NB the structure in coin.log need not necessarily be a true conical intersection: this point is only used for performing the diabatisation. Thus the diabatisation will be exact at this point and will become more approximate the further you are from it (on the PES). If you wish to use a point that is not a conical intersection, simply run a conical intersection optimisation (with only a single step) on the desired geometry. This will create a file with the same layout as a conical intersection optimisation output file (mctdh looks for certain things in this file so if some other type of .log file were used instead, it might not contain the required information). NB the final conical intersection log file must only contain one geometry (otherwise the dynamics program will not know which geometry to use). IS THIS STATEMENT TRUE FOR THIS VERSION??&lt;br /&gt;
&lt;br /&gt;
[[Media:Coin.log]]&lt;br /&gt;
&lt;br /&gt;
(Insert a link here to section &amp;quot;Rotating the Conical Intersection&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;start.chk&#039;&#039;&#039; is the checkpoint file from the high precision vibrational modes of the ground state with state averaged orbitals (with atom types rather than numbers)&lt;br /&gt;
[[Media:Start.chk]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;start.log&#039;&#039;&#039; is the log file from the high precision vibrational modes of the ground state with state averaged orbitals (with atom types rather than numbers)&lt;br /&gt;
&lt;br /&gt;
[[Media:Start.log]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;template.dat&#039;&#039;&#039; is a template for the creation of GAUSSIAN input files by the MCTDH (DD-vMCG) program. It contains all the mutual keywords of the GAUSSIAN calculations which will be run on-the-fly by MCTDH (DD-vMCG). It also contains other information relating to the GAUSSIAN calculations such as memory requirements.&lt;br /&gt;
 &lt;br /&gt;
[[Media:Template.dat]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;momentum.dat&#039;&#039;&#039; is a file containing a list of values to be used as vectors to indicate the momentum to be given to a particular (set of) wavepacket(s). The vectors must be listed in the order of the frequency-mass-weighted normal coordinates specified in the coin.out file (i.e. the output file from dd_rotation program). They give the magnitude of the momentum to be given along each of these frequency-mass-weighted normal coordinates. N.B. The signs of the values here are important!&lt;br /&gt;
We are not giving a momentum in this simulation.&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;The Generator&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* The &amp;quot;generator&amp;quot; script uses the GAUSSIAN output files (above) along with other information supplied by the user to create input files for MCTDH (DD-vMCG).&lt;br /&gt;
&lt;br /&gt;
* Navigate to /home/$USER/fulv and run the generator by typing:&lt;br /&gt;
&lt;br /&gt;
     dd_generator&lt;br /&gt;
&lt;br /&gt;
for the HPC Cluster, or &lt;br /&gt;
&lt;br /&gt;
     dd_generator_MAC&lt;br /&gt;
&lt;br /&gt;
for a MAC OS X system&lt;br /&gt;
&lt;br /&gt;
* Typing dd_generator will run the script automatically. After installing the MCTDH (DD-vMCG) package this command has been added to your list of executable commands. &lt;br /&gt;
&lt;br /&gt;
     ********************************************************************************&lt;br /&gt;
     ********************    -------  DD GENERATOR  --------    *****************&lt;br /&gt;
     ********************************************************************************&lt;br /&gt;
&lt;br /&gt;
* The generator will ask a series of questions and will use the answers provided to prepare the input files for the dynamics program. The questions it asks are listed below along with answers for a trial run on butadiene.&lt;br /&gt;
&lt;br /&gt;
==== List of questions asked by dd_generator====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;blockquote style=&amp;quot;background: white; border: 1px solid black; padding: 1em;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Question&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; &#039;&#039;&#039;Answer for this tutorial&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; &#039;&#039;&#039;Explanation&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Which version of GAUSSIAN should we use? (gdvh01|g03)&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; gdvh01 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;How many shared-memory processors should we use? (1|2|4|8)&lt;br /&gt;
N.B.: (ncpus=1) serial or (ncpus=2|4|8) parallel (omp) version of MCTDH launched as batch job&lt;br /&gt;
and launching monoprocessor GAUSSIAN interactive jobs (nprocshared=1 or no specification)&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 4 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the name of the molecule?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; fulvene &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; The first four letters will be used to name the new files that the generator is creating &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the number of atoms?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 12 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;The number of nuclear degrees of freedom is 30.&lt;br /&gt;
Do you want to reduce the dimensionality? (y|n)&lt;br /&gt;
(N.B.: this can be used also for re-ordering the coordinates)&lt;br /&gt;
&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; n &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the number of nuclear Gaussian functions?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 4 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt; 4 means 4 gaussian on state 1 and 4 gaussian on state 2. This is the &amp;quot;single-set&amp;quot; implementation of MCTDH (DD-vMCG) therefore the gaussian wavepackets on state 1 are the same as the gaussian wavepackets on state 2.&amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;&#039;What is the final propagation time (in fs)?&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 150 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the propagation time step (in fs)?&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 0.1 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the number of electronic states? (1|2)&#039;&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 2 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the highest electronic root?&#039;&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 2 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;From which electronic state should the wavepacket start? (2|1)&#039;&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 2 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Will there be an initial momentum given to the wavepacket? (y|n)&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; n &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Do you want to add a reference label to the name of the case? (y|n)&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; y &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Please type your text:&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; trial &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;This question is only asked if the answer to the previous question was yes.  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What will be the status of the database? (rdwr|rd|wr|none)&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; none &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; Choose rd for read, wr for write etc. In this case we are not going to use the database, but if it was used (rd or rdwr is specified) the script would ask the user to specify the threshold below which the database values will be used (%). In this case the value none is chosen so this question is not asked.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;&amp;gt;&amp;gt; Manual rotation (using Excel spreadsheet) &amp;lt;&amp;lt;&lt;br /&gt;
   Please type the values of the three Euler angles (in deg)&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 0&lt;br /&gt;
0&lt;br /&gt;
0 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Tuple from the dd_rotation method (insert link)&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;The generator will now tell you that it has read the files start.chk from the folder /work/$USER/fulv/dd_data/ .&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Files created by the generator&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* The generator will now tell you that it has read the files start.log, coin.log and momentum.dat (if a momentum has been specified) from the folder /work/$USER/fulv/dd_data/:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
   about to read parameters...&lt;br /&gt;
   ... parameters just read&lt;br /&gt;
   about to read file /work/vs13/fulv/dd_data/start.log                   &lt;br /&gt;
                                                               ...&lt;br /&gt;
   ... file /work/vs13/fulv/dd_data/start.log                             &lt;br /&gt;
                                                      read successfully&lt;br /&gt;
   about to read file /work/vs13/fulv/dd_data/coin.log                    &lt;br /&gt;
                                                               ...&lt;br /&gt;
 *********************************************************&lt;br /&gt;
 Mass-weighted displacement from start to coin:&lt;br /&gt;
    old total norm: 22.070387&lt;br /&gt;
    new total norm:  4.669035&lt;br /&gt;
  vibrational part:  4.669035&lt;br /&gt;
   rotational part:  0.000000&lt;br /&gt;
 *********************************************************&lt;br /&gt;
   ... file /work/vs13/fulv/dd_data/coin.log                             &lt;br /&gt;
                                                      read successfully&lt;br /&gt;
&amp;lt;/pre&amp;gt; &lt;br /&gt;
&lt;br /&gt;
and that the extraction of data and the creation of a summary file were done successfully. If the Mass-weighted displacement from start to coin appears as NaN it may be because the start.log contains atom numbers rather than atom types. You will need to redo the freq=hpmodes job with atom types.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Data extracted successfully&lt;br /&gt;
The summary of this file generation is in:&lt;br /&gt;
-rw-r--r--  1 vs13 hpc-users 3070 Dec  2 17:06 /home/vs13/fulv/fstodd4o.txt&lt;br /&gt;
 &lt;br /&gt;
Do not forget you still can add a momentum, change the integrator,&lt;br /&gt;
change convergence criteria for GAUSSIAN and MCTDH...&lt;br /&gt;
 &lt;br /&gt;
Do not forget to check the order of the atoms of the conical intersection geometry&lt;br /&gt;
in /work/vs13/fulv/dd_data/coin.log&lt;br /&gt;
 &lt;br /&gt;
Now go to your jobscript file and give values to the memory and walltime.&lt;br /&gt;
 &lt;br /&gt;
Good luck!&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* The dd_generator script has generated four files in the same directory (/home/$USER/fulv):&lt;br /&gt;
&lt;br /&gt;
# fstodd4p_trial.inp  &lt;br /&gt;
# fstodd4p_trial.job  &lt;br /&gt;
# fstodd4p_trial.txt  &lt;br /&gt;
# fstodd_none.op&lt;br /&gt;
&lt;br /&gt;
(Link to a more detailed explanation of this files)&lt;br /&gt;
&lt;br /&gt;
* The script has also created some files and directories in /work/$USER/fulv where the MCTDH (DD-vMCG) and GAUSSIAN calculations will be stored:&lt;br /&gt;
&lt;br /&gt;
1) Directories:&lt;br /&gt;
&lt;br /&gt;
* fstodd4p_trial&lt;br /&gt;
* fstodd4p_trial/dd_data&lt;br /&gt;
&lt;br /&gt;
2) Files (in fstodd4o_trial/dd_data):&lt;br /&gt;
&lt;br /&gt;
# refdb.dat &lt;br /&gt;
# start.chk  &lt;br /&gt;
# template.dat&lt;br /&gt;
# forward.dat&lt;br /&gt;
# backward.dat&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Modifications to be made to the files before running the dynamics&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* In the .job file in /home/$USER/fulv specify the memory (in this case use 4000MB) and walltime (72:00:00) if you are in the HPC Cluster.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* When running a development version of GAUSSIAN (gdvg03 or gdvg01), copy the start.chk file into the folder /work/$USER/dyn_90dev/but1dd1p_trial/dd_data. The unformatted checkpoint file from start.fchk that dd_generator has created is corrupted (due to a bug in formchk in gdvg01).&lt;br /&gt;
has this been fixed?&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Running the dynamics&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* Navigate to /home/$USER/fulv. Queue the job file. In this case, type:&lt;br /&gt;
&lt;br /&gt;
     qsub fstodd4p_trial.job&lt;br /&gt;
&lt;br /&gt;
for MAC OS X users the shell command is already written in fstodd4p_trial.job&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;The Database (DB)&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
The DB is made of four binary files:&lt;br /&gt;
geo.db&lt;br /&gt;
pes.db&lt;br /&gt;
gra.db&lt;br /&gt;
hes.db&lt;br /&gt;
They can be used in place of GAUSSIAN calculations to save some&lt;br /&gt;
computation time when you ask for DBrd or DBrdwr.&lt;br /&gt;
&lt;br /&gt;
Each set of geometry, energy, gradient and Hessian (the latter&lt;br /&gt;
three quantities having been calculated by GAUSSIAN for the two&lt;br /&gt;
adiabatic electronic states) will be called a DB record and&lt;br /&gt;
assigned a record number defining the order of occurrence in the DB.&lt;br /&gt;
If you run a calculation where the DB is to be read, in the *.res&lt;br /&gt;
file that you obtain after the calculation is done (file that&lt;br /&gt;
actually is a redirection of the standard output) you will see the&lt;br /&gt;
number of records in the DB as it grows.&lt;br /&gt;
Example (formaldehyde, multi-set 1+1):&lt;br /&gt;
          53&lt;br /&gt;
 s=  1 e=  1 t=   0.000 V1=   0.001 V2=   4.533 H11=   0.001 H22=&lt;br /&gt;
 4.533 H12=   0.000 q=   0.0000    0.0000    0.0000    0.0000&lt;br /&gt;
 0.0000    0.0000&lt;br /&gt;
          53&lt;br /&gt;
 s=  2 e=  1 t=   0.000 V1=   0.001 V2=   4.533 H11=   0.001 H22=&lt;br /&gt;
 4.533 H12=   0.000 q=   0.0000    0.0000    0.0000    0.0000&lt;br /&gt;
 0.0000    0.0000&lt;br /&gt;
          53&lt;br /&gt;
 s=  1 e=  1 t=   0.500 V1=   0.197 V2=   4.701 H11=   0.211 H22=&lt;br /&gt;
 4.687 H12=   0.251 q=  -0.6258   -0.6146    0.6136    0.6049&lt;br /&gt;
 -0.5520   -0.0616&lt;br /&gt;
          53&lt;br /&gt;
 s=  2 e=  1 t=   0.500 V1=   0.000 V2=   4.533 H11=   0.000 H22=&lt;br /&gt;
 4.533 H12=  -0.001 q=   0.0009    0.0009    0.0093   -0.0245&lt;br /&gt;
 -0.0066    0.0001&lt;br /&gt;
          53&lt;br /&gt;
 &lt;br /&gt;
 ERROR in subroutine Distdb :&lt;br /&gt;
 Redundant records in Data Base:   18   19&lt;br /&gt;
 s=  1 e=  1 t=   1.000 V1=   0.469 V2=   4.455 H11=   0.479 H22=&lt;br /&gt;
 4.445 H12=   0.200 q=  -0.4640   -0.5641    1.2594   -0.5871&lt;br /&gt;
 -1.0864   -0.1120&lt;br /&gt;
          53&lt;br /&gt;
 s=  2 e=  1 t=   1.000 V1=   0.001 V2=   4.473 H11=   0.001 H22=&lt;br /&gt;
 4.473 H12=  -0.002 q=   0.0003    0.0004    0.0404   -0.0944&lt;br /&gt;
 -0.0292    0.0001&lt;br /&gt;
          53&lt;br /&gt;
 s=  1 e=  1 t=   1.500 V1=   0.113 V2=   4.543 H11=   0.120 H22=&lt;br /&gt;
 4.536 H12=   0.170 q=  -0.3994   -0.4377    0.5444    0.2057&lt;br /&gt;
 -0.5149   -0.0638&lt;br /&gt;
          53&lt;br /&gt;
 s=  2 e=  1 t=   1.500 V1=   0.013 V2=   4.390 H11=   0.013 H22=&lt;br /&gt;
 4.390 H12=  -0.005 q=   0.0009    0.0010    0.0897   -0.2104&lt;br /&gt;
 -0.0634    0.0002&lt;br /&gt;
          53&lt;br /&gt;
 s=  1 e=  1 t=   2.000 V1=   0.068 V2=   4.431 H11=   0.071 H22=&lt;br /&gt;
 4.428 H12=   0.110 q=  -0.2751   -0.3274    0.4796   -0.0812&lt;br /&gt;
 -0.3880   -0.0605&lt;br /&gt;
          54&lt;br /&gt;
 s=  2 e=  1 t=   2.000 V1=   0.019 V2=   4.367 H11=   0.019 H22=&lt;br /&gt;
 4.367 H12=  -0.009 q=   0.0012    0.0013    0.1563   -0.3658&lt;br /&gt;
 -0.1058    0.0003&lt;br /&gt;
          54&lt;br /&gt;
 s=  1 e=  1 t=   2.500 V1=   0.064 V2=   4.273 H11=   0.065 H22=&lt;br /&gt;
 4.272 H12=  -0.064 q=   0.2559    0.0914    0.1691   -0.7218&lt;br /&gt;
 -0.1052   -0.0595&lt;br /&gt;
          55&lt;br /&gt;
 s=  2 e=  1 t=   2.500 V1=   0.070 V2=   4.258 H11=   0.070 H22=&lt;br /&gt;
 4.257 H12=  -0.013 q=   0.0013    0.0015    0.2384   -0.5572&lt;br /&gt;
 -0.1528    0.0004&lt;br /&gt;
&lt;br /&gt;
Here, we started with a DB of 53 records. It is large enough until&lt;br /&gt;
2 fs, where an additional record is produced, and so on.&lt;br /&gt;
The error message saying here that records 18 and 19 are identical&lt;br /&gt;
will not prevent the code from working. It is just here to remind you&lt;br /&gt;
that the DB is not clean in that it has redundant records.&lt;br /&gt;
This is to be prevented as the DB files might become large quite&lt;br /&gt;
rapidly and all records will be read at each update time (dd_update&lt;br /&gt;
= tout in the integrator section, tout = xxx fs in the run section&lt;br /&gt;
of the *.inp file) for each Gaussian function.&lt;br /&gt;
&lt;br /&gt;
Incidentally, when you want to analyse results written to a *.res&lt;br /&gt;
file, you need to look for lines starting with &amp;quot;s=&amp;quot; (other lines&lt;br /&gt;
are various messages and numbers of DB records).&lt;br /&gt;
The criterion for using the DB is to be seen as a maximum-allowed&lt;br /&gt;
relative difference&lt;br /&gt;
&lt;br /&gt;
So, it is up to you to clean the DB when you see this, and to keep&lt;br /&gt;
this in mind when you concatenate DBs that have branched in their&lt;br /&gt;
past (see more details below).&lt;br /&gt;
&lt;br /&gt;
Also, a given DB depends on the choice of a reference geometry in&lt;br /&gt;
Cartesian coordinates because geometries written to the DB files&lt;br /&gt;
will always be re-orientated with respect to this particular&lt;br /&gt;
geometry. The back and forth transformations are performed by MCTDH (DD-vMCG)&lt;br /&gt;
so you don&#039;t need not worry about this.&lt;br /&gt;
This geometry is written to refdb.dat. It is the starting geometry&lt;br /&gt;
that comes from start.log (the only difference being that it is&lt;br /&gt;
mass-centred).&lt;br /&gt;
As long as you do not change the starting geometry or the nature&lt;br /&gt;
of the electronic states, you can thus keep growing the DB of your&lt;br /&gt;
system.&lt;br /&gt;
&lt;br /&gt;
MANAGING THE DATA BASE&lt;br /&gt;
&lt;br /&gt;
A set of DB  programs can be found in XXXXX. Their roles are&lt;br /&gt;
explained below.&lt;br /&gt;
For now, the sources are in dd_utildev and dd_util.31dv and the&lt;br /&gt;
executables are in mctdh90dev/bin and mctdh90.31dv/bin, so you can&lt;br /&gt;
call them from anywhere, as long as DB files are there.&lt;br /&gt;
&lt;br /&gt;
1) countdb.out: returns the number of records of the current DB&lt;br /&gt;
2) cleandb.out: &amp;quot;brute-force&amp;quot; cleaning of the current DB. This&lt;br /&gt;
might be too long to be run interactively when the number of&lt;br /&gt;
records is too large, because each record needs to be compared to&lt;br /&gt;
each other record (e.g. a DB with ca. 3800 records will take a couple of minutes to clean interactively). If so, run in batch mode (ask me or Marta if you&lt;br /&gt;
have a doubt).&lt;br /&gt;
The cleaned files are:&lt;br /&gt;
geoclean.db&lt;br /&gt;
pesclean.db&lt;br /&gt;
graclean.db&lt;br /&gt;
hesclean.db&lt;br /&gt;
You need to rename them without &#039;clean&#039; for them to be used as a DB.&lt;br /&gt;
3) cutdb.out: allows you to cut out the beginning of a DB.&lt;br /&gt;
This is to be used in the following situation:&lt;br /&gt;
- You start from a mother DB, DB0, assumed to be clean, with N0&lt;br /&gt;
records.&lt;br /&gt;
- You want to use DB0 in two independent calculations. You&lt;br /&gt;
replicate DB0 to daughter DBs, DB1 and DB2.&lt;br /&gt;
- When these calculations are done, DB1 and DB2 have grown to N0+N1&lt;br /&gt;
and N0+N2 records, respectively.&lt;br /&gt;
- You want to concatenate them to create a new mother DB, DB3.&lt;br /&gt;
- DB1 and DB2 have their N0 first records the same. To avoid&lt;br /&gt;
redundant records, you need to cut N0 records from DB2 for example.&lt;br /&gt;
--&amp;gt; go to where DB2 is and use cleandb.out&lt;br /&gt;
The resulting files are:&lt;br /&gt;
geocut.db&lt;br /&gt;
pescut.db&lt;br /&gt;
gracut.db&lt;br /&gt;
hescut.db&lt;br /&gt;
these have N1 records.&lt;br /&gt;
--&amp;gt; rename DB1, for instance geo.db1 etc., and concatenate the files:&lt;br /&gt;
cat geo.db1 geoclean.db &amp;gt; geo.db&lt;br /&gt;
etc.&lt;br /&gt;
- Your new mother DB, DB3, should now have N0+N1+N2 distinct records.&lt;br /&gt;
4) deldb.out: allows you to remove one selected record (for&lt;br /&gt;
instance if corrupted) from the DB if you know its number.&lt;br /&gt;
The resulting files are:&lt;br /&gt;
geodel.db&lt;br /&gt;
pesdel.db&lt;br /&gt;
gradel.db&lt;br /&gt;
hesdel.db&lt;br /&gt;
You need to rename them without &#039;del&#039; for them to be used as a DB.&lt;br /&gt;
5) seedb.out: allows you extract one selected record from the&lt;br /&gt;
binary files for reading it (the record is not removed from the DB).&lt;br /&gt;
The resulting file can be read as a text file (ascii) and is:&lt;br /&gt;
see.db&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Restarting dynamics jobs&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
The examples below make use of the directory and filenames in the examples above.&lt;br /&gt;
&lt;br /&gt;
A dynamics run can be restarted if the job was terminated before completion (e.g if it ran out of time or failed because of convergence problems) or if the user wishes to continue the job for a longer time period than had originally been specified. The program will continue writing the same output file but will overwrite the .res file. Thus the .res file should be saved under a different name to prevent loss of the data calculated in the original run. The .res is not written until the job stops so this can be done after the restart.&lt;br /&gt;
&lt;br /&gt;
*To increase the final propagation time&lt;br /&gt;
&lt;br /&gt;
Retrieve the .inp file (in $HOME/fulv) and change &#039;&#039;propagation&#039;&#039; to &#039;&#039;continuation&#039;&#039; in the section entitled RUN-SECTION. Then change the final time &#039;&#039;tfinal&#039;&#039; to a larger value. (NB this new value should include the time already done).&lt;br /&gt;
&lt;br /&gt;
Re-queue the job.&lt;br /&gt;
&lt;br /&gt;
*To increase the number of scf cycles (the most common reason for convergence failure)&lt;br /&gt;
&lt;br /&gt;
Edit the template.dat file in $WORK/fulv/fstodd4p_trial/dd_data. Insert scf=(maxcycle=128) on the keyword line (for example). It is important that you change the template.dat file in the fstodd4p_trial/dd_data folder that was created by dd_generator (rather than the one created by the user in $WORK/fulv/dd_data) because the original $WORK/fulv/dd_data/template.dat file is only read by dd_generator and used to create the job-specific file in the job folder. (Of course if you wish all future jobs run in $WORK/fulv  to have increased scf cycles, change the other template.dat file in $WORK/buta/dd_data too.)&lt;br /&gt;
&lt;br /&gt;
Re-queue the job.&lt;br /&gt;
&lt;br /&gt;
*To increase the run-time so that a job will finish&lt;br /&gt;
&lt;br /&gt;
Edit the walltime in the .job file in the $HOME directory and re-queue the job.&lt;br /&gt;
&lt;br /&gt;
=&#039;&#039;&#039;Analysis of the results&#039;&#039;&#039;=&lt;br /&gt;
&lt;br /&gt;
The most important files are the output and .res files.&lt;br /&gt;
&lt;br /&gt;
=== Detailed information about files and directories ===&lt;br /&gt;
&lt;br /&gt;
*output&lt;br /&gt;
&lt;br /&gt;
The output contains some standard results:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Time&#039;&#039;&#039;: time in fs.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;CPU&#039;&#039;&#039;:  CPU time in s.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Norm&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;E-tot&#039;&#039;&#039;: the total energy in eV. This value should be conserved (i.e by the end of the run the E-tot value should not be too different  from what it was a time=0).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;E-corr&#039;&#039;&#039;: correlated Hamiltonian energy&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Delta-E&#039;&#039;&#039;: diference between E-tot at time t=0 and the current time t&lt;br /&gt;
&lt;br /&gt;
Note: In a multi-packet run, i.e. when npacket &amp;gt; 1, the total energy and the norm of the wavefunction, as given in the &amp;quot;total&amp;quot; part, are averaged over the packets.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;population&#039;&#039;&#039; : diabatic populations of state 1 and state 2 (in that order) at the current time t&lt;br /&gt;
&lt;br /&gt;
For every mode:	&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt; q &amp;gt;&#039;&#039;&#039;: position expectation value&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;dq&amp;gt;&#039;&#039;&#039;: standard deviation Sqrt[&amp;lt; q&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt; &amp;gt; - &amp;lt; q &amp;gt;&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt; p &amp;gt;&#039;&#039;&#039; : momentum expectation value&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;dq&amp;gt;&#039;&#039;&#039;: standard deviation Sqrt[&amp;lt; p&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt; &amp;gt; - &amp;lt; p &amp;gt;&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*.res&lt;br /&gt;
&lt;br /&gt;
This file contains the energy of each state (diabatic and adiabatic) at each timestep for each gaussian function:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;s&#039;&#039;&#039; is a redundant value in mctdh90.31dv. It is only meaningful in multi-set implementations of mctdh (where there are double the number of gaussian functions than specified: one for each state). (It indicates whether the gaussian function in question is on the lower (1) or upper (2) state. (In the single set implementation, the gaussian functions on each state are identical)).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;e&#039;&#039;&#039; is a label given to each gaussian function&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;t&#039;&#039;&#039; is the current time in fs&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;V1&#039;&#039;&#039; is the energy of the lower adiabatic state at time t&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;V2&#039;&#039;&#039; is the energy of the upper adiabatic state at time t&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;H11&#039;&#039;&#039; is the energy of the lower diabatic state at time t&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;H22&#039;&#039;&#039; is the energy of the upper diabatic state at time t&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;H12&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;q&#039;&#039;&#039; is the list of frequency mass-weighted normal coordinates that describe the geometry at time t&lt;br /&gt;
&lt;br /&gt;
The end of the file will read something like: &lt;br /&gt;
&lt;br /&gt;
     Propagation was successful.&lt;br /&gt;
     &lt;br /&gt;
     Total time     [h:m:s] :    0 :  1 : 21.60&lt;br /&gt;
     &lt;br /&gt;
      ---------------------------------------------------------------------------&lt;br /&gt;
      ------ Host: &amp;quot;cx1-3-2-4&amp;quot; ----------Sat Jan 17 06:50:20 2009&lt;br /&gt;
&lt;br /&gt;
The other most common result is that the calculation aborted because of scf convergence problems in the CASSCF GAUSSIAN calculations. In this case the ouput file will break off after the last complete step and the end of the .res file will read something like:&lt;br /&gt;
     ERROR in subroutine Getddpes :&lt;br /&gt;
     CAS convergence failed for gwp on state:    1    1&lt;br /&gt;
&lt;br /&gt;
If the job terminates due to scf convergence problems, it may be possible to restart it after modifying the .inp and/or .job and/or template.dat files.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*log&lt;br /&gt;
&lt;br /&gt;
This file contains information such as the source code version, type of calculation performed, integrator used, numerical parameters, which data files are opened, any error messages, and much more. The information provided by the log file can be very helpful, in particular when searching for errors. One should always carefully inspect the log file.&lt;br /&gt;
&lt;br /&gt;
* dvr&lt;br /&gt;
&lt;br /&gt;
* oper&lt;br /&gt;
&lt;br /&gt;
*ddpeserr&lt;br /&gt;
&lt;br /&gt;
*input&lt;br /&gt;
&lt;br /&gt;
*op.log&lt;br /&gt;
&lt;br /&gt;
*psi&lt;br /&gt;
&lt;br /&gt;
*check&lt;br /&gt;
&lt;br /&gt;
*auto&lt;br /&gt;
&lt;br /&gt;
*ddpes&lt;br /&gt;
&lt;br /&gt;
*restart&lt;br /&gt;
&lt;br /&gt;
*stop&lt;br /&gt;
&lt;br /&gt;
*speed&lt;br /&gt;
&lt;br /&gt;
*timing&lt;br /&gt;
&lt;br /&gt;
*update&lt;br /&gt;
&lt;br /&gt;
=== Example: butadiene ===&lt;br /&gt;
&lt;br /&gt;
*Examine the end of the output file to check that the calculation ran to completion.&lt;br /&gt;
     &lt;br /&gt;
*Plot the energy of the diabatic and adiabatic states over time (.res file: V1, V2, H11 and H22). Calculate V2-V1 and H22-H11 and plot these also. H12 may also be plotted on the same graph.&lt;br /&gt;
[[Image:EnergyofStates.png]]&lt;br /&gt;
&lt;br /&gt;
The diabatic states cross at 176.2 fs and the adiabatic states cross at 174.5 fs. At a conical intersection, the value V2-V1 will become negative and the H22-H11 will be a minimum (&amp;lt;1eV). Ideally these crossings will occur at the same time. If the diabatisation has worked well, after V2-V1 becomes negative, V2-V1 and H22-H11 will become mirror images (i.e. the diabatic and adiabatic states follow each other). &lt;br /&gt;
&lt;br /&gt;
*Plot the value of the total energy over time (.res file: E-tot). Verify that the Delta-E value is not too large (compare with the total energy (E-tot) at time 0).&lt;br /&gt;
[[Image:TotalEnergy.png]]&lt;br /&gt;
&lt;br /&gt;
*Plot the population of one of the (diabatic) states over time (.res file: population).&lt;br /&gt;
[[Image:Population.png]]&lt;br /&gt;
&lt;br /&gt;
At the conical intersection the population transfer is large. In this case the job has been terminated after 200 fs. Usually the calculation should be continued until the populations stabilise (which obviously has not happened in this case).&lt;br /&gt;
&lt;br /&gt;
=== Making a Movie ===&lt;br /&gt;
&lt;br /&gt;
Navigate to /work/$USER/buta/but1dd1p_trial (the place where the .res file was written). Type:&lt;br /&gt;
 dd_movie.out&lt;br /&gt;
* The script will ask a series of questions and will use the answers provided to create a file that can be read into Molden or iMol.&lt;br /&gt;
&lt;br /&gt;
==== List of questions asked by dd_movie.out====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;blockquote style=&amp;quot;background: white; border: 1px solid black; padding: 1em;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Question&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; &#039;&#039;&#039;Answer for this tutorial&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; &#039;&#039;&#039;Explanation&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the number of atoms?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 10 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the actual number of active coordinates?&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 24 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; In this case all coordinates were active (so there are 3N-6 where N is the number of atoms) &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Name of result file to read?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; but1dd1p_trial.res &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;Ensure that the forward.dat and backward.dat files are located in the current directory in the folder dd_data (they will have been written there automatically)&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Name of movie file to write?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; but1dd1p_trial.xyz &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; Choose any name .xyz &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Which electronic state (s=...)?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 1 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;Choose 1 (this question dates from the multi-set implementation of mctdh where the wavepackets on each state were different)  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Which Gaussian function (e=...)?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 1 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;In this case we have only one wavepacket&amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;The script will now return the number of lines and the initial number of points&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
number of lines:        4684&lt;br /&gt;
initial number of points:        4674&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Maximum number of points you want?&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 4674 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;If you wish to view the movie in Molden you must reduce the number of points to less than 100 (so choose 99 for maximum number of points). iMol can cope with any number of frames so choose the number printed by the script: this number will be reduced and the script will tell you how many points it has written. &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
writing frequency:           2&lt;br /&gt;
   final number of points:        2337&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The .xyz file is ready to be opened in Molden or iMol.&lt;br /&gt;
&lt;br /&gt;
= &#039;&#039;&#039;Current Known Bugs&#039;&#039;&#039; =&lt;br /&gt;
&lt;br /&gt;
Parallelisation:&lt;br /&gt;
&lt;br /&gt;
It is not possible to run calculations in parallel with version 90.31dv (reading the same template.dat file simultaneously by each processor is causing problems). In 90.35tmp this is ok. In 90.4X it will also be fixed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Total energy:&lt;br /&gt;
&lt;br /&gt;
1) The total energy is sometimes &amp;quot;artificially&amp;quot; increased by a lot. If so, try a different integrator or play around with the timestep (may need to get larger or smaller). Or try increasing scf convergence to 10&amp;lt;sup&amp;gt;-12&amp;lt;/sup&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
2) If Delta-E suddenly becomes too large, you can get the following message: &lt;br /&gt;
&amp;quot;ERROR in subroutine WRGAUSSIAN :&lt;br /&gt;
 Do not use $Swap:...$ metastring in file /.../template.dat&amp;quot;&lt;br /&gt;
Often, when getting this message, no more steps are added to the simulation, although the calculation seems to keep running (the integrator keeps trying and failing).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Using the database:&lt;br /&gt;
&lt;br /&gt;
1) Every record generated with mctdh90.31dev and several GWPs is corrupted, so, for now, when launching calculations with more that one wavepacket, use &amp;quot;formdd_none.op&amp;quot; (i.e. do not read nor write the database).&lt;br /&gt;
[For instance, when using dbrdwr and starting from a clean db, all newly generated records are added to the existing database, even if they are identical to records that were already written in the db.]  In 90.35tmp this is ok. In 90.4X it will also be fixed.&lt;br /&gt;
&lt;br /&gt;
2) Records obtained in calculations with one GWP should be OK, but this is still to be confirmed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Impossible case&amp;quot;:&lt;br /&gt;
&lt;br /&gt;
Error message that forces the calculation to stop. It seems to be associated with moving towards an &amp;quot;unexpected&amp;quot; geometry (e.g. a radical).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
State Averaging:&lt;br /&gt;
&lt;br /&gt;
To increase the threshold above which stateaveraging is turned off, increase the default value of 10 (to e.g. 50)  in the line &#039;&#039;ddregions&#039;&#039; in the OPERATOR-SECTION of the .inp file.&lt;br /&gt;
&lt;br /&gt;
= &#039;&#039;&#039;Questions and Modifications to be made to this wiki&#039;&#039;&#039; =&lt;br /&gt;
&lt;br /&gt;
*Why we would ever need to start the gwps from the lower state? To study GS rxns; chemiluminesence (eg glowworms).&lt;br /&gt;
*In terms of Delta-E, how much is too much? ca1eV but shape of E-tot vs time is important: discontiunities or v flat then steep increase are less reliable than smooth gradual increases.&lt;br /&gt;
*Benjamin: Note that Marta has noticed that for very strange geometries, you may receive an error message saying &amp;quot;impossible case&amp;quot;, which stops MCTDH. It is too complicated to explain here. I know where this happens in the code, and I should prevent this error to stop the code but I didn&#039;t have time to fix this. I&#039;ll do it soon.&lt;br /&gt;
*Need to edit/correct section on the DB.&lt;br /&gt;
*Is does unfchk in gdvg03 create corrupted fchk files? G03 is fine. we don&#039;t know about gdvg03 but we don&#039;t care because we probablly won&#039;t use it.&lt;br /&gt;
&lt;br /&gt;
=== [[Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial|back]] ===&lt;/div&gt;</summary>
		<author><name>Vs13</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/run&amp;diff=333951</id>
		<title>Resgrp:comp-photo-dyn/mctdh90.56dv Fulvene Tutorial/run</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/run&amp;diff=333951"/>
		<updated>2013-04-29T10:56:41Z</updated>

		<summary type="html">&lt;p&gt;Vs13: /* Modifications to be made to the files before running the dynamics */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= &#039;&#039;&#039;Basic use of the MCTDH (DD-vMCG) package&#039;&#039;&#039; =&lt;br /&gt;
&lt;br /&gt;
A script called dd_generator uses GAUSSIAN output files and user input to write the input files for mctdh (DD-vMCG).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Notes&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;The number of gaussian wavepackets (requested by the dd_generator script)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
When studying a new system, start with one (to keep calculation times short). When an appropriate momentum, time period, time step and integrator have been established, increase the number of wavepackets until the results are not changed by adding more. Calculation times are proportional to the number of wavepackets. To ensure efficient use of computing resources, always specify an even number of wavepackets if using more than one processor (since the number of processors can only be an even number: currently 2, 4 or 8).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;The database&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The most time-consuming part of a dynamics run is the GAUSSIAN CASSCF calculations. The results of these calculations can be stored in a database and re-used in future runs. The user must choose whether or not to read and/or write a database. Each calculation will write a separate database so the databases from each run must be combined (and any duplicate entries removed (to save space)).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Initial momentum&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
An initial momentum can be specified to direct the wavepacket to a particular area of the PES (e.g. towards a conical intersection, a transition state or minimum geometry). The momentum is given as a geometry (in frequency mass weighted normal coordinates). The dd_rotation program used for rotation of the conical intersection can be used to transform the coordinates of the desired geometry. If the user requests an initial momentum, dd_generator will search for a file called momentum.dat. If this file is found, dd_generator will ask if the user wishes to use the momentum specified in it. The user can then specify how much energy to give (in eV). Thus, the values in momentum.dat need only be relative values (since they will be multiplied by a scaling factor to provide the total number of eV requested). If there is no file called momentum.dat in the appropriate folder, the user will not be asked to specify a total number of eV to give to the wavepacket(s). A momentum can still be added by manually modifying the .inp file after the dd_generator script has been run (replace the zero values in the fifth column of the section of the .inp file entitled INIT_WF-SECTION). However, it is simpler to create the momentum.dat file mainly because if the user edits the .inp file directly, there is no way of knowing what the total excess energy will be: the values listed in .inp also incorporate magnitude (not just relative values as in momentum.dat). &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Memory and number of processors&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
In template.dat, the memory for each GAUSSIAN CASSCF calculation is specified. In the .job file (created by dd_generator from user input) the total memory is specified. Thus, the memory specified in .job must be at least as great as the memory given in template.dat multiplied by the number of processors.&lt;br /&gt;
&lt;br /&gt;
The GAUSSIAN calculations for each wavepacket will run on a single processor. If the user specifies more than one processor then the calculations for each wavepacket can run simultaneously. To ensure efficient use of computing resources, always specify an even number of wavepackets when using more than one processor (since the number of processors can only be an even number: currently 2, 4 or 8).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Symmetry Considerations&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The way the diabatisation is performed in mctdh90.31dv sometimes leads to complications involving symmetry.  The diabatic states are defined using the conical intersection (or other geometry) described in coin.log. If the molecule is highly symmetric, there will be more than one conical intersection (all identical by symmetry). If the wavepacket moves close to one of the other conical intersections that is not described in coin.log, the diabatic states may not be properly described in this area of the PES. This of course means that the behaviour of the wavepacket(s) is likely to be described poorly also.&lt;br /&gt;
&lt;br /&gt;
If the conical intersection has lower symmetry than the starting material, the symmetry must necessarily be broken during the dynamics calculation before the conical intersection is reached. The breaking of each mode will occur either due to the accumulation of small numerical inaccuracies or if a momentum is given which forces particular modes to break symmetry.&lt;br /&gt;
Mctdh90.31dv uses frequency-mass-weighted normal coordinates to describe molecular geometries. Each frequency-mass-weighted coordinate corresponds to a vibration of the molecule (and there are therefore 3N-6 coordinates). Displacements of atoms are described by a (or a combination of) vibration(s). Each vibration can be displaced in one of two directions: positive or negative. The 3N-6 frequency-mass-weighted coordinates can be classified by symmetry. Whether a particular symmetry mode is broken in the positive or negative direction will be equally likely if no initial momentum is given. Thus for each mode that is broken during a simulation the symmetry may break in the positive direction or the negative direction. There will be 2&amp;lt;sup&amp;gt;x&amp;lt;/sup&amp;gt; possible conical intersections corresponding to a particular starting geometry, where x is the number of modes that must be broken going from starting material to conical intersection.&lt;br /&gt;
&lt;br /&gt;
Additionally, care must be taken over atom labeling. It must be possible to transform the starting material into the conical intersection without permuting atom labels. If the conical intersection has been optimised by following the MEP downhill from the starting material this is not likely to be a problem. However, bear this in mind if drawing the conical intersection by hand.  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Creating the Directories&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* First of all, create a folder in which to save the calculations in your $HOME and $WORK directories. Create a directory in $HOME, and an identical directory in $WORK that has the same path. Keep pathlengths as short as possible (if the total path becomes too long the dynamics code will not run). For simplicity, in this case, we are going to assume that this directory is named &#039;&#039;fulv&#039;&#039; (for fulvene).&lt;br /&gt;
&lt;br /&gt;
     mkdir fulv&lt;br /&gt;
&lt;br /&gt;
* Create a subdirectory called &#039;&#039;&#039;dd_data&#039;&#039;&#039; in the new directory in $WORK.  Thus you should start with:&lt;br /&gt;
&lt;br /&gt;
    /home/$USER/fulv&lt;br /&gt;
    /work/$USER/fulv/dd_data&lt;br /&gt;
&lt;br /&gt;
* Important Note: it is essential to have the same path in both directories, $HOME and $WORK. Do not change the path-names within the HOME/WORK directories. If you re-name or move any subdirectory in your, for example HOME directory, you have to be consistent and make the same changes in the $WORK directory.&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Gaussian Output to be Used as Input for the Dynamics Program&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* Populate the new directory /work/$USER/buta/dd_data with four files which must be named: &#039;&#039;&#039;coin.log&#039;&#039;&#039;; &#039;&#039;&#039;start.fchk&#039;&#039;&#039;; &#039;&#039;&#039;start.log&#039;&#039;&#039;; and &#039;&#039;&#039;template.dat&#039;&#039;&#039;.These files are required in order to run any dynamics simulation, they are the basis that the script dd_generator (see the following section) will use to create the necessary files for running MCTDH (DD-vMCG).  You may also create a file named &amp;quot;&#039;momentum.dat&amp;quot;&#039; if you wish to give a momentum to the wavepacket(s) (this is optional and may be created later instead). &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;coin.log&#039;&#039;&#039; is the logfile resulting from the optimisation of the conical intersection. NB The MCTDH (DD-vMCG) program will rotate the conical intersection before starting the dynamics. To do this it must be provided with three angles which describe the appropriate rotation. There is an Excel spreadsheet available to calculate these angles (see the section entitled &amp;quot;Rotating the Conical Intersection&amp;quot;). NB the structure in coin.log need not necessarily be a true conical intersection: this point is only used for performing the diabatisation. Thus the diabatisation will be exact at this point and will become more approximate the further you are from it (on the PES). If you wish to use a point that is not a conical intersection, simply run a conical intersection optimisation (with only a single step) on the desired geometry. This will create a file with the same layout as a conical intersection optimisation output file (mctdh looks for certain things in this file so if some other type of .log file were used instead, it might not contain the required information). NB the final conical intersection log file must only contain one geometry (otherwise the dynamics program will not know which geometry to use). IS THIS STATEMENT TRUE FOR THIS VERSION??&lt;br /&gt;
&lt;br /&gt;
[[Media:Coin.log]]&lt;br /&gt;
&lt;br /&gt;
(Insert a link here to section &amp;quot;Rotating the Conical Intersection&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;start.chk&#039;&#039;&#039; is the checkpoint file from the high precision vibrational modes of the ground state with state averaged orbitals (with atom types rather than numbers)&lt;br /&gt;
[[Media:Start.chk]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;start.log&#039;&#039;&#039; is the log file from the high precision vibrational modes of the ground state with state averaged orbitals (with atom types rather than numbers)&lt;br /&gt;
&lt;br /&gt;
[[Media:Start.log]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;template.dat&#039;&#039;&#039; is a template for the creation of GAUSSIAN input files by the MCTDH (DD-vMCG) program. It contains all the mutual keywords of the GAUSSIAN calculations which will be run on-the-fly by MCTDH (DD-vMCG). It also contains other information relating to the GAUSSIAN calculations such as memory requirements.&lt;br /&gt;
 &lt;br /&gt;
[[Media:Template.dat]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;momentum.dat&#039;&#039;&#039; is a file containing a list of values to be used as vectors to indicate the momentum to be given to a particular (set of) wavepacket(s). The vectors must be listed in the order of the frequency-mass-weighted normal coordinates specified in the coin.out file (i.e. the output file from dd_rotation program). They give the magnitude of the momentum to be given along each of these frequency-mass-weighted normal coordinates. N.B. The signs of the values here are important!&lt;br /&gt;
We are not giving a momentum in this simulation.&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;The Generator&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* The &amp;quot;generator&amp;quot; script uses the GAUSSIAN output files (above) along with other information supplied by the user to create input files for MCTDH (DD-vMCG).&lt;br /&gt;
&lt;br /&gt;
* Navigate to /home/$USER/fulv and run the generator by typing:&lt;br /&gt;
&lt;br /&gt;
     dd_generator&lt;br /&gt;
&lt;br /&gt;
for the HPC Cluster, or &lt;br /&gt;
&lt;br /&gt;
     dd_generator_MAC&lt;br /&gt;
&lt;br /&gt;
for a MAC OS X system&lt;br /&gt;
&lt;br /&gt;
* Typing dd_generator will run the script automatically. After installing the MCTDH (DD-vMCG) package this command has been added to your list of executable commands. &lt;br /&gt;
&lt;br /&gt;
     ********************************************************************************&lt;br /&gt;
     ********************    -------  DD GENERATOR  --------    *****************&lt;br /&gt;
     ********************************************************************************&lt;br /&gt;
&lt;br /&gt;
* The generator will ask a series of questions and will use the answers provided to prepare the input files for the dynamics program. The questions it asks are listed below along with answers for a trial run on butadiene.&lt;br /&gt;
&lt;br /&gt;
==== List of questions asked by dd_generator====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;blockquote style=&amp;quot;background: white; border: 1px solid black; padding: 1em;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Question&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; &#039;&#039;&#039;Answer for this tutorial&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; &#039;&#039;&#039;Explanation&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Which version of GAUSSIAN should we use? (gdvh01|g03)&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; gdvh01 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;How many shared-memory processors should we use? (1|2|4|8)&lt;br /&gt;
N.B.: (ncpus=1) serial or (ncpus=2|4|8) parallel (omp) version of MCTDH launched as batch job&lt;br /&gt;
and launching monoprocessor GAUSSIAN interactive jobs (nprocshared=1 or no specification)&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 4 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the name of the molecule?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; fulvene &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; The first four letters will be used to name the new files that the generator is creating &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the number of atoms?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 12 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;The number of nuclear degrees of freedom is 30.&lt;br /&gt;
Do you want to reduce the dimensionality? (y|n)&lt;br /&gt;
(N.B.: this can be used also for re-ordering the coordinates)&lt;br /&gt;
&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; n &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the number of nuclear Gaussian functions?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 4 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt; 4 means 4 gaussian on state 1 and 4 gaussian on state 2. This is the &amp;quot;single-set&amp;quot; implementation of MCTDH (DD-vMCG) therefore the gaussian wavepackets on state 1 are the same as the gaussian wavepackets on state 2.&amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;&#039;What is the final propagation time (in fs)?&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 150 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the propagation time step (in fs)?&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 0.1 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the number of electronic states? (1|2)&#039;&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 2 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the highest electronic root?&#039;&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 2 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;From which electronic state should the wavepacket start? (2|1)&#039;&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 2 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Will there be an initial momentum given to the wavepacket? (y|n)&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; n &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Do you want to add a reference label to the name of the case? (y|n)&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; y &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Please type your text:&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; trial &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;This question is only asked if the answer to the previous question was yes.  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What will be the status of the database? (rdwr|rd|wr|none)&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; none &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; Choose rd for read, wr for write etc. In this case we are not going to use the database, but if it was used (rd or rdwr is specified) the script would ask the user to specify the threshold below which the database values will be used (%). In this case the value none is chosen so this question is not asked.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;&amp;gt;&amp;gt; Manual rotation (using Excel spreadsheet) &amp;lt;&amp;lt;&lt;br /&gt;
   Please type the values of the three Euler angles (in deg)&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 0&lt;br /&gt;
0&lt;br /&gt;
0 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Tuple from the dd_rotation method (insert link)&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;The generator will now tell you that it has read the files start.chk from the folder /work/$USER/fulv/dd_data/ .&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Files created by the generator&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* The generator will now tell you that it has read the files start.log, coin.log and momentum.dat (if a momentum has been specified) from the folder /work/$USER/fulv/dd_data/:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
   about to read parameters...&lt;br /&gt;
   ... parameters just read&lt;br /&gt;
   about to read file /work/vs13/fulv/dd_data/start.log                   &lt;br /&gt;
                                                               ...&lt;br /&gt;
   ... file /work/vs13/fulv/dd_data/start.log                             &lt;br /&gt;
                                                      read successfully&lt;br /&gt;
   about to read file /work/vs13/fulv/dd_data/coin.log                    &lt;br /&gt;
                                                               ...&lt;br /&gt;
 *********************************************************&lt;br /&gt;
 Mass-weighted displacement from start to coin:&lt;br /&gt;
    old total norm: 22.070387&lt;br /&gt;
    new total norm:  4.669035&lt;br /&gt;
  vibrational part:  4.669035&lt;br /&gt;
   rotational part:  0.000000&lt;br /&gt;
 *********************************************************&lt;br /&gt;
   ... file /work/vs13/fulv/dd_data/coin.log                             &lt;br /&gt;
                                                      read successfully&lt;br /&gt;
&amp;lt;/pre&amp;gt; &lt;br /&gt;
&lt;br /&gt;
and that the extraction of data and the creation of a summary file were done successfully. If the Mass-weighted displacement from start to coin appears as NaN it may be because the start.log contains atom numbers rather than atom types. You will need to redo the freq=hpmodes job with atom types.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Data extracted successfully&lt;br /&gt;
The summary of this file generation is in:&lt;br /&gt;
-rw-r--r--  1 vs13 hpc-users 3070 Dec  2 17:06 /home/vs13/fulv/fstodd4o.txt&lt;br /&gt;
 &lt;br /&gt;
Do not forget you still can add a momentum, change the integrator,&lt;br /&gt;
change convergence criteria for GAUSSIAN and MCTDH...&lt;br /&gt;
 &lt;br /&gt;
Do not forget to check the order of the atoms of the conical intersection geometry&lt;br /&gt;
in /work/vs13/fulv/dd_data/coin.log&lt;br /&gt;
 &lt;br /&gt;
Now go to your jobscript file and give values to the memory and walltime.&lt;br /&gt;
 &lt;br /&gt;
Good luck!&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* The dd_generator script has generated four files in the same directory (/home/$USER/fulv):&lt;br /&gt;
&lt;br /&gt;
# fstodd4p_trial.inp  &lt;br /&gt;
# fstodd4p_trial.job  &lt;br /&gt;
# fstodd4p_trial.txt  &lt;br /&gt;
# fstodd_none.op&lt;br /&gt;
&lt;br /&gt;
(Link to a more detailed explanation of this files)&lt;br /&gt;
&lt;br /&gt;
* The script has also created some files and directories in /work/$USER/fulv where the MCTDH (DD-vMCG) and GAUSSIAN calculations will be stored:&lt;br /&gt;
&lt;br /&gt;
1) Directories:&lt;br /&gt;
&lt;br /&gt;
* fstodd4p_trial&lt;br /&gt;
* fstodd4p_trial/dd_data&lt;br /&gt;
&lt;br /&gt;
2) Files (in fstodd4o_trial/dd_data):&lt;br /&gt;
&lt;br /&gt;
# refdb.dat &lt;br /&gt;
# start.chk  &lt;br /&gt;
# template.dat&lt;br /&gt;
# forward.dat&lt;br /&gt;
# backward.dat&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Modifications to be made to the files before running the dynamics&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* In the .job file in /home/$USER/fulv specify the memory (in this case use 4000MB) and walltime (72:00:00) if you are in the HPC Cluster.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* When running a development version of GAUSSIAN (gdvg03 or gdvg01), copy the start.chk file into the folder /work/$USER/dyn_90dev/but1dd1p_trial/dd_data. The unformatted checkpoint file from start.fchk that dd_generator has created is corrupted (due to a bug in formchk in gdvg01).&lt;br /&gt;
has this been fixed?&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Running the dynamics&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* Navigate to /home/$USER/fulv. Queue the job file. In this case, type:&lt;br /&gt;
&lt;br /&gt;
     qsub fstodd4p_trial.job&lt;br /&gt;
&lt;br /&gt;
for MAC OS X users the shell command is already written in fstodd4p_trial.job&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;The Database (DB)&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
The DB is made of four binary files:&lt;br /&gt;
geo.db&lt;br /&gt;
pes.db&lt;br /&gt;
gra.db&lt;br /&gt;
hes.db&lt;br /&gt;
They can be used in place of GAUSSIAN calculations to save some&lt;br /&gt;
computation time when you ask for DBrd or DBrdwr.&lt;br /&gt;
&lt;br /&gt;
Each set of geometry, energy, gradient and Hessian (the latter&lt;br /&gt;
three quantities having been calculated by GAUSSIAN for the two&lt;br /&gt;
adiabatic electronic states) will be called a DB record and&lt;br /&gt;
assigned a record number defining the order of occurrence in the DB.&lt;br /&gt;
If you run a calculation where the DB is to be read, in the *.res&lt;br /&gt;
file that you obtain after the calculation is done (file that&lt;br /&gt;
actually is a redirection of the standard output) you will see the&lt;br /&gt;
number of records in the DB as it grows.&lt;br /&gt;
Example (formaldehyde, multi-set 1+1):&lt;br /&gt;
          53&lt;br /&gt;
 s=  1 e=  1 t=   0.000 V1=   0.001 V2=   4.533 H11=   0.001 H22=&lt;br /&gt;
 4.533 H12=   0.000 q=   0.0000    0.0000    0.0000    0.0000&lt;br /&gt;
 0.0000    0.0000&lt;br /&gt;
          53&lt;br /&gt;
 s=  2 e=  1 t=   0.000 V1=   0.001 V2=   4.533 H11=   0.001 H22=&lt;br /&gt;
 4.533 H12=   0.000 q=   0.0000    0.0000    0.0000    0.0000&lt;br /&gt;
 0.0000    0.0000&lt;br /&gt;
          53&lt;br /&gt;
 s=  1 e=  1 t=   0.500 V1=   0.197 V2=   4.701 H11=   0.211 H22=&lt;br /&gt;
 4.687 H12=   0.251 q=  -0.6258   -0.6146    0.6136    0.6049&lt;br /&gt;
 -0.5520   -0.0616&lt;br /&gt;
          53&lt;br /&gt;
 s=  2 e=  1 t=   0.500 V1=   0.000 V2=   4.533 H11=   0.000 H22=&lt;br /&gt;
 4.533 H12=  -0.001 q=   0.0009    0.0009    0.0093   -0.0245&lt;br /&gt;
 -0.0066    0.0001&lt;br /&gt;
          53&lt;br /&gt;
 &lt;br /&gt;
 ERROR in subroutine Distdb :&lt;br /&gt;
 Redundant records in Data Base:   18   19&lt;br /&gt;
 s=  1 e=  1 t=   1.000 V1=   0.469 V2=   4.455 H11=   0.479 H22=&lt;br /&gt;
 4.445 H12=   0.200 q=  -0.4640   -0.5641    1.2594   -0.5871&lt;br /&gt;
 -1.0864   -0.1120&lt;br /&gt;
          53&lt;br /&gt;
 s=  2 e=  1 t=   1.000 V1=   0.001 V2=   4.473 H11=   0.001 H22=&lt;br /&gt;
 4.473 H12=  -0.002 q=   0.0003    0.0004    0.0404   -0.0944&lt;br /&gt;
 -0.0292    0.0001&lt;br /&gt;
          53&lt;br /&gt;
 s=  1 e=  1 t=   1.500 V1=   0.113 V2=   4.543 H11=   0.120 H22=&lt;br /&gt;
 4.536 H12=   0.170 q=  -0.3994   -0.4377    0.5444    0.2057&lt;br /&gt;
 -0.5149   -0.0638&lt;br /&gt;
          53&lt;br /&gt;
 s=  2 e=  1 t=   1.500 V1=   0.013 V2=   4.390 H11=   0.013 H22=&lt;br /&gt;
 4.390 H12=  -0.005 q=   0.0009    0.0010    0.0897   -0.2104&lt;br /&gt;
 -0.0634    0.0002&lt;br /&gt;
          53&lt;br /&gt;
 s=  1 e=  1 t=   2.000 V1=   0.068 V2=   4.431 H11=   0.071 H22=&lt;br /&gt;
 4.428 H12=   0.110 q=  -0.2751   -0.3274    0.4796   -0.0812&lt;br /&gt;
 -0.3880   -0.0605&lt;br /&gt;
          54&lt;br /&gt;
 s=  2 e=  1 t=   2.000 V1=   0.019 V2=   4.367 H11=   0.019 H22=&lt;br /&gt;
 4.367 H12=  -0.009 q=   0.0012    0.0013    0.1563   -0.3658&lt;br /&gt;
 -0.1058    0.0003&lt;br /&gt;
          54&lt;br /&gt;
 s=  1 e=  1 t=   2.500 V1=   0.064 V2=   4.273 H11=   0.065 H22=&lt;br /&gt;
 4.272 H12=  -0.064 q=   0.2559    0.0914    0.1691   -0.7218&lt;br /&gt;
 -0.1052   -0.0595&lt;br /&gt;
          55&lt;br /&gt;
 s=  2 e=  1 t=   2.500 V1=   0.070 V2=   4.258 H11=   0.070 H22=&lt;br /&gt;
 4.257 H12=  -0.013 q=   0.0013    0.0015    0.2384   -0.5572&lt;br /&gt;
 -0.1528    0.0004&lt;br /&gt;
&lt;br /&gt;
Here, we started with a DB of 53 records. It is large enough until&lt;br /&gt;
2 fs, where an additional record is produced, and so on.&lt;br /&gt;
The error message saying here that records 18 and 19 are identical&lt;br /&gt;
will not prevent the code from working. It is just here to remind you&lt;br /&gt;
that the DB is not clean in that it has redundant records.&lt;br /&gt;
This is to be prevented as the DB files might become large quite&lt;br /&gt;
rapidly and all records will be read at each update time (dd_update&lt;br /&gt;
= tout in the integrator section, tout = xxx fs in the run section&lt;br /&gt;
of the *.inp file) for each Gaussian function.&lt;br /&gt;
&lt;br /&gt;
Incidentally, when you want to analyse results written to a *.res&lt;br /&gt;
file, you need to look for lines starting with &amp;quot;s=&amp;quot; (other lines&lt;br /&gt;
are various messages and numbers of DB records).&lt;br /&gt;
The criterion for using the DB is to be seen as a maximum-allowed&lt;br /&gt;
relative difference&lt;br /&gt;
&lt;br /&gt;
So, it is up to you to clean the DB when you see this, and to keep&lt;br /&gt;
this in mind when you concatenate DBs that have branched in their&lt;br /&gt;
past (see more details below).&lt;br /&gt;
&lt;br /&gt;
Also, a given DB depends on the choice of a reference geometry in&lt;br /&gt;
Cartesian coordinates because geometries written to the DB files&lt;br /&gt;
will always be re-orientated with respect to this particular&lt;br /&gt;
geometry. The back and forth transformations are performed by MCTDH (DD-vMCG)&lt;br /&gt;
so you don&#039;t need not worry about this.&lt;br /&gt;
This geometry is written to refdb.dat. It is the starting geometry&lt;br /&gt;
that comes from start.log (the only difference being that it is&lt;br /&gt;
mass-centred).&lt;br /&gt;
As long as you do not change the starting geometry or the nature&lt;br /&gt;
of the electronic states, you can thus keep growing the DB of your&lt;br /&gt;
system.&lt;br /&gt;
&lt;br /&gt;
MANAGING THE DATA BASE&lt;br /&gt;
&lt;br /&gt;
A set of DB  programs can be found in XXXXX. Their roles are&lt;br /&gt;
explained below.&lt;br /&gt;
For now, the sources are in dd_utildev and dd_util.31dv and the&lt;br /&gt;
executables are in mctdh90dev/bin and mctdh90.31dv/bin, so you can&lt;br /&gt;
call them from anywhere, as long as DB files are there.&lt;br /&gt;
&lt;br /&gt;
1) countdb.out: returns the number of records of the current DB&lt;br /&gt;
2) cleandb.out: &amp;quot;brute-force&amp;quot; cleaning of the current DB. This&lt;br /&gt;
might be too long to be run interactively when the number of&lt;br /&gt;
records is too large, because each record needs to be compared to&lt;br /&gt;
each other record (e.g. a DB with ca. 3800 records will take a couple of minutes to clean interactively). If so, run in batch mode (ask me or Marta if you&lt;br /&gt;
have a doubt).&lt;br /&gt;
The cleaned files are:&lt;br /&gt;
geoclean.db&lt;br /&gt;
pesclean.db&lt;br /&gt;
graclean.db&lt;br /&gt;
hesclean.db&lt;br /&gt;
You need to rename them without &#039;clean&#039; for them to be used as a DB.&lt;br /&gt;
3) cutdb.out: allows you to cut out the beginning of a DB.&lt;br /&gt;
This is to be used in the following situation:&lt;br /&gt;
- You start from a mother DB, DB0, assumed to be clean, with N0&lt;br /&gt;
records.&lt;br /&gt;
- You want to use DB0 in two independent calculations. You&lt;br /&gt;
replicate DB0 to daughter DBs, DB1 and DB2.&lt;br /&gt;
- When these calculations are done, DB1 and DB2 have grown to N0+N1&lt;br /&gt;
and N0+N2 records, respectively.&lt;br /&gt;
- You want to concatenate them to create a new mother DB, DB3.&lt;br /&gt;
- DB1 and DB2 have their N0 first records the same. To avoid&lt;br /&gt;
redundant records, you need to cut N0 records from DB2 for example.&lt;br /&gt;
--&amp;gt; go to where DB2 is and use cleandb.out&lt;br /&gt;
The resulting files are:&lt;br /&gt;
geocut.db&lt;br /&gt;
pescut.db&lt;br /&gt;
gracut.db&lt;br /&gt;
hescut.db&lt;br /&gt;
these have N1 records.&lt;br /&gt;
--&amp;gt; rename DB1, for instance geo.db1 etc., and concatenate the files:&lt;br /&gt;
cat geo.db1 geoclean.db &amp;gt; geo.db&lt;br /&gt;
etc.&lt;br /&gt;
- Your new mother DB, DB3, should now have N0+N1+N2 distinct records.&lt;br /&gt;
4) deldb.out: allows you to remove one selected record (for&lt;br /&gt;
instance if corrupted) from the DB if you know its number.&lt;br /&gt;
The resulting files are:&lt;br /&gt;
geodel.db&lt;br /&gt;
pesdel.db&lt;br /&gt;
gradel.db&lt;br /&gt;
hesdel.db&lt;br /&gt;
You need to rename them without &#039;del&#039; for them to be used as a DB.&lt;br /&gt;
5) seedb.out: allows you extract one selected record from the&lt;br /&gt;
binary files for reading it (the record is not removed from the DB).&lt;br /&gt;
The resulting file can be read as a text file (ascii) and is:&lt;br /&gt;
see.db&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Restarting dynamics jobs&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
The examples below make use of the directory and filenames in the examples above.&lt;br /&gt;
&lt;br /&gt;
A dynamics run can be restarted if the job was terminated before completion (e.g if it ran out of time or failed because of convergence problems) or if the user wishes to continue the job for a longer time period than had originally been specified. The program will continue writing the same output file but will overwrite the .res file. Thus the .res file should be saved under a different name to prevent loss of the data calculated in the original run. The .res is not written until the job stops so this can be done after the restart.&lt;br /&gt;
&lt;br /&gt;
*To increase the final propagation time&lt;br /&gt;
&lt;br /&gt;
Retrieve the .inp file (in $HOME/buta) and change &#039;&#039;propagation&#039;&#039; to &#039;&#039;continuation&#039;&#039; in the section entitled RUN-SECTION. Then change the final time &#039;&#039;tfinal&#039;&#039; to a larger value. (NB this new value should include the time already done).&lt;br /&gt;
&lt;br /&gt;
Re-queue the job.&lt;br /&gt;
&lt;br /&gt;
*To increase the number of scf cycles (the most common reason for convergence failure)&lt;br /&gt;
&lt;br /&gt;
Edit the template.dat file in $WORK/buta/but1dd1p_trial/dd_data. Insert scf=(maxcycle=128) on the keyword line (for example). It is important that you change the template.dat file in the but1dd1p_trial/dd_data folder that was created by dd_generator (rather than the one created by the user in $WORK/buta/dd_data) because the original $WORK/buta/dd_data/template.dat file is only read by dd_generator and used to create the job-specific file in the job folder. (Of course if you wish all future jobs run in $WORK/buta  to have increased scf cycles, change the other template.dat file in $WORK/buta/dd_data too.)&lt;br /&gt;
&lt;br /&gt;
Re-queue the job.&lt;br /&gt;
&lt;br /&gt;
*To increase the run-time so that a job will finish&lt;br /&gt;
&lt;br /&gt;
Edit the walltime in the .job file in the $HOME directory and re-queue the job.&lt;br /&gt;
&lt;br /&gt;
=&#039;&#039;&#039;Analysis of the results&#039;&#039;&#039;=&lt;br /&gt;
&lt;br /&gt;
The most important files are the output and .res files.&lt;br /&gt;
&lt;br /&gt;
=== Detailed information about files and directories ===&lt;br /&gt;
&lt;br /&gt;
*output&lt;br /&gt;
&lt;br /&gt;
The output contains some standard results:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Time&#039;&#039;&#039;: time in fs.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;CPU&#039;&#039;&#039;:  CPU time in s.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Norm&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;E-tot&#039;&#039;&#039;: the total energy in eV. This value should be conserved (i.e by the end of the run the E-tot value should not be too different  from what it was a time=0).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;E-corr&#039;&#039;&#039;: correlated Hamiltonian energy&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Delta-E&#039;&#039;&#039;: diference between E-tot at time t=0 and the current time t&lt;br /&gt;
&lt;br /&gt;
Note: In a multi-packet run, i.e. when npacket &amp;gt; 1, the total energy and the norm of the wavefunction, as given in the &amp;quot;total&amp;quot; part, are averaged over the packets.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;population&#039;&#039;&#039; : diabatic populations of state 1 and state 2 (in that order) at the current time t&lt;br /&gt;
&lt;br /&gt;
For every mode:	&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt; q &amp;gt;&#039;&#039;&#039;: position expectation value&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;dq&amp;gt;&#039;&#039;&#039;: standard deviation Sqrt[&amp;lt; q&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt; &amp;gt; - &amp;lt; q &amp;gt;&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt; p &amp;gt;&#039;&#039;&#039; : momentum expectation value&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;dq&amp;gt;&#039;&#039;&#039;: standard deviation Sqrt[&amp;lt; p&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt; &amp;gt; - &amp;lt; p &amp;gt;&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*.res&lt;br /&gt;
&lt;br /&gt;
This file contains the energy of each state (diabatic and adiabatic) at each timestep for each gaussian function:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;s&#039;&#039;&#039; is a redundant value in mctdh90.31dv. It is only meaningful in multi-set implementations of mctdh (where there are double the number of gaussian functions than specified: one for each state). (It indicates whether the gaussian function in question is on the lower (1) or upper (2) state. (In the single set implementation, the gaussian functions on each state are identical)).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;e&#039;&#039;&#039; is a label given to each gaussian function&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;t&#039;&#039;&#039; is the current time in fs&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;V1&#039;&#039;&#039; is the energy of the lower adiabatic state at time t&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;V2&#039;&#039;&#039; is the energy of the upper adiabatic state at time t&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;H11&#039;&#039;&#039; is the energy of the lower diabatic state at time t&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;H22&#039;&#039;&#039; is the energy of the upper diabatic state at time t&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;H12&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;q&#039;&#039;&#039; is the list of frequency mass-weighted normal coordinates that describe the geometry at time t&lt;br /&gt;
&lt;br /&gt;
The end of the file will read something like: &lt;br /&gt;
&lt;br /&gt;
     Propagation was successful.&lt;br /&gt;
     &lt;br /&gt;
     Total time     [h:m:s] :    0 :  1 : 21.60&lt;br /&gt;
     &lt;br /&gt;
      ---------------------------------------------------------------------------&lt;br /&gt;
      ------ Host: &amp;quot;cx1-3-2-4&amp;quot; ----------Sat Jan 17 06:50:20 2009&lt;br /&gt;
&lt;br /&gt;
The other most common result is that the calculation aborted because of scf convergence problems in the CASSCF GAUSSIAN calculations. In this case the ouput file will break off after the last complete step and the end of the .res file will read something like:&lt;br /&gt;
     ERROR in subroutine Getddpes :&lt;br /&gt;
     CAS convergence failed for gwp on state:    1    1&lt;br /&gt;
&lt;br /&gt;
If the job terminates due to scf convergence problems, it may be possible to restart it after modifying the .inp and/or .job and/or template.dat files.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*log&lt;br /&gt;
&lt;br /&gt;
This file contains information such as the source code version, type of calculation performed, integrator used, numerical parameters, which data files are opened, any error messages, and much more. The information provided by the log file can be very helpful, in particular when searching for errors. One should always carefully inspect the log file.&lt;br /&gt;
&lt;br /&gt;
* dvr&lt;br /&gt;
&lt;br /&gt;
* oper&lt;br /&gt;
&lt;br /&gt;
*ddpeserr&lt;br /&gt;
&lt;br /&gt;
*input&lt;br /&gt;
&lt;br /&gt;
*op.log&lt;br /&gt;
&lt;br /&gt;
*psi&lt;br /&gt;
&lt;br /&gt;
*check&lt;br /&gt;
&lt;br /&gt;
*auto&lt;br /&gt;
&lt;br /&gt;
*ddpes&lt;br /&gt;
&lt;br /&gt;
*restart&lt;br /&gt;
&lt;br /&gt;
*stop&lt;br /&gt;
&lt;br /&gt;
*speed&lt;br /&gt;
&lt;br /&gt;
*timing&lt;br /&gt;
&lt;br /&gt;
*update&lt;br /&gt;
&lt;br /&gt;
=== Example: butadiene ===&lt;br /&gt;
&lt;br /&gt;
*Examine the end of the output file to check that the calculation ran to completion.&lt;br /&gt;
     &lt;br /&gt;
*Plot the energy of the diabatic and adiabatic states over time (.res file: V1, V2, H11 and H22). Calculate V2-V1 and H22-H11 and plot these also. H12 may also be plotted on the same graph.&lt;br /&gt;
[[Image:EnergyofStates.png]]&lt;br /&gt;
&lt;br /&gt;
The diabatic states cross at 176.2 fs and the adiabatic states cross at 174.5 fs. At a conical intersection, the value V2-V1 will become negative and the H22-H11 will be a minimum (&amp;lt;1eV). Ideally these crossings will occur at the same time. If the diabatisation has worked well, after V2-V1 becomes negative, V2-V1 and H22-H11 will become mirror images (i.e. the diabatic and adiabatic states follow each other). &lt;br /&gt;
&lt;br /&gt;
*Plot the value of the total energy over time (.res file: E-tot). Verify that the Delta-E value is not too large (compare with the total energy (E-tot) at time 0).&lt;br /&gt;
[[Image:TotalEnergy.png]]&lt;br /&gt;
&lt;br /&gt;
*Plot the population of one of the (diabatic) states over time (.res file: population).&lt;br /&gt;
[[Image:Population.png]]&lt;br /&gt;
&lt;br /&gt;
At the conical intersection the population transfer is large. In this case the job has been terminated after 200 fs. Usually the calculation should be continued until the populations stabilise (which obviously has not happened in this case).&lt;br /&gt;
&lt;br /&gt;
=== Making a Movie ===&lt;br /&gt;
&lt;br /&gt;
Navigate to /work/$USER/buta/but1dd1p_trial (the place where the .res file was written). Type:&lt;br /&gt;
 dd_movie.out&lt;br /&gt;
* The script will ask a series of questions and will use the answers provided to create a file that can be read into Molden or iMol.&lt;br /&gt;
&lt;br /&gt;
==== List of questions asked by dd_movie.out====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;blockquote style=&amp;quot;background: white; border: 1px solid black; padding: 1em;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Question&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; &#039;&#039;&#039;Answer for this tutorial&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; &#039;&#039;&#039;Explanation&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the number of atoms?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 10 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the actual number of active coordinates?&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 24 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; In this case all coordinates were active (so there are 3N-6 where N is the number of atoms) &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Name of result file to read?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; but1dd1p_trial.res &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;Ensure that the forward.dat and backward.dat files are located in the current directory in the folder dd_data (they will have been written there automatically)&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Name of movie file to write?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; but1dd1p_trial.xyz &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; Choose any name .xyz &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Which electronic state (s=...)?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 1 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;Choose 1 (this question dates from the multi-set implementation of mctdh where the wavepackets on each state were different)  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Which Gaussian function (e=...)?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 1 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;In this case we have only one wavepacket&amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;The script will now return the number of lines and the initial number of points&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
number of lines:        4684&lt;br /&gt;
initial number of points:        4674&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Maximum number of points you want?&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 4674 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;If you wish to view the movie in Molden you must reduce the number of points to less than 100 (so choose 99 for maximum number of points). iMol can cope with any number of frames so choose the number printed by the script: this number will be reduced and the script will tell you how many points it has written. &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
writing frequency:           2&lt;br /&gt;
   final number of points:        2337&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The .xyz file is ready to be opened in Molden or iMol.&lt;br /&gt;
&lt;br /&gt;
= &#039;&#039;&#039;Current Known Bugs&#039;&#039;&#039; =&lt;br /&gt;
&lt;br /&gt;
Parallelisation:&lt;br /&gt;
&lt;br /&gt;
It is not possible to run calculations in parallel with version 90.31dv (reading the same template.dat file simultaneously by each processor is causing problems). In 90.35tmp this is ok. In 90.4X it will also be fixed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Total energy:&lt;br /&gt;
&lt;br /&gt;
1) The total energy is sometimes &amp;quot;artificially&amp;quot; increased by a lot. If so, try a different integrator or play around with the timestep (may need to get larger or smaller). Or try increasing scf convergence to 10&amp;lt;sup&amp;gt;-12&amp;lt;/sup&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
2) If Delta-E suddenly becomes too large, you can get the following message: &lt;br /&gt;
&amp;quot;ERROR in subroutine WRGAUSSIAN :&lt;br /&gt;
 Do not use $Swap:...$ metastring in file /.../template.dat&amp;quot;&lt;br /&gt;
Often, when getting this message, no more steps are added to the simulation, although the calculation seems to keep running (the integrator keeps trying and failing).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Using the database:&lt;br /&gt;
&lt;br /&gt;
1) Every record generated with mctdh90.31dev and several GWPs is corrupted, so, for now, when launching calculations with more that one wavepacket, use &amp;quot;formdd_none.op&amp;quot; (i.e. do not read nor write the database).&lt;br /&gt;
[For instance, when using dbrdwr and starting from a clean db, all newly generated records are added to the existing database, even if they are identical to records that were already written in the db.]  In 90.35tmp this is ok. In 90.4X it will also be fixed.&lt;br /&gt;
&lt;br /&gt;
2) Records obtained in calculations with one GWP should be OK, but this is still to be confirmed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Impossible case&amp;quot;:&lt;br /&gt;
&lt;br /&gt;
Error message that forces the calculation to stop. It seems to be associated with moving towards an &amp;quot;unexpected&amp;quot; geometry (e.g. a radical).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
State Averaging:&lt;br /&gt;
&lt;br /&gt;
To increase the threshold above which stateaveraging is turned off, increase the default value of 10 (to e.g. 50)  in the line &#039;&#039;ddregions&#039;&#039; in the OPERATOR-SECTION of the .inp file.&lt;br /&gt;
&lt;br /&gt;
= &#039;&#039;&#039;Questions and Modifications to be made to this wiki&#039;&#039;&#039; =&lt;br /&gt;
&lt;br /&gt;
*Why we would ever need to start the gwps from the lower state? To study GS rxns; chemiluminesence (eg glowworms).&lt;br /&gt;
*In terms of Delta-E, how much is too much? ca1eV but shape of E-tot vs time is important: discontiunities or v flat then steep increase are less reliable than smooth gradual increases.&lt;br /&gt;
*Benjamin: Note that Marta has noticed that for very strange geometries, you may receive an error message saying &amp;quot;impossible case&amp;quot;, which stops MCTDH. It is too complicated to explain here. I know where this happens in the code, and I should prevent this error to stop the code but I didn&#039;t have time to fix this. I&#039;ll do it soon.&lt;br /&gt;
*Need to edit/correct section on the DB.&lt;br /&gt;
*Is does unfchk in gdvg03 create corrupted fchk files? G03 is fine. we don&#039;t know about gdvg03 but we don&#039;t care because we probablly won&#039;t use it.&lt;br /&gt;
&lt;br /&gt;
=== [[Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial|back]] ===&lt;/div&gt;</summary>
		<author><name>Vs13</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/run&amp;diff=333950</id>
		<title>Resgrp:comp-photo-dyn/mctdh90.56dv Fulvene Tutorial/run</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/run&amp;diff=333950"/>
		<updated>2013-04-29T10:55:30Z</updated>

		<summary type="html">&lt;p&gt;Vs13: /* Running the dynamics */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= &#039;&#039;&#039;Basic use of the MCTDH (DD-vMCG) package&#039;&#039;&#039; =&lt;br /&gt;
&lt;br /&gt;
A script called dd_generator uses GAUSSIAN output files and user input to write the input files for mctdh (DD-vMCG).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Notes&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;The number of gaussian wavepackets (requested by the dd_generator script)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
When studying a new system, start with one (to keep calculation times short). When an appropriate momentum, time period, time step and integrator have been established, increase the number of wavepackets until the results are not changed by adding more. Calculation times are proportional to the number of wavepackets. To ensure efficient use of computing resources, always specify an even number of wavepackets if using more than one processor (since the number of processors can only be an even number: currently 2, 4 or 8).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;The database&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The most time-consuming part of a dynamics run is the GAUSSIAN CASSCF calculations. The results of these calculations can be stored in a database and re-used in future runs. The user must choose whether or not to read and/or write a database. Each calculation will write a separate database so the databases from each run must be combined (and any duplicate entries removed (to save space)).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Initial momentum&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
An initial momentum can be specified to direct the wavepacket to a particular area of the PES (e.g. towards a conical intersection, a transition state or minimum geometry). The momentum is given as a geometry (in frequency mass weighted normal coordinates). The dd_rotation program used for rotation of the conical intersection can be used to transform the coordinates of the desired geometry. If the user requests an initial momentum, dd_generator will search for a file called momentum.dat. If this file is found, dd_generator will ask if the user wishes to use the momentum specified in it. The user can then specify how much energy to give (in eV). Thus, the values in momentum.dat need only be relative values (since they will be multiplied by a scaling factor to provide the total number of eV requested). If there is no file called momentum.dat in the appropriate folder, the user will not be asked to specify a total number of eV to give to the wavepacket(s). A momentum can still be added by manually modifying the .inp file after the dd_generator script has been run (replace the zero values in the fifth column of the section of the .inp file entitled INIT_WF-SECTION). However, it is simpler to create the momentum.dat file mainly because if the user edits the .inp file directly, there is no way of knowing what the total excess energy will be: the values listed in .inp also incorporate magnitude (not just relative values as in momentum.dat). &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Memory and number of processors&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
In template.dat, the memory for each GAUSSIAN CASSCF calculation is specified. In the .job file (created by dd_generator from user input) the total memory is specified. Thus, the memory specified in .job must be at least as great as the memory given in template.dat multiplied by the number of processors.&lt;br /&gt;
&lt;br /&gt;
The GAUSSIAN calculations for each wavepacket will run on a single processor. If the user specifies more than one processor then the calculations for each wavepacket can run simultaneously. To ensure efficient use of computing resources, always specify an even number of wavepackets when using more than one processor (since the number of processors can only be an even number: currently 2, 4 or 8).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Symmetry Considerations&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The way the diabatisation is performed in mctdh90.31dv sometimes leads to complications involving symmetry.  The diabatic states are defined using the conical intersection (or other geometry) described in coin.log. If the molecule is highly symmetric, there will be more than one conical intersection (all identical by symmetry). If the wavepacket moves close to one of the other conical intersections that is not described in coin.log, the diabatic states may not be properly described in this area of the PES. This of course means that the behaviour of the wavepacket(s) is likely to be described poorly also.&lt;br /&gt;
&lt;br /&gt;
If the conical intersection has lower symmetry than the starting material, the symmetry must necessarily be broken during the dynamics calculation before the conical intersection is reached. The breaking of each mode will occur either due to the accumulation of small numerical inaccuracies or if a momentum is given which forces particular modes to break symmetry.&lt;br /&gt;
Mctdh90.31dv uses frequency-mass-weighted normal coordinates to describe molecular geometries. Each frequency-mass-weighted coordinate corresponds to a vibration of the molecule (and there are therefore 3N-6 coordinates). Displacements of atoms are described by a (or a combination of) vibration(s). Each vibration can be displaced in one of two directions: positive or negative. The 3N-6 frequency-mass-weighted coordinates can be classified by symmetry. Whether a particular symmetry mode is broken in the positive or negative direction will be equally likely if no initial momentum is given. Thus for each mode that is broken during a simulation the symmetry may break in the positive direction or the negative direction. There will be 2&amp;lt;sup&amp;gt;x&amp;lt;/sup&amp;gt; possible conical intersections corresponding to a particular starting geometry, where x is the number of modes that must be broken going from starting material to conical intersection.&lt;br /&gt;
&lt;br /&gt;
Additionally, care must be taken over atom labeling. It must be possible to transform the starting material into the conical intersection without permuting atom labels. If the conical intersection has been optimised by following the MEP downhill from the starting material this is not likely to be a problem. However, bear this in mind if drawing the conical intersection by hand.  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Creating the Directories&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* First of all, create a folder in which to save the calculations in your $HOME and $WORK directories. Create a directory in $HOME, and an identical directory in $WORK that has the same path. Keep pathlengths as short as possible (if the total path becomes too long the dynamics code will not run). For simplicity, in this case, we are going to assume that this directory is named &#039;&#039;fulv&#039;&#039; (for fulvene).&lt;br /&gt;
&lt;br /&gt;
     mkdir fulv&lt;br /&gt;
&lt;br /&gt;
* Create a subdirectory called &#039;&#039;&#039;dd_data&#039;&#039;&#039; in the new directory in $WORK.  Thus you should start with:&lt;br /&gt;
&lt;br /&gt;
    /home/$USER/fulv&lt;br /&gt;
    /work/$USER/fulv/dd_data&lt;br /&gt;
&lt;br /&gt;
* Important Note: it is essential to have the same path in both directories, $HOME and $WORK. Do not change the path-names within the HOME/WORK directories. If you re-name or move any subdirectory in your, for example HOME directory, you have to be consistent and make the same changes in the $WORK directory.&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Gaussian Output to be Used as Input for the Dynamics Program&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* Populate the new directory /work/$USER/buta/dd_data with four files which must be named: &#039;&#039;&#039;coin.log&#039;&#039;&#039;; &#039;&#039;&#039;start.fchk&#039;&#039;&#039;; &#039;&#039;&#039;start.log&#039;&#039;&#039;; and &#039;&#039;&#039;template.dat&#039;&#039;&#039;.These files are required in order to run any dynamics simulation, they are the basis that the script dd_generator (see the following section) will use to create the necessary files for running MCTDH (DD-vMCG).  You may also create a file named &amp;quot;&#039;momentum.dat&amp;quot;&#039; if you wish to give a momentum to the wavepacket(s) (this is optional and may be created later instead). &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;coin.log&#039;&#039;&#039; is the logfile resulting from the optimisation of the conical intersection. NB The MCTDH (DD-vMCG) program will rotate the conical intersection before starting the dynamics. To do this it must be provided with three angles which describe the appropriate rotation. There is an Excel spreadsheet available to calculate these angles (see the section entitled &amp;quot;Rotating the Conical Intersection&amp;quot;). NB the structure in coin.log need not necessarily be a true conical intersection: this point is only used for performing the diabatisation. Thus the diabatisation will be exact at this point and will become more approximate the further you are from it (on the PES). If you wish to use a point that is not a conical intersection, simply run a conical intersection optimisation (with only a single step) on the desired geometry. This will create a file with the same layout as a conical intersection optimisation output file (mctdh looks for certain things in this file so if some other type of .log file were used instead, it might not contain the required information). NB the final conical intersection log file must only contain one geometry (otherwise the dynamics program will not know which geometry to use). IS THIS STATEMENT TRUE FOR THIS VERSION??&lt;br /&gt;
&lt;br /&gt;
[[Media:Coin.log]]&lt;br /&gt;
&lt;br /&gt;
(Insert a link here to section &amp;quot;Rotating the Conical Intersection&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;start.chk&#039;&#039;&#039; is the checkpoint file from the high precision vibrational modes of the ground state with state averaged orbitals (with atom types rather than numbers)&lt;br /&gt;
[[Media:Start.chk]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;start.log&#039;&#039;&#039; is the log file from the high precision vibrational modes of the ground state with state averaged orbitals (with atom types rather than numbers)&lt;br /&gt;
&lt;br /&gt;
[[Media:Start.log]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;template.dat&#039;&#039;&#039; is a template for the creation of GAUSSIAN input files by the MCTDH (DD-vMCG) program. It contains all the mutual keywords of the GAUSSIAN calculations which will be run on-the-fly by MCTDH (DD-vMCG). It also contains other information relating to the GAUSSIAN calculations such as memory requirements.&lt;br /&gt;
 &lt;br /&gt;
[[Media:Template.dat]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;momentum.dat&#039;&#039;&#039; is a file containing a list of values to be used as vectors to indicate the momentum to be given to a particular (set of) wavepacket(s). The vectors must be listed in the order of the frequency-mass-weighted normal coordinates specified in the coin.out file (i.e. the output file from dd_rotation program). They give the magnitude of the momentum to be given along each of these frequency-mass-weighted normal coordinates. N.B. The signs of the values here are important!&lt;br /&gt;
We are not giving a momentum in this simulation.&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;The Generator&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* The &amp;quot;generator&amp;quot; script uses the GAUSSIAN output files (above) along with other information supplied by the user to create input files for MCTDH (DD-vMCG).&lt;br /&gt;
&lt;br /&gt;
* Navigate to /home/$USER/fulv and run the generator by typing:&lt;br /&gt;
&lt;br /&gt;
     dd_generator&lt;br /&gt;
&lt;br /&gt;
for the HPC Cluster, or &lt;br /&gt;
&lt;br /&gt;
     dd_generator_MAC&lt;br /&gt;
&lt;br /&gt;
for a MAC OS X system&lt;br /&gt;
&lt;br /&gt;
* Typing dd_generator will run the script automatically. After installing the MCTDH (DD-vMCG) package this command has been added to your list of executable commands. &lt;br /&gt;
&lt;br /&gt;
     ********************************************************************************&lt;br /&gt;
     ********************    -------  DD GENERATOR  --------    *****************&lt;br /&gt;
     ********************************************************************************&lt;br /&gt;
&lt;br /&gt;
* The generator will ask a series of questions and will use the answers provided to prepare the input files for the dynamics program. The questions it asks are listed below along with answers for a trial run on butadiene.&lt;br /&gt;
&lt;br /&gt;
==== List of questions asked by dd_generator====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;blockquote style=&amp;quot;background: white; border: 1px solid black; padding: 1em;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Question&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; &#039;&#039;&#039;Answer for this tutorial&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; &#039;&#039;&#039;Explanation&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Which version of GAUSSIAN should we use? (gdvh01|g03)&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; gdvh01 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;How many shared-memory processors should we use? (1|2|4|8)&lt;br /&gt;
N.B.: (ncpus=1) serial or (ncpus=2|4|8) parallel (omp) version of MCTDH launched as batch job&lt;br /&gt;
and launching monoprocessor GAUSSIAN interactive jobs (nprocshared=1 or no specification)&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 4 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the name of the molecule?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; fulvene &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; The first four letters will be used to name the new files that the generator is creating &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the number of atoms?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 12 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;The number of nuclear degrees of freedom is 30.&lt;br /&gt;
Do you want to reduce the dimensionality? (y|n)&lt;br /&gt;
(N.B.: this can be used also for re-ordering the coordinates)&lt;br /&gt;
&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; n &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the number of nuclear Gaussian functions?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 4 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt; 4 means 4 gaussian on state 1 and 4 gaussian on state 2. This is the &amp;quot;single-set&amp;quot; implementation of MCTDH (DD-vMCG) therefore the gaussian wavepackets on state 1 are the same as the gaussian wavepackets on state 2.&amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;&#039;What is the final propagation time (in fs)?&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 150 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the propagation time step (in fs)?&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 0.1 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the number of electronic states? (1|2)&#039;&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 2 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the highest electronic root?&#039;&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 2 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;From which electronic state should the wavepacket start? (2|1)&#039;&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 2 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Will there be an initial momentum given to the wavepacket? (y|n)&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; n &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Do you want to add a reference label to the name of the case? (y|n)&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; y &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Please type your text:&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; trial &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;This question is only asked if the answer to the previous question was yes.  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What will be the status of the database? (rdwr|rd|wr|none)&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; none &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; Choose rd for read, wr for write etc. In this case we are not going to use the database, but if it was used (rd or rdwr is specified) the script would ask the user to specify the threshold below which the database values will be used (%). In this case the value none is chosen so this question is not asked.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;&amp;gt;&amp;gt; Manual rotation (using Excel spreadsheet) &amp;lt;&amp;lt;&lt;br /&gt;
   Please type the values of the three Euler angles (in deg)&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 0&lt;br /&gt;
0&lt;br /&gt;
0 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Tuple from the dd_rotation method (insert link)&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;The generator will now tell you that it has read the files start.chk from the folder /work/$USER/fulv/dd_data/ .&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Files created by the generator&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* The generator will now tell you that it has read the files start.log, coin.log and momentum.dat (if a momentum has been specified) from the folder /work/$USER/fulv/dd_data/:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
   about to read parameters...&lt;br /&gt;
   ... parameters just read&lt;br /&gt;
   about to read file /work/vs13/fulv/dd_data/start.log                   &lt;br /&gt;
                                                               ...&lt;br /&gt;
   ... file /work/vs13/fulv/dd_data/start.log                             &lt;br /&gt;
                                                      read successfully&lt;br /&gt;
   about to read file /work/vs13/fulv/dd_data/coin.log                    &lt;br /&gt;
                                                               ...&lt;br /&gt;
 *********************************************************&lt;br /&gt;
 Mass-weighted displacement from start to coin:&lt;br /&gt;
    old total norm: 22.070387&lt;br /&gt;
    new total norm:  4.669035&lt;br /&gt;
  vibrational part:  4.669035&lt;br /&gt;
   rotational part:  0.000000&lt;br /&gt;
 *********************************************************&lt;br /&gt;
   ... file /work/vs13/fulv/dd_data/coin.log                             &lt;br /&gt;
                                                      read successfully&lt;br /&gt;
&amp;lt;/pre&amp;gt; &lt;br /&gt;
&lt;br /&gt;
and that the extraction of data and the creation of a summary file were done successfully. If the Mass-weighted displacement from start to coin appears as NaN it may be because the start.log contains atom numbers rather than atom types. You will need to redo the freq=hpmodes job with atom types.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Data extracted successfully&lt;br /&gt;
The summary of this file generation is in:&lt;br /&gt;
-rw-r--r--  1 vs13 hpc-users 3070 Dec  2 17:06 /home/vs13/fulv/fstodd4o.txt&lt;br /&gt;
 &lt;br /&gt;
Do not forget you still can add a momentum, change the integrator,&lt;br /&gt;
change convergence criteria for GAUSSIAN and MCTDH...&lt;br /&gt;
 &lt;br /&gt;
Do not forget to check the order of the atoms of the conical intersection geometry&lt;br /&gt;
in /work/vs13/fulv/dd_data/coin.log&lt;br /&gt;
 &lt;br /&gt;
Now go to your jobscript file and give values to the memory and walltime.&lt;br /&gt;
 &lt;br /&gt;
Good luck!&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* The dd_generator script has generated four files in the same directory (/home/$USER/fulv):&lt;br /&gt;
&lt;br /&gt;
# fstodd4p_trial.inp  &lt;br /&gt;
# fstodd4p_trial.job  &lt;br /&gt;
# fstodd4p_trial.txt  &lt;br /&gt;
# fstodd_none.op&lt;br /&gt;
&lt;br /&gt;
(Link to a more detailed explanation of this files)&lt;br /&gt;
&lt;br /&gt;
* The script has also created some files and directories in /work/$USER/fulv where the MCTDH (DD-vMCG) and GAUSSIAN calculations will be stored:&lt;br /&gt;
&lt;br /&gt;
1) Directories:&lt;br /&gt;
&lt;br /&gt;
* fstodd4p_trial&lt;br /&gt;
* fstodd4p_trial/dd_data&lt;br /&gt;
&lt;br /&gt;
2) Files (in fstodd4o_trial/dd_data):&lt;br /&gt;
&lt;br /&gt;
# refdb.dat &lt;br /&gt;
# start.chk  &lt;br /&gt;
# template.dat&lt;br /&gt;
# forward.dat&lt;br /&gt;
# backward.dat&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Modifications to be made to the files before running the dynamics&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* In the .job file in /home/$USER/buta specify the memory and walltime if you are in the HPC Cluster.&lt;br /&gt;
&lt;br /&gt;
* When running a development version of GAUSSIAN (gdvg03 or gdvg01), copy the start.chk file into the folder /work/$USER/dyn_90dev/but1dd1p_trial/dd_data. The unformatted checkpoint file from start.fchk that dd_generator has created is corrupted (due to a bug in formchk in gdvg01).&lt;br /&gt;
has this been fixed?&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Running the dynamics&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* Navigate to /home/$USER/fulv. Queue the job file. In this case, type:&lt;br /&gt;
&lt;br /&gt;
     qsub fstodd4p_trial.job&lt;br /&gt;
&lt;br /&gt;
for MAC OS X users the shell command is already written in fstodd4p_trial.job&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;The Database (DB)&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
The DB is made of four binary files:&lt;br /&gt;
geo.db&lt;br /&gt;
pes.db&lt;br /&gt;
gra.db&lt;br /&gt;
hes.db&lt;br /&gt;
They can be used in place of GAUSSIAN calculations to save some&lt;br /&gt;
computation time when you ask for DBrd or DBrdwr.&lt;br /&gt;
&lt;br /&gt;
Each set of geometry, energy, gradient and Hessian (the latter&lt;br /&gt;
three quantities having been calculated by GAUSSIAN for the two&lt;br /&gt;
adiabatic electronic states) will be called a DB record and&lt;br /&gt;
assigned a record number defining the order of occurrence in the DB.&lt;br /&gt;
If you run a calculation where the DB is to be read, in the *.res&lt;br /&gt;
file that you obtain after the calculation is done (file that&lt;br /&gt;
actually is a redirection of the standard output) you will see the&lt;br /&gt;
number of records in the DB as it grows.&lt;br /&gt;
Example (formaldehyde, multi-set 1+1):&lt;br /&gt;
          53&lt;br /&gt;
 s=  1 e=  1 t=   0.000 V1=   0.001 V2=   4.533 H11=   0.001 H22=&lt;br /&gt;
 4.533 H12=   0.000 q=   0.0000    0.0000    0.0000    0.0000&lt;br /&gt;
 0.0000    0.0000&lt;br /&gt;
          53&lt;br /&gt;
 s=  2 e=  1 t=   0.000 V1=   0.001 V2=   4.533 H11=   0.001 H22=&lt;br /&gt;
 4.533 H12=   0.000 q=   0.0000    0.0000    0.0000    0.0000&lt;br /&gt;
 0.0000    0.0000&lt;br /&gt;
          53&lt;br /&gt;
 s=  1 e=  1 t=   0.500 V1=   0.197 V2=   4.701 H11=   0.211 H22=&lt;br /&gt;
 4.687 H12=   0.251 q=  -0.6258   -0.6146    0.6136    0.6049&lt;br /&gt;
 -0.5520   -0.0616&lt;br /&gt;
          53&lt;br /&gt;
 s=  2 e=  1 t=   0.500 V1=   0.000 V2=   4.533 H11=   0.000 H22=&lt;br /&gt;
 4.533 H12=  -0.001 q=   0.0009    0.0009    0.0093   -0.0245&lt;br /&gt;
 -0.0066    0.0001&lt;br /&gt;
          53&lt;br /&gt;
 &lt;br /&gt;
 ERROR in subroutine Distdb :&lt;br /&gt;
 Redundant records in Data Base:   18   19&lt;br /&gt;
 s=  1 e=  1 t=   1.000 V1=   0.469 V2=   4.455 H11=   0.479 H22=&lt;br /&gt;
 4.445 H12=   0.200 q=  -0.4640   -0.5641    1.2594   -0.5871&lt;br /&gt;
 -1.0864   -0.1120&lt;br /&gt;
          53&lt;br /&gt;
 s=  2 e=  1 t=   1.000 V1=   0.001 V2=   4.473 H11=   0.001 H22=&lt;br /&gt;
 4.473 H12=  -0.002 q=   0.0003    0.0004    0.0404   -0.0944&lt;br /&gt;
 -0.0292    0.0001&lt;br /&gt;
          53&lt;br /&gt;
 s=  1 e=  1 t=   1.500 V1=   0.113 V2=   4.543 H11=   0.120 H22=&lt;br /&gt;
 4.536 H12=   0.170 q=  -0.3994   -0.4377    0.5444    0.2057&lt;br /&gt;
 -0.5149   -0.0638&lt;br /&gt;
          53&lt;br /&gt;
 s=  2 e=  1 t=   1.500 V1=   0.013 V2=   4.390 H11=   0.013 H22=&lt;br /&gt;
 4.390 H12=  -0.005 q=   0.0009    0.0010    0.0897   -0.2104&lt;br /&gt;
 -0.0634    0.0002&lt;br /&gt;
          53&lt;br /&gt;
 s=  1 e=  1 t=   2.000 V1=   0.068 V2=   4.431 H11=   0.071 H22=&lt;br /&gt;
 4.428 H12=   0.110 q=  -0.2751   -0.3274    0.4796   -0.0812&lt;br /&gt;
 -0.3880   -0.0605&lt;br /&gt;
          54&lt;br /&gt;
 s=  2 e=  1 t=   2.000 V1=   0.019 V2=   4.367 H11=   0.019 H22=&lt;br /&gt;
 4.367 H12=  -0.009 q=   0.0012    0.0013    0.1563   -0.3658&lt;br /&gt;
 -0.1058    0.0003&lt;br /&gt;
          54&lt;br /&gt;
 s=  1 e=  1 t=   2.500 V1=   0.064 V2=   4.273 H11=   0.065 H22=&lt;br /&gt;
 4.272 H12=  -0.064 q=   0.2559    0.0914    0.1691   -0.7218&lt;br /&gt;
 -0.1052   -0.0595&lt;br /&gt;
          55&lt;br /&gt;
 s=  2 e=  1 t=   2.500 V1=   0.070 V2=   4.258 H11=   0.070 H22=&lt;br /&gt;
 4.257 H12=  -0.013 q=   0.0013    0.0015    0.2384   -0.5572&lt;br /&gt;
 -0.1528    0.0004&lt;br /&gt;
&lt;br /&gt;
Here, we started with a DB of 53 records. It is large enough until&lt;br /&gt;
2 fs, where an additional record is produced, and so on.&lt;br /&gt;
The error message saying here that records 18 and 19 are identical&lt;br /&gt;
will not prevent the code from working. It is just here to remind you&lt;br /&gt;
that the DB is not clean in that it has redundant records.&lt;br /&gt;
This is to be prevented as the DB files might become large quite&lt;br /&gt;
rapidly and all records will be read at each update time (dd_update&lt;br /&gt;
= tout in the integrator section, tout = xxx fs in the run section&lt;br /&gt;
of the *.inp file) for each Gaussian function.&lt;br /&gt;
&lt;br /&gt;
Incidentally, when you want to analyse results written to a *.res&lt;br /&gt;
file, you need to look for lines starting with &amp;quot;s=&amp;quot; (other lines&lt;br /&gt;
are various messages and numbers of DB records).&lt;br /&gt;
The criterion for using the DB is to be seen as a maximum-allowed&lt;br /&gt;
relative difference&lt;br /&gt;
&lt;br /&gt;
So, it is up to you to clean the DB when you see this, and to keep&lt;br /&gt;
this in mind when you concatenate DBs that have branched in their&lt;br /&gt;
past (see more details below).&lt;br /&gt;
&lt;br /&gt;
Also, a given DB depends on the choice of a reference geometry in&lt;br /&gt;
Cartesian coordinates because geometries written to the DB files&lt;br /&gt;
will always be re-orientated with respect to this particular&lt;br /&gt;
geometry. The back and forth transformations are performed by MCTDH (DD-vMCG)&lt;br /&gt;
so you don&#039;t need not worry about this.&lt;br /&gt;
This geometry is written to refdb.dat. It is the starting geometry&lt;br /&gt;
that comes from start.log (the only difference being that it is&lt;br /&gt;
mass-centred).&lt;br /&gt;
As long as you do not change the starting geometry or the nature&lt;br /&gt;
of the electronic states, you can thus keep growing the DB of your&lt;br /&gt;
system.&lt;br /&gt;
&lt;br /&gt;
MANAGING THE DATA BASE&lt;br /&gt;
&lt;br /&gt;
A set of DB  programs can be found in XXXXX. Their roles are&lt;br /&gt;
explained below.&lt;br /&gt;
For now, the sources are in dd_utildev and dd_util.31dv and the&lt;br /&gt;
executables are in mctdh90dev/bin and mctdh90.31dv/bin, so you can&lt;br /&gt;
call them from anywhere, as long as DB files are there.&lt;br /&gt;
&lt;br /&gt;
1) countdb.out: returns the number of records of the current DB&lt;br /&gt;
2) cleandb.out: &amp;quot;brute-force&amp;quot; cleaning of the current DB. This&lt;br /&gt;
might be too long to be run interactively when the number of&lt;br /&gt;
records is too large, because each record needs to be compared to&lt;br /&gt;
each other record (e.g. a DB with ca. 3800 records will take a couple of minutes to clean interactively). If so, run in batch mode (ask me or Marta if you&lt;br /&gt;
have a doubt).&lt;br /&gt;
The cleaned files are:&lt;br /&gt;
geoclean.db&lt;br /&gt;
pesclean.db&lt;br /&gt;
graclean.db&lt;br /&gt;
hesclean.db&lt;br /&gt;
You need to rename them without &#039;clean&#039; for them to be used as a DB.&lt;br /&gt;
3) cutdb.out: allows you to cut out the beginning of a DB.&lt;br /&gt;
This is to be used in the following situation:&lt;br /&gt;
- You start from a mother DB, DB0, assumed to be clean, with N0&lt;br /&gt;
records.&lt;br /&gt;
- You want to use DB0 in two independent calculations. You&lt;br /&gt;
replicate DB0 to daughter DBs, DB1 and DB2.&lt;br /&gt;
- When these calculations are done, DB1 and DB2 have grown to N0+N1&lt;br /&gt;
and N0+N2 records, respectively.&lt;br /&gt;
- You want to concatenate them to create a new mother DB, DB3.&lt;br /&gt;
- DB1 and DB2 have their N0 first records the same. To avoid&lt;br /&gt;
redundant records, you need to cut N0 records from DB2 for example.&lt;br /&gt;
--&amp;gt; go to where DB2 is and use cleandb.out&lt;br /&gt;
The resulting files are:&lt;br /&gt;
geocut.db&lt;br /&gt;
pescut.db&lt;br /&gt;
gracut.db&lt;br /&gt;
hescut.db&lt;br /&gt;
these have N1 records.&lt;br /&gt;
--&amp;gt; rename DB1, for instance geo.db1 etc., and concatenate the files:&lt;br /&gt;
cat geo.db1 geoclean.db &amp;gt; geo.db&lt;br /&gt;
etc.&lt;br /&gt;
- Your new mother DB, DB3, should now have N0+N1+N2 distinct records.&lt;br /&gt;
4) deldb.out: allows you to remove one selected record (for&lt;br /&gt;
instance if corrupted) from the DB if you know its number.&lt;br /&gt;
The resulting files are:&lt;br /&gt;
geodel.db&lt;br /&gt;
pesdel.db&lt;br /&gt;
gradel.db&lt;br /&gt;
hesdel.db&lt;br /&gt;
You need to rename them without &#039;del&#039; for them to be used as a DB.&lt;br /&gt;
5) seedb.out: allows you extract one selected record from the&lt;br /&gt;
binary files for reading it (the record is not removed from the DB).&lt;br /&gt;
The resulting file can be read as a text file (ascii) and is:&lt;br /&gt;
see.db&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Restarting dynamics jobs&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
The examples below make use of the directory and filenames in the examples above.&lt;br /&gt;
&lt;br /&gt;
A dynamics run can be restarted if the job was terminated before completion (e.g if it ran out of time or failed because of convergence problems) or if the user wishes to continue the job for a longer time period than had originally been specified. The program will continue writing the same output file but will overwrite the .res file. Thus the .res file should be saved under a different name to prevent loss of the data calculated in the original run. The .res is not written until the job stops so this can be done after the restart.&lt;br /&gt;
&lt;br /&gt;
*To increase the final propagation time&lt;br /&gt;
&lt;br /&gt;
Retrieve the .inp file (in $HOME/buta) and change &#039;&#039;propagation&#039;&#039; to &#039;&#039;continuation&#039;&#039; in the section entitled RUN-SECTION. Then change the final time &#039;&#039;tfinal&#039;&#039; to a larger value. (NB this new value should include the time already done).&lt;br /&gt;
&lt;br /&gt;
Re-queue the job.&lt;br /&gt;
&lt;br /&gt;
*To increase the number of scf cycles (the most common reason for convergence failure)&lt;br /&gt;
&lt;br /&gt;
Edit the template.dat file in $WORK/buta/but1dd1p_trial/dd_data. Insert scf=(maxcycle=128) on the keyword line (for example). It is important that you change the template.dat file in the but1dd1p_trial/dd_data folder that was created by dd_generator (rather than the one created by the user in $WORK/buta/dd_data) because the original $WORK/buta/dd_data/template.dat file is only read by dd_generator and used to create the job-specific file in the job folder. (Of course if you wish all future jobs run in $WORK/buta  to have increased scf cycles, change the other template.dat file in $WORK/buta/dd_data too.)&lt;br /&gt;
&lt;br /&gt;
Re-queue the job.&lt;br /&gt;
&lt;br /&gt;
*To increase the run-time so that a job will finish&lt;br /&gt;
&lt;br /&gt;
Edit the walltime in the .job file in the $HOME directory and re-queue the job.&lt;br /&gt;
&lt;br /&gt;
=&#039;&#039;&#039;Analysis of the results&#039;&#039;&#039;=&lt;br /&gt;
&lt;br /&gt;
The most important files are the output and .res files.&lt;br /&gt;
&lt;br /&gt;
=== Detailed information about files and directories ===&lt;br /&gt;
&lt;br /&gt;
*output&lt;br /&gt;
&lt;br /&gt;
The output contains some standard results:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Time&#039;&#039;&#039;: time in fs.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;CPU&#039;&#039;&#039;:  CPU time in s.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Norm&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;E-tot&#039;&#039;&#039;: the total energy in eV. This value should be conserved (i.e by the end of the run the E-tot value should not be too different  from what it was a time=0).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;E-corr&#039;&#039;&#039;: correlated Hamiltonian energy&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Delta-E&#039;&#039;&#039;: diference between E-tot at time t=0 and the current time t&lt;br /&gt;
&lt;br /&gt;
Note: In a multi-packet run, i.e. when npacket &amp;gt; 1, the total energy and the norm of the wavefunction, as given in the &amp;quot;total&amp;quot; part, are averaged over the packets.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;population&#039;&#039;&#039; : diabatic populations of state 1 and state 2 (in that order) at the current time t&lt;br /&gt;
&lt;br /&gt;
For every mode:	&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt; q &amp;gt;&#039;&#039;&#039;: position expectation value&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;dq&amp;gt;&#039;&#039;&#039;: standard deviation Sqrt[&amp;lt; q&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt; &amp;gt; - &amp;lt; q &amp;gt;&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt; p &amp;gt;&#039;&#039;&#039; : momentum expectation value&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;dq&amp;gt;&#039;&#039;&#039;: standard deviation Sqrt[&amp;lt; p&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt; &amp;gt; - &amp;lt; p &amp;gt;&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*.res&lt;br /&gt;
&lt;br /&gt;
This file contains the energy of each state (diabatic and adiabatic) at each timestep for each gaussian function:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;s&#039;&#039;&#039; is a redundant value in mctdh90.31dv. It is only meaningful in multi-set implementations of mctdh (where there are double the number of gaussian functions than specified: one for each state). (It indicates whether the gaussian function in question is on the lower (1) or upper (2) state. (In the single set implementation, the gaussian functions on each state are identical)).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;e&#039;&#039;&#039; is a label given to each gaussian function&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;t&#039;&#039;&#039; is the current time in fs&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;V1&#039;&#039;&#039; is the energy of the lower adiabatic state at time t&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;V2&#039;&#039;&#039; is the energy of the upper adiabatic state at time t&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;H11&#039;&#039;&#039; is the energy of the lower diabatic state at time t&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;H22&#039;&#039;&#039; is the energy of the upper diabatic state at time t&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;H12&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;q&#039;&#039;&#039; is the list of frequency mass-weighted normal coordinates that describe the geometry at time t&lt;br /&gt;
&lt;br /&gt;
The end of the file will read something like: &lt;br /&gt;
&lt;br /&gt;
     Propagation was successful.&lt;br /&gt;
     &lt;br /&gt;
     Total time     [h:m:s] :    0 :  1 : 21.60&lt;br /&gt;
     &lt;br /&gt;
      ---------------------------------------------------------------------------&lt;br /&gt;
      ------ Host: &amp;quot;cx1-3-2-4&amp;quot; ----------Sat Jan 17 06:50:20 2009&lt;br /&gt;
&lt;br /&gt;
The other most common result is that the calculation aborted because of scf convergence problems in the CASSCF GAUSSIAN calculations. In this case the ouput file will break off after the last complete step and the end of the .res file will read something like:&lt;br /&gt;
     ERROR in subroutine Getddpes :&lt;br /&gt;
     CAS convergence failed for gwp on state:    1    1&lt;br /&gt;
&lt;br /&gt;
If the job terminates due to scf convergence problems, it may be possible to restart it after modifying the .inp and/or .job and/or template.dat files.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*log&lt;br /&gt;
&lt;br /&gt;
This file contains information such as the source code version, type of calculation performed, integrator used, numerical parameters, which data files are opened, any error messages, and much more. The information provided by the log file can be very helpful, in particular when searching for errors. One should always carefully inspect the log file.&lt;br /&gt;
&lt;br /&gt;
* dvr&lt;br /&gt;
&lt;br /&gt;
* oper&lt;br /&gt;
&lt;br /&gt;
*ddpeserr&lt;br /&gt;
&lt;br /&gt;
*input&lt;br /&gt;
&lt;br /&gt;
*op.log&lt;br /&gt;
&lt;br /&gt;
*psi&lt;br /&gt;
&lt;br /&gt;
*check&lt;br /&gt;
&lt;br /&gt;
*auto&lt;br /&gt;
&lt;br /&gt;
*ddpes&lt;br /&gt;
&lt;br /&gt;
*restart&lt;br /&gt;
&lt;br /&gt;
*stop&lt;br /&gt;
&lt;br /&gt;
*speed&lt;br /&gt;
&lt;br /&gt;
*timing&lt;br /&gt;
&lt;br /&gt;
*update&lt;br /&gt;
&lt;br /&gt;
=== Example: butadiene ===&lt;br /&gt;
&lt;br /&gt;
*Examine the end of the output file to check that the calculation ran to completion.&lt;br /&gt;
     &lt;br /&gt;
*Plot the energy of the diabatic and adiabatic states over time (.res file: V1, V2, H11 and H22). Calculate V2-V1 and H22-H11 and plot these also. H12 may also be plotted on the same graph.&lt;br /&gt;
[[Image:EnergyofStates.png]]&lt;br /&gt;
&lt;br /&gt;
The diabatic states cross at 176.2 fs and the adiabatic states cross at 174.5 fs. At a conical intersection, the value V2-V1 will become negative and the H22-H11 will be a minimum (&amp;lt;1eV). Ideally these crossings will occur at the same time. If the diabatisation has worked well, after V2-V1 becomes negative, V2-V1 and H22-H11 will become mirror images (i.e. the diabatic and adiabatic states follow each other). &lt;br /&gt;
&lt;br /&gt;
*Plot the value of the total energy over time (.res file: E-tot). Verify that the Delta-E value is not too large (compare with the total energy (E-tot) at time 0).&lt;br /&gt;
[[Image:TotalEnergy.png]]&lt;br /&gt;
&lt;br /&gt;
*Plot the population of one of the (diabatic) states over time (.res file: population).&lt;br /&gt;
[[Image:Population.png]]&lt;br /&gt;
&lt;br /&gt;
At the conical intersection the population transfer is large. In this case the job has been terminated after 200 fs. Usually the calculation should be continued until the populations stabilise (which obviously has not happened in this case).&lt;br /&gt;
&lt;br /&gt;
=== Making a Movie ===&lt;br /&gt;
&lt;br /&gt;
Navigate to /work/$USER/buta/but1dd1p_trial (the place where the .res file was written). Type:&lt;br /&gt;
 dd_movie.out&lt;br /&gt;
* The script will ask a series of questions and will use the answers provided to create a file that can be read into Molden or iMol.&lt;br /&gt;
&lt;br /&gt;
==== List of questions asked by dd_movie.out====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;blockquote style=&amp;quot;background: white; border: 1px solid black; padding: 1em;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Question&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; &#039;&#039;&#039;Answer for this tutorial&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; &#039;&#039;&#039;Explanation&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the number of atoms?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 10 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the actual number of active coordinates?&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 24 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; In this case all coordinates were active (so there are 3N-6 where N is the number of atoms) &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Name of result file to read?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; but1dd1p_trial.res &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;Ensure that the forward.dat and backward.dat files are located in the current directory in the folder dd_data (they will have been written there automatically)&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Name of movie file to write?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; but1dd1p_trial.xyz &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; Choose any name .xyz &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Which electronic state (s=...)?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 1 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;Choose 1 (this question dates from the multi-set implementation of mctdh where the wavepackets on each state were different)  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Which Gaussian function (e=...)?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 1 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;In this case we have only one wavepacket&amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;The script will now return the number of lines and the initial number of points&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
number of lines:        4684&lt;br /&gt;
initial number of points:        4674&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Maximum number of points you want?&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 4674 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;If you wish to view the movie in Molden you must reduce the number of points to less than 100 (so choose 99 for maximum number of points). iMol can cope with any number of frames so choose the number printed by the script: this number will be reduced and the script will tell you how many points it has written. &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
writing frequency:           2&lt;br /&gt;
   final number of points:        2337&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The .xyz file is ready to be opened in Molden or iMol.&lt;br /&gt;
&lt;br /&gt;
= &#039;&#039;&#039;Current Known Bugs&#039;&#039;&#039; =&lt;br /&gt;
&lt;br /&gt;
Parallelisation:&lt;br /&gt;
&lt;br /&gt;
It is not possible to run calculations in parallel with version 90.31dv (reading the same template.dat file simultaneously by each processor is causing problems). In 90.35tmp this is ok. In 90.4X it will also be fixed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Total energy:&lt;br /&gt;
&lt;br /&gt;
1) The total energy is sometimes &amp;quot;artificially&amp;quot; increased by a lot. If so, try a different integrator or play around with the timestep (may need to get larger or smaller). Or try increasing scf convergence to 10&amp;lt;sup&amp;gt;-12&amp;lt;/sup&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
2) If Delta-E suddenly becomes too large, you can get the following message: &lt;br /&gt;
&amp;quot;ERROR in subroutine WRGAUSSIAN :&lt;br /&gt;
 Do not use $Swap:...$ metastring in file /.../template.dat&amp;quot;&lt;br /&gt;
Often, when getting this message, no more steps are added to the simulation, although the calculation seems to keep running (the integrator keeps trying and failing).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Using the database:&lt;br /&gt;
&lt;br /&gt;
1) Every record generated with mctdh90.31dev and several GWPs is corrupted, so, for now, when launching calculations with more that one wavepacket, use &amp;quot;formdd_none.op&amp;quot; (i.e. do not read nor write the database).&lt;br /&gt;
[For instance, when using dbrdwr and starting from a clean db, all newly generated records are added to the existing database, even if they are identical to records that were already written in the db.]  In 90.35tmp this is ok. In 90.4X it will also be fixed.&lt;br /&gt;
&lt;br /&gt;
2) Records obtained in calculations with one GWP should be OK, but this is still to be confirmed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Impossible case&amp;quot;:&lt;br /&gt;
&lt;br /&gt;
Error message that forces the calculation to stop. It seems to be associated with moving towards an &amp;quot;unexpected&amp;quot; geometry (e.g. a radical).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
State Averaging:&lt;br /&gt;
&lt;br /&gt;
To increase the threshold above which stateaveraging is turned off, increase the default value of 10 (to e.g. 50)  in the line &#039;&#039;ddregions&#039;&#039; in the OPERATOR-SECTION of the .inp file.&lt;br /&gt;
&lt;br /&gt;
= &#039;&#039;&#039;Questions and Modifications to be made to this wiki&#039;&#039;&#039; =&lt;br /&gt;
&lt;br /&gt;
*Why we would ever need to start the gwps from the lower state? To study GS rxns; chemiluminesence (eg glowworms).&lt;br /&gt;
*In terms of Delta-E, how much is too much? ca1eV but shape of E-tot vs time is important: discontiunities or v flat then steep increase are less reliable than smooth gradual increases.&lt;br /&gt;
*Benjamin: Note that Marta has noticed that for very strange geometries, you may receive an error message saying &amp;quot;impossible case&amp;quot;, which stops MCTDH. It is too complicated to explain here. I know where this happens in the code, and I should prevent this error to stop the code but I didn&#039;t have time to fix this. I&#039;ll do it soon.&lt;br /&gt;
*Need to edit/correct section on the DB.&lt;br /&gt;
*Is does unfchk in gdvg03 create corrupted fchk files? G03 is fine. we don&#039;t know about gdvg03 but we don&#039;t care because we probablly won&#039;t use it.&lt;br /&gt;
&lt;br /&gt;
=== [[Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial|back]] ===&lt;/div&gt;</summary>
		<author><name>Vs13</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/run&amp;diff=333949</id>
		<title>Resgrp:comp-photo-dyn/mctdh90.56dv Fulvene Tutorial/run</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/run&amp;diff=333949"/>
		<updated>2013-04-29T10:49:35Z</updated>

		<summary type="html">&lt;p&gt;Vs13: /* Modifications to be made to the files before running the dynamics */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= &#039;&#039;&#039;Basic use of the MCTDH (DD-vMCG) package&#039;&#039;&#039; =&lt;br /&gt;
&lt;br /&gt;
A script called dd_generator uses GAUSSIAN output files and user input to write the input files for mctdh (DD-vMCG).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Notes&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;The number of gaussian wavepackets (requested by the dd_generator script)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
When studying a new system, start with one (to keep calculation times short). When an appropriate momentum, time period, time step and integrator have been established, increase the number of wavepackets until the results are not changed by adding more. Calculation times are proportional to the number of wavepackets. To ensure efficient use of computing resources, always specify an even number of wavepackets if using more than one processor (since the number of processors can only be an even number: currently 2, 4 or 8).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;The database&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The most time-consuming part of a dynamics run is the GAUSSIAN CASSCF calculations. The results of these calculations can be stored in a database and re-used in future runs. The user must choose whether or not to read and/or write a database. Each calculation will write a separate database so the databases from each run must be combined (and any duplicate entries removed (to save space)).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Initial momentum&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
An initial momentum can be specified to direct the wavepacket to a particular area of the PES (e.g. towards a conical intersection, a transition state or minimum geometry). The momentum is given as a geometry (in frequency mass weighted normal coordinates). The dd_rotation program used for rotation of the conical intersection can be used to transform the coordinates of the desired geometry. If the user requests an initial momentum, dd_generator will search for a file called momentum.dat. If this file is found, dd_generator will ask if the user wishes to use the momentum specified in it. The user can then specify how much energy to give (in eV). Thus, the values in momentum.dat need only be relative values (since they will be multiplied by a scaling factor to provide the total number of eV requested). If there is no file called momentum.dat in the appropriate folder, the user will not be asked to specify a total number of eV to give to the wavepacket(s). A momentum can still be added by manually modifying the .inp file after the dd_generator script has been run (replace the zero values in the fifth column of the section of the .inp file entitled INIT_WF-SECTION). However, it is simpler to create the momentum.dat file mainly because if the user edits the .inp file directly, there is no way of knowing what the total excess energy will be: the values listed in .inp also incorporate magnitude (not just relative values as in momentum.dat). &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Memory and number of processors&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
In template.dat, the memory for each GAUSSIAN CASSCF calculation is specified. In the .job file (created by dd_generator from user input) the total memory is specified. Thus, the memory specified in .job must be at least as great as the memory given in template.dat multiplied by the number of processors.&lt;br /&gt;
&lt;br /&gt;
The GAUSSIAN calculations for each wavepacket will run on a single processor. If the user specifies more than one processor then the calculations for each wavepacket can run simultaneously. To ensure efficient use of computing resources, always specify an even number of wavepackets when using more than one processor (since the number of processors can only be an even number: currently 2, 4 or 8).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Symmetry Considerations&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The way the diabatisation is performed in mctdh90.31dv sometimes leads to complications involving symmetry.  The diabatic states are defined using the conical intersection (or other geometry) described in coin.log. If the molecule is highly symmetric, there will be more than one conical intersection (all identical by symmetry). If the wavepacket moves close to one of the other conical intersections that is not described in coin.log, the diabatic states may not be properly described in this area of the PES. This of course means that the behaviour of the wavepacket(s) is likely to be described poorly also.&lt;br /&gt;
&lt;br /&gt;
If the conical intersection has lower symmetry than the starting material, the symmetry must necessarily be broken during the dynamics calculation before the conical intersection is reached. The breaking of each mode will occur either due to the accumulation of small numerical inaccuracies or if a momentum is given which forces particular modes to break symmetry.&lt;br /&gt;
Mctdh90.31dv uses frequency-mass-weighted normal coordinates to describe molecular geometries. Each frequency-mass-weighted coordinate corresponds to a vibration of the molecule (and there are therefore 3N-6 coordinates). Displacements of atoms are described by a (or a combination of) vibration(s). Each vibration can be displaced in one of two directions: positive or negative. The 3N-6 frequency-mass-weighted coordinates can be classified by symmetry. Whether a particular symmetry mode is broken in the positive or negative direction will be equally likely if no initial momentum is given. Thus for each mode that is broken during a simulation the symmetry may break in the positive direction or the negative direction. There will be 2&amp;lt;sup&amp;gt;x&amp;lt;/sup&amp;gt; possible conical intersections corresponding to a particular starting geometry, where x is the number of modes that must be broken going from starting material to conical intersection.&lt;br /&gt;
&lt;br /&gt;
Additionally, care must be taken over atom labeling. It must be possible to transform the starting material into the conical intersection without permuting atom labels. If the conical intersection has been optimised by following the MEP downhill from the starting material this is not likely to be a problem. However, bear this in mind if drawing the conical intersection by hand.  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Creating the Directories&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* First of all, create a folder in which to save the calculations in your $HOME and $WORK directories. Create a directory in $HOME, and an identical directory in $WORK that has the same path. Keep pathlengths as short as possible (if the total path becomes too long the dynamics code will not run). For simplicity, in this case, we are going to assume that this directory is named &#039;&#039;fulv&#039;&#039; (for fulvene).&lt;br /&gt;
&lt;br /&gt;
     mkdir fulv&lt;br /&gt;
&lt;br /&gt;
* Create a subdirectory called &#039;&#039;&#039;dd_data&#039;&#039;&#039; in the new directory in $WORK.  Thus you should start with:&lt;br /&gt;
&lt;br /&gt;
    /home/$USER/fulv&lt;br /&gt;
    /work/$USER/fulv/dd_data&lt;br /&gt;
&lt;br /&gt;
* Important Note: it is essential to have the same path in both directories, $HOME and $WORK. Do not change the path-names within the HOME/WORK directories. If you re-name or move any subdirectory in your, for example HOME directory, you have to be consistent and make the same changes in the $WORK directory.&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Gaussian Output to be Used as Input for the Dynamics Program&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* Populate the new directory /work/$USER/buta/dd_data with four files which must be named: &#039;&#039;&#039;coin.log&#039;&#039;&#039;; &#039;&#039;&#039;start.fchk&#039;&#039;&#039;; &#039;&#039;&#039;start.log&#039;&#039;&#039;; and &#039;&#039;&#039;template.dat&#039;&#039;&#039;.These files are required in order to run any dynamics simulation, they are the basis that the script dd_generator (see the following section) will use to create the necessary files for running MCTDH (DD-vMCG).  You may also create a file named &amp;quot;&#039;momentum.dat&amp;quot;&#039; if you wish to give a momentum to the wavepacket(s) (this is optional and may be created later instead). &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;coin.log&#039;&#039;&#039; is the logfile resulting from the optimisation of the conical intersection. NB The MCTDH (DD-vMCG) program will rotate the conical intersection before starting the dynamics. To do this it must be provided with three angles which describe the appropriate rotation. There is an Excel spreadsheet available to calculate these angles (see the section entitled &amp;quot;Rotating the Conical Intersection&amp;quot;). NB the structure in coin.log need not necessarily be a true conical intersection: this point is only used for performing the diabatisation. Thus the diabatisation will be exact at this point and will become more approximate the further you are from it (on the PES). If you wish to use a point that is not a conical intersection, simply run a conical intersection optimisation (with only a single step) on the desired geometry. This will create a file with the same layout as a conical intersection optimisation output file (mctdh looks for certain things in this file so if some other type of .log file were used instead, it might not contain the required information). NB the final conical intersection log file must only contain one geometry (otherwise the dynamics program will not know which geometry to use). IS THIS STATEMENT TRUE FOR THIS VERSION??&lt;br /&gt;
&lt;br /&gt;
[[Media:Coin.log]]&lt;br /&gt;
&lt;br /&gt;
(Insert a link here to section &amp;quot;Rotating the Conical Intersection&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;start.chk&#039;&#039;&#039; is the checkpoint file from the high precision vibrational modes of the ground state with state averaged orbitals (with atom types rather than numbers)&lt;br /&gt;
[[Media:Start.chk]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;start.log&#039;&#039;&#039; is the log file from the high precision vibrational modes of the ground state with state averaged orbitals (with atom types rather than numbers)&lt;br /&gt;
&lt;br /&gt;
[[Media:Start.log]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;template.dat&#039;&#039;&#039; is a template for the creation of GAUSSIAN input files by the MCTDH (DD-vMCG) program. It contains all the mutual keywords of the GAUSSIAN calculations which will be run on-the-fly by MCTDH (DD-vMCG). It also contains other information relating to the GAUSSIAN calculations such as memory requirements.&lt;br /&gt;
 &lt;br /&gt;
[[Media:Template.dat]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;momentum.dat&#039;&#039;&#039; is a file containing a list of values to be used as vectors to indicate the momentum to be given to a particular (set of) wavepacket(s). The vectors must be listed in the order of the frequency-mass-weighted normal coordinates specified in the coin.out file (i.e. the output file from dd_rotation program). They give the magnitude of the momentum to be given along each of these frequency-mass-weighted normal coordinates. N.B. The signs of the values here are important!&lt;br /&gt;
We are not giving a momentum in this simulation.&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;The Generator&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* The &amp;quot;generator&amp;quot; script uses the GAUSSIAN output files (above) along with other information supplied by the user to create input files for MCTDH (DD-vMCG).&lt;br /&gt;
&lt;br /&gt;
* Navigate to /home/$USER/fulv and run the generator by typing:&lt;br /&gt;
&lt;br /&gt;
     dd_generator&lt;br /&gt;
&lt;br /&gt;
for the HPC Cluster, or &lt;br /&gt;
&lt;br /&gt;
     dd_generator_MAC&lt;br /&gt;
&lt;br /&gt;
for a MAC OS X system&lt;br /&gt;
&lt;br /&gt;
* Typing dd_generator will run the script automatically. After installing the MCTDH (DD-vMCG) package this command has been added to your list of executable commands. &lt;br /&gt;
&lt;br /&gt;
     ********************************************************************************&lt;br /&gt;
     ********************    -------  DD GENERATOR  --------    *****************&lt;br /&gt;
     ********************************************************************************&lt;br /&gt;
&lt;br /&gt;
* The generator will ask a series of questions and will use the answers provided to prepare the input files for the dynamics program. The questions it asks are listed below along with answers for a trial run on butadiene.&lt;br /&gt;
&lt;br /&gt;
==== List of questions asked by dd_generator====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;blockquote style=&amp;quot;background: white; border: 1px solid black; padding: 1em;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Question&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; &#039;&#039;&#039;Answer for this tutorial&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; &#039;&#039;&#039;Explanation&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Which version of GAUSSIAN should we use? (gdvh01|g03)&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; gdvh01 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;How many shared-memory processors should we use? (1|2|4|8)&lt;br /&gt;
N.B.: (ncpus=1) serial or (ncpus=2|4|8) parallel (omp) version of MCTDH launched as batch job&lt;br /&gt;
and launching monoprocessor GAUSSIAN interactive jobs (nprocshared=1 or no specification)&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 4 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the name of the molecule?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; fulvene &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; The first four letters will be used to name the new files that the generator is creating &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the number of atoms?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 12 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;The number of nuclear degrees of freedom is 30.&lt;br /&gt;
Do you want to reduce the dimensionality? (y|n)&lt;br /&gt;
(N.B.: this can be used also for re-ordering the coordinates)&lt;br /&gt;
&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; n &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the number of nuclear Gaussian functions?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 4 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt; 4 means 4 gaussian on state 1 and 4 gaussian on state 2. This is the &amp;quot;single-set&amp;quot; implementation of MCTDH (DD-vMCG) therefore the gaussian wavepackets on state 1 are the same as the gaussian wavepackets on state 2.&amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;&#039;What is the final propagation time (in fs)?&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 150 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the propagation time step (in fs)?&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 0.1 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the number of electronic states? (1|2)&#039;&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 2 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the highest electronic root?&#039;&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 2 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;From which electronic state should the wavepacket start? (2|1)&#039;&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 2 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Will there be an initial momentum given to the wavepacket? (y|n)&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; n &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Do you want to add a reference label to the name of the case? (y|n)&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; y &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Please type your text:&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; trial &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;This question is only asked if the answer to the previous question was yes.  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What will be the status of the database? (rdwr|rd|wr|none)&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; none &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; Choose rd for read, wr for write etc. In this case we are not going to use the database, but if it was used (rd or rdwr is specified) the script would ask the user to specify the threshold below which the database values will be used (%). In this case the value none is chosen so this question is not asked.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;&amp;gt;&amp;gt; Manual rotation (using Excel spreadsheet) &amp;lt;&amp;lt;&lt;br /&gt;
   Please type the values of the three Euler angles (in deg)&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 0&lt;br /&gt;
0&lt;br /&gt;
0 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Tuple from the dd_rotation method (insert link)&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;The generator will now tell you that it has read the files start.chk from the folder /work/$USER/fulv/dd_data/ .&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Files created by the generator&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* The generator will now tell you that it has read the files start.log, coin.log and momentum.dat (if a momentum has been specified) from the folder /work/$USER/fulv/dd_data/:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
   about to read parameters...&lt;br /&gt;
   ... parameters just read&lt;br /&gt;
   about to read file /work/vs13/fulv/dd_data/start.log                   &lt;br /&gt;
                                                               ...&lt;br /&gt;
   ... file /work/vs13/fulv/dd_data/start.log                             &lt;br /&gt;
                                                      read successfully&lt;br /&gt;
   about to read file /work/vs13/fulv/dd_data/coin.log                    &lt;br /&gt;
                                                               ...&lt;br /&gt;
 *********************************************************&lt;br /&gt;
 Mass-weighted displacement from start to coin:&lt;br /&gt;
    old total norm: 22.070387&lt;br /&gt;
    new total norm:  4.669035&lt;br /&gt;
  vibrational part:  4.669035&lt;br /&gt;
   rotational part:  0.000000&lt;br /&gt;
 *********************************************************&lt;br /&gt;
   ... file /work/vs13/fulv/dd_data/coin.log                             &lt;br /&gt;
                                                      read successfully&lt;br /&gt;
&amp;lt;/pre&amp;gt; &lt;br /&gt;
&lt;br /&gt;
and that the extraction of data and the creation of a summary file were done successfully. If the Mass-weighted displacement from start to coin appears as NaN it may be because the start.log contains atom numbers rather than atom types. You will need to redo the freq=hpmodes job with atom types.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Data extracted successfully&lt;br /&gt;
The summary of this file generation is in:&lt;br /&gt;
-rw-r--r--  1 vs13 hpc-users 3070 Dec  2 17:06 /home/vs13/fulv/fstodd4o.txt&lt;br /&gt;
 &lt;br /&gt;
Do not forget you still can add a momentum, change the integrator,&lt;br /&gt;
change convergence criteria for GAUSSIAN and MCTDH...&lt;br /&gt;
 &lt;br /&gt;
Do not forget to check the order of the atoms of the conical intersection geometry&lt;br /&gt;
in /work/vs13/fulv/dd_data/coin.log&lt;br /&gt;
 &lt;br /&gt;
Now go to your jobscript file and give values to the memory and walltime.&lt;br /&gt;
 &lt;br /&gt;
Good luck!&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* The dd_generator script has generated four files in the same directory (/home/$USER/fulv):&lt;br /&gt;
&lt;br /&gt;
# fstodd4p_trial.inp  &lt;br /&gt;
# fstodd4p_trial.job  &lt;br /&gt;
# fstodd4p_trial.txt  &lt;br /&gt;
# fstodd_none.op&lt;br /&gt;
&lt;br /&gt;
(Link to a more detailed explanation of this files)&lt;br /&gt;
&lt;br /&gt;
* The script has also created some files and directories in /work/$USER/fulv where the MCTDH (DD-vMCG) and GAUSSIAN calculations will be stored:&lt;br /&gt;
&lt;br /&gt;
1) Directories:&lt;br /&gt;
&lt;br /&gt;
* fstodd4p_trial&lt;br /&gt;
* fstodd4p_trial/dd_data&lt;br /&gt;
&lt;br /&gt;
2) Files (in fstodd4o_trial/dd_data):&lt;br /&gt;
&lt;br /&gt;
# refdb.dat &lt;br /&gt;
# start.chk  &lt;br /&gt;
# template.dat&lt;br /&gt;
# forward.dat&lt;br /&gt;
# backward.dat&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Modifications to be made to the files before running the dynamics&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* In the .job file in /home/$USER/buta specify the memory and walltime if you are in the HPC Cluster.&lt;br /&gt;
&lt;br /&gt;
* When running a development version of GAUSSIAN (gdvg03 or gdvg01), copy the start.chk file into the folder /work/$USER/dyn_90dev/but1dd1p_trial/dd_data. The unformatted checkpoint file from start.fchk that dd_generator has created is corrupted (due to a bug in formchk in gdvg01).&lt;br /&gt;
has this been fixed?&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Running the dynamics&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* Navigate to /home/$USER/buta. Queue the job file. In this case, type:&lt;br /&gt;
&lt;br /&gt;
     qsub butadd1p_trial.job&lt;br /&gt;
&lt;br /&gt;
for MAC OS X users the shell command is already written in butadd1p_trial.job&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;The Database (DB)&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
The DB is made of four binary files:&lt;br /&gt;
geo.db&lt;br /&gt;
pes.db&lt;br /&gt;
gra.db&lt;br /&gt;
hes.db&lt;br /&gt;
They can be used in place of GAUSSIAN calculations to save some&lt;br /&gt;
computation time when you ask for DBrd or DBrdwr.&lt;br /&gt;
&lt;br /&gt;
Each set of geometry, energy, gradient and Hessian (the latter&lt;br /&gt;
three quantities having been calculated by GAUSSIAN for the two&lt;br /&gt;
adiabatic electronic states) will be called a DB record and&lt;br /&gt;
assigned a record number defining the order of occurrence in the DB.&lt;br /&gt;
If you run a calculation where the DB is to be read, in the *.res&lt;br /&gt;
file that you obtain after the calculation is done (file that&lt;br /&gt;
actually is a redirection of the standard output) you will see the&lt;br /&gt;
number of records in the DB as it grows.&lt;br /&gt;
Example (formaldehyde, multi-set 1+1):&lt;br /&gt;
          53&lt;br /&gt;
 s=  1 e=  1 t=   0.000 V1=   0.001 V2=   4.533 H11=   0.001 H22=&lt;br /&gt;
 4.533 H12=   0.000 q=   0.0000    0.0000    0.0000    0.0000&lt;br /&gt;
 0.0000    0.0000&lt;br /&gt;
          53&lt;br /&gt;
 s=  2 e=  1 t=   0.000 V1=   0.001 V2=   4.533 H11=   0.001 H22=&lt;br /&gt;
 4.533 H12=   0.000 q=   0.0000    0.0000    0.0000    0.0000&lt;br /&gt;
 0.0000    0.0000&lt;br /&gt;
          53&lt;br /&gt;
 s=  1 e=  1 t=   0.500 V1=   0.197 V2=   4.701 H11=   0.211 H22=&lt;br /&gt;
 4.687 H12=   0.251 q=  -0.6258   -0.6146    0.6136    0.6049&lt;br /&gt;
 -0.5520   -0.0616&lt;br /&gt;
          53&lt;br /&gt;
 s=  2 e=  1 t=   0.500 V1=   0.000 V2=   4.533 H11=   0.000 H22=&lt;br /&gt;
 4.533 H12=  -0.001 q=   0.0009    0.0009    0.0093   -0.0245&lt;br /&gt;
 -0.0066    0.0001&lt;br /&gt;
          53&lt;br /&gt;
 &lt;br /&gt;
 ERROR in subroutine Distdb :&lt;br /&gt;
 Redundant records in Data Base:   18   19&lt;br /&gt;
 s=  1 e=  1 t=   1.000 V1=   0.469 V2=   4.455 H11=   0.479 H22=&lt;br /&gt;
 4.445 H12=   0.200 q=  -0.4640   -0.5641    1.2594   -0.5871&lt;br /&gt;
 -1.0864   -0.1120&lt;br /&gt;
          53&lt;br /&gt;
 s=  2 e=  1 t=   1.000 V1=   0.001 V2=   4.473 H11=   0.001 H22=&lt;br /&gt;
 4.473 H12=  -0.002 q=   0.0003    0.0004    0.0404   -0.0944&lt;br /&gt;
 -0.0292    0.0001&lt;br /&gt;
          53&lt;br /&gt;
 s=  1 e=  1 t=   1.500 V1=   0.113 V2=   4.543 H11=   0.120 H22=&lt;br /&gt;
 4.536 H12=   0.170 q=  -0.3994   -0.4377    0.5444    0.2057&lt;br /&gt;
 -0.5149   -0.0638&lt;br /&gt;
          53&lt;br /&gt;
 s=  2 e=  1 t=   1.500 V1=   0.013 V2=   4.390 H11=   0.013 H22=&lt;br /&gt;
 4.390 H12=  -0.005 q=   0.0009    0.0010    0.0897   -0.2104&lt;br /&gt;
 -0.0634    0.0002&lt;br /&gt;
          53&lt;br /&gt;
 s=  1 e=  1 t=   2.000 V1=   0.068 V2=   4.431 H11=   0.071 H22=&lt;br /&gt;
 4.428 H12=   0.110 q=  -0.2751   -0.3274    0.4796   -0.0812&lt;br /&gt;
 -0.3880   -0.0605&lt;br /&gt;
          54&lt;br /&gt;
 s=  2 e=  1 t=   2.000 V1=   0.019 V2=   4.367 H11=   0.019 H22=&lt;br /&gt;
 4.367 H12=  -0.009 q=   0.0012    0.0013    0.1563   -0.3658&lt;br /&gt;
 -0.1058    0.0003&lt;br /&gt;
          54&lt;br /&gt;
 s=  1 e=  1 t=   2.500 V1=   0.064 V2=   4.273 H11=   0.065 H22=&lt;br /&gt;
 4.272 H12=  -0.064 q=   0.2559    0.0914    0.1691   -0.7218&lt;br /&gt;
 -0.1052   -0.0595&lt;br /&gt;
          55&lt;br /&gt;
 s=  2 e=  1 t=   2.500 V1=   0.070 V2=   4.258 H11=   0.070 H22=&lt;br /&gt;
 4.257 H12=  -0.013 q=   0.0013    0.0015    0.2384   -0.5572&lt;br /&gt;
 -0.1528    0.0004&lt;br /&gt;
&lt;br /&gt;
Here, we started with a DB of 53 records. It is large enough until&lt;br /&gt;
2 fs, where an additional record is produced, and so on.&lt;br /&gt;
The error message saying here that records 18 and 19 are identical&lt;br /&gt;
will not prevent the code from working. It is just here to remind you&lt;br /&gt;
that the DB is not clean in that it has redundant records.&lt;br /&gt;
This is to be prevented as the DB files might become large quite&lt;br /&gt;
rapidly and all records will be read at each update time (dd_update&lt;br /&gt;
= tout in the integrator section, tout = xxx fs in the run section&lt;br /&gt;
of the *.inp file) for each Gaussian function.&lt;br /&gt;
&lt;br /&gt;
Incidentally, when you want to analyse results written to a *.res&lt;br /&gt;
file, you need to look for lines starting with &amp;quot;s=&amp;quot; (other lines&lt;br /&gt;
are various messages and numbers of DB records).&lt;br /&gt;
The criterion for using the DB is to be seen as a maximum-allowed&lt;br /&gt;
relative difference&lt;br /&gt;
&lt;br /&gt;
So, it is up to you to clean the DB when you see this, and to keep&lt;br /&gt;
this in mind when you concatenate DBs that have branched in their&lt;br /&gt;
past (see more details below).&lt;br /&gt;
&lt;br /&gt;
Also, a given DB depends on the choice of a reference geometry in&lt;br /&gt;
Cartesian coordinates because geometries written to the DB files&lt;br /&gt;
will always be re-orientated with respect to this particular&lt;br /&gt;
geometry. The back and forth transformations are performed by MCTDH (DD-vMCG)&lt;br /&gt;
so you don&#039;t need not worry about this.&lt;br /&gt;
This geometry is written to refdb.dat. It is the starting geometry&lt;br /&gt;
that comes from start.log (the only difference being that it is&lt;br /&gt;
mass-centred).&lt;br /&gt;
As long as you do not change the starting geometry or the nature&lt;br /&gt;
of the electronic states, you can thus keep growing the DB of your&lt;br /&gt;
system.&lt;br /&gt;
&lt;br /&gt;
MANAGING THE DATA BASE&lt;br /&gt;
&lt;br /&gt;
A set of DB  programs can be found in XXXXX. Their roles are&lt;br /&gt;
explained below.&lt;br /&gt;
For now, the sources are in dd_utildev and dd_util.31dv and the&lt;br /&gt;
executables are in mctdh90dev/bin and mctdh90.31dv/bin, so you can&lt;br /&gt;
call them from anywhere, as long as DB files are there.&lt;br /&gt;
&lt;br /&gt;
1) countdb.out: returns the number of records of the current DB&lt;br /&gt;
2) cleandb.out: &amp;quot;brute-force&amp;quot; cleaning of the current DB. This&lt;br /&gt;
might be too long to be run interactively when the number of&lt;br /&gt;
records is too large, because each record needs to be compared to&lt;br /&gt;
each other record (e.g. a DB with ca. 3800 records will take a couple of minutes to clean interactively). If so, run in batch mode (ask me or Marta if you&lt;br /&gt;
have a doubt).&lt;br /&gt;
The cleaned files are:&lt;br /&gt;
geoclean.db&lt;br /&gt;
pesclean.db&lt;br /&gt;
graclean.db&lt;br /&gt;
hesclean.db&lt;br /&gt;
You need to rename them without &#039;clean&#039; for them to be used as a DB.&lt;br /&gt;
3) cutdb.out: allows you to cut out the beginning of a DB.&lt;br /&gt;
This is to be used in the following situation:&lt;br /&gt;
- You start from a mother DB, DB0, assumed to be clean, with N0&lt;br /&gt;
records.&lt;br /&gt;
- You want to use DB0 in two independent calculations. You&lt;br /&gt;
replicate DB0 to daughter DBs, DB1 and DB2.&lt;br /&gt;
- When these calculations are done, DB1 and DB2 have grown to N0+N1&lt;br /&gt;
and N0+N2 records, respectively.&lt;br /&gt;
- You want to concatenate them to create a new mother DB, DB3.&lt;br /&gt;
- DB1 and DB2 have their N0 first records the same. To avoid&lt;br /&gt;
redundant records, you need to cut N0 records from DB2 for example.&lt;br /&gt;
--&amp;gt; go to where DB2 is and use cleandb.out&lt;br /&gt;
The resulting files are:&lt;br /&gt;
geocut.db&lt;br /&gt;
pescut.db&lt;br /&gt;
gracut.db&lt;br /&gt;
hescut.db&lt;br /&gt;
these have N1 records.&lt;br /&gt;
--&amp;gt; rename DB1, for instance geo.db1 etc., and concatenate the files:&lt;br /&gt;
cat geo.db1 geoclean.db &amp;gt; geo.db&lt;br /&gt;
etc.&lt;br /&gt;
- Your new mother DB, DB3, should now have N0+N1+N2 distinct records.&lt;br /&gt;
4) deldb.out: allows you to remove one selected record (for&lt;br /&gt;
instance if corrupted) from the DB if you know its number.&lt;br /&gt;
The resulting files are:&lt;br /&gt;
geodel.db&lt;br /&gt;
pesdel.db&lt;br /&gt;
gradel.db&lt;br /&gt;
hesdel.db&lt;br /&gt;
You need to rename them without &#039;del&#039; for them to be used as a DB.&lt;br /&gt;
5) seedb.out: allows you extract one selected record from the&lt;br /&gt;
binary files for reading it (the record is not removed from the DB).&lt;br /&gt;
The resulting file can be read as a text file (ascii) and is:&lt;br /&gt;
see.db&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Restarting dynamics jobs&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
The examples below make use of the directory and filenames in the examples above.&lt;br /&gt;
&lt;br /&gt;
A dynamics run can be restarted if the job was terminated before completion (e.g if it ran out of time or failed because of convergence problems) or if the user wishes to continue the job for a longer time period than had originally been specified. The program will continue writing the same output file but will overwrite the .res file. Thus the .res file should be saved under a different name to prevent loss of the data calculated in the original run. The .res is not written until the job stops so this can be done after the restart.&lt;br /&gt;
&lt;br /&gt;
*To increase the final propagation time&lt;br /&gt;
&lt;br /&gt;
Retrieve the .inp file (in $HOME/buta) and change &#039;&#039;propagation&#039;&#039; to &#039;&#039;continuation&#039;&#039; in the section entitled RUN-SECTION. Then change the final time &#039;&#039;tfinal&#039;&#039; to a larger value. (NB this new value should include the time already done).&lt;br /&gt;
&lt;br /&gt;
Re-queue the job.&lt;br /&gt;
&lt;br /&gt;
*To increase the number of scf cycles (the most common reason for convergence failure)&lt;br /&gt;
&lt;br /&gt;
Edit the template.dat file in $WORK/buta/but1dd1p_trial/dd_data. Insert scf=(maxcycle=128) on the keyword line (for example). It is important that you change the template.dat file in the but1dd1p_trial/dd_data folder that was created by dd_generator (rather than the one created by the user in $WORK/buta/dd_data) because the original $WORK/buta/dd_data/template.dat file is only read by dd_generator and used to create the job-specific file in the job folder. (Of course if you wish all future jobs run in $WORK/buta  to have increased scf cycles, change the other template.dat file in $WORK/buta/dd_data too.)&lt;br /&gt;
&lt;br /&gt;
Re-queue the job.&lt;br /&gt;
&lt;br /&gt;
*To increase the run-time so that a job will finish&lt;br /&gt;
&lt;br /&gt;
Edit the walltime in the .job file in the $HOME directory and re-queue the job.&lt;br /&gt;
&lt;br /&gt;
=&#039;&#039;&#039;Analysis of the results&#039;&#039;&#039;=&lt;br /&gt;
&lt;br /&gt;
The most important files are the output and .res files.&lt;br /&gt;
&lt;br /&gt;
=== Detailed information about files and directories ===&lt;br /&gt;
&lt;br /&gt;
*output&lt;br /&gt;
&lt;br /&gt;
The output contains some standard results:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Time&#039;&#039;&#039;: time in fs.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;CPU&#039;&#039;&#039;:  CPU time in s.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Norm&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;E-tot&#039;&#039;&#039;: the total energy in eV. This value should be conserved (i.e by the end of the run the E-tot value should not be too different  from what it was a time=0).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;E-corr&#039;&#039;&#039;: correlated Hamiltonian energy&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Delta-E&#039;&#039;&#039;: diference between E-tot at time t=0 and the current time t&lt;br /&gt;
&lt;br /&gt;
Note: In a multi-packet run, i.e. when npacket &amp;gt; 1, the total energy and the norm of the wavefunction, as given in the &amp;quot;total&amp;quot; part, are averaged over the packets.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;population&#039;&#039;&#039; : diabatic populations of state 1 and state 2 (in that order) at the current time t&lt;br /&gt;
&lt;br /&gt;
For every mode:	&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt; q &amp;gt;&#039;&#039;&#039;: position expectation value&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;dq&amp;gt;&#039;&#039;&#039;: standard deviation Sqrt[&amp;lt; q&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt; &amp;gt; - &amp;lt; q &amp;gt;&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt; p &amp;gt;&#039;&#039;&#039; : momentum expectation value&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;dq&amp;gt;&#039;&#039;&#039;: standard deviation Sqrt[&amp;lt; p&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt; &amp;gt; - &amp;lt; p &amp;gt;&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*.res&lt;br /&gt;
&lt;br /&gt;
This file contains the energy of each state (diabatic and adiabatic) at each timestep for each gaussian function:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;s&#039;&#039;&#039; is a redundant value in mctdh90.31dv. It is only meaningful in multi-set implementations of mctdh (where there are double the number of gaussian functions than specified: one for each state). (It indicates whether the gaussian function in question is on the lower (1) or upper (2) state. (In the single set implementation, the gaussian functions on each state are identical)).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;e&#039;&#039;&#039; is a label given to each gaussian function&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;t&#039;&#039;&#039; is the current time in fs&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;V1&#039;&#039;&#039; is the energy of the lower adiabatic state at time t&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;V2&#039;&#039;&#039; is the energy of the upper adiabatic state at time t&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;H11&#039;&#039;&#039; is the energy of the lower diabatic state at time t&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;H22&#039;&#039;&#039; is the energy of the upper diabatic state at time t&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;H12&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;q&#039;&#039;&#039; is the list of frequency mass-weighted normal coordinates that describe the geometry at time t&lt;br /&gt;
&lt;br /&gt;
The end of the file will read something like: &lt;br /&gt;
&lt;br /&gt;
     Propagation was successful.&lt;br /&gt;
     &lt;br /&gt;
     Total time     [h:m:s] :    0 :  1 : 21.60&lt;br /&gt;
     &lt;br /&gt;
      ---------------------------------------------------------------------------&lt;br /&gt;
      ------ Host: &amp;quot;cx1-3-2-4&amp;quot; ----------Sat Jan 17 06:50:20 2009&lt;br /&gt;
&lt;br /&gt;
The other most common result is that the calculation aborted because of scf convergence problems in the CASSCF GAUSSIAN calculations. In this case the ouput file will break off after the last complete step and the end of the .res file will read something like:&lt;br /&gt;
     ERROR in subroutine Getddpes :&lt;br /&gt;
     CAS convergence failed for gwp on state:    1    1&lt;br /&gt;
&lt;br /&gt;
If the job terminates due to scf convergence problems, it may be possible to restart it after modifying the .inp and/or .job and/or template.dat files.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*log&lt;br /&gt;
&lt;br /&gt;
This file contains information such as the source code version, type of calculation performed, integrator used, numerical parameters, which data files are opened, any error messages, and much more. The information provided by the log file can be very helpful, in particular when searching for errors. One should always carefully inspect the log file.&lt;br /&gt;
&lt;br /&gt;
* dvr&lt;br /&gt;
&lt;br /&gt;
* oper&lt;br /&gt;
&lt;br /&gt;
*ddpeserr&lt;br /&gt;
&lt;br /&gt;
*input&lt;br /&gt;
&lt;br /&gt;
*op.log&lt;br /&gt;
&lt;br /&gt;
*psi&lt;br /&gt;
&lt;br /&gt;
*check&lt;br /&gt;
&lt;br /&gt;
*auto&lt;br /&gt;
&lt;br /&gt;
*ddpes&lt;br /&gt;
&lt;br /&gt;
*restart&lt;br /&gt;
&lt;br /&gt;
*stop&lt;br /&gt;
&lt;br /&gt;
*speed&lt;br /&gt;
&lt;br /&gt;
*timing&lt;br /&gt;
&lt;br /&gt;
*update&lt;br /&gt;
&lt;br /&gt;
=== Example: butadiene ===&lt;br /&gt;
&lt;br /&gt;
*Examine the end of the output file to check that the calculation ran to completion.&lt;br /&gt;
     &lt;br /&gt;
*Plot the energy of the diabatic and adiabatic states over time (.res file: V1, V2, H11 and H22). Calculate V2-V1 and H22-H11 and plot these also. H12 may also be plotted on the same graph.&lt;br /&gt;
[[Image:EnergyofStates.png]]&lt;br /&gt;
&lt;br /&gt;
The diabatic states cross at 176.2 fs and the adiabatic states cross at 174.5 fs. At a conical intersection, the value V2-V1 will become negative and the H22-H11 will be a minimum (&amp;lt;1eV). Ideally these crossings will occur at the same time. If the diabatisation has worked well, after V2-V1 becomes negative, V2-V1 and H22-H11 will become mirror images (i.e. the diabatic and adiabatic states follow each other). &lt;br /&gt;
&lt;br /&gt;
*Plot the value of the total energy over time (.res file: E-tot). Verify that the Delta-E value is not too large (compare with the total energy (E-tot) at time 0).&lt;br /&gt;
[[Image:TotalEnergy.png]]&lt;br /&gt;
&lt;br /&gt;
*Plot the population of one of the (diabatic) states over time (.res file: population).&lt;br /&gt;
[[Image:Population.png]]&lt;br /&gt;
&lt;br /&gt;
At the conical intersection the population transfer is large. In this case the job has been terminated after 200 fs. Usually the calculation should be continued until the populations stabilise (which obviously has not happened in this case).&lt;br /&gt;
&lt;br /&gt;
=== Making a Movie ===&lt;br /&gt;
&lt;br /&gt;
Navigate to /work/$USER/buta/but1dd1p_trial (the place where the .res file was written). Type:&lt;br /&gt;
 dd_movie.out&lt;br /&gt;
* The script will ask a series of questions and will use the answers provided to create a file that can be read into Molden or iMol.&lt;br /&gt;
&lt;br /&gt;
==== List of questions asked by dd_movie.out====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;blockquote style=&amp;quot;background: white; border: 1px solid black; padding: 1em;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Question&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; &#039;&#039;&#039;Answer for this tutorial&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; &#039;&#039;&#039;Explanation&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the number of atoms?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 10 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the actual number of active coordinates?&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 24 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; In this case all coordinates were active (so there are 3N-6 where N is the number of atoms) &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Name of result file to read?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; but1dd1p_trial.res &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;Ensure that the forward.dat and backward.dat files are located in the current directory in the folder dd_data (they will have been written there automatically)&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Name of movie file to write?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; but1dd1p_trial.xyz &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; Choose any name .xyz &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Which electronic state (s=...)?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 1 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;Choose 1 (this question dates from the multi-set implementation of mctdh where the wavepackets on each state were different)  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Which Gaussian function (e=...)?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 1 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;In this case we have only one wavepacket&amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;The script will now return the number of lines and the initial number of points&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
number of lines:        4684&lt;br /&gt;
initial number of points:        4674&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Maximum number of points you want?&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 4674 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;If you wish to view the movie in Molden you must reduce the number of points to less than 100 (so choose 99 for maximum number of points). iMol can cope with any number of frames so choose the number printed by the script: this number will be reduced and the script will tell you how many points it has written. &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
writing frequency:           2&lt;br /&gt;
   final number of points:        2337&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The .xyz file is ready to be opened in Molden or iMol.&lt;br /&gt;
&lt;br /&gt;
= &#039;&#039;&#039;Current Known Bugs&#039;&#039;&#039; =&lt;br /&gt;
&lt;br /&gt;
Parallelisation:&lt;br /&gt;
&lt;br /&gt;
It is not possible to run calculations in parallel with version 90.31dv (reading the same template.dat file simultaneously by each processor is causing problems). In 90.35tmp this is ok. In 90.4X it will also be fixed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Total energy:&lt;br /&gt;
&lt;br /&gt;
1) The total energy is sometimes &amp;quot;artificially&amp;quot; increased by a lot. If so, try a different integrator or play around with the timestep (may need to get larger or smaller). Or try increasing scf convergence to 10&amp;lt;sup&amp;gt;-12&amp;lt;/sup&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
2) If Delta-E suddenly becomes too large, you can get the following message: &lt;br /&gt;
&amp;quot;ERROR in subroutine WRGAUSSIAN :&lt;br /&gt;
 Do not use $Swap:...$ metastring in file /.../template.dat&amp;quot;&lt;br /&gt;
Often, when getting this message, no more steps are added to the simulation, although the calculation seems to keep running (the integrator keeps trying and failing).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Using the database:&lt;br /&gt;
&lt;br /&gt;
1) Every record generated with mctdh90.31dev and several GWPs is corrupted, so, for now, when launching calculations with more that one wavepacket, use &amp;quot;formdd_none.op&amp;quot; (i.e. do not read nor write the database).&lt;br /&gt;
[For instance, when using dbrdwr and starting from a clean db, all newly generated records are added to the existing database, even if they are identical to records that were already written in the db.]  In 90.35tmp this is ok. In 90.4X it will also be fixed.&lt;br /&gt;
&lt;br /&gt;
2) Records obtained in calculations with one GWP should be OK, but this is still to be confirmed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Impossible case&amp;quot;:&lt;br /&gt;
&lt;br /&gt;
Error message that forces the calculation to stop. It seems to be associated with moving towards an &amp;quot;unexpected&amp;quot; geometry (e.g. a radical).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
State Averaging:&lt;br /&gt;
&lt;br /&gt;
To increase the threshold above which stateaveraging is turned off, increase the default value of 10 (to e.g. 50)  in the line &#039;&#039;ddregions&#039;&#039; in the OPERATOR-SECTION of the .inp file.&lt;br /&gt;
&lt;br /&gt;
= &#039;&#039;&#039;Questions and Modifications to be made to this wiki&#039;&#039;&#039; =&lt;br /&gt;
&lt;br /&gt;
*Why we would ever need to start the gwps from the lower state? To study GS rxns; chemiluminesence (eg glowworms).&lt;br /&gt;
*In terms of Delta-E, how much is too much? ca1eV but shape of E-tot vs time is important: discontiunities or v flat then steep increase are less reliable than smooth gradual increases.&lt;br /&gt;
*Benjamin: Note that Marta has noticed that for very strange geometries, you may receive an error message saying &amp;quot;impossible case&amp;quot;, which stops MCTDH. It is too complicated to explain here. I know where this happens in the code, and I should prevent this error to stop the code but I didn&#039;t have time to fix this. I&#039;ll do it soon.&lt;br /&gt;
*Need to edit/correct section on the DB.&lt;br /&gt;
*Is does unfchk in gdvg03 create corrupted fchk files? G03 is fine. we don&#039;t know about gdvg03 but we don&#039;t care because we probablly won&#039;t use it.&lt;br /&gt;
&lt;br /&gt;
=== [[Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial|back]] ===&lt;/div&gt;</summary>
		<author><name>Vs13</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/run&amp;diff=333948</id>
		<title>Resgrp:comp-photo-dyn/mctdh90.56dv Fulvene Tutorial/run</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/run&amp;diff=333948"/>
		<updated>2013-04-29T10:48:26Z</updated>

		<summary type="html">&lt;p&gt;Vs13: /* Files created by the generator */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= &#039;&#039;&#039;Basic use of the MCTDH (DD-vMCG) package&#039;&#039;&#039; =&lt;br /&gt;
&lt;br /&gt;
A script called dd_generator uses GAUSSIAN output files and user input to write the input files for mctdh (DD-vMCG).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Notes&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;The number of gaussian wavepackets (requested by the dd_generator script)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
When studying a new system, start with one (to keep calculation times short). When an appropriate momentum, time period, time step and integrator have been established, increase the number of wavepackets until the results are not changed by adding more. Calculation times are proportional to the number of wavepackets. To ensure efficient use of computing resources, always specify an even number of wavepackets if using more than one processor (since the number of processors can only be an even number: currently 2, 4 or 8).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;The database&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The most time-consuming part of a dynamics run is the GAUSSIAN CASSCF calculations. The results of these calculations can be stored in a database and re-used in future runs. The user must choose whether or not to read and/or write a database. Each calculation will write a separate database so the databases from each run must be combined (and any duplicate entries removed (to save space)).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Initial momentum&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
An initial momentum can be specified to direct the wavepacket to a particular area of the PES (e.g. towards a conical intersection, a transition state or minimum geometry). The momentum is given as a geometry (in frequency mass weighted normal coordinates). The dd_rotation program used for rotation of the conical intersection can be used to transform the coordinates of the desired geometry. If the user requests an initial momentum, dd_generator will search for a file called momentum.dat. If this file is found, dd_generator will ask if the user wishes to use the momentum specified in it. The user can then specify how much energy to give (in eV). Thus, the values in momentum.dat need only be relative values (since they will be multiplied by a scaling factor to provide the total number of eV requested). If there is no file called momentum.dat in the appropriate folder, the user will not be asked to specify a total number of eV to give to the wavepacket(s). A momentum can still be added by manually modifying the .inp file after the dd_generator script has been run (replace the zero values in the fifth column of the section of the .inp file entitled INIT_WF-SECTION). However, it is simpler to create the momentum.dat file mainly because if the user edits the .inp file directly, there is no way of knowing what the total excess energy will be: the values listed in .inp also incorporate magnitude (not just relative values as in momentum.dat). &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Memory and number of processors&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
In template.dat, the memory for each GAUSSIAN CASSCF calculation is specified. In the .job file (created by dd_generator from user input) the total memory is specified. Thus, the memory specified in .job must be at least as great as the memory given in template.dat multiplied by the number of processors.&lt;br /&gt;
&lt;br /&gt;
The GAUSSIAN calculations for each wavepacket will run on a single processor. If the user specifies more than one processor then the calculations for each wavepacket can run simultaneously. To ensure efficient use of computing resources, always specify an even number of wavepackets when using more than one processor (since the number of processors can only be an even number: currently 2, 4 or 8).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Symmetry Considerations&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The way the diabatisation is performed in mctdh90.31dv sometimes leads to complications involving symmetry.  The diabatic states are defined using the conical intersection (or other geometry) described in coin.log. If the molecule is highly symmetric, there will be more than one conical intersection (all identical by symmetry). If the wavepacket moves close to one of the other conical intersections that is not described in coin.log, the diabatic states may not be properly described in this area of the PES. This of course means that the behaviour of the wavepacket(s) is likely to be described poorly also.&lt;br /&gt;
&lt;br /&gt;
If the conical intersection has lower symmetry than the starting material, the symmetry must necessarily be broken during the dynamics calculation before the conical intersection is reached. The breaking of each mode will occur either due to the accumulation of small numerical inaccuracies or if a momentum is given which forces particular modes to break symmetry.&lt;br /&gt;
Mctdh90.31dv uses frequency-mass-weighted normal coordinates to describe molecular geometries. Each frequency-mass-weighted coordinate corresponds to a vibration of the molecule (and there are therefore 3N-6 coordinates). Displacements of atoms are described by a (or a combination of) vibration(s). Each vibration can be displaced in one of two directions: positive or negative. The 3N-6 frequency-mass-weighted coordinates can be classified by symmetry. Whether a particular symmetry mode is broken in the positive or negative direction will be equally likely if no initial momentum is given. Thus for each mode that is broken during a simulation the symmetry may break in the positive direction or the negative direction. There will be 2&amp;lt;sup&amp;gt;x&amp;lt;/sup&amp;gt; possible conical intersections corresponding to a particular starting geometry, where x is the number of modes that must be broken going from starting material to conical intersection.&lt;br /&gt;
&lt;br /&gt;
Additionally, care must be taken over atom labeling. It must be possible to transform the starting material into the conical intersection without permuting atom labels. If the conical intersection has been optimised by following the MEP downhill from the starting material this is not likely to be a problem. However, bear this in mind if drawing the conical intersection by hand.  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Creating the Directories&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* First of all, create a folder in which to save the calculations in your $HOME and $WORK directories. Create a directory in $HOME, and an identical directory in $WORK that has the same path. Keep pathlengths as short as possible (if the total path becomes too long the dynamics code will not run). For simplicity, in this case, we are going to assume that this directory is named &#039;&#039;fulv&#039;&#039; (for fulvene).&lt;br /&gt;
&lt;br /&gt;
     mkdir fulv&lt;br /&gt;
&lt;br /&gt;
* Create a subdirectory called &#039;&#039;&#039;dd_data&#039;&#039;&#039; in the new directory in $WORK.  Thus you should start with:&lt;br /&gt;
&lt;br /&gt;
    /home/$USER/fulv&lt;br /&gt;
    /work/$USER/fulv/dd_data&lt;br /&gt;
&lt;br /&gt;
* Important Note: it is essential to have the same path in both directories, $HOME and $WORK. Do not change the path-names within the HOME/WORK directories. If you re-name or move any subdirectory in your, for example HOME directory, you have to be consistent and make the same changes in the $WORK directory.&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Gaussian Output to be Used as Input for the Dynamics Program&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* Populate the new directory /work/$USER/buta/dd_data with four files which must be named: &#039;&#039;&#039;coin.log&#039;&#039;&#039;; &#039;&#039;&#039;start.fchk&#039;&#039;&#039;; &#039;&#039;&#039;start.log&#039;&#039;&#039;; and &#039;&#039;&#039;template.dat&#039;&#039;&#039;.These files are required in order to run any dynamics simulation, they are the basis that the script dd_generator (see the following section) will use to create the necessary files for running MCTDH (DD-vMCG).  You may also create a file named &amp;quot;&#039;momentum.dat&amp;quot;&#039; if you wish to give a momentum to the wavepacket(s) (this is optional and may be created later instead). &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;coin.log&#039;&#039;&#039; is the logfile resulting from the optimisation of the conical intersection. NB The MCTDH (DD-vMCG) program will rotate the conical intersection before starting the dynamics. To do this it must be provided with three angles which describe the appropriate rotation. There is an Excel spreadsheet available to calculate these angles (see the section entitled &amp;quot;Rotating the Conical Intersection&amp;quot;). NB the structure in coin.log need not necessarily be a true conical intersection: this point is only used for performing the diabatisation. Thus the diabatisation will be exact at this point and will become more approximate the further you are from it (on the PES). If you wish to use a point that is not a conical intersection, simply run a conical intersection optimisation (with only a single step) on the desired geometry. This will create a file with the same layout as a conical intersection optimisation output file (mctdh looks for certain things in this file so if some other type of .log file were used instead, it might not contain the required information). NB the final conical intersection log file must only contain one geometry (otherwise the dynamics program will not know which geometry to use). IS THIS STATEMENT TRUE FOR THIS VERSION??&lt;br /&gt;
&lt;br /&gt;
[[Media:Coin.log]]&lt;br /&gt;
&lt;br /&gt;
(Insert a link here to section &amp;quot;Rotating the Conical Intersection&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;start.chk&#039;&#039;&#039; is the checkpoint file from the high precision vibrational modes of the ground state with state averaged orbitals (with atom types rather than numbers)&lt;br /&gt;
[[Media:Start.chk]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;start.log&#039;&#039;&#039; is the log file from the high precision vibrational modes of the ground state with state averaged orbitals (with atom types rather than numbers)&lt;br /&gt;
&lt;br /&gt;
[[Media:Start.log]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;template.dat&#039;&#039;&#039; is a template for the creation of GAUSSIAN input files by the MCTDH (DD-vMCG) program. It contains all the mutual keywords of the GAUSSIAN calculations which will be run on-the-fly by MCTDH (DD-vMCG). It also contains other information relating to the GAUSSIAN calculations such as memory requirements.&lt;br /&gt;
 &lt;br /&gt;
[[Media:Template.dat]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;momentum.dat&#039;&#039;&#039; is a file containing a list of values to be used as vectors to indicate the momentum to be given to a particular (set of) wavepacket(s). The vectors must be listed in the order of the frequency-mass-weighted normal coordinates specified in the coin.out file (i.e. the output file from dd_rotation program). They give the magnitude of the momentum to be given along each of these frequency-mass-weighted normal coordinates. N.B. The signs of the values here are important!&lt;br /&gt;
We are not giving a momentum in this simulation.&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;The Generator&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* The &amp;quot;generator&amp;quot; script uses the GAUSSIAN output files (above) along with other information supplied by the user to create input files for MCTDH (DD-vMCG).&lt;br /&gt;
&lt;br /&gt;
* Navigate to /home/$USER/fulv and run the generator by typing:&lt;br /&gt;
&lt;br /&gt;
     dd_generator&lt;br /&gt;
&lt;br /&gt;
for the HPC Cluster, or &lt;br /&gt;
&lt;br /&gt;
     dd_generator_MAC&lt;br /&gt;
&lt;br /&gt;
for a MAC OS X system&lt;br /&gt;
&lt;br /&gt;
* Typing dd_generator will run the script automatically. After installing the MCTDH (DD-vMCG) package this command has been added to your list of executable commands. &lt;br /&gt;
&lt;br /&gt;
     ********************************************************************************&lt;br /&gt;
     ********************    -------  DD GENERATOR  --------    *****************&lt;br /&gt;
     ********************************************************************************&lt;br /&gt;
&lt;br /&gt;
* The generator will ask a series of questions and will use the answers provided to prepare the input files for the dynamics program. The questions it asks are listed below along with answers for a trial run on butadiene.&lt;br /&gt;
&lt;br /&gt;
==== List of questions asked by dd_generator====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;blockquote style=&amp;quot;background: white; border: 1px solid black; padding: 1em;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Question&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; &#039;&#039;&#039;Answer for this tutorial&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; &#039;&#039;&#039;Explanation&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Which version of GAUSSIAN should we use? (gdvh01|g03)&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; gdvh01 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;How many shared-memory processors should we use? (1|2|4|8)&lt;br /&gt;
N.B.: (ncpus=1) serial or (ncpus=2|4|8) parallel (omp) version of MCTDH launched as batch job&lt;br /&gt;
and launching monoprocessor GAUSSIAN interactive jobs (nprocshared=1 or no specification)&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 4 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the name of the molecule?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; fulvene &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; The first four letters will be used to name the new files that the generator is creating &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the number of atoms?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 12 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;The number of nuclear degrees of freedom is 30.&lt;br /&gt;
Do you want to reduce the dimensionality? (y|n)&lt;br /&gt;
(N.B.: this can be used also for re-ordering the coordinates)&lt;br /&gt;
&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; n &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the number of nuclear Gaussian functions?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 4 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt; 4 means 4 gaussian on state 1 and 4 gaussian on state 2. This is the &amp;quot;single-set&amp;quot; implementation of MCTDH (DD-vMCG) therefore the gaussian wavepackets on state 1 are the same as the gaussian wavepackets on state 2.&amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;&#039;What is the final propagation time (in fs)?&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 150 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the propagation time step (in fs)?&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 0.1 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the number of electronic states? (1|2)&#039;&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 2 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the highest electronic root?&#039;&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 2 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;From which electronic state should the wavepacket start? (2|1)&#039;&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 2 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Will there be an initial momentum given to the wavepacket? (y|n)&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; n &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Do you want to add a reference label to the name of the case? (y|n)&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; y &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Please type your text:&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; trial &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;This question is only asked if the answer to the previous question was yes.  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What will be the status of the database? (rdwr|rd|wr|none)&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; none &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; Choose rd for read, wr for write etc. In this case we are not going to use the database, but if it was used (rd or rdwr is specified) the script would ask the user to specify the threshold below which the database values will be used (%). In this case the value none is chosen so this question is not asked.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;&amp;gt;&amp;gt; Manual rotation (using Excel spreadsheet) &amp;lt;&amp;lt;&lt;br /&gt;
   Please type the values of the three Euler angles (in deg)&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 0&lt;br /&gt;
0&lt;br /&gt;
0 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Tuple from the dd_rotation method (insert link)&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;The generator will now tell you that it has read the files start.chk from the folder /work/$USER/fulv/dd_data/ .&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Files created by the generator&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* The generator will now tell you that it has read the files start.log, coin.log and momentum.dat (if a momentum has been specified) from the folder /work/$USER/fulv/dd_data/:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
   about to read parameters...&lt;br /&gt;
   ... parameters just read&lt;br /&gt;
   about to read file /work/vs13/fulv/dd_data/start.log                   &lt;br /&gt;
                                                               ...&lt;br /&gt;
   ... file /work/vs13/fulv/dd_data/start.log                             &lt;br /&gt;
                                                      read successfully&lt;br /&gt;
   about to read file /work/vs13/fulv/dd_data/coin.log                    &lt;br /&gt;
                                                               ...&lt;br /&gt;
 *********************************************************&lt;br /&gt;
 Mass-weighted displacement from start to coin:&lt;br /&gt;
    old total norm: 22.070387&lt;br /&gt;
    new total norm:  4.669035&lt;br /&gt;
  vibrational part:  4.669035&lt;br /&gt;
   rotational part:  0.000000&lt;br /&gt;
 *********************************************************&lt;br /&gt;
   ... file /work/vs13/fulv/dd_data/coin.log                             &lt;br /&gt;
                                                      read successfully&lt;br /&gt;
&amp;lt;/pre&amp;gt; &lt;br /&gt;
&lt;br /&gt;
and that the extraction of data and the creation of a summary file were done successfully. If the Mass-weighted displacement from start to coin appears as NaN it may be because the start.log contains atom numbers rather than atom types. You will need to redo the freq=hpmodes job with atom types.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Data extracted successfully&lt;br /&gt;
The summary of this file generation is in:&lt;br /&gt;
-rw-r--r--  1 vs13 hpc-users 3070 Dec  2 17:06 /home/vs13/fulv/fstodd4o.txt&lt;br /&gt;
 &lt;br /&gt;
Do not forget you still can add a momentum, change the integrator,&lt;br /&gt;
change convergence criteria for GAUSSIAN and MCTDH...&lt;br /&gt;
 &lt;br /&gt;
Do not forget to check the order of the atoms of the conical intersection geometry&lt;br /&gt;
in /work/vs13/fulv/dd_data/coin.log&lt;br /&gt;
 &lt;br /&gt;
Now go to your jobscript file and give values to the memory and walltime.&lt;br /&gt;
 &lt;br /&gt;
Good luck!&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* The dd_generator script has generated four files in the same directory (/home/$USER/fulv):&lt;br /&gt;
&lt;br /&gt;
# fstodd4p_trial.inp  &lt;br /&gt;
# fstodd4p_trial.job  &lt;br /&gt;
# fstodd4p_trial.txt  &lt;br /&gt;
# fstodd_none.op&lt;br /&gt;
&lt;br /&gt;
(Link to a more detailed explanation of this files)&lt;br /&gt;
&lt;br /&gt;
* The script has also created some files and directories in /work/$USER/fulv where the MCTDH (DD-vMCG) and GAUSSIAN calculations will be stored:&lt;br /&gt;
&lt;br /&gt;
1) Directories:&lt;br /&gt;
&lt;br /&gt;
* fstodd4p_trial&lt;br /&gt;
* fstodd4p_trial/dd_data&lt;br /&gt;
&lt;br /&gt;
2) Files (in fstodd4o_trial/dd_data):&lt;br /&gt;
&lt;br /&gt;
# refdb.dat &lt;br /&gt;
# start.chk  &lt;br /&gt;
# template.dat&lt;br /&gt;
# forward.dat&lt;br /&gt;
# backward.dat&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Modifications to be made to the files before running the dynamics&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* In the .job file in /home/$USER/buta specify the memory and walltime if you are in the HPC Cluster.&lt;br /&gt;
&lt;br /&gt;
* When running a development version of GAUSSIAN (gdvg03 or gdvg01), copy the start.chk file into the folder /work/$USER/dyn_90dev/but1dd1p_trial/dd_data. The unformatted checkpoint file from start.fchk that dd_generator has created is corrupted (due to a bug in formchk in gdvg01).&lt;br /&gt;
has this been fixed?&lt;br /&gt;
&lt;br /&gt;
====Starting from a point other than the Franck-Condon point====&lt;br /&gt;
&lt;br /&gt;
When the molecule is highly symmetric and there is more than one equivalent conical intersection (see above) it may be necessary to direct the wavepacket towards the particular conical intersection described in coin.log. The easiest way to do this is to use an initial momentum but it can also be achieved by distorting the geometry of the starting structure slightly towards the conical intersection (i.e. breaking the symmetry in the appropriate direction(s)).&lt;br /&gt;
&lt;br /&gt;
Define the new starting geometry in frequency-mass-weighted normal coordinates (this can be done using the Excel spreadsheet). One option for selecting the new geometry is to use a fraction of the displacement from the FC point to the conical intersection. &lt;br /&gt;
&lt;br /&gt;
After running dd_generator in the normal way, replace the default FC geometry in the .inp file with the new geometry. This geometry (frequency-mass-weighted-coordinates of the centre of the wavepacket) forms the fourth column in the section entitled INIT_WF-SECTION (in .inp).&lt;br /&gt;
&lt;br /&gt;
If the new geometry is very different from the FC geometry, run a single-point state-averaged-CAS calculation (start from RHF, look at the MOs, alter if needed, and check the final active MOs) and call the resulting .chk file start.chk. Replace the start.chk that would have been used ($WORK/buta/but1dd1p_trial/dd_data/start.chk) with this new start.fchk. If the distorted geometry is close enough to the FC geometry it may not be necessary to generate a new start.chk. (When the distortion is large there is a risk of breaking the active space from FC to the new point. Creating a new start.chk is just a way of making sure the starting active space is OK at the new point.) If you are creating a new start.fchk, run the solver on that geometry (relative to the original starting geometry) in the Excel spreadsheet. Create the new start.chk using the geometry in the orange box (so that it is in the same orientation as the molecule in start.log).&lt;br /&gt;
&lt;br /&gt;
N.B. There is no need to replace start.log even when start.fchk is replaced.&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Running the dynamics&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* Navigate to /home/$USER/buta. Queue the job file. In this case, type:&lt;br /&gt;
&lt;br /&gt;
     qsub butadd1p_trial.job&lt;br /&gt;
&lt;br /&gt;
for MAC OS X users the shell command is already written in butadd1p_trial.job&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;The Database (DB)&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
The DB is made of four binary files:&lt;br /&gt;
geo.db&lt;br /&gt;
pes.db&lt;br /&gt;
gra.db&lt;br /&gt;
hes.db&lt;br /&gt;
They can be used in place of GAUSSIAN calculations to save some&lt;br /&gt;
computation time when you ask for DBrd or DBrdwr.&lt;br /&gt;
&lt;br /&gt;
Each set of geometry, energy, gradient and Hessian (the latter&lt;br /&gt;
three quantities having been calculated by GAUSSIAN for the two&lt;br /&gt;
adiabatic electronic states) will be called a DB record and&lt;br /&gt;
assigned a record number defining the order of occurrence in the DB.&lt;br /&gt;
If you run a calculation where the DB is to be read, in the *.res&lt;br /&gt;
file that you obtain after the calculation is done (file that&lt;br /&gt;
actually is a redirection of the standard output) you will see the&lt;br /&gt;
number of records in the DB as it grows.&lt;br /&gt;
Example (formaldehyde, multi-set 1+1):&lt;br /&gt;
          53&lt;br /&gt;
 s=  1 e=  1 t=   0.000 V1=   0.001 V2=   4.533 H11=   0.001 H22=&lt;br /&gt;
 4.533 H12=   0.000 q=   0.0000    0.0000    0.0000    0.0000&lt;br /&gt;
 0.0000    0.0000&lt;br /&gt;
          53&lt;br /&gt;
 s=  2 e=  1 t=   0.000 V1=   0.001 V2=   4.533 H11=   0.001 H22=&lt;br /&gt;
 4.533 H12=   0.000 q=   0.0000    0.0000    0.0000    0.0000&lt;br /&gt;
 0.0000    0.0000&lt;br /&gt;
          53&lt;br /&gt;
 s=  1 e=  1 t=   0.500 V1=   0.197 V2=   4.701 H11=   0.211 H22=&lt;br /&gt;
 4.687 H12=   0.251 q=  -0.6258   -0.6146    0.6136    0.6049&lt;br /&gt;
 -0.5520   -0.0616&lt;br /&gt;
          53&lt;br /&gt;
 s=  2 e=  1 t=   0.500 V1=   0.000 V2=   4.533 H11=   0.000 H22=&lt;br /&gt;
 4.533 H12=  -0.001 q=   0.0009    0.0009    0.0093   -0.0245&lt;br /&gt;
 -0.0066    0.0001&lt;br /&gt;
          53&lt;br /&gt;
 &lt;br /&gt;
 ERROR in subroutine Distdb :&lt;br /&gt;
 Redundant records in Data Base:   18   19&lt;br /&gt;
 s=  1 e=  1 t=   1.000 V1=   0.469 V2=   4.455 H11=   0.479 H22=&lt;br /&gt;
 4.445 H12=   0.200 q=  -0.4640   -0.5641    1.2594   -0.5871&lt;br /&gt;
 -1.0864   -0.1120&lt;br /&gt;
          53&lt;br /&gt;
 s=  2 e=  1 t=   1.000 V1=   0.001 V2=   4.473 H11=   0.001 H22=&lt;br /&gt;
 4.473 H12=  -0.002 q=   0.0003    0.0004    0.0404   -0.0944&lt;br /&gt;
 -0.0292    0.0001&lt;br /&gt;
          53&lt;br /&gt;
 s=  1 e=  1 t=   1.500 V1=   0.113 V2=   4.543 H11=   0.120 H22=&lt;br /&gt;
 4.536 H12=   0.170 q=  -0.3994   -0.4377    0.5444    0.2057&lt;br /&gt;
 -0.5149   -0.0638&lt;br /&gt;
          53&lt;br /&gt;
 s=  2 e=  1 t=   1.500 V1=   0.013 V2=   4.390 H11=   0.013 H22=&lt;br /&gt;
 4.390 H12=  -0.005 q=   0.0009    0.0010    0.0897   -0.2104&lt;br /&gt;
 -0.0634    0.0002&lt;br /&gt;
          53&lt;br /&gt;
 s=  1 e=  1 t=   2.000 V1=   0.068 V2=   4.431 H11=   0.071 H22=&lt;br /&gt;
 4.428 H12=   0.110 q=  -0.2751   -0.3274    0.4796   -0.0812&lt;br /&gt;
 -0.3880   -0.0605&lt;br /&gt;
          54&lt;br /&gt;
 s=  2 e=  1 t=   2.000 V1=   0.019 V2=   4.367 H11=   0.019 H22=&lt;br /&gt;
 4.367 H12=  -0.009 q=   0.0012    0.0013    0.1563   -0.3658&lt;br /&gt;
 -0.1058    0.0003&lt;br /&gt;
          54&lt;br /&gt;
 s=  1 e=  1 t=   2.500 V1=   0.064 V2=   4.273 H11=   0.065 H22=&lt;br /&gt;
 4.272 H12=  -0.064 q=   0.2559    0.0914    0.1691   -0.7218&lt;br /&gt;
 -0.1052   -0.0595&lt;br /&gt;
          55&lt;br /&gt;
 s=  2 e=  1 t=   2.500 V1=   0.070 V2=   4.258 H11=   0.070 H22=&lt;br /&gt;
 4.257 H12=  -0.013 q=   0.0013    0.0015    0.2384   -0.5572&lt;br /&gt;
 -0.1528    0.0004&lt;br /&gt;
&lt;br /&gt;
Here, we started with a DB of 53 records. It is large enough until&lt;br /&gt;
2 fs, where an additional record is produced, and so on.&lt;br /&gt;
The error message saying here that records 18 and 19 are identical&lt;br /&gt;
will not prevent the code from working. It is just here to remind you&lt;br /&gt;
that the DB is not clean in that it has redundant records.&lt;br /&gt;
This is to be prevented as the DB files might become large quite&lt;br /&gt;
rapidly and all records will be read at each update time (dd_update&lt;br /&gt;
= tout in the integrator section, tout = xxx fs in the run section&lt;br /&gt;
of the *.inp file) for each Gaussian function.&lt;br /&gt;
&lt;br /&gt;
Incidentally, when you want to analyse results written to a *.res&lt;br /&gt;
file, you need to look for lines starting with &amp;quot;s=&amp;quot; (other lines&lt;br /&gt;
are various messages and numbers of DB records).&lt;br /&gt;
The criterion for using the DB is to be seen as a maximum-allowed&lt;br /&gt;
relative difference&lt;br /&gt;
&lt;br /&gt;
So, it is up to you to clean the DB when you see this, and to keep&lt;br /&gt;
this in mind when you concatenate DBs that have branched in their&lt;br /&gt;
past (see more details below).&lt;br /&gt;
&lt;br /&gt;
Also, a given DB depends on the choice of a reference geometry in&lt;br /&gt;
Cartesian coordinates because geometries written to the DB files&lt;br /&gt;
will always be re-orientated with respect to this particular&lt;br /&gt;
geometry. The back and forth transformations are performed by MCTDH (DD-vMCG)&lt;br /&gt;
so you don&#039;t need not worry about this.&lt;br /&gt;
This geometry is written to refdb.dat. It is the starting geometry&lt;br /&gt;
that comes from start.log (the only difference being that it is&lt;br /&gt;
mass-centred).&lt;br /&gt;
As long as you do not change the starting geometry or the nature&lt;br /&gt;
of the electronic states, you can thus keep growing the DB of your&lt;br /&gt;
system.&lt;br /&gt;
&lt;br /&gt;
MANAGING THE DATA BASE&lt;br /&gt;
&lt;br /&gt;
A set of DB  programs can be found in XXXXX. Their roles are&lt;br /&gt;
explained below.&lt;br /&gt;
For now, the sources are in dd_utildev and dd_util.31dv and the&lt;br /&gt;
executables are in mctdh90dev/bin and mctdh90.31dv/bin, so you can&lt;br /&gt;
call them from anywhere, as long as DB files are there.&lt;br /&gt;
&lt;br /&gt;
1) countdb.out: returns the number of records of the current DB&lt;br /&gt;
2) cleandb.out: &amp;quot;brute-force&amp;quot; cleaning of the current DB. This&lt;br /&gt;
might be too long to be run interactively when the number of&lt;br /&gt;
records is too large, because each record needs to be compared to&lt;br /&gt;
each other record (e.g. a DB with ca. 3800 records will take a couple of minutes to clean interactively). If so, run in batch mode (ask me or Marta if you&lt;br /&gt;
have a doubt).&lt;br /&gt;
The cleaned files are:&lt;br /&gt;
geoclean.db&lt;br /&gt;
pesclean.db&lt;br /&gt;
graclean.db&lt;br /&gt;
hesclean.db&lt;br /&gt;
You need to rename them without &#039;clean&#039; for them to be used as a DB.&lt;br /&gt;
3) cutdb.out: allows you to cut out the beginning of a DB.&lt;br /&gt;
This is to be used in the following situation:&lt;br /&gt;
- You start from a mother DB, DB0, assumed to be clean, with N0&lt;br /&gt;
records.&lt;br /&gt;
- You want to use DB0 in two independent calculations. You&lt;br /&gt;
replicate DB0 to daughter DBs, DB1 and DB2.&lt;br /&gt;
- When these calculations are done, DB1 and DB2 have grown to N0+N1&lt;br /&gt;
and N0+N2 records, respectively.&lt;br /&gt;
- You want to concatenate them to create a new mother DB, DB3.&lt;br /&gt;
- DB1 and DB2 have their N0 first records the same. To avoid&lt;br /&gt;
redundant records, you need to cut N0 records from DB2 for example.&lt;br /&gt;
--&amp;gt; go to where DB2 is and use cleandb.out&lt;br /&gt;
The resulting files are:&lt;br /&gt;
geocut.db&lt;br /&gt;
pescut.db&lt;br /&gt;
gracut.db&lt;br /&gt;
hescut.db&lt;br /&gt;
these have N1 records.&lt;br /&gt;
--&amp;gt; rename DB1, for instance geo.db1 etc., and concatenate the files:&lt;br /&gt;
cat geo.db1 geoclean.db &amp;gt; geo.db&lt;br /&gt;
etc.&lt;br /&gt;
- Your new mother DB, DB3, should now have N0+N1+N2 distinct records.&lt;br /&gt;
4) deldb.out: allows you to remove one selected record (for&lt;br /&gt;
instance if corrupted) from the DB if you know its number.&lt;br /&gt;
The resulting files are:&lt;br /&gt;
geodel.db&lt;br /&gt;
pesdel.db&lt;br /&gt;
gradel.db&lt;br /&gt;
hesdel.db&lt;br /&gt;
You need to rename them without &#039;del&#039; for them to be used as a DB.&lt;br /&gt;
5) seedb.out: allows you extract one selected record from the&lt;br /&gt;
binary files for reading it (the record is not removed from the DB).&lt;br /&gt;
The resulting file can be read as a text file (ascii) and is:&lt;br /&gt;
see.db&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Restarting dynamics jobs&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
The examples below make use of the directory and filenames in the examples above.&lt;br /&gt;
&lt;br /&gt;
A dynamics run can be restarted if the job was terminated before completion (e.g if it ran out of time or failed because of convergence problems) or if the user wishes to continue the job for a longer time period than had originally been specified. The program will continue writing the same output file but will overwrite the .res file. Thus the .res file should be saved under a different name to prevent loss of the data calculated in the original run. The .res is not written until the job stops so this can be done after the restart.&lt;br /&gt;
&lt;br /&gt;
*To increase the final propagation time&lt;br /&gt;
&lt;br /&gt;
Retrieve the .inp file (in $HOME/buta) and change &#039;&#039;propagation&#039;&#039; to &#039;&#039;continuation&#039;&#039; in the section entitled RUN-SECTION. Then change the final time &#039;&#039;tfinal&#039;&#039; to a larger value. (NB this new value should include the time already done).&lt;br /&gt;
&lt;br /&gt;
Re-queue the job.&lt;br /&gt;
&lt;br /&gt;
*To increase the number of scf cycles (the most common reason for convergence failure)&lt;br /&gt;
&lt;br /&gt;
Edit the template.dat file in $WORK/buta/but1dd1p_trial/dd_data. Insert scf=(maxcycle=128) on the keyword line (for example). It is important that you change the template.dat file in the but1dd1p_trial/dd_data folder that was created by dd_generator (rather than the one created by the user in $WORK/buta/dd_data) because the original $WORK/buta/dd_data/template.dat file is only read by dd_generator and used to create the job-specific file in the job folder. (Of course if you wish all future jobs run in $WORK/buta  to have increased scf cycles, change the other template.dat file in $WORK/buta/dd_data too.)&lt;br /&gt;
&lt;br /&gt;
Re-queue the job.&lt;br /&gt;
&lt;br /&gt;
*To increase the run-time so that a job will finish&lt;br /&gt;
&lt;br /&gt;
Edit the walltime in the .job file in the $HOME directory and re-queue the job.&lt;br /&gt;
&lt;br /&gt;
=&#039;&#039;&#039;Analysis of the results&#039;&#039;&#039;=&lt;br /&gt;
&lt;br /&gt;
The most important files are the output and .res files.&lt;br /&gt;
&lt;br /&gt;
=== Detailed information about files and directories ===&lt;br /&gt;
&lt;br /&gt;
*output&lt;br /&gt;
&lt;br /&gt;
The output contains some standard results:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Time&#039;&#039;&#039;: time in fs.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;CPU&#039;&#039;&#039;:  CPU time in s.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Norm&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;E-tot&#039;&#039;&#039;: the total energy in eV. This value should be conserved (i.e by the end of the run the E-tot value should not be too different  from what it was a time=0).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;E-corr&#039;&#039;&#039;: correlated Hamiltonian energy&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Delta-E&#039;&#039;&#039;: diference between E-tot at time t=0 and the current time t&lt;br /&gt;
&lt;br /&gt;
Note: In a multi-packet run, i.e. when npacket &amp;gt; 1, the total energy and the norm of the wavefunction, as given in the &amp;quot;total&amp;quot; part, are averaged over the packets.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;population&#039;&#039;&#039; : diabatic populations of state 1 and state 2 (in that order) at the current time t&lt;br /&gt;
&lt;br /&gt;
For every mode:	&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt; q &amp;gt;&#039;&#039;&#039;: position expectation value&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;dq&amp;gt;&#039;&#039;&#039;: standard deviation Sqrt[&amp;lt; q&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt; &amp;gt; - &amp;lt; q &amp;gt;&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt; p &amp;gt;&#039;&#039;&#039; : momentum expectation value&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;dq&amp;gt;&#039;&#039;&#039;: standard deviation Sqrt[&amp;lt; p&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt; &amp;gt; - &amp;lt; p &amp;gt;&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*.res&lt;br /&gt;
&lt;br /&gt;
This file contains the energy of each state (diabatic and adiabatic) at each timestep for each gaussian function:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;s&#039;&#039;&#039; is a redundant value in mctdh90.31dv. It is only meaningful in multi-set implementations of mctdh (where there are double the number of gaussian functions than specified: one for each state). (It indicates whether the gaussian function in question is on the lower (1) or upper (2) state. (In the single set implementation, the gaussian functions on each state are identical)).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;e&#039;&#039;&#039; is a label given to each gaussian function&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;t&#039;&#039;&#039; is the current time in fs&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;V1&#039;&#039;&#039; is the energy of the lower adiabatic state at time t&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;V2&#039;&#039;&#039; is the energy of the upper adiabatic state at time t&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;H11&#039;&#039;&#039; is the energy of the lower diabatic state at time t&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;H22&#039;&#039;&#039; is the energy of the upper diabatic state at time t&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;H12&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;q&#039;&#039;&#039; is the list of frequency mass-weighted normal coordinates that describe the geometry at time t&lt;br /&gt;
&lt;br /&gt;
The end of the file will read something like: &lt;br /&gt;
&lt;br /&gt;
     Propagation was successful.&lt;br /&gt;
     &lt;br /&gt;
     Total time     [h:m:s] :    0 :  1 : 21.60&lt;br /&gt;
     &lt;br /&gt;
      ---------------------------------------------------------------------------&lt;br /&gt;
      ------ Host: &amp;quot;cx1-3-2-4&amp;quot; ----------Sat Jan 17 06:50:20 2009&lt;br /&gt;
&lt;br /&gt;
The other most common result is that the calculation aborted because of scf convergence problems in the CASSCF GAUSSIAN calculations. In this case the ouput file will break off after the last complete step and the end of the .res file will read something like:&lt;br /&gt;
     ERROR in subroutine Getddpes :&lt;br /&gt;
     CAS convergence failed for gwp on state:    1    1&lt;br /&gt;
&lt;br /&gt;
If the job terminates due to scf convergence problems, it may be possible to restart it after modifying the .inp and/or .job and/or template.dat files.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*log&lt;br /&gt;
&lt;br /&gt;
This file contains information such as the source code version, type of calculation performed, integrator used, numerical parameters, which data files are opened, any error messages, and much more. The information provided by the log file can be very helpful, in particular when searching for errors. One should always carefully inspect the log file.&lt;br /&gt;
&lt;br /&gt;
* dvr&lt;br /&gt;
&lt;br /&gt;
* oper&lt;br /&gt;
&lt;br /&gt;
*ddpeserr&lt;br /&gt;
&lt;br /&gt;
*input&lt;br /&gt;
&lt;br /&gt;
*op.log&lt;br /&gt;
&lt;br /&gt;
*psi&lt;br /&gt;
&lt;br /&gt;
*check&lt;br /&gt;
&lt;br /&gt;
*auto&lt;br /&gt;
&lt;br /&gt;
*ddpes&lt;br /&gt;
&lt;br /&gt;
*restart&lt;br /&gt;
&lt;br /&gt;
*stop&lt;br /&gt;
&lt;br /&gt;
*speed&lt;br /&gt;
&lt;br /&gt;
*timing&lt;br /&gt;
&lt;br /&gt;
*update&lt;br /&gt;
&lt;br /&gt;
=== Example: butadiene ===&lt;br /&gt;
&lt;br /&gt;
*Examine the end of the output file to check that the calculation ran to completion.&lt;br /&gt;
     &lt;br /&gt;
*Plot the energy of the diabatic and adiabatic states over time (.res file: V1, V2, H11 and H22). Calculate V2-V1 and H22-H11 and plot these also. H12 may also be plotted on the same graph.&lt;br /&gt;
[[Image:EnergyofStates.png]]&lt;br /&gt;
&lt;br /&gt;
The diabatic states cross at 176.2 fs and the adiabatic states cross at 174.5 fs. At a conical intersection, the value V2-V1 will become negative and the H22-H11 will be a minimum (&amp;lt;1eV). Ideally these crossings will occur at the same time. If the diabatisation has worked well, after V2-V1 becomes negative, V2-V1 and H22-H11 will become mirror images (i.e. the diabatic and adiabatic states follow each other). &lt;br /&gt;
&lt;br /&gt;
*Plot the value of the total energy over time (.res file: E-tot). Verify that the Delta-E value is not too large (compare with the total energy (E-tot) at time 0).&lt;br /&gt;
[[Image:TotalEnergy.png]]&lt;br /&gt;
&lt;br /&gt;
*Plot the population of one of the (diabatic) states over time (.res file: population).&lt;br /&gt;
[[Image:Population.png]]&lt;br /&gt;
&lt;br /&gt;
At the conical intersection the population transfer is large. In this case the job has been terminated after 200 fs. Usually the calculation should be continued until the populations stabilise (which obviously has not happened in this case).&lt;br /&gt;
&lt;br /&gt;
=== Making a Movie ===&lt;br /&gt;
&lt;br /&gt;
Navigate to /work/$USER/buta/but1dd1p_trial (the place where the .res file was written). Type:&lt;br /&gt;
 dd_movie.out&lt;br /&gt;
* The script will ask a series of questions and will use the answers provided to create a file that can be read into Molden or iMol.&lt;br /&gt;
&lt;br /&gt;
==== List of questions asked by dd_movie.out====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;blockquote style=&amp;quot;background: white; border: 1px solid black; padding: 1em;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Question&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; &#039;&#039;&#039;Answer for this tutorial&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; &#039;&#039;&#039;Explanation&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the number of atoms?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 10 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the actual number of active coordinates?&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 24 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; In this case all coordinates were active (so there are 3N-6 where N is the number of atoms) &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Name of result file to read?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; but1dd1p_trial.res &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;Ensure that the forward.dat and backward.dat files are located in the current directory in the folder dd_data (they will have been written there automatically)&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Name of movie file to write?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; but1dd1p_trial.xyz &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; Choose any name .xyz &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Which electronic state (s=...)?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 1 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;Choose 1 (this question dates from the multi-set implementation of mctdh where the wavepackets on each state were different)  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Which Gaussian function (e=...)?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 1 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;In this case we have only one wavepacket&amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;The script will now return the number of lines and the initial number of points&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
number of lines:        4684&lt;br /&gt;
initial number of points:        4674&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Maximum number of points you want?&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 4674 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;If you wish to view the movie in Molden you must reduce the number of points to less than 100 (so choose 99 for maximum number of points). iMol can cope with any number of frames so choose the number printed by the script: this number will be reduced and the script will tell you how many points it has written. &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
writing frequency:           2&lt;br /&gt;
   final number of points:        2337&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The .xyz file is ready to be opened in Molden or iMol.&lt;br /&gt;
&lt;br /&gt;
= &#039;&#039;&#039;Current Known Bugs&#039;&#039;&#039; =&lt;br /&gt;
&lt;br /&gt;
Parallelisation:&lt;br /&gt;
&lt;br /&gt;
It is not possible to run calculations in parallel with version 90.31dv (reading the same template.dat file simultaneously by each processor is causing problems). In 90.35tmp this is ok. In 90.4X it will also be fixed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Total energy:&lt;br /&gt;
&lt;br /&gt;
1) The total energy is sometimes &amp;quot;artificially&amp;quot; increased by a lot. If so, try a different integrator or play around with the timestep (may need to get larger or smaller). Or try increasing scf convergence to 10&amp;lt;sup&amp;gt;-12&amp;lt;/sup&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
2) If Delta-E suddenly becomes too large, you can get the following message: &lt;br /&gt;
&amp;quot;ERROR in subroutine WRGAUSSIAN :&lt;br /&gt;
 Do not use $Swap:...$ metastring in file /.../template.dat&amp;quot;&lt;br /&gt;
Often, when getting this message, no more steps are added to the simulation, although the calculation seems to keep running (the integrator keeps trying and failing).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Using the database:&lt;br /&gt;
&lt;br /&gt;
1) Every record generated with mctdh90.31dev and several GWPs is corrupted, so, for now, when launching calculations with more that one wavepacket, use &amp;quot;formdd_none.op&amp;quot; (i.e. do not read nor write the database).&lt;br /&gt;
[For instance, when using dbrdwr and starting from a clean db, all newly generated records are added to the existing database, even if they are identical to records that were already written in the db.]  In 90.35tmp this is ok. In 90.4X it will also be fixed.&lt;br /&gt;
&lt;br /&gt;
2) Records obtained in calculations with one GWP should be OK, but this is still to be confirmed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Impossible case&amp;quot;:&lt;br /&gt;
&lt;br /&gt;
Error message that forces the calculation to stop. It seems to be associated with moving towards an &amp;quot;unexpected&amp;quot; geometry (e.g. a radical).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
State Averaging:&lt;br /&gt;
&lt;br /&gt;
To increase the threshold above which stateaveraging is turned off, increase the default value of 10 (to e.g. 50)  in the line &#039;&#039;ddregions&#039;&#039; in the OPERATOR-SECTION of the .inp file.&lt;br /&gt;
&lt;br /&gt;
= &#039;&#039;&#039;Questions and Modifications to be made to this wiki&#039;&#039;&#039; =&lt;br /&gt;
&lt;br /&gt;
*Why we would ever need to start the gwps from the lower state? To study GS rxns; chemiluminesence (eg glowworms).&lt;br /&gt;
*In terms of Delta-E, how much is too much? ca1eV but shape of E-tot vs time is important: discontiunities or v flat then steep increase are less reliable than smooth gradual increases.&lt;br /&gt;
*Benjamin: Note that Marta has noticed that for very strange geometries, you may receive an error message saying &amp;quot;impossible case&amp;quot;, which stops MCTDH. It is too complicated to explain here. I know where this happens in the code, and I should prevent this error to stop the code but I didn&#039;t have time to fix this. I&#039;ll do it soon.&lt;br /&gt;
*Need to edit/correct section on the DB.&lt;br /&gt;
*Is does unfchk in gdvg03 create corrupted fchk files? G03 is fine. we don&#039;t know about gdvg03 but we don&#039;t care because we probablly won&#039;t use it.&lt;br /&gt;
&lt;br /&gt;
=== [[Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial|back]] ===&lt;/div&gt;</summary>
		<author><name>Vs13</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/run&amp;diff=333947</id>
		<title>Resgrp:comp-photo-dyn/mctdh90.56dv Fulvene Tutorial/run</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/run&amp;diff=333947"/>
		<updated>2013-04-29T10:46:45Z</updated>

		<summary type="html">&lt;p&gt;Vs13: /* Files created by the generator */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= &#039;&#039;&#039;Basic use of the MCTDH (DD-vMCG) package&#039;&#039;&#039; =&lt;br /&gt;
&lt;br /&gt;
A script called dd_generator uses GAUSSIAN output files and user input to write the input files for mctdh (DD-vMCG).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Notes&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;The number of gaussian wavepackets (requested by the dd_generator script)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
When studying a new system, start with one (to keep calculation times short). When an appropriate momentum, time period, time step and integrator have been established, increase the number of wavepackets until the results are not changed by adding more. Calculation times are proportional to the number of wavepackets. To ensure efficient use of computing resources, always specify an even number of wavepackets if using more than one processor (since the number of processors can only be an even number: currently 2, 4 or 8).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;The database&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The most time-consuming part of a dynamics run is the GAUSSIAN CASSCF calculations. The results of these calculations can be stored in a database and re-used in future runs. The user must choose whether or not to read and/or write a database. Each calculation will write a separate database so the databases from each run must be combined (and any duplicate entries removed (to save space)).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Initial momentum&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
An initial momentum can be specified to direct the wavepacket to a particular area of the PES (e.g. towards a conical intersection, a transition state or minimum geometry). The momentum is given as a geometry (in frequency mass weighted normal coordinates). The dd_rotation program used for rotation of the conical intersection can be used to transform the coordinates of the desired geometry. If the user requests an initial momentum, dd_generator will search for a file called momentum.dat. If this file is found, dd_generator will ask if the user wishes to use the momentum specified in it. The user can then specify how much energy to give (in eV). Thus, the values in momentum.dat need only be relative values (since they will be multiplied by a scaling factor to provide the total number of eV requested). If there is no file called momentum.dat in the appropriate folder, the user will not be asked to specify a total number of eV to give to the wavepacket(s). A momentum can still be added by manually modifying the .inp file after the dd_generator script has been run (replace the zero values in the fifth column of the section of the .inp file entitled INIT_WF-SECTION). However, it is simpler to create the momentum.dat file mainly because if the user edits the .inp file directly, there is no way of knowing what the total excess energy will be: the values listed in .inp also incorporate magnitude (not just relative values as in momentum.dat). &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Memory and number of processors&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
In template.dat, the memory for each GAUSSIAN CASSCF calculation is specified. In the .job file (created by dd_generator from user input) the total memory is specified. Thus, the memory specified in .job must be at least as great as the memory given in template.dat multiplied by the number of processors.&lt;br /&gt;
&lt;br /&gt;
The GAUSSIAN calculations for each wavepacket will run on a single processor. If the user specifies more than one processor then the calculations for each wavepacket can run simultaneously. To ensure efficient use of computing resources, always specify an even number of wavepackets when using more than one processor (since the number of processors can only be an even number: currently 2, 4 or 8).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Symmetry Considerations&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The way the diabatisation is performed in mctdh90.31dv sometimes leads to complications involving symmetry.  The diabatic states are defined using the conical intersection (or other geometry) described in coin.log. If the molecule is highly symmetric, there will be more than one conical intersection (all identical by symmetry). If the wavepacket moves close to one of the other conical intersections that is not described in coin.log, the diabatic states may not be properly described in this area of the PES. This of course means that the behaviour of the wavepacket(s) is likely to be described poorly also.&lt;br /&gt;
&lt;br /&gt;
If the conical intersection has lower symmetry than the starting material, the symmetry must necessarily be broken during the dynamics calculation before the conical intersection is reached. The breaking of each mode will occur either due to the accumulation of small numerical inaccuracies or if a momentum is given which forces particular modes to break symmetry.&lt;br /&gt;
Mctdh90.31dv uses frequency-mass-weighted normal coordinates to describe molecular geometries. Each frequency-mass-weighted coordinate corresponds to a vibration of the molecule (and there are therefore 3N-6 coordinates). Displacements of atoms are described by a (or a combination of) vibration(s). Each vibration can be displaced in one of two directions: positive or negative. The 3N-6 frequency-mass-weighted coordinates can be classified by symmetry. Whether a particular symmetry mode is broken in the positive or negative direction will be equally likely if no initial momentum is given. Thus for each mode that is broken during a simulation the symmetry may break in the positive direction or the negative direction. There will be 2&amp;lt;sup&amp;gt;x&amp;lt;/sup&amp;gt; possible conical intersections corresponding to a particular starting geometry, where x is the number of modes that must be broken going from starting material to conical intersection.&lt;br /&gt;
&lt;br /&gt;
Additionally, care must be taken over atom labeling. It must be possible to transform the starting material into the conical intersection without permuting atom labels. If the conical intersection has been optimised by following the MEP downhill from the starting material this is not likely to be a problem. However, bear this in mind if drawing the conical intersection by hand.  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Creating the Directories&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* First of all, create a folder in which to save the calculations in your $HOME and $WORK directories. Create a directory in $HOME, and an identical directory in $WORK that has the same path. Keep pathlengths as short as possible (if the total path becomes too long the dynamics code will not run). For simplicity, in this case, we are going to assume that this directory is named &#039;&#039;fulv&#039;&#039; (for fulvene).&lt;br /&gt;
&lt;br /&gt;
     mkdir fulv&lt;br /&gt;
&lt;br /&gt;
* Create a subdirectory called &#039;&#039;&#039;dd_data&#039;&#039;&#039; in the new directory in $WORK.  Thus you should start with:&lt;br /&gt;
&lt;br /&gt;
    /home/$USER/fulv&lt;br /&gt;
    /work/$USER/fulv/dd_data&lt;br /&gt;
&lt;br /&gt;
* Important Note: it is essential to have the same path in both directories, $HOME and $WORK. Do not change the path-names within the HOME/WORK directories. If you re-name or move any subdirectory in your, for example HOME directory, you have to be consistent and make the same changes in the $WORK directory.&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Gaussian Output to be Used as Input for the Dynamics Program&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* Populate the new directory /work/$USER/buta/dd_data with four files which must be named: &#039;&#039;&#039;coin.log&#039;&#039;&#039;; &#039;&#039;&#039;start.fchk&#039;&#039;&#039;; &#039;&#039;&#039;start.log&#039;&#039;&#039;; and &#039;&#039;&#039;template.dat&#039;&#039;&#039;.These files are required in order to run any dynamics simulation, they are the basis that the script dd_generator (see the following section) will use to create the necessary files for running MCTDH (DD-vMCG).  You may also create a file named &amp;quot;&#039;momentum.dat&amp;quot;&#039; if you wish to give a momentum to the wavepacket(s) (this is optional and may be created later instead). &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;coin.log&#039;&#039;&#039; is the logfile resulting from the optimisation of the conical intersection. NB The MCTDH (DD-vMCG) program will rotate the conical intersection before starting the dynamics. To do this it must be provided with three angles which describe the appropriate rotation. There is an Excel spreadsheet available to calculate these angles (see the section entitled &amp;quot;Rotating the Conical Intersection&amp;quot;). NB the structure in coin.log need not necessarily be a true conical intersection: this point is only used for performing the diabatisation. Thus the diabatisation will be exact at this point and will become more approximate the further you are from it (on the PES). If you wish to use a point that is not a conical intersection, simply run a conical intersection optimisation (with only a single step) on the desired geometry. This will create a file with the same layout as a conical intersection optimisation output file (mctdh looks for certain things in this file so if some other type of .log file were used instead, it might not contain the required information). NB the final conical intersection log file must only contain one geometry (otherwise the dynamics program will not know which geometry to use). IS THIS STATEMENT TRUE FOR THIS VERSION??&lt;br /&gt;
&lt;br /&gt;
[[Media:Coin.log]]&lt;br /&gt;
&lt;br /&gt;
(Insert a link here to section &amp;quot;Rotating the Conical Intersection&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;start.chk&#039;&#039;&#039; is the checkpoint file from the high precision vibrational modes of the ground state with state averaged orbitals (with atom types rather than numbers)&lt;br /&gt;
[[Media:Start.chk]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;start.log&#039;&#039;&#039; is the log file from the high precision vibrational modes of the ground state with state averaged orbitals (with atom types rather than numbers)&lt;br /&gt;
&lt;br /&gt;
[[Media:Start.log]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;template.dat&#039;&#039;&#039; is a template for the creation of GAUSSIAN input files by the MCTDH (DD-vMCG) program. It contains all the mutual keywords of the GAUSSIAN calculations which will be run on-the-fly by MCTDH (DD-vMCG). It also contains other information relating to the GAUSSIAN calculations such as memory requirements.&lt;br /&gt;
 &lt;br /&gt;
[[Media:Template.dat]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;momentum.dat&#039;&#039;&#039; is a file containing a list of values to be used as vectors to indicate the momentum to be given to a particular (set of) wavepacket(s). The vectors must be listed in the order of the frequency-mass-weighted normal coordinates specified in the coin.out file (i.e. the output file from dd_rotation program). They give the magnitude of the momentum to be given along each of these frequency-mass-weighted normal coordinates. N.B. The signs of the values here are important!&lt;br /&gt;
We are not giving a momentum in this simulation.&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;The Generator&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* The &amp;quot;generator&amp;quot; script uses the GAUSSIAN output files (above) along with other information supplied by the user to create input files for MCTDH (DD-vMCG).&lt;br /&gt;
&lt;br /&gt;
* Navigate to /home/$USER/fulv and run the generator by typing:&lt;br /&gt;
&lt;br /&gt;
     dd_generator&lt;br /&gt;
&lt;br /&gt;
for the HPC Cluster, or &lt;br /&gt;
&lt;br /&gt;
     dd_generator_MAC&lt;br /&gt;
&lt;br /&gt;
for a MAC OS X system&lt;br /&gt;
&lt;br /&gt;
* Typing dd_generator will run the script automatically. After installing the MCTDH (DD-vMCG) package this command has been added to your list of executable commands. &lt;br /&gt;
&lt;br /&gt;
     ********************************************************************************&lt;br /&gt;
     ********************    -------  DD GENERATOR  --------    *****************&lt;br /&gt;
     ********************************************************************************&lt;br /&gt;
&lt;br /&gt;
* The generator will ask a series of questions and will use the answers provided to prepare the input files for the dynamics program. The questions it asks are listed below along with answers for a trial run on butadiene.&lt;br /&gt;
&lt;br /&gt;
==== List of questions asked by dd_generator====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;blockquote style=&amp;quot;background: white; border: 1px solid black; padding: 1em;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Question&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; &#039;&#039;&#039;Answer for this tutorial&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; &#039;&#039;&#039;Explanation&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Which version of GAUSSIAN should we use? (gdvh01|g03)&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; gdvh01 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;How many shared-memory processors should we use? (1|2|4|8)&lt;br /&gt;
N.B.: (ncpus=1) serial or (ncpus=2|4|8) parallel (omp) version of MCTDH launched as batch job&lt;br /&gt;
and launching monoprocessor GAUSSIAN interactive jobs (nprocshared=1 or no specification)&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 4 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the name of the molecule?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; fulvene &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; The first four letters will be used to name the new files that the generator is creating &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the number of atoms?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 12 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;The number of nuclear degrees of freedom is 30.&lt;br /&gt;
Do you want to reduce the dimensionality? (y|n)&lt;br /&gt;
(N.B.: this can be used also for re-ordering the coordinates)&lt;br /&gt;
&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; n &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the number of nuclear Gaussian functions?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 4 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt; 4 means 4 gaussian on state 1 and 4 gaussian on state 2. This is the &amp;quot;single-set&amp;quot; implementation of MCTDH (DD-vMCG) therefore the gaussian wavepackets on state 1 are the same as the gaussian wavepackets on state 2.&amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;&#039;What is the final propagation time (in fs)?&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 150 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the propagation time step (in fs)?&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 0.1 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the number of electronic states? (1|2)&#039;&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 2 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the highest electronic root?&#039;&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 2 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;From which electronic state should the wavepacket start? (2|1)&#039;&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 2 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Will there be an initial momentum given to the wavepacket? (y|n)&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; n &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Do you want to add a reference label to the name of the case? (y|n)&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; y &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Please type your text:&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; trial &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;This question is only asked if the answer to the previous question was yes.  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What will be the status of the database? (rdwr|rd|wr|none)&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; none &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; Choose rd for read, wr for write etc. In this case we are not going to use the database, but if it was used (rd or rdwr is specified) the script would ask the user to specify the threshold below which the database values will be used (%). In this case the value none is chosen so this question is not asked.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;&amp;gt;&amp;gt; Manual rotation (using Excel spreadsheet) &amp;lt;&amp;lt;&lt;br /&gt;
   Please type the values of the three Euler angles (in deg)&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 0&lt;br /&gt;
0&lt;br /&gt;
0 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Tuple from the dd_rotation method (insert link)&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;The generator will now tell you that it has read the files start.chk from the folder /work/$USER/fulv/dd_data/ .&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Files created by the generator&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* The generator will now tell you that it has read the files start.log, coin.log and momentum.dat (if a momentum has been specified) from the folder /work/$USER/fulv/dd_data/:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
   about to read parameters...&lt;br /&gt;
   ... parameters just read&lt;br /&gt;
   about to read file /work/vs13/fulv/dd_data/start.log                   &lt;br /&gt;
                                                               ...&lt;br /&gt;
   ... file /work/vs13/fulv/dd_data/start.log                             &lt;br /&gt;
                                                      read successfully&lt;br /&gt;
   about to read file /work/vs13/fulv/dd_data/coin.log                    &lt;br /&gt;
                                                               ...&lt;br /&gt;
 *********************************************************&lt;br /&gt;
 Mass-weighted displacement from start to coin:&lt;br /&gt;
    old total norm: 22.070387&lt;br /&gt;
    new total norm:  4.669035&lt;br /&gt;
  vibrational part:  4.669035&lt;br /&gt;
   rotational part:  0.000000&lt;br /&gt;
 *********************************************************&lt;br /&gt;
   ... file /work/vs13/fulv/dd_data/coin.log                             &lt;br /&gt;
                                                      read successfully&lt;br /&gt;
&amp;lt;/pre&amp;gt; &lt;br /&gt;
&lt;br /&gt;
and that the extraction of data and the creation of a summary file were done successfully. If the Mass-weighted displacement from start to coin appears as NaN it may be because the start.log contains atom numbers rather than atom types. You will need to redo the freq=hpmodes job with atom types.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Data extracted successfully&lt;br /&gt;
The summary of this file generation is in:&lt;br /&gt;
-rw-r--r--  1 vs13 hpc-users 3070 Dec  2 17:06 /home/vs13/fulv/fstodd4o.txt&lt;br /&gt;
 &lt;br /&gt;
Do not forget you still can add a momentum, change the integrator, change convergence criteria for GAUSSIAN and MCTDH...&lt;br /&gt;
 &lt;br /&gt;
Do not forget to check the order of the atoms of the conical intersection geometry in /work/dm107/dyn_90dev/dd_data/coin.log&lt;br /&gt;
 &lt;br /&gt;
Now go to your jobscript file and give values to the memory and walltime.&lt;br /&gt;
 &lt;br /&gt;
Good luck!&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* The dd_generator script has generated four files in the same directory (/home/$USER/fulv):&lt;br /&gt;
&lt;br /&gt;
# fstodd4p_trial.inp  &lt;br /&gt;
# fstodd4p_trial.job  &lt;br /&gt;
# fstodd4p_trial.txt  &lt;br /&gt;
# fstodd_none.op&lt;br /&gt;
&lt;br /&gt;
(Link to a more detailed explanation of this files)&lt;br /&gt;
&lt;br /&gt;
* The script has also created some files and directories in /work/$USER/fulv where the MCTDH (DD-vMCG) and GAUSSIAN calculations will be stored:&lt;br /&gt;
&lt;br /&gt;
1) Directories:&lt;br /&gt;
&lt;br /&gt;
* fstodd4p_trial&lt;br /&gt;
* fstodd4p_trial/dd_data&lt;br /&gt;
&lt;br /&gt;
2) Files (in fstodd4o_trial/dd_data):&lt;br /&gt;
&lt;br /&gt;
# refdb.dat &lt;br /&gt;
# start.chk  &lt;br /&gt;
# template.dat&lt;br /&gt;
# forward.dat&lt;br /&gt;
# backward.dat&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Modifications to be made to the files before running the dynamics&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* In the .job file in /home/$USER/buta specify the memory and walltime if you are in the HPC Cluster.&lt;br /&gt;
&lt;br /&gt;
* When running a development version of GAUSSIAN (gdvg03 or gdvg01), copy the start.chk file into the folder /work/$USER/dyn_90dev/but1dd1p_trial/dd_data. The unformatted checkpoint file from start.fchk that dd_generator has created is corrupted (due to a bug in formchk in gdvg01).&lt;br /&gt;
has this been fixed?&lt;br /&gt;
&lt;br /&gt;
====Starting from a point other than the Franck-Condon point====&lt;br /&gt;
&lt;br /&gt;
When the molecule is highly symmetric and there is more than one equivalent conical intersection (see above) it may be necessary to direct the wavepacket towards the particular conical intersection described in coin.log. The easiest way to do this is to use an initial momentum but it can also be achieved by distorting the geometry of the starting structure slightly towards the conical intersection (i.e. breaking the symmetry in the appropriate direction(s)).&lt;br /&gt;
&lt;br /&gt;
Define the new starting geometry in frequency-mass-weighted normal coordinates (this can be done using the Excel spreadsheet). One option for selecting the new geometry is to use a fraction of the displacement from the FC point to the conical intersection. &lt;br /&gt;
&lt;br /&gt;
After running dd_generator in the normal way, replace the default FC geometry in the .inp file with the new geometry. This geometry (frequency-mass-weighted-coordinates of the centre of the wavepacket) forms the fourth column in the section entitled INIT_WF-SECTION (in .inp).&lt;br /&gt;
&lt;br /&gt;
If the new geometry is very different from the FC geometry, run a single-point state-averaged-CAS calculation (start from RHF, look at the MOs, alter if needed, and check the final active MOs) and call the resulting .chk file start.chk. Replace the start.chk that would have been used ($WORK/buta/but1dd1p_trial/dd_data/start.chk) with this new start.fchk. If the distorted geometry is close enough to the FC geometry it may not be necessary to generate a new start.chk. (When the distortion is large there is a risk of breaking the active space from FC to the new point. Creating a new start.chk is just a way of making sure the starting active space is OK at the new point.) If you are creating a new start.fchk, run the solver on that geometry (relative to the original starting geometry) in the Excel spreadsheet. Create the new start.chk using the geometry in the orange box (so that it is in the same orientation as the molecule in start.log).&lt;br /&gt;
&lt;br /&gt;
N.B. There is no need to replace start.log even when start.fchk is replaced.&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Running the dynamics&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* Navigate to /home/$USER/buta. Queue the job file. In this case, type:&lt;br /&gt;
&lt;br /&gt;
     qsub butadd1p_trial.job&lt;br /&gt;
&lt;br /&gt;
for MAC OS X users the shell command is already written in butadd1p_trial.job&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;The Database (DB)&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
The DB is made of four binary files:&lt;br /&gt;
geo.db&lt;br /&gt;
pes.db&lt;br /&gt;
gra.db&lt;br /&gt;
hes.db&lt;br /&gt;
They can be used in place of GAUSSIAN calculations to save some&lt;br /&gt;
computation time when you ask for DBrd or DBrdwr.&lt;br /&gt;
&lt;br /&gt;
Each set of geometry, energy, gradient and Hessian (the latter&lt;br /&gt;
three quantities having been calculated by GAUSSIAN for the two&lt;br /&gt;
adiabatic electronic states) will be called a DB record and&lt;br /&gt;
assigned a record number defining the order of occurrence in the DB.&lt;br /&gt;
If you run a calculation where the DB is to be read, in the *.res&lt;br /&gt;
file that you obtain after the calculation is done (file that&lt;br /&gt;
actually is a redirection of the standard output) you will see the&lt;br /&gt;
number of records in the DB as it grows.&lt;br /&gt;
Example (formaldehyde, multi-set 1+1):&lt;br /&gt;
          53&lt;br /&gt;
 s=  1 e=  1 t=   0.000 V1=   0.001 V2=   4.533 H11=   0.001 H22=&lt;br /&gt;
 4.533 H12=   0.000 q=   0.0000    0.0000    0.0000    0.0000&lt;br /&gt;
 0.0000    0.0000&lt;br /&gt;
          53&lt;br /&gt;
 s=  2 e=  1 t=   0.000 V1=   0.001 V2=   4.533 H11=   0.001 H22=&lt;br /&gt;
 4.533 H12=   0.000 q=   0.0000    0.0000    0.0000    0.0000&lt;br /&gt;
 0.0000    0.0000&lt;br /&gt;
          53&lt;br /&gt;
 s=  1 e=  1 t=   0.500 V1=   0.197 V2=   4.701 H11=   0.211 H22=&lt;br /&gt;
 4.687 H12=   0.251 q=  -0.6258   -0.6146    0.6136    0.6049&lt;br /&gt;
 -0.5520   -0.0616&lt;br /&gt;
          53&lt;br /&gt;
 s=  2 e=  1 t=   0.500 V1=   0.000 V2=   4.533 H11=   0.000 H22=&lt;br /&gt;
 4.533 H12=  -0.001 q=   0.0009    0.0009    0.0093   -0.0245&lt;br /&gt;
 -0.0066    0.0001&lt;br /&gt;
          53&lt;br /&gt;
 &lt;br /&gt;
 ERROR in subroutine Distdb :&lt;br /&gt;
 Redundant records in Data Base:   18   19&lt;br /&gt;
 s=  1 e=  1 t=   1.000 V1=   0.469 V2=   4.455 H11=   0.479 H22=&lt;br /&gt;
 4.445 H12=   0.200 q=  -0.4640   -0.5641    1.2594   -0.5871&lt;br /&gt;
 -1.0864   -0.1120&lt;br /&gt;
          53&lt;br /&gt;
 s=  2 e=  1 t=   1.000 V1=   0.001 V2=   4.473 H11=   0.001 H22=&lt;br /&gt;
 4.473 H12=  -0.002 q=   0.0003    0.0004    0.0404   -0.0944&lt;br /&gt;
 -0.0292    0.0001&lt;br /&gt;
          53&lt;br /&gt;
 s=  1 e=  1 t=   1.500 V1=   0.113 V2=   4.543 H11=   0.120 H22=&lt;br /&gt;
 4.536 H12=   0.170 q=  -0.3994   -0.4377    0.5444    0.2057&lt;br /&gt;
 -0.5149   -0.0638&lt;br /&gt;
          53&lt;br /&gt;
 s=  2 e=  1 t=   1.500 V1=   0.013 V2=   4.390 H11=   0.013 H22=&lt;br /&gt;
 4.390 H12=  -0.005 q=   0.0009    0.0010    0.0897   -0.2104&lt;br /&gt;
 -0.0634    0.0002&lt;br /&gt;
          53&lt;br /&gt;
 s=  1 e=  1 t=   2.000 V1=   0.068 V2=   4.431 H11=   0.071 H22=&lt;br /&gt;
 4.428 H12=   0.110 q=  -0.2751   -0.3274    0.4796   -0.0812&lt;br /&gt;
 -0.3880   -0.0605&lt;br /&gt;
          54&lt;br /&gt;
 s=  2 e=  1 t=   2.000 V1=   0.019 V2=   4.367 H11=   0.019 H22=&lt;br /&gt;
 4.367 H12=  -0.009 q=   0.0012    0.0013    0.1563   -0.3658&lt;br /&gt;
 -0.1058    0.0003&lt;br /&gt;
          54&lt;br /&gt;
 s=  1 e=  1 t=   2.500 V1=   0.064 V2=   4.273 H11=   0.065 H22=&lt;br /&gt;
 4.272 H12=  -0.064 q=   0.2559    0.0914    0.1691   -0.7218&lt;br /&gt;
 -0.1052   -0.0595&lt;br /&gt;
          55&lt;br /&gt;
 s=  2 e=  1 t=   2.500 V1=   0.070 V2=   4.258 H11=   0.070 H22=&lt;br /&gt;
 4.257 H12=  -0.013 q=   0.0013    0.0015    0.2384   -0.5572&lt;br /&gt;
 -0.1528    0.0004&lt;br /&gt;
&lt;br /&gt;
Here, we started with a DB of 53 records. It is large enough until&lt;br /&gt;
2 fs, where an additional record is produced, and so on.&lt;br /&gt;
The error message saying here that records 18 and 19 are identical&lt;br /&gt;
will not prevent the code from working. It is just here to remind you&lt;br /&gt;
that the DB is not clean in that it has redundant records.&lt;br /&gt;
This is to be prevented as the DB files might become large quite&lt;br /&gt;
rapidly and all records will be read at each update time (dd_update&lt;br /&gt;
= tout in the integrator section, tout = xxx fs in the run section&lt;br /&gt;
of the *.inp file) for each Gaussian function.&lt;br /&gt;
&lt;br /&gt;
Incidentally, when you want to analyse results written to a *.res&lt;br /&gt;
file, you need to look for lines starting with &amp;quot;s=&amp;quot; (other lines&lt;br /&gt;
are various messages and numbers of DB records).&lt;br /&gt;
The criterion for using the DB is to be seen as a maximum-allowed&lt;br /&gt;
relative difference&lt;br /&gt;
&lt;br /&gt;
So, it is up to you to clean the DB when you see this, and to keep&lt;br /&gt;
this in mind when you concatenate DBs that have branched in their&lt;br /&gt;
past (see more details below).&lt;br /&gt;
&lt;br /&gt;
Also, a given DB depends on the choice of a reference geometry in&lt;br /&gt;
Cartesian coordinates because geometries written to the DB files&lt;br /&gt;
will always be re-orientated with respect to this particular&lt;br /&gt;
geometry. The back and forth transformations are performed by MCTDH (DD-vMCG)&lt;br /&gt;
so you don&#039;t need not worry about this.&lt;br /&gt;
This geometry is written to refdb.dat. It is the starting geometry&lt;br /&gt;
that comes from start.log (the only difference being that it is&lt;br /&gt;
mass-centred).&lt;br /&gt;
As long as you do not change the starting geometry or the nature&lt;br /&gt;
of the electronic states, you can thus keep growing the DB of your&lt;br /&gt;
system.&lt;br /&gt;
&lt;br /&gt;
MANAGING THE DATA BASE&lt;br /&gt;
&lt;br /&gt;
A set of DB  programs can be found in XXXXX. Their roles are&lt;br /&gt;
explained below.&lt;br /&gt;
For now, the sources are in dd_utildev and dd_util.31dv and the&lt;br /&gt;
executables are in mctdh90dev/bin and mctdh90.31dv/bin, so you can&lt;br /&gt;
call them from anywhere, as long as DB files are there.&lt;br /&gt;
&lt;br /&gt;
1) countdb.out: returns the number of records of the current DB&lt;br /&gt;
2) cleandb.out: &amp;quot;brute-force&amp;quot; cleaning of the current DB. This&lt;br /&gt;
might be too long to be run interactively when the number of&lt;br /&gt;
records is too large, because each record needs to be compared to&lt;br /&gt;
each other record (e.g. a DB with ca. 3800 records will take a couple of minutes to clean interactively). If so, run in batch mode (ask me or Marta if you&lt;br /&gt;
have a doubt).&lt;br /&gt;
The cleaned files are:&lt;br /&gt;
geoclean.db&lt;br /&gt;
pesclean.db&lt;br /&gt;
graclean.db&lt;br /&gt;
hesclean.db&lt;br /&gt;
You need to rename them without &#039;clean&#039; for them to be used as a DB.&lt;br /&gt;
3) cutdb.out: allows you to cut out the beginning of a DB.&lt;br /&gt;
This is to be used in the following situation:&lt;br /&gt;
- You start from a mother DB, DB0, assumed to be clean, with N0&lt;br /&gt;
records.&lt;br /&gt;
- You want to use DB0 in two independent calculations. You&lt;br /&gt;
replicate DB0 to daughter DBs, DB1 and DB2.&lt;br /&gt;
- When these calculations are done, DB1 and DB2 have grown to N0+N1&lt;br /&gt;
and N0+N2 records, respectively.&lt;br /&gt;
- You want to concatenate them to create a new mother DB, DB3.&lt;br /&gt;
- DB1 and DB2 have their N0 first records the same. To avoid&lt;br /&gt;
redundant records, you need to cut N0 records from DB2 for example.&lt;br /&gt;
--&amp;gt; go to where DB2 is and use cleandb.out&lt;br /&gt;
The resulting files are:&lt;br /&gt;
geocut.db&lt;br /&gt;
pescut.db&lt;br /&gt;
gracut.db&lt;br /&gt;
hescut.db&lt;br /&gt;
these have N1 records.&lt;br /&gt;
--&amp;gt; rename DB1, for instance geo.db1 etc., and concatenate the files:&lt;br /&gt;
cat geo.db1 geoclean.db &amp;gt; geo.db&lt;br /&gt;
etc.&lt;br /&gt;
- Your new mother DB, DB3, should now have N0+N1+N2 distinct records.&lt;br /&gt;
4) deldb.out: allows you to remove one selected record (for&lt;br /&gt;
instance if corrupted) from the DB if you know its number.&lt;br /&gt;
The resulting files are:&lt;br /&gt;
geodel.db&lt;br /&gt;
pesdel.db&lt;br /&gt;
gradel.db&lt;br /&gt;
hesdel.db&lt;br /&gt;
You need to rename them without &#039;del&#039; for them to be used as a DB.&lt;br /&gt;
5) seedb.out: allows you extract one selected record from the&lt;br /&gt;
binary files for reading it (the record is not removed from the DB).&lt;br /&gt;
The resulting file can be read as a text file (ascii) and is:&lt;br /&gt;
see.db&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Restarting dynamics jobs&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
The examples below make use of the directory and filenames in the examples above.&lt;br /&gt;
&lt;br /&gt;
A dynamics run can be restarted if the job was terminated before completion (e.g if it ran out of time or failed because of convergence problems) or if the user wishes to continue the job for a longer time period than had originally been specified. The program will continue writing the same output file but will overwrite the .res file. Thus the .res file should be saved under a different name to prevent loss of the data calculated in the original run. The .res is not written until the job stops so this can be done after the restart.&lt;br /&gt;
&lt;br /&gt;
*To increase the final propagation time&lt;br /&gt;
&lt;br /&gt;
Retrieve the .inp file (in $HOME/buta) and change &#039;&#039;propagation&#039;&#039; to &#039;&#039;continuation&#039;&#039; in the section entitled RUN-SECTION. Then change the final time &#039;&#039;tfinal&#039;&#039; to a larger value. (NB this new value should include the time already done).&lt;br /&gt;
&lt;br /&gt;
Re-queue the job.&lt;br /&gt;
&lt;br /&gt;
*To increase the number of scf cycles (the most common reason for convergence failure)&lt;br /&gt;
&lt;br /&gt;
Edit the template.dat file in $WORK/buta/but1dd1p_trial/dd_data. Insert scf=(maxcycle=128) on the keyword line (for example). It is important that you change the template.dat file in the but1dd1p_trial/dd_data folder that was created by dd_generator (rather than the one created by the user in $WORK/buta/dd_data) because the original $WORK/buta/dd_data/template.dat file is only read by dd_generator and used to create the job-specific file in the job folder. (Of course if you wish all future jobs run in $WORK/buta  to have increased scf cycles, change the other template.dat file in $WORK/buta/dd_data too.)&lt;br /&gt;
&lt;br /&gt;
Re-queue the job.&lt;br /&gt;
&lt;br /&gt;
*To increase the run-time so that a job will finish&lt;br /&gt;
&lt;br /&gt;
Edit the walltime in the .job file in the $HOME directory and re-queue the job.&lt;br /&gt;
&lt;br /&gt;
=&#039;&#039;&#039;Analysis of the results&#039;&#039;&#039;=&lt;br /&gt;
&lt;br /&gt;
The most important files are the output and .res files.&lt;br /&gt;
&lt;br /&gt;
=== Detailed information about files and directories ===&lt;br /&gt;
&lt;br /&gt;
*output&lt;br /&gt;
&lt;br /&gt;
The output contains some standard results:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Time&#039;&#039;&#039;: time in fs.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;CPU&#039;&#039;&#039;:  CPU time in s.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Norm&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;E-tot&#039;&#039;&#039;: the total energy in eV. This value should be conserved (i.e by the end of the run the E-tot value should not be too different  from what it was a time=0).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;E-corr&#039;&#039;&#039;: correlated Hamiltonian energy&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Delta-E&#039;&#039;&#039;: diference between E-tot at time t=0 and the current time t&lt;br /&gt;
&lt;br /&gt;
Note: In a multi-packet run, i.e. when npacket &amp;gt; 1, the total energy and the norm of the wavefunction, as given in the &amp;quot;total&amp;quot; part, are averaged over the packets.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;population&#039;&#039;&#039; : diabatic populations of state 1 and state 2 (in that order) at the current time t&lt;br /&gt;
&lt;br /&gt;
For every mode:	&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt; q &amp;gt;&#039;&#039;&#039;: position expectation value&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;dq&amp;gt;&#039;&#039;&#039;: standard deviation Sqrt[&amp;lt; q&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt; &amp;gt; - &amp;lt; q &amp;gt;&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt; p &amp;gt;&#039;&#039;&#039; : momentum expectation value&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;dq&amp;gt;&#039;&#039;&#039;: standard deviation Sqrt[&amp;lt; p&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt; &amp;gt; - &amp;lt; p &amp;gt;&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*.res&lt;br /&gt;
&lt;br /&gt;
This file contains the energy of each state (diabatic and adiabatic) at each timestep for each gaussian function:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;s&#039;&#039;&#039; is a redundant value in mctdh90.31dv. It is only meaningful in multi-set implementations of mctdh (where there are double the number of gaussian functions than specified: one for each state). (It indicates whether the gaussian function in question is on the lower (1) or upper (2) state. (In the single set implementation, the gaussian functions on each state are identical)).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;e&#039;&#039;&#039; is a label given to each gaussian function&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;t&#039;&#039;&#039; is the current time in fs&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;V1&#039;&#039;&#039; is the energy of the lower adiabatic state at time t&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;V2&#039;&#039;&#039; is the energy of the upper adiabatic state at time t&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;H11&#039;&#039;&#039; is the energy of the lower diabatic state at time t&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;H22&#039;&#039;&#039; is the energy of the upper diabatic state at time t&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;H12&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;q&#039;&#039;&#039; is the list of frequency mass-weighted normal coordinates that describe the geometry at time t&lt;br /&gt;
&lt;br /&gt;
The end of the file will read something like: &lt;br /&gt;
&lt;br /&gt;
     Propagation was successful.&lt;br /&gt;
     &lt;br /&gt;
     Total time     [h:m:s] :    0 :  1 : 21.60&lt;br /&gt;
     &lt;br /&gt;
      ---------------------------------------------------------------------------&lt;br /&gt;
      ------ Host: &amp;quot;cx1-3-2-4&amp;quot; ----------Sat Jan 17 06:50:20 2009&lt;br /&gt;
&lt;br /&gt;
The other most common result is that the calculation aborted because of scf convergence problems in the CASSCF GAUSSIAN calculations. In this case the ouput file will break off after the last complete step and the end of the .res file will read something like:&lt;br /&gt;
     ERROR in subroutine Getddpes :&lt;br /&gt;
     CAS convergence failed for gwp on state:    1    1&lt;br /&gt;
&lt;br /&gt;
If the job terminates due to scf convergence problems, it may be possible to restart it after modifying the .inp and/or .job and/or template.dat files.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*log&lt;br /&gt;
&lt;br /&gt;
This file contains information such as the source code version, type of calculation performed, integrator used, numerical parameters, which data files are opened, any error messages, and much more. The information provided by the log file can be very helpful, in particular when searching for errors. One should always carefully inspect the log file.&lt;br /&gt;
&lt;br /&gt;
* dvr&lt;br /&gt;
&lt;br /&gt;
* oper&lt;br /&gt;
&lt;br /&gt;
*ddpeserr&lt;br /&gt;
&lt;br /&gt;
*input&lt;br /&gt;
&lt;br /&gt;
*op.log&lt;br /&gt;
&lt;br /&gt;
*psi&lt;br /&gt;
&lt;br /&gt;
*check&lt;br /&gt;
&lt;br /&gt;
*auto&lt;br /&gt;
&lt;br /&gt;
*ddpes&lt;br /&gt;
&lt;br /&gt;
*restart&lt;br /&gt;
&lt;br /&gt;
*stop&lt;br /&gt;
&lt;br /&gt;
*speed&lt;br /&gt;
&lt;br /&gt;
*timing&lt;br /&gt;
&lt;br /&gt;
*update&lt;br /&gt;
&lt;br /&gt;
=== Example: butadiene ===&lt;br /&gt;
&lt;br /&gt;
*Examine the end of the output file to check that the calculation ran to completion.&lt;br /&gt;
     &lt;br /&gt;
*Plot the energy of the diabatic and adiabatic states over time (.res file: V1, V2, H11 and H22). Calculate V2-V1 and H22-H11 and plot these also. H12 may also be plotted on the same graph.&lt;br /&gt;
[[Image:EnergyofStates.png]]&lt;br /&gt;
&lt;br /&gt;
The diabatic states cross at 176.2 fs and the adiabatic states cross at 174.5 fs. At a conical intersection, the value V2-V1 will become negative and the H22-H11 will be a minimum (&amp;lt;1eV). Ideally these crossings will occur at the same time. If the diabatisation has worked well, after V2-V1 becomes negative, V2-V1 and H22-H11 will become mirror images (i.e. the diabatic and adiabatic states follow each other). &lt;br /&gt;
&lt;br /&gt;
*Plot the value of the total energy over time (.res file: E-tot). Verify that the Delta-E value is not too large (compare with the total energy (E-tot) at time 0).&lt;br /&gt;
[[Image:TotalEnergy.png]]&lt;br /&gt;
&lt;br /&gt;
*Plot the population of one of the (diabatic) states over time (.res file: population).&lt;br /&gt;
[[Image:Population.png]]&lt;br /&gt;
&lt;br /&gt;
At the conical intersection the population transfer is large. In this case the job has been terminated after 200 fs. Usually the calculation should be continued until the populations stabilise (which obviously has not happened in this case).&lt;br /&gt;
&lt;br /&gt;
=== Making a Movie ===&lt;br /&gt;
&lt;br /&gt;
Navigate to /work/$USER/buta/but1dd1p_trial (the place where the .res file was written). Type:&lt;br /&gt;
 dd_movie.out&lt;br /&gt;
* The script will ask a series of questions and will use the answers provided to create a file that can be read into Molden or iMol.&lt;br /&gt;
&lt;br /&gt;
==== List of questions asked by dd_movie.out====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;blockquote style=&amp;quot;background: white; border: 1px solid black; padding: 1em;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Question&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; &#039;&#039;&#039;Answer for this tutorial&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; &#039;&#039;&#039;Explanation&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the number of atoms?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 10 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the actual number of active coordinates?&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 24 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; In this case all coordinates were active (so there are 3N-6 where N is the number of atoms) &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Name of result file to read?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; but1dd1p_trial.res &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;Ensure that the forward.dat and backward.dat files are located in the current directory in the folder dd_data (they will have been written there automatically)&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Name of movie file to write?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; but1dd1p_trial.xyz &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; Choose any name .xyz &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Which electronic state (s=...)?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 1 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;Choose 1 (this question dates from the multi-set implementation of mctdh where the wavepackets on each state were different)  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Which Gaussian function (e=...)?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 1 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;In this case we have only one wavepacket&amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;The script will now return the number of lines and the initial number of points&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
number of lines:        4684&lt;br /&gt;
initial number of points:        4674&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Maximum number of points you want?&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 4674 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;If you wish to view the movie in Molden you must reduce the number of points to less than 100 (so choose 99 for maximum number of points). iMol can cope with any number of frames so choose the number printed by the script: this number will be reduced and the script will tell you how many points it has written. &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
writing frequency:           2&lt;br /&gt;
   final number of points:        2337&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The .xyz file is ready to be opened in Molden or iMol.&lt;br /&gt;
&lt;br /&gt;
= &#039;&#039;&#039;Current Known Bugs&#039;&#039;&#039; =&lt;br /&gt;
&lt;br /&gt;
Parallelisation:&lt;br /&gt;
&lt;br /&gt;
It is not possible to run calculations in parallel with version 90.31dv (reading the same template.dat file simultaneously by each processor is causing problems). In 90.35tmp this is ok. In 90.4X it will also be fixed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Total energy:&lt;br /&gt;
&lt;br /&gt;
1) The total energy is sometimes &amp;quot;artificially&amp;quot; increased by a lot. If so, try a different integrator or play around with the timestep (may need to get larger or smaller). Or try increasing scf convergence to 10&amp;lt;sup&amp;gt;-12&amp;lt;/sup&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
2) If Delta-E suddenly becomes too large, you can get the following message: &lt;br /&gt;
&amp;quot;ERROR in subroutine WRGAUSSIAN :&lt;br /&gt;
 Do not use $Swap:...$ metastring in file /.../template.dat&amp;quot;&lt;br /&gt;
Often, when getting this message, no more steps are added to the simulation, although the calculation seems to keep running (the integrator keeps trying and failing).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Using the database:&lt;br /&gt;
&lt;br /&gt;
1) Every record generated with mctdh90.31dev and several GWPs is corrupted, so, for now, when launching calculations with more that one wavepacket, use &amp;quot;formdd_none.op&amp;quot; (i.e. do not read nor write the database).&lt;br /&gt;
[For instance, when using dbrdwr and starting from a clean db, all newly generated records are added to the existing database, even if they are identical to records that were already written in the db.]  In 90.35tmp this is ok. In 90.4X it will also be fixed.&lt;br /&gt;
&lt;br /&gt;
2) Records obtained in calculations with one GWP should be OK, but this is still to be confirmed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Impossible case&amp;quot;:&lt;br /&gt;
&lt;br /&gt;
Error message that forces the calculation to stop. It seems to be associated with moving towards an &amp;quot;unexpected&amp;quot; geometry (e.g. a radical).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
State Averaging:&lt;br /&gt;
&lt;br /&gt;
To increase the threshold above which stateaveraging is turned off, increase the default value of 10 (to e.g. 50)  in the line &#039;&#039;ddregions&#039;&#039; in the OPERATOR-SECTION of the .inp file.&lt;br /&gt;
&lt;br /&gt;
= &#039;&#039;&#039;Questions and Modifications to be made to this wiki&#039;&#039;&#039; =&lt;br /&gt;
&lt;br /&gt;
*Why we would ever need to start the gwps from the lower state? To study GS rxns; chemiluminesence (eg glowworms).&lt;br /&gt;
*In terms of Delta-E, how much is too much? ca1eV but shape of E-tot vs time is important: discontiunities or v flat then steep increase are less reliable than smooth gradual increases.&lt;br /&gt;
*Benjamin: Note that Marta has noticed that for very strange geometries, you may receive an error message saying &amp;quot;impossible case&amp;quot;, which stops MCTDH. It is too complicated to explain here. I know where this happens in the code, and I should prevent this error to stop the code but I didn&#039;t have time to fix this. I&#039;ll do it soon.&lt;br /&gt;
*Need to edit/correct section on the DB.&lt;br /&gt;
*Is does unfchk in gdvg03 create corrupted fchk files? G03 is fine. we don&#039;t know about gdvg03 but we don&#039;t care because we probablly won&#039;t use it.&lt;br /&gt;
&lt;br /&gt;
=== [[Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial|back]] ===&lt;/div&gt;</summary>
		<author><name>Vs13</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/run&amp;diff=333946</id>
		<title>Resgrp:comp-photo-dyn/mctdh90.56dv Fulvene Tutorial/run</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/run&amp;diff=333946"/>
		<updated>2013-04-29T10:38:51Z</updated>

		<summary type="html">&lt;p&gt;Vs13: /* List of questions asked by dd_generator */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= &#039;&#039;&#039;Basic use of the MCTDH (DD-vMCG) package&#039;&#039;&#039; =&lt;br /&gt;
&lt;br /&gt;
A script called dd_generator uses GAUSSIAN output files and user input to write the input files for mctdh (DD-vMCG).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Notes&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;The number of gaussian wavepackets (requested by the dd_generator script)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
When studying a new system, start with one (to keep calculation times short). When an appropriate momentum, time period, time step and integrator have been established, increase the number of wavepackets until the results are not changed by adding more. Calculation times are proportional to the number of wavepackets. To ensure efficient use of computing resources, always specify an even number of wavepackets if using more than one processor (since the number of processors can only be an even number: currently 2, 4 or 8).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;The database&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The most time-consuming part of a dynamics run is the GAUSSIAN CASSCF calculations. The results of these calculations can be stored in a database and re-used in future runs. The user must choose whether or not to read and/or write a database. Each calculation will write a separate database so the databases from each run must be combined (and any duplicate entries removed (to save space)).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Initial momentum&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
An initial momentum can be specified to direct the wavepacket to a particular area of the PES (e.g. towards a conical intersection, a transition state or minimum geometry). The momentum is given as a geometry (in frequency mass weighted normal coordinates). The dd_rotation program used for rotation of the conical intersection can be used to transform the coordinates of the desired geometry. If the user requests an initial momentum, dd_generator will search for a file called momentum.dat. If this file is found, dd_generator will ask if the user wishes to use the momentum specified in it. The user can then specify how much energy to give (in eV). Thus, the values in momentum.dat need only be relative values (since they will be multiplied by a scaling factor to provide the total number of eV requested). If there is no file called momentum.dat in the appropriate folder, the user will not be asked to specify a total number of eV to give to the wavepacket(s). A momentum can still be added by manually modifying the .inp file after the dd_generator script has been run (replace the zero values in the fifth column of the section of the .inp file entitled INIT_WF-SECTION). However, it is simpler to create the momentum.dat file mainly because if the user edits the .inp file directly, there is no way of knowing what the total excess energy will be: the values listed in .inp also incorporate magnitude (not just relative values as in momentum.dat). &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Memory and number of processors&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
In template.dat, the memory for each GAUSSIAN CASSCF calculation is specified. In the .job file (created by dd_generator from user input) the total memory is specified. Thus, the memory specified in .job must be at least as great as the memory given in template.dat multiplied by the number of processors.&lt;br /&gt;
&lt;br /&gt;
The GAUSSIAN calculations for each wavepacket will run on a single processor. If the user specifies more than one processor then the calculations for each wavepacket can run simultaneously. To ensure efficient use of computing resources, always specify an even number of wavepackets when using more than one processor (since the number of processors can only be an even number: currently 2, 4 or 8).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Symmetry Considerations&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The way the diabatisation is performed in mctdh90.31dv sometimes leads to complications involving symmetry.  The diabatic states are defined using the conical intersection (or other geometry) described in coin.log. If the molecule is highly symmetric, there will be more than one conical intersection (all identical by symmetry). If the wavepacket moves close to one of the other conical intersections that is not described in coin.log, the diabatic states may not be properly described in this area of the PES. This of course means that the behaviour of the wavepacket(s) is likely to be described poorly also.&lt;br /&gt;
&lt;br /&gt;
If the conical intersection has lower symmetry than the starting material, the symmetry must necessarily be broken during the dynamics calculation before the conical intersection is reached. The breaking of each mode will occur either due to the accumulation of small numerical inaccuracies or if a momentum is given which forces particular modes to break symmetry.&lt;br /&gt;
Mctdh90.31dv uses frequency-mass-weighted normal coordinates to describe molecular geometries. Each frequency-mass-weighted coordinate corresponds to a vibration of the molecule (and there are therefore 3N-6 coordinates). Displacements of atoms are described by a (or a combination of) vibration(s). Each vibration can be displaced in one of two directions: positive or negative. The 3N-6 frequency-mass-weighted coordinates can be classified by symmetry. Whether a particular symmetry mode is broken in the positive or negative direction will be equally likely if no initial momentum is given. Thus for each mode that is broken during a simulation the symmetry may break in the positive direction or the negative direction. There will be 2&amp;lt;sup&amp;gt;x&amp;lt;/sup&amp;gt; possible conical intersections corresponding to a particular starting geometry, where x is the number of modes that must be broken going from starting material to conical intersection.&lt;br /&gt;
&lt;br /&gt;
Additionally, care must be taken over atom labeling. It must be possible to transform the starting material into the conical intersection without permuting atom labels. If the conical intersection has been optimised by following the MEP downhill from the starting material this is not likely to be a problem. However, bear this in mind if drawing the conical intersection by hand.  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Creating the Directories&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* First of all, create a folder in which to save the calculations in your $HOME and $WORK directories. Create a directory in $HOME, and an identical directory in $WORK that has the same path. Keep pathlengths as short as possible (if the total path becomes too long the dynamics code will not run). For simplicity, in this case, we are going to assume that this directory is named &#039;&#039;fulv&#039;&#039; (for fulvene).&lt;br /&gt;
&lt;br /&gt;
     mkdir fulv&lt;br /&gt;
&lt;br /&gt;
* Create a subdirectory called &#039;&#039;&#039;dd_data&#039;&#039;&#039; in the new directory in $WORK.  Thus you should start with:&lt;br /&gt;
&lt;br /&gt;
    /home/$USER/fulv&lt;br /&gt;
    /work/$USER/fulv/dd_data&lt;br /&gt;
&lt;br /&gt;
* Important Note: it is essential to have the same path in both directories, $HOME and $WORK. Do not change the path-names within the HOME/WORK directories. If you re-name or move any subdirectory in your, for example HOME directory, you have to be consistent and make the same changes in the $WORK directory.&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Gaussian Output to be Used as Input for the Dynamics Program&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* Populate the new directory /work/$USER/buta/dd_data with four files which must be named: &#039;&#039;&#039;coin.log&#039;&#039;&#039;; &#039;&#039;&#039;start.fchk&#039;&#039;&#039;; &#039;&#039;&#039;start.log&#039;&#039;&#039;; and &#039;&#039;&#039;template.dat&#039;&#039;&#039;.These files are required in order to run any dynamics simulation, they are the basis that the script dd_generator (see the following section) will use to create the necessary files for running MCTDH (DD-vMCG).  You may also create a file named &amp;quot;&#039;momentum.dat&amp;quot;&#039; if you wish to give a momentum to the wavepacket(s) (this is optional and may be created later instead). &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;coin.log&#039;&#039;&#039; is the logfile resulting from the optimisation of the conical intersection. NB The MCTDH (DD-vMCG) program will rotate the conical intersection before starting the dynamics. To do this it must be provided with three angles which describe the appropriate rotation. There is an Excel spreadsheet available to calculate these angles (see the section entitled &amp;quot;Rotating the Conical Intersection&amp;quot;). NB the structure in coin.log need not necessarily be a true conical intersection: this point is only used for performing the diabatisation. Thus the diabatisation will be exact at this point and will become more approximate the further you are from it (on the PES). If you wish to use a point that is not a conical intersection, simply run a conical intersection optimisation (with only a single step) on the desired geometry. This will create a file with the same layout as a conical intersection optimisation output file (mctdh looks for certain things in this file so if some other type of .log file were used instead, it might not contain the required information). NB the final conical intersection log file must only contain one geometry (otherwise the dynamics program will not know which geometry to use). IS THIS STATEMENT TRUE FOR THIS VERSION??&lt;br /&gt;
&lt;br /&gt;
[[Media:Coin.log]]&lt;br /&gt;
&lt;br /&gt;
(Insert a link here to section &amp;quot;Rotating the Conical Intersection&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;start.chk&#039;&#039;&#039; is the checkpoint file from the high precision vibrational modes of the ground state with state averaged orbitals (with atom types rather than numbers)&lt;br /&gt;
[[Media:Start.chk]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;start.log&#039;&#039;&#039; is the log file from the high precision vibrational modes of the ground state with state averaged orbitals (with atom types rather than numbers)&lt;br /&gt;
&lt;br /&gt;
[[Media:Start.log]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;template.dat&#039;&#039;&#039; is a template for the creation of GAUSSIAN input files by the MCTDH (DD-vMCG) program. It contains all the mutual keywords of the GAUSSIAN calculations which will be run on-the-fly by MCTDH (DD-vMCG). It also contains other information relating to the GAUSSIAN calculations such as memory requirements.&lt;br /&gt;
 &lt;br /&gt;
[[Media:Template.dat]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;momentum.dat&#039;&#039;&#039; is a file containing a list of values to be used as vectors to indicate the momentum to be given to a particular (set of) wavepacket(s). The vectors must be listed in the order of the frequency-mass-weighted normal coordinates specified in the coin.out file (i.e. the output file from dd_rotation program). They give the magnitude of the momentum to be given along each of these frequency-mass-weighted normal coordinates. N.B. The signs of the values here are important!&lt;br /&gt;
We are not giving a momentum in this simulation.&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;The Generator&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* The &amp;quot;generator&amp;quot; script uses the GAUSSIAN output files (above) along with other information supplied by the user to create input files for MCTDH (DD-vMCG).&lt;br /&gt;
&lt;br /&gt;
* Navigate to /home/$USER/fulv and run the generator by typing:&lt;br /&gt;
&lt;br /&gt;
     dd_generator&lt;br /&gt;
&lt;br /&gt;
for the HPC Cluster, or &lt;br /&gt;
&lt;br /&gt;
     dd_generator_MAC&lt;br /&gt;
&lt;br /&gt;
for a MAC OS X system&lt;br /&gt;
&lt;br /&gt;
* Typing dd_generator will run the script automatically. After installing the MCTDH (DD-vMCG) package this command has been added to your list of executable commands. &lt;br /&gt;
&lt;br /&gt;
     ********************************************************************************&lt;br /&gt;
     ********************    -------  DD GENERATOR  --------    *****************&lt;br /&gt;
     ********************************************************************************&lt;br /&gt;
&lt;br /&gt;
* The generator will ask a series of questions and will use the answers provided to prepare the input files for the dynamics program. The questions it asks are listed below along with answers for a trial run on butadiene.&lt;br /&gt;
&lt;br /&gt;
==== List of questions asked by dd_generator====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;blockquote style=&amp;quot;background: white; border: 1px solid black; padding: 1em;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Question&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; &#039;&#039;&#039;Answer for this tutorial&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; &#039;&#039;&#039;Explanation&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Which version of GAUSSIAN should we use? (gdvh01|g03)&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; gdvh01 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;How many shared-memory processors should we use? (1|2|4|8)&lt;br /&gt;
N.B.: (ncpus=1) serial or (ncpus=2|4|8) parallel (omp) version of MCTDH launched as batch job&lt;br /&gt;
and launching monoprocessor GAUSSIAN interactive jobs (nprocshared=1 or no specification)&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 4 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the name of the molecule?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; fulvene &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; The first four letters will be used to name the new files that the generator is creating &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the number of atoms?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 12 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;The number of nuclear degrees of freedom is 30.&lt;br /&gt;
Do you want to reduce the dimensionality? (y|n)&lt;br /&gt;
(N.B.: this can be used also for re-ordering the coordinates)&lt;br /&gt;
&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; n &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the number of nuclear Gaussian functions?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 4 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt; 4 means 4 gaussian on state 1 and 4 gaussian on state 2. This is the &amp;quot;single-set&amp;quot; implementation of MCTDH (DD-vMCG) therefore the gaussian wavepackets on state 1 are the same as the gaussian wavepackets on state 2.&amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;&#039;What is the final propagation time (in fs)?&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 150 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the propagation time step (in fs)?&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 0.1 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the number of electronic states? (1|2)&#039;&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 2 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the highest electronic root?&#039;&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 2 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;From which electronic state should the wavepacket start? (2|1)&#039;&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 2 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Will there be an initial momentum given to the wavepacket? (y|n)&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; n &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Do you want to add a reference label to the name of the case? (y|n)&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; y &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Please type your text:&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; trial &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;This question is only asked if the answer to the previous question was yes.  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What will be the status of the database? (rdwr|rd|wr|none)&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; none &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; Choose rd for read, wr for write etc. In this case we are not going to use the database, but if it was used (rd or rdwr is specified) the script would ask the user to specify the threshold below which the database values will be used (%). In this case the value none is chosen so this question is not asked.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;&amp;gt;&amp;gt; Manual rotation (using Excel spreadsheet) &amp;lt;&amp;lt;&lt;br /&gt;
   Please type the values of the three Euler angles (in deg)&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 0&lt;br /&gt;
0&lt;br /&gt;
0 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Tuple from the dd_rotation method (insert link)&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;The generator will now tell you that it has read the files start.chk from the folder /work/$USER/fulv/dd_data/ .&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Files created by the generator&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* The generator will now tell you that it has read the files start.log, coin.log and momentum.dat (if a momentum has been specified) from the folder /work/$USER/fulv/dd_data/:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
   about to read parameters...&lt;br /&gt;
   ... parameters just read&lt;br /&gt;
   about to read file /work/vs13/fulv/dd_data/start.log                   &lt;br /&gt;
                                                               ...&lt;br /&gt;
   ... file /work/vs13/fulv/dd_data/start.log                             &lt;br /&gt;
                                                      read successfully&lt;br /&gt;
   about to read file /work/vs13/fulv/dd_data/coin.log                    &lt;br /&gt;
                                                               ...&lt;br /&gt;
 *********************************************************&lt;br /&gt;
 Mass-weighted displacement from start to coin:&lt;br /&gt;
    old total norm: 22.070387&lt;br /&gt;
    new total norm:  4.669035&lt;br /&gt;
  vibrational part:  4.669035&lt;br /&gt;
   rotational part:  0.000000&lt;br /&gt;
 *********************************************************&lt;br /&gt;
   ... file /work/vs13/fulv/dd_data/coin.log                             &lt;br /&gt;
                                                      read successfully&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
and that the extraction of data and the creation of a summary file were done successfully. If the Mass-weighted displacement from start to coin appears as NaN it may be because the start.log contains atom numbers rather than atom types. You will need to redo the freq=hpmodes job with atom types.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Data extracted successfully&lt;br /&gt;
The summary of this file generation is in:&lt;br /&gt;
-rw-r--r--  1 vs13 hpc-users 3463 Apr 25 17:09 /home/vs13/fulv/fstodd30d4o_trial.txt&lt;br /&gt;
 &lt;br /&gt;
Do not forget you still can add a momentum, change the integrator, change convergence criteria for GAUSSIAN and MCTDH...&lt;br /&gt;
 &lt;br /&gt;
Do not forget to check the order of the atoms of the conical intersection geometry in /work/dm107/dyn_90dev/dd_data/coin.log&lt;br /&gt;
 &lt;br /&gt;
Now go to your jobscript file and give values to the memory and walltime.&lt;br /&gt;
 &lt;br /&gt;
Good luck!&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* The dd_generator script has generated four files in the same directory (/home/$USER/buta):&lt;br /&gt;
&lt;br /&gt;
# fstodd30d4o_trial.inp  &lt;br /&gt;
# fstodd30d4o_trial.job  &lt;br /&gt;
# fstodd30d4o_trial.txt  &lt;br /&gt;
# fstodd30d4o_none.op&lt;br /&gt;
&lt;br /&gt;
(Link to a more detailed explanation of this files)&lt;br /&gt;
&lt;br /&gt;
* The script has also created some files and directories in /work/$USER/buta where the MCTDH (DD-vMCG) and GAUSSIAN calculations will be stored:&lt;br /&gt;
&lt;br /&gt;
1) Directories:&lt;br /&gt;
&lt;br /&gt;
* fstodd30d4o_trial&lt;br /&gt;
* fstodd30d4o_trial/dd_data&lt;br /&gt;
&lt;br /&gt;
2) Files (in butadd1o_trial/dd_data):&lt;br /&gt;
&lt;br /&gt;
# refdb.dat &lt;br /&gt;
# start.chk  &lt;br /&gt;
# template.dat&lt;br /&gt;
# forward.dat&lt;br /&gt;
# backward.dat&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Modifications to be made to the files before running the dynamics&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* In the .job file in /home/$USER/buta specify the memory and walltime if you are in the HPC Cluster.&lt;br /&gt;
&lt;br /&gt;
* When running a development version of GAUSSIAN (gdvg03 or gdvg01), copy the start.chk file into the folder /work/$USER/dyn_90dev/but1dd1p_trial/dd_data. The unformatted checkpoint file from start.fchk that dd_generator has created is corrupted (due to a bug in formchk in gdvg01).&lt;br /&gt;
has this been fixed?&lt;br /&gt;
&lt;br /&gt;
====Starting from a point other than the Franck-Condon point====&lt;br /&gt;
&lt;br /&gt;
When the molecule is highly symmetric and there is more than one equivalent conical intersection (see above) it may be necessary to direct the wavepacket towards the particular conical intersection described in coin.log. The easiest way to do this is to use an initial momentum but it can also be achieved by distorting the geometry of the starting structure slightly towards the conical intersection (i.e. breaking the symmetry in the appropriate direction(s)).&lt;br /&gt;
&lt;br /&gt;
Define the new starting geometry in frequency-mass-weighted normal coordinates (this can be done using the Excel spreadsheet). One option for selecting the new geometry is to use a fraction of the displacement from the FC point to the conical intersection. &lt;br /&gt;
&lt;br /&gt;
After running dd_generator in the normal way, replace the default FC geometry in the .inp file with the new geometry. This geometry (frequency-mass-weighted-coordinates of the centre of the wavepacket) forms the fourth column in the section entitled INIT_WF-SECTION (in .inp).&lt;br /&gt;
&lt;br /&gt;
If the new geometry is very different from the FC geometry, run a single-point state-averaged-CAS calculation (start from RHF, look at the MOs, alter if needed, and check the final active MOs) and call the resulting .chk file start.chk. Replace the start.chk that would have been used ($WORK/buta/but1dd1p_trial/dd_data/start.chk) with this new start.fchk. If the distorted geometry is close enough to the FC geometry it may not be necessary to generate a new start.chk. (When the distortion is large there is a risk of breaking the active space from FC to the new point. Creating a new start.chk is just a way of making sure the starting active space is OK at the new point.) If you are creating a new start.fchk, run the solver on that geometry (relative to the original starting geometry) in the Excel spreadsheet. Create the new start.chk using the geometry in the orange box (so that it is in the same orientation as the molecule in start.log).&lt;br /&gt;
&lt;br /&gt;
N.B. There is no need to replace start.log even when start.fchk is replaced.&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Running the dynamics&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* Navigate to /home/$USER/buta. Queue the job file. In this case, type:&lt;br /&gt;
&lt;br /&gt;
     qsub butadd1p_trial.job&lt;br /&gt;
&lt;br /&gt;
for MAC OS X users the shell command is already written in butadd1p_trial.job&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;The Database (DB)&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
The DB is made of four binary files:&lt;br /&gt;
geo.db&lt;br /&gt;
pes.db&lt;br /&gt;
gra.db&lt;br /&gt;
hes.db&lt;br /&gt;
They can be used in place of GAUSSIAN calculations to save some&lt;br /&gt;
computation time when you ask for DBrd or DBrdwr.&lt;br /&gt;
&lt;br /&gt;
Each set of geometry, energy, gradient and Hessian (the latter&lt;br /&gt;
three quantities having been calculated by GAUSSIAN for the two&lt;br /&gt;
adiabatic electronic states) will be called a DB record and&lt;br /&gt;
assigned a record number defining the order of occurrence in the DB.&lt;br /&gt;
If you run a calculation where the DB is to be read, in the *.res&lt;br /&gt;
file that you obtain after the calculation is done (file that&lt;br /&gt;
actually is a redirection of the standard output) you will see the&lt;br /&gt;
number of records in the DB as it grows.&lt;br /&gt;
Example (formaldehyde, multi-set 1+1):&lt;br /&gt;
          53&lt;br /&gt;
 s=  1 e=  1 t=   0.000 V1=   0.001 V2=   4.533 H11=   0.001 H22=&lt;br /&gt;
 4.533 H12=   0.000 q=   0.0000    0.0000    0.0000    0.0000&lt;br /&gt;
 0.0000    0.0000&lt;br /&gt;
          53&lt;br /&gt;
 s=  2 e=  1 t=   0.000 V1=   0.001 V2=   4.533 H11=   0.001 H22=&lt;br /&gt;
 4.533 H12=   0.000 q=   0.0000    0.0000    0.0000    0.0000&lt;br /&gt;
 0.0000    0.0000&lt;br /&gt;
          53&lt;br /&gt;
 s=  1 e=  1 t=   0.500 V1=   0.197 V2=   4.701 H11=   0.211 H22=&lt;br /&gt;
 4.687 H12=   0.251 q=  -0.6258   -0.6146    0.6136    0.6049&lt;br /&gt;
 -0.5520   -0.0616&lt;br /&gt;
          53&lt;br /&gt;
 s=  2 e=  1 t=   0.500 V1=   0.000 V2=   4.533 H11=   0.000 H22=&lt;br /&gt;
 4.533 H12=  -0.001 q=   0.0009    0.0009    0.0093   -0.0245&lt;br /&gt;
 -0.0066    0.0001&lt;br /&gt;
          53&lt;br /&gt;
 &lt;br /&gt;
 ERROR in subroutine Distdb :&lt;br /&gt;
 Redundant records in Data Base:   18   19&lt;br /&gt;
 s=  1 e=  1 t=   1.000 V1=   0.469 V2=   4.455 H11=   0.479 H22=&lt;br /&gt;
 4.445 H12=   0.200 q=  -0.4640   -0.5641    1.2594   -0.5871&lt;br /&gt;
 -1.0864   -0.1120&lt;br /&gt;
          53&lt;br /&gt;
 s=  2 e=  1 t=   1.000 V1=   0.001 V2=   4.473 H11=   0.001 H22=&lt;br /&gt;
 4.473 H12=  -0.002 q=   0.0003    0.0004    0.0404   -0.0944&lt;br /&gt;
 -0.0292    0.0001&lt;br /&gt;
          53&lt;br /&gt;
 s=  1 e=  1 t=   1.500 V1=   0.113 V2=   4.543 H11=   0.120 H22=&lt;br /&gt;
 4.536 H12=   0.170 q=  -0.3994   -0.4377    0.5444    0.2057&lt;br /&gt;
 -0.5149   -0.0638&lt;br /&gt;
          53&lt;br /&gt;
 s=  2 e=  1 t=   1.500 V1=   0.013 V2=   4.390 H11=   0.013 H22=&lt;br /&gt;
 4.390 H12=  -0.005 q=   0.0009    0.0010    0.0897   -0.2104&lt;br /&gt;
 -0.0634    0.0002&lt;br /&gt;
          53&lt;br /&gt;
 s=  1 e=  1 t=   2.000 V1=   0.068 V2=   4.431 H11=   0.071 H22=&lt;br /&gt;
 4.428 H12=   0.110 q=  -0.2751   -0.3274    0.4796   -0.0812&lt;br /&gt;
 -0.3880   -0.0605&lt;br /&gt;
          54&lt;br /&gt;
 s=  2 e=  1 t=   2.000 V1=   0.019 V2=   4.367 H11=   0.019 H22=&lt;br /&gt;
 4.367 H12=  -0.009 q=   0.0012    0.0013    0.1563   -0.3658&lt;br /&gt;
 -0.1058    0.0003&lt;br /&gt;
          54&lt;br /&gt;
 s=  1 e=  1 t=   2.500 V1=   0.064 V2=   4.273 H11=   0.065 H22=&lt;br /&gt;
 4.272 H12=  -0.064 q=   0.2559    0.0914    0.1691   -0.7218&lt;br /&gt;
 -0.1052   -0.0595&lt;br /&gt;
          55&lt;br /&gt;
 s=  2 e=  1 t=   2.500 V1=   0.070 V2=   4.258 H11=   0.070 H22=&lt;br /&gt;
 4.257 H12=  -0.013 q=   0.0013    0.0015    0.2384   -0.5572&lt;br /&gt;
 -0.1528    0.0004&lt;br /&gt;
&lt;br /&gt;
Here, we started with a DB of 53 records. It is large enough until&lt;br /&gt;
2 fs, where an additional record is produced, and so on.&lt;br /&gt;
The error message saying here that records 18 and 19 are identical&lt;br /&gt;
will not prevent the code from working. It is just here to remind you&lt;br /&gt;
that the DB is not clean in that it has redundant records.&lt;br /&gt;
This is to be prevented as the DB files might become large quite&lt;br /&gt;
rapidly and all records will be read at each update time (dd_update&lt;br /&gt;
= tout in the integrator section, tout = xxx fs in the run section&lt;br /&gt;
of the *.inp file) for each Gaussian function.&lt;br /&gt;
&lt;br /&gt;
Incidentally, when you want to analyse results written to a *.res&lt;br /&gt;
file, you need to look for lines starting with &amp;quot;s=&amp;quot; (other lines&lt;br /&gt;
are various messages and numbers of DB records).&lt;br /&gt;
The criterion for using the DB is to be seen as a maximum-allowed&lt;br /&gt;
relative difference&lt;br /&gt;
&lt;br /&gt;
So, it is up to you to clean the DB when you see this, and to keep&lt;br /&gt;
this in mind when you concatenate DBs that have branched in their&lt;br /&gt;
past (see more details below).&lt;br /&gt;
&lt;br /&gt;
Also, a given DB depends on the choice of a reference geometry in&lt;br /&gt;
Cartesian coordinates because geometries written to the DB files&lt;br /&gt;
will always be re-orientated with respect to this particular&lt;br /&gt;
geometry. The back and forth transformations are performed by MCTDH (DD-vMCG)&lt;br /&gt;
so you don&#039;t need not worry about this.&lt;br /&gt;
This geometry is written to refdb.dat. It is the starting geometry&lt;br /&gt;
that comes from start.log (the only difference being that it is&lt;br /&gt;
mass-centred).&lt;br /&gt;
As long as you do not change the starting geometry or the nature&lt;br /&gt;
of the electronic states, you can thus keep growing the DB of your&lt;br /&gt;
system.&lt;br /&gt;
&lt;br /&gt;
MANAGING THE DATA BASE&lt;br /&gt;
&lt;br /&gt;
A set of DB  programs can be found in XXXXX. Their roles are&lt;br /&gt;
explained below.&lt;br /&gt;
For now, the sources are in dd_utildev and dd_util.31dv and the&lt;br /&gt;
executables are in mctdh90dev/bin and mctdh90.31dv/bin, so you can&lt;br /&gt;
call them from anywhere, as long as DB files are there.&lt;br /&gt;
&lt;br /&gt;
1) countdb.out: returns the number of records of the current DB&lt;br /&gt;
2) cleandb.out: &amp;quot;brute-force&amp;quot; cleaning of the current DB. This&lt;br /&gt;
might be too long to be run interactively when the number of&lt;br /&gt;
records is too large, because each record needs to be compared to&lt;br /&gt;
each other record (e.g. a DB with ca. 3800 records will take a couple of minutes to clean interactively). If so, run in batch mode (ask me or Marta if you&lt;br /&gt;
have a doubt).&lt;br /&gt;
The cleaned files are:&lt;br /&gt;
geoclean.db&lt;br /&gt;
pesclean.db&lt;br /&gt;
graclean.db&lt;br /&gt;
hesclean.db&lt;br /&gt;
You need to rename them without &#039;clean&#039; for them to be used as a DB.&lt;br /&gt;
3) cutdb.out: allows you to cut out the beginning of a DB.&lt;br /&gt;
This is to be used in the following situation:&lt;br /&gt;
- You start from a mother DB, DB0, assumed to be clean, with N0&lt;br /&gt;
records.&lt;br /&gt;
- You want to use DB0 in two independent calculations. You&lt;br /&gt;
replicate DB0 to daughter DBs, DB1 and DB2.&lt;br /&gt;
- When these calculations are done, DB1 and DB2 have grown to N0+N1&lt;br /&gt;
and N0+N2 records, respectively.&lt;br /&gt;
- You want to concatenate them to create a new mother DB, DB3.&lt;br /&gt;
- DB1 and DB2 have their N0 first records the same. To avoid&lt;br /&gt;
redundant records, you need to cut N0 records from DB2 for example.&lt;br /&gt;
--&amp;gt; go to where DB2 is and use cleandb.out&lt;br /&gt;
The resulting files are:&lt;br /&gt;
geocut.db&lt;br /&gt;
pescut.db&lt;br /&gt;
gracut.db&lt;br /&gt;
hescut.db&lt;br /&gt;
these have N1 records.&lt;br /&gt;
--&amp;gt; rename DB1, for instance geo.db1 etc., and concatenate the files:&lt;br /&gt;
cat geo.db1 geoclean.db &amp;gt; geo.db&lt;br /&gt;
etc.&lt;br /&gt;
- Your new mother DB, DB3, should now have N0+N1+N2 distinct records.&lt;br /&gt;
4) deldb.out: allows you to remove one selected record (for&lt;br /&gt;
instance if corrupted) from the DB if you know its number.&lt;br /&gt;
The resulting files are:&lt;br /&gt;
geodel.db&lt;br /&gt;
pesdel.db&lt;br /&gt;
gradel.db&lt;br /&gt;
hesdel.db&lt;br /&gt;
You need to rename them without &#039;del&#039; for them to be used as a DB.&lt;br /&gt;
5) seedb.out: allows you extract one selected record from the&lt;br /&gt;
binary files for reading it (the record is not removed from the DB).&lt;br /&gt;
The resulting file can be read as a text file (ascii) and is:&lt;br /&gt;
see.db&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Restarting dynamics jobs&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
The examples below make use of the directory and filenames in the examples above.&lt;br /&gt;
&lt;br /&gt;
A dynamics run can be restarted if the job was terminated before completion (e.g if it ran out of time or failed because of convergence problems) or if the user wishes to continue the job for a longer time period than had originally been specified. The program will continue writing the same output file but will overwrite the .res file. Thus the .res file should be saved under a different name to prevent loss of the data calculated in the original run. The .res is not written until the job stops so this can be done after the restart.&lt;br /&gt;
&lt;br /&gt;
*To increase the final propagation time&lt;br /&gt;
&lt;br /&gt;
Retrieve the .inp file (in $HOME/buta) and change &#039;&#039;propagation&#039;&#039; to &#039;&#039;continuation&#039;&#039; in the section entitled RUN-SECTION. Then change the final time &#039;&#039;tfinal&#039;&#039; to a larger value. (NB this new value should include the time already done).&lt;br /&gt;
&lt;br /&gt;
Re-queue the job.&lt;br /&gt;
&lt;br /&gt;
*To increase the number of scf cycles (the most common reason for convergence failure)&lt;br /&gt;
&lt;br /&gt;
Edit the template.dat file in $WORK/buta/but1dd1p_trial/dd_data. Insert scf=(maxcycle=128) on the keyword line (for example). It is important that you change the template.dat file in the but1dd1p_trial/dd_data folder that was created by dd_generator (rather than the one created by the user in $WORK/buta/dd_data) because the original $WORK/buta/dd_data/template.dat file is only read by dd_generator and used to create the job-specific file in the job folder. (Of course if you wish all future jobs run in $WORK/buta  to have increased scf cycles, change the other template.dat file in $WORK/buta/dd_data too.)&lt;br /&gt;
&lt;br /&gt;
Re-queue the job.&lt;br /&gt;
&lt;br /&gt;
*To increase the run-time so that a job will finish&lt;br /&gt;
&lt;br /&gt;
Edit the walltime in the .job file in the $HOME directory and re-queue the job.&lt;br /&gt;
&lt;br /&gt;
=&#039;&#039;&#039;Analysis of the results&#039;&#039;&#039;=&lt;br /&gt;
&lt;br /&gt;
The most important files are the output and .res files.&lt;br /&gt;
&lt;br /&gt;
=== Detailed information about files and directories ===&lt;br /&gt;
&lt;br /&gt;
*output&lt;br /&gt;
&lt;br /&gt;
The output contains some standard results:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Time&#039;&#039;&#039;: time in fs.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;CPU&#039;&#039;&#039;:  CPU time in s.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Norm&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;E-tot&#039;&#039;&#039;: the total energy in eV. This value should be conserved (i.e by the end of the run the E-tot value should not be too different  from what it was a time=0).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;E-corr&#039;&#039;&#039;: correlated Hamiltonian energy&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Delta-E&#039;&#039;&#039;: diference between E-tot at time t=0 and the current time t&lt;br /&gt;
&lt;br /&gt;
Note: In a multi-packet run, i.e. when npacket &amp;gt; 1, the total energy and the norm of the wavefunction, as given in the &amp;quot;total&amp;quot; part, are averaged over the packets.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;population&#039;&#039;&#039; : diabatic populations of state 1 and state 2 (in that order) at the current time t&lt;br /&gt;
&lt;br /&gt;
For every mode:	&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt; q &amp;gt;&#039;&#039;&#039;: position expectation value&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;dq&amp;gt;&#039;&#039;&#039;: standard deviation Sqrt[&amp;lt; q&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt; &amp;gt; - &amp;lt; q &amp;gt;&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt; p &amp;gt;&#039;&#039;&#039; : momentum expectation value&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;dq&amp;gt;&#039;&#039;&#039;: standard deviation Sqrt[&amp;lt; p&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt; &amp;gt; - &amp;lt; p &amp;gt;&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*.res&lt;br /&gt;
&lt;br /&gt;
This file contains the energy of each state (diabatic and adiabatic) at each timestep for each gaussian function:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;s&#039;&#039;&#039; is a redundant value in mctdh90.31dv. It is only meaningful in multi-set implementations of mctdh (where there are double the number of gaussian functions than specified: one for each state). (It indicates whether the gaussian function in question is on the lower (1) or upper (2) state. (In the single set implementation, the gaussian functions on each state are identical)).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;e&#039;&#039;&#039; is a label given to each gaussian function&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;t&#039;&#039;&#039; is the current time in fs&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;V1&#039;&#039;&#039; is the energy of the lower adiabatic state at time t&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;V2&#039;&#039;&#039; is the energy of the upper adiabatic state at time t&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;H11&#039;&#039;&#039; is the energy of the lower diabatic state at time t&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;H22&#039;&#039;&#039; is the energy of the upper diabatic state at time t&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;H12&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;q&#039;&#039;&#039; is the list of frequency mass-weighted normal coordinates that describe the geometry at time t&lt;br /&gt;
&lt;br /&gt;
The end of the file will read something like: &lt;br /&gt;
&lt;br /&gt;
     Propagation was successful.&lt;br /&gt;
     &lt;br /&gt;
     Total time     [h:m:s] :    0 :  1 : 21.60&lt;br /&gt;
     &lt;br /&gt;
      ---------------------------------------------------------------------------&lt;br /&gt;
      ------ Host: &amp;quot;cx1-3-2-4&amp;quot; ----------Sat Jan 17 06:50:20 2009&lt;br /&gt;
&lt;br /&gt;
The other most common result is that the calculation aborted because of scf convergence problems in the CASSCF GAUSSIAN calculations. In this case the ouput file will break off after the last complete step and the end of the .res file will read something like:&lt;br /&gt;
     ERROR in subroutine Getddpes :&lt;br /&gt;
     CAS convergence failed for gwp on state:    1    1&lt;br /&gt;
&lt;br /&gt;
If the job terminates due to scf convergence problems, it may be possible to restart it after modifying the .inp and/or .job and/or template.dat files.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*log&lt;br /&gt;
&lt;br /&gt;
This file contains information such as the source code version, type of calculation performed, integrator used, numerical parameters, which data files are opened, any error messages, and much more. The information provided by the log file can be very helpful, in particular when searching for errors. One should always carefully inspect the log file.&lt;br /&gt;
&lt;br /&gt;
* dvr&lt;br /&gt;
&lt;br /&gt;
* oper&lt;br /&gt;
&lt;br /&gt;
*ddpeserr&lt;br /&gt;
&lt;br /&gt;
*input&lt;br /&gt;
&lt;br /&gt;
*op.log&lt;br /&gt;
&lt;br /&gt;
*psi&lt;br /&gt;
&lt;br /&gt;
*check&lt;br /&gt;
&lt;br /&gt;
*auto&lt;br /&gt;
&lt;br /&gt;
*ddpes&lt;br /&gt;
&lt;br /&gt;
*restart&lt;br /&gt;
&lt;br /&gt;
*stop&lt;br /&gt;
&lt;br /&gt;
*speed&lt;br /&gt;
&lt;br /&gt;
*timing&lt;br /&gt;
&lt;br /&gt;
*update&lt;br /&gt;
&lt;br /&gt;
=== Example: butadiene ===&lt;br /&gt;
&lt;br /&gt;
*Examine the end of the output file to check that the calculation ran to completion.&lt;br /&gt;
     &lt;br /&gt;
*Plot the energy of the diabatic and adiabatic states over time (.res file: V1, V2, H11 and H22). Calculate V2-V1 and H22-H11 and plot these also. H12 may also be plotted on the same graph.&lt;br /&gt;
[[Image:EnergyofStates.png]]&lt;br /&gt;
&lt;br /&gt;
The diabatic states cross at 176.2 fs and the adiabatic states cross at 174.5 fs. At a conical intersection, the value V2-V1 will become negative and the H22-H11 will be a minimum (&amp;lt;1eV). Ideally these crossings will occur at the same time. If the diabatisation has worked well, after V2-V1 becomes negative, V2-V1 and H22-H11 will become mirror images (i.e. the diabatic and adiabatic states follow each other). &lt;br /&gt;
&lt;br /&gt;
*Plot the value of the total energy over time (.res file: E-tot). Verify that the Delta-E value is not too large (compare with the total energy (E-tot) at time 0).&lt;br /&gt;
[[Image:TotalEnergy.png]]&lt;br /&gt;
&lt;br /&gt;
*Plot the population of one of the (diabatic) states over time (.res file: population).&lt;br /&gt;
[[Image:Population.png]]&lt;br /&gt;
&lt;br /&gt;
At the conical intersection the population transfer is large. In this case the job has been terminated after 200 fs. Usually the calculation should be continued until the populations stabilise (which obviously has not happened in this case).&lt;br /&gt;
&lt;br /&gt;
=== Making a Movie ===&lt;br /&gt;
&lt;br /&gt;
Navigate to /work/$USER/buta/but1dd1p_trial (the place where the .res file was written). Type:&lt;br /&gt;
 dd_movie.out&lt;br /&gt;
* The script will ask a series of questions and will use the answers provided to create a file that can be read into Molden or iMol.&lt;br /&gt;
&lt;br /&gt;
==== List of questions asked by dd_movie.out====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;blockquote style=&amp;quot;background: white; border: 1px solid black; padding: 1em;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Question&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; &#039;&#039;&#039;Answer for this tutorial&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; &#039;&#039;&#039;Explanation&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the number of atoms?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 10 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the actual number of active coordinates?&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 24 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; In this case all coordinates were active (so there are 3N-6 where N is the number of atoms) &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Name of result file to read?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; but1dd1p_trial.res &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;Ensure that the forward.dat and backward.dat files are located in the current directory in the folder dd_data (they will have been written there automatically)&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Name of movie file to write?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; but1dd1p_trial.xyz &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; Choose any name .xyz &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Which electronic state (s=...)?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 1 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;Choose 1 (this question dates from the multi-set implementation of mctdh where the wavepackets on each state were different)  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Which Gaussian function (e=...)?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 1 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;In this case we have only one wavepacket&amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;The script will now return the number of lines and the initial number of points&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
number of lines:        4684&lt;br /&gt;
initial number of points:        4674&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Maximum number of points you want?&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 4674 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;If you wish to view the movie in Molden you must reduce the number of points to less than 100 (so choose 99 for maximum number of points). iMol can cope with any number of frames so choose the number printed by the script: this number will be reduced and the script will tell you how many points it has written. &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
writing frequency:           2&lt;br /&gt;
   final number of points:        2337&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The .xyz file is ready to be opened in Molden or iMol.&lt;br /&gt;
&lt;br /&gt;
= &#039;&#039;&#039;Current Known Bugs&#039;&#039;&#039; =&lt;br /&gt;
&lt;br /&gt;
Parallelisation:&lt;br /&gt;
&lt;br /&gt;
It is not possible to run calculations in parallel with version 90.31dv (reading the same template.dat file simultaneously by each processor is causing problems). In 90.35tmp this is ok. In 90.4X it will also be fixed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Total energy:&lt;br /&gt;
&lt;br /&gt;
1) The total energy is sometimes &amp;quot;artificially&amp;quot; increased by a lot. If so, try a different integrator or play around with the timestep (may need to get larger or smaller). Or try increasing scf convergence to 10&amp;lt;sup&amp;gt;-12&amp;lt;/sup&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
2) If Delta-E suddenly becomes too large, you can get the following message: &lt;br /&gt;
&amp;quot;ERROR in subroutine WRGAUSSIAN :&lt;br /&gt;
 Do not use $Swap:...$ metastring in file /.../template.dat&amp;quot;&lt;br /&gt;
Often, when getting this message, no more steps are added to the simulation, although the calculation seems to keep running (the integrator keeps trying and failing).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Using the database:&lt;br /&gt;
&lt;br /&gt;
1) Every record generated with mctdh90.31dev and several GWPs is corrupted, so, for now, when launching calculations with more that one wavepacket, use &amp;quot;formdd_none.op&amp;quot; (i.e. do not read nor write the database).&lt;br /&gt;
[For instance, when using dbrdwr and starting from a clean db, all newly generated records are added to the existing database, even if they are identical to records that were already written in the db.]  In 90.35tmp this is ok. In 90.4X it will also be fixed.&lt;br /&gt;
&lt;br /&gt;
2) Records obtained in calculations with one GWP should be OK, but this is still to be confirmed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Impossible case&amp;quot;:&lt;br /&gt;
&lt;br /&gt;
Error message that forces the calculation to stop. It seems to be associated with moving towards an &amp;quot;unexpected&amp;quot; geometry (e.g. a radical).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
State Averaging:&lt;br /&gt;
&lt;br /&gt;
To increase the threshold above which stateaveraging is turned off, increase the default value of 10 (to e.g. 50)  in the line &#039;&#039;ddregions&#039;&#039; in the OPERATOR-SECTION of the .inp file.&lt;br /&gt;
&lt;br /&gt;
= &#039;&#039;&#039;Questions and Modifications to be made to this wiki&#039;&#039;&#039; =&lt;br /&gt;
&lt;br /&gt;
*Why we would ever need to start the gwps from the lower state? To study GS rxns; chemiluminesence (eg glowworms).&lt;br /&gt;
*In terms of Delta-E, how much is too much? ca1eV but shape of E-tot vs time is important: discontiunities or v flat then steep increase are less reliable than smooth gradual increases.&lt;br /&gt;
*Benjamin: Note that Marta has noticed that for very strange geometries, you may receive an error message saying &amp;quot;impossible case&amp;quot;, which stops MCTDH. It is too complicated to explain here. I know where this happens in the code, and I should prevent this error to stop the code but I didn&#039;t have time to fix this. I&#039;ll do it soon.&lt;br /&gt;
*Need to edit/correct section on the DB.&lt;br /&gt;
*Is does unfchk in gdvg03 create corrupted fchk files? G03 is fine. we don&#039;t know about gdvg03 but we don&#039;t care because we probablly won&#039;t use it.&lt;br /&gt;
&lt;br /&gt;
=== [[Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial|back]] ===&lt;/div&gt;</summary>
		<author><name>Vs13</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/run&amp;diff=333945</id>
		<title>Resgrp:comp-photo-dyn/mctdh90.56dv Fulvene Tutorial/run</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/run&amp;diff=333945"/>
		<updated>2013-04-29T10:37:08Z</updated>

		<summary type="html">&lt;p&gt;Vs13: /* List of questions asked by dd_generator */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= &#039;&#039;&#039;Basic use of the MCTDH (DD-vMCG) package&#039;&#039;&#039; =&lt;br /&gt;
&lt;br /&gt;
A script called dd_generator uses GAUSSIAN output files and user input to write the input files for mctdh (DD-vMCG).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Notes&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;The number of gaussian wavepackets (requested by the dd_generator script)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
When studying a new system, start with one (to keep calculation times short). When an appropriate momentum, time period, time step and integrator have been established, increase the number of wavepackets until the results are not changed by adding more. Calculation times are proportional to the number of wavepackets. To ensure efficient use of computing resources, always specify an even number of wavepackets if using more than one processor (since the number of processors can only be an even number: currently 2, 4 or 8).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;The database&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The most time-consuming part of a dynamics run is the GAUSSIAN CASSCF calculations. The results of these calculations can be stored in a database and re-used in future runs. The user must choose whether or not to read and/or write a database. Each calculation will write a separate database so the databases from each run must be combined (and any duplicate entries removed (to save space)).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Initial momentum&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
An initial momentum can be specified to direct the wavepacket to a particular area of the PES (e.g. towards a conical intersection, a transition state or minimum geometry). The momentum is given as a geometry (in frequency mass weighted normal coordinates). The dd_rotation program used for rotation of the conical intersection can be used to transform the coordinates of the desired geometry. If the user requests an initial momentum, dd_generator will search for a file called momentum.dat. If this file is found, dd_generator will ask if the user wishes to use the momentum specified in it. The user can then specify how much energy to give (in eV). Thus, the values in momentum.dat need only be relative values (since they will be multiplied by a scaling factor to provide the total number of eV requested). If there is no file called momentum.dat in the appropriate folder, the user will not be asked to specify a total number of eV to give to the wavepacket(s). A momentum can still be added by manually modifying the .inp file after the dd_generator script has been run (replace the zero values in the fifth column of the section of the .inp file entitled INIT_WF-SECTION). However, it is simpler to create the momentum.dat file mainly because if the user edits the .inp file directly, there is no way of knowing what the total excess energy will be: the values listed in .inp also incorporate magnitude (not just relative values as in momentum.dat). &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Memory and number of processors&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
In template.dat, the memory for each GAUSSIAN CASSCF calculation is specified. In the .job file (created by dd_generator from user input) the total memory is specified. Thus, the memory specified in .job must be at least as great as the memory given in template.dat multiplied by the number of processors.&lt;br /&gt;
&lt;br /&gt;
The GAUSSIAN calculations for each wavepacket will run on a single processor. If the user specifies more than one processor then the calculations for each wavepacket can run simultaneously. To ensure efficient use of computing resources, always specify an even number of wavepackets when using more than one processor (since the number of processors can only be an even number: currently 2, 4 or 8).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Symmetry Considerations&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The way the diabatisation is performed in mctdh90.31dv sometimes leads to complications involving symmetry.  The diabatic states are defined using the conical intersection (or other geometry) described in coin.log. If the molecule is highly symmetric, there will be more than one conical intersection (all identical by symmetry). If the wavepacket moves close to one of the other conical intersections that is not described in coin.log, the diabatic states may not be properly described in this area of the PES. This of course means that the behaviour of the wavepacket(s) is likely to be described poorly also.&lt;br /&gt;
&lt;br /&gt;
If the conical intersection has lower symmetry than the starting material, the symmetry must necessarily be broken during the dynamics calculation before the conical intersection is reached. The breaking of each mode will occur either due to the accumulation of small numerical inaccuracies or if a momentum is given which forces particular modes to break symmetry.&lt;br /&gt;
Mctdh90.31dv uses frequency-mass-weighted normal coordinates to describe molecular geometries. Each frequency-mass-weighted coordinate corresponds to a vibration of the molecule (and there are therefore 3N-6 coordinates). Displacements of atoms are described by a (or a combination of) vibration(s). Each vibration can be displaced in one of two directions: positive or negative. The 3N-6 frequency-mass-weighted coordinates can be classified by symmetry. Whether a particular symmetry mode is broken in the positive or negative direction will be equally likely if no initial momentum is given. Thus for each mode that is broken during a simulation the symmetry may break in the positive direction or the negative direction. There will be 2&amp;lt;sup&amp;gt;x&amp;lt;/sup&amp;gt; possible conical intersections corresponding to a particular starting geometry, where x is the number of modes that must be broken going from starting material to conical intersection.&lt;br /&gt;
&lt;br /&gt;
Additionally, care must be taken over atom labeling. It must be possible to transform the starting material into the conical intersection without permuting atom labels. If the conical intersection has been optimised by following the MEP downhill from the starting material this is not likely to be a problem. However, bear this in mind if drawing the conical intersection by hand.  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Creating the Directories&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* First of all, create a folder in which to save the calculations in your $HOME and $WORK directories. Create a directory in $HOME, and an identical directory in $WORK that has the same path. Keep pathlengths as short as possible (if the total path becomes too long the dynamics code will not run). For simplicity, in this case, we are going to assume that this directory is named &#039;&#039;fulv&#039;&#039; (for fulvene).&lt;br /&gt;
&lt;br /&gt;
     mkdir fulv&lt;br /&gt;
&lt;br /&gt;
* Create a subdirectory called &#039;&#039;&#039;dd_data&#039;&#039;&#039; in the new directory in $WORK.  Thus you should start with:&lt;br /&gt;
&lt;br /&gt;
    /home/$USER/fulv&lt;br /&gt;
    /work/$USER/fulv/dd_data&lt;br /&gt;
&lt;br /&gt;
* Important Note: it is essential to have the same path in both directories, $HOME and $WORK. Do not change the path-names within the HOME/WORK directories. If you re-name or move any subdirectory in your, for example HOME directory, you have to be consistent and make the same changes in the $WORK directory.&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Gaussian Output to be Used as Input for the Dynamics Program&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* Populate the new directory /work/$USER/buta/dd_data with four files which must be named: &#039;&#039;&#039;coin.log&#039;&#039;&#039;; &#039;&#039;&#039;start.fchk&#039;&#039;&#039;; &#039;&#039;&#039;start.log&#039;&#039;&#039;; and &#039;&#039;&#039;template.dat&#039;&#039;&#039;.These files are required in order to run any dynamics simulation, they are the basis that the script dd_generator (see the following section) will use to create the necessary files for running MCTDH (DD-vMCG).  You may also create a file named &amp;quot;&#039;momentum.dat&amp;quot;&#039; if you wish to give a momentum to the wavepacket(s) (this is optional and may be created later instead). &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;coin.log&#039;&#039;&#039; is the logfile resulting from the optimisation of the conical intersection. NB The MCTDH (DD-vMCG) program will rotate the conical intersection before starting the dynamics. To do this it must be provided with three angles which describe the appropriate rotation. There is an Excel spreadsheet available to calculate these angles (see the section entitled &amp;quot;Rotating the Conical Intersection&amp;quot;). NB the structure in coin.log need not necessarily be a true conical intersection: this point is only used for performing the diabatisation. Thus the diabatisation will be exact at this point and will become more approximate the further you are from it (on the PES). If you wish to use a point that is not a conical intersection, simply run a conical intersection optimisation (with only a single step) on the desired geometry. This will create a file with the same layout as a conical intersection optimisation output file (mctdh looks for certain things in this file so if some other type of .log file were used instead, it might not contain the required information). NB the final conical intersection log file must only contain one geometry (otherwise the dynamics program will not know which geometry to use). IS THIS STATEMENT TRUE FOR THIS VERSION??&lt;br /&gt;
&lt;br /&gt;
[[Media:Coin.log]]&lt;br /&gt;
&lt;br /&gt;
(Insert a link here to section &amp;quot;Rotating the Conical Intersection&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;start.chk&#039;&#039;&#039; is the checkpoint file from the high precision vibrational modes of the ground state with state averaged orbitals (with atom types rather than numbers)&lt;br /&gt;
[[Media:Start.chk]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;start.log&#039;&#039;&#039; is the log file from the high precision vibrational modes of the ground state with state averaged orbitals (with atom types rather than numbers)&lt;br /&gt;
&lt;br /&gt;
[[Media:Start.log]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;template.dat&#039;&#039;&#039; is a template for the creation of GAUSSIAN input files by the MCTDH (DD-vMCG) program. It contains all the mutual keywords of the GAUSSIAN calculations which will be run on-the-fly by MCTDH (DD-vMCG). It also contains other information relating to the GAUSSIAN calculations such as memory requirements.&lt;br /&gt;
 &lt;br /&gt;
[[Media:Template.dat]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;momentum.dat&#039;&#039;&#039; is a file containing a list of values to be used as vectors to indicate the momentum to be given to a particular (set of) wavepacket(s). The vectors must be listed in the order of the frequency-mass-weighted normal coordinates specified in the coin.out file (i.e. the output file from dd_rotation program). They give the magnitude of the momentum to be given along each of these frequency-mass-weighted normal coordinates. N.B. The signs of the values here are important!&lt;br /&gt;
We are not giving a momentum in this simulation.&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;The Generator&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* The &amp;quot;generator&amp;quot; script uses the GAUSSIAN output files (above) along with other information supplied by the user to create input files for MCTDH (DD-vMCG).&lt;br /&gt;
&lt;br /&gt;
* Navigate to /home/$USER/fulv and run the generator by typing:&lt;br /&gt;
&lt;br /&gt;
     dd_generator&lt;br /&gt;
&lt;br /&gt;
for the HPC Cluster, or &lt;br /&gt;
&lt;br /&gt;
     dd_generator_MAC&lt;br /&gt;
&lt;br /&gt;
for a MAC OS X system&lt;br /&gt;
&lt;br /&gt;
* Typing dd_generator will run the script automatically. After installing the MCTDH (DD-vMCG) package this command has been added to your list of executable commands. &lt;br /&gt;
&lt;br /&gt;
     ********************************************************************************&lt;br /&gt;
     ********************    -------  DD GENERATOR  --------    *****************&lt;br /&gt;
     ********************************************************************************&lt;br /&gt;
&lt;br /&gt;
* The generator will ask a series of questions and will use the answers provided to prepare the input files for the dynamics program. The questions it asks are listed below along with answers for a trial run on butadiene.&lt;br /&gt;
&lt;br /&gt;
==== List of questions asked by dd_generator====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;blockquote style=&amp;quot;background: white; border: 1px solid black; padding: 1em;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Question&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; &#039;&#039;&#039;Answer for this tutorial&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; &#039;&#039;&#039;Explanation&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Which version of GAUSSIAN should we use? (gdvh01|g03)&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; gdvh01 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;How many shared-memory processors should we use? (1|2|4|8)&lt;br /&gt;
N.B.: (ncpus=1) serial or (ncpus=2|4|8) parallel (omp) version of MCTDH launched as batch job&lt;br /&gt;
and launching monoprocessor GAUSSIAN interactive jobs (nprocshared=1 or no specification)&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 4 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the name of the molecule?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; fulvene &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; The first four letters will be used to name the new files that the generator is creating &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the number of atoms?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 12 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;The number of nuclear degrees of freedom is 30.&lt;br /&gt;
Do you want to reduce the dimensionality? (y|n)&lt;br /&gt;
(N.B.: this can be used also for re-ordering the coordinates)&lt;br /&gt;
&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; n &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the number of nuclear Gaussian functions?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 4 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt; 4 means 4 gaussian on state 1 and 4 gaussian on state 2. This is the &amp;quot;single-set&amp;quot; implementation of MCTDH (DD-vMCG) therefore the gaussian wavepackets on state 1 are the same as the gaussian wavepackets on state 2.&amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;&#039;What is the final propagation time (in fs)?&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 150 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the propagation time step (in fs)?&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 0.1 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the number of electronic states? (1|2)&#039;&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 2 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the highest electronic root?&#039;&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 2 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;From which electronic state should the wavepacket start? (2|1)&#039;&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 2 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Will there be an initial momentum given to the wavepacket? (y|n)&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; n &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Do you want to add a reference label to the name of the case? (y|n)&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; y &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Please type your text:&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; trial &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;This question is only asked if the answer to the previous question was yes.  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What will be the status of the database? (rdwr|rd|wr|none)&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; none &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; Choose rd for read, wr for write etc. In this case we are not going to use the database, but if it was used (rd or rdwr is specified) the script would ask the user to specify the threshold below which the database values will be used (%). In this case the value none is chosen so this question is not asked.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;&amp;gt;&amp;gt; Manual rotation (using Excel spreadsheet) &amp;lt;&amp;lt;&lt;br /&gt;
   Please type the values of the three Euler angles (in deg)&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 0&lt;br /&gt;
0&lt;br /&gt;
0 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;From the dd_rotation method (insert link)&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;The generator will now tell you that it has read the files start.chk from the folder /work/$USER/fulv/dd_data/ .&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Files created by the generator&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* The generator will now tell you that it has read the files start.log, coin.log and momentum.dat (if a momentum has been specified) from the folder /work/$USER/fulv/dd_data/:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
   about to read parameters...&lt;br /&gt;
   ... parameters just read&lt;br /&gt;
   about to read file /work/vs13/fulv/dd_data/start.log                   &lt;br /&gt;
                                                               ...&lt;br /&gt;
   ... file /work/vs13/fulv/dd_data/start.log                             &lt;br /&gt;
                                                      read successfully&lt;br /&gt;
   about to read file /work/vs13/fulv/dd_data/coin.log                    &lt;br /&gt;
                                                               ...&lt;br /&gt;
 *********************************************************&lt;br /&gt;
 Mass-weighted displacement from start to coin:&lt;br /&gt;
    old total norm: 22.070387&lt;br /&gt;
    new total norm:  4.669035&lt;br /&gt;
  vibrational part:  4.669035&lt;br /&gt;
   rotational part:  0.000000&lt;br /&gt;
 *********************************************************&lt;br /&gt;
   ... file /work/vs13/fulv/dd_data/coin.log                             &lt;br /&gt;
                                                      read successfully&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
and that the extraction of data and the creation of a summary file were done successfully. If the Mass-weighted displacement from start to coin appears as NaN it may be because the start.log contains atom numbers rather than atom types. You will need to redo the freq=hpmodes job with atom types.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Data extracted successfully&lt;br /&gt;
The summary of this file generation is in:&lt;br /&gt;
-rw-r--r--  1 vs13 hpc-users 3463 Apr 25 17:09 /home/vs13/fulv/fstodd30d4o_trial.txt&lt;br /&gt;
 &lt;br /&gt;
Do not forget you still can add a momentum, change the integrator, change convergence criteria for GAUSSIAN and MCTDH...&lt;br /&gt;
 &lt;br /&gt;
Do not forget to check the order of the atoms of the conical intersection geometry in /work/dm107/dyn_90dev/dd_data/coin.log&lt;br /&gt;
 &lt;br /&gt;
Now go to your jobscript file and give values to the memory and walltime.&lt;br /&gt;
 &lt;br /&gt;
Good luck!&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* The dd_generator script has generated four files in the same directory (/home/$USER/buta):&lt;br /&gt;
&lt;br /&gt;
# fstodd30d4o_trial.inp  &lt;br /&gt;
# fstodd30d4o_trial.job  &lt;br /&gt;
# fstodd30d4o_trial.txt  &lt;br /&gt;
# fstodd30d4o_none.op&lt;br /&gt;
&lt;br /&gt;
(Link to a more detailed explanation of this files)&lt;br /&gt;
&lt;br /&gt;
* The script has also created some files and directories in /work/$USER/buta where the MCTDH (DD-vMCG) and GAUSSIAN calculations will be stored:&lt;br /&gt;
&lt;br /&gt;
1) Directories:&lt;br /&gt;
&lt;br /&gt;
* fstodd30d4o_trial&lt;br /&gt;
* fstodd30d4o_trial/dd_data&lt;br /&gt;
&lt;br /&gt;
2) Files (in butadd1o_trial/dd_data):&lt;br /&gt;
&lt;br /&gt;
# refdb.dat &lt;br /&gt;
# start.chk  &lt;br /&gt;
# template.dat&lt;br /&gt;
# forward.dat&lt;br /&gt;
# backward.dat&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Modifications to be made to the files before running the dynamics&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* In the .job file in /home/$USER/buta specify the memory and walltime if you are in the HPC Cluster.&lt;br /&gt;
&lt;br /&gt;
* When running a development version of GAUSSIAN (gdvg03 or gdvg01), copy the start.chk file into the folder /work/$USER/dyn_90dev/but1dd1p_trial/dd_data. The unformatted checkpoint file from start.fchk that dd_generator has created is corrupted (due to a bug in formchk in gdvg01).&lt;br /&gt;
has this been fixed?&lt;br /&gt;
&lt;br /&gt;
====Starting from a point other than the Franck-Condon point====&lt;br /&gt;
&lt;br /&gt;
When the molecule is highly symmetric and there is more than one equivalent conical intersection (see above) it may be necessary to direct the wavepacket towards the particular conical intersection described in coin.log. The easiest way to do this is to use an initial momentum but it can also be achieved by distorting the geometry of the starting structure slightly towards the conical intersection (i.e. breaking the symmetry in the appropriate direction(s)).&lt;br /&gt;
&lt;br /&gt;
Define the new starting geometry in frequency-mass-weighted normal coordinates (this can be done using the Excel spreadsheet). One option for selecting the new geometry is to use a fraction of the displacement from the FC point to the conical intersection. &lt;br /&gt;
&lt;br /&gt;
After running dd_generator in the normal way, replace the default FC geometry in the .inp file with the new geometry. This geometry (frequency-mass-weighted-coordinates of the centre of the wavepacket) forms the fourth column in the section entitled INIT_WF-SECTION (in .inp).&lt;br /&gt;
&lt;br /&gt;
If the new geometry is very different from the FC geometry, run a single-point state-averaged-CAS calculation (start from RHF, look at the MOs, alter if needed, and check the final active MOs) and call the resulting .chk file start.chk. Replace the start.chk that would have been used ($WORK/buta/but1dd1p_trial/dd_data/start.chk) with this new start.fchk. If the distorted geometry is close enough to the FC geometry it may not be necessary to generate a new start.chk. (When the distortion is large there is a risk of breaking the active space from FC to the new point. Creating a new start.chk is just a way of making sure the starting active space is OK at the new point.) If you are creating a new start.fchk, run the solver on that geometry (relative to the original starting geometry) in the Excel spreadsheet. Create the new start.chk using the geometry in the orange box (so that it is in the same orientation as the molecule in start.log).&lt;br /&gt;
&lt;br /&gt;
N.B. There is no need to replace start.log even when start.fchk is replaced.&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Running the dynamics&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* Navigate to /home/$USER/buta. Queue the job file. In this case, type:&lt;br /&gt;
&lt;br /&gt;
     qsub butadd1p_trial.job&lt;br /&gt;
&lt;br /&gt;
for MAC OS X users the shell command is already written in butadd1p_trial.job&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;The Database (DB)&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
The DB is made of four binary files:&lt;br /&gt;
geo.db&lt;br /&gt;
pes.db&lt;br /&gt;
gra.db&lt;br /&gt;
hes.db&lt;br /&gt;
They can be used in place of GAUSSIAN calculations to save some&lt;br /&gt;
computation time when you ask for DBrd or DBrdwr.&lt;br /&gt;
&lt;br /&gt;
Each set of geometry, energy, gradient and Hessian (the latter&lt;br /&gt;
three quantities having been calculated by GAUSSIAN for the two&lt;br /&gt;
adiabatic electronic states) will be called a DB record and&lt;br /&gt;
assigned a record number defining the order of occurrence in the DB.&lt;br /&gt;
If you run a calculation where the DB is to be read, in the *.res&lt;br /&gt;
file that you obtain after the calculation is done (file that&lt;br /&gt;
actually is a redirection of the standard output) you will see the&lt;br /&gt;
number of records in the DB as it grows.&lt;br /&gt;
Example (formaldehyde, multi-set 1+1):&lt;br /&gt;
          53&lt;br /&gt;
 s=  1 e=  1 t=   0.000 V1=   0.001 V2=   4.533 H11=   0.001 H22=&lt;br /&gt;
 4.533 H12=   0.000 q=   0.0000    0.0000    0.0000    0.0000&lt;br /&gt;
 0.0000    0.0000&lt;br /&gt;
          53&lt;br /&gt;
 s=  2 e=  1 t=   0.000 V1=   0.001 V2=   4.533 H11=   0.001 H22=&lt;br /&gt;
 4.533 H12=   0.000 q=   0.0000    0.0000    0.0000    0.0000&lt;br /&gt;
 0.0000    0.0000&lt;br /&gt;
          53&lt;br /&gt;
 s=  1 e=  1 t=   0.500 V1=   0.197 V2=   4.701 H11=   0.211 H22=&lt;br /&gt;
 4.687 H12=   0.251 q=  -0.6258   -0.6146    0.6136    0.6049&lt;br /&gt;
 -0.5520   -0.0616&lt;br /&gt;
          53&lt;br /&gt;
 s=  2 e=  1 t=   0.500 V1=   0.000 V2=   4.533 H11=   0.000 H22=&lt;br /&gt;
 4.533 H12=  -0.001 q=   0.0009    0.0009    0.0093   -0.0245&lt;br /&gt;
 -0.0066    0.0001&lt;br /&gt;
          53&lt;br /&gt;
 &lt;br /&gt;
 ERROR in subroutine Distdb :&lt;br /&gt;
 Redundant records in Data Base:   18   19&lt;br /&gt;
 s=  1 e=  1 t=   1.000 V1=   0.469 V2=   4.455 H11=   0.479 H22=&lt;br /&gt;
 4.445 H12=   0.200 q=  -0.4640   -0.5641    1.2594   -0.5871&lt;br /&gt;
 -1.0864   -0.1120&lt;br /&gt;
          53&lt;br /&gt;
 s=  2 e=  1 t=   1.000 V1=   0.001 V2=   4.473 H11=   0.001 H22=&lt;br /&gt;
 4.473 H12=  -0.002 q=   0.0003    0.0004    0.0404   -0.0944&lt;br /&gt;
 -0.0292    0.0001&lt;br /&gt;
          53&lt;br /&gt;
 s=  1 e=  1 t=   1.500 V1=   0.113 V2=   4.543 H11=   0.120 H22=&lt;br /&gt;
 4.536 H12=   0.170 q=  -0.3994   -0.4377    0.5444    0.2057&lt;br /&gt;
 -0.5149   -0.0638&lt;br /&gt;
          53&lt;br /&gt;
 s=  2 e=  1 t=   1.500 V1=   0.013 V2=   4.390 H11=   0.013 H22=&lt;br /&gt;
 4.390 H12=  -0.005 q=   0.0009    0.0010    0.0897   -0.2104&lt;br /&gt;
 -0.0634    0.0002&lt;br /&gt;
          53&lt;br /&gt;
 s=  1 e=  1 t=   2.000 V1=   0.068 V2=   4.431 H11=   0.071 H22=&lt;br /&gt;
 4.428 H12=   0.110 q=  -0.2751   -0.3274    0.4796   -0.0812&lt;br /&gt;
 -0.3880   -0.0605&lt;br /&gt;
          54&lt;br /&gt;
 s=  2 e=  1 t=   2.000 V1=   0.019 V2=   4.367 H11=   0.019 H22=&lt;br /&gt;
 4.367 H12=  -0.009 q=   0.0012    0.0013    0.1563   -0.3658&lt;br /&gt;
 -0.1058    0.0003&lt;br /&gt;
          54&lt;br /&gt;
 s=  1 e=  1 t=   2.500 V1=   0.064 V2=   4.273 H11=   0.065 H22=&lt;br /&gt;
 4.272 H12=  -0.064 q=   0.2559    0.0914    0.1691   -0.7218&lt;br /&gt;
 -0.1052   -0.0595&lt;br /&gt;
          55&lt;br /&gt;
 s=  2 e=  1 t=   2.500 V1=   0.070 V2=   4.258 H11=   0.070 H22=&lt;br /&gt;
 4.257 H12=  -0.013 q=   0.0013    0.0015    0.2384   -0.5572&lt;br /&gt;
 -0.1528    0.0004&lt;br /&gt;
&lt;br /&gt;
Here, we started with a DB of 53 records. It is large enough until&lt;br /&gt;
2 fs, where an additional record is produced, and so on.&lt;br /&gt;
The error message saying here that records 18 and 19 are identical&lt;br /&gt;
will not prevent the code from working. It is just here to remind you&lt;br /&gt;
that the DB is not clean in that it has redundant records.&lt;br /&gt;
This is to be prevented as the DB files might become large quite&lt;br /&gt;
rapidly and all records will be read at each update time (dd_update&lt;br /&gt;
= tout in the integrator section, tout = xxx fs in the run section&lt;br /&gt;
of the *.inp file) for each Gaussian function.&lt;br /&gt;
&lt;br /&gt;
Incidentally, when you want to analyse results written to a *.res&lt;br /&gt;
file, you need to look for lines starting with &amp;quot;s=&amp;quot; (other lines&lt;br /&gt;
are various messages and numbers of DB records).&lt;br /&gt;
The criterion for using the DB is to be seen as a maximum-allowed&lt;br /&gt;
relative difference&lt;br /&gt;
&lt;br /&gt;
So, it is up to you to clean the DB when you see this, and to keep&lt;br /&gt;
this in mind when you concatenate DBs that have branched in their&lt;br /&gt;
past (see more details below).&lt;br /&gt;
&lt;br /&gt;
Also, a given DB depends on the choice of a reference geometry in&lt;br /&gt;
Cartesian coordinates because geometries written to the DB files&lt;br /&gt;
will always be re-orientated with respect to this particular&lt;br /&gt;
geometry. The back and forth transformations are performed by MCTDH (DD-vMCG)&lt;br /&gt;
so you don&#039;t need not worry about this.&lt;br /&gt;
This geometry is written to refdb.dat. It is the starting geometry&lt;br /&gt;
that comes from start.log (the only difference being that it is&lt;br /&gt;
mass-centred).&lt;br /&gt;
As long as you do not change the starting geometry or the nature&lt;br /&gt;
of the electronic states, you can thus keep growing the DB of your&lt;br /&gt;
system.&lt;br /&gt;
&lt;br /&gt;
MANAGING THE DATA BASE&lt;br /&gt;
&lt;br /&gt;
A set of DB  programs can be found in XXXXX. Their roles are&lt;br /&gt;
explained below.&lt;br /&gt;
For now, the sources are in dd_utildev and dd_util.31dv and the&lt;br /&gt;
executables are in mctdh90dev/bin and mctdh90.31dv/bin, so you can&lt;br /&gt;
call them from anywhere, as long as DB files are there.&lt;br /&gt;
&lt;br /&gt;
1) countdb.out: returns the number of records of the current DB&lt;br /&gt;
2) cleandb.out: &amp;quot;brute-force&amp;quot; cleaning of the current DB. This&lt;br /&gt;
might be too long to be run interactively when the number of&lt;br /&gt;
records is too large, because each record needs to be compared to&lt;br /&gt;
each other record (e.g. a DB with ca. 3800 records will take a couple of minutes to clean interactively). If so, run in batch mode (ask me or Marta if you&lt;br /&gt;
have a doubt).&lt;br /&gt;
The cleaned files are:&lt;br /&gt;
geoclean.db&lt;br /&gt;
pesclean.db&lt;br /&gt;
graclean.db&lt;br /&gt;
hesclean.db&lt;br /&gt;
You need to rename them without &#039;clean&#039; for them to be used as a DB.&lt;br /&gt;
3) cutdb.out: allows you to cut out the beginning of a DB.&lt;br /&gt;
This is to be used in the following situation:&lt;br /&gt;
- You start from a mother DB, DB0, assumed to be clean, with N0&lt;br /&gt;
records.&lt;br /&gt;
- You want to use DB0 in two independent calculations. You&lt;br /&gt;
replicate DB0 to daughter DBs, DB1 and DB2.&lt;br /&gt;
- When these calculations are done, DB1 and DB2 have grown to N0+N1&lt;br /&gt;
and N0+N2 records, respectively.&lt;br /&gt;
- You want to concatenate them to create a new mother DB, DB3.&lt;br /&gt;
- DB1 and DB2 have their N0 first records the same. To avoid&lt;br /&gt;
redundant records, you need to cut N0 records from DB2 for example.&lt;br /&gt;
--&amp;gt; go to where DB2 is and use cleandb.out&lt;br /&gt;
The resulting files are:&lt;br /&gt;
geocut.db&lt;br /&gt;
pescut.db&lt;br /&gt;
gracut.db&lt;br /&gt;
hescut.db&lt;br /&gt;
these have N1 records.&lt;br /&gt;
--&amp;gt; rename DB1, for instance geo.db1 etc., and concatenate the files:&lt;br /&gt;
cat geo.db1 geoclean.db &amp;gt; geo.db&lt;br /&gt;
etc.&lt;br /&gt;
- Your new mother DB, DB3, should now have N0+N1+N2 distinct records.&lt;br /&gt;
4) deldb.out: allows you to remove one selected record (for&lt;br /&gt;
instance if corrupted) from the DB if you know its number.&lt;br /&gt;
The resulting files are:&lt;br /&gt;
geodel.db&lt;br /&gt;
pesdel.db&lt;br /&gt;
gradel.db&lt;br /&gt;
hesdel.db&lt;br /&gt;
You need to rename them without &#039;del&#039; for them to be used as a DB.&lt;br /&gt;
5) seedb.out: allows you extract one selected record from the&lt;br /&gt;
binary files for reading it (the record is not removed from the DB).&lt;br /&gt;
The resulting file can be read as a text file (ascii) and is:&lt;br /&gt;
see.db&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Restarting dynamics jobs&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
The examples below make use of the directory and filenames in the examples above.&lt;br /&gt;
&lt;br /&gt;
A dynamics run can be restarted if the job was terminated before completion (e.g if it ran out of time or failed because of convergence problems) or if the user wishes to continue the job for a longer time period than had originally been specified. The program will continue writing the same output file but will overwrite the .res file. Thus the .res file should be saved under a different name to prevent loss of the data calculated in the original run. The .res is not written until the job stops so this can be done after the restart.&lt;br /&gt;
&lt;br /&gt;
*To increase the final propagation time&lt;br /&gt;
&lt;br /&gt;
Retrieve the .inp file (in $HOME/buta) and change &#039;&#039;propagation&#039;&#039; to &#039;&#039;continuation&#039;&#039; in the section entitled RUN-SECTION. Then change the final time &#039;&#039;tfinal&#039;&#039; to a larger value. (NB this new value should include the time already done).&lt;br /&gt;
&lt;br /&gt;
Re-queue the job.&lt;br /&gt;
&lt;br /&gt;
*To increase the number of scf cycles (the most common reason for convergence failure)&lt;br /&gt;
&lt;br /&gt;
Edit the template.dat file in $WORK/buta/but1dd1p_trial/dd_data. Insert scf=(maxcycle=128) on the keyword line (for example). It is important that you change the template.dat file in the but1dd1p_trial/dd_data folder that was created by dd_generator (rather than the one created by the user in $WORK/buta/dd_data) because the original $WORK/buta/dd_data/template.dat file is only read by dd_generator and used to create the job-specific file in the job folder. (Of course if you wish all future jobs run in $WORK/buta  to have increased scf cycles, change the other template.dat file in $WORK/buta/dd_data too.)&lt;br /&gt;
&lt;br /&gt;
Re-queue the job.&lt;br /&gt;
&lt;br /&gt;
*To increase the run-time so that a job will finish&lt;br /&gt;
&lt;br /&gt;
Edit the walltime in the .job file in the $HOME directory and re-queue the job.&lt;br /&gt;
&lt;br /&gt;
=&#039;&#039;&#039;Analysis of the results&#039;&#039;&#039;=&lt;br /&gt;
&lt;br /&gt;
The most important files are the output and .res files.&lt;br /&gt;
&lt;br /&gt;
=== Detailed information about files and directories ===&lt;br /&gt;
&lt;br /&gt;
*output&lt;br /&gt;
&lt;br /&gt;
The output contains some standard results:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Time&#039;&#039;&#039;: time in fs.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;CPU&#039;&#039;&#039;:  CPU time in s.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Norm&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;E-tot&#039;&#039;&#039;: the total energy in eV. This value should be conserved (i.e by the end of the run the E-tot value should not be too different  from what it was a time=0).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;E-corr&#039;&#039;&#039;: correlated Hamiltonian energy&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Delta-E&#039;&#039;&#039;: diference between E-tot at time t=0 and the current time t&lt;br /&gt;
&lt;br /&gt;
Note: In a multi-packet run, i.e. when npacket &amp;gt; 1, the total energy and the norm of the wavefunction, as given in the &amp;quot;total&amp;quot; part, are averaged over the packets.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;population&#039;&#039;&#039; : diabatic populations of state 1 and state 2 (in that order) at the current time t&lt;br /&gt;
&lt;br /&gt;
For every mode:	&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt; q &amp;gt;&#039;&#039;&#039;: position expectation value&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;dq&amp;gt;&#039;&#039;&#039;: standard deviation Sqrt[&amp;lt; q&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt; &amp;gt; - &amp;lt; q &amp;gt;&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt; p &amp;gt;&#039;&#039;&#039; : momentum expectation value&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;dq&amp;gt;&#039;&#039;&#039;: standard deviation Sqrt[&amp;lt; p&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt; &amp;gt; - &amp;lt; p &amp;gt;&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*.res&lt;br /&gt;
&lt;br /&gt;
This file contains the energy of each state (diabatic and adiabatic) at each timestep for each gaussian function:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;s&#039;&#039;&#039; is a redundant value in mctdh90.31dv. It is only meaningful in multi-set implementations of mctdh (where there are double the number of gaussian functions than specified: one for each state). (It indicates whether the gaussian function in question is on the lower (1) or upper (2) state. (In the single set implementation, the gaussian functions on each state are identical)).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;e&#039;&#039;&#039; is a label given to each gaussian function&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;t&#039;&#039;&#039; is the current time in fs&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;V1&#039;&#039;&#039; is the energy of the lower adiabatic state at time t&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;V2&#039;&#039;&#039; is the energy of the upper adiabatic state at time t&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;H11&#039;&#039;&#039; is the energy of the lower diabatic state at time t&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;H22&#039;&#039;&#039; is the energy of the upper diabatic state at time t&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;H12&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;q&#039;&#039;&#039; is the list of frequency mass-weighted normal coordinates that describe the geometry at time t&lt;br /&gt;
&lt;br /&gt;
The end of the file will read something like: &lt;br /&gt;
&lt;br /&gt;
     Propagation was successful.&lt;br /&gt;
     &lt;br /&gt;
     Total time     [h:m:s] :    0 :  1 : 21.60&lt;br /&gt;
     &lt;br /&gt;
      ---------------------------------------------------------------------------&lt;br /&gt;
      ------ Host: &amp;quot;cx1-3-2-4&amp;quot; ----------Sat Jan 17 06:50:20 2009&lt;br /&gt;
&lt;br /&gt;
The other most common result is that the calculation aborted because of scf convergence problems in the CASSCF GAUSSIAN calculations. In this case the ouput file will break off after the last complete step and the end of the .res file will read something like:&lt;br /&gt;
     ERROR in subroutine Getddpes :&lt;br /&gt;
     CAS convergence failed for gwp on state:    1    1&lt;br /&gt;
&lt;br /&gt;
If the job terminates due to scf convergence problems, it may be possible to restart it after modifying the .inp and/or .job and/or template.dat files.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*log&lt;br /&gt;
&lt;br /&gt;
This file contains information such as the source code version, type of calculation performed, integrator used, numerical parameters, which data files are opened, any error messages, and much more. The information provided by the log file can be very helpful, in particular when searching for errors. One should always carefully inspect the log file.&lt;br /&gt;
&lt;br /&gt;
* dvr&lt;br /&gt;
&lt;br /&gt;
* oper&lt;br /&gt;
&lt;br /&gt;
*ddpeserr&lt;br /&gt;
&lt;br /&gt;
*input&lt;br /&gt;
&lt;br /&gt;
*op.log&lt;br /&gt;
&lt;br /&gt;
*psi&lt;br /&gt;
&lt;br /&gt;
*check&lt;br /&gt;
&lt;br /&gt;
*auto&lt;br /&gt;
&lt;br /&gt;
*ddpes&lt;br /&gt;
&lt;br /&gt;
*restart&lt;br /&gt;
&lt;br /&gt;
*stop&lt;br /&gt;
&lt;br /&gt;
*speed&lt;br /&gt;
&lt;br /&gt;
*timing&lt;br /&gt;
&lt;br /&gt;
*update&lt;br /&gt;
&lt;br /&gt;
=== Example: butadiene ===&lt;br /&gt;
&lt;br /&gt;
*Examine the end of the output file to check that the calculation ran to completion.&lt;br /&gt;
     &lt;br /&gt;
*Plot the energy of the diabatic and adiabatic states over time (.res file: V1, V2, H11 and H22). Calculate V2-V1 and H22-H11 and plot these also. H12 may also be plotted on the same graph.&lt;br /&gt;
[[Image:EnergyofStates.png]]&lt;br /&gt;
&lt;br /&gt;
The diabatic states cross at 176.2 fs and the adiabatic states cross at 174.5 fs. At a conical intersection, the value V2-V1 will become negative and the H22-H11 will be a minimum (&amp;lt;1eV). Ideally these crossings will occur at the same time. If the diabatisation has worked well, after V2-V1 becomes negative, V2-V1 and H22-H11 will become mirror images (i.e. the diabatic and adiabatic states follow each other). &lt;br /&gt;
&lt;br /&gt;
*Plot the value of the total energy over time (.res file: E-tot). Verify that the Delta-E value is not too large (compare with the total energy (E-tot) at time 0).&lt;br /&gt;
[[Image:TotalEnergy.png]]&lt;br /&gt;
&lt;br /&gt;
*Plot the population of one of the (diabatic) states over time (.res file: population).&lt;br /&gt;
[[Image:Population.png]]&lt;br /&gt;
&lt;br /&gt;
At the conical intersection the population transfer is large. In this case the job has been terminated after 200 fs. Usually the calculation should be continued until the populations stabilise (which obviously has not happened in this case).&lt;br /&gt;
&lt;br /&gt;
=== Making a Movie ===&lt;br /&gt;
&lt;br /&gt;
Navigate to /work/$USER/buta/but1dd1p_trial (the place where the .res file was written). Type:&lt;br /&gt;
 dd_movie.out&lt;br /&gt;
* The script will ask a series of questions and will use the answers provided to create a file that can be read into Molden or iMol.&lt;br /&gt;
&lt;br /&gt;
==== List of questions asked by dd_movie.out====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;blockquote style=&amp;quot;background: white; border: 1px solid black; padding: 1em;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Question&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; &#039;&#039;&#039;Answer for this tutorial&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; &#039;&#039;&#039;Explanation&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the number of atoms?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 10 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the actual number of active coordinates?&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 24 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; In this case all coordinates were active (so there are 3N-6 where N is the number of atoms) &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Name of result file to read?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; but1dd1p_trial.res &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;Ensure that the forward.dat and backward.dat files are located in the current directory in the folder dd_data (they will have been written there automatically)&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Name of movie file to write?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; but1dd1p_trial.xyz &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; Choose any name .xyz &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Which electronic state (s=...)?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 1 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;Choose 1 (this question dates from the multi-set implementation of mctdh where the wavepackets on each state were different)  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Which Gaussian function (e=...)?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 1 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;In this case we have only one wavepacket&amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;The script will now return the number of lines and the initial number of points&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
number of lines:        4684&lt;br /&gt;
initial number of points:        4674&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Maximum number of points you want?&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 4674 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;If you wish to view the movie in Molden you must reduce the number of points to less than 100 (so choose 99 for maximum number of points). iMol can cope with any number of frames so choose the number printed by the script: this number will be reduced and the script will tell you how many points it has written. &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
writing frequency:           2&lt;br /&gt;
   final number of points:        2337&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The .xyz file is ready to be opened in Molden or iMol.&lt;br /&gt;
&lt;br /&gt;
= &#039;&#039;&#039;Current Known Bugs&#039;&#039;&#039; =&lt;br /&gt;
&lt;br /&gt;
Parallelisation:&lt;br /&gt;
&lt;br /&gt;
It is not possible to run calculations in parallel with version 90.31dv (reading the same template.dat file simultaneously by each processor is causing problems). In 90.35tmp this is ok. In 90.4X it will also be fixed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Total energy:&lt;br /&gt;
&lt;br /&gt;
1) The total energy is sometimes &amp;quot;artificially&amp;quot; increased by a lot. If so, try a different integrator or play around with the timestep (may need to get larger or smaller). Or try increasing scf convergence to 10&amp;lt;sup&amp;gt;-12&amp;lt;/sup&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
2) If Delta-E suddenly becomes too large, you can get the following message: &lt;br /&gt;
&amp;quot;ERROR in subroutine WRGAUSSIAN :&lt;br /&gt;
 Do not use $Swap:...$ metastring in file /.../template.dat&amp;quot;&lt;br /&gt;
Often, when getting this message, no more steps are added to the simulation, although the calculation seems to keep running (the integrator keeps trying and failing).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Using the database:&lt;br /&gt;
&lt;br /&gt;
1) Every record generated with mctdh90.31dev and several GWPs is corrupted, so, for now, when launching calculations with more that one wavepacket, use &amp;quot;formdd_none.op&amp;quot; (i.e. do not read nor write the database).&lt;br /&gt;
[For instance, when using dbrdwr and starting from a clean db, all newly generated records are added to the existing database, even if they are identical to records that were already written in the db.]  In 90.35tmp this is ok. In 90.4X it will also be fixed.&lt;br /&gt;
&lt;br /&gt;
2) Records obtained in calculations with one GWP should be OK, but this is still to be confirmed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Impossible case&amp;quot;:&lt;br /&gt;
&lt;br /&gt;
Error message that forces the calculation to stop. It seems to be associated with moving towards an &amp;quot;unexpected&amp;quot; geometry (e.g. a radical).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
State Averaging:&lt;br /&gt;
&lt;br /&gt;
To increase the threshold above which stateaveraging is turned off, increase the default value of 10 (to e.g. 50)  in the line &#039;&#039;ddregions&#039;&#039; in the OPERATOR-SECTION of the .inp file.&lt;br /&gt;
&lt;br /&gt;
= &#039;&#039;&#039;Questions and Modifications to be made to this wiki&#039;&#039;&#039; =&lt;br /&gt;
&lt;br /&gt;
*Why we would ever need to start the gwps from the lower state? To study GS rxns; chemiluminesence (eg glowworms).&lt;br /&gt;
*In terms of Delta-E, how much is too much? ca1eV but shape of E-tot vs time is important: discontiunities or v flat then steep increase are less reliable than smooth gradual increases.&lt;br /&gt;
*Benjamin: Note that Marta has noticed that for very strange geometries, you may receive an error message saying &amp;quot;impossible case&amp;quot;, which stops MCTDH. It is too complicated to explain here. I know where this happens in the code, and I should prevent this error to stop the code but I didn&#039;t have time to fix this. I&#039;ll do it soon.&lt;br /&gt;
*Need to edit/correct section on the DB.&lt;br /&gt;
*Is does unfchk in gdvg03 create corrupted fchk files? G03 is fine. we don&#039;t know about gdvg03 but we don&#039;t care because we probablly won&#039;t use it.&lt;br /&gt;
&lt;br /&gt;
=== [[Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial|back]] ===&lt;/div&gt;</summary>
		<author><name>Vs13</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/run&amp;diff=333944</id>
		<title>Resgrp:comp-photo-dyn/mctdh90.56dv Fulvene Tutorial/run</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/run&amp;diff=333944"/>
		<updated>2013-04-29T10:36:45Z</updated>

		<summary type="html">&lt;p&gt;Vs13: /* The Generator */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= &#039;&#039;&#039;Basic use of the MCTDH (DD-vMCG) package&#039;&#039;&#039; =&lt;br /&gt;
&lt;br /&gt;
A script called dd_generator uses GAUSSIAN output files and user input to write the input files for mctdh (DD-vMCG).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Notes&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;The number of gaussian wavepackets (requested by the dd_generator script)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
When studying a new system, start with one (to keep calculation times short). When an appropriate momentum, time period, time step and integrator have been established, increase the number of wavepackets until the results are not changed by adding more. Calculation times are proportional to the number of wavepackets. To ensure efficient use of computing resources, always specify an even number of wavepackets if using more than one processor (since the number of processors can only be an even number: currently 2, 4 or 8).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;The database&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The most time-consuming part of a dynamics run is the GAUSSIAN CASSCF calculations. The results of these calculations can be stored in a database and re-used in future runs. The user must choose whether or not to read and/or write a database. Each calculation will write a separate database so the databases from each run must be combined (and any duplicate entries removed (to save space)).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Initial momentum&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
An initial momentum can be specified to direct the wavepacket to a particular area of the PES (e.g. towards a conical intersection, a transition state or minimum geometry). The momentum is given as a geometry (in frequency mass weighted normal coordinates). The dd_rotation program used for rotation of the conical intersection can be used to transform the coordinates of the desired geometry. If the user requests an initial momentum, dd_generator will search for a file called momentum.dat. If this file is found, dd_generator will ask if the user wishes to use the momentum specified in it. The user can then specify how much energy to give (in eV). Thus, the values in momentum.dat need only be relative values (since they will be multiplied by a scaling factor to provide the total number of eV requested). If there is no file called momentum.dat in the appropriate folder, the user will not be asked to specify a total number of eV to give to the wavepacket(s). A momentum can still be added by manually modifying the .inp file after the dd_generator script has been run (replace the zero values in the fifth column of the section of the .inp file entitled INIT_WF-SECTION). However, it is simpler to create the momentum.dat file mainly because if the user edits the .inp file directly, there is no way of knowing what the total excess energy will be: the values listed in .inp also incorporate magnitude (not just relative values as in momentum.dat). &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Memory and number of processors&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
In template.dat, the memory for each GAUSSIAN CASSCF calculation is specified. In the .job file (created by dd_generator from user input) the total memory is specified. Thus, the memory specified in .job must be at least as great as the memory given in template.dat multiplied by the number of processors.&lt;br /&gt;
&lt;br /&gt;
The GAUSSIAN calculations for each wavepacket will run on a single processor. If the user specifies more than one processor then the calculations for each wavepacket can run simultaneously. To ensure efficient use of computing resources, always specify an even number of wavepackets when using more than one processor (since the number of processors can only be an even number: currently 2, 4 or 8).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Symmetry Considerations&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The way the diabatisation is performed in mctdh90.31dv sometimes leads to complications involving symmetry.  The diabatic states are defined using the conical intersection (or other geometry) described in coin.log. If the molecule is highly symmetric, there will be more than one conical intersection (all identical by symmetry). If the wavepacket moves close to one of the other conical intersections that is not described in coin.log, the diabatic states may not be properly described in this area of the PES. This of course means that the behaviour of the wavepacket(s) is likely to be described poorly also.&lt;br /&gt;
&lt;br /&gt;
If the conical intersection has lower symmetry than the starting material, the symmetry must necessarily be broken during the dynamics calculation before the conical intersection is reached. The breaking of each mode will occur either due to the accumulation of small numerical inaccuracies or if a momentum is given which forces particular modes to break symmetry.&lt;br /&gt;
Mctdh90.31dv uses frequency-mass-weighted normal coordinates to describe molecular geometries. Each frequency-mass-weighted coordinate corresponds to a vibration of the molecule (and there are therefore 3N-6 coordinates). Displacements of atoms are described by a (or a combination of) vibration(s). Each vibration can be displaced in one of two directions: positive or negative. The 3N-6 frequency-mass-weighted coordinates can be classified by symmetry. Whether a particular symmetry mode is broken in the positive or negative direction will be equally likely if no initial momentum is given. Thus for each mode that is broken during a simulation the symmetry may break in the positive direction or the negative direction. There will be 2&amp;lt;sup&amp;gt;x&amp;lt;/sup&amp;gt; possible conical intersections corresponding to a particular starting geometry, where x is the number of modes that must be broken going from starting material to conical intersection.&lt;br /&gt;
&lt;br /&gt;
Additionally, care must be taken over atom labeling. It must be possible to transform the starting material into the conical intersection without permuting atom labels. If the conical intersection has been optimised by following the MEP downhill from the starting material this is not likely to be a problem. However, bear this in mind if drawing the conical intersection by hand.  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Creating the Directories&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* First of all, create a folder in which to save the calculations in your $HOME and $WORK directories. Create a directory in $HOME, and an identical directory in $WORK that has the same path. Keep pathlengths as short as possible (if the total path becomes too long the dynamics code will not run). For simplicity, in this case, we are going to assume that this directory is named &#039;&#039;fulv&#039;&#039; (for fulvene).&lt;br /&gt;
&lt;br /&gt;
     mkdir fulv&lt;br /&gt;
&lt;br /&gt;
* Create a subdirectory called &#039;&#039;&#039;dd_data&#039;&#039;&#039; in the new directory in $WORK.  Thus you should start with:&lt;br /&gt;
&lt;br /&gt;
    /home/$USER/fulv&lt;br /&gt;
    /work/$USER/fulv/dd_data&lt;br /&gt;
&lt;br /&gt;
* Important Note: it is essential to have the same path in both directories, $HOME and $WORK. Do not change the path-names within the HOME/WORK directories. If you re-name or move any subdirectory in your, for example HOME directory, you have to be consistent and make the same changes in the $WORK directory.&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Gaussian Output to be Used as Input for the Dynamics Program&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* Populate the new directory /work/$USER/buta/dd_data with four files which must be named: &#039;&#039;&#039;coin.log&#039;&#039;&#039;; &#039;&#039;&#039;start.fchk&#039;&#039;&#039;; &#039;&#039;&#039;start.log&#039;&#039;&#039;; and &#039;&#039;&#039;template.dat&#039;&#039;&#039;.These files are required in order to run any dynamics simulation, they are the basis that the script dd_generator (see the following section) will use to create the necessary files for running MCTDH (DD-vMCG).  You may also create a file named &amp;quot;&#039;momentum.dat&amp;quot;&#039; if you wish to give a momentum to the wavepacket(s) (this is optional and may be created later instead). &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;coin.log&#039;&#039;&#039; is the logfile resulting from the optimisation of the conical intersection. NB The MCTDH (DD-vMCG) program will rotate the conical intersection before starting the dynamics. To do this it must be provided with three angles which describe the appropriate rotation. There is an Excel spreadsheet available to calculate these angles (see the section entitled &amp;quot;Rotating the Conical Intersection&amp;quot;). NB the structure in coin.log need not necessarily be a true conical intersection: this point is only used for performing the diabatisation. Thus the diabatisation will be exact at this point and will become more approximate the further you are from it (on the PES). If you wish to use a point that is not a conical intersection, simply run a conical intersection optimisation (with only a single step) on the desired geometry. This will create a file with the same layout as a conical intersection optimisation output file (mctdh looks for certain things in this file so if some other type of .log file were used instead, it might not contain the required information). NB the final conical intersection log file must only contain one geometry (otherwise the dynamics program will not know which geometry to use). IS THIS STATEMENT TRUE FOR THIS VERSION??&lt;br /&gt;
&lt;br /&gt;
[[Media:Coin.log]]&lt;br /&gt;
&lt;br /&gt;
(Insert a link here to section &amp;quot;Rotating the Conical Intersection&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;start.chk&#039;&#039;&#039; is the checkpoint file from the high precision vibrational modes of the ground state with state averaged orbitals (with atom types rather than numbers)&lt;br /&gt;
[[Media:Start.chk]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;start.log&#039;&#039;&#039; is the log file from the high precision vibrational modes of the ground state with state averaged orbitals (with atom types rather than numbers)&lt;br /&gt;
&lt;br /&gt;
[[Media:Start.log]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;template.dat&#039;&#039;&#039; is a template for the creation of GAUSSIAN input files by the MCTDH (DD-vMCG) program. It contains all the mutual keywords of the GAUSSIAN calculations which will be run on-the-fly by MCTDH (DD-vMCG). It also contains other information relating to the GAUSSIAN calculations such as memory requirements.&lt;br /&gt;
 &lt;br /&gt;
[[Media:Template.dat]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;momentum.dat&#039;&#039;&#039; is a file containing a list of values to be used as vectors to indicate the momentum to be given to a particular (set of) wavepacket(s). The vectors must be listed in the order of the frequency-mass-weighted normal coordinates specified in the coin.out file (i.e. the output file from dd_rotation program). They give the magnitude of the momentum to be given along each of these frequency-mass-weighted normal coordinates. N.B. The signs of the values here are important!&lt;br /&gt;
We are not giving a momentum in this simulation.&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;The Generator&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* The &amp;quot;generator&amp;quot; script uses the GAUSSIAN output files (above) along with other information supplied by the user to create input files for MCTDH (DD-vMCG).&lt;br /&gt;
&lt;br /&gt;
* Navigate to /home/$USER/fulv and run the generator by typing:&lt;br /&gt;
&lt;br /&gt;
     dd_generator&lt;br /&gt;
&lt;br /&gt;
for the HPC Cluster, or &lt;br /&gt;
&lt;br /&gt;
     dd_generator_MAC&lt;br /&gt;
&lt;br /&gt;
for a MAC OS X system&lt;br /&gt;
&lt;br /&gt;
* Typing dd_generator will run the script automatically. After installing the MCTDH (DD-vMCG) package this command has been added to your list of executable commands. &lt;br /&gt;
&lt;br /&gt;
     ********************************************************************************&lt;br /&gt;
     ********************    -------  DD GENERATOR  --------    *****************&lt;br /&gt;
     ********************************************************************************&lt;br /&gt;
&lt;br /&gt;
* The generator will ask a series of questions and will use the answers provided to prepare the input files for the dynamics program. The questions it asks are listed below along with answers for a trial run on butadiene.&lt;br /&gt;
&lt;br /&gt;
==== List of questions asked by dd_generator====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;blockquote style=&amp;quot;background: white; border: 1px solid black; padding: 1em;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Question&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; &#039;&#039;&#039;Answer for this tutorial&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; &#039;&#039;&#039;Explanation&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Which version of GAUSSIAN should we use? (gdv|g03)&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; gdvh01 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;How many shared-memory processors should we use? (1|2|4|8)&lt;br /&gt;
N.B.: (ncpus=1) serial or (ncpus=2|4|8) parallel (omp) version of MCTDH launched as batch job&lt;br /&gt;
and launching monoprocessor GAUSSIAN interactive jobs (nprocshared=1 or no specification)&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 4 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the name of the molecule?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; fulvene &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; The first four letters will be used to name the new files that the generator is creating &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the number of atoms?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 12 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;The number of nuclear degrees of freedom is 30.&lt;br /&gt;
Do you want to reduce the dimensionality? (y|n)&lt;br /&gt;
(N.B.: this can be used also for re-ordering the coordinates)&lt;br /&gt;
&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; n &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the number of nuclear Gaussian functions?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 4 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt; 4 means 4 gaussian on state 1 and 4 gaussian on state 2. This is the &amp;quot;single-set&amp;quot; implementation of MCTDH (DD-vMCG) therefore the gaussian wavepackets on state 1 are the same as the gaussian wavepackets on state 2.&amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;&#039;What is the final propagation time (in fs)?&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 150 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the propagation time step (in fs)?&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 0.1 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the number of electronic states? (1|2)&#039;&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 2 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the highest electronic root?&#039;&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 2 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;From which electronic state should the wavepacket start? (2|1)&#039;&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 2 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Will there be an initial momentum given to the wavepacket? (y|n)&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; n &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Do you want to add a reference label to the name of the case? (y|n)&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; y &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Please type your text:&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; trial &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;This question is only asked if the answer to the previous question was yes.  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What will be the status of the database? (rdwr|rd|wr|none)&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; none &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; Choose rd for read, wr for write etc. In this case we are not going to use the database, but if it was used (rd or rdwr is specified) the script would ask the user to specify the threshold below which the database values will be used (%). In this case the value none is chosen so this question is not asked.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;&amp;gt;&amp;gt; Manual rotation (using Excel spreadsheet) &amp;lt;&amp;lt;&lt;br /&gt;
   Please type the values of the three Euler angles (in deg)&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 0&lt;br /&gt;
0&lt;br /&gt;
0 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;From the dd_rotation method (insert link)&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;The generator will now tell you that it has read the files start.chk from the folder /work/$USER/fulv/dd_data/ .&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Files created by the generator&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* The generator will now tell you that it has read the files start.log, coin.log and momentum.dat (if a momentum has been specified) from the folder /work/$USER/fulv/dd_data/:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
   about to read parameters...&lt;br /&gt;
   ... parameters just read&lt;br /&gt;
   about to read file /work/vs13/fulv/dd_data/start.log                   &lt;br /&gt;
                                                               ...&lt;br /&gt;
   ... file /work/vs13/fulv/dd_data/start.log                             &lt;br /&gt;
                                                      read successfully&lt;br /&gt;
   about to read file /work/vs13/fulv/dd_data/coin.log                    &lt;br /&gt;
                                                               ...&lt;br /&gt;
 *********************************************************&lt;br /&gt;
 Mass-weighted displacement from start to coin:&lt;br /&gt;
    old total norm: 22.070387&lt;br /&gt;
    new total norm:  4.669035&lt;br /&gt;
  vibrational part:  4.669035&lt;br /&gt;
   rotational part:  0.000000&lt;br /&gt;
 *********************************************************&lt;br /&gt;
   ... file /work/vs13/fulv/dd_data/coin.log                             &lt;br /&gt;
                                                      read successfully&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
and that the extraction of data and the creation of a summary file were done successfully. If the Mass-weighted displacement from start to coin appears as NaN it may be because the start.log contains atom numbers rather than atom types. You will need to redo the freq=hpmodes job with atom types.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Data extracted successfully&lt;br /&gt;
The summary of this file generation is in:&lt;br /&gt;
-rw-r--r--  1 vs13 hpc-users 3463 Apr 25 17:09 /home/vs13/fulv/fstodd30d4o_trial.txt&lt;br /&gt;
 &lt;br /&gt;
Do not forget you still can add a momentum, change the integrator, change convergence criteria for GAUSSIAN and MCTDH...&lt;br /&gt;
 &lt;br /&gt;
Do not forget to check the order of the atoms of the conical intersection geometry in /work/dm107/dyn_90dev/dd_data/coin.log&lt;br /&gt;
 &lt;br /&gt;
Now go to your jobscript file and give values to the memory and walltime.&lt;br /&gt;
 &lt;br /&gt;
Good luck!&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* The dd_generator script has generated four files in the same directory (/home/$USER/buta):&lt;br /&gt;
&lt;br /&gt;
# fstodd30d4o_trial.inp  &lt;br /&gt;
# fstodd30d4o_trial.job  &lt;br /&gt;
# fstodd30d4o_trial.txt  &lt;br /&gt;
# fstodd30d4o_none.op&lt;br /&gt;
&lt;br /&gt;
(Link to a more detailed explanation of this files)&lt;br /&gt;
&lt;br /&gt;
* The script has also created some files and directories in /work/$USER/buta where the MCTDH (DD-vMCG) and GAUSSIAN calculations will be stored:&lt;br /&gt;
&lt;br /&gt;
1) Directories:&lt;br /&gt;
&lt;br /&gt;
* fstodd30d4o_trial&lt;br /&gt;
* fstodd30d4o_trial/dd_data&lt;br /&gt;
&lt;br /&gt;
2) Files (in butadd1o_trial/dd_data):&lt;br /&gt;
&lt;br /&gt;
# refdb.dat &lt;br /&gt;
# start.chk  &lt;br /&gt;
# template.dat&lt;br /&gt;
# forward.dat&lt;br /&gt;
# backward.dat&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Modifications to be made to the files before running the dynamics&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* In the .job file in /home/$USER/buta specify the memory and walltime if you are in the HPC Cluster.&lt;br /&gt;
&lt;br /&gt;
* When running a development version of GAUSSIAN (gdvg03 or gdvg01), copy the start.chk file into the folder /work/$USER/dyn_90dev/but1dd1p_trial/dd_data. The unformatted checkpoint file from start.fchk that dd_generator has created is corrupted (due to a bug in formchk in gdvg01).&lt;br /&gt;
has this been fixed?&lt;br /&gt;
&lt;br /&gt;
====Starting from a point other than the Franck-Condon point====&lt;br /&gt;
&lt;br /&gt;
When the molecule is highly symmetric and there is more than one equivalent conical intersection (see above) it may be necessary to direct the wavepacket towards the particular conical intersection described in coin.log. The easiest way to do this is to use an initial momentum but it can also be achieved by distorting the geometry of the starting structure slightly towards the conical intersection (i.e. breaking the symmetry in the appropriate direction(s)).&lt;br /&gt;
&lt;br /&gt;
Define the new starting geometry in frequency-mass-weighted normal coordinates (this can be done using the Excel spreadsheet). One option for selecting the new geometry is to use a fraction of the displacement from the FC point to the conical intersection. &lt;br /&gt;
&lt;br /&gt;
After running dd_generator in the normal way, replace the default FC geometry in the .inp file with the new geometry. This geometry (frequency-mass-weighted-coordinates of the centre of the wavepacket) forms the fourth column in the section entitled INIT_WF-SECTION (in .inp).&lt;br /&gt;
&lt;br /&gt;
If the new geometry is very different from the FC geometry, run a single-point state-averaged-CAS calculation (start from RHF, look at the MOs, alter if needed, and check the final active MOs) and call the resulting .chk file start.chk. Replace the start.chk that would have been used ($WORK/buta/but1dd1p_trial/dd_data/start.chk) with this new start.fchk. If the distorted geometry is close enough to the FC geometry it may not be necessary to generate a new start.chk. (When the distortion is large there is a risk of breaking the active space from FC to the new point. Creating a new start.chk is just a way of making sure the starting active space is OK at the new point.) If you are creating a new start.fchk, run the solver on that geometry (relative to the original starting geometry) in the Excel spreadsheet. Create the new start.chk using the geometry in the orange box (so that it is in the same orientation as the molecule in start.log).&lt;br /&gt;
&lt;br /&gt;
N.B. There is no need to replace start.log even when start.fchk is replaced.&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Running the dynamics&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* Navigate to /home/$USER/buta. Queue the job file. In this case, type:&lt;br /&gt;
&lt;br /&gt;
     qsub butadd1p_trial.job&lt;br /&gt;
&lt;br /&gt;
for MAC OS X users the shell command is already written in butadd1p_trial.job&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;The Database (DB)&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
The DB is made of four binary files:&lt;br /&gt;
geo.db&lt;br /&gt;
pes.db&lt;br /&gt;
gra.db&lt;br /&gt;
hes.db&lt;br /&gt;
They can be used in place of GAUSSIAN calculations to save some&lt;br /&gt;
computation time when you ask for DBrd or DBrdwr.&lt;br /&gt;
&lt;br /&gt;
Each set of geometry, energy, gradient and Hessian (the latter&lt;br /&gt;
three quantities having been calculated by GAUSSIAN for the two&lt;br /&gt;
adiabatic electronic states) will be called a DB record and&lt;br /&gt;
assigned a record number defining the order of occurrence in the DB.&lt;br /&gt;
If you run a calculation where the DB is to be read, in the *.res&lt;br /&gt;
file that you obtain after the calculation is done (file that&lt;br /&gt;
actually is a redirection of the standard output) you will see the&lt;br /&gt;
number of records in the DB as it grows.&lt;br /&gt;
Example (formaldehyde, multi-set 1+1):&lt;br /&gt;
          53&lt;br /&gt;
 s=  1 e=  1 t=   0.000 V1=   0.001 V2=   4.533 H11=   0.001 H22=&lt;br /&gt;
 4.533 H12=   0.000 q=   0.0000    0.0000    0.0000    0.0000&lt;br /&gt;
 0.0000    0.0000&lt;br /&gt;
          53&lt;br /&gt;
 s=  2 e=  1 t=   0.000 V1=   0.001 V2=   4.533 H11=   0.001 H22=&lt;br /&gt;
 4.533 H12=   0.000 q=   0.0000    0.0000    0.0000    0.0000&lt;br /&gt;
 0.0000    0.0000&lt;br /&gt;
          53&lt;br /&gt;
 s=  1 e=  1 t=   0.500 V1=   0.197 V2=   4.701 H11=   0.211 H22=&lt;br /&gt;
 4.687 H12=   0.251 q=  -0.6258   -0.6146    0.6136    0.6049&lt;br /&gt;
 -0.5520   -0.0616&lt;br /&gt;
          53&lt;br /&gt;
 s=  2 e=  1 t=   0.500 V1=   0.000 V2=   4.533 H11=   0.000 H22=&lt;br /&gt;
 4.533 H12=  -0.001 q=   0.0009    0.0009    0.0093   -0.0245&lt;br /&gt;
 -0.0066    0.0001&lt;br /&gt;
          53&lt;br /&gt;
 &lt;br /&gt;
 ERROR in subroutine Distdb :&lt;br /&gt;
 Redundant records in Data Base:   18   19&lt;br /&gt;
 s=  1 e=  1 t=   1.000 V1=   0.469 V2=   4.455 H11=   0.479 H22=&lt;br /&gt;
 4.445 H12=   0.200 q=  -0.4640   -0.5641    1.2594   -0.5871&lt;br /&gt;
 -1.0864   -0.1120&lt;br /&gt;
          53&lt;br /&gt;
 s=  2 e=  1 t=   1.000 V1=   0.001 V2=   4.473 H11=   0.001 H22=&lt;br /&gt;
 4.473 H12=  -0.002 q=   0.0003    0.0004    0.0404   -0.0944&lt;br /&gt;
 -0.0292    0.0001&lt;br /&gt;
          53&lt;br /&gt;
 s=  1 e=  1 t=   1.500 V1=   0.113 V2=   4.543 H11=   0.120 H22=&lt;br /&gt;
 4.536 H12=   0.170 q=  -0.3994   -0.4377    0.5444    0.2057&lt;br /&gt;
 -0.5149   -0.0638&lt;br /&gt;
          53&lt;br /&gt;
 s=  2 e=  1 t=   1.500 V1=   0.013 V2=   4.390 H11=   0.013 H22=&lt;br /&gt;
 4.390 H12=  -0.005 q=   0.0009    0.0010    0.0897   -0.2104&lt;br /&gt;
 -0.0634    0.0002&lt;br /&gt;
          53&lt;br /&gt;
 s=  1 e=  1 t=   2.000 V1=   0.068 V2=   4.431 H11=   0.071 H22=&lt;br /&gt;
 4.428 H12=   0.110 q=  -0.2751   -0.3274    0.4796   -0.0812&lt;br /&gt;
 -0.3880   -0.0605&lt;br /&gt;
          54&lt;br /&gt;
 s=  2 e=  1 t=   2.000 V1=   0.019 V2=   4.367 H11=   0.019 H22=&lt;br /&gt;
 4.367 H12=  -0.009 q=   0.0012    0.0013    0.1563   -0.3658&lt;br /&gt;
 -0.1058    0.0003&lt;br /&gt;
          54&lt;br /&gt;
 s=  1 e=  1 t=   2.500 V1=   0.064 V2=   4.273 H11=   0.065 H22=&lt;br /&gt;
 4.272 H12=  -0.064 q=   0.2559    0.0914    0.1691   -0.7218&lt;br /&gt;
 -0.1052   -0.0595&lt;br /&gt;
          55&lt;br /&gt;
 s=  2 e=  1 t=   2.500 V1=   0.070 V2=   4.258 H11=   0.070 H22=&lt;br /&gt;
 4.257 H12=  -0.013 q=   0.0013    0.0015    0.2384   -0.5572&lt;br /&gt;
 -0.1528    0.0004&lt;br /&gt;
&lt;br /&gt;
Here, we started with a DB of 53 records. It is large enough until&lt;br /&gt;
2 fs, where an additional record is produced, and so on.&lt;br /&gt;
The error message saying here that records 18 and 19 are identical&lt;br /&gt;
will not prevent the code from working. It is just here to remind you&lt;br /&gt;
that the DB is not clean in that it has redundant records.&lt;br /&gt;
This is to be prevented as the DB files might become large quite&lt;br /&gt;
rapidly and all records will be read at each update time (dd_update&lt;br /&gt;
= tout in the integrator section, tout = xxx fs in the run section&lt;br /&gt;
of the *.inp file) for each Gaussian function.&lt;br /&gt;
&lt;br /&gt;
Incidentally, when you want to analyse results written to a *.res&lt;br /&gt;
file, you need to look for lines starting with &amp;quot;s=&amp;quot; (other lines&lt;br /&gt;
are various messages and numbers of DB records).&lt;br /&gt;
The criterion for using the DB is to be seen as a maximum-allowed&lt;br /&gt;
relative difference&lt;br /&gt;
&lt;br /&gt;
So, it is up to you to clean the DB when you see this, and to keep&lt;br /&gt;
this in mind when you concatenate DBs that have branched in their&lt;br /&gt;
past (see more details below).&lt;br /&gt;
&lt;br /&gt;
Also, a given DB depends on the choice of a reference geometry in&lt;br /&gt;
Cartesian coordinates because geometries written to the DB files&lt;br /&gt;
will always be re-orientated with respect to this particular&lt;br /&gt;
geometry. The back and forth transformations are performed by MCTDH (DD-vMCG)&lt;br /&gt;
so you don&#039;t need not worry about this.&lt;br /&gt;
This geometry is written to refdb.dat. It is the starting geometry&lt;br /&gt;
that comes from start.log (the only difference being that it is&lt;br /&gt;
mass-centred).&lt;br /&gt;
As long as you do not change the starting geometry or the nature&lt;br /&gt;
of the electronic states, you can thus keep growing the DB of your&lt;br /&gt;
system.&lt;br /&gt;
&lt;br /&gt;
MANAGING THE DATA BASE&lt;br /&gt;
&lt;br /&gt;
A set of DB  programs can be found in XXXXX. Their roles are&lt;br /&gt;
explained below.&lt;br /&gt;
For now, the sources are in dd_utildev and dd_util.31dv and the&lt;br /&gt;
executables are in mctdh90dev/bin and mctdh90.31dv/bin, so you can&lt;br /&gt;
call them from anywhere, as long as DB files are there.&lt;br /&gt;
&lt;br /&gt;
1) countdb.out: returns the number of records of the current DB&lt;br /&gt;
2) cleandb.out: &amp;quot;brute-force&amp;quot; cleaning of the current DB. This&lt;br /&gt;
might be too long to be run interactively when the number of&lt;br /&gt;
records is too large, because each record needs to be compared to&lt;br /&gt;
each other record (e.g. a DB with ca. 3800 records will take a couple of minutes to clean interactively). If so, run in batch mode (ask me or Marta if you&lt;br /&gt;
have a doubt).&lt;br /&gt;
The cleaned files are:&lt;br /&gt;
geoclean.db&lt;br /&gt;
pesclean.db&lt;br /&gt;
graclean.db&lt;br /&gt;
hesclean.db&lt;br /&gt;
You need to rename them without &#039;clean&#039; for them to be used as a DB.&lt;br /&gt;
3) cutdb.out: allows you to cut out the beginning of a DB.&lt;br /&gt;
This is to be used in the following situation:&lt;br /&gt;
- You start from a mother DB, DB0, assumed to be clean, with N0&lt;br /&gt;
records.&lt;br /&gt;
- You want to use DB0 in two independent calculations. You&lt;br /&gt;
replicate DB0 to daughter DBs, DB1 and DB2.&lt;br /&gt;
- When these calculations are done, DB1 and DB2 have grown to N0+N1&lt;br /&gt;
and N0+N2 records, respectively.&lt;br /&gt;
- You want to concatenate them to create a new mother DB, DB3.&lt;br /&gt;
- DB1 and DB2 have their N0 first records the same. To avoid&lt;br /&gt;
redundant records, you need to cut N0 records from DB2 for example.&lt;br /&gt;
--&amp;gt; go to where DB2 is and use cleandb.out&lt;br /&gt;
The resulting files are:&lt;br /&gt;
geocut.db&lt;br /&gt;
pescut.db&lt;br /&gt;
gracut.db&lt;br /&gt;
hescut.db&lt;br /&gt;
these have N1 records.&lt;br /&gt;
--&amp;gt; rename DB1, for instance geo.db1 etc., and concatenate the files:&lt;br /&gt;
cat geo.db1 geoclean.db &amp;gt; geo.db&lt;br /&gt;
etc.&lt;br /&gt;
- Your new mother DB, DB3, should now have N0+N1+N2 distinct records.&lt;br /&gt;
4) deldb.out: allows you to remove one selected record (for&lt;br /&gt;
instance if corrupted) from the DB if you know its number.&lt;br /&gt;
The resulting files are:&lt;br /&gt;
geodel.db&lt;br /&gt;
pesdel.db&lt;br /&gt;
gradel.db&lt;br /&gt;
hesdel.db&lt;br /&gt;
You need to rename them without &#039;del&#039; for them to be used as a DB.&lt;br /&gt;
5) seedb.out: allows you extract one selected record from the&lt;br /&gt;
binary files for reading it (the record is not removed from the DB).&lt;br /&gt;
The resulting file can be read as a text file (ascii) and is:&lt;br /&gt;
see.db&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Restarting dynamics jobs&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
The examples below make use of the directory and filenames in the examples above.&lt;br /&gt;
&lt;br /&gt;
A dynamics run can be restarted if the job was terminated before completion (e.g if it ran out of time or failed because of convergence problems) or if the user wishes to continue the job for a longer time period than had originally been specified. The program will continue writing the same output file but will overwrite the .res file. Thus the .res file should be saved under a different name to prevent loss of the data calculated in the original run. The .res is not written until the job stops so this can be done after the restart.&lt;br /&gt;
&lt;br /&gt;
*To increase the final propagation time&lt;br /&gt;
&lt;br /&gt;
Retrieve the .inp file (in $HOME/buta) and change &#039;&#039;propagation&#039;&#039; to &#039;&#039;continuation&#039;&#039; in the section entitled RUN-SECTION. Then change the final time &#039;&#039;tfinal&#039;&#039; to a larger value. (NB this new value should include the time already done).&lt;br /&gt;
&lt;br /&gt;
Re-queue the job.&lt;br /&gt;
&lt;br /&gt;
*To increase the number of scf cycles (the most common reason for convergence failure)&lt;br /&gt;
&lt;br /&gt;
Edit the template.dat file in $WORK/buta/but1dd1p_trial/dd_data. Insert scf=(maxcycle=128) on the keyword line (for example). It is important that you change the template.dat file in the but1dd1p_trial/dd_data folder that was created by dd_generator (rather than the one created by the user in $WORK/buta/dd_data) because the original $WORK/buta/dd_data/template.dat file is only read by dd_generator and used to create the job-specific file in the job folder. (Of course if you wish all future jobs run in $WORK/buta  to have increased scf cycles, change the other template.dat file in $WORK/buta/dd_data too.)&lt;br /&gt;
&lt;br /&gt;
Re-queue the job.&lt;br /&gt;
&lt;br /&gt;
*To increase the run-time so that a job will finish&lt;br /&gt;
&lt;br /&gt;
Edit the walltime in the .job file in the $HOME directory and re-queue the job.&lt;br /&gt;
&lt;br /&gt;
=&#039;&#039;&#039;Analysis of the results&#039;&#039;&#039;=&lt;br /&gt;
&lt;br /&gt;
The most important files are the output and .res files.&lt;br /&gt;
&lt;br /&gt;
=== Detailed information about files and directories ===&lt;br /&gt;
&lt;br /&gt;
*output&lt;br /&gt;
&lt;br /&gt;
The output contains some standard results:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Time&#039;&#039;&#039;: time in fs.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;CPU&#039;&#039;&#039;:  CPU time in s.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Norm&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;E-tot&#039;&#039;&#039;: the total energy in eV. This value should be conserved (i.e by the end of the run the E-tot value should not be too different  from what it was a time=0).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;E-corr&#039;&#039;&#039;: correlated Hamiltonian energy&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Delta-E&#039;&#039;&#039;: diference between E-tot at time t=0 and the current time t&lt;br /&gt;
&lt;br /&gt;
Note: In a multi-packet run, i.e. when npacket &amp;gt; 1, the total energy and the norm of the wavefunction, as given in the &amp;quot;total&amp;quot; part, are averaged over the packets.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;population&#039;&#039;&#039; : diabatic populations of state 1 and state 2 (in that order) at the current time t&lt;br /&gt;
&lt;br /&gt;
For every mode:	&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt; q &amp;gt;&#039;&#039;&#039;: position expectation value&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;dq&amp;gt;&#039;&#039;&#039;: standard deviation Sqrt[&amp;lt; q&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt; &amp;gt; - &amp;lt; q &amp;gt;&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt; p &amp;gt;&#039;&#039;&#039; : momentum expectation value&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;dq&amp;gt;&#039;&#039;&#039;: standard deviation Sqrt[&amp;lt; p&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt; &amp;gt; - &amp;lt; p &amp;gt;&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*.res&lt;br /&gt;
&lt;br /&gt;
This file contains the energy of each state (diabatic and adiabatic) at each timestep for each gaussian function:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;s&#039;&#039;&#039; is a redundant value in mctdh90.31dv. It is only meaningful in multi-set implementations of mctdh (where there are double the number of gaussian functions than specified: one for each state). (It indicates whether the gaussian function in question is on the lower (1) or upper (2) state. (In the single set implementation, the gaussian functions on each state are identical)).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;e&#039;&#039;&#039; is a label given to each gaussian function&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;t&#039;&#039;&#039; is the current time in fs&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;V1&#039;&#039;&#039; is the energy of the lower adiabatic state at time t&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;V2&#039;&#039;&#039; is the energy of the upper adiabatic state at time t&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;H11&#039;&#039;&#039; is the energy of the lower diabatic state at time t&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;H22&#039;&#039;&#039; is the energy of the upper diabatic state at time t&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;H12&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;q&#039;&#039;&#039; is the list of frequency mass-weighted normal coordinates that describe the geometry at time t&lt;br /&gt;
&lt;br /&gt;
The end of the file will read something like: &lt;br /&gt;
&lt;br /&gt;
     Propagation was successful.&lt;br /&gt;
     &lt;br /&gt;
     Total time     [h:m:s] :    0 :  1 : 21.60&lt;br /&gt;
     &lt;br /&gt;
      ---------------------------------------------------------------------------&lt;br /&gt;
      ------ Host: &amp;quot;cx1-3-2-4&amp;quot; ----------Sat Jan 17 06:50:20 2009&lt;br /&gt;
&lt;br /&gt;
The other most common result is that the calculation aborted because of scf convergence problems in the CASSCF GAUSSIAN calculations. In this case the ouput file will break off after the last complete step and the end of the .res file will read something like:&lt;br /&gt;
     ERROR in subroutine Getddpes :&lt;br /&gt;
     CAS convergence failed for gwp on state:    1    1&lt;br /&gt;
&lt;br /&gt;
If the job terminates due to scf convergence problems, it may be possible to restart it after modifying the .inp and/or .job and/or template.dat files.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*log&lt;br /&gt;
&lt;br /&gt;
This file contains information such as the source code version, type of calculation performed, integrator used, numerical parameters, which data files are opened, any error messages, and much more. The information provided by the log file can be very helpful, in particular when searching for errors. One should always carefully inspect the log file.&lt;br /&gt;
&lt;br /&gt;
* dvr&lt;br /&gt;
&lt;br /&gt;
* oper&lt;br /&gt;
&lt;br /&gt;
*ddpeserr&lt;br /&gt;
&lt;br /&gt;
*input&lt;br /&gt;
&lt;br /&gt;
*op.log&lt;br /&gt;
&lt;br /&gt;
*psi&lt;br /&gt;
&lt;br /&gt;
*check&lt;br /&gt;
&lt;br /&gt;
*auto&lt;br /&gt;
&lt;br /&gt;
*ddpes&lt;br /&gt;
&lt;br /&gt;
*restart&lt;br /&gt;
&lt;br /&gt;
*stop&lt;br /&gt;
&lt;br /&gt;
*speed&lt;br /&gt;
&lt;br /&gt;
*timing&lt;br /&gt;
&lt;br /&gt;
*update&lt;br /&gt;
&lt;br /&gt;
=== Example: butadiene ===&lt;br /&gt;
&lt;br /&gt;
*Examine the end of the output file to check that the calculation ran to completion.&lt;br /&gt;
     &lt;br /&gt;
*Plot the energy of the diabatic and adiabatic states over time (.res file: V1, V2, H11 and H22). Calculate V2-V1 and H22-H11 and plot these also. H12 may also be plotted on the same graph.&lt;br /&gt;
[[Image:EnergyofStates.png]]&lt;br /&gt;
&lt;br /&gt;
The diabatic states cross at 176.2 fs and the adiabatic states cross at 174.5 fs. At a conical intersection, the value V2-V1 will become negative and the H22-H11 will be a minimum (&amp;lt;1eV). Ideally these crossings will occur at the same time. If the diabatisation has worked well, after V2-V1 becomes negative, V2-V1 and H22-H11 will become mirror images (i.e. the diabatic and adiabatic states follow each other). &lt;br /&gt;
&lt;br /&gt;
*Plot the value of the total energy over time (.res file: E-tot). Verify that the Delta-E value is not too large (compare with the total energy (E-tot) at time 0).&lt;br /&gt;
[[Image:TotalEnergy.png]]&lt;br /&gt;
&lt;br /&gt;
*Plot the population of one of the (diabatic) states over time (.res file: population).&lt;br /&gt;
[[Image:Population.png]]&lt;br /&gt;
&lt;br /&gt;
At the conical intersection the population transfer is large. In this case the job has been terminated after 200 fs. Usually the calculation should be continued until the populations stabilise (which obviously has not happened in this case).&lt;br /&gt;
&lt;br /&gt;
=== Making a Movie ===&lt;br /&gt;
&lt;br /&gt;
Navigate to /work/$USER/buta/but1dd1p_trial (the place where the .res file was written). Type:&lt;br /&gt;
 dd_movie.out&lt;br /&gt;
* The script will ask a series of questions and will use the answers provided to create a file that can be read into Molden or iMol.&lt;br /&gt;
&lt;br /&gt;
==== List of questions asked by dd_movie.out====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;blockquote style=&amp;quot;background: white; border: 1px solid black; padding: 1em;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Question&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; &#039;&#039;&#039;Answer for this tutorial&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; &#039;&#039;&#039;Explanation&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the number of atoms?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 10 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the actual number of active coordinates?&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 24 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; In this case all coordinates were active (so there are 3N-6 where N is the number of atoms) &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Name of result file to read?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; but1dd1p_trial.res &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;Ensure that the forward.dat and backward.dat files are located in the current directory in the folder dd_data (they will have been written there automatically)&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Name of movie file to write?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; but1dd1p_trial.xyz &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; Choose any name .xyz &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Which electronic state (s=...)?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 1 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;Choose 1 (this question dates from the multi-set implementation of mctdh where the wavepackets on each state were different)  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Which Gaussian function (e=...)?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 1 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;In this case we have only one wavepacket&amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;The script will now return the number of lines and the initial number of points&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
number of lines:        4684&lt;br /&gt;
initial number of points:        4674&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Maximum number of points you want?&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 4674 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;If you wish to view the movie in Molden you must reduce the number of points to less than 100 (so choose 99 for maximum number of points). iMol can cope with any number of frames so choose the number printed by the script: this number will be reduced and the script will tell you how many points it has written. &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
writing frequency:           2&lt;br /&gt;
   final number of points:        2337&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The .xyz file is ready to be opened in Molden or iMol.&lt;br /&gt;
&lt;br /&gt;
= &#039;&#039;&#039;Current Known Bugs&#039;&#039;&#039; =&lt;br /&gt;
&lt;br /&gt;
Parallelisation:&lt;br /&gt;
&lt;br /&gt;
It is not possible to run calculations in parallel with version 90.31dv (reading the same template.dat file simultaneously by each processor is causing problems). In 90.35tmp this is ok. In 90.4X it will also be fixed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Total energy:&lt;br /&gt;
&lt;br /&gt;
1) The total energy is sometimes &amp;quot;artificially&amp;quot; increased by a lot. If so, try a different integrator or play around with the timestep (may need to get larger or smaller). Or try increasing scf convergence to 10&amp;lt;sup&amp;gt;-12&amp;lt;/sup&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
2) If Delta-E suddenly becomes too large, you can get the following message: &lt;br /&gt;
&amp;quot;ERROR in subroutine WRGAUSSIAN :&lt;br /&gt;
 Do not use $Swap:...$ metastring in file /.../template.dat&amp;quot;&lt;br /&gt;
Often, when getting this message, no more steps are added to the simulation, although the calculation seems to keep running (the integrator keeps trying and failing).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Using the database:&lt;br /&gt;
&lt;br /&gt;
1) Every record generated with mctdh90.31dev and several GWPs is corrupted, so, for now, when launching calculations with more that one wavepacket, use &amp;quot;formdd_none.op&amp;quot; (i.e. do not read nor write the database).&lt;br /&gt;
[For instance, when using dbrdwr and starting from a clean db, all newly generated records are added to the existing database, even if they are identical to records that were already written in the db.]  In 90.35tmp this is ok. In 90.4X it will also be fixed.&lt;br /&gt;
&lt;br /&gt;
2) Records obtained in calculations with one GWP should be OK, but this is still to be confirmed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Impossible case&amp;quot;:&lt;br /&gt;
&lt;br /&gt;
Error message that forces the calculation to stop. It seems to be associated with moving towards an &amp;quot;unexpected&amp;quot; geometry (e.g. a radical).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
State Averaging:&lt;br /&gt;
&lt;br /&gt;
To increase the threshold above which stateaveraging is turned off, increase the default value of 10 (to e.g. 50)  in the line &#039;&#039;ddregions&#039;&#039; in the OPERATOR-SECTION of the .inp file.&lt;br /&gt;
&lt;br /&gt;
= &#039;&#039;&#039;Questions and Modifications to be made to this wiki&#039;&#039;&#039; =&lt;br /&gt;
&lt;br /&gt;
*Why we would ever need to start the gwps from the lower state? To study GS rxns; chemiluminesence (eg glowworms).&lt;br /&gt;
*In terms of Delta-E, how much is too much? ca1eV but shape of E-tot vs time is important: discontiunities or v flat then steep increase are less reliable than smooth gradual increases.&lt;br /&gt;
*Benjamin: Note that Marta has noticed that for very strange geometries, you may receive an error message saying &amp;quot;impossible case&amp;quot;, which stops MCTDH. It is too complicated to explain here. I know where this happens in the code, and I should prevent this error to stop the code but I didn&#039;t have time to fix this. I&#039;ll do it soon.&lt;br /&gt;
*Need to edit/correct section on the DB.&lt;br /&gt;
*Is does unfchk in gdvg03 create corrupted fchk files? G03 is fine. we don&#039;t know about gdvg03 but we don&#039;t care because we probablly won&#039;t use it.&lt;br /&gt;
&lt;br /&gt;
=== [[Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial|back]] ===&lt;/div&gt;</summary>
		<author><name>Vs13</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/run&amp;diff=333941</id>
		<title>Resgrp:comp-photo-dyn/mctdh90.56dv Fulvene Tutorial/run</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/run&amp;diff=333941"/>
		<updated>2013-04-25T16:51:00Z</updated>

		<summary type="html">&lt;p&gt;Vs13: /* Basic use of the MCTDH (DD-vMCG) package */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= &#039;&#039;&#039;Basic use of the MCTDH (DD-vMCG) package&#039;&#039;&#039; =&lt;br /&gt;
&lt;br /&gt;
A script called dd_generator uses GAUSSIAN output files and user input to write the input files for mctdh (DD-vMCG).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Notes&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;The number of gaussian wavepackets (requested by the dd_generator script)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
When studying a new system, start with one (to keep calculation times short). When an appropriate momentum, time period, time step and integrator have been established, increase the number of wavepackets until the results are not changed by adding more. Calculation times are proportional to the number of wavepackets. To ensure efficient use of computing resources, always specify an even number of wavepackets if using more than one processor (since the number of processors can only be an even number: currently 2, 4 or 8).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;The database&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The most time-consuming part of a dynamics run is the GAUSSIAN CASSCF calculations. The results of these calculations can be stored in a database and re-used in future runs. The user must choose whether or not to read and/or write a database. Each calculation will write a separate database so the databases from each run must be combined (and any duplicate entries removed (to save space)).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Initial momentum&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
An initial momentum can be specified to direct the wavepacket to a particular area of the PES (e.g. towards a conical intersection, a transition state or minimum geometry). The momentum is given as a geometry (in frequency mass weighted normal coordinates). The dd_rotation program used for rotation of the conical intersection can be used to transform the coordinates of the desired geometry. If the user requests an initial momentum, dd_generator will search for a file called momentum.dat. If this file is found, dd_generator will ask if the user wishes to use the momentum specified in it. The user can then specify how much energy to give (in eV). Thus, the values in momentum.dat need only be relative values (since they will be multiplied by a scaling factor to provide the total number of eV requested). If there is no file called momentum.dat in the appropriate folder, the user will not be asked to specify a total number of eV to give to the wavepacket(s). A momentum can still be added by manually modifying the .inp file after the dd_generator script has been run (replace the zero values in the fifth column of the section of the .inp file entitled INIT_WF-SECTION). However, it is simpler to create the momentum.dat file mainly because if the user edits the .inp file directly, there is no way of knowing what the total excess energy will be: the values listed in .inp also incorporate magnitude (not just relative values as in momentum.dat). &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Memory and number of processors&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
In template.dat, the memory for each GAUSSIAN CASSCF calculation is specified. In the .job file (created by dd_generator from user input) the total memory is specified. Thus, the memory specified in .job must be at least as great as the memory given in template.dat multiplied by the number of processors.&lt;br /&gt;
&lt;br /&gt;
The GAUSSIAN calculations for each wavepacket will run on a single processor. If the user specifies more than one processor then the calculations for each wavepacket can run simultaneously. To ensure efficient use of computing resources, always specify an even number of wavepackets when using more than one processor (since the number of processors can only be an even number: currently 2, 4 or 8).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Symmetry Considerations&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The way the diabatisation is performed in mctdh90.31dv sometimes leads to complications involving symmetry.  The diabatic states are defined using the conical intersection (or other geometry) described in coin.log. If the molecule is highly symmetric, there will be more than one conical intersection (all identical by symmetry). If the wavepacket moves close to one of the other conical intersections that is not described in coin.log, the diabatic states may not be properly described in this area of the PES. This of course means that the behaviour of the wavepacket(s) is likely to be described poorly also.&lt;br /&gt;
&lt;br /&gt;
If the conical intersection has lower symmetry than the starting material, the symmetry must necessarily be broken during the dynamics calculation before the conical intersection is reached. The breaking of each mode will occur either due to the accumulation of small numerical inaccuracies or if a momentum is given which forces particular modes to break symmetry.&lt;br /&gt;
Mctdh90.31dv uses frequency-mass-weighted normal coordinates to describe molecular geometries. Each frequency-mass-weighted coordinate corresponds to a vibration of the molecule (and there are therefore 3N-6 coordinates). Displacements of atoms are described by a (or a combination of) vibration(s). Each vibration can be displaced in one of two directions: positive or negative. The 3N-6 frequency-mass-weighted coordinates can be classified by symmetry. Whether a particular symmetry mode is broken in the positive or negative direction will be equally likely if no initial momentum is given. Thus for each mode that is broken during a simulation the symmetry may break in the positive direction or the negative direction. There will be 2&amp;lt;sup&amp;gt;x&amp;lt;/sup&amp;gt; possible conical intersections corresponding to a particular starting geometry, where x is the number of modes that must be broken going from starting material to conical intersection.&lt;br /&gt;
&lt;br /&gt;
Additionally, care must be taken over atom labeling. It must be possible to transform the starting material into the conical intersection without permuting atom labels. If the conical intersection has been optimised by following the MEP downhill from the starting material this is not likely to be a problem. However, bear this in mind if drawing the conical intersection by hand.  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Creating the Directories&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* First of all, create a folder in which to save the calculations in your $HOME and $WORK directories. Create a directory in $HOME, and an identical directory in $WORK that has the same path. Keep pathlengths as short as possible (if the total path becomes too long the dynamics code will not run). For simplicity, in this case, we are going to assume that this directory is named &#039;&#039;fulv&#039;&#039; (for fulvene).&lt;br /&gt;
&lt;br /&gt;
     mkdir fulv&lt;br /&gt;
&lt;br /&gt;
* Create a subdirectory called &#039;&#039;&#039;dd_data&#039;&#039;&#039; in the new directory in $WORK.  Thus you should start with:&lt;br /&gt;
&lt;br /&gt;
    /home/$USER/fulv&lt;br /&gt;
    /work/$USER/fulv/dd_data&lt;br /&gt;
&lt;br /&gt;
* Important Note: it is essential to have the same path in both directories, $HOME and $WORK. Do not change the path-names within the HOME/WORK directories. If you re-name or move any subdirectory in your, for example HOME directory, you have to be consistent and make the same changes in the $WORK directory.&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Gaussian Output to be Used as Input for the Dynamics Program&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* Populate the new directory /work/$USER/buta/dd_data with four files which must be named: &#039;&#039;&#039;coin.log&#039;&#039;&#039;; &#039;&#039;&#039;start.fchk&#039;&#039;&#039;; &#039;&#039;&#039;start.log&#039;&#039;&#039;; and &#039;&#039;&#039;template.dat&#039;&#039;&#039;.These files are required in order to run any dynamics simulation, they are the basis that the script dd_generator (see the following section) will use to create the necessary files for running MCTDH (DD-vMCG).  You may also create a file named &amp;quot;&#039;momentum.dat&amp;quot;&#039; if you wish to give a momentum to the wavepacket(s) (this is optional and may be created later instead). &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;coin.log&#039;&#039;&#039; is the logfile resulting from the optimisation of the conical intersection. NB The MCTDH (DD-vMCG) program will rotate the conical intersection before starting the dynamics. To do this it must be provided with three angles which describe the appropriate rotation. There is an Excel spreadsheet available to calculate these angles (see the section entitled &amp;quot;Rotating the Conical Intersection&amp;quot;). NB the structure in coin.log need not necessarily be a true conical intersection: this point is only used for performing the diabatisation. Thus the diabatisation will be exact at this point and will become more approximate the further you are from it (on the PES). If you wish to use a point that is not a conical intersection, simply run a conical intersection optimisation (with only a single step) on the desired geometry. This will create a file with the same layout as a conical intersection optimisation output file (mctdh looks for certain things in this file so if some other type of .log file were used instead, it might not contain the required information). NB the final conical intersection log file must only contain one geometry (otherwise the dynamics program will not know which geometry to use). IS THIS STATEMENT TRUE FOR THIS VERSION??&lt;br /&gt;
&lt;br /&gt;
[[Media:Coin.log]]&lt;br /&gt;
&lt;br /&gt;
(Insert a link here to section &amp;quot;Rotating the Conical Intersection&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;start.chk&#039;&#039;&#039; is the checkpoint file from the high precision vibrational modes of the ground state with state averaged orbitals (with atom types rather than numbers)&lt;br /&gt;
[[Media:Start.chk]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;start.log&#039;&#039;&#039; is the log file from the high precision vibrational modes of the ground state with state averaged orbitals (with atom types rather than numbers)&lt;br /&gt;
&lt;br /&gt;
[[Media:Start.log]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;template.dat&#039;&#039;&#039; is a template for the creation of GAUSSIAN input files by the MCTDH (DD-vMCG) program. It contains all the mutual keywords of the GAUSSIAN calculations which will be run on-the-fly by MCTDH (DD-vMCG). It also contains other information relating to the GAUSSIAN calculations such as memory requirements.&lt;br /&gt;
 &lt;br /&gt;
[[Media:Template.dat]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;momentum.dat&#039;&#039;&#039; is a file containing a list of values to be used as vectors to indicate the momentum to be given to a particular (set of) wavepacket(s). The vectors must be listed in the order of the frequency-mass-weighted normal coordinates specified in the coin.out file (i.e. the output file from dd_rotation program). They give the magnitude of the momentum to be given along each of these frequency-mass-weighted normal coordinates. N.B. The signs of the values here are important!&lt;br /&gt;
We are not giving a momentum in this simulation.&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;The Generator&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* The &amp;quot;generator&amp;quot; script uses the GAUSSIAN output files (above) along with other information supplied by the user to create input files for MCTDH (DD-vMCG).&lt;br /&gt;
&lt;br /&gt;
* Navigate to /home/$USER/fulv and run the generator by typing:&lt;br /&gt;
&lt;br /&gt;
     dd_generator&lt;br /&gt;
&lt;br /&gt;
for the HPC Cluster, or &lt;br /&gt;
&lt;br /&gt;
     dd_generator_MAC&lt;br /&gt;
&lt;br /&gt;
for a MAC OS X system&lt;br /&gt;
&lt;br /&gt;
* Typing dd_generator will run the script automatically. After installing the MCTDH (DD-vMCG) package this command has been added to your list of executable commands. &lt;br /&gt;
&lt;br /&gt;
     ********************************************************************************&lt;br /&gt;
     ********************    -------  DD GENERATOR  --------    *****************&lt;br /&gt;
     ********************************************************************************&lt;br /&gt;
&lt;br /&gt;
* The generator will ask a series of questions and will use the answers provided to prepare the input files for the dynamics program. The questions it asks are listed below along with answers for a trial run on fulvene.&lt;br /&gt;
&lt;br /&gt;
==== List of questions asked by dd_generator====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;blockquote style=&amp;quot;background: white; border: 1px solid black; padding: 1em;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Question&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; &#039;&#039;&#039;Answer for this tutorial&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; &#039;&#039;&#039;Explanation&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Which version of GAUSSIAN should we use? (gdvh01|g03)&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; gdvh01 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;How many shared-memory processors should we use? (1|2|4|8)&lt;br /&gt;
N.B.: (ncpus=1) serial or (ncpus=2|4|8) parallel (omp) version of MCTDH launched as batch job&lt;br /&gt;
and launching monoprocessor GAUSSIAN interactive jobs (nprocshared=1 or no specification)&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 4 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the name of the molecule?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; fsto &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; The first four letters will be used to name the new files that the generator is creating &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the number of atoms?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 12 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;The number of nuclear degrees of freedom is 30.&lt;br /&gt;
Do you want to reduce the dimensionality? (y|n)&lt;br /&gt;
(N.B.: this can be used also for re-ordering the coordinates)&lt;br /&gt;
&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; n &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the number of nuclear Gaussian functions?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 4 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt; 4 means 4 gaussian on state 1 and 4 gaussian on state 2. This is the &amp;quot;single-set&amp;quot; implementation of MCTDH (DD-vMCG) therefore gaussian wavepackets on state 1 are the same as gaussian wavepackets on state 2.&amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;&#039;What is the final propagation time (in fs)?&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 150 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the propagation time step (in fs)?&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 0.1 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the number of electronic states? (1|2)&#039;&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 2 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the highest electronic root?&#039;&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 2 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;From which electronic state should the wavepacket start? (2|1)&#039;&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 2 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Will there be an initial momentum given to the wavepacket? (y|n)&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; n &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Do you want to add a reference label to the name of the case? (y|n)&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; y &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Please type your text:&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; trial &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;This question is only asked if the answer to the previous question was yes.  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What will be the status of the database? (rdwr|rd|wr|none)&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; none &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; Choose rd for read, wr for write etc. In this case we are not going to use the database, but if it was used (rd or rdwr is specified) the script would ask the user to specify the threshold below which the database values will be used (%). In this case the value none is chosen so this question is not asked.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;&amp;gt;&amp;gt; Manual rotation (using Excel spreadsheet) &amp;lt;&amp;lt;&lt;br /&gt;
   Please type the values of the three Euler angles (in deg)&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 0&lt;br /&gt;
0&lt;br /&gt;
0 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Tuple from the dd_rotation method (insert link)&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;The generator will now tell you that it has read the files start.chk from the folder /work/$USER/fulv/dd_data/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Files created by the generator&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* The generator will now tell you that it has read the files start.log, coin.log and momentum.dat (if a momentum has been specified) from the folder /work/$USER/fulv/dd_data/:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
   about to read parameters...&lt;br /&gt;
   ... parameters just read&lt;br /&gt;
   about to read file /work/vs13/fulv/dd_data/start.log                   &lt;br /&gt;
                                                               ...&lt;br /&gt;
   ... file /work/vs13/fulv/dd_data/start.log                             &lt;br /&gt;
                                                      read successfully&lt;br /&gt;
   about to read file /work/vs13/fulv/dd_data/coin.log                    &lt;br /&gt;
                                                               ...&lt;br /&gt;
 *********************************************************&lt;br /&gt;
 Mass-weighted displacement from start to coin:&lt;br /&gt;
    old total norm: 22.070387&lt;br /&gt;
    new total norm:  4.669035&lt;br /&gt;
  vibrational part:  4.669035&lt;br /&gt;
   rotational part:  0.000000&lt;br /&gt;
 *********************************************************&lt;br /&gt;
   ... file /work/vs13/fulv/dd_data/coin.log                             &lt;br /&gt;
                                                      read successfully&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
and that the extraction of data and the creation of a summary file were done successfully. If the Mass-weighted displacement from start to coin appears as NaN it may be because the start.log contains atom numbers rather than atom types. You will need to redo the freq=hpmodes job with atom types.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Data extracted successfully&lt;br /&gt;
The summary of this file generation is in:&lt;br /&gt;
-rw-r--r--  1 vs13 hpc-users 3463 Apr 25 17:09 /home/vs13/fulv/fstodd30d4o_trial.txt&lt;br /&gt;
 &lt;br /&gt;
Do not forget you still can add a momentum, change the integrator, change convergence criteria for GAUSSIAN and MCTDH...&lt;br /&gt;
 &lt;br /&gt;
Do not forget to check the order of the atoms of the conical intersection geometry in /work/dm107/dyn_90dev/dd_data/coin.log&lt;br /&gt;
 &lt;br /&gt;
Now go to your jobscript file and give values to the memory and walltime.&lt;br /&gt;
 &lt;br /&gt;
Good luck!&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* The dd_generator script has generated four files in the same directory (/home/$USER/buta):&lt;br /&gt;
&lt;br /&gt;
# fstodd30d4o_trial.inp  &lt;br /&gt;
# fstodd30d4o_trial.job  &lt;br /&gt;
# fstodd30d4o_trial.txt  &lt;br /&gt;
# fstodd30d4o_none.op&lt;br /&gt;
&lt;br /&gt;
(Link to a more detailed explanation of this files)&lt;br /&gt;
&lt;br /&gt;
* The script has also created some files and directories in /work/$USER/buta where the MCTDH (DD-vMCG) and GAUSSIAN calculations will be stored:&lt;br /&gt;
&lt;br /&gt;
1) Directories:&lt;br /&gt;
&lt;br /&gt;
* fstodd30d4o_trial&lt;br /&gt;
* fstodd30d4o_trial/dd_data&lt;br /&gt;
&lt;br /&gt;
2) Files (in butadd1o_trial/dd_data):&lt;br /&gt;
&lt;br /&gt;
# refdb.dat &lt;br /&gt;
# start.chk  &lt;br /&gt;
# template.dat&lt;br /&gt;
# forward.dat&lt;br /&gt;
# backward.dat&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Modifications to be made to the files before running the dynamics&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* In the .job file in /home/$USER/buta specify the memory and walltime if you are in the HPC Cluster.&lt;br /&gt;
&lt;br /&gt;
* When running a development version of GAUSSIAN (gdvg03 or gdvg01), copy the start.chk file into the folder /work/$USER/dyn_90dev/but1dd1p_trial/dd_data. The unformatted checkpoint file from start.fchk that dd_generator has created is corrupted (due to a bug in formchk in gdvg01).&lt;br /&gt;
has this been fixed?&lt;br /&gt;
&lt;br /&gt;
====Starting from a point other than the Franck-Condon point====&lt;br /&gt;
&lt;br /&gt;
When the molecule is highly symmetric and there is more than one equivalent conical intersection (see above) it may be necessary to direct the wavepacket towards the particular conical intersection described in coin.log. The easiest way to do this is to use an initial momentum but it can also be achieved by distorting the geometry of the starting structure slightly towards the conical intersection (i.e. breaking the symmetry in the appropriate direction(s)).&lt;br /&gt;
&lt;br /&gt;
Define the new starting geometry in frequency-mass-weighted normal coordinates (this can be done using the Excel spreadsheet). One option for selecting the new geometry is to use a fraction of the displacement from the FC point to the conical intersection. &lt;br /&gt;
&lt;br /&gt;
After running dd_generator in the normal way, replace the default FC geometry in the .inp file with the new geometry. This geometry (frequency-mass-weighted-coordinates of the centre of the wavepacket) forms the fourth column in the section entitled INIT_WF-SECTION (in .inp).&lt;br /&gt;
&lt;br /&gt;
If the new geometry is very different from the FC geometry, run a single-point state-averaged-CAS calculation (start from RHF, look at the MOs, alter if needed, and check the final active MOs) and call the resulting .chk file start.chk. Replace the start.chk that would have been used ($WORK/buta/but1dd1p_trial/dd_data/start.chk) with this new start.fchk. If the distorted geometry is close enough to the FC geometry it may not be necessary to generate a new start.chk. (When the distortion is large there is a risk of breaking the active space from FC to the new point. Creating a new start.chk is just a way of making sure the starting active space is OK at the new point.) If you are creating a new start.fchk, run the solver on that geometry (relative to the original starting geometry) in the Excel spreadsheet. Create the new start.chk using the geometry in the orange box (so that it is in the same orientation as the molecule in start.log).&lt;br /&gt;
&lt;br /&gt;
N.B. There is no need to replace start.log even when start.fchk is replaced.&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Running the dynamics&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* Navigate to /home/$USER/buta. Queue the job file. In this case, type:&lt;br /&gt;
&lt;br /&gt;
     qsub butadd1p_trial.job&lt;br /&gt;
&lt;br /&gt;
for MAC OS X users the shell command is already written in butadd1p_trial.job&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;The Database (DB)&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
The DB is made of four binary files:&lt;br /&gt;
geo.db&lt;br /&gt;
pes.db&lt;br /&gt;
gra.db&lt;br /&gt;
hes.db&lt;br /&gt;
They can be used in place of GAUSSIAN calculations to save some&lt;br /&gt;
computation time when you ask for DBrd or DBrdwr.&lt;br /&gt;
&lt;br /&gt;
Each set of geometry, energy, gradient and Hessian (the latter&lt;br /&gt;
three quantities having been calculated by GAUSSIAN for the two&lt;br /&gt;
adiabatic electronic states) will be called a DB record and&lt;br /&gt;
assigned a record number defining the order of occurrence in the DB.&lt;br /&gt;
If you run a calculation where the DB is to be read, in the *.res&lt;br /&gt;
file that you obtain after the calculation is done (file that&lt;br /&gt;
actually is a redirection of the standard output) you will see the&lt;br /&gt;
number of records in the DB as it grows.&lt;br /&gt;
Example (formaldehyde, multi-set 1+1):&lt;br /&gt;
          53&lt;br /&gt;
 s=  1 e=  1 t=   0.000 V1=   0.001 V2=   4.533 H11=   0.001 H22=&lt;br /&gt;
 4.533 H12=   0.000 q=   0.0000    0.0000    0.0000    0.0000&lt;br /&gt;
 0.0000    0.0000&lt;br /&gt;
          53&lt;br /&gt;
 s=  2 e=  1 t=   0.000 V1=   0.001 V2=   4.533 H11=   0.001 H22=&lt;br /&gt;
 4.533 H12=   0.000 q=   0.0000    0.0000    0.0000    0.0000&lt;br /&gt;
 0.0000    0.0000&lt;br /&gt;
          53&lt;br /&gt;
 s=  1 e=  1 t=   0.500 V1=   0.197 V2=   4.701 H11=   0.211 H22=&lt;br /&gt;
 4.687 H12=   0.251 q=  -0.6258   -0.6146    0.6136    0.6049&lt;br /&gt;
 -0.5520   -0.0616&lt;br /&gt;
          53&lt;br /&gt;
 s=  2 e=  1 t=   0.500 V1=   0.000 V2=   4.533 H11=   0.000 H22=&lt;br /&gt;
 4.533 H12=  -0.001 q=   0.0009    0.0009    0.0093   -0.0245&lt;br /&gt;
 -0.0066    0.0001&lt;br /&gt;
          53&lt;br /&gt;
 &lt;br /&gt;
 ERROR in subroutine Distdb :&lt;br /&gt;
 Redundant records in Data Base:   18   19&lt;br /&gt;
 s=  1 e=  1 t=   1.000 V1=   0.469 V2=   4.455 H11=   0.479 H22=&lt;br /&gt;
 4.445 H12=   0.200 q=  -0.4640   -0.5641    1.2594   -0.5871&lt;br /&gt;
 -1.0864   -0.1120&lt;br /&gt;
          53&lt;br /&gt;
 s=  2 e=  1 t=   1.000 V1=   0.001 V2=   4.473 H11=   0.001 H22=&lt;br /&gt;
 4.473 H12=  -0.002 q=   0.0003    0.0004    0.0404   -0.0944&lt;br /&gt;
 -0.0292    0.0001&lt;br /&gt;
          53&lt;br /&gt;
 s=  1 e=  1 t=   1.500 V1=   0.113 V2=   4.543 H11=   0.120 H22=&lt;br /&gt;
 4.536 H12=   0.170 q=  -0.3994   -0.4377    0.5444    0.2057&lt;br /&gt;
 -0.5149   -0.0638&lt;br /&gt;
          53&lt;br /&gt;
 s=  2 e=  1 t=   1.500 V1=   0.013 V2=   4.390 H11=   0.013 H22=&lt;br /&gt;
 4.390 H12=  -0.005 q=   0.0009    0.0010    0.0897   -0.2104&lt;br /&gt;
 -0.0634    0.0002&lt;br /&gt;
          53&lt;br /&gt;
 s=  1 e=  1 t=   2.000 V1=   0.068 V2=   4.431 H11=   0.071 H22=&lt;br /&gt;
 4.428 H12=   0.110 q=  -0.2751   -0.3274    0.4796   -0.0812&lt;br /&gt;
 -0.3880   -0.0605&lt;br /&gt;
          54&lt;br /&gt;
 s=  2 e=  1 t=   2.000 V1=   0.019 V2=   4.367 H11=   0.019 H22=&lt;br /&gt;
 4.367 H12=  -0.009 q=   0.0012    0.0013    0.1563   -0.3658&lt;br /&gt;
 -0.1058    0.0003&lt;br /&gt;
          54&lt;br /&gt;
 s=  1 e=  1 t=   2.500 V1=   0.064 V2=   4.273 H11=   0.065 H22=&lt;br /&gt;
 4.272 H12=  -0.064 q=   0.2559    0.0914    0.1691   -0.7218&lt;br /&gt;
 -0.1052   -0.0595&lt;br /&gt;
          55&lt;br /&gt;
 s=  2 e=  1 t=   2.500 V1=   0.070 V2=   4.258 H11=   0.070 H22=&lt;br /&gt;
 4.257 H12=  -0.013 q=   0.0013    0.0015    0.2384   -0.5572&lt;br /&gt;
 -0.1528    0.0004&lt;br /&gt;
&lt;br /&gt;
Here, we started with a DB of 53 records. It is large enough until&lt;br /&gt;
2 fs, where an additional record is produced, and so on.&lt;br /&gt;
The error message saying here that records 18 and 19 are identical&lt;br /&gt;
will not prevent the code from working. It is just here to remind you&lt;br /&gt;
that the DB is not clean in that it has redundant records.&lt;br /&gt;
This is to be prevented as the DB files might become large quite&lt;br /&gt;
rapidly and all records will be read at each update time (dd_update&lt;br /&gt;
= tout in the integrator section, tout = xxx fs in the run section&lt;br /&gt;
of the *.inp file) for each Gaussian function.&lt;br /&gt;
&lt;br /&gt;
Incidentally, when you want to analyse results written to a *.res&lt;br /&gt;
file, you need to look for lines starting with &amp;quot;s=&amp;quot; (other lines&lt;br /&gt;
are various messages and numbers of DB records).&lt;br /&gt;
The criterion for using the DB is to be seen as a maximum-allowed&lt;br /&gt;
relative difference&lt;br /&gt;
&lt;br /&gt;
So, it is up to you to clean the DB when you see this, and to keep&lt;br /&gt;
this in mind when you concatenate DBs that have branched in their&lt;br /&gt;
past (see more details below).&lt;br /&gt;
&lt;br /&gt;
Also, a given DB depends on the choice of a reference geometry in&lt;br /&gt;
Cartesian coordinates because geometries written to the DB files&lt;br /&gt;
will always be re-orientated with respect to this particular&lt;br /&gt;
geometry. The back and forth transformations are performed by MCTDH (DD-vMCG)&lt;br /&gt;
so you don&#039;t need not worry about this.&lt;br /&gt;
This geometry is written to refdb.dat. It is the starting geometry&lt;br /&gt;
that comes from start.log (the only difference being that it is&lt;br /&gt;
mass-centred).&lt;br /&gt;
As long as you do not change the starting geometry or the nature&lt;br /&gt;
of the electronic states, you can thus keep growing the DB of your&lt;br /&gt;
system.&lt;br /&gt;
&lt;br /&gt;
MANAGING THE DATA BASE&lt;br /&gt;
&lt;br /&gt;
A set of DB  programs can be found in XXXXX. Their roles are&lt;br /&gt;
explained below.&lt;br /&gt;
For now, the sources are in dd_utildev and dd_util.31dv and the&lt;br /&gt;
executables are in mctdh90dev/bin and mctdh90.31dv/bin, so you can&lt;br /&gt;
call them from anywhere, as long as DB files are there.&lt;br /&gt;
&lt;br /&gt;
1) countdb.out: returns the number of records of the current DB&lt;br /&gt;
2) cleandb.out: &amp;quot;brute-force&amp;quot; cleaning of the current DB. This&lt;br /&gt;
might be too long to be run interactively when the number of&lt;br /&gt;
records is too large, because each record needs to be compared to&lt;br /&gt;
each other record (e.g. a DB with ca. 3800 records will take a couple of minutes to clean interactively). If so, run in batch mode (ask me or Marta if you&lt;br /&gt;
have a doubt).&lt;br /&gt;
The cleaned files are:&lt;br /&gt;
geoclean.db&lt;br /&gt;
pesclean.db&lt;br /&gt;
graclean.db&lt;br /&gt;
hesclean.db&lt;br /&gt;
You need to rename them without &#039;clean&#039; for them to be used as a DB.&lt;br /&gt;
3) cutdb.out: allows you to cut out the beginning of a DB.&lt;br /&gt;
This is to be used in the following situation:&lt;br /&gt;
- You start from a mother DB, DB0, assumed to be clean, with N0&lt;br /&gt;
records.&lt;br /&gt;
- You want to use DB0 in two independent calculations. You&lt;br /&gt;
replicate DB0 to daughter DBs, DB1 and DB2.&lt;br /&gt;
- When these calculations are done, DB1 and DB2 have grown to N0+N1&lt;br /&gt;
and N0+N2 records, respectively.&lt;br /&gt;
- You want to concatenate them to create a new mother DB, DB3.&lt;br /&gt;
- DB1 and DB2 have their N0 first records the same. To avoid&lt;br /&gt;
redundant records, you need to cut N0 records from DB2 for example.&lt;br /&gt;
--&amp;gt; go to where DB2 is and use cleandb.out&lt;br /&gt;
The resulting files are:&lt;br /&gt;
geocut.db&lt;br /&gt;
pescut.db&lt;br /&gt;
gracut.db&lt;br /&gt;
hescut.db&lt;br /&gt;
these have N1 records.&lt;br /&gt;
--&amp;gt; rename DB1, for instance geo.db1 etc., and concatenate the files:&lt;br /&gt;
cat geo.db1 geoclean.db &amp;gt; geo.db&lt;br /&gt;
etc.&lt;br /&gt;
- Your new mother DB, DB3, should now have N0+N1+N2 distinct records.&lt;br /&gt;
4) deldb.out: allows you to remove one selected record (for&lt;br /&gt;
instance if corrupted) from the DB if you know its number.&lt;br /&gt;
The resulting files are:&lt;br /&gt;
geodel.db&lt;br /&gt;
pesdel.db&lt;br /&gt;
gradel.db&lt;br /&gt;
hesdel.db&lt;br /&gt;
You need to rename them without &#039;del&#039; for them to be used as a DB.&lt;br /&gt;
5) seedb.out: allows you extract one selected record from the&lt;br /&gt;
binary files for reading it (the record is not removed from the DB).&lt;br /&gt;
The resulting file can be read as a text file (ascii) and is:&lt;br /&gt;
see.db&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Restarting dynamics jobs&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
The examples below make use of the directory and filenames in the examples above.&lt;br /&gt;
&lt;br /&gt;
A dynamics run can be restarted if the job was terminated before completion (e.g if it ran out of time or failed because of convergence problems) or if the user wishes to continue the job for a longer time period than had originally been specified. The program will continue writing the same output file but will overwrite the .res file. Thus the .res file should be saved under a different name to prevent loss of the data calculated in the original run. The .res is not written until the job stops so this can be done after the restart.&lt;br /&gt;
&lt;br /&gt;
*To increase the final propagation time&lt;br /&gt;
&lt;br /&gt;
Retrieve the .inp file (in $HOME/buta) and change &#039;&#039;propagation&#039;&#039; to &#039;&#039;continuation&#039;&#039; in the section entitled RUN-SECTION. Then change the final time &#039;&#039;tfinal&#039;&#039; to a larger value. (NB this new value should include the time already done).&lt;br /&gt;
&lt;br /&gt;
Re-queue the job.&lt;br /&gt;
&lt;br /&gt;
*To increase the number of scf cycles (the most common reason for convergence failure)&lt;br /&gt;
&lt;br /&gt;
Edit the template.dat file in $WORK/buta/but1dd1p_trial/dd_data. Insert scf=(maxcycle=128) on the keyword line (for example). It is important that you change the template.dat file in the but1dd1p_trial/dd_data folder that was created by dd_generator (rather than the one created by the user in $WORK/buta/dd_data) because the original $WORK/buta/dd_data/template.dat file is only read by dd_generator and used to create the job-specific file in the job folder. (Of course if you wish all future jobs run in $WORK/buta  to have increased scf cycles, change the other template.dat file in $WORK/buta/dd_data too.)&lt;br /&gt;
&lt;br /&gt;
Re-queue the job.&lt;br /&gt;
&lt;br /&gt;
*To increase the run-time so that a job will finish&lt;br /&gt;
&lt;br /&gt;
Edit the walltime in the .job file in the $HOME directory and re-queue the job.&lt;br /&gt;
&lt;br /&gt;
=&#039;&#039;&#039;Analysis of the results&#039;&#039;&#039;=&lt;br /&gt;
&lt;br /&gt;
The most important files are the output and .res files.&lt;br /&gt;
&lt;br /&gt;
=== Detailed information about files and directories ===&lt;br /&gt;
&lt;br /&gt;
*output&lt;br /&gt;
&lt;br /&gt;
The output contains some standard results:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Time&#039;&#039;&#039;: time in fs.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;CPU&#039;&#039;&#039;:  CPU time in s.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Norm&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;E-tot&#039;&#039;&#039;: the total energy in eV. This value should be conserved (i.e by the end of the run the E-tot value should not be too different  from what it was a time=0).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;E-corr&#039;&#039;&#039;: correlated Hamiltonian energy&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Delta-E&#039;&#039;&#039;: diference between E-tot at time t=0 and the current time t&lt;br /&gt;
&lt;br /&gt;
Note: In a multi-packet run, i.e. when npacket &amp;gt; 1, the total energy and the norm of the wavefunction, as given in the &amp;quot;total&amp;quot; part, are averaged over the packets.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;population&#039;&#039;&#039; : diabatic populations of state 1 and state 2 (in that order) at the current time t&lt;br /&gt;
&lt;br /&gt;
For every mode:	&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt; q &amp;gt;&#039;&#039;&#039;: position expectation value&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;dq&amp;gt;&#039;&#039;&#039;: standard deviation Sqrt[&amp;lt; q&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt; &amp;gt; - &amp;lt; q &amp;gt;&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt; p &amp;gt;&#039;&#039;&#039; : momentum expectation value&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;dq&amp;gt;&#039;&#039;&#039;: standard deviation Sqrt[&amp;lt; p&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt; &amp;gt; - &amp;lt; p &amp;gt;&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*.res&lt;br /&gt;
&lt;br /&gt;
This file contains the energy of each state (diabatic and adiabatic) at each timestep for each gaussian function:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;s&#039;&#039;&#039; is a redundant value in mctdh90.31dv. It is only meaningful in multi-set implementations of mctdh (where there are double the number of gaussian functions than specified: one for each state). (It indicates whether the gaussian function in question is on the lower (1) or upper (2) state. (In the single set implementation, the gaussian functions on each state are identical)).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;e&#039;&#039;&#039; is a label given to each gaussian function&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;t&#039;&#039;&#039; is the current time in fs&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;V1&#039;&#039;&#039; is the energy of the lower adiabatic state at time t&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;V2&#039;&#039;&#039; is the energy of the upper adiabatic state at time t&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;H11&#039;&#039;&#039; is the energy of the lower diabatic state at time t&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;H22&#039;&#039;&#039; is the energy of the upper diabatic state at time t&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;H12&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;q&#039;&#039;&#039; is the list of frequency mass-weighted normal coordinates that describe the geometry at time t&lt;br /&gt;
&lt;br /&gt;
The end of the file will read something like: &lt;br /&gt;
&lt;br /&gt;
     Propagation was successful.&lt;br /&gt;
     &lt;br /&gt;
     Total time     [h:m:s] :    0 :  1 : 21.60&lt;br /&gt;
     &lt;br /&gt;
      ---------------------------------------------------------------------------&lt;br /&gt;
      ------ Host: &amp;quot;cx1-3-2-4&amp;quot; ----------Sat Jan 17 06:50:20 2009&lt;br /&gt;
&lt;br /&gt;
The other most common result is that the calculation aborted because of scf convergence problems in the CASSCF GAUSSIAN calculations. In this case the ouput file will break off after the last complete step and the end of the .res file will read something like:&lt;br /&gt;
     ERROR in subroutine Getddpes :&lt;br /&gt;
     CAS convergence failed for gwp on state:    1    1&lt;br /&gt;
&lt;br /&gt;
If the job terminates due to scf convergence problems, it may be possible to restart it after modifying the .inp and/or .job and/or template.dat files.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*log&lt;br /&gt;
&lt;br /&gt;
This file contains information such as the source code version, type of calculation performed, integrator used, numerical parameters, which data files are opened, any error messages, and much more. The information provided by the log file can be very helpful, in particular when searching for errors. One should always carefully inspect the log file.&lt;br /&gt;
&lt;br /&gt;
* dvr&lt;br /&gt;
&lt;br /&gt;
* oper&lt;br /&gt;
&lt;br /&gt;
*ddpeserr&lt;br /&gt;
&lt;br /&gt;
*input&lt;br /&gt;
&lt;br /&gt;
*op.log&lt;br /&gt;
&lt;br /&gt;
*psi&lt;br /&gt;
&lt;br /&gt;
*check&lt;br /&gt;
&lt;br /&gt;
*auto&lt;br /&gt;
&lt;br /&gt;
*ddpes&lt;br /&gt;
&lt;br /&gt;
*restart&lt;br /&gt;
&lt;br /&gt;
*stop&lt;br /&gt;
&lt;br /&gt;
*speed&lt;br /&gt;
&lt;br /&gt;
*timing&lt;br /&gt;
&lt;br /&gt;
*update&lt;br /&gt;
&lt;br /&gt;
=== Example: butadiene ===&lt;br /&gt;
&lt;br /&gt;
*Examine the end of the output file to check that the calculation ran to completion.&lt;br /&gt;
     &lt;br /&gt;
*Plot the energy of the diabatic and adiabatic states over time (.res file: V1, V2, H11 and H22). Calculate V2-V1 and H22-H11 and plot these also. H12 may also be plotted on the same graph.&lt;br /&gt;
[[Image:EnergyofStates.png]]&lt;br /&gt;
&lt;br /&gt;
The diabatic states cross at 176.2 fs and the adiabatic states cross at 174.5 fs. At a conical intersection, the value V2-V1 will become negative and the H22-H11 will be a minimum (&amp;lt;1eV). Ideally these crossings will occur at the same time. If the diabatisation has worked well, after V2-V1 becomes negative, V2-V1 and H22-H11 will become mirror images (i.e. the diabatic and adiabatic states follow each other). &lt;br /&gt;
&lt;br /&gt;
*Plot the value of the total energy over time (.res file: E-tot). Verify that the Delta-E value is not too large (compare with the total energy (E-tot) at time 0).&lt;br /&gt;
[[Image:TotalEnergy.png]]&lt;br /&gt;
&lt;br /&gt;
*Plot the population of one of the (diabatic) states over time (.res file: population).&lt;br /&gt;
[[Image:Population.png]]&lt;br /&gt;
&lt;br /&gt;
At the conical intersection the population transfer is large. In this case the job has been terminated after 200 fs. Usually the calculation should be continued until the populations stabilise (which obviously has not happened in this case).&lt;br /&gt;
&lt;br /&gt;
=== Making a Movie ===&lt;br /&gt;
&lt;br /&gt;
Navigate to /work/$USER/buta/but1dd1p_trial (the place where the .res file was written). Type:&lt;br /&gt;
 dd_movie.out&lt;br /&gt;
* The script will ask a series of questions and will use the answers provided to create a file that can be read into Molden or iMol.&lt;br /&gt;
&lt;br /&gt;
==== List of questions asked by dd_movie.out====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;blockquote style=&amp;quot;background: white; border: 1px solid black; padding: 1em;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Question&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; &#039;&#039;&#039;Answer for this tutorial&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; &#039;&#039;&#039;Explanation&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the number of atoms?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 10 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the actual number of active coordinates?&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 24 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; In this case all coordinates were active (so there are 3N-6 where N is the number of atoms) &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Name of result file to read?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; but1dd1p_trial.res &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;Ensure that the forward.dat and backward.dat files are located in the current directory in the folder dd_data (they will have been written there automatically)&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Name of movie file to write?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; but1dd1p_trial.xyz &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; Choose any name .xyz &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Which electronic state (s=...)?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 1 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;Choose 1 (this question dates from the multi-set implementation of mctdh where the wavepackets on each state were different)  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Which Gaussian function (e=...)?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 1 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;In this case we have only one wavepacket&amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;The script will now return the number of lines and the initial number of points&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
number of lines:        4684&lt;br /&gt;
initial number of points:        4674&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Maximum number of points you want?&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 4674 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;If you wish to view the movie in Molden you must reduce the number of points to less than 100 (so choose 99 for maximum number of points). iMol can cope with any number of frames so choose the number printed by the script: this number will be reduced and the script will tell you how many points it has written. &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
writing frequency:           2&lt;br /&gt;
   final number of points:        2337&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The .xyz file is ready to be opened in Molden or iMol.&lt;br /&gt;
&lt;br /&gt;
= &#039;&#039;&#039;Current Known Bugs&#039;&#039;&#039; =&lt;br /&gt;
&lt;br /&gt;
Parallelisation:&lt;br /&gt;
&lt;br /&gt;
It is not possible to run calculations in parallel with version 90.31dv (reading the same template.dat file simultaneously by each processor is causing problems). In 90.35tmp this is ok. In 90.4X it will also be fixed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Total energy:&lt;br /&gt;
&lt;br /&gt;
1) The total energy is sometimes &amp;quot;artificially&amp;quot; increased by a lot. If so, try a different integrator or play around with the timestep (may need to get larger or smaller). Or try increasing scf convergence to 10&amp;lt;sup&amp;gt;-12&amp;lt;/sup&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
2) If Delta-E suddenly becomes too large, you can get the following message: &lt;br /&gt;
&amp;quot;ERROR in subroutine WRGAUSSIAN :&lt;br /&gt;
 Do not use $Swap:...$ metastring in file /.../template.dat&amp;quot;&lt;br /&gt;
Often, when getting this message, no more steps are added to the simulation, although the calculation seems to keep running (the integrator keeps trying and failing).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Using the database:&lt;br /&gt;
&lt;br /&gt;
1) Every record generated with mctdh90.31dev and several GWPs is corrupted, so, for now, when launching calculations with more that one wavepacket, use &amp;quot;formdd_none.op&amp;quot; (i.e. do not read nor write the database).&lt;br /&gt;
[For instance, when using dbrdwr and starting from a clean db, all newly generated records are added to the existing database, even if they are identical to records that were already written in the db.]  In 90.35tmp this is ok. In 90.4X it will also be fixed.&lt;br /&gt;
&lt;br /&gt;
2) Records obtained in calculations with one GWP should be OK, but this is still to be confirmed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Impossible case&amp;quot;:&lt;br /&gt;
&lt;br /&gt;
Error message that forces the calculation to stop. It seems to be associated with moving towards an &amp;quot;unexpected&amp;quot; geometry (e.g. a radical).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
State Averaging:&lt;br /&gt;
&lt;br /&gt;
To increase the threshold above which stateaveraging is turned off, increase the default value of 10 (to e.g. 50)  in the line &#039;&#039;ddregions&#039;&#039; in the OPERATOR-SECTION of the .inp file.&lt;br /&gt;
&lt;br /&gt;
= &#039;&#039;&#039;Questions and Modifications to be made to this wiki&#039;&#039;&#039; =&lt;br /&gt;
&lt;br /&gt;
*Why we would ever need to start the gwps from the lower state? To study GS rxns; chemiluminesence (eg glowworms).&lt;br /&gt;
*In terms of Delta-E, how much is too much? ca1eV but shape of E-tot vs time is important: discontiunities or v flat then steep increase are less reliable than smooth gradual increases.&lt;br /&gt;
*Benjamin: Note that Marta has noticed that for very strange geometries, you may receive an error message saying &amp;quot;impossible case&amp;quot;, which stops MCTDH. It is too complicated to explain here. I know where this happens in the code, and I should prevent this error to stop the code but I didn&#039;t have time to fix this. I&#039;ll do it soon.&lt;br /&gt;
*Need to edit/correct section on the DB.&lt;br /&gt;
*Is does unfchk in gdvg03 create corrupted fchk files? G03 is fine. we don&#039;t know about gdvg03 but we don&#039;t care because we probablly won&#039;t use it.&lt;br /&gt;
&lt;br /&gt;
=== [[Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial|back]] ===&lt;/div&gt;</summary>
		<author><name>Vs13</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/run&amp;diff=333940</id>
		<title>Resgrp:comp-photo-dyn/mctdh90.56dv Fulvene Tutorial/run</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/run&amp;diff=333940"/>
		<updated>2013-04-24T15:23:38Z</updated>

		<summary type="html">&lt;p&gt;Vs13: /* List of questions asked by dd_generator */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= &#039;&#039;&#039;Basic use of the MCTDH (DD-vMCG) package&#039;&#039;&#039; =&lt;br /&gt;
&lt;br /&gt;
A script called dd_generator uses GAUSSIAN output files and user input to write the input files for mctdh (DD-vMCG).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Notes&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;The number of gaussian wavepackets (requested by the dd_generator script)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Start with one (to keep calculation times short). When an appropriate momentum, time period, time step and integrator have been established, increase the number of wavepackets until the results are not changed by adding more. Calculation times are proportional to the number of wavepackets. To ensure efficient use of computing resources, always specify an even number of wavepackets if using more than one processor (since the number of processors can only be an even number: currently 2, 4 or 8).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;The database&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The most time-consuming part of a dynamics run is the GAUSSIAN CASSCF calculations. The results of these calculations can be stored in a database and re-used in future runs. The user must choose whether or not to read and/or write a database. Each calculation will write a separate database so the databases from each run must be combined (and any duplicate entries removed (to save space)). LINK HERE TO SECTION ON MANAGING THE DATABASE&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Initial momentum&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
An initial momentum can be specified to direct the wavepacket to a particular area of the PES (e.g. towards a conical intersection, a transition state or minimum geometry). The momentum is given as a geometry (in frequency mass weighted normal coordinates). The Excel spreadsheet used for rotation of the conical intersection can be used to transform the coordiinates of the desired geometry. If the user requests an initial momentum, dd_generator will search for a file called momentum.dat. If this file is found, dd_generator will ask if the user wishes to use the momentum specified in it. The user can then specify how much energy to give (in eV). Thus, the values in momentum.dat need only be relative values (since they will be multiplied by a scaling factor to provide the total number of eV requested). If there is no file called momentum.dat in the appropriate folder, the user will not be asked to specify a total number of eV to give to the wavepacket(s). A momentum can still be added by manually modifying the .inp file after the dd_generator script has been run (replace the zero values in the fifth column of the section of the .inp file entitled INIT_WF-SECTION). However, it is simpler to create the momentum.dat file mainly because if the user edits the .inp file directly, there is no way of knowing what the total excess energy will be: the values listed in .inp also incorporate magnitude (not just relative values as in momentum.dat). &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Memory and number of processors&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
In template.dat, the memory for each GAUSSIAN CASSCF calculation is specified. In the .job file (created by dd_generator from user input) the total memory is specified. Thus, the memory specified in .job must be at least as great as the memory given in template.dat multiplied by the number of processors.&lt;br /&gt;
&lt;br /&gt;
The GAUSSIAN calculations for each wavepacket will run on a single processor. If the user specifies more than one processor then the calculations for each wavepacket can run simultaneously. To ensure efficient use of computing resources, always specify an even number of wavepackets when using more than one processor (since the number of processors can only be an even number: currently 2, 4 or 8).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Symmetry Considerations&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The way the diabatisation is performed in mctdh90.31dv sometimes leads to complications involving symmetry.  The diabatic states are defined using the conical intersection (or other geometry) described in coin.log. If the molecule is highly symmetric, there will be more than one conical intersection (all identical by symmetry). If the wavepacket moves close to one of the other conical intersections that is not described in coin.log, the diabatic states may not be properly described in this area of the PES. This of course means that the behaviour of the wavepacket(s) is likely to be described poorly also.&lt;br /&gt;
&lt;br /&gt;
If the conical intersection has lower symmetry than the starting material, the symmetry must necessarily be broken during the dynamics calculation before the conical intersection is reached. The breaking of each mode will occur either due to the accumulation of small numerical inaccuracies or if a momentum is given which forces particular modes to break symmetry.&lt;br /&gt;
Mctdh90.31dv uses frequency-mass-weighted normal coordinates to describe molecular geometries. Each frequency-mass-weighted coordinate corresponds to a vibration of the molecule (and there are therefore 3N-6 coordinates). Displacements of atoms are described by a (or a combination of) vibration(s). Each vibration can be displaced in one of two directions: positive or negative. The 3N-6 frequency-mass-weighted coordinates can be classified by symmetry. Whether a particular symmetry mode is broken in the positive or negative direction will be equally likely if no initial momentum is given. Thus for each mode that is broken during a simulation the symmetry may break in the positive direction or the negative direction. There will be 2&amp;lt;sup&amp;gt;x&amp;lt;/sup&amp;gt; possible conical intersections corresponding to a particular starting geometry, where x is the number of modes that must be broken going from starting material to conical intersection.&lt;br /&gt;
&lt;br /&gt;
Additionally, care must be taken over atom labeling. It must be possible to transform the starting material into the conical intersection without permuting atom labels. If the conical intersection has been optimised by following the MEP downhill from the starting material this is not likely to be a problem. However, bear this in mind if drawing the conical intersection by hand.  &lt;br /&gt;
&lt;br /&gt;
Example: Butadiene&lt;br /&gt;
&lt;br /&gt;
Cis-butadiene belongs to the C&amp;lt;sub&amp;gt;2h&amp;lt;/sub&amp;gt; point group and its 3N-6 frequency-mass-weighted coordinates can be classified as A&amp;lt;sub&amp;gt;g&amp;lt;/sub&amp;gt;, B&amp;lt;sub&amp;gt;g&amp;lt;/sub&amp;gt;, A&amp;lt;sub&amp;gt;u&amp;lt;/sub&amp;gt; or B&amp;lt;sub&amp;gt;u&amp;lt;/sub&amp;gt; (see the C&amp;lt;sub&amp;gt;2h&amp;lt;/sub&amp;gt; character table and  GAUSSIAN frequency output). The S&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;/S&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt; conical intersection has no symmetry. Thus there are four symmetry modes that must be broken going from starting material to conical intersection. There are sixteen (2&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;) equivalent conical intersections that could be specified in coin.log, corresponding to all possible ways of distorting the starting geometry into the conical intersection geometry. The sixteen conical intersections correspond to: two structures resulting from disrotatory motion in one direction followed by out-of-plane twisting (and their enantiomers); two structures resulting from disrotatory motion in the other direction followed by out-of-plane twisting (and their enantiomers); two structures resulting from conrotatory motion in one direction followed by out-of-plane twisting (and their enantiomers); and  two structures resulting from conrotatory motion in the other direction followed by out-of-plane twisting (and their enantiomers). Each of the sixteen conical intersections will have a different arrangement of atomic labels but all can be reached by distorting the starting geometry.&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Creating the Directories&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* First of all, create a folder in which to save the calculations in your $HOME and $WORK directories. Create a directory in $HOME, and an identical directory in $WORK that has the same path. Keep pathlengths as short as possible (if the total path becomes too long the dynamics code will not run). For simplicity, in this case, we are going to assume that this directory is named &#039;&#039;fulv&#039;&#039; (for fulvene).&lt;br /&gt;
&lt;br /&gt;
     mkdir fulv&lt;br /&gt;
&lt;br /&gt;
* Create a subdirectory called &#039;&#039;&#039;dd_data&#039;&#039;&#039; in the new directory in $WORK.  Thus you should start with:&lt;br /&gt;
&lt;br /&gt;
    /home/$USER/fulv&lt;br /&gt;
    /work/$USER/fulv/dd_data&lt;br /&gt;
&lt;br /&gt;
* Important Note: it is essential to have the same path in both directories, $HOME and $WORK. Do not change the path-names within the HOME/WORK directories. If you re-name or move any subdirectory in your, for example HOME directory, you have to be consistent and make the same changes in the $WORK directory.&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Gaussian Output to be Used as Input for the Dynamics Program&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* Populate the new directory /work/$USER/buta/dd_data with four files which must be named: &#039;&#039;&#039;coin.log&#039;&#039;&#039;; &#039;&#039;&#039;start.fchk&#039;&#039;&#039;; &#039;&#039;&#039;start.log&#039;&#039;&#039;; and &#039;&#039;&#039;template.dat&#039;&#039;&#039;.These files are required in order to run any dynamics simulation, they are the basis that the script dd_generator (see the following section) will use to create the necessary files for running MCTDH (DD-vMCG).  You may also create a file named &amp;quot;&#039;momentum.dat&amp;quot;&#039; if you wish to give a momentum to the wavepacket(s) (this is optional and may be created later instead). &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;coin.log&#039;&#039;&#039; is the logfile resulting from the optimisation of the conical intersection. NB The MCTDH (DD-vMCG) program will rotate the conical intersection before starting the dynamics. To do this it must be provided with three angles which describe the appropriate rotation. There is an Excel spreadsheet available to calculate these angles (see the section entitled &amp;quot;Rotating the Conical Intersection&amp;quot;). NB the structure in coin.log need not necessarily be a true conical intersection: this point is only used for performing the diabatisation. Thus the diabatisation will be exact at this point and will become more approximate the further you are from it (on the PES). If you wish to use a point that is not a conical intersection, simply run a conical intersection optimisation (with only a single step) on the desired geometry. This will create a file with the same layout as a conical intersection optimisation output file (mctdh looks for certain things in this file so if some other type of .log file were used instead, it might not contain the required information). NB the final conical intersection log file must only contain one geometry (otherwise the dynamics program will not know which geometry to use). IS THIS STATEMENT TRUE FOR THIS VERSION??&lt;br /&gt;
&lt;br /&gt;
[[Media:coin.log]]&lt;br /&gt;
&lt;br /&gt;
(Insert a link here to section &amp;quot;Rotating the Conical Intersection&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;start.fchk&#039;&#039;&#039; is the formatted checkpoint file from the high precision vibrational modes of the ground state with state averaged orbitals (with atom types rather than numbers) (Part A, 6)&lt;br /&gt;
&lt;br /&gt;
[[Media:start.fchk]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;start.log&#039;&#039;&#039; is the log file from the high precision vibrational modes of the ground state with state averaged orbitals (with atom types rather than numbers) (Part A, 6)&lt;br /&gt;
&lt;br /&gt;
[[Media:start.log]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;template.dat&#039;&#039;&#039; is a template for the creation of GAUSSIAN input files by the MCTDH (DD-vMCG) program. It contains all the mutual keywords of the GAUSSIAN calculations which will be run on-the-fly by MCTDH (DD-vMCG). It also contains other information relating to the GAUSSIAN calculations such as memory requirements.&lt;br /&gt;
 &lt;br /&gt;
[[Media:template.dat]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;momentum.dat&#039;&#039;&#039; is a file containing a list of values to be used as vectors to indicate the momentum to be given to a particular (set of) wavepacket(s). The vectors must be listed in the order of the frequency-mass-weighted normal coordinates specified in the Excel spreadsheet. They give the magnitude of the momentum to be given along each of these frequency-mass-weighted normal coordinates. N.B. The signs of the values here are important!&lt;br /&gt;
 &lt;br /&gt;
[[Media:momentum.dat]]&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;The Generator&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* The &amp;quot;generator&amp;quot; script uses the GAUSSIAN output files (above) along with other information supplied by the user to create input files for MCTDH (DD-vMCG).&lt;br /&gt;
&lt;br /&gt;
* Navigate to /home/$USER/buta and run the generator by typing:&lt;br /&gt;
&lt;br /&gt;
     dd_generator&lt;br /&gt;
&lt;br /&gt;
for the HPC Cluster, or &lt;br /&gt;
&lt;br /&gt;
     dd_generator_MAC&lt;br /&gt;
&lt;br /&gt;
for a MAC OS X system&lt;br /&gt;
&lt;br /&gt;
* Typing dd_generator will run the script automatically. After installing the MCTDH (DD-vMCG) package this command has been added to your list of executable commands. &lt;br /&gt;
&lt;br /&gt;
     ********************************************************************************&lt;br /&gt;
     ********************    -------  DD GENERATOR  --------    *****************&lt;br /&gt;
     ********************************************************************************&lt;br /&gt;
&lt;br /&gt;
* The generator will ask a series of questions and will use the answers provided to prepare the input files for the dynamics program. The questions it asks are listed below along with answers for a trial run on butadiene.&lt;br /&gt;
&lt;br /&gt;
==== List of questions asked by dd_generator====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;blockquote style=&amp;quot;background: white; border: 1px solid black; padding: 1em;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Question&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; &#039;&#039;&#039;Answer for this tutorial&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; &#039;&#039;&#039;Explanation&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Which version of GAUSSIAN should we use? (gdvh01|g03)&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; gdvh01 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;How many shared-memory processors should we use? (1|2|4|8)&lt;br /&gt;
N.B.: (ncpus=1) serial or (ncpus=2|4|8) parallel (omp) version of MCTDH launched as batch job&lt;br /&gt;
and launching monoprocessor GAUSSIAN interactive jobs (nprocshared=1 or no specification)&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 1 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the name of the molecule?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; fu11 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; The first four letters will be used to name the new files that the generator is creating &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the number of atoms?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 12 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;The number of nuclear degrees of freedom is 30.&lt;br /&gt;
Do you want to reduce the dimensionality? (y|n)&lt;br /&gt;
(N.B.: this can be used also for re-ordering the coordinates)&lt;br /&gt;
&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; n &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the number of nuclear Gaussian functions?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 1 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt; 1 means 1 gaussian on state 1 and 1 gaussian on state 2. This is the &amp;quot;single-set&amp;quot; implementation of MCTDH (DD-vMCG) therefore the gaussian wavepacket on state 1 is the same as the gaussian wavepacket on state 2.&amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;&#039;What is the final propagation time (in fs)?&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 150 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the propagation time step (in fs)?&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 0.1 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the number of electronic states? (1|2)&#039;&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 2 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the highest electronic root?&#039;&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 2 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;From which electronic state should the wavepacket start? (2|1)&#039;&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 2 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Will there be an initial momentum given to the wavepacket? (y|n)&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; n &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Do you want to add a reference label to the name of the case? (y|n)&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; y &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Please type your text:&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; trial &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;This question is only asked if the answer to the previous question was yes.  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What will be the status of the database? (rdwr|rd|wr|none)&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; none &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; Choose rd for read, wr for write etc. In this case we are not going to use the database, but if it was used (rd or rdwr is specified) the script would ask the user to specify the threshold below which the database values will be used (%). In this case the value none is chosen so this question is not asked.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Please type the value of the maximum-difference criterion (in %):&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 1 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;If 1 is specified, the database value will be used if the geometry is within 1% of the new geometry being calculated&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;&amp;gt;&amp;gt; Manual rotation (using Excel spreadsheet) &amp;lt;&amp;lt;&lt;br /&gt;
   Please type the values of the three Euler angles (in deg)&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 0&lt;br /&gt;
0&lt;br /&gt;
0 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Tuple from the dd_generator method (insert link)&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;The generator will now tell you that it has read the files start.fchk from the folder /work/$USER/fulv/dd_data/ and written the file start.chk.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Read formatted file /work/$USER/fulv/dd_data/start.fchk&lt;br /&gt;
 Write checkpoint file /work/$USER/fulv/dd_data/start.chk&lt;br /&gt;
using /apps/gaussian/g03_e01/g03/unfchk&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Files created by the generator&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* The generator will now tell you that it has read the files start.log, coin.log and momentum.dat (if a momentum has been specified) from the folder /work/dm107/dyn/dd_data/:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
   about to read parameters...&lt;br /&gt;
   ... parameters just read&lt;br /&gt;
   about to read file /work/dm107/dyn_90dev/dd_data/start.log                   &lt;br /&gt;
                                                               ...&lt;br /&gt;
   ... file /work/dm107/dyn_90dev/dd_data/start.log                             &lt;br /&gt;
                                                      read successfully&lt;br /&gt;
   about to read file /work/dm107/dyn_90dev/dd_data/coin.log                    &lt;br /&gt;
                                                               ...&lt;br /&gt;
 *********************************************************&lt;br /&gt;
 Mass-weighted displacement from start to coin:&lt;br /&gt;
    old total norm: 22.070387&lt;br /&gt;
    new total norm:  4.669035&lt;br /&gt;
  vibrational part:  4.669035&lt;br /&gt;
   rotational part:  0.000000&lt;br /&gt;
 *********************************************************&lt;br /&gt;
   ... file /work/dm107/dyn_90dev/dd_data/coin.log                             &lt;br /&gt;
                                                      read successfully&lt;br /&gt;
   about to read file /work/dm107/dyn_90dev/dd_data/momentum.dat                      &lt;br /&gt;
                                                               ...&lt;br /&gt;
 *********************************************************&lt;br /&gt;
 Using the momentum given in momentum.dat would have given&lt;br /&gt;
an excess kinetic energy (in eV) of: 15.269&lt;br /&gt;
 For your information, the momentum has been multiplied&lt;br /&gt;
by a factor of:  0.572&lt;br /&gt;
 *********************************************************&lt;br /&gt;
  &lt;br /&gt;
   ... file /work/dm107/dyn_90dev/dd_data/momentum.dat                                &lt;br /&gt;
                                                      read successfully&lt;br /&gt;
&amp;lt;/pre&amp;gt; &lt;br /&gt;
&lt;br /&gt;
and that the extraction of data and the creation of a summary file were done successfully. If the Mass-weighted displacement from start to coin appears as NaN it may be because the start.log contains atom numbers rather than atom types. You will need to redo the freq=hpmodes job with atom types.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Data extracted successfully&lt;br /&gt;
The summary of this file generation is in:&lt;br /&gt;
-rw-r--r--  1 dm107 hpc-users 3070 Dec  2 17:06 /home/dm107/dyn_90dev/but1dd1o.txt&lt;br /&gt;
 &lt;br /&gt;
Do not forget you still can add a momentum, change the integrator, change convergence criteria for GAUSSIAN and MCTDH...&lt;br /&gt;
 &lt;br /&gt;
Do not forget to check the order of the atoms of the conical intersection geometry in /work/dm107/dyn_90dev/dd_data/coin.log&lt;br /&gt;
 &lt;br /&gt;
Now go to your jobscript file and give values to the memory and walltime.&lt;br /&gt;
 &lt;br /&gt;
Good luck!&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* The dd_generator script has generated four files in the same directory (/home/$USER/buta):&lt;br /&gt;
&lt;br /&gt;
# but1dd1p_trial.inp  &lt;br /&gt;
# but1dd1p_trial.job  &lt;br /&gt;
# but1dd1p_trial.txt  &lt;br /&gt;
# but1dd_none.op&lt;br /&gt;
&lt;br /&gt;
(Link to a more detailed explanation of this files)&lt;br /&gt;
&lt;br /&gt;
* The script has also created some files and directories in /work/$USER/buta where the MCTDH (DD-vMCG) and GAUSSIAN calculations will be stored:&lt;br /&gt;
&lt;br /&gt;
1) Directories:&lt;br /&gt;
&lt;br /&gt;
* butadd1p_trial&lt;br /&gt;
* butadd1p_trial/dd_data&lt;br /&gt;
&lt;br /&gt;
2) Files (in butadd1o_trial/dd_data):&lt;br /&gt;
&lt;br /&gt;
# refdb.dat &lt;br /&gt;
# start.chk  &lt;br /&gt;
# template.dat&lt;br /&gt;
# forward.dat&lt;br /&gt;
# backward.dat&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Modifications to be made to the files before running the dynamics&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* In the .job file in /home/$USER/buta specify the memory and walltime if you are in the HPC Cluster.&lt;br /&gt;
&lt;br /&gt;
* When running a development version of GAUSSIAN (gdvg03 or gdvg01), copy the start.chk file into the folder /work/$USER/dyn_90dev/but1dd1p_trial/dd_data. The unformatted checkpoint file from start.fchk that dd_generator has created is corrupted (due to a bug in formchk in gdvg01).&lt;br /&gt;
&lt;br /&gt;
====Starting from a point other than the Franck-Condon point====&lt;br /&gt;
&lt;br /&gt;
When the molecule is highly symmetric and there is more than one equivalent conical intersection (see above) it may be necessary to direct the wavepacket towards the particular conical intersection described in coin.log. The easiest way to do this is to use an initial momentum but it can also be achieved by distorting the geometry of the starting structure slightly towards the conical intersection (i.e. breaking the symmetry in the appropriate direction(s)).&lt;br /&gt;
&lt;br /&gt;
Define the new starting geometry in frequency-mass-weighted normal coordinates (this can be done using the Excel spreadsheet). One option for selecting the new geometry is to use a fraction of the displacement from the FC point to the conical intersection. &lt;br /&gt;
&lt;br /&gt;
After running dd_generator in the normal way, replace the default FC geometry in the .inp file with the new geometry. This geometry (frequency-mass-weighted-coordinates of the centre of the wavepacket) forms the fourth column in the section entitled INIT_WF-SECTION (in .inp).&lt;br /&gt;
&lt;br /&gt;
If the new geometry is very different from the FC geometry, run a single-point state-averaged-CAS calculation (start from RHF, look at the MOs, alter if needed, and check the final active MOs) and call the resulting .chk file start.chk. Replace the start.chk that would have been used ($WORK/buta/but1dd1p_trial/dd_data/start.chk) with this new start.fchk. If the distorted geometry is close enough to the FC geometry it may not be necessary to generate a new start.chk. (When the distortion is large there is a risk of breaking the active space from FC to the new point. Creating a new start.chk is just a way of making sure the starting active space is OK at the new point.) If you are creating a new start.fchk, run the solver on that geometry (relative to the original starting geometry) in the Excel spreadsheet. Create the new start.chk using the geometry in the orange box (so that it is in the same orientation as the molecule in start.log).&lt;br /&gt;
&lt;br /&gt;
N.B. There is no need to replace start.log even when start.fchk is replaced.&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Running the dynamics&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* Navigate to /home/$USER/buta. Queue the job file. In this case, type:&lt;br /&gt;
&lt;br /&gt;
     qsub butadd1p_trial.job&lt;br /&gt;
&lt;br /&gt;
for MAC OS X users the shell command is already written in butadd1p_trial.job&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;The Database (DB)&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
The DB is made of four binary files:&lt;br /&gt;
geo.db&lt;br /&gt;
pes.db&lt;br /&gt;
gra.db&lt;br /&gt;
hes.db&lt;br /&gt;
They can be used in place of GAUSSIAN calculations to save some&lt;br /&gt;
computation time when you ask for DBrd or DBrdwr.&lt;br /&gt;
&lt;br /&gt;
Each set of geometry, energy, gradient and Hessian (the latter&lt;br /&gt;
three quantities having been calculated by GAUSSIAN for the two&lt;br /&gt;
adiabatic electronic states) will be called a DB record and&lt;br /&gt;
assigned a record number defining the order of occurrence in the DB.&lt;br /&gt;
If you run a calculation where the DB is to be read, in the *.res&lt;br /&gt;
file that you obtain after the calculation is done (file that&lt;br /&gt;
actually is a redirection of the standard output) you will see the&lt;br /&gt;
number of records in the DB as it grows.&lt;br /&gt;
Example (formaldehyde, multi-set 1+1):&lt;br /&gt;
          53&lt;br /&gt;
 s=  1 e=  1 t=   0.000 V1=   0.001 V2=   4.533 H11=   0.001 H22=&lt;br /&gt;
 4.533 H12=   0.000 q=   0.0000    0.0000    0.0000    0.0000&lt;br /&gt;
 0.0000    0.0000&lt;br /&gt;
          53&lt;br /&gt;
 s=  2 e=  1 t=   0.000 V1=   0.001 V2=   4.533 H11=   0.001 H22=&lt;br /&gt;
 4.533 H12=   0.000 q=   0.0000    0.0000    0.0000    0.0000&lt;br /&gt;
 0.0000    0.0000&lt;br /&gt;
          53&lt;br /&gt;
 s=  1 e=  1 t=   0.500 V1=   0.197 V2=   4.701 H11=   0.211 H22=&lt;br /&gt;
 4.687 H12=   0.251 q=  -0.6258   -0.6146    0.6136    0.6049&lt;br /&gt;
 -0.5520   -0.0616&lt;br /&gt;
          53&lt;br /&gt;
 s=  2 e=  1 t=   0.500 V1=   0.000 V2=   4.533 H11=   0.000 H22=&lt;br /&gt;
 4.533 H12=  -0.001 q=   0.0009    0.0009    0.0093   -0.0245&lt;br /&gt;
 -0.0066    0.0001&lt;br /&gt;
          53&lt;br /&gt;
 &lt;br /&gt;
 ERROR in subroutine Distdb :&lt;br /&gt;
 Redundant records in Data Base:   18   19&lt;br /&gt;
 s=  1 e=  1 t=   1.000 V1=   0.469 V2=   4.455 H11=   0.479 H22=&lt;br /&gt;
 4.445 H12=   0.200 q=  -0.4640   -0.5641    1.2594   -0.5871&lt;br /&gt;
 -1.0864   -0.1120&lt;br /&gt;
          53&lt;br /&gt;
 s=  2 e=  1 t=   1.000 V1=   0.001 V2=   4.473 H11=   0.001 H22=&lt;br /&gt;
 4.473 H12=  -0.002 q=   0.0003    0.0004    0.0404   -0.0944&lt;br /&gt;
 -0.0292    0.0001&lt;br /&gt;
          53&lt;br /&gt;
 s=  1 e=  1 t=   1.500 V1=   0.113 V2=   4.543 H11=   0.120 H22=&lt;br /&gt;
 4.536 H12=   0.170 q=  -0.3994   -0.4377    0.5444    0.2057&lt;br /&gt;
 -0.5149   -0.0638&lt;br /&gt;
          53&lt;br /&gt;
 s=  2 e=  1 t=   1.500 V1=   0.013 V2=   4.390 H11=   0.013 H22=&lt;br /&gt;
 4.390 H12=  -0.005 q=   0.0009    0.0010    0.0897   -0.2104&lt;br /&gt;
 -0.0634    0.0002&lt;br /&gt;
          53&lt;br /&gt;
 s=  1 e=  1 t=   2.000 V1=   0.068 V2=   4.431 H11=   0.071 H22=&lt;br /&gt;
 4.428 H12=   0.110 q=  -0.2751   -0.3274    0.4796   -0.0812&lt;br /&gt;
 -0.3880   -0.0605&lt;br /&gt;
          54&lt;br /&gt;
 s=  2 e=  1 t=   2.000 V1=   0.019 V2=   4.367 H11=   0.019 H22=&lt;br /&gt;
 4.367 H12=  -0.009 q=   0.0012    0.0013    0.1563   -0.3658&lt;br /&gt;
 -0.1058    0.0003&lt;br /&gt;
          54&lt;br /&gt;
 s=  1 e=  1 t=   2.500 V1=   0.064 V2=   4.273 H11=   0.065 H22=&lt;br /&gt;
 4.272 H12=  -0.064 q=   0.2559    0.0914    0.1691   -0.7218&lt;br /&gt;
 -0.1052   -0.0595&lt;br /&gt;
          55&lt;br /&gt;
 s=  2 e=  1 t=   2.500 V1=   0.070 V2=   4.258 H11=   0.070 H22=&lt;br /&gt;
 4.257 H12=  -0.013 q=   0.0013    0.0015    0.2384   -0.5572&lt;br /&gt;
 -0.1528    0.0004&lt;br /&gt;
&lt;br /&gt;
Here, we started with a DB of 53 records. It is large enough until&lt;br /&gt;
2 fs, where an additional record is produced, and so on.&lt;br /&gt;
The error message saying here that records 18 and 19 are identical&lt;br /&gt;
will not prevent the code from working. It is just here to remind you&lt;br /&gt;
that the DB is not clean in that it has redundant records.&lt;br /&gt;
This is to be prevented as the DB files might become large quite&lt;br /&gt;
rapidly and all records will be read at each update time (dd_update&lt;br /&gt;
= tout in the integrator section, tout = xxx fs in the run section&lt;br /&gt;
of the *.inp file) for each Gaussian function.&lt;br /&gt;
&lt;br /&gt;
Incidentally, when you want to analyse results written to a *.res&lt;br /&gt;
file, you need to look for lines starting with &amp;quot;s=&amp;quot; (other lines&lt;br /&gt;
are various messages and numbers of DB records).&lt;br /&gt;
The criterion for using the DB is to be seen as a maximum-allowed&lt;br /&gt;
relative difference&lt;br /&gt;
&lt;br /&gt;
So, it is up to you to clean the DB when you see this, and to keep&lt;br /&gt;
this in mind when you concatenate DBs that have branched in their&lt;br /&gt;
past (see more details below).&lt;br /&gt;
&lt;br /&gt;
Also, a given DB depends on the choice of a reference geometry in&lt;br /&gt;
Cartesian coordinates because geometries written to the DB files&lt;br /&gt;
will always be re-orientated with respect to this particular&lt;br /&gt;
geometry. The back and forth transformations are performed by MCTDH (DD-vMCG)&lt;br /&gt;
so you don&#039;t need not worry about this.&lt;br /&gt;
This geometry is written to refdb.dat. It is the starting geometry&lt;br /&gt;
that comes from start.log (the only difference being that it is&lt;br /&gt;
mass-centred).&lt;br /&gt;
As long as you do not change the starting geometry or the nature&lt;br /&gt;
of the electronic states, you can thus keep growing the DB of your&lt;br /&gt;
system.&lt;br /&gt;
&lt;br /&gt;
MANAGING THE DATA BASE&lt;br /&gt;
&lt;br /&gt;
A set of DB  programs can be found in XXXXX. Their roles are&lt;br /&gt;
explained below.&lt;br /&gt;
For now, the sources are in dd_utildev and dd_util.31dv and the&lt;br /&gt;
executables are in mctdh90dev/bin and mctdh90.31dv/bin, so you can&lt;br /&gt;
call them from anywhere, as long as DB files are there.&lt;br /&gt;
&lt;br /&gt;
1) countdb.out: returns the number of records of the current DB&lt;br /&gt;
2) cleandb.out: &amp;quot;brute-force&amp;quot; cleaning of the current DB. This&lt;br /&gt;
might be too long to be run interactively when the number of&lt;br /&gt;
records is too large, because each record needs to be compared to&lt;br /&gt;
each other record (e.g. a DB with ca. 3800 records will take a couple of minutes to clean interactively). If so, run in batch mode (ask me or Marta if you&lt;br /&gt;
have a doubt).&lt;br /&gt;
The cleaned files are:&lt;br /&gt;
geoclean.db&lt;br /&gt;
pesclean.db&lt;br /&gt;
graclean.db&lt;br /&gt;
hesclean.db&lt;br /&gt;
You need to rename them without &#039;clean&#039; for them to be used as a DB.&lt;br /&gt;
3) cutdb.out: allows you to cut out the beginning of a DB.&lt;br /&gt;
This is to be used in the following situation:&lt;br /&gt;
- You start from a mother DB, DB0, assumed to be clean, with N0&lt;br /&gt;
records.&lt;br /&gt;
- You want to use DB0 in two independent calculations. You&lt;br /&gt;
replicate DB0 to daughter DBs, DB1 and DB2.&lt;br /&gt;
- When these calculations are done, DB1 and DB2 have grown to N0+N1&lt;br /&gt;
and N0+N2 records, respectively.&lt;br /&gt;
- You want to concatenate them to create a new mother DB, DB3.&lt;br /&gt;
- DB1 and DB2 have their N0 first records the same. To avoid&lt;br /&gt;
redundant records, you need to cut N0 records from DB2 for example.&lt;br /&gt;
--&amp;gt; go to where DB2 is and use cleandb.out&lt;br /&gt;
The resulting files are:&lt;br /&gt;
geocut.db&lt;br /&gt;
pescut.db&lt;br /&gt;
gracut.db&lt;br /&gt;
hescut.db&lt;br /&gt;
these have N1 records.&lt;br /&gt;
--&amp;gt; rename DB1, for instance geo.db1 etc., and concatenate the files:&lt;br /&gt;
cat geo.db1 geoclean.db &amp;gt; geo.db&lt;br /&gt;
etc.&lt;br /&gt;
- Your new mother DB, DB3, should now have N0+N1+N2 distinct records.&lt;br /&gt;
4) deldb.out: allows you to remove one selected record (for&lt;br /&gt;
instance if corrupted) from the DB if you know its number.&lt;br /&gt;
The resulting files are:&lt;br /&gt;
geodel.db&lt;br /&gt;
pesdel.db&lt;br /&gt;
gradel.db&lt;br /&gt;
hesdel.db&lt;br /&gt;
You need to rename them without &#039;del&#039; for them to be used as a DB.&lt;br /&gt;
5) seedb.out: allows you extract one selected record from the&lt;br /&gt;
binary files for reading it (the record is not removed from the DB).&lt;br /&gt;
The resulting file can be read as a text file (ascii) and is:&lt;br /&gt;
see.db&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Restarting dynamics jobs&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
The examples below make use of the directory and filenames in the examples above.&lt;br /&gt;
&lt;br /&gt;
A dynamics run can be restarted if the job was terminated before completion (e.g if it ran out of time or failed because of convergence problems) or if the user wishes to continue the job for a longer time period than had originally been specified. The program will continue writing the same output file but will overwrite the .res file. Thus the .res file should be saved under a different name to prevent loss of the data calculated in the original run. The .res is not written until the job stops so this can be done after the restart.&lt;br /&gt;
&lt;br /&gt;
*To increase the final propagation time&lt;br /&gt;
&lt;br /&gt;
Retrieve the .inp file (in $HOME/buta) and change &#039;&#039;propagation&#039;&#039; to &#039;&#039;continuation&#039;&#039; in the section entitled RUN-SECTION. Then change the final time &#039;&#039;tfinal&#039;&#039; to a larger value. (NB this new value should include the time already done).&lt;br /&gt;
&lt;br /&gt;
Re-queue the job.&lt;br /&gt;
&lt;br /&gt;
*To increase the number of scf cycles (the most common reason for convergence failure)&lt;br /&gt;
&lt;br /&gt;
Edit the template.dat file in $WORK/buta/but1dd1p_trial/dd_data. Insert scf=(maxcycle=128) on the keyword line (for example). It is important that you change the template.dat file in the but1dd1p_trial/dd_data folder that was created by dd_generator (rather than the one created by the user in $WORK/buta/dd_data) because the original $WORK/buta/dd_data/template.dat file is only read by dd_generator and used to create the job-specific file in the job folder. (Of course if you wish all future jobs run in $WORK/buta  to have increased scf cycles, change the other template.dat file in $WORK/buta/dd_data too.)&lt;br /&gt;
&lt;br /&gt;
Re-queue the job.&lt;br /&gt;
&lt;br /&gt;
*To increase the run-time so that a job will finish&lt;br /&gt;
&lt;br /&gt;
Edit the walltime in the .job file in the $HOME directory and re-queue the job.&lt;br /&gt;
&lt;br /&gt;
=&#039;&#039;&#039;Analysis of the results&#039;&#039;&#039;=&lt;br /&gt;
&lt;br /&gt;
The most important files are the output and .res files.&lt;br /&gt;
&lt;br /&gt;
=== Detailed information about files and directories ===&lt;br /&gt;
&lt;br /&gt;
*output&lt;br /&gt;
&lt;br /&gt;
The output contains some standard results:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Time&#039;&#039;&#039;: time in fs.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;CPU&#039;&#039;&#039;:  CPU time in s.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Norm&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;E-tot&#039;&#039;&#039;: the total energy in eV. This value should be conserved (i.e by the end of the run the E-tot value should not be too different  from what it was a time=0).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;E-corr&#039;&#039;&#039;: correlated Hamiltonian energy&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Delta-E&#039;&#039;&#039;: diference between E-tot at time t=0 and the current time t&lt;br /&gt;
&lt;br /&gt;
Note: In a multi-packet run, i.e. when npacket &amp;gt; 1, the total energy and the norm of the wavefunction, as given in the &amp;quot;total&amp;quot; part, are averaged over the packets.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;population&#039;&#039;&#039; : diabatic populations of state 1 and state 2 (in that order) at the current time t&lt;br /&gt;
&lt;br /&gt;
For every mode:	&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt; q &amp;gt;&#039;&#039;&#039;: position expectation value&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;dq&amp;gt;&#039;&#039;&#039;: standard deviation Sqrt[&amp;lt; q&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt; &amp;gt; - &amp;lt; q &amp;gt;&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt; p &amp;gt;&#039;&#039;&#039; : momentum expectation value&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;dq&amp;gt;&#039;&#039;&#039;: standard deviation Sqrt[&amp;lt; p&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt; &amp;gt; - &amp;lt; p &amp;gt;&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*.res&lt;br /&gt;
&lt;br /&gt;
This file contains the energy of each state (diabatic and adiabatic) at each timestep for each gaussian function:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;s&#039;&#039;&#039; is a redundant value in mctdh90.31dv. It is only meaningful in multi-set implementations of mctdh (where there are double the number of gaussian functions than specified: one for each state). (It indicates whether the gaussian function in question is on the lower (1) or upper (2) state. (In the single set implementation, the gaussian functions on each state are identical)).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;e&#039;&#039;&#039; is a label given to each gaussian function&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;t&#039;&#039;&#039; is the current time in fs&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;V1&#039;&#039;&#039; is the energy of the lower adiabatic state at time t&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;V2&#039;&#039;&#039; is the energy of the upper adiabatic state at time t&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;H11&#039;&#039;&#039; is the energy of the lower diabatic state at time t&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;H22&#039;&#039;&#039; is the energy of the upper diabatic state at time t&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;H12&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;q&#039;&#039;&#039; is the list of frequency mass-weighted normal coordinates that describe the geometry at time t&lt;br /&gt;
&lt;br /&gt;
The end of the file will read something like: &lt;br /&gt;
&lt;br /&gt;
     Propagation was successful.&lt;br /&gt;
     &lt;br /&gt;
     Total time     [h:m:s] :    0 :  1 : 21.60&lt;br /&gt;
     &lt;br /&gt;
      ---------------------------------------------------------------------------&lt;br /&gt;
      ------ Host: &amp;quot;cx1-3-2-4&amp;quot; ----------Sat Jan 17 06:50:20 2009&lt;br /&gt;
&lt;br /&gt;
The other most common result is that the calculation aborted because of scf convergence problems in the CASSCF GAUSSIAN calculations. In this case the ouput file will break off after the last complete step and the end of the .res file will read something like:&lt;br /&gt;
     ERROR in subroutine Getddpes :&lt;br /&gt;
     CAS convergence failed for gwp on state:    1    1&lt;br /&gt;
&lt;br /&gt;
If the job terminates due to scf convergence problems, it may be possible to restart it after modifying the .inp and/or .job and/or template.dat files.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*log&lt;br /&gt;
&lt;br /&gt;
This file contains information such as the source code version, type of calculation performed, integrator used, numerical parameters, which data files are opened, any error messages, and much more. The information provided by the log file can be very helpful, in particular when searching for errors. One should always carefully inspect the log file.&lt;br /&gt;
&lt;br /&gt;
* dvr&lt;br /&gt;
&lt;br /&gt;
* oper&lt;br /&gt;
&lt;br /&gt;
*ddpeserr&lt;br /&gt;
&lt;br /&gt;
*input&lt;br /&gt;
&lt;br /&gt;
*op.log&lt;br /&gt;
&lt;br /&gt;
*psi&lt;br /&gt;
&lt;br /&gt;
*check&lt;br /&gt;
&lt;br /&gt;
*auto&lt;br /&gt;
&lt;br /&gt;
*ddpes&lt;br /&gt;
&lt;br /&gt;
*restart&lt;br /&gt;
&lt;br /&gt;
*stop&lt;br /&gt;
&lt;br /&gt;
*speed&lt;br /&gt;
&lt;br /&gt;
*timing&lt;br /&gt;
&lt;br /&gt;
*update&lt;br /&gt;
&lt;br /&gt;
=== Example: butadiene ===&lt;br /&gt;
&lt;br /&gt;
*Examine the end of the output file to check that the calculation ran to completion.&lt;br /&gt;
     &lt;br /&gt;
*Plot the energy of the diabatic and adiabatic states over time (.res file: V1, V2, H11 and H22). Calculate V2-V1 and H22-H11 and plot these also. H12 may also be plotted on the same graph.&lt;br /&gt;
[[Image:EnergyofStates.png]]&lt;br /&gt;
&lt;br /&gt;
The diabatic states cross at 176.2 fs and the adiabatic states cross at 174.5 fs. At a conical intersection, the value V2-V1 will become negative and the H22-H11 will be a minimum (&amp;lt;1eV). Ideally these crossings will occur at the same time. If the diabatisation has worked well, after V2-V1 becomes negative, V2-V1 and H22-H11 will become mirror images (i.e. the diabatic and adiabatic states follow each other). &lt;br /&gt;
&lt;br /&gt;
*Plot the value of the total energy over time (.res file: E-tot). Verify that the Delta-E value is not too large (compare with the total energy (E-tot) at time 0).&lt;br /&gt;
[[Image:TotalEnergy.png]]&lt;br /&gt;
&lt;br /&gt;
*Plot the population of one of the (diabatic) states over time (.res file: population).&lt;br /&gt;
[[Image:Population.png]]&lt;br /&gt;
&lt;br /&gt;
At the conical intersection the population transfer is large. In this case the job has been terminated after 200 fs. Usually the calculation should be continued until the populations stabilise (which obviously has not happened in this case).&lt;br /&gt;
&lt;br /&gt;
=== Making a Movie ===&lt;br /&gt;
&lt;br /&gt;
Navigate to /work/$USER/buta/but1dd1p_trial (the place where the .res file was written). Type:&lt;br /&gt;
 dd_movie.out&lt;br /&gt;
* The script will ask a series of questions and will use the answers provided to create a file that can be read into Molden or iMol.&lt;br /&gt;
&lt;br /&gt;
==== List of questions asked by dd_movie.out====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;blockquote style=&amp;quot;background: white; border: 1px solid black; padding: 1em;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Question&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; &#039;&#039;&#039;Answer for this tutorial&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; &#039;&#039;&#039;Explanation&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the number of atoms?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 10 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the actual number of active coordinates?&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 24 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; In this case all coordinates were active (so there are 3N-6 where N is the number of atoms) &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Name of result file to read?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; but1dd1p_trial.res &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;Ensure that the forward.dat and backward.dat files are located in the current directory in the folder dd_data (they will have been written there automatically)&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Name of movie file to write?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; but1dd1p_trial.xyz &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; Choose any name .xyz &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Which electronic state (s=...)?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 1 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;Choose 1 (this question dates from the multi-set implementation of mctdh where the wavepackets on each state were different)  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Which Gaussian function (e=...)?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 1 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;In this case we have only one wavepacket&amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;The script will now return the number of lines and the initial number of points&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
number of lines:        4684&lt;br /&gt;
initial number of points:        4674&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Maximum number of points you want?&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 4674 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;If you wish to view the movie in Molden you must reduce the number of points to less than 100 (so choose 99 for maximum number of points). iMol can cope with any number of frames so choose the number printed by the script: this number will be reduced and the script will tell you how many points it has written. &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
writing frequency:           2&lt;br /&gt;
   final number of points:        2337&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The .xyz file is ready to be opened in Molden or iMol.&lt;br /&gt;
&lt;br /&gt;
= &#039;&#039;&#039;Current Known Bugs&#039;&#039;&#039; =&lt;br /&gt;
&lt;br /&gt;
Parallelisation:&lt;br /&gt;
&lt;br /&gt;
It is not possible to run calculations in parallel with version 90.31dv (reading the same template.dat file simultaneously by each processor is causing problems). In 90.35tmp this is ok. In 90.4X it will also be fixed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Total energy:&lt;br /&gt;
&lt;br /&gt;
1) The total energy is sometimes &amp;quot;artificially&amp;quot; increased by a lot. If so, try a different integrator or play around with the timestep (may need to get larger or smaller). Or try increasing scf convergence to 10&amp;lt;sup&amp;gt;-12&amp;lt;/sup&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
2) If Delta-E suddenly becomes too large, you can get the following message: &lt;br /&gt;
&amp;quot;ERROR in subroutine WRGAUSSIAN :&lt;br /&gt;
 Do not use $Swap:...$ metastring in file /.../template.dat&amp;quot;&lt;br /&gt;
Often, when getting this message, no more steps are added to the simulation, although the calculation seems to keep running (the integrator keeps trying and failing).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Using the database:&lt;br /&gt;
&lt;br /&gt;
1) Every record generated with mctdh90.31dev and several GWPs is corrupted, so, for now, when launching calculations with more that one wavepacket, use &amp;quot;formdd_none.op&amp;quot; (i.e. do not read nor write the database).&lt;br /&gt;
[For instance, when using dbrdwr and starting from a clean db, all newly generated records are added to the existing database, even if they are identical to records that were already written in the db.]  In 90.35tmp this is ok. In 90.4X it will also be fixed.&lt;br /&gt;
&lt;br /&gt;
2) Records obtained in calculations with one GWP should be OK, but this is still to be confirmed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Impossible case&amp;quot;:&lt;br /&gt;
&lt;br /&gt;
Error message that forces the calculation to stop. It seems to be associated with moving towards an &amp;quot;unexpected&amp;quot; geometry (e.g. a radical).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
State Averaging:&lt;br /&gt;
&lt;br /&gt;
To increase the threshold above which stateaveraging is turned off, increase the default value of 10 (to e.g. 50)  in the line &#039;&#039;ddregions&#039;&#039; in the OPERATOR-SECTION of the .inp file.&lt;br /&gt;
&lt;br /&gt;
= &#039;&#039;&#039;Questions and Modifications to be made to this wiki&#039;&#039;&#039; =&lt;br /&gt;
&lt;br /&gt;
*Why we would ever need to start the gwps from the lower state? To study GS rxns; chemiluminesence (eg glowworms).&lt;br /&gt;
*In terms of Delta-E, how much is too much? ca1eV but shape of E-tot vs time is important: discontiunities or v flat then steep increase are less reliable than smooth gradual increases.&lt;br /&gt;
*Benjamin: Note that Marta has noticed that for very strange geometries, you may receive an error message saying &amp;quot;impossible case&amp;quot;, which stops MCTDH. It is too complicated to explain here. I know where this happens in the code, and I should prevent this error to stop the code but I didn&#039;t have time to fix this. I&#039;ll do it soon.&lt;br /&gt;
*Need to edit/correct section on the DB.&lt;br /&gt;
*Is does unfchk in gdvg03 create corrupted fchk files? G03 is fine. we don&#039;t know about gdvg03 but we don&#039;t care because we probablly won&#039;t use it.&lt;br /&gt;
&lt;br /&gt;
=== [[Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial|back]] ===&lt;/div&gt;</summary>
		<author><name>Vs13</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/run&amp;diff=333939</id>
		<title>Resgrp:comp-photo-dyn/mctdh90.56dv Fulvene Tutorial/run</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/run&amp;diff=333939"/>
		<updated>2013-04-24T15:21:06Z</updated>

		<summary type="html">&lt;p&gt;Vs13: /* List of questions asked by dd_generator */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= &#039;&#039;&#039;Basic use of the MCTDH (DD-vMCG) package&#039;&#039;&#039; =&lt;br /&gt;
&lt;br /&gt;
A script called dd_generator uses GAUSSIAN output files and user input to write the input files for mctdh (DD-vMCG).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Notes&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;The number of gaussian wavepackets (requested by the dd_generator script)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Start with one (to keep calculation times short). When an appropriate momentum, time period, time step and integrator have been established, increase the number of wavepackets until the results are not changed by adding more. Calculation times are proportional to the number of wavepackets. To ensure efficient use of computing resources, always specify an even number of wavepackets if using more than one processor (since the number of processors can only be an even number: currently 2, 4 or 8).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;The database&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The most time-consuming part of a dynamics run is the GAUSSIAN CASSCF calculations. The results of these calculations can be stored in a database and re-used in future runs. The user must choose whether or not to read and/or write a database. Each calculation will write a separate database so the databases from each run must be combined (and any duplicate entries removed (to save space)). LINK HERE TO SECTION ON MANAGING THE DATABASE&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Initial momentum&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
An initial momentum can be specified to direct the wavepacket to a particular area of the PES (e.g. towards a conical intersection, a transition state or minimum geometry). The momentum is given as a geometry (in frequency mass weighted normal coordinates). The Excel spreadsheet used for rotation of the conical intersection can be used to transform the coordiinates of the desired geometry. If the user requests an initial momentum, dd_generator will search for a file called momentum.dat. If this file is found, dd_generator will ask if the user wishes to use the momentum specified in it. The user can then specify how much energy to give (in eV). Thus, the values in momentum.dat need only be relative values (since they will be multiplied by a scaling factor to provide the total number of eV requested). If there is no file called momentum.dat in the appropriate folder, the user will not be asked to specify a total number of eV to give to the wavepacket(s). A momentum can still be added by manually modifying the .inp file after the dd_generator script has been run (replace the zero values in the fifth column of the section of the .inp file entitled INIT_WF-SECTION). However, it is simpler to create the momentum.dat file mainly because if the user edits the .inp file directly, there is no way of knowing what the total excess energy will be: the values listed in .inp also incorporate magnitude (not just relative values as in momentum.dat). &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Memory and number of processors&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
In template.dat, the memory for each GAUSSIAN CASSCF calculation is specified. In the .job file (created by dd_generator from user input) the total memory is specified. Thus, the memory specified in .job must be at least as great as the memory given in template.dat multiplied by the number of processors.&lt;br /&gt;
&lt;br /&gt;
The GAUSSIAN calculations for each wavepacket will run on a single processor. If the user specifies more than one processor then the calculations for each wavepacket can run simultaneously. To ensure efficient use of computing resources, always specify an even number of wavepackets when using more than one processor (since the number of processors can only be an even number: currently 2, 4 or 8).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Symmetry Considerations&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The way the diabatisation is performed in mctdh90.31dv sometimes leads to complications involving symmetry.  The diabatic states are defined using the conical intersection (or other geometry) described in coin.log. If the molecule is highly symmetric, there will be more than one conical intersection (all identical by symmetry). If the wavepacket moves close to one of the other conical intersections that is not described in coin.log, the diabatic states may not be properly described in this area of the PES. This of course means that the behaviour of the wavepacket(s) is likely to be described poorly also.&lt;br /&gt;
&lt;br /&gt;
If the conical intersection has lower symmetry than the starting material, the symmetry must necessarily be broken during the dynamics calculation before the conical intersection is reached. The breaking of each mode will occur either due to the accumulation of small numerical inaccuracies or if a momentum is given which forces particular modes to break symmetry.&lt;br /&gt;
Mctdh90.31dv uses frequency-mass-weighted normal coordinates to describe molecular geometries. Each frequency-mass-weighted coordinate corresponds to a vibration of the molecule (and there are therefore 3N-6 coordinates). Displacements of atoms are described by a (or a combination of) vibration(s). Each vibration can be displaced in one of two directions: positive or negative. The 3N-6 frequency-mass-weighted coordinates can be classified by symmetry. Whether a particular symmetry mode is broken in the positive or negative direction will be equally likely if no initial momentum is given. Thus for each mode that is broken during a simulation the symmetry may break in the positive direction or the negative direction. There will be 2&amp;lt;sup&amp;gt;x&amp;lt;/sup&amp;gt; possible conical intersections corresponding to a particular starting geometry, where x is the number of modes that must be broken going from starting material to conical intersection.&lt;br /&gt;
&lt;br /&gt;
Additionally, care must be taken over atom labeling. It must be possible to transform the starting material into the conical intersection without permuting atom labels. If the conical intersection has been optimised by following the MEP downhill from the starting material this is not likely to be a problem. However, bear this in mind if drawing the conical intersection by hand.  &lt;br /&gt;
&lt;br /&gt;
Example: Butadiene&lt;br /&gt;
&lt;br /&gt;
Cis-butadiene belongs to the C&amp;lt;sub&amp;gt;2h&amp;lt;/sub&amp;gt; point group and its 3N-6 frequency-mass-weighted coordinates can be classified as A&amp;lt;sub&amp;gt;g&amp;lt;/sub&amp;gt;, B&amp;lt;sub&amp;gt;g&amp;lt;/sub&amp;gt;, A&amp;lt;sub&amp;gt;u&amp;lt;/sub&amp;gt; or B&amp;lt;sub&amp;gt;u&amp;lt;/sub&amp;gt; (see the C&amp;lt;sub&amp;gt;2h&amp;lt;/sub&amp;gt; character table and  GAUSSIAN frequency output). The S&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;/S&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt; conical intersection has no symmetry. Thus there are four symmetry modes that must be broken going from starting material to conical intersection. There are sixteen (2&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;) equivalent conical intersections that could be specified in coin.log, corresponding to all possible ways of distorting the starting geometry into the conical intersection geometry. The sixteen conical intersections correspond to: two structures resulting from disrotatory motion in one direction followed by out-of-plane twisting (and their enantiomers); two structures resulting from disrotatory motion in the other direction followed by out-of-plane twisting (and their enantiomers); two structures resulting from conrotatory motion in one direction followed by out-of-plane twisting (and their enantiomers); and  two structures resulting from conrotatory motion in the other direction followed by out-of-plane twisting (and their enantiomers). Each of the sixteen conical intersections will have a different arrangement of atomic labels but all can be reached by distorting the starting geometry.&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Creating the Directories&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* First of all, create a folder in which to save the calculations in your $HOME and $WORK directories. Create a directory in $HOME, and an identical directory in $WORK that has the same path. Keep pathlengths as short as possible (if the total path becomes too long the dynamics code will not run). For simplicity, in this case, we are going to assume that this directory is named &#039;&#039;fulv&#039;&#039; (for fulvene).&lt;br /&gt;
&lt;br /&gt;
     mkdir fulv&lt;br /&gt;
&lt;br /&gt;
* Create a subdirectory called &#039;&#039;&#039;dd_data&#039;&#039;&#039; in the new directory in $WORK.  Thus you should start with:&lt;br /&gt;
&lt;br /&gt;
    /home/$USER/fulv&lt;br /&gt;
    /work/$USER/fulv/dd_data&lt;br /&gt;
&lt;br /&gt;
* Important Note: it is essential to have the same path in both directories, $HOME and $WORK. Do not change the path-names within the HOME/WORK directories. If you re-name or move any subdirectory in your, for example HOME directory, you have to be consistent and make the same changes in the $WORK directory.&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Gaussian Output to be Used as Input for the Dynamics Program&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* Populate the new directory /work/$USER/buta/dd_data with four files which must be named: &#039;&#039;&#039;coin.log&#039;&#039;&#039;; &#039;&#039;&#039;start.fchk&#039;&#039;&#039;; &#039;&#039;&#039;start.log&#039;&#039;&#039;; and &#039;&#039;&#039;template.dat&#039;&#039;&#039;.These files are required in order to run any dynamics simulation, they are the basis that the script dd_generator (see the following section) will use to create the necessary files for running MCTDH (DD-vMCG).  You may also create a file named &amp;quot;&#039;momentum.dat&amp;quot;&#039; if you wish to give a momentum to the wavepacket(s) (this is optional and may be created later instead). &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;coin.log&#039;&#039;&#039; is the logfile resulting from the optimisation of the conical intersection. NB The MCTDH (DD-vMCG) program will rotate the conical intersection before starting the dynamics. To do this it must be provided with three angles which describe the appropriate rotation. There is an Excel spreadsheet available to calculate these angles (see the section entitled &amp;quot;Rotating the Conical Intersection&amp;quot;). NB the structure in coin.log need not necessarily be a true conical intersection: this point is only used for performing the diabatisation. Thus the diabatisation will be exact at this point and will become more approximate the further you are from it (on the PES). If you wish to use a point that is not a conical intersection, simply run a conical intersection optimisation (with only a single step) on the desired geometry. This will create a file with the same layout as a conical intersection optimisation output file (mctdh looks for certain things in this file so if some other type of .log file were used instead, it might not contain the required information). NB the final conical intersection log file must only contain one geometry (otherwise the dynamics program will not know which geometry to use). IS THIS STATEMENT TRUE FOR THIS VERSION??&lt;br /&gt;
&lt;br /&gt;
[[Media:coin.log]]&lt;br /&gt;
&lt;br /&gt;
(Insert a link here to section &amp;quot;Rotating the Conical Intersection&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;start.fchk&#039;&#039;&#039; is the formatted checkpoint file from the high precision vibrational modes of the ground state with state averaged orbitals (with atom types rather than numbers) (Part A, 6)&lt;br /&gt;
&lt;br /&gt;
[[Media:start.fchk]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;start.log&#039;&#039;&#039; is the log file from the high precision vibrational modes of the ground state with state averaged orbitals (with atom types rather than numbers) (Part A, 6)&lt;br /&gt;
&lt;br /&gt;
[[Media:start.log]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;template.dat&#039;&#039;&#039; is a template for the creation of GAUSSIAN input files by the MCTDH (DD-vMCG) program. It contains all the mutual keywords of the GAUSSIAN calculations which will be run on-the-fly by MCTDH (DD-vMCG). It also contains other information relating to the GAUSSIAN calculations such as memory requirements.&lt;br /&gt;
 &lt;br /&gt;
[[Media:template.dat]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;momentum.dat&#039;&#039;&#039; is a file containing a list of values to be used as vectors to indicate the momentum to be given to a particular (set of) wavepacket(s). The vectors must be listed in the order of the frequency-mass-weighted normal coordinates specified in the Excel spreadsheet. They give the magnitude of the momentum to be given along each of these frequency-mass-weighted normal coordinates. N.B. The signs of the values here are important!&lt;br /&gt;
 &lt;br /&gt;
[[Media:momentum.dat]]&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;The Generator&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* The &amp;quot;generator&amp;quot; script uses the GAUSSIAN output files (above) along with other information supplied by the user to create input files for MCTDH (DD-vMCG).&lt;br /&gt;
&lt;br /&gt;
* Navigate to /home/$USER/buta and run the generator by typing:&lt;br /&gt;
&lt;br /&gt;
     dd_generator&lt;br /&gt;
&lt;br /&gt;
for the HPC Cluster, or &lt;br /&gt;
&lt;br /&gt;
     dd_generator_MAC&lt;br /&gt;
&lt;br /&gt;
for a MAC OS X system&lt;br /&gt;
&lt;br /&gt;
* Typing dd_generator will run the script automatically. After installing the MCTDH (DD-vMCG) package this command has been added to your list of executable commands. &lt;br /&gt;
&lt;br /&gt;
     ********************************************************************************&lt;br /&gt;
     ********************    -------  DD GENERATOR  --------    *****************&lt;br /&gt;
     ********************************************************************************&lt;br /&gt;
&lt;br /&gt;
* The generator will ask a series of questions and will use the answers provided to prepare the input files for the dynamics program. The questions it asks are listed below along with answers for a trial run on butadiene.&lt;br /&gt;
&lt;br /&gt;
==== List of questions asked by dd_generator====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;blockquote style=&amp;quot;background: white; border: 1px solid black; padding: 1em;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Question&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; &#039;&#039;&#039;Answer for this tutorial&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; &#039;&#039;&#039;Explanation&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Which version of GAUSSIAN should we use? (gdvh01|g03)&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; gdvh01 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;How many shared-memory processors should we use? (1|2|4|8)&lt;br /&gt;
N.B.: (ncpus=1) serial or (ncpus=2|4|8) parallel (omp) version of MCTDH launched as batch job&lt;br /&gt;
and launching monoprocessor GAUSSIAN interactive jobs (nprocshared=1 or no specification)&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 1 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the name of the molecule?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; fu11 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; The first four letters will be used to name the new files that the generator is creating &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the number of atoms?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 12 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;The number of nuclear degrees of freedom is 30.&lt;br /&gt;
Do you want to reduce the dimensionality? (y|n)&lt;br /&gt;
(N.B.: this can be used also for re-ordering the coordinates)&lt;br /&gt;
&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; n &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the number of nuclear Gaussian functions?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 1 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt; 1 means 1 gaussian on state 1 and 1 gaussian on state 2. This is the &amp;quot;single-set&amp;quot; implementation of MCTDH (DD-vMCG) therefore the gaussian wavepacket on state 1 is the same as the gaussian wavepacket on state 2.&amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;&#039;What is the final propagation time (in fs)?&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 150 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the propagation time step (in fs)?&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 0.1 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the number of electronic states? (1|2)&#039;&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 2 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the highest electronic root?&#039;&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 2 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;From which electronic state should the wavepacket start? (2|1)&#039;&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 2 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Will there be an initial momentum given to the wavepacket? (y|n)&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; y &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Do you want to add a reference label to the name of the case? (y|n)&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; y &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Please type your text:&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; trial &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;This question is only asked if the answer to the previous question was yes.  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What will be the status of the database? (rdwr|rd|wr|none)&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; none &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; Choose rd for read, wr for write etc. In this case we are not going to use the database, but if it was used (rd or rdwr is specified) the script would ask the user to specify the threshold below which the database values will be used (%). In this case the value none is chosen so this question is not asked.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Please type the value of the maximum-difference criterion (in %):&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 1 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;If 1 is specified, the database value will be used if the geometry is within 1% of the new geometry being calculated&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;&amp;gt;&amp;gt; Manual rotation (using Excel spreadsheet) &amp;lt;&amp;lt;&lt;br /&gt;
   Please type the values of the three Euler angles (in deg)&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 0&lt;br /&gt;
0&lt;br /&gt;
0 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Tuple from the dd_generator method (insert link)&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;The generator will now tell you that it has read the files start.fchk from the folder /work/$USER/fulv/dd_data/ and written the file start.chk.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Read formatted file /work/$USER/fulv/dd_data/start.fchk&lt;br /&gt;
 Write checkpoint file /work/$USER/fulv/dd_data/start.chk&lt;br /&gt;
using /apps/gaussian/g03_e01/g03/unfchk&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Do you want to read the direction of the initial momentum from the existing file in /work/$USER/buta/dd_data? (y|n)&lt;br /&gt;
(you still have time to change it now, before answering)&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; y &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;This question is only asked if the answer to the question &amp;quot;Will there be an initial momentum given to the wavepacket?&amp;quot; was yes.  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Please type the value of the excess kinetic energy (in eV) for calculating the magnitude:&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 1 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Files created by the generator&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* The generator will now tell you that it has read the files start.log, coin.log and momentum.dat (if a momentum has been specified) from the folder /work/dm107/dyn/dd_data/:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
   about to read parameters...&lt;br /&gt;
   ... parameters just read&lt;br /&gt;
   about to read file /work/dm107/dyn_90dev/dd_data/start.log                   &lt;br /&gt;
                                                               ...&lt;br /&gt;
   ... file /work/dm107/dyn_90dev/dd_data/start.log                             &lt;br /&gt;
                                                      read successfully&lt;br /&gt;
   about to read file /work/dm107/dyn_90dev/dd_data/coin.log                    &lt;br /&gt;
                                                               ...&lt;br /&gt;
 *********************************************************&lt;br /&gt;
 Mass-weighted displacement from start to coin:&lt;br /&gt;
    old total norm: 22.070387&lt;br /&gt;
    new total norm:  4.669035&lt;br /&gt;
  vibrational part:  4.669035&lt;br /&gt;
   rotational part:  0.000000&lt;br /&gt;
 *********************************************************&lt;br /&gt;
   ... file /work/dm107/dyn_90dev/dd_data/coin.log                             &lt;br /&gt;
                                                      read successfully&lt;br /&gt;
   about to read file /work/dm107/dyn_90dev/dd_data/momentum.dat                      &lt;br /&gt;
                                                               ...&lt;br /&gt;
 *********************************************************&lt;br /&gt;
 Using the momentum given in momentum.dat would have given&lt;br /&gt;
an excess kinetic energy (in eV) of: 15.269&lt;br /&gt;
 For your information, the momentum has been multiplied&lt;br /&gt;
by a factor of:  0.572&lt;br /&gt;
 *********************************************************&lt;br /&gt;
  &lt;br /&gt;
   ... file /work/dm107/dyn_90dev/dd_data/momentum.dat                                &lt;br /&gt;
                                                      read successfully&lt;br /&gt;
&amp;lt;/pre&amp;gt; &lt;br /&gt;
&lt;br /&gt;
and that the extraction of data and the creation of a summary file were done successfully. If the Mass-weighted displacement from start to coin appears as NaN it may be because the start.log contains atom numbers rather than atom types. You will need to redo the freq=hpmodes job with atom types.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Data extracted successfully&lt;br /&gt;
The summary of this file generation is in:&lt;br /&gt;
-rw-r--r--  1 dm107 hpc-users 3070 Dec  2 17:06 /home/dm107/dyn_90dev/but1dd1o.txt&lt;br /&gt;
 &lt;br /&gt;
Do not forget you still can add a momentum, change the integrator, change convergence criteria for GAUSSIAN and MCTDH...&lt;br /&gt;
 &lt;br /&gt;
Do not forget to check the order of the atoms of the conical intersection geometry in /work/dm107/dyn_90dev/dd_data/coin.log&lt;br /&gt;
 &lt;br /&gt;
Now go to your jobscript file and give values to the memory and walltime.&lt;br /&gt;
 &lt;br /&gt;
Good luck!&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* The dd_generator script has generated four files in the same directory (/home/$USER/buta):&lt;br /&gt;
&lt;br /&gt;
# but1dd1p_trial.inp  &lt;br /&gt;
# but1dd1p_trial.job  &lt;br /&gt;
# but1dd1p_trial.txt  &lt;br /&gt;
# but1dd_none.op&lt;br /&gt;
&lt;br /&gt;
(Link to a more detailed explanation of this files)&lt;br /&gt;
&lt;br /&gt;
* The script has also created some files and directories in /work/$USER/buta where the MCTDH (DD-vMCG) and GAUSSIAN calculations will be stored:&lt;br /&gt;
&lt;br /&gt;
1) Directories:&lt;br /&gt;
&lt;br /&gt;
* butadd1p_trial&lt;br /&gt;
* butadd1p_trial/dd_data&lt;br /&gt;
&lt;br /&gt;
2) Files (in butadd1o_trial/dd_data):&lt;br /&gt;
&lt;br /&gt;
# refdb.dat &lt;br /&gt;
# start.chk  &lt;br /&gt;
# template.dat&lt;br /&gt;
# forward.dat&lt;br /&gt;
# backward.dat&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Modifications to be made to the files before running the dynamics&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* In the .job file in /home/$USER/buta specify the memory and walltime if you are in the HPC Cluster.&lt;br /&gt;
&lt;br /&gt;
* When running a development version of GAUSSIAN (gdvg03 or gdvg01), copy the start.chk file into the folder /work/$USER/dyn_90dev/but1dd1p_trial/dd_data. The unformatted checkpoint file from start.fchk that dd_generator has created is corrupted (due to a bug in formchk in gdvg01).&lt;br /&gt;
&lt;br /&gt;
====Starting from a point other than the Franck-Condon point====&lt;br /&gt;
&lt;br /&gt;
When the molecule is highly symmetric and there is more than one equivalent conical intersection (see above) it may be necessary to direct the wavepacket towards the particular conical intersection described in coin.log. The easiest way to do this is to use an initial momentum but it can also be achieved by distorting the geometry of the starting structure slightly towards the conical intersection (i.e. breaking the symmetry in the appropriate direction(s)).&lt;br /&gt;
&lt;br /&gt;
Define the new starting geometry in frequency-mass-weighted normal coordinates (this can be done using the Excel spreadsheet). One option for selecting the new geometry is to use a fraction of the displacement from the FC point to the conical intersection. &lt;br /&gt;
&lt;br /&gt;
After running dd_generator in the normal way, replace the default FC geometry in the .inp file with the new geometry. This geometry (frequency-mass-weighted-coordinates of the centre of the wavepacket) forms the fourth column in the section entitled INIT_WF-SECTION (in .inp).&lt;br /&gt;
&lt;br /&gt;
If the new geometry is very different from the FC geometry, run a single-point state-averaged-CAS calculation (start from RHF, look at the MOs, alter if needed, and check the final active MOs) and call the resulting .chk file start.chk. Replace the start.chk that would have been used ($WORK/buta/but1dd1p_trial/dd_data/start.chk) with this new start.fchk. If the distorted geometry is close enough to the FC geometry it may not be necessary to generate a new start.chk. (When the distortion is large there is a risk of breaking the active space from FC to the new point. Creating a new start.chk is just a way of making sure the starting active space is OK at the new point.) If you are creating a new start.fchk, run the solver on that geometry (relative to the original starting geometry) in the Excel spreadsheet. Create the new start.chk using the geometry in the orange box (so that it is in the same orientation as the molecule in start.log).&lt;br /&gt;
&lt;br /&gt;
N.B. There is no need to replace start.log even when start.fchk is replaced.&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Running the dynamics&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* Navigate to /home/$USER/buta. Queue the job file. In this case, type:&lt;br /&gt;
&lt;br /&gt;
     qsub butadd1p_trial.job&lt;br /&gt;
&lt;br /&gt;
for MAC OS X users the shell command is already written in butadd1p_trial.job&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;The Database (DB)&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
The DB is made of four binary files:&lt;br /&gt;
geo.db&lt;br /&gt;
pes.db&lt;br /&gt;
gra.db&lt;br /&gt;
hes.db&lt;br /&gt;
They can be used in place of GAUSSIAN calculations to save some&lt;br /&gt;
computation time when you ask for DBrd or DBrdwr.&lt;br /&gt;
&lt;br /&gt;
Each set of geometry, energy, gradient and Hessian (the latter&lt;br /&gt;
three quantities having been calculated by GAUSSIAN for the two&lt;br /&gt;
adiabatic electronic states) will be called a DB record and&lt;br /&gt;
assigned a record number defining the order of occurrence in the DB.&lt;br /&gt;
If you run a calculation where the DB is to be read, in the *.res&lt;br /&gt;
file that you obtain after the calculation is done (file that&lt;br /&gt;
actually is a redirection of the standard output) you will see the&lt;br /&gt;
number of records in the DB as it grows.&lt;br /&gt;
Example (formaldehyde, multi-set 1+1):&lt;br /&gt;
          53&lt;br /&gt;
 s=  1 e=  1 t=   0.000 V1=   0.001 V2=   4.533 H11=   0.001 H22=&lt;br /&gt;
 4.533 H12=   0.000 q=   0.0000    0.0000    0.0000    0.0000&lt;br /&gt;
 0.0000    0.0000&lt;br /&gt;
          53&lt;br /&gt;
 s=  2 e=  1 t=   0.000 V1=   0.001 V2=   4.533 H11=   0.001 H22=&lt;br /&gt;
 4.533 H12=   0.000 q=   0.0000    0.0000    0.0000    0.0000&lt;br /&gt;
 0.0000    0.0000&lt;br /&gt;
          53&lt;br /&gt;
 s=  1 e=  1 t=   0.500 V1=   0.197 V2=   4.701 H11=   0.211 H22=&lt;br /&gt;
 4.687 H12=   0.251 q=  -0.6258   -0.6146    0.6136    0.6049&lt;br /&gt;
 -0.5520   -0.0616&lt;br /&gt;
          53&lt;br /&gt;
 s=  2 e=  1 t=   0.500 V1=   0.000 V2=   4.533 H11=   0.000 H22=&lt;br /&gt;
 4.533 H12=  -0.001 q=   0.0009    0.0009    0.0093   -0.0245&lt;br /&gt;
 -0.0066    0.0001&lt;br /&gt;
          53&lt;br /&gt;
 &lt;br /&gt;
 ERROR in subroutine Distdb :&lt;br /&gt;
 Redundant records in Data Base:   18   19&lt;br /&gt;
 s=  1 e=  1 t=   1.000 V1=   0.469 V2=   4.455 H11=   0.479 H22=&lt;br /&gt;
 4.445 H12=   0.200 q=  -0.4640   -0.5641    1.2594   -0.5871&lt;br /&gt;
 -1.0864   -0.1120&lt;br /&gt;
          53&lt;br /&gt;
 s=  2 e=  1 t=   1.000 V1=   0.001 V2=   4.473 H11=   0.001 H22=&lt;br /&gt;
 4.473 H12=  -0.002 q=   0.0003    0.0004    0.0404   -0.0944&lt;br /&gt;
 -0.0292    0.0001&lt;br /&gt;
          53&lt;br /&gt;
 s=  1 e=  1 t=   1.500 V1=   0.113 V2=   4.543 H11=   0.120 H22=&lt;br /&gt;
 4.536 H12=   0.170 q=  -0.3994   -0.4377    0.5444    0.2057&lt;br /&gt;
 -0.5149   -0.0638&lt;br /&gt;
          53&lt;br /&gt;
 s=  2 e=  1 t=   1.500 V1=   0.013 V2=   4.390 H11=   0.013 H22=&lt;br /&gt;
 4.390 H12=  -0.005 q=   0.0009    0.0010    0.0897   -0.2104&lt;br /&gt;
 -0.0634    0.0002&lt;br /&gt;
          53&lt;br /&gt;
 s=  1 e=  1 t=   2.000 V1=   0.068 V2=   4.431 H11=   0.071 H22=&lt;br /&gt;
 4.428 H12=   0.110 q=  -0.2751   -0.3274    0.4796   -0.0812&lt;br /&gt;
 -0.3880   -0.0605&lt;br /&gt;
          54&lt;br /&gt;
 s=  2 e=  1 t=   2.000 V1=   0.019 V2=   4.367 H11=   0.019 H22=&lt;br /&gt;
 4.367 H12=  -0.009 q=   0.0012    0.0013    0.1563   -0.3658&lt;br /&gt;
 -0.1058    0.0003&lt;br /&gt;
          54&lt;br /&gt;
 s=  1 e=  1 t=   2.500 V1=   0.064 V2=   4.273 H11=   0.065 H22=&lt;br /&gt;
 4.272 H12=  -0.064 q=   0.2559    0.0914    0.1691   -0.7218&lt;br /&gt;
 -0.1052   -0.0595&lt;br /&gt;
          55&lt;br /&gt;
 s=  2 e=  1 t=   2.500 V1=   0.070 V2=   4.258 H11=   0.070 H22=&lt;br /&gt;
 4.257 H12=  -0.013 q=   0.0013    0.0015    0.2384   -0.5572&lt;br /&gt;
 -0.1528    0.0004&lt;br /&gt;
&lt;br /&gt;
Here, we started with a DB of 53 records. It is large enough until&lt;br /&gt;
2 fs, where an additional record is produced, and so on.&lt;br /&gt;
The error message saying here that records 18 and 19 are identical&lt;br /&gt;
will not prevent the code from working. It is just here to remind you&lt;br /&gt;
that the DB is not clean in that it has redundant records.&lt;br /&gt;
This is to be prevented as the DB files might become large quite&lt;br /&gt;
rapidly and all records will be read at each update time (dd_update&lt;br /&gt;
= tout in the integrator section, tout = xxx fs in the run section&lt;br /&gt;
of the *.inp file) for each Gaussian function.&lt;br /&gt;
&lt;br /&gt;
Incidentally, when you want to analyse results written to a *.res&lt;br /&gt;
file, you need to look for lines starting with &amp;quot;s=&amp;quot; (other lines&lt;br /&gt;
are various messages and numbers of DB records).&lt;br /&gt;
The criterion for using the DB is to be seen as a maximum-allowed&lt;br /&gt;
relative difference&lt;br /&gt;
&lt;br /&gt;
So, it is up to you to clean the DB when you see this, and to keep&lt;br /&gt;
this in mind when you concatenate DBs that have branched in their&lt;br /&gt;
past (see more details below).&lt;br /&gt;
&lt;br /&gt;
Also, a given DB depends on the choice of a reference geometry in&lt;br /&gt;
Cartesian coordinates because geometries written to the DB files&lt;br /&gt;
will always be re-orientated with respect to this particular&lt;br /&gt;
geometry. The back and forth transformations are performed by MCTDH (DD-vMCG)&lt;br /&gt;
so you don&#039;t need not worry about this.&lt;br /&gt;
This geometry is written to refdb.dat. It is the starting geometry&lt;br /&gt;
that comes from start.log (the only difference being that it is&lt;br /&gt;
mass-centred).&lt;br /&gt;
As long as you do not change the starting geometry or the nature&lt;br /&gt;
of the electronic states, you can thus keep growing the DB of your&lt;br /&gt;
system.&lt;br /&gt;
&lt;br /&gt;
MANAGING THE DATA BASE&lt;br /&gt;
&lt;br /&gt;
A set of DB  programs can be found in XXXXX. Their roles are&lt;br /&gt;
explained below.&lt;br /&gt;
For now, the sources are in dd_utildev and dd_util.31dv and the&lt;br /&gt;
executables are in mctdh90dev/bin and mctdh90.31dv/bin, so you can&lt;br /&gt;
call them from anywhere, as long as DB files are there.&lt;br /&gt;
&lt;br /&gt;
1) countdb.out: returns the number of records of the current DB&lt;br /&gt;
2) cleandb.out: &amp;quot;brute-force&amp;quot; cleaning of the current DB. This&lt;br /&gt;
might be too long to be run interactively when the number of&lt;br /&gt;
records is too large, because each record needs to be compared to&lt;br /&gt;
each other record (e.g. a DB with ca. 3800 records will take a couple of minutes to clean interactively). If so, run in batch mode (ask me or Marta if you&lt;br /&gt;
have a doubt).&lt;br /&gt;
The cleaned files are:&lt;br /&gt;
geoclean.db&lt;br /&gt;
pesclean.db&lt;br /&gt;
graclean.db&lt;br /&gt;
hesclean.db&lt;br /&gt;
You need to rename them without &#039;clean&#039; for them to be used as a DB.&lt;br /&gt;
3) cutdb.out: allows you to cut out the beginning of a DB.&lt;br /&gt;
This is to be used in the following situation:&lt;br /&gt;
- You start from a mother DB, DB0, assumed to be clean, with N0&lt;br /&gt;
records.&lt;br /&gt;
- You want to use DB0 in two independent calculations. You&lt;br /&gt;
replicate DB0 to daughter DBs, DB1 and DB2.&lt;br /&gt;
- When these calculations are done, DB1 and DB2 have grown to N0+N1&lt;br /&gt;
and N0+N2 records, respectively.&lt;br /&gt;
- You want to concatenate them to create a new mother DB, DB3.&lt;br /&gt;
- DB1 and DB2 have their N0 first records the same. To avoid&lt;br /&gt;
redundant records, you need to cut N0 records from DB2 for example.&lt;br /&gt;
--&amp;gt; go to where DB2 is and use cleandb.out&lt;br /&gt;
The resulting files are:&lt;br /&gt;
geocut.db&lt;br /&gt;
pescut.db&lt;br /&gt;
gracut.db&lt;br /&gt;
hescut.db&lt;br /&gt;
these have N1 records.&lt;br /&gt;
--&amp;gt; rename DB1, for instance geo.db1 etc., and concatenate the files:&lt;br /&gt;
cat geo.db1 geoclean.db &amp;gt; geo.db&lt;br /&gt;
etc.&lt;br /&gt;
- Your new mother DB, DB3, should now have N0+N1+N2 distinct records.&lt;br /&gt;
4) deldb.out: allows you to remove one selected record (for&lt;br /&gt;
instance if corrupted) from the DB if you know its number.&lt;br /&gt;
The resulting files are:&lt;br /&gt;
geodel.db&lt;br /&gt;
pesdel.db&lt;br /&gt;
gradel.db&lt;br /&gt;
hesdel.db&lt;br /&gt;
You need to rename them without &#039;del&#039; for them to be used as a DB.&lt;br /&gt;
5) seedb.out: allows you extract one selected record from the&lt;br /&gt;
binary files for reading it (the record is not removed from the DB).&lt;br /&gt;
The resulting file can be read as a text file (ascii) and is:&lt;br /&gt;
see.db&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Restarting dynamics jobs&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
The examples below make use of the directory and filenames in the examples above.&lt;br /&gt;
&lt;br /&gt;
A dynamics run can be restarted if the job was terminated before completion (e.g if it ran out of time or failed because of convergence problems) or if the user wishes to continue the job for a longer time period than had originally been specified. The program will continue writing the same output file but will overwrite the .res file. Thus the .res file should be saved under a different name to prevent loss of the data calculated in the original run. The .res is not written until the job stops so this can be done after the restart.&lt;br /&gt;
&lt;br /&gt;
*To increase the final propagation time&lt;br /&gt;
&lt;br /&gt;
Retrieve the .inp file (in $HOME/buta) and change &#039;&#039;propagation&#039;&#039; to &#039;&#039;continuation&#039;&#039; in the section entitled RUN-SECTION. Then change the final time &#039;&#039;tfinal&#039;&#039; to a larger value. (NB this new value should include the time already done).&lt;br /&gt;
&lt;br /&gt;
Re-queue the job.&lt;br /&gt;
&lt;br /&gt;
*To increase the number of scf cycles (the most common reason for convergence failure)&lt;br /&gt;
&lt;br /&gt;
Edit the template.dat file in $WORK/buta/but1dd1p_trial/dd_data. Insert scf=(maxcycle=128) on the keyword line (for example). It is important that you change the template.dat file in the but1dd1p_trial/dd_data folder that was created by dd_generator (rather than the one created by the user in $WORK/buta/dd_data) because the original $WORK/buta/dd_data/template.dat file is only read by dd_generator and used to create the job-specific file in the job folder. (Of course if you wish all future jobs run in $WORK/buta  to have increased scf cycles, change the other template.dat file in $WORK/buta/dd_data too.)&lt;br /&gt;
&lt;br /&gt;
Re-queue the job.&lt;br /&gt;
&lt;br /&gt;
*To increase the run-time so that a job will finish&lt;br /&gt;
&lt;br /&gt;
Edit the walltime in the .job file in the $HOME directory and re-queue the job.&lt;br /&gt;
&lt;br /&gt;
=&#039;&#039;&#039;Analysis of the results&#039;&#039;&#039;=&lt;br /&gt;
&lt;br /&gt;
The most important files are the output and .res files.&lt;br /&gt;
&lt;br /&gt;
=== Detailed information about files and directories ===&lt;br /&gt;
&lt;br /&gt;
*output&lt;br /&gt;
&lt;br /&gt;
The output contains some standard results:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Time&#039;&#039;&#039;: time in fs.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;CPU&#039;&#039;&#039;:  CPU time in s.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Norm&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;E-tot&#039;&#039;&#039;: the total energy in eV. This value should be conserved (i.e by the end of the run the E-tot value should not be too different  from what it was a time=0).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;E-corr&#039;&#039;&#039;: correlated Hamiltonian energy&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Delta-E&#039;&#039;&#039;: diference between E-tot at time t=0 and the current time t&lt;br /&gt;
&lt;br /&gt;
Note: In a multi-packet run, i.e. when npacket &amp;gt; 1, the total energy and the norm of the wavefunction, as given in the &amp;quot;total&amp;quot; part, are averaged over the packets.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;population&#039;&#039;&#039; : diabatic populations of state 1 and state 2 (in that order) at the current time t&lt;br /&gt;
&lt;br /&gt;
For every mode:	&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt; q &amp;gt;&#039;&#039;&#039;: position expectation value&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;dq&amp;gt;&#039;&#039;&#039;: standard deviation Sqrt[&amp;lt; q&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt; &amp;gt; - &amp;lt; q &amp;gt;&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt; p &amp;gt;&#039;&#039;&#039; : momentum expectation value&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;dq&amp;gt;&#039;&#039;&#039;: standard deviation Sqrt[&amp;lt; p&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt; &amp;gt; - &amp;lt; p &amp;gt;&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*.res&lt;br /&gt;
&lt;br /&gt;
This file contains the energy of each state (diabatic and adiabatic) at each timestep for each gaussian function:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;s&#039;&#039;&#039; is a redundant value in mctdh90.31dv. It is only meaningful in multi-set implementations of mctdh (where there are double the number of gaussian functions than specified: one for each state). (It indicates whether the gaussian function in question is on the lower (1) or upper (2) state. (In the single set implementation, the gaussian functions on each state are identical)).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;e&#039;&#039;&#039; is a label given to each gaussian function&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;t&#039;&#039;&#039; is the current time in fs&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;V1&#039;&#039;&#039; is the energy of the lower adiabatic state at time t&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;V2&#039;&#039;&#039; is the energy of the upper adiabatic state at time t&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;H11&#039;&#039;&#039; is the energy of the lower diabatic state at time t&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;H22&#039;&#039;&#039; is the energy of the upper diabatic state at time t&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;H12&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;q&#039;&#039;&#039; is the list of frequency mass-weighted normal coordinates that describe the geometry at time t&lt;br /&gt;
&lt;br /&gt;
The end of the file will read something like: &lt;br /&gt;
&lt;br /&gt;
     Propagation was successful.&lt;br /&gt;
     &lt;br /&gt;
     Total time     [h:m:s] :    0 :  1 : 21.60&lt;br /&gt;
     &lt;br /&gt;
      ---------------------------------------------------------------------------&lt;br /&gt;
      ------ Host: &amp;quot;cx1-3-2-4&amp;quot; ----------Sat Jan 17 06:50:20 2009&lt;br /&gt;
&lt;br /&gt;
The other most common result is that the calculation aborted because of scf convergence problems in the CASSCF GAUSSIAN calculations. In this case the ouput file will break off after the last complete step and the end of the .res file will read something like:&lt;br /&gt;
     ERROR in subroutine Getddpes :&lt;br /&gt;
     CAS convergence failed for gwp on state:    1    1&lt;br /&gt;
&lt;br /&gt;
If the job terminates due to scf convergence problems, it may be possible to restart it after modifying the .inp and/or .job and/or template.dat files.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*log&lt;br /&gt;
&lt;br /&gt;
This file contains information such as the source code version, type of calculation performed, integrator used, numerical parameters, which data files are opened, any error messages, and much more. The information provided by the log file can be very helpful, in particular when searching for errors. One should always carefully inspect the log file.&lt;br /&gt;
&lt;br /&gt;
* dvr&lt;br /&gt;
&lt;br /&gt;
* oper&lt;br /&gt;
&lt;br /&gt;
*ddpeserr&lt;br /&gt;
&lt;br /&gt;
*input&lt;br /&gt;
&lt;br /&gt;
*op.log&lt;br /&gt;
&lt;br /&gt;
*psi&lt;br /&gt;
&lt;br /&gt;
*check&lt;br /&gt;
&lt;br /&gt;
*auto&lt;br /&gt;
&lt;br /&gt;
*ddpes&lt;br /&gt;
&lt;br /&gt;
*restart&lt;br /&gt;
&lt;br /&gt;
*stop&lt;br /&gt;
&lt;br /&gt;
*speed&lt;br /&gt;
&lt;br /&gt;
*timing&lt;br /&gt;
&lt;br /&gt;
*update&lt;br /&gt;
&lt;br /&gt;
=== Example: butadiene ===&lt;br /&gt;
&lt;br /&gt;
*Examine the end of the output file to check that the calculation ran to completion.&lt;br /&gt;
     &lt;br /&gt;
*Plot the energy of the diabatic and adiabatic states over time (.res file: V1, V2, H11 and H22). Calculate V2-V1 and H22-H11 and plot these also. H12 may also be plotted on the same graph.&lt;br /&gt;
[[Image:EnergyofStates.png]]&lt;br /&gt;
&lt;br /&gt;
The diabatic states cross at 176.2 fs and the adiabatic states cross at 174.5 fs. At a conical intersection, the value V2-V1 will become negative and the H22-H11 will be a minimum (&amp;lt;1eV). Ideally these crossings will occur at the same time. If the diabatisation has worked well, after V2-V1 becomes negative, V2-V1 and H22-H11 will become mirror images (i.e. the diabatic and adiabatic states follow each other). &lt;br /&gt;
&lt;br /&gt;
*Plot the value of the total energy over time (.res file: E-tot). Verify that the Delta-E value is not too large (compare with the total energy (E-tot) at time 0).&lt;br /&gt;
[[Image:TotalEnergy.png]]&lt;br /&gt;
&lt;br /&gt;
*Plot the population of one of the (diabatic) states over time (.res file: population).&lt;br /&gt;
[[Image:Population.png]]&lt;br /&gt;
&lt;br /&gt;
At the conical intersection the population transfer is large. In this case the job has been terminated after 200 fs. Usually the calculation should be continued until the populations stabilise (which obviously has not happened in this case).&lt;br /&gt;
&lt;br /&gt;
=== Making a Movie ===&lt;br /&gt;
&lt;br /&gt;
Navigate to /work/$USER/buta/but1dd1p_trial (the place where the .res file was written). Type:&lt;br /&gt;
 dd_movie.out&lt;br /&gt;
* The script will ask a series of questions and will use the answers provided to create a file that can be read into Molden or iMol.&lt;br /&gt;
&lt;br /&gt;
==== List of questions asked by dd_movie.out====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;blockquote style=&amp;quot;background: white; border: 1px solid black; padding: 1em;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Question&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; &#039;&#039;&#039;Answer for this tutorial&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; &#039;&#039;&#039;Explanation&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the number of atoms?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 10 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the actual number of active coordinates?&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 24 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; In this case all coordinates were active (so there are 3N-6 where N is the number of atoms) &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Name of result file to read?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; but1dd1p_trial.res &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;Ensure that the forward.dat and backward.dat files are located in the current directory in the folder dd_data (they will have been written there automatically)&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Name of movie file to write?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; but1dd1p_trial.xyz &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; Choose any name .xyz &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Which electronic state (s=...)?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 1 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;Choose 1 (this question dates from the multi-set implementation of mctdh where the wavepackets on each state were different)  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Which Gaussian function (e=...)?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 1 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;In this case we have only one wavepacket&amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;The script will now return the number of lines and the initial number of points&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
number of lines:        4684&lt;br /&gt;
initial number of points:        4674&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Maximum number of points you want?&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 4674 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;If you wish to view the movie in Molden you must reduce the number of points to less than 100 (so choose 99 for maximum number of points). iMol can cope with any number of frames so choose the number printed by the script: this number will be reduced and the script will tell you how many points it has written. &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
writing frequency:           2&lt;br /&gt;
   final number of points:        2337&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The .xyz file is ready to be opened in Molden or iMol.&lt;br /&gt;
&lt;br /&gt;
= &#039;&#039;&#039;Current Known Bugs&#039;&#039;&#039; =&lt;br /&gt;
&lt;br /&gt;
Parallelisation:&lt;br /&gt;
&lt;br /&gt;
It is not possible to run calculations in parallel with version 90.31dv (reading the same template.dat file simultaneously by each processor is causing problems). In 90.35tmp this is ok. In 90.4X it will also be fixed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Total energy:&lt;br /&gt;
&lt;br /&gt;
1) The total energy is sometimes &amp;quot;artificially&amp;quot; increased by a lot. If so, try a different integrator or play around with the timestep (may need to get larger or smaller). Or try increasing scf convergence to 10&amp;lt;sup&amp;gt;-12&amp;lt;/sup&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
2) If Delta-E suddenly becomes too large, you can get the following message: &lt;br /&gt;
&amp;quot;ERROR in subroutine WRGAUSSIAN :&lt;br /&gt;
 Do not use $Swap:...$ metastring in file /.../template.dat&amp;quot;&lt;br /&gt;
Often, when getting this message, no more steps are added to the simulation, although the calculation seems to keep running (the integrator keeps trying and failing).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Using the database:&lt;br /&gt;
&lt;br /&gt;
1) Every record generated with mctdh90.31dev and several GWPs is corrupted, so, for now, when launching calculations with more that one wavepacket, use &amp;quot;formdd_none.op&amp;quot; (i.e. do not read nor write the database).&lt;br /&gt;
[For instance, when using dbrdwr and starting from a clean db, all newly generated records are added to the existing database, even if they are identical to records that were already written in the db.]  In 90.35tmp this is ok. In 90.4X it will also be fixed.&lt;br /&gt;
&lt;br /&gt;
2) Records obtained in calculations with one GWP should be OK, but this is still to be confirmed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Impossible case&amp;quot;:&lt;br /&gt;
&lt;br /&gt;
Error message that forces the calculation to stop. It seems to be associated with moving towards an &amp;quot;unexpected&amp;quot; geometry (e.g. a radical).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
State Averaging:&lt;br /&gt;
&lt;br /&gt;
To increase the threshold above which stateaveraging is turned off, increase the default value of 10 (to e.g. 50)  in the line &#039;&#039;ddregions&#039;&#039; in the OPERATOR-SECTION of the .inp file.&lt;br /&gt;
&lt;br /&gt;
= &#039;&#039;&#039;Questions and Modifications to be made to this wiki&#039;&#039;&#039; =&lt;br /&gt;
&lt;br /&gt;
*Why we would ever need to start the gwps from the lower state? To study GS rxns; chemiluminesence (eg glowworms).&lt;br /&gt;
*In terms of Delta-E, how much is too much? ca1eV but shape of E-tot vs time is important: discontiunities or v flat then steep increase are less reliable than smooth gradual increases.&lt;br /&gt;
*Benjamin: Note that Marta has noticed that for very strange geometries, you may receive an error message saying &amp;quot;impossible case&amp;quot;, which stops MCTDH. It is too complicated to explain here. I know where this happens in the code, and I should prevent this error to stop the code but I didn&#039;t have time to fix this. I&#039;ll do it soon.&lt;br /&gt;
*Need to edit/correct section on the DB.&lt;br /&gt;
*Is does unfchk in gdvg03 create corrupted fchk files? G03 is fine. we don&#039;t know about gdvg03 but we don&#039;t care because we probablly won&#039;t use it.&lt;br /&gt;
&lt;br /&gt;
=== [[Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial|back]] ===&lt;/div&gt;</summary>
		<author><name>Vs13</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/run&amp;diff=333938</id>
		<title>Resgrp:comp-photo-dyn/mctdh90.56dv Fulvene Tutorial/run</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/run&amp;diff=333938"/>
		<updated>2013-04-24T15:09:15Z</updated>

		<summary type="html">&lt;p&gt;Vs13: /* Creating the Directories */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= &#039;&#039;&#039;Basic use of the MCTDH (DD-vMCG) package&#039;&#039;&#039; =&lt;br /&gt;
&lt;br /&gt;
A script called dd_generator uses GAUSSIAN output files and user input to write the input files for mctdh (DD-vMCG).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Notes&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;The number of gaussian wavepackets (requested by the dd_generator script)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Start with one (to keep calculation times short). When an appropriate momentum, time period, time step and integrator have been established, increase the number of wavepackets until the results are not changed by adding more. Calculation times are proportional to the number of wavepackets. To ensure efficient use of computing resources, always specify an even number of wavepackets if using more than one processor (since the number of processors can only be an even number: currently 2, 4 or 8).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;The database&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The most time-consuming part of a dynamics run is the GAUSSIAN CASSCF calculations. The results of these calculations can be stored in a database and re-used in future runs. The user must choose whether or not to read and/or write a database. Each calculation will write a separate database so the databases from each run must be combined (and any duplicate entries removed (to save space)). LINK HERE TO SECTION ON MANAGING THE DATABASE&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Initial momentum&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
An initial momentum can be specified to direct the wavepacket to a particular area of the PES (e.g. towards a conical intersection, a transition state or minimum geometry). The momentum is given as a geometry (in frequency mass weighted normal coordinates). The Excel spreadsheet used for rotation of the conical intersection can be used to transform the coordiinates of the desired geometry. If the user requests an initial momentum, dd_generator will search for a file called momentum.dat. If this file is found, dd_generator will ask if the user wishes to use the momentum specified in it. The user can then specify how much energy to give (in eV). Thus, the values in momentum.dat need only be relative values (since they will be multiplied by a scaling factor to provide the total number of eV requested). If there is no file called momentum.dat in the appropriate folder, the user will not be asked to specify a total number of eV to give to the wavepacket(s). A momentum can still be added by manually modifying the .inp file after the dd_generator script has been run (replace the zero values in the fifth column of the section of the .inp file entitled INIT_WF-SECTION). However, it is simpler to create the momentum.dat file mainly because if the user edits the .inp file directly, there is no way of knowing what the total excess energy will be: the values listed in .inp also incorporate magnitude (not just relative values as in momentum.dat). &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Memory and number of processors&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
In template.dat, the memory for each GAUSSIAN CASSCF calculation is specified. In the .job file (created by dd_generator from user input) the total memory is specified. Thus, the memory specified in .job must be at least as great as the memory given in template.dat multiplied by the number of processors.&lt;br /&gt;
&lt;br /&gt;
The GAUSSIAN calculations for each wavepacket will run on a single processor. If the user specifies more than one processor then the calculations for each wavepacket can run simultaneously. To ensure efficient use of computing resources, always specify an even number of wavepackets when using more than one processor (since the number of processors can only be an even number: currently 2, 4 or 8).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Symmetry Considerations&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The way the diabatisation is performed in mctdh90.31dv sometimes leads to complications involving symmetry.  The diabatic states are defined using the conical intersection (or other geometry) described in coin.log. If the molecule is highly symmetric, there will be more than one conical intersection (all identical by symmetry). If the wavepacket moves close to one of the other conical intersections that is not described in coin.log, the diabatic states may not be properly described in this area of the PES. This of course means that the behaviour of the wavepacket(s) is likely to be described poorly also.&lt;br /&gt;
&lt;br /&gt;
If the conical intersection has lower symmetry than the starting material, the symmetry must necessarily be broken during the dynamics calculation before the conical intersection is reached. The breaking of each mode will occur either due to the accumulation of small numerical inaccuracies or if a momentum is given which forces particular modes to break symmetry.&lt;br /&gt;
Mctdh90.31dv uses frequency-mass-weighted normal coordinates to describe molecular geometries. Each frequency-mass-weighted coordinate corresponds to a vibration of the molecule (and there are therefore 3N-6 coordinates). Displacements of atoms are described by a (or a combination of) vibration(s). Each vibration can be displaced in one of two directions: positive or negative. The 3N-6 frequency-mass-weighted coordinates can be classified by symmetry. Whether a particular symmetry mode is broken in the positive or negative direction will be equally likely if no initial momentum is given. Thus for each mode that is broken during a simulation the symmetry may break in the positive direction or the negative direction. There will be 2&amp;lt;sup&amp;gt;x&amp;lt;/sup&amp;gt; possible conical intersections corresponding to a particular starting geometry, where x is the number of modes that must be broken going from starting material to conical intersection.&lt;br /&gt;
&lt;br /&gt;
Additionally, care must be taken over atom labeling. It must be possible to transform the starting material into the conical intersection without permuting atom labels. If the conical intersection has been optimised by following the MEP downhill from the starting material this is not likely to be a problem. However, bear this in mind if drawing the conical intersection by hand.  &lt;br /&gt;
&lt;br /&gt;
Example: Butadiene&lt;br /&gt;
&lt;br /&gt;
Cis-butadiene belongs to the C&amp;lt;sub&amp;gt;2h&amp;lt;/sub&amp;gt; point group and its 3N-6 frequency-mass-weighted coordinates can be classified as A&amp;lt;sub&amp;gt;g&amp;lt;/sub&amp;gt;, B&amp;lt;sub&amp;gt;g&amp;lt;/sub&amp;gt;, A&amp;lt;sub&amp;gt;u&amp;lt;/sub&amp;gt; or B&amp;lt;sub&amp;gt;u&amp;lt;/sub&amp;gt; (see the C&amp;lt;sub&amp;gt;2h&amp;lt;/sub&amp;gt; character table and  GAUSSIAN frequency output). The S&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;/S&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt; conical intersection has no symmetry. Thus there are four symmetry modes that must be broken going from starting material to conical intersection. There are sixteen (2&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;) equivalent conical intersections that could be specified in coin.log, corresponding to all possible ways of distorting the starting geometry into the conical intersection geometry. The sixteen conical intersections correspond to: two structures resulting from disrotatory motion in one direction followed by out-of-plane twisting (and their enantiomers); two structures resulting from disrotatory motion in the other direction followed by out-of-plane twisting (and their enantiomers); two structures resulting from conrotatory motion in one direction followed by out-of-plane twisting (and their enantiomers); and  two structures resulting from conrotatory motion in the other direction followed by out-of-plane twisting (and their enantiomers). Each of the sixteen conical intersections will have a different arrangement of atomic labels but all can be reached by distorting the starting geometry.&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Creating the Directories&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* First of all, create a folder in which to save the calculations in your $HOME and $WORK directories. Create a directory in $HOME, and an identical directory in $WORK that has the same path. Keep pathlengths as short as possible (if the total path becomes too long the dynamics code will not run). For simplicity, in this case, we are going to assume that this directory is named &#039;&#039;fulv&#039;&#039; (for fulvene).&lt;br /&gt;
&lt;br /&gt;
     mkdir fulv&lt;br /&gt;
&lt;br /&gt;
* Create a subdirectory called &#039;&#039;&#039;dd_data&#039;&#039;&#039; in the new directory in $WORK.  Thus you should start with:&lt;br /&gt;
&lt;br /&gt;
    /home/$USER/fulv&lt;br /&gt;
    /work/$USER/fulv/dd_data&lt;br /&gt;
&lt;br /&gt;
* Important Note: it is essential to have the same path in both directories, $HOME and $WORK. Do not change the path-names within the HOME/WORK directories. If you re-name or move any subdirectory in your, for example HOME directory, you have to be consistent and make the same changes in the $WORK directory.&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Gaussian Output to be Used as Input for the Dynamics Program&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* Populate the new directory /work/$USER/buta/dd_data with four files which must be named: &#039;&#039;&#039;coin.log&#039;&#039;&#039;; &#039;&#039;&#039;start.fchk&#039;&#039;&#039;; &#039;&#039;&#039;start.log&#039;&#039;&#039;; and &#039;&#039;&#039;template.dat&#039;&#039;&#039;.These files are required in order to run any dynamics simulation, they are the basis that the script dd_generator (see the following section) will use to create the necessary files for running MCTDH (DD-vMCG).  You may also create a file named &amp;quot;&#039;momentum.dat&amp;quot;&#039; if you wish to give a momentum to the wavepacket(s) (this is optional and may be created later instead). &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;coin.log&#039;&#039;&#039; is the logfile resulting from the optimisation of the conical intersection. NB The MCTDH (DD-vMCG) program will rotate the conical intersection before starting the dynamics. To do this it must be provided with three angles which describe the appropriate rotation. There is an Excel spreadsheet available to calculate these angles (see the section entitled &amp;quot;Rotating the Conical Intersection&amp;quot;). NB the structure in coin.log need not necessarily be a true conical intersection: this point is only used for performing the diabatisation. Thus the diabatisation will be exact at this point and will become more approximate the further you are from it (on the PES). If you wish to use a point that is not a conical intersection, simply run a conical intersection optimisation (with only a single step) on the desired geometry. This will create a file with the same layout as a conical intersection optimisation output file (mctdh looks for certain things in this file so if some other type of .log file were used instead, it might not contain the required information). NB the final conical intersection log file must only contain one geometry (otherwise the dynamics program will not know which geometry to use). IS THIS STATEMENT TRUE FOR THIS VERSION??&lt;br /&gt;
&lt;br /&gt;
[[Media:coin.log]]&lt;br /&gt;
&lt;br /&gt;
(Insert a link here to section &amp;quot;Rotating the Conical Intersection&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;start.fchk&#039;&#039;&#039; is the formatted checkpoint file from the high precision vibrational modes of the ground state with state averaged orbitals (with atom types rather than numbers) (Part A, 6)&lt;br /&gt;
&lt;br /&gt;
[[Media:start.fchk]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;start.log&#039;&#039;&#039; is the log file from the high precision vibrational modes of the ground state with state averaged orbitals (with atom types rather than numbers) (Part A, 6)&lt;br /&gt;
&lt;br /&gt;
[[Media:start.log]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;template.dat&#039;&#039;&#039; is a template for the creation of GAUSSIAN input files by the MCTDH (DD-vMCG) program. It contains all the mutual keywords of the GAUSSIAN calculations which will be run on-the-fly by MCTDH (DD-vMCG). It also contains other information relating to the GAUSSIAN calculations such as memory requirements.&lt;br /&gt;
 &lt;br /&gt;
[[Media:template.dat]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;momentum.dat&#039;&#039;&#039; is a file containing a list of values to be used as vectors to indicate the momentum to be given to a particular (set of) wavepacket(s). The vectors must be listed in the order of the frequency-mass-weighted normal coordinates specified in the Excel spreadsheet. They give the magnitude of the momentum to be given along each of these frequency-mass-weighted normal coordinates. N.B. The signs of the values here are important!&lt;br /&gt;
 &lt;br /&gt;
[[Media:momentum.dat]]&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;The Generator&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* The &amp;quot;generator&amp;quot; script uses the GAUSSIAN output files (above) along with other information supplied by the user to create input files for MCTDH (DD-vMCG).&lt;br /&gt;
&lt;br /&gt;
* Navigate to /home/$USER/buta and run the generator by typing:&lt;br /&gt;
&lt;br /&gt;
     dd_generator&lt;br /&gt;
&lt;br /&gt;
for the HPC Cluster, or &lt;br /&gt;
&lt;br /&gt;
     dd_generator_MAC&lt;br /&gt;
&lt;br /&gt;
for a MAC OS X system&lt;br /&gt;
&lt;br /&gt;
* Typing dd_generator will run the script automatically. After installing the MCTDH (DD-vMCG) package this command has been added to your list of executable commands. &lt;br /&gt;
&lt;br /&gt;
     ********************************************************************************&lt;br /&gt;
     ********************    -------  DD GENERATOR  --------    *****************&lt;br /&gt;
     ********************************************************************************&lt;br /&gt;
&lt;br /&gt;
* The generator will ask a series of questions and will use the answers provided to prepare the input files for the dynamics program. The questions it asks are listed below along with answers for a trial run on butadiene.&lt;br /&gt;
&lt;br /&gt;
==== List of questions asked by dd_generator====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;blockquote style=&amp;quot;background: white; border: 1px solid black; padding: 1em;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Question&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; &#039;&#039;&#039;Answer for this tutorial&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; &#039;&#039;&#039;Explanation&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Which version of GAUSSIAN should we use? (gdv|g03)&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; g03 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;How many shared-memory processors should we use? (1|2|4|8)&lt;br /&gt;
N.B.: (ncpus=1) serial or (ncpus=2|4|8) parallel (omp) version of MCTDH launched as batch job&lt;br /&gt;
and launching monoprocessor GAUSSIAN interactive jobs (nprocshared=1 or no specification)&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 1 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the name of the molecule?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; butadiene &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; The first four letters will be used to name the new files that the generator is creating &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the number of atoms?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 10 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;The number of nuclear degrees of freedom is 24.&lt;br /&gt;
Do you want to reduce the dimensionality? (y|n)&lt;br /&gt;
(N.B.: this can be used also for re-ordering the coordinates)&lt;br /&gt;
&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; n &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the number of nuclear Gaussian functions?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 1 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt; 1 means 1 gaussian on state 1 and 1 gaussian on state 2. This is the &amp;quot;single-set&amp;quot; implementation of MCTDH (DD-vMCG) therefore the gaussian wavepacket on state 1 is the same as the gaussian wavepacket on state 2.&amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;&#039;What is the final propagation time (in fs)?&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 200 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the propagation time step (in fs)?&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 0.1 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the number of electronic states? (1|2)&#039;&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 2 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the highest electronic root?&#039;&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 2 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;From which electronic state should the wavepacket start? (2|1)&#039;&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 2 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Will there be an initial momentum given to the wavepacket? (y|n)&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; y &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Do you want to add a reference label to the name of the case? (y|n)&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; y &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Please type your text:&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; trial &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;This question is only asked if the answer to the previous question was yes.  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What will be the status of the database? (rdwr|rd|wr|none)&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; none &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; Choose rd for read, wr for write etc. In this case we are not going to use the database, but if it was used (rd or rdwr is specified) the script would ask the user to specify the threshold below which the database values will be used (%). In this case the value none is chosen so this question is not asked.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Please type the value of the maximum-difference criterion (in %):&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 1 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;If 1 is specified, the database value will be used if the geometry is within 1% of the new geometry being calculated&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;&amp;gt;&amp;gt; Manual rotation (using Excel spreadsheet) &amp;lt;&amp;lt;&lt;br /&gt;
   Please type the values of the three Euler angles (in deg)&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 176.543006&lt;br /&gt;
185.772905&lt;br /&gt;
4.538147 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;From the spreadsheet [[Media:spreadsheet.xls]]&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;The generator will now tell you that it has read the files start.fchk from the folder /work/dm107/dyn/dd_data/ and written the file start.chk.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Read formatted file /work/$USER/buta/dd_data/start.fchk&lt;br /&gt;
 Write checkpoint file /work/$USER/buta/dd_data/start.chk&lt;br /&gt;
using /apps/gaussian/g03_e01/g03/unfchk&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Do you want to read the direction of the initial momentum from the existing file in /work/$USER/buta/dd_data? (y|n)&lt;br /&gt;
(you still have time to change it now, before answering)&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; y &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;This question is only asked if the answer to the question &amp;quot;Will there be an initial momentum given to the wavepacket?&amp;quot; was yes.  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Please type the value of the excess kinetic energy (in eV) for calculating the magnitude:&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 1 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Files created by the generator&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* The generator will now tell you that it has read the files start.log, coin.log and momentum.dat (if a momentum has been specified) from the folder /work/dm107/dyn/dd_data/:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
   about to read parameters...&lt;br /&gt;
   ... parameters just read&lt;br /&gt;
   about to read file /work/dm107/dyn_90dev/dd_data/start.log                   &lt;br /&gt;
                                                               ...&lt;br /&gt;
   ... file /work/dm107/dyn_90dev/dd_data/start.log                             &lt;br /&gt;
                                                      read successfully&lt;br /&gt;
   about to read file /work/dm107/dyn_90dev/dd_data/coin.log                    &lt;br /&gt;
                                                               ...&lt;br /&gt;
 *********************************************************&lt;br /&gt;
 Mass-weighted displacement from start to coin:&lt;br /&gt;
    old total norm: 22.070387&lt;br /&gt;
    new total norm:  4.669035&lt;br /&gt;
  vibrational part:  4.669035&lt;br /&gt;
   rotational part:  0.000000&lt;br /&gt;
 *********************************************************&lt;br /&gt;
   ... file /work/dm107/dyn_90dev/dd_data/coin.log                             &lt;br /&gt;
                                                      read successfully&lt;br /&gt;
   about to read file /work/dm107/dyn_90dev/dd_data/momentum.dat                      &lt;br /&gt;
                                                               ...&lt;br /&gt;
 *********************************************************&lt;br /&gt;
 Using the momentum given in momentum.dat would have given&lt;br /&gt;
an excess kinetic energy (in eV) of: 15.269&lt;br /&gt;
 For your information, the momentum has been multiplied&lt;br /&gt;
by a factor of:  0.572&lt;br /&gt;
 *********************************************************&lt;br /&gt;
  &lt;br /&gt;
   ... file /work/dm107/dyn_90dev/dd_data/momentum.dat                                &lt;br /&gt;
                                                      read successfully&lt;br /&gt;
&amp;lt;/pre&amp;gt; &lt;br /&gt;
&lt;br /&gt;
and that the extraction of data and the creation of a summary file were done successfully. If the Mass-weighted displacement from start to coin appears as NaN it may be because the start.log contains atom numbers rather than atom types. You will need to redo the freq=hpmodes job with atom types.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Data extracted successfully&lt;br /&gt;
The summary of this file generation is in:&lt;br /&gt;
-rw-r--r--  1 dm107 hpc-users 3070 Dec  2 17:06 /home/dm107/dyn_90dev/but1dd1o.txt&lt;br /&gt;
 &lt;br /&gt;
Do not forget you still can add a momentum, change the integrator, change convergence criteria for GAUSSIAN and MCTDH...&lt;br /&gt;
 &lt;br /&gt;
Do not forget to check the order of the atoms of the conical intersection geometry in /work/dm107/dyn_90dev/dd_data/coin.log&lt;br /&gt;
 &lt;br /&gt;
Now go to your jobscript file and give values to the memory and walltime.&lt;br /&gt;
 &lt;br /&gt;
Good luck!&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* The dd_generator script has generated four files in the same directory (/home/$USER/buta):&lt;br /&gt;
&lt;br /&gt;
# but1dd1p_trial.inp  &lt;br /&gt;
# but1dd1p_trial.job  &lt;br /&gt;
# but1dd1p_trial.txt  &lt;br /&gt;
# but1dd_none.op&lt;br /&gt;
&lt;br /&gt;
(Link to a more detailed explanation of this files)&lt;br /&gt;
&lt;br /&gt;
* The script has also created some files and directories in /work/$USER/buta where the MCTDH (DD-vMCG) and GAUSSIAN calculations will be stored:&lt;br /&gt;
&lt;br /&gt;
1) Directories:&lt;br /&gt;
&lt;br /&gt;
* butadd1p_trial&lt;br /&gt;
* butadd1p_trial/dd_data&lt;br /&gt;
&lt;br /&gt;
2) Files (in butadd1o_trial/dd_data):&lt;br /&gt;
&lt;br /&gt;
# refdb.dat &lt;br /&gt;
# start.chk  &lt;br /&gt;
# template.dat&lt;br /&gt;
# forward.dat&lt;br /&gt;
# backward.dat&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Modifications to be made to the files before running the dynamics&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* In the .job file in /home/$USER/buta specify the memory and walltime if you are in the HPC Cluster.&lt;br /&gt;
&lt;br /&gt;
* When running a development version of GAUSSIAN (gdvg03 or gdvg01), copy the start.chk file into the folder /work/$USER/dyn_90dev/but1dd1p_trial/dd_data. The unformatted checkpoint file from start.fchk that dd_generator has created is corrupted (due to a bug in formchk in gdvg01).&lt;br /&gt;
&lt;br /&gt;
====Starting from a point other than the Franck-Condon point====&lt;br /&gt;
&lt;br /&gt;
When the molecule is highly symmetric and there is more than one equivalent conical intersection (see above) it may be necessary to direct the wavepacket towards the particular conical intersection described in coin.log. The easiest way to do this is to use an initial momentum but it can also be achieved by distorting the geometry of the starting structure slightly towards the conical intersection (i.e. breaking the symmetry in the appropriate direction(s)).&lt;br /&gt;
&lt;br /&gt;
Define the new starting geometry in frequency-mass-weighted normal coordinates (this can be done using the Excel spreadsheet). One option for selecting the new geometry is to use a fraction of the displacement from the FC point to the conical intersection. &lt;br /&gt;
&lt;br /&gt;
After running dd_generator in the normal way, replace the default FC geometry in the .inp file with the new geometry. This geometry (frequency-mass-weighted-coordinates of the centre of the wavepacket) forms the fourth column in the section entitled INIT_WF-SECTION (in .inp).&lt;br /&gt;
&lt;br /&gt;
If the new geometry is very different from the FC geometry, run a single-point state-averaged-CAS calculation (start from RHF, look at the MOs, alter if needed, and check the final active MOs) and call the resulting .chk file start.chk. Replace the start.chk that would have been used ($WORK/buta/but1dd1p_trial/dd_data/start.chk) with this new start.fchk. If the distorted geometry is close enough to the FC geometry it may not be necessary to generate a new start.chk. (When the distortion is large there is a risk of breaking the active space from FC to the new point. Creating a new start.chk is just a way of making sure the starting active space is OK at the new point.) If you are creating a new start.fchk, run the solver on that geometry (relative to the original starting geometry) in the Excel spreadsheet. Create the new start.chk using the geometry in the orange box (so that it is in the same orientation as the molecule in start.log).&lt;br /&gt;
&lt;br /&gt;
N.B. There is no need to replace start.log even when start.fchk is replaced.&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Running the dynamics&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* Navigate to /home/$USER/buta. Queue the job file. In this case, type:&lt;br /&gt;
&lt;br /&gt;
     qsub butadd1p_trial.job&lt;br /&gt;
&lt;br /&gt;
for MAC OS X users the shell command is already written in butadd1p_trial.job&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;The Database (DB)&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
The DB is made of four binary files:&lt;br /&gt;
geo.db&lt;br /&gt;
pes.db&lt;br /&gt;
gra.db&lt;br /&gt;
hes.db&lt;br /&gt;
They can be used in place of GAUSSIAN calculations to save some&lt;br /&gt;
computation time when you ask for DBrd or DBrdwr.&lt;br /&gt;
&lt;br /&gt;
Each set of geometry, energy, gradient and Hessian (the latter&lt;br /&gt;
three quantities having been calculated by GAUSSIAN for the two&lt;br /&gt;
adiabatic electronic states) will be called a DB record and&lt;br /&gt;
assigned a record number defining the order of occurrence in the DB.&lt;br /&gt;
If you run a calculation where the DB is to be read, in the *.res&lt;br /&gt;
file that you obtain after the calculation is done (file that&lt;br /&gt;
actually is a redirection of the standard output) you will see the&lt;br /&gt;
number of records in the DB as it grows.&lt;br /&gt;
Example (formaldehyde, multi-set 1+1):&lt;br /&gt;
          53&lt;br /&gt;
 s=  1 e=  1 t=   0.000 V1=   0.001 V2=   4.533 H11=   0.001 H22=&lt;br /&gt;
 4.533 H12=   0.000 q=   0.0000    0.0000    0.0000    0.0000&lt;br /&gt;
 0.0000    0.0000&lt;br /&gt;
          53&lt;br /&gt;
 s=  2 e=  1 t=   0.000 V1=   0.001 V2=   4.533 H11=   0.001 H22=&lt;br /&gt;
 4.533 H12=   0.000 q=   0.0000    0.0000    0.0000    0.0000&lt;br /&gt;
 0.0000    0.0000&lt;br /&gt;
          53&lt;br /&gt;
 s=  1 e=  1 t=   0.500 V1=   0.197 V2=   4.701 H11=   0.211 H22=&lt;br /&gt;
 4.687 H12=   0.251 q=  -0.6258   -0.6146    0.6136    0.6049&lt;br /&gt;
 -0.5520   -0.0616&lt;br /&gt;
          53&lt;br /&gt;
 s=  2 e=  1 t=   0.500 V1=   0.000 V2=   4.533 H11=   0.000 H22=&lt;br /&gt;
 4.533 H12=  -0.001 q=   0.0009    0.0009    0.0093   -0.0245&lt;br /&gt;
 -0.0066    0.0001&lt;br /&gt;
          53&lt;br /&gt;
 &lt;br /&gt;
 ERROR in subroutine Distdb :&lt;br /&gt;
 Redundant records in Data Base:   18   19&lt;br /&gt;
 s=  1 e=  1 t=   1.000 V1=   0.469 V2=   4.455 H11=   0.479 H22=&lt;br /&gt;
 4.445 H12=   0.200 q=  -0.4640   -0.5641    1.2594   -0.5871&lt;br /&gt;
 -1.0864   -0.1120&lt;br /&gt;
          53&lt;br /&gt;
 s=  2 e=  1 t=   1.000 V1=   0.001 V2=   4.473 H11=   0.001 H22=&lt;br /&gt;
 4.473 H12=  -0.002 q=   0.0003    0.0004    0.0404   -0.0944&lt;br /&gt;
 -0.0292    0.0001&lt;br /&gt;
          53&lt;br /&gt;
 s=  1 e=  1 t=   1.500 V1=   0.113 V2=   4.543 H11=   0.120 H22=&lt;br /&gt;
 4.536 H12=   0.170 q=  -0.3994   -0.4377    0.5444    0.2057&lt;br /&gt;
 -0.5149   -0.0638&lt;br /&gt;
          53&lt;br /&gt;
 s=  2 e=  1 t=   1.500 V1=   0.013 V2=   4.390 H11=   0.013 H22=&lt;br /&gt;
 4.390 H12=  -0.005 q=   0.0009    0.0010    0.0897   -0.2104&lt;br /&gt;
 -0.0634    0.0002&lt;br /&gt;
          53&lt;br /&gt;
 s=  1 e=  1 t=   2.000 V1=   0.068 V2=   4.431 H11=   0.071 H22=&lt;br /&gt;
 4.428 H12=   0.110 q=  -0.2751   -0.3274    0.4796   -0.0812&lt;br /&gt;
 -0.3880   -0.0605&lt;br /&gt;
          54&lt;br /&gt;
 s=  2 e=  1 t=   2.000 V1=   0.019 V2=   4.367 H11=   0.019 H22=&lt;br /&gt;
 4.367 H12=  -0.009 q=   0.0012    0.0013    0.1563   -0.3658&lt;br /&gt;
 -0.1058    0.0003&lt;br /&gt;
          54&lt;br /&gt;
 s=  1 e=  1 t=   2.500 V1=   0.064 V2=   4.273 H11=   0.065 H22=&lt;br /&gt;
 4.272 H12=  -0.064 q=   0.2559    0.0914    0.1691   -0.7218&lt;br /&gt;
 -0.1052   -0.0595&lt;br /&gt;
          55&lt;br /&gt;
 s=  2 e=  1 t=   2.500 V1=   0.070 V2=   4.258 H11=   0.070 H22=&lt;br /&gt;
 4.257 H12=  -0.013 q=   0.0013    0.0015    0.2384   -0.5572&lt;br /&gt;
 -0.1528    0.0004&lt;br /&gt;
&lt;br /&gt;
Here, we started with a DB of 53 records. It is large enough until&lt;br /&gt;
2 fs, where an additional record is produced, and so on.&lt;br /&gt;
The error message saying here that records 18 and 19 are identical&lt;br /&gt;
will not prevent the code from working. It is just here to remind you&lt;br /&gt;
that the DB is not clean in that it has redundant records.&lt;br /&gt;
This is to be prevented as the DB files might become large quite&lt;br /&gt;
rapidly and all records will be read at each update time (dd_update&lt;br /&gt;
= tout in the integrator section, tout = xxx fs in the run section&lt;br /&gt;
of the *.inp file) for each Gaussian function.&lt;br /&gt;
&lt;br /&gt;
Incidentally, when you want to analyse results written to a *.res&lt;br /&gt;
file, you need to look for lines starting with &amp;quot;s=&amp;quot; (other lines&lt;br /&gt;
are various messages and numbers of DB records).&lt;br /&gt;
The criterion for using the DB is to be seen as a maximum-allowed&lt;br /&gt;
relative difference&lt;br /&gt;
&lt;br /&gt;
So, it is up to you to clean the DB when you see this, and to keep&lt;br /&gt;
this in mind when you concatenate DBs that have branched in their&lt;br /&gt;
past (see more details below).&lt;br /&gt;
&lt;br /&gt;
Also, a given DB depends on the choice of a reference geometry in&lt;br /&gt;
Cartesian coordinates because geometries written to the DB files&lt;br /&gt;
will always be re-orientated with respect to this particular&lt;br /&gt;
geometry. The back and forth transformations are performed by MCTDH (DD-vMCG)&lt;br /&gt;
so you don&#039;t need not worry about this.&lt;br /&gt;
This geometry is written to refdb.dat. It is the starting geometry&lt;br /&gt;
that comes from start.log (the only difference being that it is&lt;br /&gt;
mass-centred).&lt;br /&gt;
As long as you do not change the starting geometry or the nature&lt;br /&gt;
of the electronic states, you can thus keep growing the DB of your&lt;br /&gt;
system.&lt;br /&gt;
&lt;br /&gt;
MANAGING THE DATA BASE&lt;br /&gt;
&lt;br /&gt;
A set of DB  programs can be found in XXXXX. Their roles are&lt;br /&gt;
explained below.&lt;br /&gt;
For now, the sources are in dd_utildev and dd_util.31dv and the&lt;br /&gt;
executables are in mctdh90dev/bin and mctdh90.31dv/bin, so you can&lt;br /&gt;
call them from anywhere, as long as DB files are there.&lt;br /&gt;
&lt;br /&gt;
1) countdb.out: returns the number of records of the current DB&lt;br /&gt;
2) cleandb.out: &amp;quot;brute-force&amp;quot; cleaning of the current DB. This&lt;br /&gt;
might be too long to be run interactively when the number of&lt;br /&gt;
records is too large, because each record needs to be compared to&lt;br /&gt;
each other record (e.g. a DB with ca. 3800 records will take a couple of minutes to clean interactively). If so, run in batch mode (ask me or Marta if you&lt;br /&gt;
have a doubt).&lt;br /&gt;
The cleaned files are:&lt;br /&gt;
geoclean.db&lt;br /&gt;
pesclean.db&lt;br /&gt;
graclean.db&lt;br /&gt;
hesclean.db&lt;br /&gt;
You need to rename them without &#039;clean&#039; for them to be used as a DB.&lt;br /&gt;
3) cutdb.out: allows you to cut out the beginning of a DB.&lt;br /&gt;
This is to be used in the following situation:&lt;br /&gt;
- You start from a mother DB, DB0, assumed to be clean, with N0&lt;br /&gt;
records.&lt;br /&gt;
- You want to use DB0 in two independent calculations. You&lt;br /&gt;
replicate DB0 to daughter DBs, DB1 and DB2.&lt;br /&gt;
- When these calculations are done, DB1 and DB2 have grown to N0+N1&lt;br /&gt;
and N0+N2 records, respectively.&lt;br /&gt;
- You want to concatenate them to create a new mother DB, DB3.&lt;br /&gt;
- DB1 and DB2 have their N0 first records the same. To avoid&lt;br /&gt;
redundant records, you need to cut N0 records from DB2 for example.&lt;br /&gt;
--&amp;gt; go to where DB2 is and use cleandb.out&lt;br /&gt;
The resulting files are:&lt;br /&gt;
geocut.db&lt;br /&gt;
pescut.db&lt;br /&gt;
gracut.db&lt;br /&gt;
hescut.db&lt;br /&gt;
these have N1 records.&lt;br /&gt;
--&amp;gt; rename DB1, for instance geo.db1 etc., and concatenate the files:&lt;br /&gt;
cat geo.db1 geoclean.db &amp;gt; geo.db&lt;br /&gt;
etc.&lt;br /&gt;
- Your new mother DB, DB3, should now have N0+N1+N2 distinct records.&lt;br /&gt;
4) deldb.out: allows you to remove one selected record (for&lt;br /&gt;
instance if corrupted) from the DB if you know its number.&lt;br /&gt;
The resulting files are:&lt;br /&gt;
geodel.db&lt;br /&gt;
pesdel.db&lt;br /&gt;
gradel.db&lt;br /&gt;
hesdel.db&lt;br /&gt;
You need to rename them without &#039;del&#039; for them to be used as a DB.&lt;br /&gt;
5) seedb.out: allows you extract one selected record from the&lt;br /&gt;
binary files for reading it (the record is not removed from the DB).&lt;br /&gt;
The resulting file can be read as a text file (ascii) and is:&lt;br /&gt;
see.db&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Restarting dynamics jobs&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
The examples below make use of the directory and filenames in the examples above.&lt;br /&gt;
&lt;br /&gt;
A dynamics run can be restarted if the job was terminated before completion (e.g if it ran out of time or failed because of convergence problems) or if the user wishes to continue the job for a longer time period than had originally been specified. The program will continue writing the same output file but will overwrite the .res file. Thus the .res file should be saved under a different name to prevent loss of the data calculated in the original run. The .res is not written until the job stops so this can be done after the restart.&lt;br /&gt;
&lt;br /&gt;
*To increase the final propagation time&lt;br /&gt;
&lt;br /&gt;
Retrieve the .inp file (in $HOME/buta) and change &#039;&#039;propagation&#039;&#039; to &#039;&#039;continuation&#039;&#039; in the section entitled RUN-SECTION. Then change the final time &#039;&#039;tfinal&#039;&#039; to a larger value. (NB this new value should include the time already done).&lt;br /&gt;
&lt;br /&gt;
Re-queue the job.&lt;br /&gt;
&lt;br /&gt;
*To increase the number of scf cycles (the most common reason for convergence failure)&lt;br /&gt;
&lt;br /&gt;
Edit the template.dat file in $WORK/buta/but1dd1p_trial/dd_data. Insert scf=(maxcycle=128) on the keyword line (for example). It is important that you change the template.dat file in the but1dd1p_trial/dd_data folder that was created by dd_generator (rather than the one created by the user in $WORK/buta/dd_data) because the original $WORK/buta/dd_data/template.dat file is only read by dd_generator and used to create the job-specific file in the job folder. (Of course if you wish all future jobs run in $WORK/buta  to have increased scf cycles, change the other template.dat file in $WORK/buta/dd_data too.)&lt;br /&gt;
&lt;br /&gt;
Re-queue the job.&lt;br /&gt;
&lt;br /&gt;
*To increase the run-time so that a job will finish&lt;br /&gt;
&lt;br /&gt;
Edit the walltime in the .job file in the $HOME directory and re-queue the job.&lt;br /&gt;
&lt;br /&gt;
=&#039;&#039;&#039;Analysis of the results&#039;&#039;&#039;=&lt;br /&gt;
&lt;br /&gt;
The most important files are the output and .res files.&lt;br /&gt;
&lt;br /&gt;
=== Detailed information about files and directories ===&lt;br /&gt;
&lt;br /&gt;
*output&lt;br /&gt;
&lt;br /&gt;
The output contains some standard results:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Time&#039;&#039;&#039;: time in fs.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;CPU&#039;&#039;&#039;:  CPU time in s.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Norm&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;E-tot&#039;&#039;&#039;: the total energy in eV. This value should be conserved (i.e by the end of the run the E-tot value should not be too different  from what it was a time=0).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;E-corr&#039;&#039;&#039;: correlated Hamiltonian energy&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Delta-E&#039;&#039;&#039;: diference between E-tot at time t=0 and the current time t&lt;br /&gt;
&lt;br /&gt;
Note: In a multi-packet run, i.e. when npacket &amp;gt; 1, the total energy and the norm of the wavefunction, as given in the &amp;quot;total&amp;quot; part, are averaged over the packets.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;population&#039;&#039;&#039; : diabatic populations of state 1 and state 2 (in that order) at the current time t&lt;br /&gt;
&lt;br /&gt;
For every mode:	&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt; q &amp;gt;&#039;&#039;&#039;: position expectation value&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;dq&amp;gt;&#039;&#039;&#039;: standard deviation Sqrt[&amp;lt; q&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt; &amp;gt; - &amp;lt; q &amp;gt;&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt; p &amp;gt;&#039;&#039;&#039; : momentum expectation value&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;dq&amp;gt;&#039;&#039;&#039;: standard deviation Sqrt[&amp;lt; p&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt; &amp;gt; - &amp;lt; p &amp;gt;&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*.res&lt;br /&gt;
&lt;br /&gt;
This file contains the energy of each state (diabatic and adiabatic) at each timestep for each gaussian function:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;s&#039;&#039;&#039; is a redundant value in mctdh90.31dv. It is only meaningful in multi-set implementations of mctdh (where there are double the number of gaussian functions than specified: one for each state). (It indicates whether the gaussian function in question is on the lower (1) or upper (2) state. (In the single set implementation, the gaussian functions on each state are identical)).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;e&#039;&#039;&#039; is a label given to each gaussian function&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;t&#039;&#039;&#039; is the current time in fs&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;V1&#039;&#039;&#039; is the energy of the lower adiabatic state at time t&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;V2&#039;&#039;&#039; is the energy of the upper adiabatic state at time t&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;H11&#039;&#039;&#039; is the energy of the lower diabatic state at time t&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;H22&#039;&#039;&#039; is the energy of the upper diabatic state at time t&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;H12&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;q&#039;&#039;&#039; is the list of frequency mass-weighted normal coordinates that describe the geometry at time t&lt;br /&gt;
&lt;br /&gt;
The end of the file will read something like: &lt;br /&gt;
&lt;br /&gt;
     Propagation was successful.&lt;br /&gt;
     &lt;br /&gt;
     Total time     [h:m:s] :    0 :  1 : 21.60&lt;br /&gt;
     &lt;br /&gt;
      ---------------------------------------------------------------------------&lt;br /&gt;
      ------ Host: &amp;quot;cx1-3-2-4&amp;quot; ----------Sat Jan 17 06:50:20 2009&lt;br /&gt;
&lt;br /&gt;
The other most common result is that the calculation aborted because of scf convergence problems in the CASSCF GAUSSIAN calculations. In this case the ouput file will break off after the last complete step and the end of the .res file will read something like:&lt;br /&gt;
     ERROR in subroutine Getddpes :&lt;br /&gt;
     CAS convergence failed for gwp on state:    1    1&lt;br /&gt;
&lt;br /&gt;
If the job terminates due to scf convergence problems, it may be possible to restart it after modifying the .inp and/or .job and/or template.dat files.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*log&lt;br /&gt;
&lt;br /&gt;
This file contains information such as the source code version, type of calculation performed, integrator used, numerical parameters, which data files are opened, any error messages, and much more. The information provided by the log file can be very helpful, in particular when searching for errors. One should always carefully inspect the log file.&lt;br /&gt;
&lt;br /&gt;
* dvr&lt;br /&gt;
&lt;br /&gt;
* oper&lt;br /&gt;
&lt;br /&gt;
*ddpeserr&lt;br /&gt;
&lt;br /&gt;
*input&lt;br /&gt;
&lt;br /&gt;
*op.log&lt;br /&gt;
&lt;br /&gt;
*psi&lt;br /&gt;
&lt;br /&gt;
*check&lt;br /&gt;
&lt;br /&gt;
*auto&lt;br /&gt;
&lt;br /&gt;
*ddpes&lt;br /&gt;
&lt;br /&gt;
*restart&lt;br /&gt;
&lt;br /&gt;
*stop&lt;br /&gt;
&lt;br /&gt;
*speed&lt;br /&gt;
&lt;br /&gt;
*timing&lt;br /&gt;
&lt;br /&gt;
*update&lt;br /&gt;
&lt;br /&gt;
=== Example: butadiene ===&lt;br /&gt;
&lt;br /&gt;
*Examine the end of the output file to check that the calculation ran to completion.&lt;br /&gt;
     &lt;br /&gt;
*Plot the energy of the diabatic and adiabatic states over time (.res file: V1, V2, H11 and H22). Calculate V2-V1 and H22-H11 and plot these also. H12 may also be plotted on the same graph.&lt;br /&gt;
[[Image:EnergyofStates.png]]&lt;br /&gt;
&lt;br /&gt;
The diabatic states cross at 176.2 fs and the adiabatic states cross at 174.5 fs. At a conical intersection, the value V2-V1 will become negative and the H22-H11 will be a minimum (&amp;lt;1eV). Ideally these crossings will occur at the same time. If the diabatisation has worked well, after V2-V1 becomes negative, V2-V1 and H22-H11 will become mirror images (i.e. the diabatic and adiabatic states follow each other). &lt;br /&gt;
&lt;br /&gt;
*Plot the value of the total energy over time (.res file: E-tot). Verify that the Delta-E value is not too large (compare with the total energy (E-tot) at time 0).&lt;br /&gt;
[[Image:TotalEnergy.png]]&lt;br /&gt;
&lt;br /&gt;
*Plot the population of one of the (diabatic) states over time (.res file: population).&lt;br /&gt;
[[Image:Population.png]]&lt;br /&gt;
&lt;br /&gt;
At the conical intersection the population transfer is large. In this case the job has been terminated after 200 fs. Usually the calculation should be continued until the populations stabilise (which obviously has not happened in this case).&lt;br /&gt;
&lt;br /&gt;
=== Making a Movie ===&lt;br /&gt;
&lt;br /&gt;
Navigate to /work/$USER/buta/but1dd1p_trial (the place where the .res file was written). Type:&lt;br /&gt;
 dd_movie.out&lt;br /&gt;
* The script will ask a series of questions and will use the answers provided to create a file that can be read into Molden or iMol.&lt;br /&gt;
&lt;br /&gt;
==== List of questions asked by dd_movie.out====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;blockquote style=&amp;quot;background: white; border: 1px solid black; padding: 1em;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Question&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; &#039;&#039;&#039;Answer for this tutorial&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; &#039;&#039;&#039;Explanation&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the number of atoms?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 10 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the actual number of active coordinates?&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 24 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; In this case all coordinates were active (so there are 3N-6 where N is the number of atoms) &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Name of result file to read?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; but1dd1p_trial.res &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;Ensure that the forward.dat and backward.dat files are located in the current directory in the folder dd_data (they will have been written there automatically)&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Name of movie file to write?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; but1dd1p_trial.xyz &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; Choose any name .xyz &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Which electronic state (s=...)?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 1 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;Choose 1 (this question dates from the multi-set implementation of mctdh where the wavepackets on each state were different)  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Which Gaussian function (e=...)?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 1 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;In this case we have only one wavepacket&amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;The script will now return the number of lines and the initial number of points&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
number of lines:        4684&lt;br /&gt;
initial number of points:        4674&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Maximum number of points you want?&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 4674 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;If you wish to view the movie in Molden you must reduce the number of points to less than 100 (so choose 99 for maximum number of points). iMol can cope with any number of frames so choose the number printed by the script: this number will be reduced and the script will tell you how many points it has written. &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
writing frequency:           2&lt;br /&gt;
   final number of points:        2337&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The .xyz file is ready to be opened in Molden or iMol.&lt;br /&gt;
&lt;br /&gt;
= &#039;&#039;&#039;Current Known Bugs&#039;&#039;&#039; =&lt;br /&gt;
&lt;br /&gt;
Parallelisation:&lt;br /&gt;
&lt;br /&gt;
It is not possible to run calculations in parallel with version 90.31dv (reading the same template.dat file simultaneously by each processor is causing problems). In 90.35tmp this is ok. In 90.4X it will also be fixed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Total energy:&lt;br /&gt;
&lt;br /&gt;
1) The total energy is sometimes &amp;quot;artificially&amp;quot; increased by a lot. If so, try a different integrator or play around with the timestep (may need to get larger or smaller). Or try increasing scf convergence to 10&amp;lt;sup&amp;gt;-12&amp;lt;/sup&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
2) If Delta-E suddenly becomes too large, you can get the following message: &lt;br /&gt;
&amp;quot;ERROR in subroutine WRGAUSSIAN :&lt;br /&gt;
 Do not use $Swap:...$ metastring in file /.../template.dat&amp;quot;&lt;br /&gt;
Often, when getting this message, no more steps are added to the simulation, although the calculation seems to keep running (the integrator keeps trying and failing).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Using the database:&lt;br /&gt;
&lt;br /&gt;
1) Every record generated with mctdh90.31dev and several GWPs is corrupted, so, for now, when launching calculations with more that one wavepacket, use &amp;quot;formdd_none.op&amp;quot; (i.e. do not read nor write the database).&lt;br /&gt;
[For instance, when using dbrdwr and starting from a clean db, all newly generated records are added to the existing database, even if they are identical to records that were already written in the db.]  In 90.35tmp this is ok. In 90.4X it will also be fixed.&lt;br /&gt;
&lt;br /&gt;
2) Records obtained in calculations with one GWP should be OK, but this is still to be confirmed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Impossible case&amp;quot;:&lt;br /&gt;
&lt;br /&gt;
Error message that forces the calculation to stop. It seems to be associated with moving towards an &amp;quot;unexpected&amp;quot; geometry (e.g. a radical).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
State Averaging:&lt;br /&gt;
&lt;br /&gt;
To increase the threshold above which stateaveraging is turned off, increase the default value of 10 (to e.g. 50)  in the line &#039;&#039;ddregions&#039;&#039; in the OPERATOR-SECTION of the .inp file.&lt;br /&gt;
&lt;br /&gt;
= &#039;&#039;&#039;Questions and Modifications to be made to this wiki&#039;&#039;&#039; =&lt;br /&gt;
&lt;br /&gt;
*Why we would ever need to start the gwps from the lower state? To study GS rxns; chemiluminesence (eg glowworms).&lt;br /&gt;
*In terms of Delta-E, how much is too much? ca1eV but shape of E-tot vs time is important: discontiunities or v flat then steep increase are less reliable than smooth gradual increases.&lt;br /&gt;
*Benjamin: Note that Marta has noticed that for very strange geometries, you may receive an error message saying &amp;quot;impossible case&amp;quot;, which stops MCTDH. It is too complicated to explain here. I know where this happens in the code, and I should prevent this error to stop the code but I didn&#039;t have time to fix this. I&#039;ll do it soon.&lt;br /&gt;
*Need to edit/correct section on the DB.&lt;br /&gt;
*Is does unfchk in gdvg03 create corrupted fchk files? G03 is fine. we don&#039;t know about gdvg03 but we don&#039;t care because we probablly won&#039;t use it.&lt;br /&gt;
&lt;br /&gt;
=== [[Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial|back]] ===&lt;/div&gt;</summary>
		<author><name>Vs13</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/run&amp;diff=333937</id>
		<title>Resgrp:comp-photo-dyn/mctdh90.56dv Fulvene Tutorial/run</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/run&amp;diff=333937"/>
		<updated>2013-04-24T14:51:35Z</updated>

		<summary type="html">&lt;p&gt;Vs13: /* back */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= &#039;&#039;&#039;Basic use of the MCTDH (DD-vMCG) package&#039;&#039;&#039; =&lt;br /&gt;
&lt;br /&gt;
A script called dd_generator uses GAUSSIAN output files and user input to write the input files for mctdh (DD-vMCG).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Notes&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;The number of gaussian wavepackets (requested by the dd_generator script)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Start with one (to keep calculation times short). When an appropriate momentum, time period, time step and integrator have been established, increase the number of wavepackets until the results are not changed by adding more. Calculation times are proportional to the number of wavepackets. To ensure efficient use of computing resources, always specify an even number of wavepackets if using more than one processor (since the number of processors can only be an even number: currently 2, 4 or 8).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;The database&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The most time-consuming part of a dynamics run is the GAUSSIAN CASSCF calculations. The results of these calculations can be stored in a database and re-used in future runs. The user must choose whether or not to read and/or write a database. Each calculation will write a separate database so the databases from each run must be combined (and any duplicate entries removed (to save space)). LINK HERE TO SECTION ON MANAGING THE DATABASE&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Initial momentum&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
An initial momentum can be specified to direct the wavepacket to a particular area of the PES (e.g. towards a conical intersection, a transition state or minimum geometry). The momentum is given as a geometry (in frequency mass weighted normal coordinates). The Excel spreadsheet used for rotation of the conical intersection can be used to transform the coordiinates of the desired geometry. If the user requests an initial momentum, dd_generator will search for a file called momentum.dat. If this file is found, dd_generator will ask if the user wishes to use the momentum specified in it. The user can then specify how much energy to give (in eV). Thus, the values in momentum.dat need only be relative values (since they will be multiplied by a scaling factor to provide the total number of eV requested). If there is no file called momentum.dat in the appropriate folder, the user will not be asked to specify a total number of eV to give to the wavepacket(s). A momentum can still be added by manually modifying the .inp file after the dd_generator script has been run (replace the zero values in the fifth column of the section of the .inp file entitled INIT_WF-SECTION). However, it is simpler to create the momentum.dat file mainly because if the user edits the .inp file directly, there is no way of knowing what the total excess energy will be: the values listed in .inp also incorporate magnitude (not just relative values as in momentum.dat). &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Memory and number of processors&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
In template.dat, the memory for each GAUSSIAN CASSCF calculation is specified. In the .job file (created by dd_generator from user input) the total memory is specified. Thus, the memory specified in .job must be at least as great as the memory given in template.dat multiplied by the number of processors.&lt;br /&gt;
&lt;br /&gt;
The GAUSSIAN calculations for each wavepacket will run on a single processor. If the user specifies more than one processor then the calculations for each wavepacket can run simultaneously. To ensure efficient use of computing resources, always specify an even number of wavepackets when using more than one processor (since the number of processors can only be an even number: currently 2, 4 or 8).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Symmetry Considerations&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The way the diabatisation is performed in mctdh90.31dv sometimes leads to complications involving symmetry.  The diabatic states are defined using the conical intersection (or other geometry) described in coin.log. If the molecule is highly symmetric, there will be more than one conical intersection (all identical by symmetry). If the wavepacket moves close to one of the other conical intersections that is not described in coin.log, the diabatic states may not be properly described in this area of the PES. This of course means that the behaviour of the wavepacket(s) is likely to be described poorly also.&lt;br /&gt;
&lt;br /&gt;
If the conical intersection has lower symmetry than the starting material, the symmetry must necessarily be broken during the dynamics calculation before the conical intersection is reached. The breaking of each mode will occur either due to the accumulation of small numerical inaccuracies or if a momentum is given which forces particular modes to break symmetry.&lt;br /&gt;
Mctdh90.31dv uses frequency-mass-weighted normal coordinates to describe molecular geometries. Each frequency-mass-weighted coordinate corresponds to a vibration of the molecule (and there are therefore 3N-6 coordinates). Displacements of atoms are described by a (or a combination of) vibration(s). Each vibration can be displaced in one of two directions: positive or negative. The 3N-6 frequency-mass-weighted coordinates can be classified by symmetry. Whether a particular symmetry mode is broken in the positive or negative direction will be equally likely if no initial momentum is given. Thus for each mode that is broken during a simulation the symmetry may break in the positive direction or the negative direction. There will be 2&amp;lt;sup&amp;gt;x&amp;lt;/sup&amp;gt; possible conical intersections corresponding to a particular starting geometry, where x is the number of modes that must be broken going from starting material to conical intersection.&lt;br /&gt;
&lt;br /&gt;
Additionally, care must be taken over atom labeling. It must be possible to transform the starting material into the conical intersection without permuting atom labels. If the conical intersection has been optimised by following the MEP downhill from the starting material this is not likely to be a problem. However, bear this in mind if drawing the conical intersection by hand.  &lt;br /&gt;
&lt;br /&gt;
Example: Butadiene&lt;br /&gt;
&lt;br /&gt;
Cis-butadiene belongs to the C&amp;lt;sub&amp;gt;2h&amp;lt;/sub&amp;gt; point group and its 3N-6 frequency-mass-weighted coordinates can be classified as A&amp;lt;sub&amp;gt;g&amp;lt;/sub&amp;gt;, B&amp;lt;sub&amp;gt;g&amp;lt;/sub&amp;gt;, A&amp;lt;sub&amp;gt;u&amp;lt;/sub&amp;gt; or B&amp;lt;sub&amp;gt;u&amp;lt;/sub&amp;gt; (see the C&amp;lt;sub&amp;gt;2h&amp;lt;/sub&amp;gt; character table and  GAUSSIAN frequency output). The S&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;/S&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt; conical intersection has no symmetry. Thus there are four symmetry modes that must be broken going from starting material to conical intersection. There are sixteen (2&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;) equivalent conical intersections that could be specified in coin.log, corresponding to all possible ways of distorting the starting geometry into the conical intersection geometry. The sixteen conical intersections correspond to: two structures resulting from disrotatory motion in one direction followed by out-of-plane twisting (and their enantiomers); two structures resulting from disrotatory motion in the other direction followed by out-of-plane twisting (and their enantiomers); two structures resulting from conrotatory motion in one direction followed by out-of-plane twisting (and their enantiomers); and  two structures resulting from conrotatory motion in the other direction followed by out-of-plane twisting (and their enantiomers). Each of the sixteen conical intersections will have a different arrangement of atomic labels but all can be reached by distorting the starting geometry.&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Creating the Directories&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* First of all, create a folder in which to save the calculations in your $HOME and $WORK directories. Create a directory in $HOME, and an identical directory in $WORK that has the same path. Keep pathlengths as short as possible (if the total path becomes too long the dynamics code will not run). For simplicity, in this case, we are going to assume that this directory is named &#039;&#039;buta&#039;&#039; (for butadiene).&lt;br /&gt;
&lt;br /&gt;
     mkdir buta&lt;br /&gt;
&lt;br /&gt;
* Create a subdirectory called &#039;&#039;&#039;dd_data&#039;&#039;&#039; in the new directory in $WORK.  Thus you should start with:&lt;br /&gt;
&lt;br /&gt;
    /home/$USER/buta&lt;br /&gt;
    /work/$USER/buta/dd_data&lt;br /&gt;
&lt;br /&gt;
* Important Note: it is essential to have the same path in both directories, $HOME and $WORK. Do not change the path-names within the HOME/WORK directories. If you re-name or move any subdirectory in your, for example HOME directory, you have to be consistent and make the same changes in the $WORK directory.&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Gaussian Output to be Used as Input for the Dynamics Program&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* Populate the new directory /work/$USER/buta/dd_data with four files which must be named: &#039;&#039;&#039;coin.log&#039;&#039;&#039;; &#039;&#039;&#039;start.fchk&#039;&#039;&#039;; &#039;&#039;&#039;start.log&#039;&#039;&#039;; and &#039;&#039;&#039;template.dat&#039;&#039;&#039;.These files are required in order to run any dynamics simulation, they are the basis that the script dd_generator (see the following section) will use to create the necessary files for running MCTDH (DD-vMCG).  You may also create a file named &amp;quot;&#039;momentum.dat&amp;quot;&#039; if you wish to give a momentum to the wavepacket(s) (this is optional and may be created later instead). &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;coin.log&#039;&#039;&#039; is the logfile resulting from the optimisation of the conical intersection. NB The MCTDH (DD-vMCG) program will rotate the conical intersection before starting the dynamics. To do this it must be provided with three angles which describe the appropriate rotation. There is an Excel spreadsheet available to calculate these angles (see the section entitled &amp;quot;Rotating the Conical Intersection&amp;quot;). NB the structure in coin.log need not necessarily be a true conical intersection: this point is only used for performing the diabatisation. Thus the diabatisation will be exact at this point and will become more approximate the further you are from it (on the PES). If you wish to use a point that is not a conical intersection, simply run a conical intersection optimisation (with only a single step) on the desired geometry. This will create a file with the same layout as a conical intersection optimisation output file (mctdh looks for certain things in this file so if some other type of .log file were used instead, it might not contain the required information). NB the final conical intersection log file must only contain one geometry (otherwise the dynamics program will not know which geometry to use). IS THIS STATEMENT TRUE FOR THIS VERSION??&lt;br /&gt;
&lt;br /&gt;
[[Media:coin.log]]&lt;br /&gt;
&lt;br /&gt;
(Insert a link here to section &amp;quot;Rotating the Conical Intersection&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;start.fchk&#039;&#039;&#039; is the formatted checkpoint file from the high precision vibrational modes of the ground state with state averaged orbitals (with atom types rather than numbers) (Part A, 6)&lt;br /&gt;
&lt;br /&gt;
[[Media:start.fchk]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;start.log&#039;&#039;&#039; is the log file from the high precision vibrational modes of the ground state with state averaged orbitals (with atom types rather than numbers) (Part A, 6)&lt;br /&gt;
&lt;br /&gt;
[[Media:start.log]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;template.dat&#039;&#039;&#039; is a template for the creation of GAUSSIAN input files by the MCTDH (DD-vMCG) program. It contains all the mutual keywords of the GAUSSIAN calculations which will be run on-the-fly by MCTDH (DD-vMCG). It also contains other information relating to the GAUSSIAN calculations such as memory requirements.&lt;br /&gt;
 &lt;br /&gt;
[[Media:template.dat]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;momentum.dat&#039;&#039;&#039; is a file containing a list of values to be used as vectors to indicate the momentum to be given to a particular (set of) wavepacket(s). The vectors must be listed in the order of the frequency-mass-weighted normal coordinates specified in the Excel spreadsheet. They give the magnitude of the momentum to be given along each of these frequency-mass-weighted normal coordinates. N.B. The signs of the values here are important!&lt;br /&gt;
 &lt;br /&gt;
[[Media:momentum.dat]]&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;The Generator&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* The &amp;quot;generator&amp;quot; script uses the GAUSSIAN output files (above) along with other information supplied by the user to create input files for MCTDH (DD-vMCG).&lt;br /&gt;
&lt;br /&gt;
* Navigate to /home/$USER/buta and run the generator by typing:&lt;br /&gt;
&lt;br /&gt;
     dd_generator&lt;br /&gt;
&lt;br /&gt;
for the HPC Cluster, or &lt;br /&gt;
&lt;br /&gt;
     dd_generator_MAC&lt;br /&gt;
&lt;br /&gt;
for a MAC OS X system&lt;br /&gt;
&lt;br /&gt;
* Typing dd_generator will run the script automatically. After installing the MCTDH (DD-vMCG) package this command has been added to your list of executable commands. &lt;br /&gt;
&lt;br /&gt;
     ********************************************************************************&lt;br /&gt;
     ********************    -------  DD GENERATOR  --------    *****************&lt;br /&gt;
     ********************************************************************************&lt;br /&gt;
&lt;br /&gt;
* The generator will ask a series of questions and will use the answers provided to prepare the input files for the dynamics program. The questions it asks are listed below along with answers for a trial run on butadiene.&lt;br /&gt;
&lt;br /&gt;
==== List of questions asked by dd_generator====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;blockquote style=&amp;quot;background: white; border: 1px solid black; padding: 1em;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Question&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; &#039;&#039;&#039;Answer for this tutorial&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; &#039;&#039;&#039;Explanation&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Which version of GAUSSIAN should we use? (gdv|g03)&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; g03 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;How many shared-memory processors should we use? (1|2|4|8)&lt;br /&gt;
N.B.: (ncpus=1) serial or (ncpus=2|4|8) parallel (omp) version of MCTDH launched as batch job&lt;br /&gt;
and launching monoprocessor GAUSSIAN interactive jobs (nprocshared=1 or no specification)&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 1 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the name of the molecule?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; butadiene &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; The first four letters will be used to name the new files that the generator is creating &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the number of atoms?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 10 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;The number of nuclear degrees of freedom is 24.&lt;br /&gt;
Do you want to reduce the dimensionality? (y|n)&lt;br /&gt;
(N.B.: this can be used also for re-ordering the coordinates)&lt;br /&gt;
&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; n &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the number of nuclear Gaussian functions?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 1 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt; 1 means 1 gaussian on state 1 and 1 gaussian on state 2. This is the &amp;quot;single-set&amp;quot; implementation of MCTDH (DD-vMCG) therefore the gaussian wavepacket on state 1 is the same as the gaussian wavepacket on state 2.&amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;&#039;What is the final propagation time (in fs)?&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 200 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the propagation time step (in fs)?&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 0.1 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the number of electronic states? (1|2)&#039;&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 2 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the highest electronic root?&#039;&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 2 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;From which electronic state should the wavepacket start? (2|1)&#039;&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 2 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Will there be an initial momentum given to the wavepacket? (y|n)&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; y &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Do you want to add a reference label to the name of the case? (y|n)&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; y &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Please type your text:&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; trial &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;This question is only asked if the answer to the previous question was yes.  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What will be the status of the database? (rdwr|rd|wr|none)&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; none &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; Choose rd for read, wr for write etc. In this case we are not going to use the database, but if it was used (rd or rdwr is specified) the script would ask the user to specify the threshold below which the database values will be used (%). In this case the value none is chosen so this question is not asked.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Please type the value of the maximum-difference criterion (in %):&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 1 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;If 1 is specified, the database value will be used if the geometry is within 1% of the new geometry being calculated&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;&amp;gt;&amp;gt; Manual rotation (using Excel spreadsheet) &amp;lt;&amp;lt;&lt;br /&gt;
   Please type the values of the three Euler angles (in deg)&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 176.543006&lt;br /&gt;
185.772905&lt;br /&gt;
4.538147 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;From the spreadsheet [[Media:spreadsheet.xls]]&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;The generator will now tell you that it has read the files start.fchk from the folder /work/dm107/dyn/dd_data/ and written the file start.chk.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Read formatted file /work/$USER/buta/dd_data/start.fchk&lt;br /&gt;
 Write checkpoint file /work/$USER/buta/dd_data/start.chk&lt;br /&gt;
using /apps/gaussian/g03_e01/g03/unfchk&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Do you want to read the direction of the initial momentum from the existing file in /work/$USER/buta/dd_data? (y|n)&lt;br /&gt;
(you still have time to change it now, before answering)&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; y &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;This question is only asked if the answer to the question &amp;quot;Will there be an initial momentum given to the wavepacket?&amp;quot; was yes.  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Please type the value of the excess kinetic energy (in eV) for calculating the magnitude:&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 1 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Files created by the generator&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* The generator will now tell you that it has read the files start.log, coin.log and momentum.dat (if a momentum has been specified) from the folder /work/dm107/dyn/dd_data/:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
   about to read parameters...&lt;br /&gt;
   ... parameters just read&lt;br /&gt;
   about to read file /work/dm107/dyn_90dev/dd_data/start.log                   &lt;br /&gt;
                                                               ...&lt;br /&gt;
   ... file /work/dm107/dyn_90dev/dd_data/start.log                             &lt;br /&gt;
                                                      read successfully&lt;br /&gt;
   about to read file /work/dm107/dyn_90dev/dd_data/coin.log                    &lt;br /&gt;
                                                               ...&lt;br /&gt;
 *********************************************************&lt;br /&gt;
 Mass-weighted displacement from start to coin:&lt;br /&gt;
    old total norm: 22.070387&lt;br /&gt;
    new total norm:  4.669035&lt;br /&gt;
  vibrational part:  4.669035&lt;br /&gt;
   rotational part:  0.000000&lt;br /&gt;
 *********************************************************&lt;br /&gt;
   ... file /work/dm107/dyn_90dev/dd_data/coin.log                             &lt;br /&gt;
                                                      read successfully&lt;br /&gt;
   about to read file /work/dm107/dyn_90dev/dd_data/momentum.dat                      &lt;br /&gt;
                                                               ...&lt;br /&gt;
 *********************************************************&lt;br /&gt;
 Using the momentum given in momentum.dat would have given&lt;br /&gt;
an excess kinetic energy (in eV) of: 15.269&lt;br /&gt;
 For your information, the momentum has been multiplied&lt;br /&gt;
by a factor of:  0.572&lt;br /&gt;
 *********************************************************&lt;br /&gt;
  &lt;br /&gt;
   ... file /work/dm107/dyn_90dev/dd_data/momentum.dat                                &lt;br /&gt;
                                                      read successfully&lt;br /&gt;
&amp;lt;/pre&amp;gt; &lt;br /&gt;
&lt;br /&gt;
and that the extraction of data and the creation of a summary file were done successfully. If the Mass-weighted displacement from start to coin appears as NaN it may be because the start.log contains atom numbers rather than atom types. You will need to redo the freq=hpmodes job with atom types.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Data extracted successfully&lt;br /&gt;
The summary of this file generation is in:&lt;br /&gt;
-rw-r--r--  1 dm107 hpc-users 3070 Dec  2 17:06 /home/dm107/dyn_90dev/but1dd1o.txt&lt;br /&gt;
 &lt;br /&gt;
Do not forget you still can add a momentum, change the integrator, change convergence criteria for GAUSSIAN and MCTDH...&lt;br /&gt;
 &lt;br /&gt;
Do not forget to check the order of the atoms of the conical intersection geometry in /work/dm107/dyn_90dev/dd_data/coin.log&lt;br /&gt;
 &lt;br /&gt;
Now go to your jobscript file and give values to the memory and walltime.&lt;br /&gt;
 &lt;br /&gt;
Good luck!&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* The dd_generator script has generated four files in the same directory (/home/$USER/buta):&lt;br /&gt;
&lt;br /&gt;
# but1dd1p_trial.inp  &lt;br /&gt;
# but1dd1p_trial.job  &lt;br /&gt;
# but1dd1p_trial.txt  &lt;br /&gt;
# but1dd_none.op&lt;br /&gt;
&lt;br /&gt;
(Link to a more detailed explanation of this files)&lt;br /&gt;
&lt;br /&gt;
* The script has also created some files and directories in /work/$USER/buta where the MCTDH (DD-vMCG) and GAUSSIAN calculations will be stored:&lt;br /&gt;
&lt;br /&gt;
1) Directories:&lt;br /&gt;
&lt;br /&gt;
* butadd1p_trial&lt;br /&gt;
* butadd1p_trial/dd_data&lt;br /&gt;
&lt;br /&gt;
2) Files (in butadd1o_trial/dd_data):&lt;br /&gt;
&lt;br /&gt;
# refdb.dat &lt;br /&gt;
# start.chk  &lt;br /&gt;
# template.dat&lt;br /&gt;
# forward.dat&lt;br /&gt;
# backward.dat&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Modifications to be made to the files before running the dynamics&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* In the .job file in /home/$USER/buta specify the memory and walltime if you are in the HPC Cluster.&lt;br /&gt;
&lt;br /&gt;
* When running a development version of GAUSSIAN (gdvg03 or gdvg01), copy the start.chk file into the folder /work/$USER/dyn_90dev/but1dd1p_trial/dd_data. The unformatted checkpoint file from start.fchk that dd_generator has created is corrupted (due to a bug in formchk in gdvg01).&lt;br /&gt;
&lt;br /&gt;
====Starting from a point other than the Franck-Condon point====&lt;br /&gt;
&lt;br /&gt;
When the molecule is highly symmetric and there is more than one equivalent conical intersection (see above) it may be necessary to direct the wavepacket towards the particular conical intersection described in coin.log. The easiest way to do this is to use an initial momentum but it can also be achieved by distorting the geometry of the starting structure slightly towards the conical intersection (i.e. breaking the symmetry in the appropriate direction(s)).&lt;br /&gt;
&lt;br /&gt;
Define the new starting geometry in frequency-mass-weighted normal coordinates (this can be done using the Excel spreadsheet). One option for selecting the new geometry is to use a fraction of the displacement from the FC point to the conical intersection. &lt;br /&gt;
&lt;br /&gt;
After running dd_generator in the normal way, replace the default FC geometry in the .inp file with the new geometry. This geometry (frequency-mass-weighted-coordinates of the centre of the wavepacket) forms the fourth column in the section entitled INIT_WF-SECTION (in .inp).&lt;br /&gt;
&lt;br /&gt;
If the new geometry is very different from the FC geometry, run a single-point state-averaged-CAS calculation (start from RHF, look at the MOs, alter if needed, and check the final active MOs) and call the resulting .chk file start.chk. Replace the start.chk that would have been used ($WORK/buta/but1dd1p_trial/dd_data/start.chk) with this new start.fchk. If the distorted geometry is close enough to the FC geometry it may not be necessary to generate a new start.chk. (When the distortion is large there is a risk of breaking the active space from FC to the new point. Creating a new start.chk is just a way of making sure the starting active space is OK at the new point.) If you are creating a new start.fchk, run the solver on that geometry (relative to the original starting geometry) in the Excel spreadsheet. Create the new start.chk using the geometry in the orange box (so that it is in the same orientation as the molecule in start.log).&lt;br /&gt;
&lt;br /&gt;
N.B. There is no need to replace start.log even when start.fchk is replaced.&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Running the dynamics&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* Navigate to /home/$USER/buta. Queue the job file. In this case, type:&lt;br /&gt;
&lt;br /&gt;
     qsub butadd1p_trial.job&lt;br /&gt;
&lt;br /&gt;
for MAC OS X users the shell command is already written in butadd1p_trial.job&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;The Database (DB)&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
The DB is made of four binary files:&lt;br /&gt;
geo.db&lt;br /&gt;
pes.db&lt;br /&gt;
gra.db&lt;br /&gt;
hes.db&lt;br /&gt;
They can be used in place of GAUSSIAN calculations to save some&lt;br /&gt;
computation time when you ask for DBrd or DBrdwr.&lt;br /&gt;
&lt;br /&gt;
Each set of geometry, energy, gradient and Hessian (the latter&lt;br /&gt;
three quantities having been calculated by GAUSSIAN for the two&lt;br /&gt;
adiabatic electronic states) will be called a DB record and&lt;br /&gt;
assigned a record number defining the order of occurrence in the DB.&lt;br /&gt;
If you run a calculation where the DB is to be read, in the *.res&lt;br /&gt;
file that you obtain after the calculation is done (file that&lt;br /&gt;
actually is a redirection of the standard output) you will see the&lt;br /&gt;
number of records in the DB as it grows.&lt;br /&gt;
Example (formaldehyde, multi-set 1+1):&lt;br /&gt;
          53&lt;br /&gt;
 s=  1 e=  1 t=   0.000 V1=   0.001 V2=   4.533 H11=   0.001 H22=&lt;br /&gt;
 4.533 H12=   0.000 q=   0.0000    0.0000    0.0000    0.0000&lt;br /&gt;
 0.0000    0.0000&lt;br /&gt;
          53&lt;br /&gt;
 s=  2 e=  1 t=   0.000 V1=   0.001 V2=   4.533 H11=   0.001 H22=&lt;br /&gt;
 4.533 H12=   0.000 q=   0.0000    0.0000    0.0000    0.0000&lt;br /&gt;
 0.0000    0.0000&lt;br /&gt;
          53&lt;br /&gt;
 s=  1 e=  1 t=   0.500 V1=   0.197 V2=   4.701 H11=   0.211 H22=&lt;br /&gt;
 4.687 H12=   0.251 q=  -0.6258   -0.6146    0.6136    0.6049&lt;br /&gt;
 -0.5520   -0.0616&lt;br /&gt;
          53&lt;br /&gt;
 s=  2 e=  1 t=   0.500 V1=   0.000 V2=   4.533 H11=   0.000 H22=&lt;br /&gt;
 4.533 H12=  -0.001 q=   0.0009    0.0009    0.0093   -0.0245&lt;br /&gt;
 -0.0066    0.0001&lt;br /&gt;
          53&lt;br /&gt;
 &lt;br /&gt;
 ERROR in subroutine Distdb :&lt;br /&gt;
 Redundant records in Data Base:   18   19&lt;br /&gt;
 s=  1 e=  1 t=   1.000 V1=   0.469 V2=   4.455 H11=   0.479 H22=&lt;br /&gt;
 4.445 H12=   0.200 q=  -0.4640   -0.5641    1.2594   -0.5871&lt;br /&gt;
 -1.0864   -0.1120&lt;br /&gt;
          53&lt;br /&gt;
 s=  2 e=  1 t=   1.000 V1=   0.001 V2=   4.473 H11=   0.001 H22=&lt;br /&gt;
 4.473 H12=  -0.002 q=   0.0003    0.0004    0.0404   -0.0944&lt;br /&gt;
 -0.0292    0.0001&lt;br /&gt;
          53&lt;br /&gt;
 s=  1 e=  1 t=   1.500 V1=   0.113 V2=   4.543 H11=   0.120 H22=&lt;br /&gt;
 4.536 H12=   0.170 q=  -0.3994   -0.4377    0.5444    0.2057&lt;br /&gt;
 -0.5149   -0.0638&lt;br /&gt;
          53&lt;br /&gt;
 s=  2 e=  1 t=   1.500 V1=   0.013 V2=   4.390 H11=   0.013 H22=&lt;br /&gt;
 4.390 H12=  -0.005 q=   0.0009    0.0010    0.0897   -0.2104&lt;br /&gt;
 -0.0634    0.0002&lt;br /&gt;
          53&lt;br /&gt;
 s=  1 e=  1 t=   2.000 V1=   0.068 V2=   4.431 H11=   0.071 H22=&lt;br /&gt;
 4.428 H12=   0.110 q=  -0.2751   -0.3274    0.4796   -0.0812&lt;br /&gt;
 -0.3880   -0.0605&lt;br /&gt;
          54&lt;br /&gt;
 s=  2 e=  1 t=   2.000 V1=   0.019 V2=   4.367 H11=   0.019 H22=&lt;br /&gt;
 4.367 H12=  -0.009 q=   0.0012    0.0013    0.1563   -0.3658&lt;br /&gt;
 -0.1058    0.0003&lt;br /&gt;
          54&lt;br /&gt;
 s=  1 e=  1 t=   2.500 V1=   0.064 V2=   4.273 H11=   0.065 H22=&lt;br /&gt;
 4.272 H12=  -0.064 q=   0.2559    0.0914    0.1691   -0.7218&lt;br /&gt;
 -0.1052   -0.0595&lt;br /&gt;
          55&lt;br /&gt;
 s=  2 e=  1 t=   2.500 V1=   0.070 V2=   4.258 H11=   0.070 H22=&lt;br /&gt;
 4.257 H12=  -0.013 q=   0.0013    0.0015    0.2384   -0.5572&lt;br /&gt;
 -0.1528    0.0004&lt;br /&gt;
&lt;br /&gt;
Here, we started with a DB of 53 records. It is large enough until&lt;br /&gt;
2 fs, where an additional record is produced, and so on.&lt;br /&gt;
The error message saying here that records 18 and 19 are identical&lt;br /&gt;
will not prevent the code from working. It is just here to remind you&lt;br /&gt;
that the DB is not clean in that it has redundant records.&lt;br /&gt;
This is to be prevented as the DB files might become large quite&lt;br /&gt;
rapidly and all records will be read at each update time (dd_update&lt;br /&gt;
= tout in the integrator section, tout = xxx fs in the run section&lt;br /&gt;
of the *.inp file) for each Gaussian function.&lt;br /&gt;
&lt;br /&gt;
Incidentally, when you want to analyse results written to a *.res&lt;br /&gt;
file, you need to look for lines starting with &amp;quot;s=&amp;quot; (other lines&lt;br /&gt;
are various messages and numbers of DB records).&lt;br /&gt;
The criterion for using the DB is to be seen as a maximum-allowed&lt;br /&gt;
relative difference&lt;br /&gt;
&lt;br /&gt;
So, it is up to you to clean the DB when you see this, and to keep&lt;br /&gt;
this in mind when you concatenate DBs that have branched in their&lt;br /&gt;
past (see more details below).&lt;br /&gt;
&lt;br /&gt;
Also, a given DB depends on the choice of a reference geometry in&lt;br /&gt;
Cartesian coordinates because geometries written to the DB files&lt;br /&gt;
will always be re-orientated with respect to this particular&lt;br /&gt;
geometry. The back and forth transformations are performed by MCTDH (DD-vMCG)&lt;br /&gt;
so you don&#039;t need not worry about this.&lt;br /&gt;
This geometry is written to refdb.dat. It is the starting geometry&lt;br /&gt;
that comes from start.log (the only difference being that it is&lt;br /&gt;
mass-centred).&lt;br /&gt;
As long as you do not change the starting geometry or the nature&lt;br /&gt;
of the electronic states, you can thus keep growing the DB of your&lt;br /&gt;
system.&lt;br /&gt;
&lt;br /&gt;
MANAGING THE DATA BASE&lt;br /&gt;
&lt;br /&gt;
A set of DB  programs can be found in XXXXX. Their roles are&lt;br /&gt;
explained below.&lt;br /&gt;
For now, the sources are in dd_utildev and dd_util.31dv and the&lt;br /&gt;
executables are in mctdh90dev/bin and mctdh90.31dv/bin, so you can&lt;br /&gt;
call them from anywhere, as long as DB files are there.&lt;br /&gt;
&lt;br /&gt;
1) countdb.out: returns the number of records of the current DB&lt;br /&gt;
2) cleandb.out: &amp;quot;brute-force&amp;quot; cleaning of the current DB. This&lt;br /&gt;
might be too long to be run interactively when the number of&lt;br /&gt;
records is too large, because each record needs to be compared to&lt;br /&gt;
each other record (e.g. a DB with ca. 3800 records will take a couple of minutes to clean interactively). If so, run in batch mode (ask me or Marta if you&lt;br /&gt;
have a doubt).&lt;br /&gt;
The cleaned files are:&lt;br /&gt;
geoclean.db&lt;br /&gt;
pesclean.db&lt;br /&gt;
graclean.db&lt;br /&gt;
hesclean.db&lt;br /&gt;
You need to rename them without &#039;clean&#039; for them to be used as a DB.&lt;br /&gt;
3) cutdb.out: allows you to cut out the beginning of a DB.&lt;br /&gt;
This is to be used in the following situation:&lt;br /&gt;
- You start from a mother DB, DB0, assumed to be clean, with N0&lt;br /&gt;
records.&lt;br /&gt;
- You want to use DB0 in two independent calculations. You&lt;br /&gt;
replicate DB0 to daughter DBs, DB1 and DB2.&lt;br /&gt;
- When these calculations are done, DB1 and DB2 have grown to N0+N1&lt;br /&gt;
and N0+N2 records, respectively.&lt;br /&gt;
- You want to concatenate them to create a new mother DB, DB3.&lt;br /&gt;
- DB1 and DB2 have their N0 first records the same. To avoid&lt;br /&gt;
redundant records, you need to cut N0 records from DB2 for example.&lt;br /&gt;
--&amp;gt; go to where DB2 is and use cleandb.out&lt;br /&gt;
The resulting files are:&lt;br /&gt;
geocut.db&lt;br /&gt;
pescut.db&lt;br /&gt;
gracut.db&lt;br /&gt;
hescut.db&lt;br /&gt;
these have N1 records.&lt;br /&gt;
--&amp;gt; rename DB1, for instance geo.db1 etc., and concatenate the files:&lt;br /&gt;
cat geo.db1 geoclean.db &amp;gt; geo.db&lt;br /&gt;
etc.&lt;br /&gt;
- Your new mother DB, DB3, should now have N0+N1+N2 distinct records.&lt;br /&gt;
4) deldb.out: allows you to remove one selected record (for&lt;br /&gt;
instance if corrupted) from the DB if you know its number.&lt;br /&gt;
The resulting files are:&lt;br /&gt;
geodel.db&lt;br /&gt;
pesdel.db&lt;br /&gt;
gradel.db&lt;br /&gt;
hesdel.db&lt;br /&gt;
You need to rename them without &#039;del&#039; for them to be used as a DB.&lt;br /&gt;
5) seedb.out: allows you extract one selected record from the&lt;br /&gt;
binary files for reading it (the record is not removed from the DB).&lt;br /&gt;
The resulting file can be read as a text file (ascii) and is:&lt;br /&gt;
see.db&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Restarting dynamics jobs&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
The examples below make use of the directory and filenames in the examples above.&lt;br /&gt;
&lt;br /&gt;
A dynamics run can be restarted if the job was terminated before completion (e.g if it ran out of time or failed because of convergence problems) or if the user wishes to continue the job for a longer time period than had originally been specified. The program will continue writing the same output file but will overwrite the .res file. Thus the .res file should be saved under a different name to prevent loss of the data calculated in the original run. The .res is not written until the job stops so this can be done after the restart.&lt;br /&gt;
&lt;br /&gt;
*To increase the final propagation time&lt;br /&gt;
&lt;br /&gt;
Retrieve the .inp file (in $HOME/buta) and change &#039;&#039;propagation&#039;&#039; to &#039;&#039;continuation&#039;&#039; in the section entitled RUN-SECTION. Then change the final time &#039;&#039;tfinal&#039;&#039; to a larger value. (NB this new value should include the time already done).&lt;br /&gt;
&lt;br /&gt;
Re-queue the job.&lt;br /&gt;
&lt;br /&gt;
*To increase the number of scf cycles (the most common reason for convergence failure)&lt;br /&gt;
&lt;br /&gt;
Edit the template.dat file in $WORK/buta/but1dd1p_trial/dd_data. Insert scf=(maxcycle=128) on the keyword line (for example). It is important that you change the template.dat file in the but1dd1p_trial/dd_data folder that was created by dd_generator (rather than the one created by the user in $WORK/buta/dd_data) because the original $WORK/buta/dd_data/template.dat file is only read by dd_generator and used to create the job-specific file in the job folder. (Of course if you wish all future jobs run in $WORK/buta  to have increased scf cycles, change the other template.dat file in $WORK/buta/dd_data too.)&lt;br /&gt;
&lt;br /&gt;
Re-queue the job.&lt;br /&gt;
&lt;br /&gt;
*To increase the run-time so that a job will finish&lt;br /&gt;
&lt;br /&gt;
Edit the walltime in the .job file in the $HOME directory and re-queue the job.&lt;br /&gt;
&lt;br /&gt;
=&#039;&#039;&#039;Analysis of the results&#039;&#039;&#039;=&lt;br /&gt;
&lt;br /&gt;
The most important files are the output and .res files.&lt;br /&gt;
&lt;br /&gt;
=== Detailed information about files and directories ===&lt;br /&gt;
&lt;br /&gt;
*output&lt;br /&gt;
&lt;br /&gt;
The output contains some standard results:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Time&#039;&#039;&#039;: time in fs.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;CPU&#039;&#039;&#039;:  CPU time in s.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Norm&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;E-tot&#039;&#039;&#039;: the total energy in eV. This value should be conserved (i.e by the end of the run the E-tot value should not be too different  from what it was a time=0).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;E-corr&#039;&#039;&#039;: correlated Hamiltonian energy&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Delta-E&#039;&#039;&#039;: diference between E-tot at time t=0 and the current time t&lt;br /&gt;
&lt;br /&gt;
Note: In a multi-packet run, i.e. when npacket &amp;gt; 1, the total energy and the norm of the wavefunction, as given in the &amp;quot;total&amp;quot; part, are averaged over the packets.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;population&#039;&#039;&#039; : diabatic populations of state 1 and state 2 (in that order) at the current time t&lt;br /&gt;
&lt;br /&gt;
For every mode:	&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt; q &amp;gt;&#039;&#039;&#039;: position expectation value&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;dq&amp;gt;&#039;&#039;&#039;: standard deviation Sqrt[&amp;lt; q&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt; &amp;gt; - &amp;lt; q &amp;gt;&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt; p &amp;gt;&#039;&#039;&#039; : momentum expectation value&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;dq&amp;gt;&#039;&#039;&#039;: standard deviation Sqrt[&amp;lt; p&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt; &amp;gt; - &amp;lt; p &amp;gt;&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*.res&lt;br /&gt;
&lt;br /&gt;
This file contains the energy of each state (diabatic and adiabatic) at each timestep for each gaussian function:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;s&#039;&#039;&#039; is a redundant value in mctdh90.31dv. It is only meaningful in multi-set implementations of mctdh (where there are double the number of gaussian functions than specified: one for each state). (It indicates whether the gaussian function in question is on the lower (1) or upper (2) state. (In the single set implementation, the gaussian functions on each state are identical)).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;e&#039;&#039;&#039; is a label given to each gaussian function&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;t&#039;&#039;&#039; is the current time in fs&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;V1&#039;&#039;&#039; is the energy of the lower adiabatic state at time t&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;V2&#039;&#039;&#039; is the energy of the upper adiabatic state at time t&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;H11&#039;&#039;&#039; is the energy of the lower diabatic state at time t&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;H22&#039;&#039;&#039; is the energy of the upper diabatic state at time t&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;H12&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;q&#039;&#039;&#039; is the list of frequency mass-weighted normal coordinates that describe the geometry at time t&lt;br /&gt;
&lt;br /&gt;
The end of the file will read something like: &lt;br /&gt;
&lt;br /&gt;
     Propagation was successful.&lt;br /&gt;
     &lt;br /&gt;
     Total time     [h:m:s] :    0 :  1 : 21.60&lt;br /&gt;
     &lt;br /&gt;
      ---------------------------------------------------------------------------&lt;br /&gt;
      ------ Host: &amp;quot;cx1-3-2-4&amp;quot; ----------Sat Jan 17 06:50:20 2009&lt;br /&gt;
&lt;br /&gt;
The other most common result is that the calculation aborted because of scf convergence problems in the CASSCF GAUSSIAN calculations. In this case the ouput file will break off after the last complete step and the end of the .res file will read something like:&lt;br /&gt;
     ERROR in subroutine Getddpes :&lt;br /&gt;
     CAS convergence failed for gwp on state:    1    1&lt;br /&gt;
&lt;br /&gt;
If the job terminates due to scf convergence problems, it may be possible to restart it after modifying the .inp and/or .job and/or template.dat files.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*log&lt;br /&gt;
&lt;br /&gt;
This file contains information such as the source code version, type of calculation performed, integrator used, numerical parameters, which data files are opened, any error messages, and much more. The information provided by the log file can be very helpful, in particular when searching for errors. One should always carefully inspect the log file.&lt;br /&gt;
&lt;br /&gt;
* dvr&lt;br /&gt;
&lt;br /&gt;
* oper&lt;br /&gt;
&lt;br /&gt;
*ddpeserr&lt;br /&gt;
&lt;br /&gt;
*input&lt;br /&gt;
&lt;br /&gt;
*op.log&lt;br /&gt;
&lt;br /&gt;
*psi&lt;br /&gt;
&lt;br /&gt;
*check&lt;br /&gt;
&lt;br /&gt;
*auto&lt;br /&gt;
&lt;br /&gt;
*ddpes&lt;br /&gt;
&lt;br /&gt;
*restart&lt;br /&gt;
&lt;br /&gt;
*stop&lt;br /&gt;
&lt;br /&gt;
*speed&lt;br /&gt;
&lt;br /&gt;
*timing&lt;br /&gt;
&lt;br /&gt;
*update&lt;br /&gt;
&lt;br /&gt;
=== Example: butadiene ===&lt;br /&gt;
&lt;br /&gt;
*Examine the end of the output file to check that the calculation ran to completion.&lt;br /&gt;
     &lt;br /&gt;
*Plot the energy of the diabatic and adiabatic states over time (.res file: V1, V2, H11 and H22). Calculate V2-V1 and H22-H11 and plot these also. H12 may also be plotted on the same graph.&lt;br /&gt;
[[Image:EnergyofStates.png]]&lt;br /&gt;
&lt;br /&gt;
The diabatic states cross at 176.2 fs and the adiabatic states cross at 174.5 fs. At a conical intersection, the value V2-V1 will become negative and the H22-H11 will be a minimum (&amp;lt;1eV). Ideally these crossings will occur at the same time. If the diabatisation has worked well, after V2-V1 becomes negative, V2-V1 and H22-H11 will become mirror images (i.e. the diabatic and adiabatic states follow each other). &lt;br /&gt;
&lt;br /&gt;
*Plot the value of the total energy over time (.res file: E-tot). Verify that the Delta-E value is not too large (compare with the total energy (E-tot) at time 0).&lt;br /&gt;
[[Image:TotalEnergy.png]]&lt;br /&gt;
&lt;br /&gt;
*Plot the population of one of the (diabatic) states over time (.res file: population).&lt;br /&gt;
[[Image:Population.png]]&lt;br /&gt;
&lt;br /&gt;
At the conical intersection the population transfer is large. In this case the job has been terminated after 200 fs. Usually the calculation should be continued until the populations stabilise (which obviously has not happened in this case).&lt;br /&gt;
&lt;br /&gt;
=== Making a Movie ===&lt;br /&gt;
&lt;br /&gt;
Navigate to /work/$USER/buta/but1dd1p_trial (the place where the .res file was written). Type:&lt;br /&gt;
 dd_movie.out&lt;br /&gt;
* The script will ask a series of questions and will use the answers provided to create a file that can be read into Molden or iMol.&lt;br /&gt;
&lt;br /&gt;
==== List of questions asked by dd_movie.out====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;blockquote style=&amp;quot;background: white; border: 1px solid black; padding: 1em;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Question&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; &#039;&#039;&#039;Answer for this tutorial&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; &#039;&#039;&#039;Explanation&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the number of atoms?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 10 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the actual number of active coordinates?&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 24 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; In this case all coordinates were active (so there are 3N-6 where N is the number of atoms) &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Name of result file to read?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; but1dd1p_trial.res &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;Ensure that the forward.dat and backward.dat files are located in the current directory in the folder dd_data (they will have been written there automatically)&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Name of movie file to write?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; but1dd1p_trial.xyz &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; Choose any name .xyz &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Which electronic state (s=...)?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 1 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;Choose 1 (this question dates from the multi-set implementation of mctdh where the wavepackets on each state were different)  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Which Gaussian function (e=...)?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 1 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;In this case we have only one wavepacket&amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;The script will now return the number of lines and the initial number of points&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
number of lines:        4684&lt;br /&gt;
initial number of points:        4674&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Maximum number of points you want?&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 4674 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;If you wish to view the movie in Molden you must reduce the number of points to less than 100 (so choose 99 for maximum number of points). iMol can cope with any number of frames so choose the number printed by the script: this number will be reduced and the script will tell you how many points it has written. &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
writing frequency:           2&lt;br /&gt;
   final number of points:        2337&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The .xyz file is ready to be opened in Molden or iMol.&lt;br /&gt;
&lt;br /&gt;
= &#039;&#039;&#039;Current Known Bugs&#039;&#039;&#039; =&lt;br /&gt;
&lt;br /&gt;
Parallelisation:&lt;br /&gt;
&lt;br /&gt;
It is not possible to run calculations in parallel with version 90.31dv (reading the same template.dat file simultaneously by each processor is causing problems). In 90.35tmp this is ok. In 90.4X it will also be fixed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Total energy:&lt;br /&gt;
&lt;br /&gt;
1) The total energy is sometimes &amp;quot;artificially&amp;quot; increased by a lot. If so, try a different integrator or play around with the timestep (may need to get larger or smaller). Or try increasing scf convergence to 10&amp;lt;sup&amp;gt;-12&amp;lt;/sup&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
2) If Delta-E suddenly becomes too large, you can get the following message: &lt;br /&gt;
&amp;quot;ERROR in subroutine WRGAUSSIAN :&lt;br /&gt;
 Do not use $Swap:...$ metastring in file /.../template.dat&amp;quot;&lt;br /&gt;
Often, when getting this message, no more steps are added to the simulation, although the calculation seems to keep running (the integrator keeps trying and failing).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Using the database:&lt;br /&gt;
&lt;br /&gt;
1) Every record generated with mctdh90.31dev and several GWPs is corrupted, so, for now, when launching calculations with more that one wavepacket, use &amp;quot;formdd_none.op&amp;quot; (i.e. do not read nor write the database).&lt;br /&gt;
[For instance, when using dbrdwr and starting from a clean db, all newly generated records are added to the existing database, even if they are identical to records that were already written in the db.]  In 90.35tmp this is ok. In 90.4X it will also be fixed.&lt;br /&gt;
&lt;br /&gt;
2) Records obtained in calculations with one GWP should be OK, but this is still to be confirmed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Impossible case&amp;quot;:&lt;br /&gt;
&lt;br /&gt;
Error message that forces the calculation to stop. It seems to be associated with moving towards an &amp;quot;unexpected&amp;quot; geometry (e.g. a radical).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
State Averaging:&lt;br /&gt;
&lt;br /&gt;
To increase the threshold above which stateaveraging is turned off, increase the default value of 10 (to e.g. 50)  in the line &#039;&#039;ddregions&#039;&#039; in the OPERATOR-SECTION of the .inp file.&lt;br /&gt;
&lt;br /&gt;
= &#039;&#039;&#039;Questions and Modifications to be made to this wiki&#039;&#039;&#039; =&lt;br /&gt;
&lt;br /&gt;
*Why we would ever need to start the gwps from the lower state? To study GS rxns; chemiluminesence (eg glowworms).&lt;br /&gt;
*In terms of Delta-E, how much is too much? ca1eV but shape of E-tot vs time is important: discontiunities or v flat then steep increase are less reliable than smooth gradual increases.&lt;br /&gt;
*Benjamin: Note that Marta has noticed that for very strange geometries, you may receive an error message saying &amp;quot;impossible case&amp;quot;, which stops MCTDH. It is too complicated to explain here. I know where this happens in the code, and I should prevent this error to stop the code but I didn&#039;t have time to fix this. I&#039;ll do it soon.&lt;br /&gt;
*Need to edit/correct section on the DB.&lt;br /&gt;
*Is does unfchk in gdvg03 create corrupted fchk files? G03 is fine. we don&#039;t know about gdvg03 but we don&#039;t care because we probablly won&#039;t use it.&lt;br /&gt;
&lt;br /&gt;
=== [[Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial|back]] ===&lt;/div&gt;</summary>
		<author><name>Vs13</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/run&amp;diff=333936</id>
		<title>Resgrp:comp-photo-dyn/mctdh90.56dv Fulvene Tutorial/run</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/run&amp;diff=333936"/>
		<updated>2013-04-24T14:50:05Z</updated>

		<summary type="html">&lt;p&gt;Vs13: Created page with &amp;quot;= &amp;#039;&amp;#039;&amp;#039;Basic use of the MCTDH (DD-vMCG) package&amp;#039;&amp;#039;&amp;#039; =  A script called dd_generator uses GAUSSIAN output files and user input to write the input files for mctdh (DD-vMCG).   &amp;#039;&amp;#039;&amp;#039;Note...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= &#039;&#039;&#039;Basic use of the MCTDH (DD-vMCG) package&#039;&#039;&#039; =&lt;br /&gt;
&lt;br /&gt;
A script called dd_generator uses GAUSSIAN output files and user input to write the input files for mctdh (DD-vMCG).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Notes&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;The number of gaussian wavepackets (requested by the dd_generator script)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Start with one (to keep calculation times short). When an appropriate momentum, time period, time step and integrator have been established, increase the number of wavepackets until the results are not changed by adding more. Calculation times are proportional to the number of wavepackets. To ensure efficient use of computing resources, always specify an even number of wavepackets if using more than one processor (since the number of processors can only be an even number: currently 2, 4 or 8).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;The database&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The most time-consuming part of a dynamics run is the GAUSSIAN CASSCF calculations. The results of these calculations can be stored in a database and re-used in future runs. The user must choose whether or not to read and/or write a database. Each calculation will write a separate database so the databases from each run must be combined (and any duplicate entries removed (to save space)). LINK HERE TO SECTION ON MANAGING THE DATABASE&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Initial momentum&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
An initial momentum can be specified to direct the wavepacket to a particular area of the PES (e.g. towards a conical intersection, a transition state or minimum geometry). The momentum is given as a geometry (in frequency mass weighted normal coordinates). The Excel spreadsheet used for rotation of the conical intersection can be used to transform the coordiinates of the desired geometry. If the user requests an initial momentum, dd_generator will search for a file called momentum.dat. If this file is found, dd_generator will ask if the user wishes to use the momentum specified in it. The user can then specify how much energy to give (in eV). Thus, the values in momentum.dat need only be relative values (since they will be multiplied by a scaling factor to provide the total number of eV requested). If there is no file called momentum.dat in the appropriate folder, the user will not be asked to specify a total number of eV to give to the wavepacket(s). A momentum can still be added by manually modifying the .inp file after the dd_generator script has been run (replace the zero values in the fifth column of the section of the .inp file entitled INIT_WF-SECTION). However, it is simpler to create the momentum.dat file mainly because if the user edits the .inp file directly, there is no way of knowing what the total excess energy will be: the values listed in .inp also incorporate magnitude (not just relative values as in momentum.dat). &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Memory and number of processors&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
In template.dat, the memory for each GAUSSIAN CASSCF calculation is specified. In the .job file (created by dd_generator from user input) the total memory is specified. Thus, the memory specified in .job must be at least as great as the memory given in template.dat multiplied by the number of processors.&lt;br /&gt;
&lt;br /&gt;
The GAUSSIAN calculations for each wavepacket will run on a single processor. If the user specifies more than one processor then the calculations for each wavepacket can run simultaneously. To ensure efficient use of computing resources, always specify an even number of wavepackets when using more than one processor (since the number of processors can only be an even number: currently 2, 4 or 8).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Symmetry Considerations&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The way the diabatisation is performed in mctdh90.31dv sometimes leads to complications involving symmetry.  The diabatic states are defined using the conical intersection (or other geometry) described in coin.log. If the molecule is highly symmetric, there will be more than one conical intersection (all identical by symmetry). If the wavepacket moves close to one of the other conical intersections that is not described in coin.log, the diabatic states may not be properly described in this area of the PES. This of course means that the behaviour of the wavepacket(s) is likely to be described poorly also.&lt;br /&gt;
&lt;br /&gt;
If the conical intersection has lower symmetry than the starting material, the symmetry must necessarily be broken during the dynamics calculation before the conical intersection is reached. The breaking of each mode will occur either due to the accumulation of small numerical inaccuracies or if a momentum is given which forces particular modes to break symmetry.&lt;br /&gt;
Mctdh90.31dv uses frequency-mass-weighted normal coordinates to describe molecular geometries. Each frequency-mass-weighted coordinate corresponds to a vibration of the molecule (and there are therefore 3N-6 coordinates). Displacements of atoms are described by a (or a combination of) vibration(s). Each vibration can be displaced in one of two directions: positive or negative. The 3N-6 frequency-mass-weighted coordinates can be classified by symmetry. Whether a particular symmetry mode is broken in the positive or negative direction will be equally likely if no initial momentum is given. Thus for each mode that is broken during a simulation the symmetry may break in the positive direction or the negative direction. There will be 2&amp;lt;sup&amp;gt;x&amp;lt;/sup&amp;gt; possible conical intersections corresponding to a particular starting geometry, where x is the number of modes that must be broken going from starting material to conical intersection.&lt;br /&gt;
&lt;br /&gt;
Additionally, care must be taken over atom labeling. It must be possible to transform the starting material into the conical intersection without permuting atom labels. If the conical intersection has been optimised by following the MEP downhill from the starting material this is not likely to be a problem. However, bear this in mind if drawing the conical intersection by hand.  &lt;br /&gt;
&lt;br /&gt;
Example: Butadiene&lt;br /&gt;
&lt;br /&gt;
Cis-butadiene belongs to the C&amp;lt;sub&amp;gt;2h&amp;lt;/sub&amp;gt; point group and its 3N-6 frequency-mass-weighted coordinates can be classified as A&amp;lt;sub&amp;gt;g&amp;lt;/sub&amp;gt;, B&amp;lt;sub&amp;gt;g&amp;lt;/sub&amp;gt;, A&amp;lt;sub&amp;gt;u&amp;lt;/sub&amp;gt; or B&amp;lt;sub&amp;gt;u&amp;lt;/sub&amp;gt; (see the C&amp;lt;sub&amp;gt;2h&amp;lt;/sub&amp;gt; character table and  GAUSSIAN frequency output). The S&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;/S&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt; conical intersection has no symmetry. Thus there are four symmetry modes that must be broken going from starting material to conical intersection. There are sixteen (2&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;) equivalent conical intersections that could be specified in coin.log, corresponding to all possible ways of distorting the starting geometry into the conical intersection geometry. The sixteen conical intersections correspond to: two structures resulting from disrotatory motion in one direction followed by out-of-plane twisting (and their enantiomers); two structures resulting from disrotatory motion in the other direction followed by out-of-plane twisting (and their enantiomers); two structures resulting from conrotatory motion in one direction followed by out-of-plane twisting (and their enantiomers); and  two structures resulting from conrotatory motion in the other direction followed by out-of-plane twisting (and their enantiomers). Each of the sixteen conical intersections will have a different arrangement of atomic labels but all can be reached by distorting the starting geometry.&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Creating the Directories&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* First of all, create a folder in which to save the calculations in your $HOME and $WORK directories. Create a directory in $HOME, and an identical directory in $WORK that has the same path. Keep pathlengths as short as possible (if the total path becomes too long the dynamics code will not run). For simplicity, in this case, we are going to assume that this directory is named &#039;&#039;buta&#039;&#039; (for butadiene).&lt;br /&gt;
&lt;br /&gt;
     mkdir buta&lt;br /&gt;
&lt;br /&gt;
* Create a subdirectory called &#039;&#039;&#039;dd_data&#039;&#039;&#039; in the new directory in $WORK.  Thus you should start with:&lt;br /&gt;
&lt;br /&gt;
    /home/$USER/buta&lt;br /&gt;
    /work/$USER/buta/dd_data&lt;br /&gt;
&lt;br /&gt;
* Important Note: it is essential to have the same path in both directories, $HOME and $WORK. Do not change the path-names within the HOME/WORK directories. If you re-name or move any subdirectory in your, for example HOME directory, you have to be consistent and make the same changes in the $WORK directory.&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Gaussian Output to be Used as Input for the Dynamics Program&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* Populate the new directory /work/$USER/buta/dd_data with four files which must be named: &#039;&#039;&#039;coin.log&#039;&#039;&#039;; &#039;&#039;&#039;start.fchk&#039;&#039;&#039;; &#039;&#039;&#039;start.log&#039;&#039;&#039;; and &#039;&#039;&#039;template.dat&#039;&#039;&#039;.These files are required in order to run any dynamics simulation, they are the basis that the script dd_generator (see the following section) will use to create the necessary files for running MCTDH (DD-vMCG).  You may also create a file named &amp;quot;&#039;momentum.dat&amp;quot;&#039; if you wish to give a momentum to the wavepacket(s) (this is optional and may be created later instead). &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;coin.log&#039;&#039;&#039; is the logfile resulting from the optimisation of the conical intersection. NB The MCTDH (DD-vMCG) program will rotate the conical intersection before starting the dynamics. To do this it must be provided with three angles which describe the appropriate rotation. There is an Excel spreadsheet available to calculate these angles (see the section entitled &amp;quot;Rotating the Conical Intersection&amp;quot;). NB the structure in coin.log need not necessarily be a true conical intersection: this point is only used for performing the diabatisation. Thus the diabatisation will be exact at this point and will become more approximate the further you are from it (on the PES). If you wish to use a point that is not a conical intersection, simply run a conical intersection optimisation (with only a single step) on the desired geometry. This will create a file with the same layout as a conical intersection optimisation output file (mctdh looks for certain things in this file so if some other type of .log file were used instead, it might not contain the required information). NB the final conical intersection log file must only contain one geometry (otherwise the dynamics program will not know which geometry to use). IS THIS STATEMENT TRUE FOR THIS VERSION??&lt;br /&gt;
&lt;br /&gt;
[[Media:coin.log]]&lt;br /&gt;
&lt;br /&gt;
(Insert a link here to section &amp;quot;Rotating the Conical Intersection&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;start.fchk&#039;&#039;&#039; is the formatted checkpoint file from the high precision vibrational modes of the ground state with state averaged orbitals (with atom types rather than numbers) (Part A, 6)&lt;br /&gt;
&lt;br /&gt;
[[Media:start.fchk]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;start.log&#039;&#039;&#039; is the log file from the high precision vibrational modes of the ground state with state averaged orbitals (with atom types rather than numbers) (Part A, 6)&lt;br /&gt;
&lt;br /&gt;
[[Media:start.log]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;template.dat&#039;&#039;&#039; is a template for the creation of GAUSSIAN input files by the MCTDH (DD-vMCG) program. It contains all the mutual keywords of the GAUSSIAN calculations which will be run on-the-fly by MCTDH (DD-vMCG). It also contains other information relating to the GAUSSIAN calculations such as memory requirements.&lt;br /&gt;
 &lt;br /&gt;
[[Media:template.dat]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;momentum.dat&#039;&#039;&#039; is a file containing a list of values to be used as vectors to indicate the momentum to be given to a particular (set of) wavepacket(s). The vectors must be listed in the order of the frequency-mass-weighted normal coordinates specified in the Excel spreadsheet. They give the magnitude of the momentum to be given along each of these frequency-mass-weighted normal coordinates. N.B. The signs of the values here are important!&lt;br /&gt;
 &lt;br /&gt;
[[Media:momentum.dat]]&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;The Generator&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* The &amp;quot;generator&amp;quot; script uses the GAUSSIAN output files (above) along with other information supplied by the user to create input files for MCTDH (DD-vMCG).&lt;br /&gt;
&lt;br /&gt;
* Navigate to /home/$USER/buta and run the generator by typing:&lt;br /&gt;
&lt;br /&gt;
     dd_generator&lt;br /&gt;
&lt;br /&gt;
for the HPC Cluster, or &lt;br /&gt;
&lt;br /&gt;
     dd_generator_MAC&lt;br /&gt;
&lt;br /&gt;
for a MAC OS X system&lt;br /&gt;
&lt;br /&gt;
* Typing dd_generator will run the script automatically. After installing the MCTDH (DD-vMCG) package this command has been added to your list of executable commands. &lt;br /&gt;
&lt;br /&gt;
     ********************************************************************************&lt;br /&gt;
     ********************    -------  DD GENERATOR  --------    *****************&lt;br /&gt;
     ********************************************************************************&lt;br /&gt;
&lt;br /&gt;
* The generator will ask a series of questions and will use the answers provided to prepare the input files for the dynamics program. The questions it asks are listed below along with answers for a trial run on butadiene.&lt;br /&gt;
&lt;br /&gt;
==== List of questions asked by dd_generator====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;blockquote style=&amp;quot;background: white; border: 1px solid black; padding: 1em;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Question&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; &#039;&#039;&#039;Answer for this tutorial&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; &#039;&#039;&#039;Explanation&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Which version of GAUSSIAN should we use? (gdv|g03)&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; g03 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;How many shared-memory processors should we use? (1|2|4|8)&lt;br /&gt;
N.B.: (ncpus=1) serial or (ncpus=2|4|8) parallel (omp) version of MCTDH launched as batch job&lt;br /&gt;
and launching monoprocessor GAUSSIAN interactive jobs (nprocshared=1 or no specification)&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 1 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the name of the molecule?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; butadiene &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; The first four letters will be used to name the new files that the generator is creating &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the number of atoms?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 10 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;The number of nuclear degrees of freedom is 24.&lt;br /&gt;
Do you want to reduce the dimensionality? (y|n)&lt;br /&gt;
(N.B.: this can be used also for re-ordering the coordinates)&lt;br /&gt;
&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; n &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the number of nuclear Gaussian functions?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 1 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt; 1 means 1 gaussian on state 1 and 1 gaussian on state 2. This is the &amp;quot;single-set&amp;quot; implementation of MCTDH (DD-vMCG) therefore the gaussian wavepacket on state 1 is the same as the gaussian wavepacket on state 2.&amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;&#039;What is the final propagation time (in fs)?&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 200 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the propagation time step (in fs)?&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 0.1 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the number of electronic states? (1|2)&#039;&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 2 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the highest electronic root?&#039;&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 2 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;From which electronic state should the wavepacket start? (2|1)&#039;&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 2 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Will there be an initial momentum given to the wavepacket? (y|n)&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; y &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Do you want to add a reference label to the name of the case? (y|n)&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; y &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Please type your text:&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; trial &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;This question is only asked if the answer to the previous question was yes.  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What will be the status of the database? (rdwr|rd|wr|none)&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; none &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; Choose rd for read, wr for write etc. In this case we are not going to use the database, but if it was used (rd or rdwr is specified) the script would ask the user to specify the threshold below which the database values will be used (%). In this case the value none is chosen so this question is not asked.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Please type the value of the maximum-difference criterion (in %):&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 1 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;If 1 is specified, the database value will be used if the geometry is within 1% of the new geometry being calculated&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;&amp;gt;&amp;gt; Manual rotation (using Excel spreadsheet) &amp;lt;&amp;lt;&lt;br /&gt;
   Please type the values of the three Euler angles (in deg)&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 176.543006&lt;br /&gt;
185.772905&lt;br /&gt;
4.538147 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;From the spreadsheet [[Media:spreadsheet.xls]]&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;The generator will now tell you that it has read the files start.fchk from the folder /work/dm107/dyn/dd_data/ and written the file start.chk.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Read formatted file /work/$USER/buta/dd_data/start.fchk&lt;br /&gt;
 Write checkpoint file /work/$USER/buta/dd_data/start.chk&lt;br /&gt;
using /apps/gaussian/g03_e01/g03/unfchk&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Do you want to read the direction of the initial momentum from the existing file in /work/$USER/buta/dd_data? (y|n)&lt;br /&gt;
(you still have time to change it now, before answering)&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; y &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;This question is only asked if the answer to the question &amp;quot;Will there be an initial momentum given to the wavepacket?&amp;quot; was yes.  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Please type the value of the excess kinetic energy (in eV) for calculating the magnitude:&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 1 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Files created by the generator&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* The generator will now tell you that it has read the files start.log, coin.log and momentum.dat (if a momentum has been specified) from the folder /work/dm107/dyn/dd_data/:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
   about to read parameters...&lt;br /&gt;
   ... parameters just read&lt;br /&gt;
   about to read file /work/dm107/dyn_90dev/dd_data/start.log                   &lt;br /&gt;
                                                               ...&lt;br /&gt;
   ... file /work/dm107/dyn_90dev/dd_data/start.log                             &lt;br /&gt;
                                                      read successfully&lt;br /&gt;
   about to read file /work/dm107/dyn_90dev/dd_data/coin.log                    &lt;br /&gt;
                                                               ...&lt;br /&gt;
 *********************************************************&lt;br /&gt;
 Mass-weighted displacement from start to coin:&lt;br /&gt;
    old total norm: 22.070387&lt;br /&gt;
    new total norm:  4.669035&lt;br /&gt;
  vibrational part:  4.669035&lt;br /&gt;
   rotational part:  0.000000&lt;br /&gt;
 *********************************************************&lt;br /&gt;
   ... file /work/dm107/dyn_90dev/dd_data/coin.log                             &lt;br /&gt;
                                                      read successfully&lt;br /&gt;
   about to read file /work/dm107/dyn_90dev/dd_data/momentum.dat                      &lt;br /&gt;
                                                               ...&lt;br /&gt;
 *********************************************************&lt;br /&gt;
 Using the momentum given in momentum.dat would have given&lt;br /&gt;
an excess kinetic energy (in eV) of: 15.269&lt;br /&gt;
 For your information, the momentum has been multiplied&lt;br /&gt;
by a factor of:  0.572&lt;br /&gt;
 *********************************************************&lt;br /&gt;
  &lt;br /&gt;
   ... file /work/dm107/dyn_90dev/dd_data/momentum.dat                                &lt;br /&gt;
                                                      read successfully&lt;br /&gt;
&amp;lt;/pre&amp;gt; &lt;br /&gt;
&lt;br /&gt;
and that the extraction of data and the creation of a summary file were done successfully. If the Mass-weighted displacement from start to coin appears as NaN it may be because the start.log contains atom numbers rather than atom types. You will need to redo the freq=hpmodes job with atom types.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Data extracted successfully&lt;br /&gt;
The summary of this file generation is in:&lt;br /&gt;
-rw-r--r--  1 dm107 hpc-users 3070 Dec  2 17:06 /home/dm107/dyn_90dev/but1dd1o.txt&lt;br /&gt;
 &lt;br /&gt;
Do not forget you still can add a momentum, change the integrator, change convergence criteria for GAUSSIAN and MCTDH...&lt;br /&gt;
 &lt;br /&gt;
Do not forget to check the order of the atoms of the conical intersection geometry in /work/dm107/dyn_90dev/dd_data/coin.log&lt;br /&gt;
 &lt;br /&gt;
Now go to your jobscript file and give values to the memory and walltime.&lt;br /&gt;
 &lt;br /&gt;
Good luck!&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* The dd_generator script has generated four files in the same directory (/home/$USER/buta):&lt;br /&gt;
&lt;br /&gt;
# but1dd1p_trial.inp  &lt;br /&gt;
# but1dd1p_trial.job  &lt;br /&gt;
# but1dd1p_trial.txt  &lt;br /&gt;
# but1dd_none.op&lt;br /&gt;
&lt;br /&gt;
(Link to a more detailed explanation of this files)&lt;br /&gt;
&lt;br /&gt;
* The script has also created some files and directories in /work/$USER/buta where the MCTDH (DD-vMCG) and GAUSSIAN calculations will be stored:&lt;br /&gt;
&lt;br /&gt;
1) Directories:&lt;br /&gt;
&lt;br /&gt;
* butadd1p_trial&lt;br /&gt;
* butadd1p_trial/dd_data&lt;br /&gt;
&lt;br /&gt;
2) Files (in butadd1o_trial/dd_data):&lt;br /&gt;
&lt;br /&gt;
# refdb.dat &lt;br /&gt;
# start.chk  &lt;br /&gt;
# template.dat&lt;br /&gt;
# forward.dat&lt;br /&gt;
# backward.dat&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Modifications to be made to the files before running the dynamics&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* In the .job file in /home/$USER/buta specify the memory and walltime if you are in the HPC Cluster.&lt;br /&gt;
&lt;br /&gt;
* When running a development version of GAUSSIAN (gdvg03 or gdvg01), copy the start.chk file into the folder /work/$USER/dyn_90dev/but1dd1p_trial/dd_data. The unformatted checkpoint file from start.fchk that dd_generator has created is corrupted (due to a bug in formchk in gdvg01).&lt;br /&gt;
&lt;br /&gt;
====Starting from a point other than the Franck-Condon point====&lt;br /&gt;
&lt;br /&gt;
When the molecule is highly symmetric and there is more than one equivalent conical intersection (see above) it may be necessary to direct the wavepacket towards the particular conical intersection described in coin.log. The easiest way to do this is to use an initial momentum but it can also be achieved by distorting the geometry of the starting structure slightly towards the conical intersection (i.e. breaking the symmetry in the appropriate direction(s)).&lt;br /&gt;
&lt;br /&gt;
Define the new starting geometry in frequency-mass-weighted normal coordinates (this can be done using the Excel spreadsheet). One option for selecting the new geometry is to use a fraction of the displacement from the FC point to the conical intersection. &lt;br /&gt;
&lt;br /&gt;
After running dd_generator in the normal way, replace the default FC geometry in the .inp file with the new geometry. This geometry (frequency-mass-weighted-coordinates of the centre of the wavepacket) forms the fourth column in the section entitled INIT_WF-SECTION (in .inp).&lt;br /&gt;
&lt;br /&gt;
If the new geometry is very different from the FC geometry, run a single-point state-averaged-CAS calculation (start from RHF, look at the MOs, alter if needed, and check the final active MOs) and call the resulting .chk file start.chk. Replace the start.chk that would have been used ($WORK/buta/but1dd1p_trial/dd_data/start.chk) with this new start.fchk. If the distorted geometry is close enough to the FC geometry it may not be necessary to generate a new start.chk. (When the distortion is large there is a risk of breaking the active space from FC to the new point. Creating a new start.chk is just a way of making sure the starting active space is OK at the new point.) If you are creating a new start.fchk, run the solver on that geometry (relative to the original starting geometry) in the Excel spreadsheet. Create the new start.chk using the geometry in the orange box (so that it is in the same orientation as the molecule in start.log).&lt;br /&gt;
&lt;br /&gt;
N.B. There is no need to replace start.log even when start.fchk is replaced.&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Running the dynamics&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
* Navigate to /home/$USER/buta. Queue the job file. In this case, type:&lt;br /&gt;
&lt;br /&gt;
     qsub butadd1p_trial.job&lt;br /&gt;
&lt;br /&gt;
for MAC OS X users the shell command is already written in butadd1p_trial.job&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;The Database (DB)&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
The DB is made of four binary files:&lt;br /&gt;
geo.db&lt;br /&gt;
pes.db&lt;br /&gt;
gra.db&lt;br /&gt;
hes.db&lt;br /&gt;
They can be used in place of GAUSSIAN calculations to save some&lt;br /&gt;
computation time when you ask for DBrd or DBrdwr.&lt;br /&gt;
&lt;br /&gt;
Each set of geometry, energy, gradient and Hessian (the latter&lt;br /&gt;
three quantities having been calculated by GAUSSIAN for the two&lt;br /&gt;
adiabatic electronic states) will be called a DB record and&lt;br /&gt;
assigned a record number defining the order of occurrence in the DB.&lt;br /&gt;
If you run a calculation where the DB is to be read, in the *.res&lt;br /&gt;
file that you obtain after the calculation is done (file that&lt;br /&gt;
actually is a redirection of the standard output) you will see the&lt;br /&gt;
number of records in the DB as it grows.&lt;br /&gt;
Example (formaldehyde, multi-set 1+1):&lt;br /&gt;
          53&lt;br /&gt;
 s=  1 e=  1 t=   0.000 V1=   0.001 V2=   4.533 H11=   0.001 H22=&lt;br /&gt;
 4.533 H12=   0.000 q=   0.0000    0.0000    0.0000    0.0000&lt;br /&gt;
 0.0000    0.0000&lt;br /&gt;
          53&lt;br /&gt;
 s=  2 e=  1 t=   0.000 V1=   0.001 V2=   4.533 H11=   0.001 H22=&lt;br /&gt;
 4.533 H12=   0.000 q=   0.0000    0.0000    0.0000    0.0000&lt;br /&gt;
 0.0000    0.0000&lt;br /&gt;
          53&lt;br /&gt;
 s=  1 e=  1 t=   0.500 V1=   0.197 V2=   4.701 H11=   0.211 H22=&lt;br /&gt;
 4.687 H12=   0.251 q=  -0.6258   -0.6146    0.6136    0.6049&lt;br /&gt;
 -0.5520   -0.0616&lt;br /&gt;
          53&lt;br /&gt;
 s=  2 e=  1 t=   0.500 V1=   0.000 V2=   4.533 H11=   0.000 H22=&lt;br /&gt;
 4.533 H12=  -0.001 q=   0.0009    0.0009    0.0093   -0.0245&lt;br /&gt;
 -0.0066    0.0001&lt;br /&gt;
          53&lt;br /&gt;
 &lt;br /&gt;
 ERROR in subroutine Distdb :&lt;br /&gt;
 Redundant records in Data Base:   18   19&lt;br /&gt;
 s=  1 e=  1 t=   1.000 V1=   0.469 V2=   4.455 H11=   0.479 H22=&lt;br /&gt;
 4.445 H12=   0.200 q=  -0.4640   -0.5641    1.2594   -0.5871&lt;br /&gt;
 -1.0864   -0.1120&lt;br /&gt;
          53&lt;br /&gt;
 s=  2 e=  1 t=   1.000 V1=   0.001 V2=   4.473 H11=   0.001 H22=&lt;br /&gt;
 4.473 H12=  -0.002 q=   0.0003    0.0004    0.0404   -0.0944&lt;br /&gt;
 -0.0292    0.0001&lt;br /&gt;
          53&lt;br /&gt;
 s=  1 e=  1 t=   1.500 V1=   0.113 V2=   4.543 H11=   0.120 H22=&lt;br /&gt;
 4.536 H12=   0.170 q=  -0.3994   -0.4377    0.5444    0.2057&lt;br /&gt;
 -0.5149   -0.0638&lt;br /&gt;
          53&lt;br /&gt;
 s=  2 e=  1 t=   1.500 V1=   0.013 V2=   4.390 H11=   0.013 H22=&lt;br /&gt;
 4.390 H12=  -0.005 q=   0.0009    0.0010    0.0897   -0.2104&lt;br /&gt;
 -0.0634    0.0002&lt;br /&gt;
          53&lt;br /&gt;
 s=  1 e=  1 t=   2.000 V1=   0.068 V2=   4.431 H11=   0.071 H22=&lt;br /&gt;
 4.428 H12=   0.110 q=  -0.2751   -0.3274    0.4796   -0.0812&lt;br /&gt;
 -0.3880   -0.0605&lt;br /&gt;
          54&lt;br /&gt;
 s=  2 e=  1 t=   2.000 V1=   0.019 V2=   4.367 H11=   0.019 H22=&lt;br /&gt;
 4.367 H12=  -0.009 q=   0.0012    0.0013    0.1563   -0.3658&lt;br /&gt;
 -0.1058    0.0003&lt;br /&gt;
          54&lt;br /&gt;
 s=  1 e=  1 t=   2.500 V1=   0.064 V2=   4.273 H11=   0.065 H22=&lt;br /&gt;
 4.272 H12=  -0.064 q=   0.2559    0.0914    0.1691   -0.7218&lt;br /&gt;
 -0.1052   -0.0595&lt;br /&gt;
          55&lt;br /&gt;
 s=  2 e=  1 t=   2.500 V1=   0.070 V2=   4.258 H11=   0.070 H22=&lt;br /&gt;
 4.257 H12=  -0.013 q=   0.0013    0.0015    0.2384   -0.5572&lt;br /&gt;
 -0.1528    0.0004&lt;br /&gt;
&lt;br /&gt;
Here, we started with a DB of 53 records. It is large enough until&lt;br /&gt;
2 fs, where an additional record is produced, and so on.&lt;br /&gt;
The error message saying here that records 18 and 19 are identical&lt;br /&gt;
will not prevent the code from working. It is just here to remind you&lt;br /&gt;
that the DB is not clean in that it has redundant records.&lt;br /&gt;
This is to be prevented as the DB files might become large quite&lt;br /&gt;
rapidly and all records will be read at each update time (dd_update&lt;br /&gt;
= tout in the integrator section, tout = xxx fs in the run section&lt;br /&gt;
of the *.inp file) for each Gaussian function.&lt;br /&gt;
&lt;br /&gt;
Incidentally, when you want to analyse results written to a *.res&lt;br /&gt;
file, you need to look for lines starting with &amp;quot;s=&amp;quot; (other lines&lt;br /&gt;
are various messages and numbers of DB records).&lt;br /&gt;
The criterion for using the DB is to be seen as a maximum-allowed&lt;br /&gt;
relative difference&lt;br /&gt;
&lt;br /&gt;
So, it is up to you to clean the DB when you see this, and to keep&lt;br /&gt;
this in mind when you concatenate DBs that have branched in their&lt;br /&gt;
past (see more details below).&lt;br /&gt;
&lt;br /&gt;
Also, a given DB depends on the choice of a reference geometry in&lt;br /&gt;
Cartesian coordinates because geometries written to the DB files&lt;br /&gt;
will always be re-orientated with respect to this particular&lt;br /&gt;
geometry. The back and forth transformations are performed by MCTDH (DD-vMCG)&lt;br /&gt;
so you don&#039;t need not worry about this.&lt;br /&gt;
This geometry is written to refdb.dat. It is the starting geometry&lt;br /&gt;
that comes from start.log (the only difference being that it is&lt;br /&gt;
mass-centred).&lt;br /&gt;
As long as you do not change the starting geometry or the nature&lt;br /&gt;
of the electronic states, you can thus keep growing the DB of your&lt;br /&gt;
system.&lt;br /&gt;
&lt;br /&gt;
MANAGING THE DATA BASE&lt;br /&gt;
&lt;br /&gt;
A set of DB  programs can be found in XXXXX. Their roles are&lt;br /&gt;
explained below.&lt;br /&gt;
For now, the sources are in dd_utildev and dd_util.31dv and the&lt;br /&gt;
executables are in mctdh90dev/bin and mctdh90.31dv/bin, so you can&lt;br /&gt;
call them from anywhere, as long as DB files are there.&lt;br /&gt;
&lt;br /&gt;
1) countdb.out: returns the number of records of the current DB&lt;br /&gt;
2) cleandb.out: &amp;quot;brute-force&amp;quot; cleaning of the current DB. This&lt;br /&gt;
might be too long to be run interactively when the number of&lt;br /&gt;
records is too large, because each record needs to be compared to&lt;br /&gt;
each other record (e.g. a DB with ca. 3800 records will take a couple of minutes to clean interactively). If so, run in batch mode (ask me or Marta if you&lt;br /&gt;
have a doubt).&lt;br /&gt;
The cleaned files are:&lt;br /&gt;
geoclean.db&lt;br /&gt;
pesclean.db&lt;br /&gt;
graclean.db&lt;br /&gt;
hesclean.db&lt;br /&gt;
You need to rename them without &#039;clean&#039; for them to be used as a DB.&lt;br /&gt;
3) cutdb.out: allows you to cut out the beginning of a DB.&lt;br /&gt;
This is to be used in the following situation:&lt;br /&gt;
- You start from a mother DB, DB0, assumed to be clean, with N0&lt;br /&gt;
records.&lt;br /&gt;
- You want to use DB0 in two independent calculations. You&lt;br /&gt;
replicate DB0 to daughter DBs, DB1 and DB2.&lt;br /&gt;
- When these calculations are done, DB1 and DB2 have grown to N0+N1&lt;br /&gt;
and N0+N2 records, respectively.&lt;br /&gt;
- You want to concatenate them to create a new mother DB, DB3.&lt;br /&gt;
- DB1 and DB2 have their N0 first records the same. To avoid&lt;br /&gt;
redundant records, you need to cut N0 records from DB2 for example.&lt;br /&gt;
--&amp;gt; go to where DB2 is and use cleandb.out&lt;br /&gt;
The resulting files are:&lt;br /&gt;
geocut.db&lt;br /&gt;
pescut.db&lt;br /&gt;
gracut.db&lt;br /&gt;
hescut.db&lt;br /&gt;
these have N1 records.&lt;br /&gt;
--&amp;gt; rename DB1, for instance geo.db1 etc., and concatenate the files:&lt;br /&gt;
cat geo.db1 geoclean.db &amp;gt; geo.db&lt;br /&gt;
etc.&lt;br /&gt;
- Your new mother DB, DB3, should now have N0+N1+N2 distinct records.&lt;br /&gt;
4) deldb.out: allows you to remove one selected record (for&lt;br /&gt;
instance if corrupted) from the DB if you know its number.&lt;br /&gt;
The resulting files are:&lt;br /&gt;
geodel.db&lt;br /&gt;
pesdel.db&lt;br /&gt;
gradel.db&lt;br /&gt;
hesdel.db&lt;br /&gt;
You need to rename them without &#039;del&#039; for them to be used as a DB.&lt;br /&gt;
5) seedb.out: allows you extract one selected record from the&lt;br /&gt;
binary files for reading it (the record is not removed from the DB).&lt;br /&gt;
The resulting file can be read as a text file (ascii) and is:&lt;br /&gt;
see.db&lt;br /&gt;
&lt;br /&gt;
==&#039;&#039;&#039;Restarting dynamics jobs&#039;&#039;&#039;==&lt;br /&gt;
&lt;br /&gt;
The examples below make use of the directory and filenames in the examples above.&lt;br /&gt;
&lt;br /&gt;
A dynamics run can be restarted if the job was terminated before completion (e.g if it ran out of time or failed because of convergence problems) or if the user wishes to continue the job for a longer time period than had originally been specified. The program will continue writing the same output file but will overwrite the .res file. Thus the .res file should be saved under a different name to prevent loss of the data calculated in the original run. The .res is not written until the job stops so this can be done after the restart.&lt;br /&gt;
&lt;br /&gt;
*To increase the final propagation time&lt;br /&gt;
&lt;br /&gt;
Retrieve the .inp file (in $HOME/buta) and change &#039;&#039;propagation&#039;&#039; to &#039;&#039;continuation&#039;&#039; in the section entitled RUN-SECTION. Then change the final time &#039;&#039;tfinal&#039;&#039; to a larger value. (NB this new value should include the time already done).&lt;br /&gt;
&lt;br /&gt;
Re-queue the job.&lt;br /&gt;
&lt;br /&gt;
*To increase the number of scf cycles (the most common reason for convergence failure)&lt;br /&gt;
&lt;br /&gt;
Edit the template.dat file in $WORK/buta/but1dd1p_trial/dd_data. Insert scf=(maxcycle=128) on the keyword line (for example). It is important that you change the template.dat file in the but1dd1p_trial/dd_data folder that was created by dd_generator (rather than the one created by the user in $WORK/buta/dd_data) because the original $WORK/buta/dd_data/template.dat file is only read by dd_generator and used to create the job-specific file in the job folder. (Of course if you wish all future jobs run in $WORK/buta  to have increased scf cycles, change the other template.dat file in $WORK/buta/dd_data too.)&lt;br /&gt;
&lt;br /&gt;
Re-queue the job.&lt;br /&gt;
&lt;br /&gt;
*To increase the run-time so that a job will finish&lt;br /&gt;
&lt;br /&gt;
Edit the walltime in the .job file in the $HOME directory and re-queue the job.&lt;br /&gt;
&lt;br /&gt;
=&#039;&#039;&#039;Analysis of the results&#039;&#039;&#039;=&lt;br /&gt;
&lt;br /&gt;
The most important files are the output and .res files.&lt;br /&gt;
&lt;br /&gt;
=== Detailed information about files and directories ===&lt;br /&gt;
&lt;br /&gt;
*output&lt;br /&gt;
&lt;br /&gt;
The output contains some standard results:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Time&#039;&#039;&#039;: time in fs.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;CPU&#039;&#039;&#039;:  CPU time in s.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Norm&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;E-tot&#039;&#039;&#039;: the total energy in eV. This value should be conserved (i.e by the end of the run the E-tot value should not be too different  from what it was a time=0).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;E-corr&#039;&#039;&#039;: correlated Hamiltonian energy&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Delta-E&#039;&#039;&#039;: diference between E-tot at time t=0 and the current time t&lt;br /&gt;
&lt;br /&gt;
Note: In a multi-packet run, i.e. when npacket &amp;gt; 1, the total energy and the norm of the wavefunction, as given in the &amp;quot;total&amp;quot; part, are averaged over the packets.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;population&#039;&#039;&#039; : diabatic populations of state 1 and state 2 (in that order) at the current time t&lt;br /&gt;
&lt;br /&gt;
For every mode:	&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt; q &amp;gt;&#039;&#039;&#039;: position expectation value&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;dq&amp;gt;&#039;&#039;&#039;: standard deviation Sqrt[&amp;lt; q&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt; &amp;gt; - &amp;lt; q &amp;gt;&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt; p &amp;gt;&#039;&#039;&#039; : momentum expectation value&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;dq&amp;gt;&#039;&#039;&#039;: standard deviation Sqrt[&amp;lt; p&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt; &amp;gt; - &amp;lt; p &amp;gt;&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*.res&lt;br /&gt;
&lt;br /&gt;
This file contains the energy of each state (diabatic and adiabatic) at each timestep for each gaussian function:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;s&#039;&#039;&#039; is a redundant value in mctdh90.31dv. It is only meaningful in multi-set implementations of mctdh (where there are double the number of gaussian functions than specified: one for each state). (It indicates whether the gaussian function in question is on the lower (1) or upper (2) state. (In the single set implementation, the gaussian functions on each state are identical)).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;e&#039;&#039;&#039; is a label given to each gaussian function&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;t&#039;&#039;&#039; is the current time in fs&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;V1&#039;&#039;&#039; is the energy of the lower adiabatic state at time t&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;V2&#039;&#039;&#039; is the energy of the upper adiabatic state at time t&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;H11&#039;&#039;&#039; is the energy of the lower diabatic state at time t&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;H22&#039;&#039;&#039; is the energy of the upper diabatic state at time t&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;H12&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;q&#039;&#039;&#039; is the list of frequency mass-weighted normal coordinates that describe the geometry at time t&lt;br /&gt;
&lt;br /&gt;
The end of the file will read something like: &lt;br /&gt;
&lt;br /&gt;
     Propagation was successful.&lt;br /&gt;
     &lt;br /&gt;
     Total time     [h:m:s] :    0 :  1 : 21.60&lt;br /&gt;
     &lt;br /&gt;
      ---------------------------------------------------------------------------&lt;br /&gt;
      ------ Host: &amp;quot;cx1-3-2-4&amp;quot; ----------Sat Jan 17 06:50:20 2009&lt;br /&gt;
&lt;br /&gt;
The other most common result is that the calculation aborted because of scf convergence problems in the CASSCF GAUSSIAN calculations. In this case the ouput file will break off after the last complete step and the end of the .res file will read something like:&lt;br /&gt;
     ERROR in subroutine Getddpes :&lt;br /&gt;
     CAS convergence failed for gwp on state:    1    1&lt;br /&gt;
&lt;br /&gt;
If the job terminates due to scf convergence problems, it may be possible to restart it after modifying the .inp and/or .job and/or template.dat files.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*log&lt;br /&gt;
&lt;br /&gt;
This file contains information such as the source code version, type of calculation performed, integrator used, numerical parameters, which data files are opened, any error messages, and much more. The information provided by the log file can be very helpful, in particular when searching for errors. One should always carefully inspect the log file.&lt;br /&gt;
&lt;br /&gt;
* dvr&lt;br /&gt;
&lt;br /&gt;
* oper&lt;br /&gt;
&lt;br /&gt;
*ddpeserr&lt;br /&gt;
&lt;br /&gt;
*input&lt;br /&gt;
&lt;br /&gt;
*op.log&lt;br /&gt;
&lt;br /&gt;
*psi&lt;br /&gt;
&lt;br /&gt;
*check&lt;br /&gt;
&lt;br /&gt;
*auto&lt;br /&gt;
&lt;br /&gt;
*ddpes&lt;br /&gt;
&lt;br /&gt;
*restart&lt;br /&gt;
&lt;br /&gt;
*stop&lt;br /&gt;
&lt;br /&gt;
*speed&lt;br /&gt;
&lt;br /&gt;
*timing&lt;br /&gt;
&lt;br /&gt;
*update&lt;br /&gt;
&lt;br /&gt;
=== Example: butadiene ===&lt;br /&gt;
&lt;br /&gt;
*Examine the end of the output file to check that the calculation ran to completion.&lt;br /&gt;
     &lt;br /&gt;
*Plot the energy of the diabatic and adiabatic states over time (.res file: V1, V2, H11 and H22). Calculate V2-V1 and H22-H11 and plot these also. H12 may also be plotted on the same graph.&lt;br /&gt;
[[Image:EnergyofStates.png]]&lt;br /&gt;
&lt;br /&gt;
The diabatic states cross at 176.2 fs and the adiabatic states cross at 174.5 fs. At a conical intersection, the value V2-V1 will become negative and the H22-H11 will be a minimum (&amp;lt;1eV). Ideally these crossings will occur at the same time. If the diabatisation has worked well, after V2-V1 becomes negative, V2-V1 and H22-H11 will become mirror images (i.e. the diabatic and adiabatic states follow each other). &lt;br /&gt;
&lt;br /&gt;
*Plot the value of the total energy over time (.res file: E-tot). Verify that the Delta-E value is not too large (compare with the total energy (E-tot) at time 0).&lt;br /&gt;
[[Image:TotalEnergy.png]]&lt;br /&gt;
&lt;br /&gt;
*Plot the population of one of the (diabatic) states over time (.res file: population).&lt;br /&gt;
[[Image:Population.png]]&lt;br /&gt;
&lt;br /&gt;
At the conical intersection the population transfer is large. In this case the job has been terminated after 200 fs. Usually the calculation should be continued until the populations stabilise (which obviously has not happened in this case).&lt;br /&gt;
&lt;br /&gt;
=== Making a Movie ===&lt;br /&gt;
&lt;br /&gt;
Navigate to /work/$USER/buta/but1dd1p_trial (the place where the .res file was written). Type:&lt;br /&gt;
 dd_movie.out&lt;br /&gt;
* The script will ask a series of questions and will use the answers provided to create a file that can be read into Molden or iMol.&lt;br /&gt;
&lt;br /&gt;
==== List of questions asked by dd_movie.out====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;blockquote style=&amp;quot;background: white; border: 1px solid black; padding: 1em;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Question&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; &#039;&#039;&#039;Answer for this tutorial&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; &#039;&#039;&#039;Explanation&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the number of atoms?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 10 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;What is the actual number of active coordinates?&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 24 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; In this case all coordinates were active (so there are 3N-6 where N is the number of atoms) &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Name of result file to read?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; but1dd1p_trial.res &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;Ensure that the forward.dat and backward.dat files are located in the current directory in the folder dd_data (they will have been written there automatically)&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Name of movie file to write?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; but1dd1p_trial.xyz &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; Choose any name .xyz &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Which electronic state (s=...)?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 1 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;Choose 1 (this question dates from the multi-set implementation of mctdh where the wavepackets on each state were different)  &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Which Gaussian function (e=...)?&#039;&#039;&#039; &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 1 &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;In this case we have only one wavepacket&amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;The script will now return the number of lines and the initial number of points&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
number of lines:        4684&lt;br /&gt;
initial number of points:        4674&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &#039;&#039;&#039;Maximum number of points you want?&#039;&#039;&#039;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt; 4674 &amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;If you wish to view the movie in Molden you must reduce the number of points to less than 100 (so choose 99 for maximum number of points). iMol can cope with any number of frames so choose the number printed by the script: this number will be reduced and the script will tell you how many points it has written. &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
writing frequency:           2&lt;br /&gt;
   final number of points:        2337&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The .xyz file is ready to be opened in Molden or iMol.&lt;br /&gt;
&lt;br /&gt;
= &#039;&#039;&#039;Current Known Bugs&#039;&#039;&#039; =&lt;br /&gt;
&lt;br /&gt;
Parallelisation:&lt;br /&gt;
&lt;br /&gt;
It is not possible to run calculations in parallel with version 90.31dv (reading the same template.dat file simultaneously by each processor is causing problems). In 90.35tmp this is ok. In 90.4X it will also be fixed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Total energy:&lt;br /&gt;
&lt;br /&gt;
1) The total energy is sometimes &amp;quot;artificially&amp;quot; increased by a lot. If so, try a different integrator or play around with the timestep (may need to get larger or smaller). Or try increasing scf convergence to 10&amp;lt;sup&amp;gt;-12&amp;lt;/sup&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
2) If Delta-E suddenly becomes too large, you can get the following message: &lt;br /&gt;
&amp;quot;ERROR in subroutine WRGAUSSIAN :&lt;br /&gt;
 Do not use $Swap:...$ metastring in file /.../template.dat&amp;quot;&lt;br /&gt;
Often, when getting this message, no more steps are added to the simulation, although the calculation seems to keep running (the integrator keeps trying and failing).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Using the database:&lt;br /&gt;
&lt;br /&gt;
1) Every record generated with mctdh90.31dev and several GWPs is corrupted, so, for now, when launching calculations with more that one wavepacket, use &amp;quot;formdd_none.op&amp;quot; (i.e. do not read nor write the database).&lt;br /&gt;
[For instance, when using dbrdwr and starting from a clean db, all newly generated records are added to the existing database, even if they are identical to records that were already written in the db.]  In 90.35tmp this is ok. In 90.4X it will also be fixed.&lt;br /&gt;
&lt;br /&gt;
2) Records obtained in calculations with one GWP should be OK, but this is still to be confirmed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Impossible case&amp;quot;:&lt;br /&gt;
&lt;br /&gt;
Error message that forces the calculation to stop. It seems to be associated with moving towards an &amp;quot;unexpected&amp;quot; geometry (e.g. a radical).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
State Averaging:&lt;br /&gt;
&lt;br /&gt;
To increase the threshold above which stateaveraging is turned off, increase the default value of 10 (to e.g. 50)  in the line &#039;&#039;ddregions&#039;&#039; in the OPERATOR-SECTION of the .inp file.&lt;br /&gt;
&lt;br /&gt;
= &#039;&#039;&#039;Questions and Modifications to be made to this wiki&#039;&#039;&#039; =&lt;br /&gt;
&lt;br /&gt;
*Why we would ever need to start the gwps from the lower state? To study GS rxns; chemiluminesence (eg glowworms).&lt;br /&gt;
*In terms of Delta-E, how much is too much? ca1eV but shape of E-tot vs time is important: discontiunities or v flat then steep increase are less reliable than smooth gradual increases.&lt;br /&gt;
*Benjamin: Note that Marta has noticed that for very strange geometries, you may receive an error message saying &amp;quot;impossible case&amp;quot;, which stops MCTDH. It is too complicated to explain here. I know where this happens in the code, and I should prevent this error to stop the code but I didn&#039;t have time to fix this. I&#039;ll do it soon.&lt;br /&gt;
*Need to edit/correct section on the DB.&lt;br /&gt;
*Is does unfchk in gdvg03 create corrupted fchk files? G03 is fine. we don&#039;t know about gdvg03 but we don&#039;t care because we probablly won&#039;t use it.&lt;br /&gt;
&lt;br /&gt;
=== [[Resgrp:comp-photo-dyn/mctdh90.56dv|back]] ===&lt;/div&gt;</summary>
		<author><name>Vs13</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/rotation&amp;diff=333935</id>
		<title>Resgrp:comp-photo-dyn/mctdh90.56dv Fulvene Tutorial/rotation</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/rotation&amp;diff=333935"/>
		<updated>2013-04-24T14:48:15Z</updated>

		<summary type="html">&lt;p&gt;Vs13: /* dd_rotation method */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Rotation of the Conical Intersection=&lt;br /&gt;
&lt;br /&gt;
Dynamics are performed in internal coordinates, so it is necessary to remove any translations or rotational components in the starting and conical intersection reference geometries. To this end it is necessary to perform a rotation/displacement of the conical intersection geometry. Although MCTDH (DD-vMCG) will do this automatically, the program needs to be told (via a question in the generator) by how much to rotate the conical intersection.&lt;br /&gt;
We will perform the rotation beforehand providing the {0,0,0} tuple to the program. This is done using the dd_rotation method.&lt;br /&gt;
&lt;br /&gt;
==dd_rotation method==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039;dd_rotation program only works with the output of gaussian development version gdvh01.&lt;br /&gt;
&lt;br /&gt;
Create a new directory for the rotation and populate it with two files, which must be named &#039;&#039;&#039;start.log&#039;&#039;&#039; and &#039;&#039;&#039;coin.dat&#039;&#039;&#039;, and the dd_rotation program.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;start.log&#039;&#039;&#039; is the gaussian output file from the high precision vibrational modes of the ground state with state averaged orbitals (with atom types rather than numbers)&lt;br /&gt;
&lt;br /&gt;
[[Media:Start.log]]&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;coin.dat&#039;&#039;&#039; is the conical intersection reference geometry in xyz format. (i.e. it is the last geometry printed out in [[Media:Fulv_ci.log]] )&lt;br /&gt;
&lt;br /&gt;
[[Media:Coin.dat]]&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;dd_rotation&#039;&#039;&#039; program, written by David, reads the &#039;&#039;start.log&#039;&#039; and &#039;&#039;coin.dat&#039;&#039; files and will output a file called &#039;&#039;coin.out&#039;&#039; which is a xyz with the rotated conical intersection geometry. The program also outputs to stdout the relevant rotation angles.&lt;br /&gt;
&lt;br /&gt;
[[Media:Dd_rotation_v2.x]] &lt;br /&gt;
&lt;br /&gt;
The rotated geometry should be visually checked for consistency against the starting geometry.&lt;br /&gt;
&lt;br /&gt;
Taking the rotated geometry (from coin.out) it is necessary to perform a new conical intersection optimization to obtain the orbitals and branching space coordinates.&lt;br /&gt;
(this time without the keyword opt=tight)&lt;br /&gt;
&lt;br /&gt;
[[Media:Coin.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Coin.log]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== [[Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial|back]] ===&lt;/div&gt;</summary>
		<author><name>Vs13</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/input&amp;diff=333934</id>
		<title>Resgrp:comp-photo-dyn/mctdh90.56dv Fulvene Tutorial/input</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/input&amp;diff=333934"/>
		<updated>2013-04-24T14:47:32Z</updated>

		<summary type="html">&lt;p&gt;Vs13: /* back */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Creating Input for Dynamics Calculations =&lt;br /&gt;
&lt;br /&gt;
== MCTDH (DD-vMCG) versions ==&lt;br /&gt;
&lt;br /&gt;
- Development versions: &lt;br /&gt;
&lt;br /&gt;
* mctdh90dv&lt;br /&gt;
* mctdh90.31dv&lt;br /&gt;
* mctdh90.56dv&lt;br /&gt;
&lt;br /&gt;
The inputs required for the dynamic calculation are an optimised ground state structure and an optimized conical intersection structure in the appropriate orientation. [These two structures are used in the diabatic transformation. They do not necessarily need to correspond to the Franck-Condon and to the minimum conical intersection geometries. However, these structures are usually good places to start and so most of this tutorial will assume that these are the references that have been chosen]. The ground state structure must have been optimized with state averaged orbitals. These orbitals must be &amp;quot;cleaned&amp;quot; and the high precision frequencies must have been calculated.&lt;br /&gt;
&lt;br /&gt;
* Development version ( mctdh90.??dv): The only inputs required for the dynamics calculation are an optimized ground state structure and an optimized conical intersection. The rotation will be &amp;quot;automatic&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
- The main objective of this tutorial is to learn how to run dynamics calculations, thus we will give you the optimised geometries in the appropriate rotation.&lt;br /&gt;
(A description of how to rotate a structure will follow in due course)&lt;br /&gt;
&lt;br /&gt;
== State Averaged Orbitals==&lt;br /&gt;
&lt;br /&gt;
State averaged orbitals are necessary in order to represent both ground and excited states at the same time in the space close to the conical intersection. The &#039;&#039;State Average&#039;&#039; algorithm allows the convergence of CASSCF when two or more states are close. A solution is found between the average of the involved orbitals if they were calculated independently for each state. At the Frank-Condon region, away from the intersection, this is not needed, but the code maintains this approximation over all the PES to avoid discontinuities.&lt;br /&gt;
&lt;br /&gt;
= Gaussian Calculations - CASSCF =&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note&#039;&#039;&#039;: to use the dd_rotation method (see details for this method in the next section [[Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/rotation|Rotation of the Conical Intersection]]) it is necessary to run all the calculations in this section with the gaussian development version gdvh01.&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;1. Generate a starting geometry.&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
First of all, we need a set of initial orbitals for the CASSCF calculation, which can be obtained from a simple restricted Hartree-Fock (RHF/STO-3G) optimisation. It is useful in systems with high symmetry to start with the molecule in the standard orientation and from a symmetrised geometry. This can be achieved by running a Gaussian calculation without the nosymm keyword and using the geometry returned by this calculation.&lt;br /&gt;
&lt;br /&gt;
* NB You should use the structures given in this tutorial because they are  oriented appropriately.&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_s_orient.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_s_orient.log]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;2. Identify the Orbitals Required for the CASSCF Calculation&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
Use the geometry from 1. Calculate the HF orbitals with a tight basis set e.g. STO-3G so that it is easier to identify the relevant orbitals for CASSCF.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;HF/STO-3G pop=full nosymm geom=check&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Nosymm is required because every time a calculation is run on the molecule with a different symmetry Gaussian reorients the molecule for that particular point group and will destroy the active space. Nosymm disables this feature.&lt;br /&gt;
* Pop=full prints out the orbitals.&lt;br /&gt;
* Inspect the orbitals. Select those required for the CASSCF. &lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hf.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hf.log]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hf.fchk]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;3. Identify the State Averaged Orbitals for the Ground State&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
An orbital inspection using any visualization software (e.g. GaussView) before performing any CASSCF calculation is essential to identify which orbitals make up the chosen active space. In some cases it may be necessary to use the &#039;&#039;&#039;guess=alter&#039;&#039;&#039; keyword to change the order of the orbitals to make sure the optimisation (see step 4) proceeds with the correct orbitals. Gaussian assumes that the electrons specified in a CASSCF calculation come from the highest occupied orbitals in the initial guess and then takes the remaining orbitals as the lowest virtuals of this guess. &lt;br /&gt;
&lt;br /&gt;
* In this example, the relevant orbitals are the six pi orbitals, which contain six electrons (so the calculation is 6,6). The six orbitals that form the pi molecular orbitals are 18, 20, 21,22, 23 and 24. Only orbital 18 is not included in the active space. Thus we need to swap orbitals 18 and 19 to get the correct active space. Use the keyword &#039;&#039;&#039;guess=alter&#039;&#039;&#039; .&lt;br /&gt;
&lt;br /&gt;
Use the orbitals chosen in 2. (i.e. use the .chk from 2.) Use the final geometry from 2.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;CAS(6,6,nroot=2,stateaverage)/STO-3G nosymm IOP(5/97=100,10/97=100) guess=(read,alter)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Here, the weights of each state must be listed explicitly. The weights are 0.5 and 0.5. These must be specified by typing 0.5 followed by 7 spaces then 0.5 (on the same line) (The Gaussian program reads 10 characters (inc spaces) for the first weight and another 10 characters for the second weight. Thus the 7 spaces plus the three characters &amp;quot;0&amp;quot;, &amp;quot;.&amp;quot; and &amp;quot;5&amp;quot; make up the first 10 characters before the second weight is read.)&lt;br /&gt;
&lt;br /&gt;
* The IOp (5/97=100,10/97=100) tells the program to switch the order of the two states. This is so that we calculate the ground state rather than the excited state. (Gaussian CASSCF calculations always perform optimisations on the highest state listed, so by switching the order we force optimisation of what is actually the lower state.)&lt;br /&gt;
* Nroot=2 specifies the &#039;&#039;first&#039;&#039; excited state so the orbitals will be averaged over the ground state and the first excited state.&lt;br /&gt;
&lt;br /&gt;
* Inspect the orbitals again after the calculation to check if the active space is correct.&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_orb_sa.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_orb_sa.log]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_orb_sa.fchk]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;4. Perform a CASSCF Optimisation on the Ground State with the State Averaged Orbitals&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
Use the orbitals chosen in 3. Use the .chk from 3.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;CAS(6,6,nroot=2)/STO-3G nosymm opt=conical pop=full IOP(10/10=700005) IOP(5/97=100,10/97=100) geom=check guess=read&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;N.B.&#039;&#039;&#039; This is not a conical intersection optimisation! However, the keyword opt=conical specifies automatically that the populations of the two states will each be 0.5. Thus there is no need to specify the populations manually.&lt;br /&gt;
* The initial &#039;7&#039; in IOp (10/10=700005) specifies that the calculation should be an optimisation to a minimum (rather than a conical intersection). The final &#039;5&#039; ensures that the orbital rotation derivative contributions from the CP-MC-SCF equations are included. (This is necessary and is usually the default. However, in some  version of Gaussian, the combination of &#039;&#039;&#039;opt&#039;&#039;&#039; and &#039;&#039;&#039;stateaverage&#039;&#039;&#039; excludes this).&lt;br /&gt;
* Stateaverage is the default for opt=conical.&lt;br /&gt;
* Nroot=2 is the default for opt=conical.&lt;br /&gt;
* Do not include the keyword &#039;&#039;&#039;freq&#039;&#039;&#039; in the optimisation. (This combination of IOps does not allow &#039;&#039;&#039;opt&#039;&#039;&#039; and &#039;&#039;&#039;freq&#039;&#039;&#039; to be keywords in the same job.)&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_cas.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_cas.log]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;5. &amp;quot;Clean&amp;quot; the Orbitals&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
In this case, all the orbitals in the active space are pure pi orbitals. Due to small numerical inaccuracies, the final orbitals may include small contributions from other (non-pi) orbitals. The aim of this step is to remove these contributions so that the active space consists (in this example) only of contributions from the C 2PY atomic orbitals. The six relevant orbitals are occupied orbitals 19, 20 and 21, and virtual orbitals 22, 23 and 24. In this example they are already clean. Verify this by inspection of the &amp;quot;Molecular Orbital Coefficients&amp;quot; in the population analysis. &lt;br /&gt;
&lt;br /&gt;
In other cases, multiple optimisations may be necessary to clean the orbitals:&lt;br /&gt;
&lt;br /&gt;
Open the file in GaussView, and Edit/Symmetrize. Use this symmetrised geometry as a starting geometry for another optimsation as in 4 (including the keyword &#039;&#039;&#039;nosymm&#039;&#039;&#039;). &lt;br /&gt;
Use the .chk from 4.&lt;br /&gt;
Re-run the optimisation exactly as in 4.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Ideally here we include the keyword &#039;&#039;&#039;opt=(maxstep=1)&#039;&#039;&#039;. This should ensure that the optimisation takes the smallest possible step: we already know that the geometry is very close to the minimum and we need to prevent any significant re-orientation that might occur if large steps are taken. However, this does not seem to work (at least with g03).&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Repeat until the orbitals are clean.&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;6. Calculate the (High Precision) Vibrational Modes for the Ground State &#039;&#039;with State Averaged Orbitals&#039;&#039;&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
Use the .chk and the geometry from 4 (from 5 if you reoptimised the structure in order to clean the orbitals). The geometry must be specified explicitly. (With this combination of IOPs, Gaussian extracts the wrong geometry from the .chk file if &#039;&#039;&#039;geom=checkpoint&#039;&#039;&#039; is specified.)&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;CAS(6,6,nroot=2)/STO-3G freq=hpmodes nosymm pop=full guess=read IOP(5/17=41000200,10/10=700007) IOP(5/97=100,10/97=100)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* IOp (5/17=41000200,10/10=700007) includes the CP-MC-SCF correction (as above) (for a frequency calculation) and specifies state averaged orbitals.&lt;br /&gt;
* Do not include the keyword &#039;&#039;&#039;stateaverage&#039;&#039;&#039; with &#039;&#039;&#039;freq&#039;&#039;&#039; (the current version of Gaussian does not support this).&lt;br /&gt;
* Freq=hpmodes tells Gaussian to print the vibrational modes to 5 decimal places.&lt;br /&gt;
* As before, the IOp (5/97=100,10/97=100) forces calculation of the ground state.&lt;br /&gt;
* Use atom labels rather than numbers (otherwise the dd_generator will not work (see later)).&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hpfreq.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hpfreq.log]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;7. Optimise the Conical Intersection&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
Now we have to locate the conical intersection. To do this, we can run an optimisation from the Frank-Condon point (orbitals and geometry are the same we obtained with the CASSCF calculation in 4.) following (one of) the negative frequency(ies).&lt;br /&gt;
Use the .chk from 4.  A conical intersection optimisation should now locate a conical intersection.&lt;br /&gt;
* Stateaverage is the default for opt=conical.&lt;br /&gt;
* Nroot=2 is the default for opt=conical.&lt;br /&gt;
* To use the the dd_rotation method described in the next section ([[Resgrp:comp-photo-dyn/mctdh90.56dv#Rotation of the Conical Intersection|Rotation of the Conical Intersection]]) it may be convenient to use tighter condition to the optimization of the conical intersection at this stage (i.e. to use the keyword &#039;&#039;&#039;opt=tight&#039;&#039;&#039;).&lt;br /&gt;
The rational of this hack is that after rotation a second conical intersection optimization needs to be perfomed to obtain orbitals and branching space coordinates for the rotated geometry. These quantities cannot be obtained from a single point calculation. In the second optimization the less strict optimization conditions are used such that no actual geometry change is performed.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;CAS(6,6,nroot=2)/STO-3G opt=(conical,tight) nosymm guess=read pop=full&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_ci.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_ci.log]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== [[Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial|back]] ===&lt;/div&gt;</summary>
		<author><name>Vs13</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/rotation&amp;diff=333933</id>
		<title>Resgrp:comp-photo-dyn/mctdh90.56dv Fulvene Tutorial/rotation</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/rotation&amp;diff=333933"/>
		<updated>2013-04-24T14:38:55Z</updated>

		<summary type="html">&lt;p&gt;Vs13: /* dd_rotation method */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Rotation of the Conical Intersection=&lt;br /&gt;
&lt;br /&gt;
Dynamics are performed in internal coordinates, so it is necessary to remove any translations or rotational components in the starting and conical intersection reference geometries. To this end it is necessary to perform a rotation/displacement of the conical intersection geometry. Although MCTDH (DD-vMCG) will do this automatically, the program needs to be told (via a question in the generator) by how much to rotate the conical intersection.&lt;br /&gt;
We will perform the rotation beforehand providing the {0,0,0} tuple to the program. This is done using the dd_rotation method.&lt;br /&gt;
&lt;br /&gt;
==dd_rotation method==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039;dd_rotation program only works with the output of gaussian development version gdvh01.&lt;br /&gt;
&lt;br /&gt;
Create a new directory for the rotation and populate it with two files, which must be named &#039;&#039;&#039;start.log&#039;&#039;&#039; and &#039;&#039;&#039;coin.dat&#039;&#039;&#039;, and the dd_rotation program.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;start.log&#039;&#039;&#039; is the gaussian output file from the high precision vibrational modes of the ground state with state averaged orbitals (with atom types rather than numbers)&lt;br /&gt;
&lt;br /&gt;
[[Media:Start.log]]&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;coin.dat&#039;&#039;&#039; is the conical intersection reference geometry in xyz format. (i.e. it is the last geometry printed out in [[Media:Fulv_ci.log]] )&lt;br /&gt;
&lt;br /&gt;
[[Media:Coin.dat]]&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;dd_rotation&#039;&#039;&#039; program, written by David, reads the &#039;&#039;start.log&#039;&#039; and &#039;&#039;coin.dat&#039;&#039; files and will output a file called &#039;&#039;coin.out&#039;&#039; which is a xyz with the rotated conical intersection geometry. The program also outputs to stdout the relevant rotation angles.&lt;br /&gt;
&lt;br /&gt;
[[Media:Dd_rotation_v2.x]] &lt;br /&gt;
&lt;br /&gt;
The rotated geometry should be visually checked for consistency against the starting geometry.&lt;br /&gt;
&lt;br /&gt;
Taking the rotated geometry (from coin.out) it is necessary to perform a new conical intersection optimization to obtain the orbitals and branching space coordinates.&lt;br /&gt;
(this time without the keyword opt=tight)&lt;br /&gt;
&lt;br /&gt;
[[Media:Coin.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Coin.log]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Resgrp:comp-photo-dyn/mctdh90.56dv|back]]&lt;/div&gt;</summary>
		<author><name>Vs13</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/input&amp;diff=333932</id>
		<title>Resgrp:comp-photo-dyn/mctdh90.56dv Fulvene Tutorial/input</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/input&amp;diff=333932"/>
		<updated>2013-04-24T14:22:33Z</updated>

		<summary type="html">&lt;p&gt;Vs13: /* Gaussian Calculations - CASSCF */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Creating Input for Dynamics Calculations =&lt;br /&gt;
&lt;br /&gt;
== MCTDH (DD-vMCG) versions ==&lt;br /&gt;
&lt;br /&gt;
- Development versions: &lt;br /&gt;
&lt;br /&gt;
* mctdh90dv&lt;br /&gt;
* mctdh90.31dv&lt;br /&gt;
* mctdh90.56dv&lt;br /&gt;
&lt;br /&gt;
The inputs required for the dynamic calculation are an optimised ground state structure and an optimized conical intersection structure in the appropriate orientation. [These two structures are used in the diabatic transformation. They do not necessarily need to correspond to the Franck-Condon and to the minimum conical intersection geometries. However, these structures are usually good places to start and so most of this tutorial will assume that these are the references that have been chosen]. The ground state structure must have been optimized with state averaged orbitals. These orbitals must be &amp;quot;cleaned&amp;quot; and the high precision frequencies must have been calculated.&lt;br /&gt;
&lt;br /&gt;
* Development version ( mctdh90.??dv): The only inputs required for the dynamics calculation are an optimized ground state structure and an optimized conical intersection. The rotation will be &amp;quot;automatic&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
- The main objective of this tutorial is to learn how to run dynamics calculations, thus we will give you the optimised geometries in the appropriate rotation.&lt;br /&gt;
(A description of how to rotate a structure will follow in due course)&lt;br /&gt;
&lt;br /&gt;
== State Averaged Orbitals==&lt;br /&gt;
&lt;br /&gt;
State averaged orbitals are necessary in order to represent both ground and excited states at the same time in the space close to the conical intersection. The &#039;&#039;State Average&#039;&#039; algorithm allows the convergence of CASSCF when two or more states are close. A solution is found between the average of the involved orbitals if they were calculated independently for each state. At the Frank-Condon region, away from the intersection, this is not needed, but the code maintains this approximation over all the PES to avoid discontinuities.&lt;br /&gt;
&lt;br /&gt;
= Gaussian Calculations - CASSCF =&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note&#039;&#039;&#039;: to use the dd_rotation method (see details for this method in the next section [[Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/rotation|Rotation of the Conical Intersection]]) it is necessary to run all the calculations in this section with the gaussian development version gdvh01.&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;1. Generate a starting geometry.&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
First of all, we need a set of initial orbitals for the CASSCF calculation, which can be obtained from a simple restricted Hartree-Fock (RHF/STO-3G) optimisation. It is useful in systems with high symmetry to start with the molecule in the standard orientation and from a symmetrised geometry. This can be achieved by running a Gaussian calculation without the nosymm keyword and using the geometry returned by this calculation.&lt;br /&gt;
&lt;br /&gt;
* NB You should use the structures given in this tutorial because they are  oriented appropriately.&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_s_orient.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_s_orient.log]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;2. Identify the Orbitals Required for the CASSCF Calculation&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
Use the geometry from 1. Calculate the HF orbitals with a tight basis set e.g. STO-3G so that it is easier to identify the relevant orbitals for CASSCF.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;HF/STO-3G pop=full nosymm geom=check&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Nosymm is required because every time a calculation is run on the molecule with a different symmetry Gaussian reorients the molecule for that particular point group and will destroy the active space. Nosymm disables this feature.&lt;br /&gt;
* Pop=full prints out the orbitals.&lt;br /&gt;
* Inspect the orbitals. Select those required for the CASSCF. &lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hf.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hf.log]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hf.fchk]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;3. Identify the State Averaged Orbitals for the Ground State&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
An orbital inspection using any visualization software (e.g. GaussView) before performing any CASSCF calculation is essential to identify which orbitals make up the chosen active space. In some cases it may be necessary to use the &#039;&#039;&#039;guess=alter&#039;&#039;&#039; keyword to change the order of the orbitals to make sure the optimisation (see step 4) proceeds with the correct orbitals. Gaussian assumes that the electrons specified in a CASSCF calculation come from the highest occupied orbitals in the initial guess and then takes the remaining orbitals as the lowest virtuals of this guess. &lt;br /&gt;
&lt;br /&gt;
* In this example, the relevant orbitals are the six pi orbitals, which contain six electrons (so the calculation is 6,6). The six orbitals that form the pi molecular orbitals are 18, 20, 21,22, 23 and 24. Only orbital 18 is not included in the active space. Thus we need to swap orbitals 18 and 19 to get the correct active space. Use the keyword &#039;&#039;&#039;guess=alter&#039;&#039;&#039; .&lt;br /&gt;
&lt;br /&gt;
Use the orbitals chosen in 2. (i.e. use the .chk from 2.) Use the final geometry from 2.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;CAS(6,6,nroot=2,stateaverage)/STO-3G nosymm IOP(5/97=100,10/97=100) guess=(read,alter)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Here, the weights of each state must be listed explicitly. The weights are 0.5 and 0.5. These must be specified by typing 0.5 followed by 7 spaces then 0.5 (on the same line) (The Gaussian program reads 10 characters (inc spaces) for the first weight and another 10 characters for the second weight. Thus the 7 spaces plus the three characters &amp;quot;0&amp;quot;, &amp;quot;.&amp;quot; and &amp;quot;5&amp;quot; make up the first 10 characters before the second weight is read.)&lt;br /&gt;
&lt;br /&gt;
* The IOp (5/97=100,10/97=100) tells the program to switch the order of the two states. This is so that we calculate the ground state rather than the excited state. (Gaussian CASSCF calculations always perform optimisations on the highest state listed, so by switching the order we force optimisation of what is actually the lower state.)&lt;br /&gt;
* Nroot=2 specifies the &#039;&#039;first&#039;&#039; excited state so the orbitals will be averaged over the ground state and the first excited state.&lt;br /&gt;
&lt;br /&gt;
* Inspect the orbitals again after the calculation to check if the active space is correct.&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_orb_sa.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_orb_sa.log]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_orb_sa.fchk]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;4. Perform a CASSCF Optimisation on the Ground State with the State Averaged Orbitals&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
Use the orbitals chosen in 3. Use the .chk from 3.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;CAS(6,6,nroot=2)/STO-3G nosymm opt=conical pop=full IOP(10/10=700005) IOP(5/97=100,10/97=100) geom=check guess=read&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;N.B.&#039;&#039;&#039; This is not a conical intersection optimisation! However, the keyword opt=conical specifies automatically that the populations of the two states will each be 0.5. Thus there is no need to specify the populations manually.&lt;br /&gt;
* The initial &#039;7&#039; in IOp (10/10=700005) specifies that the calculation should be an optimisation to a minimum (rather than a conical intersection). The final &#039;5&#039; ensures that the orbital rotation derivative contributions from the CP-MC-SCF equations are included. (This is necessary and is usually the default. However, in some  version of Gaussian, the combination of &#039;&#039;&#039;opt&#039;&#039;&#039; and &#039;&#039;&#039;stateaverage&#039;&#039;&#039; excludes this).&lt;br /&gt;
* Stateaverage is the default for opt=conical.&lt;br /&gt;
* Nroot=2 is the default for opt=conical.&lt;br /&gt;
* Do not include the keyword &#039;&#039;&#039;freq&#039;&#039;&#039; in the optimisation. (This combination of IOps does not allow &#039;&#039;&#039;opt&#039;&#039;&#039; and &#039;&#039;&#039;freq&#039;&#039;&#039; to be keywords in the same job.)&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_cas.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_cas.log]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;5. &amp;quot;Clean&amp;quot; the Orbitals&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
In this case, all the orbitals in the active space are pure pi orbitals. Due to small numerical inaccuracies, the final orbitals may include small contributions from other (non-pi) orbitals. The aim of this step is to remove these contributions so that the active space consists (in this example) only of contributions from the C 2PY atomic orbitals. The six relevant orbitals are occupied orbitals 19, 20 and 21, and virtual orbitals 22, 23 and 24. In this example they are already clean. Verify this by inspection of the &amp;quot;Molecular Orbital Coefficients&amp;quot; in the population analysis. &lt;br /&gt;
&lt;br /&gt;
In other cases, multiple optimisations may be necessary to clean the orbitals:&lt;br /&gt;
&lt;br /&gt;
Open the file in GaussView, and Edit/Symmetrize. Use this symmetrised geometry as a starting geometry for another optimsation as in 4 (including the keyword &#039;&#039;&#039;nosymm&#039;&#039;&#039;). &lt;br /&gt;
Use the .chk from 4.&lt;br /&gt;
Re-run the optimisation exactly as in 4.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Ideally here we include the keyword &#039;&#039;&#039;opt=(maxstep=1)&#039;&#039;&#039;. This should ensure that the optimisation takes the smallest possible step: we already know that the geometry is very close to the minimum and we need to prevent any significant re-orientation that might occur if large steps are taken. However, this does not seem to work (at least with g03).&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Repeat until the orbitals are clean.&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;6. Calculate the (High Precision) Vibrational Modes for the Ground State &#039;&#039;with State Averaged Orbitals&#039;&#039;&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
Use the .chk and the geometry from 4 (from 5 if you reoptimised the structure in order to clean the orbitals). The geometry must be specified explicitly. (With this combination of IOPs, Gaussian extracts the wrong geometry from the .chk file if &#039;&#039;&#039;geom=checkpoint&#039;&#039;&#039; is specified.)&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;CAS(6,6,nroot=2)/STO-3G freq=hpmodes nosymm pop=full guess=read IOP(5/17=41000200,10/10=700007) IOP(5/97=100,10/97=100)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* IOp (5/17=41000200,10/10=700007) includes the CP-MC-SCF correction (as above) (for a frequency calculation) and specifies state averaged orbitals.&lt;br /&gt;
* Do not include the keyword &#039;&#039;&#039;stateaverage&#039;&#039;&#039; with &#039;&#039;&#039;freq&#039;&#039;&#039; (the current version of Gaussian does not support this).&lt;br /&gt;
* Freq=hpmodes tells Gaussian to print the vibrational modes to 5 decimal places.&lt;br /&gt;
* As before, the IOp (5/97=100,10/97=100) forces calculation of the ground state.&lt;br /&gt;
* Use atom labels rather than numbers (otherwise the dd_generator will not work (see later)).&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hpfreq.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hpfreq.log]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;7. Optimise the Conical Intersection&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
Now we have to locate the conical intersection. To do this, we can run an optimisation from the Frank-Condon point (orbitals and geometry are the same we obtained with the CASSCF calculation in 4.) following (one of) the negative frequency(ies).&lt;br /&gt;
Use the .chk from 4.  A conical intersection optimisation should now locate a conical intersection.&lt;br /&gt;
* Stateaverage is the default for opt=conical.&lt;br /&gt;
* Nroot=2 is the default for opt=conical.&lt;br /&gt;
* To use the the dd_rotation method described in the next section ([[Resgrp:comp-photo-dyn/mctdh90.56dv#Rotation of the Conical Intersection|Rotation of the Conical Intersection]]) it may be convenient to use tighter condition to the optimization of the conical intersection at this stage (i.e. to use the keyword &#039;&#039;&#039;opt=tight&#039;&#039;&#039;).&lt;br /&gt;
The rational of this hack is that after rotation a second conical intersection optimization needs to be perfomed to obtain orbitals and branching space coordinates for the rotated geometry. These quantities cannot be obtained from a single point calculation. In the second optimization the less strict optimization conditions are used such that no actual geometry change is performed.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;CAS(6,6,nroot=2)/STO-3G opt=(conical,tight) nosymm guess=read pop=full&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_ci.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_ci.log]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== [[Resgrp:comp-photo-dyn/mctdh90.56dv|back]] ===&lt;/div&gt;</summary>
		<author><name>Vs13</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/input&amp;diff=333931</id>
		<title>Resgrp:comp-photo-dyn/mctdh90.56dv Fulvene Tutorial/input</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/input&amp;diff=333931"/>
		<updated>2013-04-24T14:22:21Z</updated>

		<summary type="html">&lt;p&gt;Vs13: /* Gaussian Calculations - CASSCF */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Creating Input for Dynamics Calculations =&lt;br /&gt;
&lt;br /&gt;
== MCTDH (DD-vMCG) versions ==&lt;br /&gt;
&lt;br /&gt;
- Development versions: &lt;br /&gt;
&lt;br /&gt;
* mctdh90dv&lt;br /&gt;
* mctdh90.31dv&lt;br /&gt;
* mctdh90.56dv&lt;br /&gt;
&lt;br /&gt;
The inputs required for the dynamic calculation are an optimised ground state structure and an optimized conical intersection structure in the appropriate orientation. [These two structures are used in the diabatic transformation. They do not necessarily need to correspond to the Franck-Condon and to the minimum conical intersection geometries. However, these structures are usually good places to start and so most of this tutorial will assume that these are the references that have been chosen]. The ground state structure must have been optimized with state averaged orbitals. These orbitals must be &amp;quot;cleaned&amp;quot; and the high precision frequencies must have been calculated.&lt;br /&gt;
&lt;br /&gt;
* Development version ( mctdh90.??dv): The only inputs required for the dynamics calculation are an optimized ground state structure and an optimized conical intersection. The rotation will be &amp;quot;automatic&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
- The main objective of this tutorial is to learn how to run dynamics calculations, thus we will give you the optimised geometries in the appropriate rotation.&lt;br /&gt;
(A description of how to rotate a structure will follow in due course)&lt;br /&gt;
&lt;br /&gt;
== State Averaged Orbitals==&lt;br /&gt;
&lt;br /&gt;
State averaged orbitals are necessary in order to represent both ground and excited states at the same time in the space close to the conical intersection. The &#039;&#039;State Average&#039;&#039; algorithm allows the convergence of CASSCF when two or more states are close. A solution is found between the average of the involved orbitals if they were calculated independently for each state. At the Frank-Condon region, away from the intersection, this is not needed, but the code maintains this approximation over all the PES to avoid discontinuities.&lt;br /&gt;
&lt;br /&gt;
= Gaussian Calculations - CASSCF =&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note&#039;&#039;&#039;: to use the dd_rotation method (see details for this method in the next section [[Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/rotation|Rotation of the Conical Intersection]] ) it is necessary to run all the calculations in this section with the gaussian development version gdvh01.&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;1. Generate a starting geometry.&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
First of all, we need a set of initial orbitals for the CASSCF calculation, which can be obtained from a simple restricted Hartree-Fock (RHF/STO-3G) optimisation. It is useful in systems with high symmetry to start with the molecule in the standard orientation and from a symmetrised geometry. This can be achieved by running a Gaussian calculation without the nosymm keyword and using the geometry returned by this calculation.&lt;br /&gt;
&lt;br /&gt;
* NB You should use the structures given in this tutorial because they are  oriented appropriately.&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_s_orient.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_s_orient.log]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;2. Identify the Orbitals Required for the CASSCF Calculation&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
Use the geometry from 1. Calculate the HF orbitals with a tight basis set e.g. STO-3G so that it is easier to identify the relevant orbitals for CASSCF.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;HF/STO-3G pop=full nosymm geom=check&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Nosymm is required because every time a calculation is run on the molecule with a different symmetry Gaussian reorients the molecule for that particular point group and will destroy the active space. Nosymm disables this feature.&lt;br /&gt;
* Pop=full prints out the orbitals.&lt;br /&gt;
* Inspect the orbitals. Select those required for the CASSCF. &lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hf.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hf.log]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hf.fchk]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;3. Identify the State Averaged Orbitals for the Ground State&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
An orbital inspection using any visualization software (e.g. GaussView) before performing any CASSCF calculation is essential to identify which orbitals make up the chosen active space. In some cases it may be necessary to use the &#039;&#039;&#039;guess=alter&#039;&#039;&#039; keyword to change the order of the orbitals to make sure the optimisation (see step 4) proceeds with the correct orbitals. Gaussian assumes that the electrons specified in a CASSCF calculation come from the highest occupied orbitals in the initial guess and then takes the remaining orbitals as the lowest virtuals of this guess. &lt;br /&gt;
&lt;br /&gt;
* In this example, the relevant orbitals are the six pi orbitals, which contain six electrons (so the calculation is 6,6). The six orbitals that form the pi molecular orbitals are 18, 20, 21,22, 23 and 24. Only orbital 18 is not included in the active space. Thus we need to swap orbitals 18 and 19 to get the correct active space. Use the keyword &#039;&#039;&#039;guess=alter&#039;&#039;&#039; .&lt;br /&gt;
&lt;br /&gt;
Use the orbitals chosen in 2. (i.e. use the .chk from 2.) Use the final geometry from 2.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;CAS(6,6,nroot=2,stateaverage)/STO-3G nosymm IOP(5/97=100,10/97=100) guess=(read,alter)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Here, the weights of each state must be listed explicitly. The weights are 0.5 and 0.5. These must be specified by typing 0.5 followed by 7 spaces then 0.5 (on the same line) (The Gaussian program reads 10 characters (inc spaces) for the first weight and another 10 characters for the second weight. Thus the 7 spaces plus the three characters &amp;quot;0&amp;quot;, &amp;quot;.&amp;quot; and &amp;quot;5&amp;quot; make up the first 10 characters before the second weight is read.)&lt;br /&gt;
&lt;br /&gt;
* The IOp (5/97=100,10/97=100) tells the program to switch the order of the two states. This is so that we calculate the ground state rather than the excited state. (Gaussian CASSCF calculations always perform optimisations on the highest state listed, so by switching the order we force optimisation of what is actually the lower state.)&lt;br /&gt;
* Nroot=2 specifies the &#039;&#039;first&#039;&#039; excited state so the orbitals will be averaged over the ground state and the first excited state.&lt;br /&gt;
&lt;br /&gt;
* Inspect the orbitals again after the calculation to check if the active space is correct.&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_orb_sa.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_orb_sa.log]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_orb_sa.fchk]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;4. Perform a CASSCF Optimisation on the Ground State with the State Averaged Orbitals&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
Use the orbitals chosen in 3. Use the .chk from 3.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;CAS(6,6,nroot=2)/STO-3G nosymm opt=conical pop=full IOP(10/10=700005) IOP(5/97=100,10/97=100) geom=check guess=read&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;N.B.&#039;&#039;&#039; This is not a conical intersection optimisation! However, the keyword opt=conical specifies automatically that the populations of the two states will each be 0.5. Thus there is no need to specify the populations manually.&lt;br /&gt;
* The initial &#039;7&#039; in IOp (10/10=700005) specifies that the calculation should be an optimisation to a minimum (rather than a conical intersection). The final &#039;5&#039; ensures that the orbital rotation derivative contributions from the CP-MC-SCF equations are included. (This is necessary and is usually the default. However, in some  version of Gaussian, the combination of &#039;&#039;&#039;opt&#039;&#039;&#039; and &#039;&#039;&#039;stateaverage&#039;&#039;&#039; excludes this).&lt;br /&gt;
* Stateaverage is the default for opt=conical.&lt;br /&gt;
* Nroot=2 is the default for opt=conical.&lt;br /&gt;
* Do not include the keyword &#039;&#039;&#039;freq&#039;&#039;&#039; in the optimisation. (This combination of IOps does not allow &#039;&#039;&#039;opt&#039;&#039;&#039; and &#039;&#039;&#039;freq&#039;&#039;&#039; to be keywords in the same job.)&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_cas.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_cas.log]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;5. &amp;quot;Clean&amp;quot; the Orbitals&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
In this case, all the orbitals in the active space are pure pi orbitals. Due to small numerical inaccuracies, the final orbitals may include small contributions from other (non-pi) orbitals. The aim of this step is to remove these contributions so that the active space consists (in this example) only of contributions from the C 2PY atomic orbitals. The six relevant orbitals are occupied orbitals 19, 20 and 21, and virtual orbitals 22, 23 and 24. In this example they are already clean. Verify this by inspection of the &amp;quot;Molecular Orbital Coefficients&amp;quot; in the population analysis. &lt;br /&gt;
&lt;br /&gt;
In other cases, multiple optimisations may be necessary to clean the orbitals:&lt;br /&gt;
&lt;br /&gt;
Open the file in GaussView, and Edit/Symmetrize. Use this symmetrised geometry as a starting geometry for another optimsation as in 4 (including the keyword &#039;&#039;&#039;nosymm&#039;&#039;&#039;). &lt;br /&gt;
Use the .chk from 4.&lt;br /&gt;
Re-run the optimisation exactly as in 4.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Ideally here we include the keyword &#039;&#039;&#039;opt=(maxstep=1)&#039;&#039;&#039;. This should ensure that the optimisation takes the smallest possible step: we already know that the geometry is very close to the minimum and we need to prevent any significant re-orientation that might occur if large steps are taken. However, this does not seem to work (at least with g03).&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Repeat until the orbitals are clean.&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;6. Calculate the (High Precision) Vibrational Modes for the Ground State &#039;&#039;with State Averaged Orbitals&#039;&#039;&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
Use the .chk and the geometry from 4 (from 5 if you reoptimised the structure in order to clean the orbitals). The geometry must be specified explicitly. (With this combination of IOPs, Gaussian extracts the wrong geometry from the .chk file if &#039;&#039;&#039;geom=checkpoint&#039;&#039;&#039; is specified.)&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;CAS(6,6,nroot=2)/STO-3G freq=hpmodes nosymm pop=full guess=read IOP(5/17=41000200,10/10=700007) IOP(5/97=100,10/97=100)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* IOp (5/17=41000200,10/10=700007) includes the CP-MC-SCF correction (as above) (for a frequency calculation) and specifies state averaged orbitals.&lt;br /&gt;
* Do not include the keyword &#039;&#039;&#039;stateaverage&#039;&#039;&#039; with &#039;&#039;&#039;freq&#039;&#039;&#039; (the current version of Gaussian does not support this).&lt;br /&gt;
* Freq=hpmodes tells Gaussian to print the vibrational modes to 5 decimal places.&lt;br /&gt;
* As before, the IOp (5/97=100,10/97=100) forces calculation of the ground state.&lt;br /&gt;
* Use atom labels rather than numbers (otherwise the dd_generator will not work (see later)).&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hpfreq.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hpfreq.log]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;7. Optimise the Conical Intersection&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
Now we have to locate the conical intersection. To do this, we can run an optimisation from the Frank-Condon point (orbitals and geometry are the same we obtained with the CASSCF calculation in 4.) following (one of) the negative frequency(ies).&lt;br /&gt;
Use the .chk from 4.  A conical intersection optimisation should now locate a conical intersection.&lt;br /&gt;
* Stateaverage is the default for opt=conical.&lt;br /&gt;
* Nroot=2 is the default for opt=conical.&lt;br /&gt;
* To use the the dd_rotation method described in the next section ([[Resgrp:comp-photo-dyn/mctdh90.56dv#Rotation of the Conical Intersection|Rotation of the Conical Intersection]]) it may be convenient to use tighter condition to the optimization of the conical intersection at this stage (i.e. to use the keyword &#039;&#039;&#039;opt=tight&#039;&#039;&#039;).&lt;br /&gt;
The rational of this hack is that after rotation a second conical intersection optimization needs to be perfomed to obtain orbitals and branching space coordinates for the rotated geometry. These quantities cannot be obtained from a single point calculation. In the second optimization the less strict optimization conditions are used such that no actual geometry change is performed.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;CAS(6,6,nroot=2)/STO-3G opt=(conical,tight) nosymm guess=read pop=full&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_ci.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_ci.log]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== [[Resgrp:comp-photo-dyn/mctdh90.56dv|back]] ===&lt;/div&gt;</summary>
		<author><name>Vs13</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/input&amp;diff=333930</id>
		<title>Resgrp:comp-photo-dyn/mctdh90.56dv Fulvene Tutorial/input</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/input&amp;diff=333930"/>
		<updated>2013-04-24T14:21:04Z</updated>

		<summary type="html">&lt;p&gt;Vs13: /* Gaussian Calculations - CASSCF */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Creating Input for Dynamics Calculations =&lt;br /&gt;
&lt;br /&gt;
== MCTDH (DD-vMCG) versions ==&lt;br /&gt;
&lt;br /&gt;
- Development versions: &lt;br /&gt;
&lt;br /&gt;
* mctdh90dv&lt;br /&gt;
* mctdh90.31dv&lt;br /&gt;
* mctdh90.56dv&lt;br /&gt;
&lt;br /&gt;
The inputs required for the dynamic calculation are an optimised ground state structure and an optimized conical intersection structure in the appropriate orientation. [These two structures are used in the diabatic transformation. They do not necessarily need to correspond to the Franck-Condon and to the minimum conical intersection geometries. However, these structures are usually good places to start and so most of this tutorial will assume that these are the references that have been chosen]. The ground state structure must have been optimized with state averaged orbitals. These orbitals must be &amp;quot;cleaned&amp;quot; and the high precision frequencies must have been calculated.&lt;br /&gt;
&lt;br /&gt;
* Development version ( mctdh90.??dv): The only inputs required for the dynamics calculation are an optimized ground state structure and an optimized conical intersection. The rotation will be &amp;quot;automatic&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
- The main objective of this tutorial is to learn how to run dynamics calculations, thus we will give you the optimised geometries in the appropriate rotation.&lt;br /&gt;
(A description of how to rotate a structure will follow in due course)&lt;br /&gt;
&lt;br /&gt;
== State Averaged Orbitals==&lt;br /&gt;
&lt;br /&gt;
State averaged orbitals are necessary in order to represent both ground and excited states at the same time in the space close to the conical intersection. The &#039;&#039;State Average&#039;&#039; algorithm allows the convergence of CASSCF when two or more states are close. A solution is found between the average of the involved orbitals if they were calculated independently for each state. At the Frank-Condon region, away from the intersection, this is not needed, but the code maintains this approximation over all the PES to avoid discontinuities.&lt;br /&gt;
&lt;br /&gt;
= Gaussian Calculations - CASSCF =&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note&#039;&#039;&#039;: to use the dd_rotation method (see details for this method in the next section [[Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/rotation|Rotation of the Conical Intersection]] ) all the calculations in this section must be run with the gaussian development version gdvh01.&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;1. Generate a starting geometry.&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
First of all, we need a set of initial orbitals for the CASSCF calculation, which can be obtained from a simple restricted Hartree-Fock (RHF/STO-3G) optimisation. It is useful in systems with high symmetry to start with the molecule in the standard orientation and from a symmetrised geometry. This can be achieved by running a Gaussian calculation without the nosymm keyword and using the geometry returned by this calculation.&lt;br /&gt;
&lt;br /&gt;
* NB You should use the structures given in this tutorial because they are  oriented appropriately.&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_s_orient.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_s_orient.log]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;2. Identify the Orbitals Required for the CASSCF Calculation&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
Use the geometry from 1. Calculate the HF orbitals with a tight basis set e.g. STO-3G so that it is easier to identify the relevant orbitals for CASSCF.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;HF/STO-3G pop=full nosymm geom=check&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Nosymm is required because every time a calculation is run on the molecule with a different symmetry Gaussian reorients the molecule for that particular point group and will destroy the active space. Nosymm disables this feature.&lt;br /&gt;
* Pop=full prints out the orbitals.&lt;br /&gt;
* Inspect the orbitals. Select those required for the CASSCF. &lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hf.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hf.log]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hf.fchk]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;3. Identify the State Averaged Orbitals for the Ground State&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
An orbital inspection using any visualization software (e.g. GaussView) before performing any CASSCF calculation is essential to identify which orbitals make up the chosen active space. In some cases it may be necessary to use the &#039;&#039;&#039;guess=alter&#039;&#039;&#039; keyword to change the order of the orbitals to make sure the optimisation (see step 4) proceeds with the correct orbitals. Gaussian assumes that the electrons specified in a CASSCF calculation come from the highest occupied orbitals in the initial guess and then takes the remaining orbitals as the lowest virtuals of this guess. &lt;br /&gt;
&lt;br /&gt;
* In this example, the relevant orbitals are the six pi orbitals, which contain six electrons (so the calculation is 6,6). The six orbitals that form the pi molecular orbitals are 18, 20, 21,22, 23 and 24. Only orbital 18 is not included in the active space. Thus we need to swap orbitals 18 and 19 to get the correct active space. Use the keyword &#039;&#039;&#039;guess=alter&#039;&#039;&#039; .&lt;br /&gt;
&lt;br /&gt;
Use the orbitals chosen in 2. (i.e. use the .chk from 2.) Use the final geometry from 2.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;CAS(6,6,nroot=2,stateaverage)/STO-3G nosymm IOP(5/97=100,10/97=100) guess=(read,alter)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Here, the weights of each state must be listed explicitly. The weights are 0.5 and 0.5. These must be specified by typing 0.5 followed by 7 spaces then 0.5 (on the same line) (The Gaussian program reads 10 characters (inc spaces) for the first weight and another 10 characters for the second weight. Thus the 7 spaces plus the three characters &amp;quot;0&amp;quot;, &amp;quot;.&amp;quot; and &amp;quot;5&amp;quot; make up the first 10 characters before the second weight is read.)&lt;br /&gt;
&lt;br /&gt;
* The IOp (5/97=100,10/97=100) tells the program to switch the order of the two states. This is so that we calculate the ground state rather than the excited state. (Gaussian CASSCF calculations always perform optimisations on the highest state listed, so by switching the order we force optimisation of what is actually the lower state.)&lt;br /&gt;
* Nroot=2 specifies the &#039;&#039;first&#039;&#039; excited state so the orbitals will be averaged over the ground state and the first excited state.&lt;br /&gt;
&lt;br /&gt;
* Inspect the orbitals again after the calculation to check if the active space is correct.&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_orb_sa.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_orb_sa.log]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_orb_sa.fchk]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;4. Perform a CASSCF Optimisation on the Ground State with the State Averaged Orbitals&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
Use the orbitals chosen in 3. Use the .chk from 3.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;CAS(6,6,nroot=2)/STO-3G nosymm opt=conical pop=full IOP(10/10=700005) IOP(5/97=100,10/97=100) geom=check guess=read&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;N.B.&#039;&#039;&#039; This is not a conical intersection optimisation! However, the keyword opt=conical specifies automatically that the populations of the two states will each be 0.5. Thus there is no need to specify the populations manually.&lt;br /&gt;
* The initial &#039;7&#039; in IOp (10/10=700005) specifies that the calculation should be an optimisation to a minimum (rather than a conical intersection). The final &#039;5&#039; ensures that the orbital rotation derivative contributions from the CP-MC-SCF equations are included. (This is necessary and is usually the default. However, in some  version of Gaussian, the combination of &#039;&#039;&#039;opt&#039;&#039;&#039; and &#039;&#039;&#039;stateaverage&#039;&#039;&#039; excludes this).&lt;br /&gt;
* Stateaverage is the default for opt=conical.&lt;br /&gt;
* Nroot=2 is the default for opt=conical.&lt;br /&gt;
* Do not include the keyword &#039;&#039;&#039;freq&#039;&#039;&#039; in the optimisation. (This combination of IOps does not allow &#039;&#039;&#039;opt&#039;&#039;&#039; and &#039;&#039;&#039;freq&#039;&#039;&#039; to be keywords in the same job.)&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_cas.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_cas.log]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;5. &amp;quot;Clean&amp;quot; the Orbitals&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
In this case, all the orbitals in the active space are pure pi orbitals. Due to small numerical inaccuracies, the final orbitals may include small contributions from other (non-pi) orbitals. The aim of this step is to remove these contributions so that the active space consists (in this example) only of contributions from the C 2PY atomic orbitals. The six relevant orbitals are occupied orbitals 19, 20 and 21, and virtual orbitals 22, 23 and 24. In this example they are already clean. Verify this by inspection of the &amp;quot;Molecular Orbital Coefficients&amp;quot; in the population analysis. &lt;br /&gt;
&lt;br /&gt;
In other cases, multiple optimisations may be necessary to clean the orbitals:&lt;br /&gt;
&lt;br /&gt;
Open the file in GaussView, and Edit/Symmetrize. Use this symmetrised geometry as a starting geometry for another optimsation as in 4 (including the keyword &#039;&#039;&#039;nosymm&#039;&#039;&#039;). &lt;br /&gt;
Use the .chk from 4.&lt;br /&gt;
Re-run the optimisation exactly as in 4.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Ideally here we include the keyword &#039;&#039;&#039;opt=(maxstep=1)&#039;&#039;&#039;. This should ensure that the optimisation takes the smallest possible step: we already know that the geometry is very close to the minimum and we need to prevent any significant re-orientation that might occur if large steps are taken. However, this does not seem to work (at least with g03).&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Repeat until the orbitals are clean.&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;6. Calculate the (High Precision) Vibrational Modes for the Ground State &#039;&#039;with State Averaged Orbitals&#039;&#039;&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
Use the .chk and the geometry from 4 (from 5 if you reoptimised the structure in order to clean the orbitals). The geometry must be specified explicitly. (With this combination of IOPs, Gaussian extracts the wrong geometry from the .chk file if &#039;&#039;&#039;geom=checkpoint&#039;&#039;&#039; is specified.)&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;CAS(6,6,nroot=2)/STO-3G freq=hpmodes nosymm pop=full guess=read IOP(5/17=41000200,10/10=700007) IOP(5/97=100,10/97=100)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* IOp (5/17=41000200,10/10=700007) includes the CP-MC-SCF correction (as above) (for a frequency calculation) and specifies state averaged orbitals.&lt;br /&gt;
* Do not include the keyword &#039;&#039;&#039;stateaverage&#039;&#039;&#039; with &#039;&#039;&#039;freq&#039;&#039;&#039; (the current version of Gaussian does not support this).&lt;br /&gt;
* Freq=hpmodes tells Gaussian to print the vibrational modes to 5 decimal places.&lt;br /&gt;
* As before, the IOp (5/97=100,10/97=100) forces calculation of the ground state.&lt;br /&gt;
* Use atom labels rather than numbers (otherwise the dd_generator will not work (see later)).&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hpfreq.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hpfreq.log]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;7. Optimise the Conical Intersection&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
Now we have to locate the conical intersection. To do this, we can run an optimisation from the Frank-Condon point (orbitals and geometry are the same we obtained with the CASSCF calculation in 4.) following (one of) the negative frequency(ies).&lt;br /&gt;
Use the .chk from 4.  A conical intersection optimisation should now locate a conical intersection.&lt;br /&gt;
* Stateaverage is the default for opt=conical.&lt;br /&gt;
* Nroot=2 is the default for opt=conical.&lt;br /&gt;
* To use the the dd_rotation method described in the next section ([[Resgrp:comp-photo-dyn/mctdh90.56dv#Rotation of the Conical Intersection|Rotation of the Conical Intersection]]) it may be convenient to use tighter condition to the optimization of the conical intersection at this stage (i.e. to use the keyword &#039;&#039;&#039;opt=tight&#039;&#039;&#039;).&lt;br /&gt;
The rational of this hack is that after rotation a second conical intersection optimization needs to be perfomed to obtain orbitals and branching space coordinates for the rotated geometry. These quantities cannot be obtained from a single point calculation. In the second optimization the less strict optimization conditions are used such that no actual geometry change is performed.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;CAS(6,6,nroot=2)/STO-3G opt=(conical,tight) nosymm guess=read pop=full&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_ci.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_ci.log]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== [[Resgrp:comp-photo-dyn/mctdh90.56dv|back]] ===&lt;/div&gt;</summary>
		<author><name>Vs13</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=File:Coin.gjf&amp;diff=333929</id>
		<title>File:Coin.gjf</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=File:Coin.gjf&amp;diff=333929"/>
		<updated>2013-04-24T14:11:41Z</updated>

		<summary type="html">&lt;p&gt;Vs13: uploaded a new version of &amp;amp;quot;File:Coin.gjf&amp;amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Vs13</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/rotation&amp;diff=333928</id>
		<title>Resgrp:comp-photo-dyn/mctdh90.56dv Fulvene Tutorial/rotation</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/rotation&amp;diff=333928"/>
		<updated>2013-04-24T14:10:32Z</updated>

		<summary type="html">&lt;p&gt;Vs13: /* dd_rotation method */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Rotation of the Conical Intersection=&lt;br /&gt;
&lt;br /&gt;
Dynamics are performed in internal coordinates, so it is necessary to remove any translations or rotational components in the starting and conical intersection reference geometries. To this end it is necessary to perform a rotation/displacement of the conical intersection geometry. Although MCTDH (DD-vMCG) will do this automatically, the program needs to be told (via a question in the generator) by how much to rotate the conical intersection.&lt;br /&gt;
We will perform the rotation beforehand providing the {0,0,0} tuple to the program. This is done using the dd_rotation method.&lt;br /&gt;
&lt;br /&gt;
==dd_rotation method==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039;dd_rotation program only works with the output of gaussian development version gdvh01.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Create a new directory for the rotation and populate it with two files, which must be named &#039;&#039;&#039;start.log&#039;&#039;&#039; and &#039;&#039;&#039;coin.dat&#039;&#039;&#039;, and the dd_rotation program.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;start.log&#039;&#039;&#039; is the gaussian output file from the high precision vibrational modes of the ground state with state averaged orbitals (with atom types rather than numbers)&lt;br /&gt;
&lt;br /&gt;
[[Media:Start.log]]&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;coin.dat&#039;&#039;&#039; is the conical intersection reference geometry in xyz format. (i.e. it is the last geometry printed out in [[Media:Fulv_ci.log]] )&lt;br /&gt;
&lt;br /&gt;
[[Media:Coin.dat]]&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;dd_rotation&#039;&#039;&#039; program, written by David, reads the &#039;&#039;start.log&#039;&#039; and &#039;&#039;coin.dat&#039;&#039; files and will output a file called &#039;&#039;coin.out&#039;&#039; which is a xyz with the rotated conical intersection geometry. The program also outputs to stdout the relevant rotation angles.&lt;br /&gt;
&lt;br /&gt;
[[Media:Dd_rotation_v2.x]] &lt;br /&gt;
&lt;br /&gt;
The rotated geometry should be visually checked for consistency against the starting geometry.&lt;br /&gt;
&lt;br /&gt;
Taking the rotated geometry (from coin.out) it is necessary to perform a new conical intersection optimization to obtain the orbitals and branching space coordinates.&lt;br /&gt;
(this time without the keyword opt=tight)&lt;br /&gt;
&lt;br /&gt;
[[Media:Coin.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Coin.log]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Resgrp:comp-photo-dyn/mctdh90.56dv|back]]&lt;/div&gt;</summary>
		<author><name>Vs13</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/rotation&amp;diff=333927</id>
		<title>Resgrp:comp-photo-dyn/mctdh90.56dv Fulvene Tutorial/rotation</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/rotation&amp;diff=333927"/>
		<updated>2013-04-24T14:10:04Z</updated>

		<summary type="html">&lt;p&gt;Vs13: /* dd_rotation method */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Rotation of the Conical Intersection=&lt;br /&gt;
&lt;br /&gt;
Dynamics are performed in internal coordinates, so it is necessary to remove any translations or rotational components in the starting and conical intersection reference geometries. To this end it is necessary to perform a rotation/displacement of the conical intersection geometry. Although MCTDH (DD-vMCG) will do this automatically, the program needs to be told (via a question in the generator) by how much to rotate the conical intersection.&lt;br /&gt;
We will perform the rotation beforehand providing the {0,0,0} tuple to the program. This is done using the dd_rotation method.&lt;br /&gt;
&lt;br /&gt;
==dd_rotation method==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039;dd_rotation program only works with the output of gaussian development version gdvh01.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Create a new directory for the rotation and populate it with two files, which must be named &#039;&#039;&#039;start.log&#039;&#039;&#039; and &#039;&#039;&#039;coin.dat&#039;&#039;&#039;, and the dd_rotation program.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;start.log&#039;&#039;&#039; is the gaussian output file from the high precision vibrational modes of the ground state with state averaged orbitals (with atom types rather than numbers)&lt;br /&gt;
&lt;br /&gt;
[[Media:Start.log]]&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;coin.dat&#039;&#039;&#039; is the conical intersection reference geometry in xyz format. (i.e. it is the last geometry printed out in [[Media:Fulv_ci.log]] )&lt;br /&gt;
&lt;br /&gt;
[[Media:Coin.dat]]&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;dd_rotation&#039;&#039;&#039; program, written by David, reads the &#039;&#039;start.log&#039;&#039; and &#039;&#039;coin.dat&#039;&#039; files and will output a file called &#039;&#039;coin.out&#039;&#039; which is a xyz with the rotated conical intersection geometry. The program also outputs to stdout the relevant rotation angles.&lt;br /&gt;
&lt;br /&gt;
[[Media:Dd_rotation_v2.x]] &lt;br /&gt;
&lt;br /&gt;
The rotated geometry should be visually checked for consistency against the starting geometry.&lt;br /&gt;
&lt;br /&gt;
Taking the rotated geometry (from coin.out) it is necessary to perform a new conical intersection optimization to obtain the orbitals and branching space coordinates.&lt;br /&gt;
(this time without the keyword opt=tight)&lt;br /&gt;
&lt;br /&gt;
[[Media:Coin.gjf]]&lt;br /&gt;
[[Media:Coin.log]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Resgrp:comp-photo-dyn/mctdh90.56dv|back]]&lt;/div&gt;</summary>
		<author><name>Vs13</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/rotation&amp;diff=333926</id>
		<title>Resgrp:comp-photo-dyn/mctdh90.56dv Fulvene Tutorial/rotation</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/rotation&amp;diff=333926"/>
		<updated>2013-04-24T14:09:29Z</updated>

		<summary type="html">&lt;p&gt;Vs13: /* dd_rotation method */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Rotation of the Conical Intersection=&lt;br /&gt;
&lt;br /&gt;
Dynamics are performed in internal coordinates, so it is necessary to remove any translations or rotational components in the starting and conical intersection reference geometries. To this end it is necessary to perform a rotation/displacement of the conical intersection geometry. Although MCTDH (DD-vMCG) will do this automatically, the program needs to be told (via a question in the generator) by how much to rotate the conical intersection.&lt;br /&gt;
We will perform the rotation beforehand providing the {0,0,0} tuple to the program. This is done using the dd_rotation method.&lt;br /&gt;
&lt;br /&gt;
==dd_rotation method==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039;dd_rotation program only works with the output of gaussian development version gdvh01.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Create a new directory for the rotation and populate it with two files, which must be named &#039;&#039;&#039;start.log&#039;&#039;&#039; and &#039;&#039;&#039;coin.dat&#039;&#039;&#039;, and the dd_rotation program.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;start.log&#039;&#039;&#039; is the gaussian output file from the high precision vibrational modes of the ground state with state averaged orbitals (with atom types rather than numbers)&lt;br /&gt;
&lt;br /&gt;
[[Media:Start.log]]&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;coin.dat&#039;&#039;&#039; is the conical intersection reference geometry in xyz format. (i.e. it is the last geometry printed out in [[Media:Fulv_ci.log]] )&lt;br /&gt;
&lt;br /&gt;
[[Media:Coin.dat]]&lt;br /&gt;
&lt;br /&gt;
* The &#039;&#039;&#039;dd_rotation&#039;&#039;&#039; program, written by David, reads the &#039;&#039;start.log&#039;&#039; and &#039;&#039;coin.dat&#039;&#039;files. It will output a file called &#039;&#039;coin.out&#039;&#039; which is a xyz with the rotated conical intersection geometry. The program also outputs to stdout the relevant rotation angles.&lt;br /&gt;
&lt;br /&gt;
[[Media:Dd_rotation_v2.x]] &lt;br /&gt;
&lt;br /&gt;
The rotated geometry should be visually checked for consistency against the starting geometry.&lt;br /&gt;
&lt;br /&gt;
Taking the rotated geometry (from coin.out) it is necessary to perform a new conical intersection optimization to obtain the orbitals and branching space coordinates.&lt;br /&gt;
(this time without the keyword opt=tight)&lt;br /&gt;
&lt;br /&gt;
[[Media:Coin.gjf]]&lt;br /&gt;
[[Media:Coin.log]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Resgrp:comp-photo-dyn/mctdh90.56dv|back]]&lt;/div&gt;</summary>
		<author><name>Vs13</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/rotation&amp;diff=333925</id>
		<title>Resgrp:comp-photo-dyn/mctdh90.56dv Fulvene Tutorial/rotation</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/rotation&amp;diff=333925"/>
		<updated>2013-04-24T14:09:13Z</updated>

		<summary type="html">&lt;p&gt;Vs13: /* Rotation of the Conical Intersection */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Rotation of the Conical Intersection=&lt;br /&gt;
&lt;br /&gt;
Dynamics are performed in internal coordinates, so it is necessary to remove any translations or rotational components in the starting and conical intersection reference geometries. To this end it is necessary to perform a rotation/displacement of the conical intersection geometry. Although MCTDH (DD-vMCG) will do this automatically, the program needs to be told (via a question in the generator) by how much to rotate the conical intersection.&lt;br /&gt;
We will perform the rotation beforehand providing the {0,0,0} tuple to the program. This is done using the dd_rotation method.&lt;br /&gt;
&lt;br /&gt;
==dd_rotation method==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039;dd_rotation program only works with the output of gaussian development version gdvh01.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Create a new directory for the rotation and populate it with two files, which must be named &#039;&#039;&#039;start.log&#039;&#039;&#039; and &#039;&#039;&#039;coin.dat&#039;&#039;&#039;, and the dd_rotation program.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;start.log&#039;&#039;&#039; is the gaussian output file from the high precision vibrational modes of the ground state with state averaged orbitals (with atom types rather than numbers)&lt;br /&gt;
&lt;br /&gt;
[[Media:Start.log]]&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;coin.dat&#039;&#039;&#039; is the conical intersection reference geometry in xyz format. (i.e. it is the last geometry printed out in [[Media:Fulv_ci.log]] )&lt;br /&gt;
&lt;br /&gt;
[[Media:Coin.dat]]&lt;br /&gt;
&lt;br /&gt;
* The dd_rotation program, written by David, reads the &#039;&#039;start.log&#039;&#039; and &#039;&#039;coin.dat&#039;&#039;files. It will output a file called &#039;&#039;coin.out&#039;&#039; which is a xyz with the rotated conical intersection geometry. The program also outputs to stdout the relevant rotation angles.&lt;br /&gt;
&lt;br /&gt;
[[Media:Dd_rotation_v2.x]] &lt;br /&gt;
&lt;br /&gt;
The rotated geometry should be visually checked for consistency against the starting geometry.&lt;br /&gt;
&lt;br /&gt;
Taking the rotated geometry (from coin.out) it is necessary to perform a new conical intersection optimization to obtain the orbitals and branching space coordinates.&lt;br /&gt;
(this time without the keyword opt=tight)&lt;br /&gt;
&lt;br /&gt;
[[Media:Coin.gjf]]&lt;br /&gt;
[[Media:Coin.log]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Resgrp:comp-photo-dyn/mctdh90.56dv|back]]&lt;/div&gt;</summary>
		<author><name>Vs13</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/rotation&amp;diff=333924</id>
		<title>Resgrp:comp-photo-dyn/mctdh90.56dv Fulvene Tutorial/rotation</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/rotation&amp;diff=333924"/>
		<updated>2013-04-24T14:06:14Z</updated>

		<summary type="html">&lt;p&gt;Vs13: Created page with &amp;quot;= Rotation of the Conical Intersection=  Dynamics are performed in internal coordinates, so it is necessary to remove any translations or rotational components in the starting an...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Rotation of the Conical Intersection=&lt;br /&gt;
&lt;br /&gt;
Dynamics are performed in internal coordinates, so it is necessary to remove any translations or rotational components in the starting and conical intersection reference geometries. To this end it is necessary to perform a rotation/displacement of the conical intersection geometry. Although MCTDH (DD-vMCG) will do this automatically, the program needs to be told (via a question in the generator) by how much to rotate the conical intersection.&lt;br /&gt;
We will perform the rotation beforehand providing the {0,0,0} tuple to the program. This is done using the dd_rotation method.&lt;br /&gt;
&lt;br /&gt;
==dd_rotation method==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039;dd_rotation program only works with the output of gaussian development version gdvh01.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Create a new directory for the rotation and populate it with two files, which must be named &#039;&#039;&#039;start.log&#039;&#039;&#039; and &#039;&#039;&#039;coin.dat&#039;&#039;&#039;, and the dd_rotation program.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;start.log&#039;&#039;&#039; is the gaussian output file from the high precision vibrational modes of the ground state with state averaged orbitals (with atom types rather than numbers)&lt;br /&gt;
&lt;br /&gt;
[[Media:Start.log]]&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;coin.dat&#039;&#039;&#039; is the conical intersection reference geometry in xyz format. (i.e. it is the last geometry printed out in [[Media:Fulv_ci.log]] )&lt;br /&gt;
&lt;br /&gt;
[[Media:Coin.dat]]&lt;br /&gt;
&lt;br /&gt;
* [[Media:Dd_rotation_v2.x]] The dd_rotation program, written by David, reads  &#039;&#039;start.log&#039;&#039; and &#039;&#039;coin.dat&#039;&#039;files. It will output a file called &#039;&#039;coin.out&#039;&#039; which is a xyz with the rotated conical intersection geometry. The program also outputs to stdout the relevant rotation angles.&lt;br /&gt;
&lt;br /&gt;
The rotated geometry should be visually checked for consistency against the starting geometry.&lt;br /&gt;
&lt;br /&gt;
Taking the rotated geometry it is necessary to perform a new conical intersection optimization to obtain the orbitals and branching space coordinates.&lt;br /&gt;
(this time without the keyword opt=tight)&lt;br /&gt;
&lt;br /&gt;
[[Media:Coin.gjf]]&lt;br /&gt;
[[Media:Coin.log]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Resgrp:comp-photo-dyn/mctdh90.56dv|back]]&lt;/div&gt;</summary>
		<author><name>Vs13</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=File:Coin.dat&amp;diff=333923</id>
		<title>File:Coin.dat</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=File:Coin.dat&amp;diff=333923"/>
		<updated>2013-04-24T13:51:47Z</updated>

		<summary type="html">&lt;p&gt;Vs13: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Vs13</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=File:Start.log&amp;diff=333922</id>
		<title>File:Start.log</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=File:Start.log&amp;diff=333922"/>
		<updated>2013-04-24T13:42:04Z</updated>

		<summary type="html">&lt;p&gt;Vs13: uploaded a new version of &amp;amp;quot;File:Start.log&amp;amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Vs13</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/input&amp;diff=333921</id>
		<title>Resgrp:comp-photo-dyn/mctdh90.56dv Fulvene Tutorial/input</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/input&amp;diff=333921"/>
		<updated>2013-04-24T13:27:04Z</updated>

		<summary type="html">&lt;p&gt;Vs13: /* 7. Optimise the Conical Intersection */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Creating Input for Dynamics Calculations =&lt;br /&gt;
&lt;br /&gt;
== MCTDH (DD-vMCG) versions ==&lt;br /&gt;
&lt;br /&gt;
- Development versions: &lt;br /&gt;
&lt;br /&gt;
* mctdh90dv&lt;br /&gt;
* mctdh90.31dv&lt;br /&gt;
* mctdh90.56dv&lt;br /&gt;
&lt;br /&gt;
The inputs required for the dynamic calculation are an optimised ground state structure and an optimized conical intersection structure in the appropriate orientation. [These two structures are used in the diabatic transformation. They do not necessarily need to correspond to the Franck-Condon and to the minimum conical intersection geometries. However, these structures are usually good places to start and so most of this tutorial will assume that these are the references that have been chosen]. The ground state structure must have been optimized with state averaged orbitals. These orbitals must be &amp;quot;cleaned&amp;quot; and the high precision frequencies must have been calculated.&lt;br /&gt;
&lt;br /&gt;
* Development version ( mctdh90.??dv): The only inputs required for the dynamics calculation are an optimized ground state structure and an optimized conical intersection. The rotation will be &amp;quot;automatic&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
- The main objective of this tutorial is to learn how to run dynamics calculations, thus we will give you the optimised geometries in the appropriate rotation.&lt;br /&gt;
(A description of how to rotate a structure will follow in due course)&lt;br /&gt;
&lt;br /&gt;
== State Averaged Orbitals==&lt;br /&gt;
&lt;br /&gt;
State averaged orbitals are necessary in order to represent both ground and excited states at the same time in the space close to the conical intersection. The &#039;&#039;State Average&#039;&#039; algorithm allows the convergence of CASSCF when two or more states are close. A solution is found between the average of the involved orbitals if they were calculated independently for each state. At the Frank-Condon region, away from the intersection, this is not needed, but the code maintains this approximation over all the PES to avoid discontinuities.&lt;br /&gt;
&lt;br /&gt;
= Gaussian Calculations - CASSCF =&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;1. Generate a starting geometry.&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
First of all, we need a set of initial orbitals for the CASSCF calculation, which can be obtained from a simple restricted Hartree-Fock (RHF/STO-3G) optimisation. It is useful in systems with high symmetry to start with the molecule in the standard orientation and from a symmetrised geometry. This can be achieved by running a Gaussian calculation without the nosymm keyword and using the geometry returned by this calculation.&lt;br /&gt;
&lt;br /&gt;
* NB You should use the structures given in this tutorial because they are  oriented appropriately.&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_s_orient.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_s_orient.log]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;2. Identify the Orbitals Required for the CASSCF Calculation&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
Use the geometry from 1. Calculate the HF orbitals with a tight basis set e.g. STO-3G so that it is easier to identify the relevant orbitals for CASSCF.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;HF/STO-3G pop=full nosymm geom=check&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Nosymm is required because every time a calculation is run on the molecule with a different symmetry Gaussian reorients the molecule for that particular point group and will destroy the active space. Nosymm disables this feature.&lt;br /&gt;
* Pop=full prints out the orbitals.&lt;br /&gt;
* Inspect the orbitals. Select those required for the CASSCF. &lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hf.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hf.log]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hf.fchk]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;3. Identify the State Averaged Orbitals for the Ground State&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
An orbital inspection using any visualization software (e.g. GaussView) before performing any CASSCF calculation is essential to identify which orbitals make up the chosen active space. In some cases it may be necessary to use the &#039;&#039;&#039;guess=alter&#039;&#039;&#039; keyword to change the order of the orbitals to make sure the optimisation (see step 4) proceeds with the correct orbitals. Gaussian assumes that the electrons specified in a CASSCF calculation come from the highest occupied orbitals in the initial guess and then takes the remaining orbitals as the lowest virtuals of this guess. &lt;br /&gt;
&lt;br /&gt;
* In this example, the relevant orbitals are the six pi orbitals, which contain six electrons (so the calculation is 6,6). The six orbitals that form the pi molecular orbitals are 18, 20, 21,22, 23 and 24. Only orbital 18 is not included in the active space. Thus we need to swap orbitals 18 and 19 to get the correct active space. Use the keyword &#039;&#039;&#039;guess=alter&#039;&#039;&#039; .&lt;br /&gt;
&lt;br /&gt;
Use the orbitals chosen in 2. (i.e. use the .chk from 2.) Use the final geometry from 2.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;CAS(6,6,nroot=2,stateaverage)/STO-3G nosymm IOP(5/97=100,10/97=100) guess=(read,alter)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Here, the weights of each state must be listed explicitly. The weights are 0.5 and 0.5. These must be specified by typing 0.5 followed by 7 spaces then 0.5 (on the same line) (The Gaussian program reads 10 characters (inc spaces) for the first weight and another 10 characters for the second weight. Thus the 7 spaces plus the three characters &amp;quot;0&amp;quot;, &amp;quot;.&amp;quot; and &amp;quot;5&amp;quot; make up the first 10 characters before the second weight is read.)&lt;br /&gt;
&lt;br /&gt;
* The IOp (5/97=100,10/97=100) tells the program to switch the order of the two states. This is so that we calculate the ground state rather than the excited state. (Gaussian CASSCF calculations always perform optimisations on the highest state listed, so by switching the order we force optimisation of what is actually the lower state.)&lt;br /&gt;
* Nroot=2 specifies the &#039;&#039;first&#039;&#039; excited state so the orbitals will be averaged over the ground state and the first excited state.&lt;br /&gt;
&lt;br /&gt;
* Inspect the orbitals again after the calculation to check if the active space is correct.&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_orb_sa.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_orb_sa.log]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_orb_sa.fchk]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;4. Perform a CASSCF Optimisation on the Ground State with the State Averaged Orbitals&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
Use the orbitals chosen in 3. Use the .chk from 3.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;CAS(6,6,nroot=2)/STO-3G nosymm opt=conical pop=full IOP(10/10=700005) IOP(5/97=100,10/97=100) geom=check guess=read&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;N.B.&#039;&#039;&#039; This is not a conical intersection optimisation! However, the keyword opt=conical specifies automatically that the populations of the two states will each be 0.5. Thus there is no need to specify the populations manually.&lt;br /&gt;
* The initial &#039;7&#039; in IOp (10/10=700005) specifies that the calculation should be an optimisation to a minimum (rather than a conical intersection). The final &#039;5&#039; ensures that the orbital rotation derivative contributions from the CP-MC-SCF equations are included. (This is necessary and is usually the default. However, in some  version of Gaussian, the combination of &#039;&#039;&#039;opt&#039;&#039;&#039; and &#039;&#039;&#039;stateaverage&#039;&#039;&#039; excludes this).&lt;br /&gt;
* Stateaverage is the default for opt=conical.&lt;br /&gt;
* Nroot=2 is the default for opt=conical.&lt;br /&gt;
* Do not include the keyword &#039;&#039;&#039;freq&#039;&#039;&#039; in the optimisation. (This combination of IOps does not allow &#039;&#039;&#039;opt&#039;&#039;&#039; and &#039;&#039;&#039;freq&#039;&#039;&#039; to be keywords in the same job.)&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_cas.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_cas.log]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;5. &amp;quot;Clean&amp;quot; the Orbitals&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
In this case, all the orbitals in the active space are pure pi orbitals. Due to small numerical inaccuracies, the final orbitals may include small contributions from other (non-pi) orbitals. The aim of this step is to remove these contributions so that the active space consists (in this example) only of contributions from the C 2PY atomic orbitals. The six relevant orbitals are occupied orbitals 19, 20 and 21, and virtual orbitals 22, 23 and 24. In this example they are already clean. Verify this by inspection of the &amp;quot;Molecular Orbital Coefficients&amp;quot; in the population analysis. &lt;br /&gt;
&lt;br /&gt;
In other cases, multiple optimisations may be necessary to clean the orbitals:&lt;br /&gt;
&lt;br /&gt;
Open the file in GaussView, and Edit/Symmetrize. Use this symmetrised geometry as a starting geometry for another optimsation as in 4 (including the keyword &#039;&#039;&#039;nosymm&#039;&#039;&#039;). &lt;br /&gt;
Use the .chk from 4.&lt;br /&gt;
Re-run the optimisation exactly as in 4.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Ideally here we include the keyword &#039;&#039;&#039;opt=(maxstep=1)&#039;&#039;&#039;. This should ensure that the optimisation takes the smallest possible step: we already know that the geometry is very close to the minimum and we need to prevent any significant re-orientation that might occur if large steps are taken. However, this does not seem to work (at least with g03).&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Repeat until the orbitals are clean.&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;6. Calculate the (High Precision) Vibrational Modes for the Ground State &#039;&#039;with State Averaged Orbitals&#039;&#039;&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
Use the .chk and the geometry from 4 (from 5 if you reoptimised the structure in order to clean the orbitals). The geometry must be specified explicitly. (With this combination of IOPs, Gaussian extracts the wrong geometry from the .chk file if &#039;&#039;&#039;geom=checkpoint&#039;&#039;&#039; is specified.)&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;CAS(6,6,nroot=2)/STO-3G freq=hpmodes nosymm pop=full guess=read IOP(5/17=41000200,10/10=700007) IOP(5/97=100,10/97=100)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* IOp (5/17=41000200,10/10=700007) includes the CP-MC-SCF correction (as above) (for a frequency calculation) and specifies state averaged orbitals.&lt;br /&gt;
* Do not include the keyword &#039;&#039;&#039;stateaverage&#039;&#039;&#039; with &#039;&#039;&#039;freq&#039;&#039;&#039; (the current version of Gaussian does not support this).&lt;br /&gt;
* Freq=hpmodes tells Gaussian to print the vibrational modes to 5 decimal places.&lt;br /&gt;
* As before, the IOp (5/97=100,10/97=100) forces calculation of the ground state.&lt;br /&gt;
* Use atom labels rather than numbers (otherwise the dd_generator will not work (see later)).&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hpfreq.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hpfreq.log]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;7. Optimise the Conical Intersection&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
Now we have to locate the conical intersection. To do this, we can run an optimisation from the Frank-Condon point (orbitals and geometry are the same we obtained with the CASSCF calculation in 4.) following (one of) the negative frequency(ies).&lt;br /&gt;
Use the .chk from 4.  A conical intersection optimisation should now locate a conical intersection.&lt;br /&gt;
* Stateaverage is the default for opt=conical.&lt;br /&gt;
* Nroot=2 is the default for opt=conical.&lt;br /&gt;
* To use the the dd_rotation method described in the next section ([[Resgrp:comp-photo-dyn/mctdh90.56dv#Rotation of the Conical Intersection|Rotation of the Conical Intersection]]) it may be convenient to use tighter condition to the optimization of the conical intersection at this stage (i.e. to use the keyword &#039;&#039;&#039;opt=tight&#039;&#039;&#039;).&lt;br /&gt;
The rational of this hack is that after rotation a second conical intersection optimization needs to be perfomed to obtain orbitals and branching space coordinates for the rotated geometry. These quantities cannot be obtained from a single point calculation. In the second optimization the less strict optimization conditions are used such that no actual geometry change is performed.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;CAS(6,6,nroot=2)/STO-3G opt=(conical,tight) nosymm guess=read pop=full&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_ci.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_ci.log]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== [[Resgrp:comp-photo-dyn/mctdh90.56dv|back]] ===&lt;/div&gt;</summary>
		<author><name>Vs13</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/input&amp;diff=333920</id>
		<title>Resgrp:comp-photo-dyn/mctdh90.56dv Fulvene Tutorial/input</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/input&amp;diff=333920"/>
		<updated>2013-04-24T13:16:50Z</updated>

		<summary type="html">&lt;p&gt;Vs13: /* 4. Perform a CASSCF Optimisation on the Ground State with the State Averaged Orbitals */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Creating Input for Dynamics Calculations =&lt;br /&gt;
&lt;br /&gt;
== MCTDH (DD-vMCG) versions ==&lt;br /&gt;
&lt;br /&gt;
- Development versions: &lt;br /&gt;
&lt;br /&gt;
* mctdh90dv&lt;br /&gt;
* mctdh90.31dv&lt;br /&gt;
* mctdh90.56dv&lt;br /&gt;
&lt;br /&gt;
The inputs required for the dynamic calculation are an optimised ground state structure and an optimized conical intersection structure in the appropriate orientation. [These two structures are used in the diabatic transformation. They do not necessarily need to correspond to the Franck-Condon and to the minimum conical intersection geometries. However, these structures are usually good places to start and so most of this tutorial will assume that these are the references that have been chosen]. The ground state structure must have been optimized with state averaged orbitals. These orbitals must be &amp;quot;cleaned&amp;quot; and the high precision frequencies must have been calculated.&lt;br /&gt;
&lt;br /&gt;
* Development version ( mctdh90.??dv): The only inputs required for the dynamics calculation are an optimized ground state structure and an optimized conical intersection. The rotation will be &amp;quot;automatic&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
- The main objective of this tutorial is to learn how to run dynamics calculations, thus we will give you the optimised geometries in the appropriate rotation.&lt;br /&gt;
(A description of how to rotate a structure will follow in due course)&lt;br /&gt;
&lt;br /&gt;
== State Averaged Orbitals==&lt;br /&gt;
&lt;br /&gt;
State averaged orbitals are necessary in order to represent both ground and excited states at the same time in the space close to the conical intersection. The &#039;&#039;State Average&#039;&#039; algorithm allows the convergence of CASSCF when two or more states are close. A solution is found between the average of the involved orbitals if they were calculated independently for each state. At the Frank-Condon region, away from the intersection, this is not needed, but the code maintains this approximation over all the PES to avoid discontinuities.&lt;br /&gt;
&lt;br /&gt;
= Gaussian Calculations - CASSCF =&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;1. Generate a starting geometry.&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
First of all, we need a set of initial orbitals for the CASSCF calculation, which can be obtained from a simple restricted Hartree-Fock (RHF/STO-3G) optimisation. It is useful in systems with high symmetry to start with the molecule in the standard orientation and from a symmetrised geometry. This can be achieved by running a Gaussian calculation without the nosymm keyword and using the geometry returned by this calculation.&lt;br /&gt;
&lt;br /&gt;
* NB You should use the structures given in this tutorial because they are  oriented appropriately.&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_s_orient.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_s_orient.log]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;2. Identify the Orbitals Required for the CASSCF Calculation&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
Use the geometry from 1. Calculate the HF orbitals with a tight basis set e.g. STO-3G so that it is easier to identify the relevant orbitals for CASSCF.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;HF/STO-3G pop=full nosymm geom=check&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Nosymm is required because every time a calculation is run on the molecule with a different symmetry Gaussian reorients the molecule for that particular point group and will destroy the active space. Nosymm disables this feature.&lt;br /&gt;
* Pop=full prints out the orbitals.&lt;br /&gt;
* Inspect the orbitals. Select those required for the CASSCF. &lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hf.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hf.log]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hf.fchk]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;3. Identify the State Averaged Orbitals for the Ground State&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
An orbital inspection using any visualization software (e.g. GaussView) before performing any CASSCF calculation is essential to identify which orbitals make up the chosen active space. In some cases it may be necessary to use the &#039;&#039;&#039;guess=alter&#039;&#039;&#039; keyword to change the order of the orbitals to make sure the optimisation (see step 4) proceeds with the correct orbitals. Gaussian assumes that the electrons specified in a CASSCF calculation come from the highest occupied orbitals in the initial guess and then takes the remaining orbitals as the lowest virtuals of this guess. &lt;br /&gt;
&lt;br /&gt;
* In this example, the relevant orbitals are the six pi orbitals, which contain six electrons (so the calculation is 6,6). The six orbitals that form the pi molecular orbitals are 18, 20, 21,22, 23 and 24. Only orbital 18 is not included in the active space. Thus we need to swap orbitals 18 and 19 to get the correct active space. Use the keyword &#039;&#039;&#039;guess=alter&#039;&#039;&#039; .&lt;br /&gt;
&lt;br /&gt;
Use the orbitals chosen in 2. (i.e. use the .chk from 2.) Use the final geometry from 2.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;CAS(6,6,nroot=2,stateaverage)/STO-3G nosymm IOP(5/97=100,10/97=100) guess=(read,alter)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Here, the weights of each state must be listed explicitly. The weights are 0.5 and 0.5. These must be specified by typing 0.5 followed by 7 spaces then 0.5 (on the same line) (The Gaussian program reads 10 characters (inc spaces) for the first weight and another 10 characters for the second weight. Thus the 7 spaces plus the three characters &amp;quot;0&amp;quot;, &amp;quot;.&amp;quot; and &amp;quot;5&amp;quot; make up the first 10 characters before the second weight is read.)&lt;br /&gt;
&lt;br /&gt;
* The IOp (5/97=100,10/97=100) tells the program to switch the order of the two states. This is so that we calculate the ground state rather than the excited state. (Gaussian CASSCF calculations always perform optimisations on the highest state listed, so by switching the order we force optimisation of what is actually the lower state.)&lt;br /&gt;
* Nroot=2 specifies the &#039;&#039;first&#039;&#039; excited state so the orbitals will be averaged over the ground state and the first excited state.&lt;br /&gt;
&lt;br /&gt;
* Inspect the orbitals again after the calculation to check if the active space is correct.&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_orb_sa.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_orb_sa.log]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_orb_sa.fchk]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;4. Perform a CASSCF Optimisation on the Ground State with the State Averaged Orbitals&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
Use the orbitals chosen in 3. Use the .chk from 3.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;CAS(6,6,nroot=2)/STO-3G nosymm opt=conical pop=full IOP(10/10=700005) IOP(5/97=100,10/97=100) geom=check guess=read&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;N.B.&#039;&#039;&#039; This is not a conical intersection optimisation! However, the keyword opt=conical specifies automatically that the populations of the two states will each be 0.5. Thus there is no need to specify the populations manually.&lt;br /&gt;
* The initial &#039;7&#039; in IOp (10/10=700005) specifies that the calculation should be an optimisation to a minimum (rather than a conical intersection). The final &#039;5&#039; ensures that the orbital rotation derivative contributions from the CP-MC-SCF equations are included. (This is necessary and is usually the default. However, in some  version of Gaussian, the combination of &#039;&#039;&#039;opt&#039;&#039;&#039; and &#039;&#039;&#039;stateaverage&#039;&#039;&#039; excludes this).&lt;br /&gt;
* Stateaverage is the default for opt=conical.&lt;br /&gt;
* Nroot=2 is the default for opt=conical.&lt;br /&gt;
* Do not include the keyword &#039;&#039;&#039;freq&#039;&#039;&#039; in the optimisation. (This combination of IOps does not allow &#039;&#039;&#039;opt&#039;&#039;&#039; and &#039;&#039;&#039;freq&#039;&#039;&#039; to be keywords in the same job.)&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_cas.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_cas.log]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;5. &amp;quot;Clean&amp;quot; the Orbitals&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
In this case, all the orbitals in the active space are pure pi orbitals. Due to small numerical inaccuracies, the final orbitals may include small contributions from other (non-pi) orbitals. The aim of this step is to remove these contributions so that the active space consists (in this example) only of contributions from the C 2PY atomic orbitals. The six relevant orbitals are occupied orbitals 19, 20 and 21, and virtual orbitals 22, 23 and 24. In this example they are already clean. Verify this by inspection of the &amp;quot;Molecular Orbital Coefficients&amp;quot; in the population analysis. &lt;br /&gt;
&lt;br /&gt;
In other cases, multiple optimisations may be necessary to clean the orbitals:&lt;br /&gt;
&lt;br /&gt;
Open the file in GaussView, and Edit/Symmetrize. Use this symmetrised geometry as a starting geometry for another optimsation as in 4 (including the keyword &#039;&#039;&#039;nosymm&#039;&#039;&#039;). &lt;br /&gt;
Use the .chk from 4.&lt;br /&gt;
Re-run the optimisation exactly as in 4.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Ideally here we include the keyword &#039;&#039;&#039;opt=(maxstep=1)&#039;&#039;&#039;. This should ensure that the optimisation takes the smallest possible step: we already know that the geometry is very close to the minimum and we need to prevent any significant re-orientation that might occur if large steps are taken. However, this does not seem to work (at least with g03).&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Repeat until the orbitals are clean.&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;6. Calculate the (High Precision) Vibrational Modes for the Ground State &#039;&#039;with State Averaged Orbitals&#039;&#039;&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
Use the .chk and the geometry from 4 (from 5 if you reoptimised the structure in order to clean the orbitals). The geometry must be specified explicitly. (With this combination of IOPs, Gaussian extracts the wrong geometry from the .chk file if &#039;&#039;&#039;geom=checkpoint&#039;&#039;&#039; is specified.)&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;CAS(6,6,nroot=2)/STO-3G freq=hpmodes nosymm pop=full guess=read IOP(5/17=41000200,10/10=700007) IOP(5/97=100,10/97=100)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* IOp (5/17=41000200,10/10=700007) includes the CP-MC-SCF correction (as above) (for a frequency calculation) and specifies state averaged orbitals.&lt;br /&gt;
* Do not include the keyword &#039;&#039;&#039;stateaverage&#039;&#039;&#039; with &#039;&#039;&#039;freq&#039;&#039;&#039; (the current version of Gaussian does not support this).&lt;br /&gt;
* Freq=hpmodes tells Gaussian to print the vibrational modes to 5 decimal places.&lt;br /&gt;
* As before, the IOp (5/97=100,10/97=100) forces calculation of the ground state.&lt;br /&gt;
* Use atom labels rather than numbers (otherwise the dd_generator will not work (see later)).&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hpfreq.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hpfreq.log]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;7. Optimise the Conical Intersection&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
Now we have to locate the conical intersection.To do this, we can run an optimisation from the Frank-Condon geometry (the geometry is the same we obtained with the CASSCF calculation in 4.) following (one of) the negative frequency(ies).&lt;br /&gt;
Use the .chk from 4.  A conical intersection optimisation should now locate a conical intersection.&lt;br /&gt;
* Stateaverage is the default for opt=conical.&lt;br /&gt;
* Nroot=2 is the default for opt=conical.&lt;br /&gt;
* To use the the dd_rotation method described in the next section ([[Resgrp:comp-photo-dyn/mctdh90.56dv#Rotation of the Conical Intersection|Rotation of the Conical Intersection]]) it may be convenient to use tighter condition to the optimization of the conical intersection at this stage (i.e. to use the keyword &#039;&#039;&#039;opt=tight&#039;&#039;&#039;).&lt;br /&gt;
The rational of this hack is that after rotation a second conical intersection optimization needs to be perfomed to obtain orbitals and branching space coordinates for the rotated geometry. These quantities cannot be obtained from a single point calculation. In the second optimization the less strict optimization conditions are used such that no actual geometry change is performed.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;CAS(6,6,nroot=2)/STO-3G opt=(conical,tight) nosymm guess=read pop=full&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_ci.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_ci.log]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== [[Resgrp:comp-photo-dyn/mctdh90.56dv|back]] ===&lt;/div&gt;</summary>
		<author><name>Vs13</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/input&amp;diff=333919</id>
		<title>Resgrp:comp-photo-dyn/mctdh90.56dv Fulvene Tutorial/input</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/input&amp;diff=333919"/>
		<updated>2013-04-24T13:16:28Z</updated>

		<summary type="html">&lt;p&gt;Vs13: /* 7. Optimise the Conical Intersection */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Creating Input for Dynamics Calculations =&lt;br /&gt;
&lt;br /&gt;
== MCTDH (DD-vMCG) versions ==&lt;br /&gt;
&lt;br /&gt;
- Development versions: &lt;br /&gt;
&lt;br /&gt;
* mctdh90dv&lt;br /&gt;
* mctdh90.31dv&lt;br /&gt;
* mctdh90.56dv&lt;br /&gt;
&lt;br /&gt;
The inputs required for the dynamic calculation are an optimised ground state structure and an optimized conical intersection structure in the appropriate orientation. [These two structures are used in the diabatic transformation. They do not necessarily need to correspond to the Franck-Condon and to the minimum conical intersection geometries. However, these structures are usually good places to start and so most of this tutorial will assume that these are the references that have been chosen]. The ground state structure must have been optimized with state averaged orbitals. These orbitals must be &amp;quot;cleaned&amp;quot; and the high precision frequencies must have been calculated.&lt;br /&gt;
&lt;br /&gt;
* Development version ( mctdh90.??dv): The only inputs required for the dynamics calculation are an optimized ground state structure and an optimized conical intersection. The rotation will be &amp;quot;automatic&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
- The main objective of this tutorial is to learn how to run dynamics calculations, thus we will give you the optimised geometries in the appropriate rotation.&lt;br /&gt;
(A description of how to rotate a structure will follow in due course)&lt;br /&gt;
&lt;br /&gt;
== State Averaged Orbitals==&lt;br /&gt;
&lt;br /&gt;
State averaged orbitals are necessary in order to represent both ground and excited states at the same time in the space close to the conical intersection. The &#039;&#039;State Average&#039;&#039; algorithm allows the convergence of CASSCF when two or more states are close. A solution is found between the average of the involved orbitals if they were calculated independently for each state. At the Frank-Condon region, away from the intersection, this is not needed, but the code maintains this approximation over all the PES to avoid discontinuities.&lt;br /&gt;
&lt;br /&gt;
= Gaussian Calculations - CASSCF =&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;1. Generate a starting geometry.&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
First of all, we need a set of initial orbitals for the CASSCF calculation, which can be obtained from a simple restricted Hartree-Fock (RHF/STO-3G) optimisation. It is useful in systems with high symmetry to start with the molecule in the standard orientation and from a symmetrised geometry. This can be achieved by running a Gaussian calculation without the nosymm keyword and using the geometry returned by this calculation.&lt;br /&gt;
&lt;br /&gt;
* NB You should use the structures given in this tutorial because they are  oriented appropriately.&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_s_orient.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_s_orient.log]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;2. Identify the Orbitals Required for the CASSCF Calculation&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
Use the geometry from 1. Calculate the HF orbitals with a tight basis set e.g. STO-3G so that it is easier to identify the relevant orbitals for CASSCF.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;HF/STO-3G pop=full nosymm geom=check&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Nosymm is required because every time a calculation is run on the molecule with a different symmetry Gaussian reorients the molecule for that particular point group and will destroy the active space. Nosymm disables this feature.&lt;br /&gt;
* Pop=full prints out the orbitals.&lt;br /&gt;
* Inspect the orbitals. Select those required for the CASSCF. &lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hf.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hf.log]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hf.fchk]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;3. Identify the State Averaged Orbitals for the Ground State&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
An orbital inspection using any visualization software (e.g. GaussView) before performing any CASSCF calculation is essential to identify which orbitals make up the chosen active space. In some cases it may be necessary to use the &#039;&#039;&#039;guess=alter&#039;&#039;&#039; keyword to change the order of the orbitals to make sure the optimisation (see step 4) proceeds with the correct orbitals. Gaussian assumes that the electrons specified in a CASSCF calculation come from the highest occupied orbitals in the initial guess and then takes the remaining orbitals as the lowest virtuals of this guess. &lt;br /&gt;
&lt;br /&gt;
* In this example, the relevant orbitals are the six pi orbitals, which contain six electrons (so the calculation is 6,6). The six orbitals that form the pi molecular orbitals are 18, 20, 21,22, 23 and 24. Only orbital 18 is not included in the active space. Thus we need to swap orbitals 18 and 19 to get the correct active space. Use the keyword &#039;&#039;&#039;guess=alter&#039;&#039;&#039; .&lt;br /&gt;
&lt;br /&gt;
Use the orbitals chosen in 2. (i.e. use the .chk from 2.) Use the final geometry from 2.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;CAS(6,6,nroot=2,stateaverage)/STO-3G nosymm IOP(5/97=100,10/97=100) guess=(read,alter)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Here, the weights of each state must be listed explicitly. The weights are 0.5 and 0.5. These must be specified by typing 0.5 followed by 7 spaces then 0.5 (on the same line) (The Gaussian program reads 10 characters (inc spaces) for the first weight and another 10 characters for the second weight. Thus the 7 spaces plus the three characters &amp;quot;0&amp;quot;, &amp;quot;.&amp;quot; and &amp;quot;5&amp;quot; make up the first 10 characters before the second weight is read.)&lt;br /&gt;
&lt;br /&gt;
* The IOp (5/97=100,10/97=100) tells the program to switch the order of the two states. This is so that we calculate the ground state rather than the excited state. (Gaussian CASSCF calculations always perform optimisations on the highest state listed, so by switching the order we force optimisation of what is actually the lower state.)&lt;br /&gt;
* Nroot=2 specifies the &#039;&#039;first&#039;&#039; excited state so the orbitals will be averaged over the ground state and the first excited state.&lt;br /&gt;
&lt;br /&gt;
* Inspect the orbitals again after the calculation to check if the active space is correct.&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_orb_sa.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_orb_sa.log]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_orb_sa.fchk]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;4. Perform a CASSCF Optimisation on the Ground State with the State Averaged Orbitals&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
Use the orbitals chosen in 3. Use the .chk from 3.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;#P CAS(6,6,nroot=2)/STO-3G nosymm opt=conical pop=full IOP(10/10=700005) IOP(5/97=100,10/97=100) geom=check guess=read&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;N.B.&#039;&#039;&#039; This is not a conical intersection optimisation! However, the keyword opt=conical specifies automatically that the populations of the two states will each be 0.5. Thus there is no need to specify the populations manually.&lt;br /&gt;
* The initial &#039;7&#039; in IOp (10/10=700005) specifies that the calculation should be an optimisation to a minimum (rather than a conical intersection). The final &#039;5&#039; ensures that the orbital rotation derivative contributions from the CP-MC-SCF equations are included. (This is necessary and is usually the default. However, in some  version of Gaussian, the combination of &#039;&#039;&#039;opt&#039;&#039;&#039; and &#039;&#039;&#039;stateaverage&#039;&#039;&#039; excludes this).&lt;br /&gt;
* Stateaverage is the default for opt=conical.&lt;br /&gt;
* Nroot=2 is the default for opt=conical.&lt;br /&gt;
* Do not include the keyword &#039;&#039;&#039;freq&#039;&#039;&#039; in the optimisation. (This combination of IOps does not allow &#039;&#039;&#039;opt&#039;&#039;&#039; and &#039;&#039;&#039;freq&#039;&#039;&#039; to be keywords in the same job.)&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_cas.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_cas.log]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;5. &amp;quot;Clean&amp;quot; the Orbitals&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
In this case, all the orbitals in the active space are pure pi orbitals. Due to small numerical inaccuracies, the final orbitals may include small contributions from other (non-pi) orbitals. The aim of this step is to remove these contributions so that the active space consists (in this example) only of contributions from the C 2PY atomic orbitals. The six relevant orbitals are occupied orbitals 19, 20 and 21, and virtual orbitals 22, 23 and 24. In this example they are already clean. Verify this by inspection of the &amp;quot;Molecular Orbital Coefficients&amp;quot; in the population analysis. &lt;br /&gt;
&lt;br /&gt;
In other cases, multiple optimisations may be necessary to clean the orbitals:&lt;br /&gt;
&lt;br /&gt;
Open the file in GaussView, and Edit/Symmetrize. Use this symmetrised geometry as a starting geometry for another optimsation as in 4 (including the keyword &#039;&#039;&#039;nosymm&#039;&#039;&#039;). &lt;br /&gt;
Use the .chk from 4.&lt;br /&gt;
Re-run the optimisation exactly as in 4.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Ideally here we include the keyword &#039;&#039;&#039;opt=(maxstep=1)&#039;&#039;&#039;. This should ensure that the optimisation takes the smallest possible step: we already know that the geometry is very close to the minimum and we need to prevent any significant re-orientation that might occur if large steps are taken. However, this does not seem to work (at least with g03).&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Repeat until the orbitals are clean.&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;6. Calculate the (High Precision) Vibrational Modes for the Ground State &#039;&#039;with State Averaged Orbitals&#039;&#039;&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
Use the .chk and the geometry from 4 (from 5 if you reoptimised the structure in order to clean the orbitals). The geometry must be specified explicitly. (With this combination of IOPs, Gaussian extracts the wrong geometry from the .chk file if &#039;&#039;&#039;geom=checkpoint&#039;&#039;&#039; is specified.)&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;CAS(6,6,nroot=2)/STO-3G freq=hpmodes nosymm pop=full guess=read IOP(5/17=41000200,10/10=700007) IOP(5/97=100,10/97=100)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* IOp (5/17=41000200,10/10=700007) includes the CP-MC-SCF correction (as above) (for a frequency calculation) and specifies state averaged orbitals.&lt;br /&gt;
* Do not include the keyword &#039;&#039;&#039;stateaverage&#039;&#039;&#039; with &#039;&#039;&#039;freq&#039;&#039;&#039; (the current version of Gaussian does not support this).&lt;br /&gt;
* Freq=hpmodes tells Gaussian to print the vibrational modes to 5 decimal places.&lt;br /&gt;
* As before, the IOp (5/97=100,10/97=100) forces calculation of the ground state.&lt;br /&gt;
* Use atom labels rather than numbers (otherwise the dd_generator will not work (see later)).&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hpfreq.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hpfreq.log]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;7. Optimise the Conical Intersection&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
Now we have to locate the conical intersection.To do this, we can run an optimisation from the Frank-Condon geometry (the geometry is the same we obtained with the CASSCF calculation in 4.) following (one of) the negative frequency(ies).&lt;br /&gt;
Use the .chk from 4.  A conical intersection optimisation should now locate a conical intersection.&lt;br /&gt;
* Stateaverage is the default for opt=conical.&lt;br /&gt;
* Nroot=2 is the default for opt=conical.&lt;br /&gt;
* To use the the dd_rotation method described in the next section ([[Resgrp:comp-photo-dyn/mctdh90.56dv#Rotation of the Conical Intersection|Rotation of the Conical Intersection]]) it may be convenient to use tighter condition to the optimization of the conical intersection at this stage (i.e. to use the keyword &#039;&#039;&#039;opt=tight&#039;&#039;&#039;).&lt;br /&gt;
The rational of this hack is that after rotation a second conical intersection optimization needs to be perfomed to obtain orbitals and branching space coordinates for the rotated geometry. These quantities cannot be obtained from a single point calculation. In the second optimization the less strict optimization conditions are used such that no actual geometry change is performed.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;CAS(6,6,nroot=2)/STO-3G opt=(conical,tight) nosymm guess=read pop=full&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_ci.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_ci.log]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== [[Resgrp:comp-photo-dyn/mctdh90.56dv|back]] ===&lt;/div&gt;</summary>
		<author><name>Vs13</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/input&amp;diff=333918</id>
		<title>Resgrp:comp-photo-dyn/mctdh90.56dv Fulvene Tutorial/input</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/input&amp;diff=333918"/>
		<updated>2013-04-24T13:15:57Z</updated>

		<summary type="html">&lt;p&gt;Vs13: /* 7. The Conical Intersection */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Creating Input for Dynamics Calculations =&lt;br /&gt;
&lt;br /&gt;
== MCTDH (DD-vMCG) versions ==&lt;br /&gt;
&lt;br /&gt;
- Development versions: &lt;br /&gt;
&lt;br /&gt;
* mctdh90dv&lt;br /&gt;
* mctdh90.31dv&lt;br /&gt;
* mctdh90.56dv&lt;br /&gt;
&lt;br /&gt;
The inputs required for the dynamic calculation are an optimised ground state structure and an optimized conical intersection structure in the appropriate orientation. [These two structures are used in the diabatic transformation. They do not necessarily need to correspond to the Franck-Condon and to the minimum conical intersection geometries. However, these structures are usually good places to start and so most of this tutorial will assume that these are the references that have been chosen]. The ground state structure must have been optimized with state averaged orbitals. These orbitals must be &amp;quot;cleaned&amp;quot; and the high precision frequencies must have been calculated.&lt;br /&gt;
&lt;br /&gt;
* Development version ( mctdh90.??dv): The only inputs required for the dynamics calculation are an optimized ground state structure and an optimized conical intersection. The rotation will be &amp;quot;automatic&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
- The main objective of this tutorial is to learn how to run dynamics calculations, thus we will give you the optimised geometries in the appropriate rotation.&lt;br /&gt;
(A description of how to rotate a structure will follow in due course)&lt;br /&gt;
&lt;br /&gt;
== State Averaged Orbitals==&lt;br /&gt;
&lt;br /&gt;
State averaged orbitals are necessary in order to represent both ground and excited states at the same time in the space close to the conical intersection. The &#039;&#039;State Average&#039;&#039; algorithm allows the convergence of CASSCF when two or more states are close. A solution is found between the average of the involved orbitals if they were calculated independently for each state. At the Frank-Condon region, away from the intersection, this is not needed, but the code maintains this approximation over all the PES to avoid discontinuities.&lt;br /&gt;
&lt;br /&gt;
= Gaussian Calculations - CASSCF =&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;1. Generate a starting geometry.&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
First of all, we need a set of initial orbitals for the CASSCF calculation, which can be obtained from a simple restricted Hartree-Fock (RHF/STO-3G) optimisation. It is useful in systems with high symmetry to start with the molecule in the standard orientation and from a symmetrised geometry. This can be achieved by running a Gaussian calculation without the nosymm keyword and using the geometry returned by this calculation.&lt;br /&gt;
&lt;br /&gt;
* NB You should use the structures given in this tutorial because they are  oriented appropriately.&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_s_orient.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_s_orient.log]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;2. Identify the Orbitals Required for the CASSCF Calculation&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
Use the geometry from 1. Calculate the HF orbitals with a tight basis set e.g. STO-3G so that it is easier to identify the relevant orbitals for CASSCF.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;HF/STO-3G pop=full nosymm geom=check&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Nosymm is required because every time a calculation is run on the molecule with a different symmetry Gaussian reorients the molecule for that particular point group and will destroy the active space. Nosymm disables this feature.&lt;br /&gt;
* Pop=full prints out the orbitals.&lt;br /&gt;
* Inspect the orbitals. Select those required for the CASSCF. &lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hf.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hf.log]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hf.fchk]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;3. Identify the State Averaged Orbitals for the Ground State&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
An orbital inspection using any visualization software (e.g. GaussView) before performing any CASSCF calculation is essential to identify which orbitals make up the chosen active space. In some cases it may be necessary to use the &#039;&#039;&#039;guess=alter&#039;&#039;&#039; keyword to change the order of the orbitals to make sure the optimisation (see step 4) proceeds with the correct orbitals. Gaussian assumes that the electrons specified in a CASSCF calculation come from the highest occupied orbitals in the initial guess and then takes the remaining orbitals as the lowest virtuals of this guess. &lt;br /&gt;
&lt;br /&gt;
* In this example, the relevant orbitals are the six pi orbitals, which contain six electrons (so the calculation is 6,6). The six orbitals that form the pi molecular orbitals are 18, 20, 21,22, 23 and 24. Only orbital 18 is not included in the active space. Thus we need to swap orbitals 18 and 19 to get the correct active space. Use the keyword &#039;&#039;&#039;guess=alter&#039;&#039;&#039; .&lt;br /&gt;
&lt;br /&gt;
Use the orbitals chosen in 2. (i.e. use the .chk from 2.) Use the final geometry from 2.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;CAS(6,6,nroot=2,stateaverage)/STO-3G nosymm IOP(5/97=100,10/97=100) guess=(read,alter)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Here, the weights of each state must be listed explicitly. The weights are 0.5 and 0.5. These must be specified by typing 0.5 followed by 7 spaces then 0.5 (on the same line) (The Gaussian program reads 10 characters (inc spaces) for the first weight and another 10 characters for the second weight. Thus the 7 spaces plus the three characters &amp;quot;0&amp;quot;, &amp;quot;.&amp;quot; and &amp;quot;5&amp;quot; make up the first 10 characters before the second weight is read.)&lt;br /&gt;
&lt;br /&gt;
* The IOp (5/97=100,10/97=100) tells the program to switch the order of the two states. This is so that we calculate the ground state rather than the excited state. (Gaussian CASSCF calculations always perform optimisations on the highest state listed, so by switching the order we force optimisation of what is actually the lower state.)&lt;br /&gt;
* Nroot=2 specifies the &#039;&#039;first&#039;&#039; excited state so the orbitals will be averaged over the ground state and the first excited state.&lt;br /&gt;
&lt;br /&gt;
* Inspect the orbitals again after the calculation to check if the active space is correct.&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_orb_sa.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_orb_sa.log]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_orb_sa.fchk]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;4. Perform a CASSCF Optimisation on the Ground State with the State Averaged Orbitals&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
Use the orbitals chosen in 3. Use the .chk from 3.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;#P CAS(6,6,nroot=2)/STO-3G nosymm opt=conical pop=full IOP(10/10=700005) IOP(5/97=100,10/97=100) geom=check guess=read&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;N.B.&#039;&#039;&#039; This is not a conical intersection optimisation! However, the keyword opt=conical specifies automatically that the populations of the two states will each be 0.5. Thus there is no need to specify the populations manually.&lt;br /&gt;
* The initial &#039;7&#039; in IOp (10/10=700005) specifies that the calculation should be an optimisation to a minimum (rather than a conical intersection). The final &#039;5&#039; ensures that the orbital rotation derivative contributions from the CP-MC-SCF equations are included. (This is necessary and is usually the default. However, in some  version of Gaussian, the combination of &#039;&#039;&#039;opt&#039;&#039;&#039; and &#039;&#039;&#039;stateaverage&#039;&#039;&#039; excludes this).&lt;br /&gt;
* Stateaverage is the default for opt=conical.&lt;br /&gt;
* Nroot=2 is the default for opt=conical.&lt;br /&gt;
* Do not include the keyword &#039;&#039;&#039;freq&#039;&#039;&#039; in the optimisation. (This combination of IOps does not allow &#039;&#039;&#039;opt&#039;&#039;&#039; and &#039;&#039;&#039;freq&#039;&#039;&#039; to be keywords in the same job.)&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_cas.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_cas.log]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;5. &amp;quot;Clean&amp;quot; the Orbitals&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
In this case, all the orbitals in the active space are pure pi orbitals. Due to small numerical inaccuracies, the final orbitals may include small contributions from other (non-pi) orbitals. The aim of this step is to remove these contributions so that the active space consists (in this example) only of contributions from the C 2PY atomic orbitals. The six relevant orbitals are occupied orbitals 19, 20 and 21, and virtual orbitals 22, 23 and 24. In this example they are already clean. Verify this by inspection of the &amp;quot;Molecular Orbital Coefficients&amp;quot; in the population analysis. &lt;br /&gt;
&lt;br /&gt;
In other cases, multiple optimisations may be necessary to clean the orbitals:&lt;br /&gt;
&lt;br /&gt;
Open the file in GaussView, and Edit/Symmetrize. Use this symmetrised geometry as a starting geometry for another optimsation as in 4 (including the keyword &#039;&#039;&#039;nosymm&#039;&#039;&#039;). &lt;br /&gt;
Use the .chk from 4.&lt;br /&gt;
Re-run the optimisation exactly as in 4.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Ideally here we include the keyword &#039;&#039;&#039;opt=(maxstep=1)&#039;&#039;&#039;. This should ensure that the optimisation takes the smallest possible step: we already know that the geometry is very close to the minimum and we need to prevent any significant re-orientation that might occur if large steps are taken. However, this does not seem to work (at least with g03).&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Repeat until the orbitals are clean.&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;6. Calculate the (High Precision) Vibrational Modes for the Ground State &#039;&#039;with State Averaged Orbitals&#039;&#039;&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
Use the .chk and the geometry from 4 (from 5 if you reoptimised the structure in order to clean the orbitals). The geometry must be specified explicitly. (With this combination of IOPs, Gaussian extracts the wrong geometry from the .chk file if &#039;&#039;&#039;geom=checkpoint&#039;&#039;&#039; is specified.)&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;CAS(6,6,nroot=2)/STO-3G freq=hpmodes nosymm pop=full guess=read IOP(5/17=41000200,10/10=700007) IOP(5/97=100,10/97=100)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* IOp (5/17=41000200,10/10=700007) includes the CP-MC-SCF correction (as above) (for a frequency calculation) and specifies state averaged orbitals.&lt;br /&gt;
* Do not include the keyword &#039;&#039;&#039;stateaverage&#039;&#039;&#039; with &#039;&#039;&#039;freq&#039;&#039;&#039; (the current version of Gaussian does not support this).&lt;br /&gt;
* Freq=hpmodes tells Gaussian to print the vibrational modes to 5 decimal places.&lt;br /&gt;
* As before, the IOp (5/97=100,10/97=100) forces calculation of the ground state.&lt;br /&gt;
* Use atom labels rather than numbers (otherwise the dd_generator will not work (see later)).&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hpfreq.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hpfreq.log]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;7. Optimise the Conical Intersection&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
Now we have to locate the conical intersection.To do this, we can run an optimisation from the Frank-Condon geometry (the geometry is the same we obtained with the CASSCF calculation in 4.) following (one of) the negative frequency(ies).&lt;br /&gt;
Use the .chk from 4.  A conical intersection optimisation should now locate a conical intersection.&lt;br /&gt;
* Stateaverage is the default for opt=conical.&lt;br /&gt;
* Nroot=2 is the default for opt=conical.&lt;br /&gt;
* To use the the dd_rotation method described in the next section ([[Resgrp:comp-photo-dyn/mctdh90.56dv#Rotation of the Conical Intersection|Rotation of the Conical Intersection]]) it may be convenient to use tighter condition to the optimization of the conical intersection at this stage (i.e. to use the keyword &#039;&#039;&#039;tight&#039;&#039;&#039;).&lt;br /&gt;
The rational of this hack is that after rotation a second conical intersection optimization needs to be perfomed to obtain orbitals and branching space coordinates for the rotated geometry. These quantities cannot be obtained from a single point calculation. In the second optimization the less strict optimization conditions are used such that no actual geometry change is performed.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;CAS(6,6,nroot=2)/STO-3G opt=(conical,tight) nosymm guess=read pop=full&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_ci.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_ci.log]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== [[Resgrp:comp-photo-dyn/mctdh90.56dv|back]] ===&lt;/div&gt;</summary>
		<author><name>Vs13</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/input&amp;diff=333917</id>
		<title>Resgrp:comp-photo-dyn/mctdh90.56dv Fulvene Tutorial/input</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/input&amp;diff=333917"/>
		<updated>2013-04-24T13:10:22Z</updated>

		<summary type="html">&lt;p&gt;Vs13: /* 7. The Conical Intersection */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Creating Input for Dynamics Calculations =&lt;br /&gt;
&lt;br /&gt;
== MCTDH (DD-vMCG) versions ==&lt;br /&gt;
&lt;br /&gt;
- Development versions: &lt;br /&gt;
&lt;br /&gt;
* mctdh90dv&lt;br /&gt;
* mctdh90.31dv&lt;br /&gt;
* mctdh90.56dv&lt;br /&gt;
&lt;br /&gt;
The inputs required for the dynamic calculation are an optimised ground state structure and an optimized conical intersection structure in the appropriate orientation. [These two structures are used in the diabatic transformation. They do not necessarily need to correspond to the Franck-Condon and to the minimum conical intersection geometries. However, these structures are usually good places to start and so most of this tutorial will assume that these are the references that have been chosen]. The ground state structure must have been optimized with state averaged orbitals. These orbitals must be &amp;quot;cleaned&amp;quot; and the high precision frequencies must have been calculated.&lt;br /&gt;
&lt;br /&gt;
* Development version ( mctdh90.??dv): The only inputs required for the dynamics calculation are an optimized ground state structure and an optimized conical intersection. The rotation will be &amp;quot;automatic&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
- The main objective of this tutorial is to learn how to run dynamics calculations, thus we will give you the optimised geometries in the appropriate rotation.&lt;br /&gt;
(A description of how to rotate a structure will follow in due course)&lt;br /&gt;
&lt;br /&gt;
== State Averaged Orbitals==&lt;br /&gt;
&lt;br /&gt;
State averaged orbitals are necessary in order to represent both ground and excited states at the same time in the space close to the conical intersection. The &#039;&#039;State Average&#039;&#039; algorithm allows the convergence of CASSCF when two or more states are close. A solution is found between the average of the involved orbitals if they were calculated independently for each state. At the Frank-Condon region, away from the intersection, this is not needed, but the code maintains this approximation over all the PES to avoid discontinuities.&lt;br /&gt;
&lt;br /&gt;
= Gaussian Calculations - CASSCF =&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;1. Generate a starting geometry.&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
First of all, we need a set of initial orbitals for the CASSCF calculation, which can be obtained from a simple restricted Hartree-Fock (RHF/STO-3G) optimisation. It is useful in systems with high symmetry to start with the molecule in the standard orientation and from a symmetrised geometry. This can be achieved by running a Gaussian calculation without the nosymm keyword and using the geometry returned by this calculation.&lt;br /&gt;
&lt;br /&gt;
* NB You should use the structures given in this tutorial because they are  oriented appropriately.&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_s_orient.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_s_orient.log]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;2. Identify the Orbitals Required for the CASSCF Calculation&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
Use the geometry from 1. Calculate the HF orbitals with a tight basis set e.g. STO-3G so that it is easier to identify the relevant orbitals for CASSCF.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;HF/STO-3G pop=full nosymm geom=check&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Nosymm is required because every time a calculation is run on the molecule with a different symmetry Gaussian reorients the molecule for that particular point group and will destroy the active space. Nosymm disables this feature.&lt;br /&gt;
* Pop=full prints out the orbitals.&lt;br /&gt;
* Inspect the orbitals. Select those required for the CASSCF. &lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hf.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hf.log]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hf.fchk]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;3. Identify the State Averaged Orbitals for the Ground State&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
An orbital inspection using any visualization software (e.g. GaussView) before performing any CASSCF calculation is essential to identify which orbitals make up the chosen active space. In some cases it may be necessary to use the &#039;&#039;&#039;guess=alter&#039;&#039;&#039; keyword to change the order of the orbitals to make sure the optimisation (see step 4) proceeds with the correct orbitals. Gaussian assumes that the electrons specified in a CASSCF calculation come from the highest occupied orbitals in the initial guess and then takes the remaining orbitals as the lowest virtuals of this guess. &lt;br /&gt;
&lt;br /&gt;
* In this example, the relevant orbitals are the six pi orbitals, which contain six electrons (so the calculation is 6,6). The six orbitals that form the pi molecular orbitals are 18, 20, 21,22, 23 and 24. Only orbital 18 is not included in the active space. Thus we need to swap orbitals 18 and 19 to get the correct active space. Use the keyword &#039;&#039;&#039;guess=alter&#039;&#039;&#039; .&lt;br /&gt;
&lt;br /&gt;
Use the orbitals chosen in 2. (i.e. use the .chk from 2.) Use the final geometry from 2.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;CAS(6,6,nroot=2,stateaverage)/STO-3G nosymm IOP(5/97=100,10/97=100) guess=(read,alter)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Here, the weights of each state must be listed explicitly. The weights are 0.5 and 0.5. These must be specified by typing 0.5 followed by 7 spaces then 0.5 (on the same line) (The Gaussian program reads 10 characters (inc spaces) for the first weight and another 10 characters for the second weight. Thus the 7 spaces plus the three characters &amp;quot;0&amp;quot;, &amp;quot;.&amp;quot; and &amp;quot;5&amp;quot; make up the first 10 characters before the second weight is read.)&lt;br /&gt;
&lt;br /&gt;
* The IOp (5/97=100,10/97=100) tells the program to switch the order of the two states. This is so that we calculate the ground state rather than the excited state. (Gaussian CASSCF calculations always perform optimisations on the highest state listed, so by switching the order we force optimisation of what is actually the lower state.)&lt;br /&gt;
* Nroot=2 specifies the &#039;&#039;first&#039;&#039; excited state so the orbitals will be averaged over the ground state and the first excited state.&lt;br /&gt;
&lt;br /&gt;
* Inspect the orbitals again after the calculation to check if the active space is correct.&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_orb_sa.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_orb_sa.log]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_orb_sa.fchk]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;4. Perform a CASSCF Optimisation on the Ground State with the State Averaged Orbitals&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
Use the orbitals chosen in 3. Use the .chk from 3.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;#P CAS(6,6,nroot=2)/STO-3G nosymm opt=conical pop=full IOP(10/10=700005) IOP(5/97=100,10/97=100) geom=check guess=read&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;N.B.&#039;&#039;&#039; This is not a conical intersection optimisation! However, the keyword opt=conical specifies automatically that the populations of the two states will each be 0.5. Thus there is no need to specify the populations manually.&lt;br /&gt;
* The initial &#039;7&#039; in IOp (10/10=700005) specifies that the calculation should be an optimisation to a minimum (rather than a conical intersection). The final &#039;5&#039; ensures that the orbital rotation derivative contributions from the CP-MC-SCF equations are included. (This is necessary and is usually the default. However, in some  version of Gaussian, the combination of &#039;&#039;&#039;opt&#039;&#039;&#039; and &#039;&#039;&#039;stateaverage&#039;&#039;&#039; excludes this).&lt;br /&gt;
* Stateaverage is the default for opt=conical.&lt;br /&gt;
* Nroot=2 is the default for opt=conical.&lt;br /&gt;
* Do not include the keyword &#039;&#039;&#039;freq&#039;&#039;&#039; in the optimisation. (This combination of IOps does not allow &#039;&#039;&#039;opt&#039;&#039;&#039; and &#039;&#039;&#039;freq&#039;&#039;&#039; to be keywords in the same job.)&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_cas.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_cas.log]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;5. &amp;quot;Clean&amp;quot; the Orbitals&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
In this case, all the orbitals in the active space are pure pi orbitals. Due to small numerical inaccuracies, the final orbitals may include small contributions from other (non-pi) orbitals. The aim of this step is to remove these contributions so that the active space consists (in this example) only of contributions from the C 2PY atomic orbitals. The six relevant orbitals are occupied orbitals 19, 20 and 21, and virtual orbitals 22, 23 and 24. In this example they are already clean. Verify this by inspection of the &amp;quot;Molecular Orbital Coefficients&amp;quot; in the population analysis. &lt;br /&gt;
&lt;br /&gt;
In other cases, multiple optimisations may be necessary to clean the orbitals:&lt;br /&gt;
&lt;br /&gt;
Open the file in GaussView, and Edit/Symmetrize. Use this symmetrised geometry as a starting geometry for another optimsation as in 4 (including the keyword &#039;&#039;&#039;nosymm&#039;&#039;&#039;). &lt;br /&gt;
Use the .chk from 4.&lt;br /&gt;
Re-run the optimisation exactly as in 4.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Ideally here we include the keyword &#039;&#039;&#039;opt=(maxstep=1)&#039;&#039;&#039;. This should ensure that the optimisation takes the smallest possible step: we already know that the geometry is very close to the minimum and we need to prevent any significant re-orientation that might occur if large steps are taken. However, this does not seem to work (at least with g03).&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Repeat until the orbitals are clean.&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;6. Calculate the (High Precision) Vibrational Modes for the Ground State &#039;&#039;with State Averaged Orbitals&#039;&#039;&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
Use the .chk and the geometry from 4 (from 5 if you reoptimised the structure in order to clean the orbitals). The geometry must be specified explicitly. (With this combination of IOPs, Gaussian extracts the wrong geometry from the .chk file if &#039;&#039;&#039;geom=checkpoint&#039;&#039;&#039; is specified.)&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;CAS(6,6,nroot=2)/STO-3G freq=hpmodes nosymm pop=full guess=read IOP(5/17=41000200,10/10=700007) IOP(5/97=100,10/97=100)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* IOp (5/17=41000200,10/10=700007) includes the CP-MC-SCF correction (as above) (for a frequency calculation) and specifies state averaged orbitals.&lt;br /&gt;
* Do not include the keyword &#039;&#039;&#039;stateaverage&#039;&#039;&#039; with &#039;&#039;&#039;freq&#039;&#039;&#039; (the current version of Gaussian does not support this).&lt;br /&gt;
* Freq=hpmodes tells Gaussian to print the vibrational modes to 5 decimal places.&lt;br /&gt;
* As before, the IOp (5/97=100,10/97=100) forces calculation of the ground state.&lt;br /&gt;
* Use atom labels rather than numbers (otherwise the dd_generator will not work (see later)).&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hpfreq.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hpfreq.log]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;7. The Conical Intersection&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
Now we have to locate the conical intersection.To do this, we can run an optimisation from the Frank-Condon geometry (we obtained it with the CASSCF calculation in 4) following (one of) the negative frequency(ies).&lt;br /&gt;
&lt;br /&gt;
=== Optimise the Conical Intersection ===&lt;br /&gt;
&lt;br /&gt;
Use the .chk from 4.  A conical intersection optimisation should now locate a conical intersection.&lt;br /&gt;
* Stateaverage is the default for opt=conical.&lt;br /&gt;
* Nroot=2 is the default for opt=conical.&lt;br /&gt;
* To use the the dd_rotation method described in the next section ([[Resgrp:comp-photo-dyn/mctdh90.56dv#Rotation of the Conical Intersection|Rotation of the Conical Intersection]]) it may be convenient to use tighter condition (i.e. to use the keyword &#039;&#039;&#039;tight&#039;&#039;&#039;) to the optimization of the conical intersection at this stage.&lt;br /&gt;
The rational of this hack is that after rotation a second conical intersection optimization needs to be perfomed to obtain orbitals and branching space coordinates for the rotated geometry. These quantities cannot be obtained from a single point calculation. In the second optimization the less strict optimization conditions are used such that no actual geometry change is performed.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;CAS(6,6,nroot=2)/STO-3G opt=(conical,tight) nosymm guess=read pop=full&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_ci.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_ci.log]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== [[Resgrp:comp-photo-dyn/mctdh90.56dv|back]] ===&lt;/div&gt;</summary>
		<author><name>Vs13</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/input&amp;diff=333916</id>
		<title>Resgrp:comp-photo-dyn/mctdh90.56dv Fulvene Tutorial/input</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/input&amp;diff=333916"/>
		<updated>2013-04-24T10:00:00Z</updated>

		<summary type="html">&lt;p&gt;Vs13: /* 7. The Conical Intersection */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Creating Input for Dynamics Calculations =&lt;br /&gt;
&lt;br /&gt;
== MCTDH (DD-vMCG) versions ==&lt;br /&gt;
&lt;br /&gt;
- Development versions: &lt;br /&gt;
&lt;br /&gt;
* mctdh90dv&lt;br /&gt;
* mctdh90.31dv&lt;br /&gt;
* mctdh90.56dv&lt;br /&gt;
&lt;br /&gt;
The inputs required for the dynamic calculation are an optimised ground state structure and an optimized conical intersection structure in the appropriate orientation. [These two structures are used in the diabatic transformation. They do not necessarily need to correspond to the Franck-Condon and to the minimum conical intersection geometries. However, these structures are usually good places to start and so most of this tutorial will assume that these are the references that have been chosen]. The ground state structure must have been optimized with state averaged orbitals. These orbitals must be &amp;quot;cleaned&amp;quot; and the high precision frequencies must have been calculated.&lt;br /&gt;
&lt;br /&gt;
* Development version ( mctdh90.??dv): The only inputs required for the dynamics calculation are an optimized ground state structure and an optimized conical intersection. The rotation will be &amp;quot;automatic&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
- The main objective of this tutorial is to learn how to run dynamics calculations, thus we will give you the optimised geometries in the appropriate rotation.&lt;br /&gt;
(A description of how to rotate a structure will follow in due course)&lt;br /&gt;
&lt;br /&gt;
== State Averaged Orbitals==&lt;br /&gt;
&lt;br /&gt;
State averaged orbitals are necessary in order to represent both ground and excited states at the same time in the space close to the conical intersection. The &#039;&#039;State Average&#039;&#039; algorithm allows the convergence of CASSCF when two or more states are close. A solution is found between the average of the involved orbitals if they were calculated independently for each state. At the Frank-Condon region, away from the intersection, this is not needed, but the code maintains this approximation over all the PES to avoid discontinuities.&lt;br /&gt;
&lt;br /&gt;
= Gaussian Calculations - CASSCF =&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;1. Generate a starting geometry.&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
First of all, we need a set of initial orbitals for the CASSCF calculation, which can be obtained from a simple restricted Hartree-Fock (RHF/STO-3G) optimisation. It is useful in systems with high symmetry to start with the molecule in the standard orientation and from a symmetrised geometry. This can be achieved by running a Gaussian calculation without the nosymm keyword and using the geometry returned by this calculation.&lt;br /&gt;
&lt;br /&gt;
* NB You should use the structures given in this tutorial because they are  oriented appropriately.&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_s_orient.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_s_orient.log]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;2. Identify the Orbitals Required for the CASSCF Calculation&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
Use the geometry from 1. Calculate the HF orbitals with a tight basis set e.g. STO-3G so that it is easier to identify the relevant orbitals for CASSCF.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;HF/STO-3G pop=full nosymm geom=check&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Nosymm is required because every time a calculation is run on the molecule with a different symmetry Gaussian reorients the molecule for that particular point group and will destroy the active space. Nosymm disables this feature.&lt;br /&gt;
* Pop=full prints out the orbitals.&lt;br /&gt;
* Inspect the orbitals. Select those required for the CASSCF. &lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hf.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hf.log]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hf.fchk]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;3. Identify the State Averaged Orbitals for the Ground State&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
An orbital inspection using any visualization software (e.g. GaussView) before performing any CASSCF calculation is essential to identify which orbitals make up the chosen active space. In some cases it may be necessary to use the &#039;&#039;&#039;guess=alter&#039;&#039;&#039; keyword to change the order of the orbitals to make sure the optimisation (see step 4) proceeds with the correct orbitals. Gaussian assumes that the electrons specified in a CASSCF calculation come from the highest occupied orbitals in the initial guess and then takes the remaining orbitals as the lowest virtuals of this guess. &lt;br /&gt;
&lt;br /&gt;
* In this example, the relevant orbitals are the six pi orbitals, which contain six electrons (so the calculation is 6,6). The six orbitals that form the pi molecular orbitals are 18, 20, 21,22, 23 and 24. Only orbital 18 is not included in the active space. Thus we need to swap orbitals 18 and 19 to get the correct active space. Use the keyword &#039;&#039;&#039;guess=alter&#039;&#039;&#039; .&lt;br /&gt;
&lt;br /&gt;
Use the orbitals chosen in 2. (i.e. use the .chk from 2.) Use the final geometry from 2.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;CAS(6,6,nroot=2,stateaverage)/STO-3G nosymm IOP(5/97=100,10/97=100) guess=(read,alter)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Here, the weights of each state must be listed explicitly. The weights are 0.5 and 0.5. These must be specified by typing 0.5 followed by 7 spaces then 0.5 (on the same line) (The Gaussian program reads 10 characters (inc spaces) for the first weight and another 10 characters for the second weight. Thus the 7 spaces plus the three characters &amp;quot;0&amp;quot;, &amp;quot;.&amp;quot; and &amp;quot;5&amp;quot; make up the first 10 characters before the second weight is read.)&lt;br /&gt;
&lt;br /&gt;
* The IOp (5/97=100,10/97=100) tells the program to switch the order of the two states. This is so that we calculate the ground state rather than the excited state. (Gaussian CASSCF calculations always perform optimisations on the highest state listed, so by switching the order we force optimisation of what is actually the lower state.)&lt;br /&gt;
* Nroot=2 specifies the &#039;&#039;first&#039;&#039; excited state so the orbitals will be averaged over the ground state and the first excited state.&lt;br /&gt;
&lt;br /&gt;
* Inspect the orbitals again after the calculation to check if the active space is correct.&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_orb_sa.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_orb_sa.log]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_orb_sa.fchk]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;4. Perform a CASSCF Optimisation on the Ground State with the State Averaged Orbitals&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
Use the orbitals chosen in 3. Use the .chk from 3.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;#P CAS(6,6,nroot=2)/STO-3G nosymm opt=conical pop=full IOP(10/10=700005) IOP(5/97=100,10/97=100) geom=check guess=read&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;N.B.&#039;&#039;&#039; This is not a conical intersection optimisation! However, the keyword opt=conical specifies automatically that the populations of the two states will each be 0.5. Thus there is no need to specify the populations manually.&lt;br /&gt;
* The initial &#039;7&#039; in IOp (10/10=700005) specifies that the calculation should be an optimisation to a minimum (rather than a conical intersection). The final &#039;5&#039; ensures that the orbital rotation derivative contributions from the CP-MC-SCF equations are included. (This is necessary and is usually the default. However, in some  version of Gaussian, the combination of &#039;&#039;&#039;opt&#039;&#039;&#039; and &#039;&#039;&#039;stateaverage&#039;&#039;&#039; excludes this).&lt;br /&gt;
* Stateaverage is the default for opt=conical.&lt;br /&gt;
* Nroot=2 is the default for opt=conical.&lt;br /&gt;
* Do not include the keyword &#039;&#039;&#039;freq&#039;&#039;&#039; in the optimisation. (This combination of IOps does not allow &#039;&#039;&#039;opt&#039;&#039;&#039; and &#039;&#039;&#039;freq&#039;&#039;&#039; to be keywords in the same job.)&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_cas.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_cas.log]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;5. &amp;quot;Clean&amp;quot; the Orbitals&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
In this case, all the orbitals in the active space are pure pi orbitals. Due to small numerical inaccuracies, the final orbitals may include small contributions from other (non-pi) orbitals. The aim of this step is to remove these contributions so that the active space consists (in this example) only of contributions from the C 2PY atomic orbitals. The six relevant orbitals are occupied orbitals 19, 20 and 21, and virtual orbitals 22, 23 and 24. In this example they are already clean. Verify this by inspection of the &amp;quot;Molecular Orbital Coefficients&amp;quot; in the population analysis. &lt;br /&gt;
&lt;br /&gt;
In other cases, multiple optimisations may be necessary to clean the orbitals:&lt;br /&gt;
&lt;br /&gt;
Open the file in GaussView, and Edit/Symmetrize. Use this symmetrised geometry as a starting geometry for another optimsation as in 4 (including the keyword &#039;&#039;&#039;nosymm&#039;&#039;&#039;). &lt;br /&gt;
Use the .chk from 4.&lt;br /&gt;
Re-run the optimisation exactly as in 4.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Ideally here we include the keyword &#039;&#039;&#039;opt=(maxstep=1)&#039;&#039;&#039;. This should ensure that the optimisation takes the smallest possible step: we already know that the geometry is very close to the minimum and we need to prevent any significant re-orientation that might occur if large steps are taken. However, this does not seem to work (at least with g03).&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Repeat until the orbitals are clean.&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;6. Calculate the (High Precision) Vibrational Modes for the Ground State &#039;&#039;with State Averaged Orbitals&#039;&#039;&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
Use the .chk and the geometry from 4 (from 5 if you reoptimised the structure in order to clean the orbitals). The geometry must be specified explicitly. (With this combination of IOPs, Gaussian extracts the wrong geometry from the .chk file if &#039;&#039;&#039;geom=checkpoint&#039;&#039;&#039; is specified.)&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;CAS(6,6,nroot=2)/STO-3G freq=hpmodes nosymm pop=full guess=read IOP(5/17=41000200,10/10=700007) IOP(5/97=100,10/97=100)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* IOp (5/17=41000200,10/10=700007) includes the CP-MC-SCF correction (as above) (for a frequency calculation) and specifies state averaged orbitals.&lt;br /&gt;
* Do not include the keyword &#039;&#039;&#039;stateaverage&#039;&#039;&#039; with &#039;&#039;&#039;freq&#039;&#039;&#039; (the current version of Gaussian does not support this).&lt;br /&gt;
* Freq=hpmodes tells Gaussian to print the vibrational modes to 5 decimal places.&lt;br /&gt;
* As before, the IOp (5/97=100,10/97=100) forces calculation of the ground state.&lt;br /&gt;
* Use atom labels rather than numbers (otherwise the dd_generator will not work (see later)).&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hpfreq.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hpfreq.log]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;7. The Conical Intersection&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
One strategy for locating the conical intersection is to calculate the Frank-Condon point and run an optimisation from there, following (one of) the negative frequency(ies).&lt;br /&gt;
Now we have to locate the conical intersection.To do this, we can run an optimisation from the Frank-Condon geometry (we obtained it with the CASSCF calculation in 4)&lt;br /&gt;
&lt;br /&gt;
=== Optimise the Conical Intersection ===&lt;br /&gt;
&lt;br /&gt;
Use the .chk from 4.  A conical intersection optimisation should now locate a conical intersection.&lt;br /&gt;
* Stateaverage is the default for opt=conical.&lt;br /&gt;
* Nroot=2 is the default for opt=conical.&lt;br /&gt;
* To use the the dd_rotation method described in the next section ([[Resgrp:comp-photo-dyn/mctdh90.56dv#Rotation of the Conical Intersection|Rotation of the Conical Intersection]]) it may be convenient to use tighter condition (i.e. use the keyword &#039;&#039;&#039;tight&#039;&#039;&#039;) to the optimization of the conical intersection at this stage.&lt;br /&gt;
The rational of this hack is that after rotation a second conical intersection optimization needs to be perfomed to obtain orbitals and branching space coordinates for the rotated geometry. These quantities cannot be obtained from a single point calculation. In the second optimization the less strict optimization conditions are used such that no actual geometry change is performed.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;CAS(6,6,nroot=2)/STO-3G opt=(conical,tight) nosymm guess=read pop=full&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_ci.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_ci.log]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== [[Resgrp:comp-photo-dyn/mctdh90.56dv|back]] ===&lt;/div&gt;</summary>
		<author><name>Vs13</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/input&amp;diff=333915</id>
		<title>Resgrp:comp-photo-dyn/mctdh90.56dv Fulvene Tutorial/input</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/input&amp;diff=333915"/>
		<updated>2013-04-23T18:54:49Z</updated>

		<summary type="html">&lt;p&gt;Vs13: /* 7. The Conical Intersection */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Creating Input for Dynamics Calculations =&lt;br /&gt;
&lt;br /&gt;
== MCTDH (DD-vMCG) versions ==&lt;br /&gt;
&lt;br /&gt;
- Development versions: &lt;br /&gt;
&lt;br /&gt;
* mctdh90dv&lt;br /&gt;
* mctdh90.31dv&lt;br /&gt;
* mctdh90.56dv&lt;br /&gt;
&lt;br /&gt;
The inputs required for the dynamic calculation are an optimised ground state structure and an optimized conical intersection structure in the appropriate orientation. [These two structures are used in the diabatic transformation. They do not necessarily need to correspond to the Franck-Condon and to the minimum conical intersection geometries. However, these structures are usually good places to start and so most of this tutorial will assume that these are the references that have been chosen]. The ground state structure must have been optimized with state averaged orbitals. These orbitals must be &amp;quot;cleaned&amp;quot; and the high precision frequencies must have been calculated.&lt;br /&gt;
&lt;br /&gt;
* Development version ( mctdh90.??dv): The only inputs required for the dynamics calculation are an optimized ground state structure and an optimized conical intersection. The rotation will be &amp;quot;automatic&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
- The main objective of this tutorial is to learn how to run dynamics calculations, thus we will give you the optimised geometries in the appropriate rotation.&lt;br /&gt;
(A description of how to rotate a structure will follow in due course)&lt;br /&gt;
&lt;br /&gt;
== State Averaged Orbitals==&lt;br /&gt;
&lt;br /&gt;
State averaged orbitals are necessary in order to represent both ground and excited states at the same time in the space close to the conical intersection. The &#039;&#039;State Average&#039;&#039; algorithm allows the convergence of CASSCF when two or more states are close. A solution is found between the average of the involved orbitals if they were calculated independently for each state. At the Frank-Condon region, away from the intersection, this is not needed, but the code maintains this approximation over all the PES to avoid discontinuities.&lt;br /&gt;
&lt;br /&gt;
= Gaussian Calculations - CASSCF =&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;1. Generate a starting geometry.&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
First of all, we need a set of initial orbitals for the CASSCF calculation, which can be obtained from a simple restricted Hartree-Fock (RHF/STO-3G) optimisation. It is useful in systems with high symmetry to start with the molecule in the standard orientation and from a symmetrised geometry. This can be achieved by running a Gaussian calculation without the nosymm keyword and using the geometry returned by this calculation.&lt;br /&gt;
&lt;br /&gt;
* NB You should use the structures given in this tutorial because they are  oriented appropriately.&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_s_orient.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_s_orient.log]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;2. Identify the Orbitals Required for the CASSCF Calculation&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
Use the geometry from 1. Calculate the HF orbitals with a tight basis set e.g. STO-3G so that it is easier to identify the relevant orbitals for CASSCF.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;HF/STO-3G pop=full nosymm geom=check&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Nosymm is required because every time a calculation is run on the molecule with a different symmetry Gaussian reorients the molecule for that particular point group and will destroy the active space. Nosymm disables this feature.&lt;br /&gt;
* Pop=full prints out the orbitals.&lt;br /&gt;
* Inspect the orbitals. Select those required for the CASSCF. &lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hf.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hf.log]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hf.fchk]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;3. Identify the State Averaged Orbitals for the Ground State&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
An orbital inspection using any visualization software (e.g. GaussView) before performing any CASSCF calculation is essential to identify which orbitals make up the chosen active space. In some cases it may be necessary to use the &#039;&#039;&#039;guess=alter&#039;&#039;&#039; keyword to change the order of the orbitals to make sure the optimisation (see step 4) proceeds with the correct orbitals. Gaussian assumes that the electrons specified in a CASSCF calculation come from the highest occupied orbitals in the initial guess and then takes the remaining orbitals as the lowest virtuals of this guess. &lt;br /&gt;
&lt;br /&gt;
* In this example, the relevant orbitals are the six pi orbitals, which contain six electrons (so the calculation is 6,6). The six orbitals that form the pi molecular orbitals are 18, 20, 21,22, 23 and 24. Only orbital 18 is not included in the active space. Thus we need to swap orbitals 18 and 19 to get the correct active space. Use the keyword &#039;&#039;&#039;guess=alter&#039;&#039;&#039; .&lt;br /&gt;
&lt;br /&gt;
Use the orbitals chosen in 2. (i.e. use the .chk from 2.) Use the final geometry from 2.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;CAS(6,6,nroot=2,stateaverage)/STO-3G nosymm IOP(5/97=100,10/97=100) guess=(read,alter)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Here, the weights of each state must be listed explicitly. The weights are 0.5 and 0.5. These must be specified by typing 0.5 followed by 7 spaces then 0.5 (on the same line) (The Gaussian program reads 10 characters (inc spaces) for the first weight and another 10 characters for the second weight. Thus the 7 spaces plus the three characters &amp;quot;0&amp;quot;, &amp;quot;.&amp;quot; and &amp;quot;5&amp;quot; make up the first 10 characters before the second weight is read.)&lt;br /&gt;
&lt;br /&gt;
* The IOp (5/97=100,10/97=100) tells the program to switch the order of the two states. This is so that we calculate the ground state rather than the excited state. (Gaussian CASSCF calculations always perform optimisations on the highest state listed, so by switching the order we force optimisation of what is actually the lower state.)&lt;br /&gt;
* Nroot=2 specifies the &#039;&#039;first&#039;&#039; excited state so the orbitals will be averaged over the ground state and the first excited state.&lt;br /&gt;
&lt;br /&gt;
* Inspect the orbitals again after the calculation to check if the active space is correct.&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_orb_sa.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_orb_sa.log]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_orb_sa.fchk]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;4. Perform a CASSCF Optimisation on the Ground State with the State Averaged Orbitals&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
Use the orbitals chosen in 3. Use the .chk from 3.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;#P CAS(6,6,nroot=2)/STO-3G nosymm opt=conical pop=full IOP(10/10=700005) IOP(5/97=100,10/97=100) geom=check guess=read&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;N.B.&#039;&#039;&#039; This is not a conical intersection optimisation! However, the keyword opt=conical specifies automatically that the populations of the two states will each be 0.5. Thus there is no need to specify the populations manually.&lt;br /&gt;
* The initial &#039;7&#039; in IOp (10/10=700005) specifies that the calculation should be an optimisation to a minimum (rather than a conical intersection). The final &#039;5&#039; ensures that the orbital rotation derivative contributions from the CP-MC-SCF equations are included. (This is necessary and is usually the default. However, in some  version of Gaussian, the combination of &#039;&#039;&#039;opt&#039;&#039;&#039; and &#039;&#039;&#039;stateaverage&#039;&#039;&#039; excludes this).&lt;br /&gt;
* Stateaverage is the default for opt=conical.&lt;br /&gt;
* Nroot=2 is the default for opt=conical.&lt;br /&gt;
* Do not include the keyword &#039;&#039;&#039;freq&#039;&#039;&#039; in the optimisation. (This combination of IOps does not allow &#039;&#039;&#039;opt&#039;&#039;&#039; and &#039;&#039;&#039;freq&#039;&#039;&#039; to be keywords in the same job.)&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_cas.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_cas.log]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;5. &amp;quot;Clean&amp;quot; the Orbitals&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
In this case, all the orbitals in the active space are pure pi orbitals. Due to small numerical inaccuracies, the final orbitals may include small contributions from other (non-pi) orbitals. The aim of this step is to remove these contributions so that the active space consists (in this example) only of contributions from the C 2PY atomic orbitals. The six relevant orbitals are occupied orbitals 19, 20 and 21, and virtual orbitals 22, 23 and 24. In this example they are already clean. Verify this by inspection of the &amp;quot;Molecular Orbital Coefficients&amp;quot; in the population analysis. &lt;br /&gt;
&lt;br /&gt;
In other cases, multiple optimisations may be necessary to clean the orbitals:&lt;br /&gt;
&lt;br /&gt;
Open the file in GaussView, and Edit/Symmetrize. Use this symmetrised geometry as a starting geometry for another optimsation as in 4 (including the keyword &#039;&#039;&#039;nosymm&#039;&#039;&#039;). &lt;br /&gt;
Use the .chk from 4.&lt;br /&gt;
Re-run the optimisation exactly as in 4.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Ideally here we include the keyword &#039;&#039;&#039;opt=(maxstep=1)&#039;&#039;&#039;. This should ensure that the optimisation takes the smallest possible step: we already know that the geometry is very close to the minimum and we need to prevent any significant re-orientation that might occur if large steps are taken. However, this does not seem to work (at least with g03).&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Repeat until the orbitals are clean.&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;6. Calculate the (High Precision) Vibrational Modes for the Ground State &#039;&#039;with State Averaged Orbitals&#039;&#039;&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
Use the .chk and the geometry from 4 (from 5 if you reoptimised the structure in order to clean the orbitals). The geometry must be specified explicitly. (With this combination of IOPs, Gaussian extracts the wrong geometry from the .chk file if &#039;&#039;&#039;geom=checkpoint&#039;&#039;&#039; is specified.)&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;CAS(6,6,nroot=2)/STO-3G freq=hpmodes nosymm pop=full guess=read IOP(5/17=41000200,10/10=700007) IOP(5/97=100,10/97=100)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* IOp (5/17=41000200,10/10=700007) includes the CP-MC-SCF correction (as above) (for a frequency calculation) and specifies state averaged orbitals.&lt;br /&gt;
* Do not include the keyword &#039;&#039;&#039;stateaverage&#039;&#039;&#039; with &#039;&#039;&#039;freq&#039;&#039;&#039; (the current version of Gaussian does not support this).&lt;br /&gt;
* Freq=hpmodes tells Gaussian to print the vibrational modes to 5 decimal places.&lt;br /&gt;
* As before, the IOp (5/97=100,10/97=100) forces calculation of the ground state.&lt;br /&gt;
* Use atom labels rather than numbers (otherwise the dd_generator will not work (see later)).&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hpfreq.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hpfreq.log]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;7. The Conical Intersection&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
One strategy for locating the conical intersection is to calculate the Frank-Condon point and run an optimisation from there, following (one of) the negative frequency(ies).&lt;br /&gt;
Now we have to locate the conical intersection, to do this, we can&lt;br /&gt;
&lt;br /&gt;
=== 7b. Optimise the Conical Intersection ===&lt;br /&gt;
&lt;br /&gt;
Use the .chk from 7a. Distort the geometry to break the symmetry. &lt;br /&gt;
 A conical intersection optimisation should now locate a conical intersection.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;CAS(6,6,nroot=2)/STO-3G opt=conical nosymm guess=read pop=full&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Stateaverage is the default for opt=conical.&lt;br /&gt;
Nroot=2 is the default for opt=conical.&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_ci.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_ci.log]]&lt;br /&gt;
&lt;br /&gt;
==== Note ====&lt;br /&gt;
When using the the dd_rotation method described in the next section ([[Resgrp:comp-photo-dyn/mctdh90.56dv#Rotation of the Conical Intersection|Rotation of the Conical Intersection]]) it may be convenient to use tighter condition to the optimization of the conical intersection at this stage.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;CAS(6,6,nroot=2) STO-3G opt=(conical,tight) nosymm guess=read pop=full&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The rational of this hack is that after rotation a second conical intersection optimization needs to be perfomed to obtain orbitals and branching space coordinates for the rotated geometry. These quantities cannot be obtained from a single point calculation. In the second optimization the less strict optimization conditions are used such that no actual geometry change is performed.&lt;br /&gt;
&lt;br /&gt;
=== [[Resgrp:comp-photo-dyn/mctdh90.56dv|back]] ===&lt;/div&gt;</summary>
		<author><name>Vs13</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/input&amp;diff=333914</id>
		<title>Resgrp:comp-photo-dyn/mctdh90.56dv Fulvene Tutorial/input</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/input&amp;diff=333914"/>
		<updated>2013-04-23T17:38:37Z</updated>

		<summary type="html">&lt;p&gt;Vs13: /* 6. Calculate the (High Precision) Vibrational Modes for the Ground State with State Averaged Orbitals */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Creating Input for Dynamics Calculations =&lt;br /&gt;
&lt;br /&gt;
== MCTDH (DD-vMCG) versions ==&lt;br /&gt;
&lt;br /&gt;
- Development versions: &lt;br /&gt;
&lt;br /&gt;
* mctdh90dv&lt;br /&gt;
* mctdh90.31dv&lt;br /&gt;
* mctdh90.56dv&lt;br /&gt;
&lt;br /&gt;
The inputs required for the dynamic calculation are an optimised ground state structure and an optimized conical intersection structure in the appropriate orientation. [These two structures are used in the diabatic transformation. They do not necessarily need to correspond to the Franck-Condon and to the minimum conical intersection geometries. However, these structures are usually good places to start and so most of this tutorial will assume that these are the references that have been chosen]. The ground state structure must have been optimized with state averaged orbitals. These orbitals must be &amp;quot;cleaned&amp;quot; and the high precision frequencies must have been calculated.&lt;br /&gt;
&lt;br /&gt;
* Development version ( mctdh90.??dv): The only inputs required for the dynamics calculation are an optimized ground state structure and an optimized conical intersection. The rotation will be &amp;quot;automatic&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
- The main objective of this tutorial is to learn how to run dynamics calculations, thus we will give you the optimised geometries in the appropriate rotation.&lt;br /&gt;
(A description of how to rotate a structure will follow in due course)&lt;br /&gt;
&lt;br /&gt;
== State Averaged Orbitals==&lt;br /&gt;
&lt;br /&gt;
State averaged orbitals are necessary in order to represent both ground and excited states at the same time in the space close to the conical intersection. The &#039;&#039;State Average&#039;&#039; algorithm allows the convergence of CASSCF when two or more states are close. A solution is found between the average of the involved orbitals if they were calculated independently for each state. At the Frank-Condon region, away from the intersection, this is not needed, but the code maintains this approximation over all the PES to avoid discontinuities.&lt;br /&gt;
&lt;br /&gt;
= Gaussian Calculations - CASSCF =&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;1. Generate a starting geometry.&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
First of all, we need a set of initial orbitals for the CASSCF calculation, which can be obtained from a simple restricted Hartree-Fock (RHF/STO-3G) optimisation. It is useful in systems with high symmetry to start with the molecule in the standard orientation and from a symmetrised geometry. This can be achieved by running a Gaussian calculation without the nosymm keyword and using the geometry returned by this calculation.&lt;br /&gt;
&lt;br /&gt;
* NB You should use the structures given in this tutorial because they are  oriented appropriately.&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_s_orient.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_s_orient.log]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;2. Identify the Orbitals Required for the CASSCF Calculation&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
Use the geometry from 1. Calculate the HF orbitals with a tight basis set e.g. STO-3G so that it is easier to identify the relevant orbitals for CASSCF.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;HF/STO-3G pop=full nosymm geom=check&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Nosymm is required because every time a calculation is run on the molecule with a different symmetry Gaussian reorients the molecule for that particular point group and will destroy the active space. Nosymm disables this feature.&lt;br /&gt;
* Pop=full prints out the orbitals.&lt;br /&gt;
* Inspect the orbitals. Select those required for the CASSCF. &lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hf.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hf.log]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hf.fchk]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;3. Identify the State Averaged Orbitals for the Ground State&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
An orbital inspection using any visualization software (e.g. GaussView) before performing any CASSCF calculation is essential to identify which orbitals make up the chosen active space. In some cases it may be necessary to use the &#039;&#039;&#039;guess=alter&#039;&#039;&#039; keyword to change the order of the orbitals to make sure the optimisation (see step 4) proceeds with the correct orbitals. Gaussian assumes that the electrons specified in a CASSCF calculation come from the highest occupied orbitals in the initial guess and then takes the remaining orbitals as the lowest virtuals of this guess. &lt;br /&gt;
&lt;br /&gt;
* In this example, the relevant orbitals are the six pi orbitals, which contain six electrons (so the calculation is 6,6). The six orbitals that form the pi molecular orbitals are 18, 20, 21,22, 23 and 24. Only orbital 18 is not included in the active space. Thus we need to swap orbitals 18 and 19 to get the correct active space. Use the keyword &#039;&#039;&#039;guess=alter&#039;&#039;&#039; .&lt;br /&gt;
&lt;br /&gt;
Use the orbitals chosen in 2. (i.e. use the .chk from 2.) Use the final geometry from 2.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;CAS(6,6,nroot=2,stateaverage)/STO-3G nosymm IOP(5/97=100,10/97=100) guess=(read,alter)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Here, the weights of each state must be listed explicitly. The weights are 0.5 and 0.5. These must be specified by typing 0.5 followed by 7 spaces then 0.5 (on the same line) (The Gaussian program reads 10 characters (inc spaces) for the first weight and another 10 characters for the second weight. Thus the 7 spaces plus the three characters &amp;quot;0&amp;quot;, &amp;quot;.&amp;quot; and &amp;quot;5&amp;quot; make up the first 10 characters before the second weight is read.)&lt;br /&gt;
&lt;br /&gt;
* The IOp (5/97=100,10/97=100) tells the program to switch the order of the two states. This is so that we calculate the ground state rather than the excited state. (Gaussian CASSCF calculations always perform optimisations on the highest state listed, so by switching the order we force optimisation of what is actually the lower state.)&lt;br /&gt;
* Nroot=2 specifies the &#039;&#039;first&#039;&#039; excited state so the orbitals will be averaged over the ground state and the first excited state.&lt;br /&gt;
&lt;br /&gt;
* Inspect the orbitals again after the calculation to check if the active space is correct.&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_orb_sa.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_orb_sa.log]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_orb_sa.fchk]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;4. Perform a CASSCF Optimisation on the Ground State with the State Averaged Orbitals&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
Use the orbitals chosen in 3. Use the .chk from 3.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;#P CAS(6,6,nroot=2)/STO-3G nosymm opt=conical pop=full IOP(10/10=700005) IOP(5/97=100,10/97=100) geom=check guess=read&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;N.B.&#039;&#039;&#039; This is not a conical intersection optimisation! However, the keyword opt=conical specifies automatically that the populations of the two states will each be 0.5. Thus there is no need to specify the populations manually.&lt;br /&gt;
* The initial &#039;7&#039; in IOp (10/10=700005) specifies that the calculation should be an optimisation to a minimum (rather than a conical intersection). The final &#039;5&#039; ensures that the orbital rotation derivative contributions from the CP-MC-SCF equations are included. (This is necessary and is usually the default. However, in some  version of Gaussian, the combination of &#039;&#039;&#039;opt&#039;&#039;&#039; and &#039;&#039;&#039;stateaverage&#039;&#039;&#039; excludes this).&lt;br /&gt;
* Stateaverage is the default for opt=conical.&lt;br /&gt;
* Nroot=2 is the default for opt=conical.&lt;br /&gt;
* Do not include the keyword &#039;&#039;&#039;freq&#039;&#039;&#039; in the optimisation. (This combination of IOps does not allow &#039;&#039;&#039;opt&#039;&#039;&#039; and &#039;&#039;&#039;freq&#039;&#039;&#039; to be keywords in the same job.)&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_cas.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_cas.log]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;5. &amp;quot;Clean&amp;quot; the Orbitals&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
In this case, all the orbitals in the active space are pure pi orbitals. Due to small numerical inaccuracies, the final orbitals may include small contributions from other (non-pi) orbitals. The aim of this step is to remove these contributions so that the active space consists (in this example) only of contributions from the C 2PY atomic orbitals. The six relevant orbitals are occupied orbitals 19, 20 and 21, and virtual orbitals 22, 23 and 24. In this example they are already clean. Verify this by inspection of the &amp;quot;Molecular Orbital Coefficients&amp;quot; in the population analysis. &lt;br /&gt;
&lt;br /&gt;
In other cases, multiple optimisations may be necessary to clean the orbitals:&lt;br /&gt;
&lt;br /&gt;
Open the file in GaussView, and Edit/Symmetrize. Use this symmetrised geometry as a starting geometry for another optimsation as in 4 (including the keyword &#039;&#039;&#039;nosymm&#039;&#039;&#039;). &lt;br /&gt;
Use the .chk from 4.&lt;br /&gt;
Re-run the optimisation exactly as in 4.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Ideally here we include the keyword &#039;&#039;&#039;opt=(maxstep=1)&#039;&#039;&#039;. This should ensure that the optimisation takes the smallest possible step: we already know that the geometry is very close to the minimum and we need to prevent any significant re-orientation that might occur if large steps are taken. However, this does not seem to work (at least with g03).&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Repeat until the orbitals are clean.&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;6. Calculate the (High Precision) Vibrational Modes for the Ground State &#039;&#039;with State Averaged Orbitals&#039;&#039;&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
Use the .chk and the geometry from 4 (from 5 if you reoptimised the structure in order to clean the orbitals). The geometry must be specified explicitly. (With this combination of IOPs, Gaussian extracts the wrong geometry from the .chk file if &#039;&#039;&#039;geom=checkpoint&#039;&#039;&#039; is specified.)&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;CAS(6,6,nroot=2)/STO-3G freq=hpmodes nosymm pop=full guess=read IOP(5/17=41000200,10/10=700007) IOP(5/97=100,10/97=100)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* IOp (5/17=41000200,10/10=700007) includes the CP-MC-SCF correction (as above) (for a frequency calculation) and specifies state averaged orbitals.&lt;br /&gt;
* Do not include the keyword &#039;&#039;&#039;stateaverage&#039;&#039;&#039; with &#039;&#039;&#039;freq&#039;&#039;&#039; (the current version of Gaussian does not support this).&lt;br /&gt;
* Freq=hpmodes tells Gaussian to print the vibrational modes to 5 decimal places.&lt;br /&gt;
* As before, the IOp (5/97=100,10/97=100) forces calculation of the ground state.&lt;br /&gt;
* Use atom labels rather than numbers (otherwise the dd_generator will not work (see later)).&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hpfreq.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hpfreq.log]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;7. The Conical Intersection&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
One strategy for locating the conical intersection is to calculate the Frank-Condon point and run an optimisation from there, following (one of) the negative frequency(ies).&lt;br /&gt;
&lt;br /&gt;
=== 7a. The Frank-Condon Point ===&lt;br /&gt;
&lt;br /&gt;
Use the .chk from 4. Using the same orbitals perform a single point energy calculation for the first excited state.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;CAS(4,4,nroot=2,stateaverage) STO-3G pop=full nosymm guess=read geom=checkpoint&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
As in 3, the weights of each state must be listed explicitly. The weights are 0.5 and 0.5. These must be specified by typing 0.5 followed by 7 spaces then 0.5 (on the same line) &#039;&#039;(The Gaussian program reads 10 characters (inc spaces) for the first weight and another 10 characters for the second weight. Thus the 7 spaces plus the three characters &amp;quot;0&amp;quot;, &amp;quot;.&amp;quot; and &amp;quot;5&amp;quot; make up the first 10 characters before the second weight is read.)&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[[Media:buta-fc.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:buta-fc.log]]&lt;br /&gt;
&lt;br /&gt;
=== 7b. Optimise the Conical Intersection ===&lt;br /&gt;
&lt;br /&gt;
Use the .chk from 7a. Distort the geometry to break the symmetry. &lt;br /&gt;
A suggested distortion is to increase the C-C-C-C dihedral angle to 45° by twisting one of the terminal carbons out of the plane of the other atoms (be careful to move only the CH2 group, not the hydrogen on the adjacent carbon). Then increase the H-C-C-C dihedral angles of both the terminal CH2 groups to 70°, in a disrotatory direction. A conical intersection optimisation should now locate a conical intersection.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;CAS(4,4,nroot=2) STO-3G opt=conical nosymm guess=read pop=full&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Stateaverage is the default for opt=conical.&lt;br /&gt;
Nroot=2 is the default for opt=conical.&lt;br /&gt;
&lt;br /&gt;
[[Media:buta-dis14570ci.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:buta-dis14570ci.log]]&lt;br /&gt;
&lt;br /&gt;
==== Note ====&lt;br /&gt;
When using the the dd_rotation method described in the next section ([[Resgrp:comp-photo-dyn/mctdh90.56dv#Rotation of the Conical Intersection|Rotation of the Conical Intersection]]) it may be convenient to use tighter condition to the optimization of the conical intersection at this stage.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;CAS(4,4,nroot=2) STO-3G opt=(conical,tight) nosymm guess=read pop=full&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The rational of this hack is that after rotation a second conical intersection optimization needs to be perfomed to obtain orbitals and branching space coordinates for the rotated geometry. These quantities cannot be obtained from a single point calculation. In the second optimization the less strict optimization conditions are used such that no actual geometry change is performed.&lt;br /&gt;
&lt;br /&gt;
=== [[Resgrp:comp-photo-dyn/mctdh90.56dv|back]] ===&lt;/div&gt;</summary>
		<author><name>Vs13</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/input&amp;diff=333913</id>
		<title>Resgrp:comp-photo-dyn/mctdh90.56dv Fulvene Tutorial/input</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/input&amp;diff=333913"/>
		<updated>2013-04-23T15:45:35Z</updated>

		<summary type="html">&lt;p&gt;Vs13: /* 4. Perform a CASSCF Optimisation on the Ground State with the State Averaged Orbitals */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Creating Input for Dynamics Calculations =&lt;br /&gt;
&lt;br /&gt;
== MCTDH (DD-vMCG) versions ==&lt;br /&gt;
&lt;br /&gt;
- Development versions: &lt;br /&gt;
&lt;br /&gt;
* mctdh90dv&lt;br /&gt;
* mctdh90.31dv&lt;br /&gt;
* mctdh90.56dv&lt;br /&gt;
&lt;br /&gt;
The inputs required for the dynamic calculation are an optimised ground state structure and an optimized conical intersection structure in the appropriate orientation. [These two structures are used in the diabatic transformation. They do not necessarily need to correspond to the Franck-Condon and to the minimum conical intersection geometries. However, these structures are usually good places to start and so most of this tutorial will assume that these are the references that have been chosen]. The ground state structure must have been optimized with state averaged orbitals. These orbitals must be &amp;quot;cleaned&amp;quot; and the high precision frequencies must have been calculated.&lt;br /&gt;
&lt;br /&gt;
* Development version ( mctdh90.??dv): The only inputs required for the dynamics calculation are an optimized ground state structure and an optimized conical intersection. The rotation will be &amp;quot;automatic&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
- The main objective of this tutorial is to learn how to run dynamics calculations, thus we will give you the optimised geometries in the appropriate rotation.&lt;br /&gt;
(A description of how to rotate a structure will follow in due course)&lt;br /&gt;
&lt;br /&gt;
== State Averaged Orbitals==&lt;br /&gt;
&lt;br /&gt;
State averaged orbitals are necessary in order to represent both ground and excited states at the same time in the space close to the conical intersection. The &#039;&#039;State Average&#039;&#039; algorithm allows the convergence of CASSCF when two or more states are close. A solution is found between the average of the involved orbitals if they were calculated independently for each state. At the Frank-Condon region, away from the intersection, this is not needed, but the code maintains this approximation over all the PES to avoid discontinuities.&lt;br /&gt;
&lt;br /&gt;
= Gaussian Calculations - CASSCF =&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;1. Generate a starting geometry.&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
First of all, we need a set of initial orbitals for the CASSCF calculation, which can be obtained from a simple restricted Hartree-Fock (RHF/STO-3G) optimisation. It is useful in systems with high symmetry to start with the molecule in the standard orientation and from a symmetrised geometry. This can be achieved by running a Gaussian calculation without the nosymm keyword and using the geometry returned by this calculation.&lt;br /&gt;
&lt;br /&gt;
* NB You should use the structures given in this tutorial because they are  oriented appropriately.&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_s_orient.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_s_orient.log]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;2. Identify the Orbitals Required for the CASSCF Calculation&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
Use the geometry from 1. Calculate the HF orbitals with a tight basis set e.g. STO-3G so that it is easier to identify the relevant orbitals for CASSCF.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;HF/STO-3G pop=full nosymm geom=check&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Nosymm is required because every time a calculation is run on the molecule with a different symmetry Gaussian reorients the molecule for that particular point group and will destroy the active space. Nosymm disables this feature.&lt;br /&gt;
* Pop=full prints out the orbitals.&lt;br /&gt;
* Inspect the orbitals. Select those required for the CASSCF. &lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hf.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hf.log]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hf.fchk]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;3. Identify the State Averaged Orbitals for the Ground State&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
An orbital inspection using any visualization software (e.g. GaussView) before performing any CASSCF calculation is essential to identify which orbitals make up the chosen active space. In some cases it may be necessary to use the &#039;&#039;&#039;guess=alter&#039;&#039;&#039; keyword to change the order of the orbitals to make sure the optimisation (see step 4) proceeds with the correct orbitals. Gaussian assumes that the electrons specified in a CASSCF calculation come from the highest occupied orbitals in the initial guess and then takes the remaining orbitals as the lowest virtuals of this guess. &lt;br /&gt;
&lt;br /&gt;
* In this example, the relevant orbitals are the six pi orbitals, which contain six electrons (so the calculation is 6,6). The six orbitals that form the pi molecular orbitals are 18, 20, 21,22, 23 and 24. Only orbital 18 is not included in the active space. Thus we need to swap orbitals 18 and 19 to get the correct active space. Use the keyword &#039;&#039;&#039;guess=alter&#039;&#039;&#039; .&lt;br /&gt;
&lt;br /&gt;
Use the orbitals chosen in 2. (i.e. use the .chk from 2.) Use the final geometry from 2.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;CAS(6,6,nroot=2,stateaverage)/STO-3G nosymm IOP(5/97=100,10/97=100) guess=(read,alter)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Here, the weights of each state must be listed explicitly. The weights are 0.5 and 0.5. These must be specified by typing 0.5 followed by 7 spaces then 0.5 (on the same line) (The Gaussian program reads 10 characters (inc spaces) for the first weight and another 10 characters for the second weight. Thus the 7 spaces plus the three characters &amp;quot;0&amp;quot;, &amp;quot;.&amp;quot; and &amp;quot;5&amp;quot; make up the first 10 characters before the second weight is read.)&lt;br /&gt;
&lt;br /&gt;
* The IOp (5/97=100,10/97=100) tells the program to switch the order of the two states. This is so that we calculate the ground state rather than the excited state. (Gaussian CASSCF calculations always perform optimisations on the highest state listed, so by switching the order we force optimisation of what is actually the lower state.)&lt;br /&gt;
* Nroot=2 specifies the &#039;&#039;first&#039;&#039; excited state so the orbitals will be averaged over the ground state and the first excited state.&lt;br /&gt;
&lt;br /&gt;
* Inspect the orbitals again after the calculation to check if the active space is correct.&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_orb_sa.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_orb_sa.log]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_orb_sa.fchk]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;4. Perform a CASSCF Optimisation on the Ground State with the State Averaged Orbitals&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
Use the orbitals chosen in 3. Use the .chk from 3.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;#P CAS(6,6,nroot=2)/STO-3G nosymm opt=conical pop=full IOP(10/10=700005) IOP(5/97=100,10/97=100) geom=check guess=read&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;N.B.&#039;&#039;&#039; This is not a conical intersection optimisation! However, the keyword opt=conical specifies automatically that the populations of the two states will each be 0.5. Thus there is no need to specify the populations manually.&lt;br /&gt;
* The initial &#039;7&#039; in IOp (10/10=700005) specifies that the calculation should be an optimisation to a minimum (rather than a conical intersection). The final &#039;5&#039; ensures that the orbital rotation derivative contributions from the CP-MC-SCF equations are included. (This is necessary and is usually the default. However, in some  version of Gaussian, the combination of &#039;&#039;&#039;opt&#039;&#039;&#039; and &#039;&#039;&#039;stateaverage&#039;&#039;&#039; excludes this).&lt;br /&gt;
* Stateaverage is the default for opt=conical.&lt;br /&gt;
* Nroot=2 is the default for opt=conical.&lt;br /&gt;
* Do not include the keyword &#039;&#039;&#039;freq&#039;&#039;&#039; in the optimisation. (This combination of IOps does not allow &#039;&#039;&#039;opt&#039;&#039;&#039; and &#039;&#039;&#039;freq&#039;&#039;&#039; to be keywords in the same job.)&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_cas.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_cas.log]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;5. &amp;quot;Clean&amp;quot; the Orbitals&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
In this case, all the orbitals in the active space are pure pi orbitals. Due to small numerical inaccuracies, the final orbitals may include small contributions from other (non-pi) orbitals. The aim of this step is to remove these contributions so that the active space consists (in this example) only of contributions from the C 2PY atomic orbitals. The six relevant orbitals are occupied orbitals 19, 20 and 21, and virtual orbitals 22, 23 and 24. In this example they are already clean. Verify this by inspection of the &amp;quot;Molecular Orbital Coefficients&amp;quot; in the population analysis. &lt;br /&gt;
&lt;br /&gt;
In other cases, multiple optimisations may be necessary to clean the orbitals:&lt;br /&gt;
&lt;br /&gt;
Open the file in GaussView, and Edit/Symmetrize. Use this symmetrised geometry as a starting geometry for another optimsation as in 4 (including the keyword &#039;&#039;&#039;nosymm&#039;&#039;&#039;). &lt;br /&gt;
Use the .chk from 4.&lt;br /&gt;
Re-run the optimisation exactly as in 4.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Ideally here we include the keyword &#039;&#039;&#039;opt=(maxstep=1)&#039;&#039;&#039;. This should ensure that the optimisation takes the smallest possible step: we already know that the geometry is very close to the minimum and we need to prevent any significant re-orientation that might occur if large steps are taken. However, this does not seem to work (at least with g03).&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Repeat until the orbitals are clean.&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;6. Calculate the (High Precision) Vibrational Modes for the Ground State &#039;&#039;with State Averaged Orbitals&#039;&#039;&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
Use the .chk and the geometry from 4 (from 5 if you reoptimised the structure in order to clean the orbitals). The geometry must be specified explicitly. (With this combination of IOPs, Gaussian extracts the wrong geometry from the .chk file if &#039;&#039;&#039;geom=checkpoint&#039;&#039;&#039; is specified.)&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;CAS(6,6,nroot=2)/STO-3G freq=hpmodes nosymm pop=full guess=read IOP(5/17=41000200,10/10=700007) IOP(5/97=100,10/97=100)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* IOp (5/17=41000200,10/10=700007) includes the CP-MC-SCF correction (as above) (for a frequency calculation) and specifies state averaged orbitals.&lt;br /&gt;
* Do not include the keyword &#039;&#039;&#039;stateaverage&#039;&#039;&#039; with &#039;&#039;&#039;freq&#039;&#039;&#039; (the current version of Gaussian does not support this).&lt;br /&gt;
* Freq=hpmodes tells Gaussian to print the vibrational modes to 5 decimal places.&lt;br /&gt;
* As before, the IOp (5/97=100,10/97=100) forces calculation of the ground state.&lt;br /&gt;
* (Do not use the keyword nosymm here.??????? (Nosymm may prevent Gaussian from identifying the symmetries of the orbitals.))&lt;br /&gt;
* Use atom labels rather than numbers (otherwise the dd_generator will not work (see later)).&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hpfreq.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hpfreq.log]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;7. The Conical Intersection&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
One strategy for locating the conical intersection is to calculate the Frank-Condon point and run an optimisation from there, following (one of) the negative frequency(ies).&lt;br /&gt;
&lt;br /&gt;
=== 7a. The Frank-Condon Point ===&lt;br /&gt;
&lt;br /&gt;
Use the .chk from 4. Using the same orbitals perform a single point energy calculation for the first excited state.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;CAS(4,4,nroot=2,stateaverage) STO-3G pop=full nosymm guess=read geom=checkpoint&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
As in 3, the weights of each state must be listed explicitly. The weights are 0.5 and 0.5. These must be specified by typing 0.5 followed by 7 spaces then 0.5 (on the same line) &#039;&#039;(The Gaussian program reads 10 characters (inc spaces) for the first weight and another 10 characters for the second weight. Thus the 7 spaces plus the three characters &amp;quot;0&amp;quot;, &amp;quot;.&amp;quot; and &amp;quot;5&amp;quot; make up the first 10 characters before the second weight is read.)&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[[Media:buta-fc.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:buta-fc.log]]&lt;br /&gt;
&lt;br /&gt;
=== 7b. Optimise the Conical Intersection ===&lt;br /&gt;
&lt;br /&gt;
Use the .chk from 7a. Distort the geometry to break the symmetry. &lt;br /&gt;
A suggested distortion is to increase the C-C-C-C dihedral angle to 45° by twisting one of the terminal carbons out of the plane of the other atoms (be careful to move only the CH2 group, not the hydrogen on the adjacent carbon). Then increase the H-C-C-C dihedral angles of both the terminal CH2 groups to 70°, in a disrotatory direction. A conical intersection optimisation should now locate a conical intersection.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;CAS(4,4,nroot=2) STO-3G opt=conical nosymm guess=read pop=full&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Stateaverage is the default for opt=conical.&lt;br /&gt;
Nroot=2 is the default for opt=conical.&lt;br /&gt;
&lt;br /&gt;
[[Media:buta-dis14570ci.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:buta-dis14570ci.log]]&lt;br /&gt;
&lt;br /&gt;
==== Note ====&lt;br /&gt;
When using the the dd_rotation method described in the next section ([[Resgrp:comp-photo-dyn/mctdh90.56dv#Rotation of the Conical Intersection|Rotation of the Conical Intersection]]) it may be convenient to use tighter condition to the optimization of the conical intersection at this stage.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;CAS(4,4,nroot=2) STO-3G opt=(conical,tight) nosymm guess=read pop=full&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The rational of this hack is that after rotation a second conical intersection optimization needs to be perfomed to obtain orbitals and branching space coordinates for the rotated geometry. These quantities cannot be obtained from a single point calculation. In the second optimization the less strict optimization conditions are used such that no actual geometry change is performed.&lt;br /&gt;
&lt;br /&gt;
=== [[Resgrp:comp-photo-dyn/mctdh90.56dv|back]] ===&lt;/div&gt;</summary>
		<author><name>Vs13</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/input&amp;diff=333912</id>
		<title>Resgrp:comp-photo-dyn/mctdh90.56dv Fulvene Tutorial/input</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/input&amp;diff=333912"/>
		<updated>2013-04-23T15:44:22Z</updated>

		<summary type="html">&lt;p&gt;Vs13: /* 6. Calculate the (High Precision) Vibrational Modes for the Ground State with State Averaged Orbitals */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Creating Input for Dynamics Calculations =&lt;br /&gt;
&lt;br /&gt;
== MCTDH (DD-vMCG) versions ==&lt;br /&gt;
&lt;br /&gt;
- Development versions: &lt;br /&gt;
&lt;br /&gt;
* mctdh90dv&lt;br /&gt;
* mctdh90.31dv&lt;br /&gt;
* mctdh90.56dv&lt;br /&gt;
&lt;br /&gt;
The inputs required for the dynamic calculation are an optimised ground state structure and an optimized conical intersection structure in the appropriate orientation. [These two structures are used in the diabatic transformation. They do not necessarily need to correspond to the Franck-Condon and to the minimum conical intersection geometries. However, these structures are usually good places to start and so most of this tutorial will assume that these are the references that have been chosen]. The ground state structure must have been optimized with state averaged orbitals. These orbitals must be &amp;quot;cleaned&amp;quot; and the high precision frequencies must have been calculated.&lt;br /&gt;
&lt;br /&gt;
* Development version ( mctdh90.??dv): The only inputs required for the dynamics calculation are an optimized ground state structure and an optimized conical intersection. The rotation will be &amp;quot;automatic&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
- The main objective of this tutorial is to learn how to run dynamics calculations, thus we will give you the optimised geometries in the appropriate rotation.&lt;br /&gt;
(A description of how to rotate a structure will follow in due course)&lt;br /&gt;
&lt;br /&gt;
== State Averaged Orbitals==&lt;br /&gt;
&lt;br /&gt;
State averaged orbitals are necessary in order to represent both ground and excited states at the same time in the space close to the conical intersection. The &#039;&#039;State Average&#039;&#039; algorithm allows the convergence of CASSCF when two or more states are close. A solution is found between the average of the involved orbitals if they were calculated independently for each state. At the Frank-Condon region, away from the intersection, this is not needed, but the code maintains this approximation over all the PES to avoid discontinuities.&lt;br /&gt;
&lt;br /&gt;
= Gaussian Calculations - CASSCF =&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;1. Generate a starting geometry.&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
First of all, we need a set of initial orbitals for the CASSCF calculation, which can be obtained from a simple restricted Hartree-Fock (RHF/STO-3G) optimisation. It is useful in systems with high symmetry to start with the molecule in the standard orientation and from a symmetrised geometry. This can be achieved by running a Gaussian calculation without the nosymm keyword and using the geometry returned by this calculation.&lt;br /&gt;
&lt;br /&gt;
* NB You should use the structures given in this tutorial because they are  oriented appropriately.&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_s_orient.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_s_orient.log]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;2. Identify the Orbitals Required for the CASSCF Calculation&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
Use the geometry from 1. Calculate the HF orbitals with a tight basis set e.g. STO-3G so that it is easier to identify the relevant orbitals for CASSCF.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;HF/STO-3G pop=full nosymm geom=check&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Nosymm is required because every time a calculation is run on the molecule with a different symmetry Gaussian reorients the molecule for that particular point group and will destroy the active space. Nosymm disables this feature.&lt;br /&gt;
* Pop=full prints out the orbitals.&lt;br /&gt;
* Inspect the orbitals. Select those required for the CASSCF. &lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hf.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hf.log]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hf.fchk]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;3. Identify the State Averaged Orbitals for the Ground State&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
An orbital inspection using any visualization software (e.g. GaussView) before performing any CASSCF calculation is essential to identify which orbitals make up the chosen active space. In some cases it may be necessary to use the &#039;&#039;&#039;guess=alter&#039;&#039;&#039; keyword to change the order of the orbitals to make sure the optimisation (see step 4) proceeds with the correct orbitals. Gaussian assumes that the electrons specified in a CASSCF calculation come from the highest occupied orbitals in the initial guess and then takes the remaining orbitals as the lowest virtuals of this guess. &lt;br /&gt;
&lt;br /&gt;
* In this example, the relevant orbitals are the six pi orbitals, which contain six electrons (so the calculation is 6,6). The six orbitals that form the pi molecular orbitals are 18, 20, 21,22, 23 and 24. Only orbital 18 is not included in the active space. Thus we need to swap orbitals 18 and 19 to get the correct active space. Use the keyword &#039;&#039;&#039;guess=alter&#039;&#039;&#039; .&lt;br /&gt;
&lt;br /&gt;
Use the orbitals chosen in 2. (i.e. use the .chk from 2.) Use the final geometry from 2.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;CAS(6,6,nroot=2,stateaverage)/STO-3G nosymm IOP(5/97=100,10/97=100) guess=(read,alter)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Here, the weights of each state must be listed explicitly. The weights are 0.5 and 0.5. These must be specified by typing 0.5 followed by 7 spaces then 0.5 (on the same line) (The Gaussian program reads 10 characters (inc spaces) for the first weight and another 10 characters for the second weight. Thus the 7 spaces plus the three characters &amp;quot;0&amp;quot;, &amp;quot;.&amp;quot; and &amp;quot;5&amp;quot; make up the first 10 characters before the second weight is read.)&lt;br /&gt;
&lt;br /&gt;
* The IOp (5/97=100,10/97=100) tells the program to switch the order of the two states. This is so that we calculate the ground state rather than the excited state. (Gaussian CASSCF calculations always perform optimisations on the highest state listed, so by switching the order we force optimisation of what is actually the lower state.)&lt;br /&gt;
* Nroot=2 specifies the &#039;&#039;first&#039;&#039; excited state so the orbitals will be averaged over the ground state and the first excited state.&lt;br /&gt;
&lt;br /&gt;
* Inspect the orbitals again after the calculation to check if the active space is correct.&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_orb_sa.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_orb_sa.log]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_orb_sa.fchk]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;4. Perform a CASSCF Optimisation on the Ground State with the State Averaged Orbitals&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
Use the orbitals chosen in 3. Use the .chk from 3.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;#P CAS(6,6,nroot=2)/STO-3G nosymm opt=conical pop=full IOP(10/10=700005) IOP(5/97=100,10/97=100) geom=check guess=read&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;N.B.&#039;&#039;&#039; This is not a conical intersection optimisation! However, the keyword opt=conical specifies automatically that the populations of the two states will each be 0.5. Thus there is no need to specify the populations manually.&lt;br /&gt;
* The initial &#039;7&#039; in IOp (10/10=700005) specifies that the calculation should be an optimisation to a minimum (rather than a conical intersection).The final &#039;5&#039; in the same IOp ensures that the orbital rotation derivative contributions from the CP-MC-SCF equations are included. (This is necessary and is usually the default. However, in some  version of Gaussian, the combination of &#039;&#039;&#039;opt&#039;&#039;&#039; and &#039;&#039;&#039;stateaverage&#039;&#039;&#039; excludes this).&lt;br /&gt;
* Stateaverage is the default for opt=conical.&lt;br /&gt;
* Nroot=2 is the default for opt=conical.&lt;br /&gt;
* Do not include the keyword &#039;&#039;&#039;freq&#039;&#039;&#039; in the optimisation. (This combination of IOps does not allow &#039;&#039;&#039;opt&#039;&#039;&#039; and &#039;&#039;&#039;freq&#039;&#039;&#039; to be keywords in the same job.)&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_cas.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_cas.log]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;5. &amp;quot;Clean&amp;quot; the Orbitals&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
In this case, all the orbitals in the active space are pure pi orbitals. Due to small numerical inaccuracies, the final orbitals may include small contributions from other (non-pi) orbitals. The aim of this step is to remove these contributions so that the active space consists (in this example) only of contributions from the C 2PY atomic orbitals. The six relevant orbitals are occupied orbitals 19, 20 and 21, and virtual orbitals 22, 23 and 24. In this example they are already clean. Verify this by inspection of the &amp;quot;Molecular Orbital Coefficients&amp;quot; in the population analysis. &lt;br /&gt;
&lt;br /&gt;
In other cases, multiple optimisations may be necessary to clean the orbitals:&lt;br /&gt;
&lt;br /&gt;
Open the file in GaussView, and Edit/Symmetrize. Use this symmetrised geometry as a starting geometry for another optimsation as in 4 (including the keyword &#039;&#039;&#039;nosymm&#039;&#039;&#039;). &lt;br /&gt;
Use the .chk from 4.&lt;br /&gt;
Re-run the optimisation exactly as in 4.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Ideally here we include the keyword &#039;&#039;&#039;opt=(maxstep=1)&#039;&#039;&#039;. This should ensure that the optimisation takes the smallest possible step: we already know that the geometry is very close to the minimum and we need to prevent any significant re-orientation that might occur if large steps are taken. However, this does not seem to work (at least with g03).&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Repeat until the orbitals are clean.&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;6. Calculate the (High Precision) Vibrational Modes for the Ground State &#039;&#039;with State Averaged Orbitals&#039;&#039;&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
Use the .chk and the geometry from 4 (from 5 if you reoptimised the structure in order to clean the orbitals). The geometry must be specified explicitly. (With this combination of IOPs, Gaussian extracts the wrong geometry from the .chk file if &#039;&#039;&#039;geom=checkpoint&#039;&#039;&#039; is specified.)&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;CAS(6,6,nroot=2)/STO-3G freq=hpmodes nosymm pop=full guess=read IOP(5/17=41000200,10/10=700007) IOP(5/97=100,10/97=100)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* IOp (5/17=41000200,10/10=700007) includes the CP-MC-SCF correction (as above) (for a frequency calculation) and specifies state averaged orbitals.&lt;br /&gt;
* Do not include the keyword &#039;&#039;&#039;stateaverage&#039;&#039;&#039; with &#039;&#039;&#039;freq&#039;&#039;&#039; (the current version of Gaussian does not support this).&lt;br /&gt;
* Freq=hpmodes tells Gaussian to print the vibrational modes to 5 decimal places.&lt;br /&gt;
* As before, the IOp (5/97=100,10/97=100) forces calculation of the ground state.&lt;br /&gt;
* (Do not use the keyword nosymm here.??????? (Nosymm may prevent Gaussian from identifying the symmetries of the orbitals.))&lt;br /&gt;
* Use atom labels rather than numbers (otherwise the dd_generator will not work (see later)).&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hpfreq.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hpfreq.log]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;7. The Conical Intersection&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
One strategy for locating the conical intersection is to calculate the Frank-Condon point and run an optimisation from there, following (one of) the negative frequency(ies).&lt;br /&gt;
&lt;br /&gt;
=== 7a. The Frank-Condon Point ===&lt;br /&gt;
&lt;br /&gt;
Use the .chk from 4. Using the same orbitals perform a single point energy calculation for the first excited state.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;CAS(4,4,nroot=2,stateaverage) STO-3G pop=full nosymm guess=read geom=checkpoint&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
As in 3, the weights of each state must be listed explicitly. The weights are 0.5 and 0.5. These must be specified by typing 0.5 followed by 7 spaces then 0.5 (on the same line) &#039;&#039;(The Gaussian program reads 10 characters (inc spaces) for the first weight and another 10 characters for the second weight. Thus the 7 spaces plus the three characters &amp;quot;0&amp;quot;, &amp;quot;.&amp;quot; and &amp;quot;5&amp;quot; make up the first 10 characters before the second weight is read.)&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[[Media:buta-fc.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:buta-fc.log]]&lt;br /&gt;
&lt;br /&gt;
=== 7b. Optimise the Conical Intersection ===&lt;br /&gt;
&lt;br /&gt;
Use the .chk from 7a. Distort the geometry to break the symmetry. &lt;br /&gt;
A suggested distortion is to increase the C-C-C-C dihedral angle to 45° by twisting one of the terminal carbons out of the plane of the other atoms (be careful to move only the CH2 group, not the hydrogen on the adjacent carbon). Then increase the H-C-C-C dihedral angles of both the terminal CH2 groups to 70°, in a disrotatory direction. A conical intersection optimisation should now locate a conical intersection.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;CAS(4,4,nroot=2) STO-3G opt=conical nosymm guess=read pop=full&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Stateaverage is the default for opt=conical.&lt;br /&gt;
Nroot=2 is the default for opt=conical.&lt;br /&gt;
&lt;br /&gt;
[[Media:buta-dis14570ci.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:buta-dis14570ci.log]]&lt;br /&gt;
&lt;br /&gt;
==== Note ====&lt;br /&gt;
When using the the dd_rotation method described in the next section ([[Resgrp:comp-photo-dyn/mctdh90.56dv#Rotation of the Conical Intersection|Rotation of the Conical Intersection]]) it may be convenient to use tighter condition to the optimization of the conical intersection at this stage.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;CAS(4,4,nroot=2) STO-3G opt=(conical,tight) nosymm guess=read pop=full&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The rational of this hack is that after rotation a second conical intersection optimization needs to be perfomed to obtain orbitals and branching space coordinates for the rotated geometry. These quantities cannot be obtained from a single point calculation. In the second optimization the less strict optimization conditions are used such that no actual geometry change is performed.&lt;br /&gt;
&lt;br /&gt;
=== [[Resgrp:comp-photo-dyn/mctdh90.56dv|back]] ===&lt;/div&gt;</summary>
		<author><name>Vs13</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/input&amp;diff=333911</id>
		<title>Resgrp:comp-photo-dyn/mctdh90.56dv Fulvene Tutorial/input</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/input&amp;diff=333911"/>
		<updated>2013-04-23T15:40:05Z</updated>

		<summary type="html">&lt;p&gt;Vs13: /* 6. Calculate the (High Precision) Vibrational Modes for the Ground State with State Averaged Orbitals */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Creating Input for Dynamics Calculations =&lt;br /&gt;
&lt;br /&gt;
== MCTDH (DD-vMCG) versions ==&lt;br /&gt;
&lt;br /&gt;
- Development versions: &lt;br /&gt;
&lt;br /&gt;
* mctdh90dv&lt;br /&gt;
* mctdh90.31dv&lt;br /&gt;
* mctdh90.56dv&lt;br /&gt;
&lt;br /&gt;
The inputs required for the dynamic calculation are an optimised ground state structure and an optimized conical intersection structure in the appropriate orientation. [These two structures are used in the diabatic transformation. They do not necessarily need to correspond to the Franck-Condon and to the minimum conical intersection geometries. However, these structures are usually good places to start and so most of this tutorial will assume that these are the references that have been chosen]. The ground state structure must have been optimized with state averaged orbitals. These orbitals must be &amp;quot;cleaned&amp;quot; and the high precision frequencies must have been calculated.&lt;br /&gt;
&lt;br /&gt;
* Development version ( mctdh90.??dv): The only inputs required for the dynamics calculation are an optimized ground state structure and an optimized conical intersection. The rotation will be &amp;quot;automatic&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
- The main objective of this tutorial is to learn how to run dynamics calculations, thus we will give you the optimised geometries in the appropriate rotation.&lt;br /&gt;
(A description of how to rotate a structure will follow in due course)&lt;br /&gt;
&lt;br /&gt;
== State Averaged Orbitals==&lt;br /&gt;
&lt;br /&gt;
State averaged orbitals are necessary in order to represent both ground and excited states at the same time in the space close to the conical intersection. The &#039;&#039;State Average&#039;&#039; algorithm allows the convergence of CASSCF when two or more states are close. A solution is found between the average of the involved orbitals if they were calculated independently for each state. At the Frank-Condon region, away from the intersection, this is not needed, but the code maintains this approximation over all the PES to avoid discontinuities.&lt;br /&gt;
&lt;br /&gt;
= Gaussian Calculations - CASSCF =&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;1. Generate a starting geometry.&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
First of all, we need a set of initial orbitals for the CASSCF calculation, which can be obtained from a simple restricted Hartree-Fock (RHF/STO-3G) optimisation. It is useful in systems with high symmetry to start with the molecule in the standard orientation and from a symmetrised geometry. This can be achieved by running a Gaussian calculation without the nosymm keyword and using the geometry returned by this calculation.&lt;br /&gt;
&lt;br /&gt;
* NB You should use the structures given in this tutorial because they are  oriented appropriately.&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_s_orient.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_s_orient.log]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;2. Identify the Orbitals Required for the CASSCF Calculation&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
Use the geometry from 1. Calculate the HF orbitals with a tight basis set e.g. STO-3G so that it is easier to identify the relevant orbitals for CASSCF.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;HF/STO-3G pop=full nosymm geom=check&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Nosymm is required because every time a calculation is run on the molecule with a different symmetry Gaussian reorients the molecule for that particular point group and will destroy the active space. Nosymm disables this feature.&lt;br /&gt;
* Pop=full prints out the orbitals.&lt;br /&gt;
* Inspect the orbitals. Select those required for the CASSCF. &lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hf.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hf.log]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hf.fchk]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;3. Identify the State Averaged Orbitals for the Ground State&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
An orbital inspection using any visualization software (e.g. GaussView) before performing any CASSCF calculation is essential to identify which orbitals make up the chosen active space. In some cases it may be necessary to use the &#039;&#039;&#039;guess=alter&#039;&#039;&#039; keyword to change the order of the orbitals to make sure the optimisation (see step 4) proceeds with the correct orbitals. Gaussian assumes that the electrons specified in a CASSCF calculation come from the highest occupied orbitals in the initial guess and then takes the remaining orbitals as the lowest virtuals of this guess. &lt;br /&gt;
&lt;br /&gt;
* In this example, the relevant orbitals are the six pi orbitals, which contain six electrons (so the calculation is 6,6). The six orbitals that form the pi molecular orbitals are 18, 20, 21,22, 23 and 24. Only orbital 18 is not included in the active space. Thus we need to swap orbitals 18 and 19 to get the correct active space. Use the keyword &#039;&#039;&#039;guess=alter&#039;&#039;&#039; .&lt;br /&gt;
&lt;br /&gt;
Use the orbitals chosen in 2. (i.e. use the .chk from 2.) Use the final geometry from 2.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;CAS(6,6,nroot=2,stateaverage)/STO-3G nosymm IOP(5/97=100,10/97=100) guess=(read,alter)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Here, the weights of each state must be listed explicitly. The weights are 0.5 and 0.5. These must be specified by typing 0.5 followed by 7 spaces then 0.5 (on the same line) (The Gaussian program reads 10 characters (inc spaces) for the first weight and another 10 characters for the second weight. Thus the 7 spaces plus the three characters &amp;quot;0&amp;quot;, &amp;quot;.&amp;quot; and &amp;quot;5&amp;quot; make up the first 10 characters before the second weight is read.)&lt;br /&gt;
&lt;br /&gt;
* The IOp (5/97=100,10/97=100) tells the program to switch the order of the two states. This is so that we calculate the ground state rather than the excited state. (Gaussian CASSCF calculations always perform optimisations on the highest state listed, so by switching the order we force optimisation of what is actually the lower state.)&lt;br /&gt;
* Nroot=2 specifies the &#039;&#039;first&#039;&#039; excited state so the orbitals will be averaged over the ground state and the first excited state.&lt;br /&gt;
&lt;br /&gt;
* Inspect the orbitals again after the calculation to check if the active space is correct.&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_orb_sa.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_orb_sa.log]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_orb_sa.fchk]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;4. Perform a CASSCF Optimisation on the Ground State with the State Averaged Orbitals&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
Use the orbitals chosen in 3. Use the .chk from 3.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;#P CAS(6,6,nroot=2)/STO-3G nosymm opt=conical pop=full IOP(10/10=700005) IOP(5/97=100,10/97=100) geom=check guess=read&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;N.B.&#039;&#039;&#039; This is not a conical intersection optimisation! However, the keyword opt=conical specifies automatically that the populations of the two states will each be 0.5. Thus there is no need to specify the populations manually.&lt;br /&gt;
* The initial &#039;7&#039; in IOp (10/10=700005) specifies that the calculation should be an optimisation to a minimum (rather than a conical intersection).The final &#039;5&#039; in the same IOp ensures that the orbital rotation derivative contributions from the CP-MC-SCF equations are included. (This is necessary and is usually the default. However, in some  version of Gaussian, the combination of &#039;&#039;&#039;opt&#039;&#039;&#039; and &#039;&#039;&#039;stateaverage&#039;&#039;&#039; excludes this).&lt;br /&gt;
* Stateaverage is the default for opt=conical.&lt;br /&gt;
* Nroot=2 is the default for opt=conical.&lt;br /&gt;
* Do not include the keyword &#039;&#039;&#039;freq&#039;&#039;&#039; in the optimisation. (This combination of IOps does not allow &#039;&#039;&#039;opt&#039;&#039;&#039; and &#039;&#039;&#039;freq&#039;&#039;&#039; to be keywords in the same job.)&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_cas.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_cas.log]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;5. &amp;quot;Clean&amp;quot; the Orbitals&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
In this case, all the orbitals in the active space are pure pi orbitals. Due to small numerical inaccuracies, the final orbitals may include small contributions from other (non-pi) orbitals. The aim of this step is to remove these contributions so that the active space consists (in this example) only of contributions from the C 2PY atomic orbitals. The six relevant orbitals are occupied orbitals 19, 20 and 21, and virtual orbitals 22, 23 and 24. In this example they are already clean. Verify this by inspection of the &amp;quot;Molecular Orbital Coefficients&amp;quot; in the population analysis. &lt;br /&gt;
&lt;br /&gt;
In other cases, multiple optimisations may be necessary to clean the orbitals:&lt;br /&gt;
&lt;br /&gt;
Open the file in GaussView, and Edit/Symmetrize. Use this symmetrised geometry as a starting geometry for another optimsation as in 4 (including the keyword &#039;&#039;&#039;nosymm&#039;&#039;&#039;). &lt;br /&gt;
Use the .chk from 4.&lt;br /&gt;
Re-run the optimisation exactly as in 4.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Ideally here we include the keyword &#039;&#039;&#039;opt=(maxstep=1)&#039;&#039;&#039;. This should ensure that the optimisation takes the smallest possible step: we already know that the geometry is very close to the minimum and we need to prevent any significant re-orientation that might occur if large steps are taken. However, this does not seem to work (at least with g03).&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Repeat until the orbitals are clean.&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;6. Calculate the (High Precision) Vibrational Modes for the Ground State &#039;&#039;with State Averaged Orbitals&#039;&#039;&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
Use the .chk and the geometry from 4 (from 5 if you reoptimised the structure in order to clean the orbitals). The geometry must be specified explicitly. (With this combination of IOPs, Gaussian extracts the wrong geometry from the .chk file if &#039;&#039;&#039;geom=checkpoint&#039;&#039;&#039; is specified.)&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;CAS(6,6,nroot=2)/STO-3G freq=hpmodes nosymm guess=read IOP(5/17=41000200,10/10=700007) IOP(5/97=100,10/97=100)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* IOp (5/17=41000200,10/10=700007) includes the CP-MC-SCF correction (as above) (for a frequency calculation) and specifies state averaged orbitals.&lt;br /&gt;
* Do not include the keyword &#039;&#039;&#039;stateaverage&#039;&#039;&#039; with &#039;&#039;&#039;freq&#039;&#039;&#039; (the current version of Gaussian does not support this).&lt;br /&gt;
* Freq=hpmodes tells Gaussian to print the vibrational modes to 5 decimal places.&lt;br /&gt;
* As before, the IOp (5/97=100,10/97=100) forces calculation of the ground state.&lt;br /&gt;
* (Do not use the keyword nosymm here. (Nosymm may prevent Gaussian from identifying the symmetries of the orbitals.))&lt;br /&gt;
* Use atom labels rather than numbers (otherwise the dd_generator will not work (see later)).&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hpfreq.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hpfreq.log]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;7. The Conical Intersection&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
One strategy for locating the conical intersection is to calculate the Frank-Condon point and run an optimisation from there, following (one of) the negative frequency(ies).&lt;br /&gt;
&lt;br /&gt;
=== 7a. The Frank-Condon Point ===&lt;br /&gt;
&lt;br /&gt;
Use the .chk from 4. Using the same orbitals perform a single point energy calculation for the first excited state.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;CAS(4,4,nroot=2,stateaverage) STO-3G pop=full nosymm guess=read geom=checkpoint&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
As in 3, the weights of each state must be listed explicitly. The weights are 0.5 and 0.5. These must be specified by typing 0.5 followed by 7 spaces then 0.5 (on the same line) &#039;&#039;(The Gaussian program reads 10 characters (inc spaces) for the first weight and another 10 characters for the second weight. Thus the 7 spaces plus the three characters &amp;quot;0&amp;quot;, &amp;quot;.&amp;quot; and &amp;quot;5&amp;quot; make up the first 10 characters before the second weight is read.)&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[[Media:buta-fc.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:buta-fc.log]]&lt;br /&gt;
&lt;br /&gt;
=== 7b. Optimise the Conical Intersection ===&lt;br /&gt;
&lt;br /&gt;
Use the .chk from 7a. Distort the geometry to break the symmetry. &lt;br /&gt;
A suggested distortion is to increase the C-C-C-C dihedral angle to 45° by twisting one of the terminal carbons out of the plane of the other atoms (be careful to move only the CH2 group, not the hydrogen on the adjacent carbon). Then increase the H-C-C-C dihedral angles of both the terminal CH2 groups to 70°, in a disrotatory direction. A conical intersection optimisation should now locate a conical intersection.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;CAS(4,4,nroot=2) STO-3G opt=conical nosymm guess=read pop=full&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Stateaverage is the default for opt=conical.&lt;br /&gt;
Nroot=2 is the default for opt=conical.&lt;br /&gt;
&lt;br /&gt;
[[Media:buta-dis14570ci.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:buta-dis14570ci.log]]&lt;br /&gt;
&lt;br /&gt;
==== Note ====&lt;br /&gt;
When using the the dd_rotation method described in the next section ([[Resgrp:comp-photo-dyn/mctdh90.56dv#Rotation of the Conical Intersection|Rotation of the Conical Intersection]]) it may be convenient to use tighter condition to the optimization of the conical intersection at this stage.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;CAS(4,4,nroot=2) STO-3G opt=(conical,tight) nosymm guess=read pop=full&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The rational of this hack is that after rotation a second conical intersection optimization needs to be perfomed to obtain orbitals and branching space coordinates for the rotated geometry. These quantities cannot be obtained from a single point calculation. In the second optimization the less strict optimization conditions are used such that no actual geometry change is performed.&lt;br /&gt;
&lt;br /&gt;
=== [[Resgrp:comp-photo-dyn/mctdh90.56dv|back]] ===&lt;/div&gt;</summary>
		<author><name>Vs13</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/input&amp;diff=333910</id>
		<title>Resgrp:comp-photo-dyn/mctdh90.56dv Fulvene Tutorial/input</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/input&amp;diff=333910"/>
		<updated>2013-04-23T15:32:50Z</updated>

		<summary type="html">&lt;p&gt;Vs13: /* 5. &amp;quot;Clean&amp;quot; the Orbitals */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Creating Input for Dynamics Calculations =&lt;br /&gt;
&lt;br /&gt;
== MCTDH (DD-vMCG) versions ==&lt;br /&gt;
&lt;br /&gt;
- Development versions: &lt;br /&gt;
&lt;br /&gt;
* mctdh90dv&lt;br /&gt;
* mctdh90.31dv&lt;br /&gt;
* mctdh90.56dv&lt;br /&gt;
&lt;br /&gt;
The inputs required for the dynamic calculation are an optimised ground state structure and an optimized conical intersection structure in the appropriate orientation. [These two structures are used in the diabatic transformation. They do not necessarily need to correspond to the Franck-Condon and to the minimum conical intersection geometries. However, these structures are usually good places to start and so most of this tutorial will assume that these are the references that have been chosen]. The ground state structure must have been optimized with state averaged orbitals. These orbitals must be &amp;quot;cleaned&amp;quot; and the high precision frequencies must have been calculated.&lt;br /&gt;
&lt;br /&gt;
* Development version ( mctdh90.??dv): The only inputs required for the dynamics calculation are an optimized ground state structure and an optimized conical intersection. The rotation will be &amp;quot;automatic&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
- The main objective of this tutorial is to learn how to run dynamics calculations, thus we will give you the optimised geometries in the appropriate rotation.&lt;br /&gt;
(A description of how to rotate a structure will follow in due course)&lt;br /&gt;
&lt;br /&gt;
== State Averaged Orbitals==&lt;br /&gt;
&lt;br /&gt;
State averaged orbitals are necessary in order to represent both ground and excited states at the same time in the space close to the conical intersection. The &#039;&#039;State Average&#039;&#039; algorithm allows the convergence of CASSCF when two or more states are close. A solution is found between the average of the involved orbitals if they were calculated independently for each state. At the Frank-Condon region, away from the intersection, this is not needed, but the code maintains this approximation over all the PES to avoid discontinuities.&lt;br /&gt;
&lt;br /&gt;
= Gaussian Calculations - CASSCF =&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;1. Generate a starting geometry.&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
First of all, we need a set of initial orbitals for the CASSCF calculation, which can be obtained from a simple restricted Hartree-Fock (RHF/STO-3G) optimisation. It is useful in systems with high symmetry to start with the molecule in the standard orientation and from a symmetrised geometry. This can be achieved by running a Gaussian calculation without the nosymm keyword and using the geometry returned by this calculation.&lt;br /&gt;
&lt;br /&gt;
* NB You should use the structures given in this tutorial because they are  oriented appropriately.&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_s_orient.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_s_orient.log]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;2. Identify the Orbitals Required for the CASSCF Calculation&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
Use the geometry from 1. Calculate the HF orbitals with a tight basis set e.g. STO-3G so that it is easier to identify the relevant orbitals for CASSCF.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;HF/STO-3G pop=full nosymm geom=check&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Nosymm is required because every time a calculation is run on the molecule with a different symmetry Gaussian reorients the molecule for that particular point group and will destroy the active space. Nosymm disables this feature.&lt;br /&gt;
* Pop=full prints out the orbitals.&lt;br /&gt;
* Inspect the orbitals. Select those required for the CASSCF. &lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hf.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hf.log]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hf.fchk]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;3. Identify the State Averaged Orbitals for the Ground State&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
An orbital inspection using any visualization software (e.g. GaussView) before performing any CASSCF calculation is essential to identify which orbitals make up the chosen active space. In some cases it may be necessary to use the &#039;&#039;&#039;guess=alter&#039;&#039;&#039; keyword to change the order of the orbitals to make sure the optimisation (see step 4) proceeds with the correct orbitals. Gaussian assumes that the electrons specified in a CASSCF calculation come from the highest occupied orbitals in the initial guess and then takes the remaining orbitals as the lowest virtuals of this guess. &lt;br /&gt;
&lt;br /&gt;
* In this example, the relevant orbitals are the six pi orbitals, which contain six electrons (so the calculation is 6,6). The six orbitals that form the pi molecular orbitals are 18, 20, 21,22, 23 and 24. Only orbital 18 is not included in the active space. Thus we need to swap orbitals 18 and 19 to get the correct active space. Use the keyword &#039;&#039;&#039;guess=alter&#039;&#039;&#039; .&lt;br /&gt;
&lt;br /&gt;
Use the orbitals chosen in 2. (i.e. use the .chk from 2.) Use the final geometry from 2.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;CAS(6,6,nroot=2,stateaverage)/STO-3G nosymm IOP(5/97=100,10/97=100) guess=(read,alter)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Here, the weights of each state must be listed explicitly. The weights are 0.5 and 0.5. These must be specified by typing 0.5 followed by 7 spaces then 0.5 (on the same line) (The Gaussian program reads 10 characters (inc spaces) for the first weight and another 10 characters for the second weight. Thus the 7 spaces plus the three characters &amp;quot;0&amp;quot;, &amp;quot;.&amp;quot; and &amp;quot;5&amp;quot; make up the first 10 characters before the second weight is read.)&lt;br /&gt;
&lt;br /&gt;
* The IOp (5/97=100,10/97=100) tells the program to switch the order of the two states. This is so that we calculate the ground state rather than the excited state. (Gaussian CASSCF calculations always perform optimisations on the highest state listed, so by switching the order we force optimisation of what is actually the lower state.)&lt;br /&gt;
* Nroot=2 specifies the &#039;&#039;first&#039;&#039; excited state so the orbitals will be averaged over the ground state and the first excited state.&lt;br /&gt;
&lt;br /&gt;
* Inspect the orbitals again after the calculation to check if the active space is correct.&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_orb_sa.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_orb_sa.log]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_orb_sa.fchk]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;4. Perform a CASSCF Optimisation on the Ground State with the State Averaged Orbitals&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
Use the orbitals chosen in 3. Use the .chk from 3.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;#P CAS(6,6,nroot=2)/STO-3G nosymm opt=conical pop=full IOP(10/10=700005) IOP(5/97=100,10/97=100) geom=check guess=read&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;N.B.&#039;&#039;&#039; This is not a conical intersection optimisation! However, the keyword opt=conical specifies automatically that the populations of the two states will each be 0.5. Thus there is no need to specify the populations manually.&lt;br /&gt;
* The initial &#039;7&#039; in IOp (10/10=700005) specifies that the calculation should be an optimisation to a minimum (rather than a conical intersection).The final &#039;5&#039; in the same IOp ensures that the orbital rotation derivative contributions from the CP-MC-SCF equations are included. (This is necessary and is usually the default. However, in some  version of Gaussian, the combination of &#039;&#039;&#039;opt&#039;&#039;&#039; and &#039;&#039;&#039;stateaverage&#039;&#039;&#039; excludes this).&lt;br /&gt;
* Stateaverage is the default for opt=conical.&lt;br /&gt;
* Nroot=2 is the default for opt=conical.&lt;br /&gt;
* Do not include the keyword &#039;&#039;&#039;freq&#039;&#039;&#039; in the optimisation. (This combination of IOps does not allow &#039;&#039;&#039;opt&#039;&#039;&#039; and &#039;&#039;&#039;freq&#039;&#039;&#039; to be keywords in the same job.)&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_cas.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_cas.log]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;5. &amp;quot;Clean&amp;quot; the Orbitals&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
In this case, all the orbitals in the active space are pure pi orbitals. Due to small numerical inaccuracies, the final orbitals may include small contributions from other (non-pi) orbitals. The aim of this step is to remove these contributions so that the active space consists (in this example) only of contributions from the C 2PY atomic orbitals. The six relevant orbitals are occupied orbitals 19, 20 and 21, and virtual orbitals 22, 23 and 24. In this example they are already clean. Verify this by inspection of the &amp;quot;Molecular Orbital Coefficients&amp;quot; in the population analysis. &lt;br /&gt;
&lt;br /&gt;
In other cases, multiple optimisations may be necessary to clean the orbitals:&lt;br /&gt;
&lt;br /&gt;
Open the file in GaussView, and Edit/Symmetrize. Use this symmetrised geometry as a starting geometry for another optimsation as in 4 (including the keyword &#039;&#039;&#039;nosymm&#039;&#039;&#039;). &lt;br /&gt;
Use the .chk from 4.&lt;br /&gt;
Re-run the optimisation exactly as in 4.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Ideally here we include the keyword &#039;&#039;&#039;opt=(maxstep=1)&#039;&#039;&#039;. This should ensure that the optimisation takes the smallest possible step: we already know that the geometry is very close to the minimum and we need to prevent any significant re-orientation that might occur if large steps are taken. However, this does not seem to work (at least with g03).&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Repeat until the orbitals are clean.&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;6. Calculate the (High Precision) Vibrational Modes for the Ground State &#039;&#039;with State Averaged Orbitals&#039;&#039;&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
Use the .chk and the geometry from 5. The geometry must be specified explicitly. (With this combination of IOPs, Gaussian extracts the wrong geometry from the .chk file if &#039;&#039;&#039;geom=checkpoint&#039;&#039;&#039; is specified.)&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;CAS(4,4,nroot=2) STO-3G freq=hpmodes guess=read IOP(5/17=41000200,10/10=700007) IOP(5/97=100,10/97=100)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The IOp (5/17=41000200,10/10=700007): includes the CP-MC-SCF correction (as above) (for a frequency calculation); and specifies state averaged orbitals. Do not include the keyword &#039;&#039;&#039;stateaverage&#039;&#039;&#039; with &#039;&#039;&#039;freq&#039;&#039;&#039; (the current version of Gaussian does not support this). Freq=hpmodes tells Gaussian to print the vibrational modes to 5 decimal places. As before, the IOp (5/97=100,10/97=100) forces calculation of the ground state. Do not use the keyword nosymm here. (Nosymm may prevent Gaussian from identifying the symmetries of the orbitals.) Use atom labels rather than numbers (otherwise the dd_generator will not work (see later)).&lt;br /&gt;
&lt;br /&gt;
[[Media:buta-hpfreq.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:buta-hpfreq.log]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;7. The Conical Intersection&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
One strategy for locating the conical intersection is to calculate the Frank-Condon point and run an optimisation from there, following (one of) the negative frequency(ies).&lt;br /&gt;
&lt;br /&gt;
=== 7a. The Frank-Condon Point ===&lt;br /&gt;
&lt;br /&gt;
Use the .chk from 4. Using the same orbitals perform a single point energy calculation for the first excited state.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;CAS(4,4,nroot=2,stateaverage) STO-3G pop=full nosymm guess=read geom=checkpoint&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
As in 3, the weights of each state must be listed explicitly. The weights are 0.5 and 0.5. These must be specified by typing 0.5 followed by 7 spaces then 0.5 (on the same line) &#039;&#039;(The Gaussian program reads 10 characters (inc spaces) for the first weight and another 10 characters for the second weight. Thus the 7 spaces plus the three characters &amp;quot;0&amp;quot;, &amp;quot;.&amp;quot; and &amp;quot;5&amp;quot; make up the first 10 characters before the second weight is read.)&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[[Media:buta-fc.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:buta-fc.log]]&lt;br /&gt;
&lt;br /&gt;
=== 7b. Optimise the Conical Intersection ===&lt;br /&gt;
&lt;br /&gt;
Use the .chk from 7a. Distort the geometry to break the symmetry. &lt;br /&gt;
A suggested distortion is to increase the C-C-C-C dihedral angle to 45° by twisting one of the terminal carbons out of the plane of the other atoms (be careful to move only the CH2 group, not the hydrogen on the adjacent carbon). Then increase the H-C-C-C dihedral angles of both the terminal CH2 groups to 70°, in a disrotatory direction. A conical intersection optimisation should now locate a conical intersection.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;CAS(4,4,nroot=2) STO-3G opt=conical nosymm guess=read pop=full&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Stateaverage is the default for opt=conical.&lt;br /&gt;
Nroot=2 is the default for opt=conical.&lt;br /&gt;
&lt;br /&gt;
[[Media:buta-dis14570ci.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:buta-dis14570ci.log]]&lt;br /&gt;
&lt;br /&gt;
==== Note ====&lt;br /&gt;
When using the the dd_rotation method described in the next section ([[Resgrp:comp-photo-dyn/mctdh90.56dv#Rotation of the Conical Intersection|Rotation of the Conical Intersection]]) it may be convenient to use tighter condition to the optimization of the conical intersection at this stage.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;CAS(4,4,nroot=2) STO-3G opt=(conical,tight) nosymm guess=read pop=full&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The rational of this hack is that after rotation a second conical intersection optimization needs to be perfomed to obtain orbitals and branching space coordinates for the rotated geometry. These quantities cannot be obtained from a single point calculation. In the second optimization the less strict optimization conditions are used such that no actual geometry change is performed.&lt;br /&gt;
&lt;br /&gt;
=== [[Resgrp:comp-photo-dyn/mctdh90.56dv|back]] ===&lt;/div&gt;</summary>
		<author><name>Vs13</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/input&amp;diff=333909</id>
		<title>Resgrp:comp-photo-dyn/mctdh90.56dv Fulvene Tutorial/input</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/input&amp;diff=333909"/>
		<updated>2013-04-23T15:25:50Z</updated>

		<summary type="html">&lt;p&gt;Vs13: /* 4. Perform a CASSCF Optimisation on the Ground State with the State Averaged Orbitals */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Creating Input for Dynamics Calculations =&lt;br /&gt;
&lt;br /&gt;
== MCTDH (DD-vMCG) versions ==&lt;br /&gt;
&lt;br /&gt;
- Development versions: &lt;br /&gt;
&lt;br /&gt;
* mctdh90dv&lt;br /&gt;
* mctdh90.31dv&lt;br /&gt;
* mctdh90.56dv&lt;br /&gt;
&lt;br /&gt;
The inputs required for the dynamic calculation are an optimised ground state structure and an optimized conical intersection structure in the appropriate orientation. [These two structures are used in the diabatic transformation. They do not necessarily need to correspond to the Franck-Condon and to the minimum conical intersection geometries. However, these structures are usually good places to start and so most of this tutorial will assume that these are the references that have been chosen]. The ground state structure must have been optimized with state averaged orbitals. These orbitals must be &amp;quot;cleaned&amp;quot; and the high precision frequencies must have been calculated.&lt;br /&gt;
&lt;br /&gt;
* Development version ( mctdh90.??dv): The only inputs required for the dynamics calculation are an optimized ground state structure and an optimized conical intersection. The rotation will be &amp;quot;automatic&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
- The main objective of this tutorial is to learn how to run dynamics calculations, thus we will give you the optimised geometries in the appropriate rotation.&lt;br /&gt;
(A description of how to rotate a structure will follow in due course)&lt;br /&gt;
&lt;br /&gt;
== State Averaged Orbitals==&lt;br /&gt;
&lt;br /&gt;
State averaged orbitals are necessary in order to represent both ground and excited states at the same time in the space close to the conical intersection. The &#039;&#039;State Average&#039;&#039; algorithm allows the convergence of CASSCF when two or more states are close. A solution is found between the average of the involved orbitals if they were calculated independently for each state. At the Frank-Condon region, away from the intersection, this is not needed, but the code maintains this approximation over all the PES to avoid discontinuities.&lt;br /&gt;
&lt;br /&gt;
= Gaussian Calculations - CASSCF =&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;1. Generate a starting geometry.&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
First of all, we need a set of initial orbitals for the CASSCF calculation, which can be obtained from a simple restricted Hartree-Fock (RHF/STO-3G) optimisation. It is useful in systems with high symmetry to start with the molecule in the standard orientation and from a symmetrised geometry. This can be achieved by running a Gaussian calculation without the nosymm keyword and using the geometry returned by this calculation.&lt;br /&gt;
&lt;br /&gt;
* NB You should use the structures given in this tutorial because they are  oriented appropriately.&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_s_orient.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_s_orient.log]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;2. Identify the Orbitals Required for the CASSCF Calculation&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
Use the geometry from 1. Calculate the HF orbitals with a tight basis set e.g. STO-3G so that it is easier to identify the relevant orbitals for CASSCF.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;HF/STO-3G pop=full nosymm geom=check&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Nosymm is required because every time a calculation is run on the molecule with a different symmetry Gaussian reorients the molecule for that particular point group and will destroy the active space. Nosymm disables this feature.&lt;br /&gt;
* Pop=full prints out the orbitals.&lt;br /&gt;
* Inspect the orbitals. Select those required for the CASSCF. &lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hf.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hf.log]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hf.fchk]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;3. Identify the State Averaged Orbitals for the Ground State&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
An orbital inspection using any visualization software (e.g. GaussView) before performing any CASSCF calculation is essential to identify which orbitals make up the chosen active space. In some cases it may be necessary to use the &#039;&#039;&#039;guess=alter&#039;&#039;&#039; keyword to change the order of the orbitals to make sure the optimisation (see step 4) proceeds with the correct orbitals. Gaussian assumes that the electrons specified in a CASSCF calculation come from the highest occupied orbitals in the initial guess and then takes the remaining orbitals as the lowest virtuals of this guess. &lt;br /&gt;
&lt;br /&gt;
* In this example, the relevant orbitals are the six pi orbitals, which contain six electrons (so the calculation is 6,6). The six orbitals that form the pi molecular orbitals are 18, 20, 21,22, 23 and 24. Only orbital 18 is not included in the active space. Thus we need to swap orbitals 18 and 19 to get the correct active space. Use the keyword &#039;&#039;&#039;guess=alter&#039;&#039;&#039; .&lt;br /&gt;
&lt;br /&gt;
Use the orbitals chosen in 2. (i.e. use the .chk from 2.) Use the final geometry from 2.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;CAS(6,6,nroot=2,stateaverage)/STO-3G nosymm IOP(5/97=100,10/97=100) guess=(read,alter)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Here, the weights of each state must be listed explicitly. The weights are 0.5 and 0.5. These must be specified by typing 0.5 followed by 7 spaces then 0.5 (on the same line) (The Gaussian program reads 10 characters (inc spaces) for the first weight and another 10 characters for the second weight. Thus the 7 spaces plus the three characters &amp;quot;0&amp;quot;, &amp;quot;.&amp;quot; and &amp;quot;5&amp;quot; make up the first 10 characters before the second weight is read.)&lt;br /&gt;
&lt;br /&gt;
* The IOp (5/97=100,10/97=100) tells the program to switch the order of the two states. This is so that we calculate the ground state rather than the excited state. (Gaussian CASSCF calculations always perform optimisations on the highest state listed, so by switching the order we force optimisation of what is actually the lower state.)&lt;br /&gt;
* Nroot=2 specifies the &#039;&#039;first&#039;&#039; excited state so the orbitals will be averaged over the ground state and the first excited state.&lt;br /&gt;
&lt;br /&gt;
* Inspect the orbitals again after the calculation to check if the active space is correct.&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_orb_sa.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_orb_sa.log]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_orb_sa.fchk]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;4. Perform a CASSCF Optimisation on the Ground State with the State Averaged Orbitals&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
Use the orbitals chosen in 3. Use the .chk from 3.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;#P CAS(6,6,nroot=2)/STO-3G nosymm opt=conical pop=full IOP(10/10=700005) IOP(5/97=100,10/97=100) geom=check guess=read&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;N.B.&#039;&#039;&#039; This is not a conical intersection optimisation! However, the keyword opt=conical specifies automatically that the populations of the two states will each be 0.5. Thus there is no need to specify the populations manually.&lt;br /&gt;
* The initial &#039;7&#039; in IOp (10/10=700005) specifies that the calculation should be an optimisation to a minimum (rather than a conical intersection).The final &#039;5&#039; in the same IOp ensures that the orbital rotation derivative contributions from the CP-MC-SCF equations are included. (This is necessary and is usually the default. However, in some  version of Gaussian, the combination of &#039;&#039;&#039;opt&#039;&#039;&#039; and &#039;&#039;&#039;stateaverage&#039;&#039;&#039; excludes this).&lt;br /&gt;
* Stateaverage is the default for opt=conical.&lt;br /&gt;
* Nroot=2 is the default for opt=conical.&lt;br /&gt;
* Do not include the keyword &#039;&#039;&#039;freq&#039;&#039;&#039; in the optimisation. (This combination of IOps does not allow &#039;&#039;&#039;opt&#039;&#039;&#039; and &#039;&#039;&#039;freq&#039;&#039;&#039; to be keywords in the same job.)&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_cas.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_cas.log]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;5. &amp;quot;Clean&amp;quot; the Orbitals&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
In this case, all the orbitals in the active space are pure pi orbitals. Due to small numerical inaccuracies, the final orbitals may include small contributions from other (non-pi) orbitals. The aim of this step is to remove these contributions so that the active space consists (in this example) only of contributions from the C 2PY atomic orbitals. The four relevant orbitals are occupied orbitals 14 and 15 and virtual orbitals 16 and 17. In fact, they are already clean in this example. Verify this by inspection of the &amp;quot;Molecular Orbital Coefficients&amp;quot; in the population analysis. &lt;br /&gt;
&lt;br /&gt;
In other cases, multiple optimisations may be necessary to clean the orbitals:&lt;br /&gt;
&lt;br /&gt;
Open the file in GaussView, and Edit/Symmetrize. Use this symmetrised geometry as a starting geometry for another optimsation as in 4 (including the keyword &#039;&#039;&#039;nosymm&#039;&#039;&#039;). &lt;br /&gt;
Use the .chk from 4.&lt;br /&gt;
Re-run the optimisation exactly as in 4.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Ideally here we include the keyword &#039;&#039;&#039;opt=(maxstep=1)&#039;&#039;&#039;. This should ensure that the optimisation takes the smallest possible step: we already know that the geometry is very close to the minimum and we need to prevent any significant re-orientation that might occur if large steps are taken. However, this does not seem to work (at least with g03).&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Repeat until the orbitals are clean.&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;6. Calculate the (High Precision) Vibrational Modes for the Ground State &#039;&#039;with State Averaged Orbitals&#039;&#039;&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
Use the .chk and the geometry from 5. The geometry must be specified explicitly. (With this combination of IOPs, Gaussian extracts the wrong geometry from the .chk file if &#039;&#039;&#039;geom=checkpoint&#039;&#039;&#039; is specified.)&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;CAS(4,4,nroot=2) STO-3G freq=hpmodes guess=read IOP(5/17=41000200,10/10=700007) IOP(5/97=100,10/97=100)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The IOp (5/17=41000200,10/10=700007): includes the CP-MC-SCF correction (as above) (for a frequency calculation); and specifies state averaged orbitals. Do not include the keyword &#039;&#039;&#039;stateaverage&#039;&#039;&#039; with &#039;&#039;&#039;freq&#039;&#039;&#039; (the current version of Gaussian does not support this). Freq=hpmodes tells Gaussian to print the vibrational modes to 5 decimal places. As before, the IOp (5/97=100,10/97=100) forces calculation of the ground state. Do not use the keyword nosymm here. (Nosymm may prevent Gaussian from identifying the symmetries of the orbitals.) Use atom labels rather than numbers (otherwise the dd_generator will not work (see later)).&lt;br /&gt;
&lt;br /&gt;
[[Media:buta-hpfreq.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:buta-hpfreq.log]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;7. The Conical Intersection&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
One strategy for locating the conical intersection is to calculate the Frank-Condon point and run an optimisation from there, following (one of) the negative frequency(ies).&lt;br /&gt;
&lt;br /&gt;
=== 7a. The Frank-Condon Point ===&lt;br /&gt;
&lt;br /&gt;
Use the .chk from 4. Using the same orbitals perform a single point energy calculation for the first excited state.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;CAS(4,4,nroot=2,stateaverage) STO-3G pop=full nosymm guess=read geom=checkpoint&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
As in 3, the weights of each state must be listed explicitly. The weights are 0.5 and 0.5. These must be specified by typing 0.5 followed by 7 spaces then 0.5 (on the same line) &#039;&#039;(The Gaussian program reads 10 characters (inc spaces) for the first weight and another 10 characters for the second weight. Thus the 7 spaces plus the three characters &amp;quot;0&amp;quot;, &amp;quot;.&amp;quot; and &amp;quot;5&amp;quot; make up the first 10 characters before the second weight is read.)&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[[Media:buta-fc.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:buta-fc.log]]&lt;br /&gt;
&lt;br /&gt;
=== 7b. Optimise the Conical Intersection ===&lt;br /&gt;
&lt;br /&gt;
Use the .chk from 7a. Distort the geometry to break the symmetry. &lt;br /&gt;
A suggested distortion is to increase the C-C-C-C dihedral angle to 45° by twisting one of the terminal carbons out of the plane of the other atoms (be careful to move only the CH2 group, not the hydrogen on the adjacent carbon). Then increase the H-C-C-C dihedral angles of both the terminal CH2 groups to 70°, in a disrotatory direction. A conical intersection optimisation should now locate a conical intersection.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;CAS(4,4,nroot=2) STO-3G opt=conical nosymm guess=read pop=full&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Stateaverage is the default for opt=conical.&lt;br /&gt;
Nroot=2 is the default for opt=conical.&lt;br /&gt;
&lt;br /&gt;
[[Media:buta-dis14570ci.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:buta-dis14570ci.log]]&lt;br /&gt;
&lt;br /&gt;
==== Note ====&lt;br /&gt;
When using the the dd_rotation method described in the next section ([[Resgrp:comp-photo-dyn/mctdh90.56dv#Rotation of the Conical Intersection|Rotation of the Conical Intersection]]) it may be convenient to use tighter condition to the optimization of the conical intersection at this stage.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;CAS(4,4,nroot=2) STO-3G opt=(conical,tight) nosymm guess=read pop=full&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The rational of this hack is that after rotation a second conical intersection optimization needs to be perfomed to obtain orbitals and branching space coordinates for the rotated geometry. These quantities cannot be obtained from a single point calculation. In the second optimization the less strict optimization conditions are used such that no actual geometry change is performed.&lt;br /&gt;
&lt;br /&gt;
=== [[Resgrp:comp-photo-dyn/mctdh90.56dv|back]] ===&lt;/div&gt;</summary>
		<author><name>Vs13</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/input&amp;diff=333908</id>
		<title>Resgrp:comp-photo-dyn/mctdh90.56dv Fulvene Tutorial/input</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv_Fulvene_Tutorial/input&amp;diff=333908"/>
		<updated>2013-04-23T15:23:35Z</updated>

		<summary type="html">&lt;p&gt;Vs13: /* 4. Perform a CASSCF Optimisation on the Ground State with the State Averaged Orbitals */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Creating Input for Dynamics Calculations =&lt;br /&gt;
&lt;br /&gt;
== MCTDH (DD-vMCG) versions ==&lt;br /&gt;
&lt;br /&gt;
- Development versions: &lt;br /&gt;
&lt;br /&gt;
* mctdh90dv&lt;br /&gt;
* mctdh90.31dv&lt;br /&gt;
* mctdh90.56dv&lt;br /&gt;
&lt;br /&gt;
The inputs required for the dynamic calculation are an optimised ground state structure and an optimized conical intersection structure in the appropriate orientation. [These two structures are used in the diabatic transformation. They do not necessarily need to correspond to the Franck-Condon and to the minimum conical intersection geometries. However, these structures are usually good places to start and so most of this tutorial will assume that these are the references that have been chosen]. The ground state structure must have been optimized with state averaged orbitals. These orbitals must be &amp;quot;cleaned&amp;quot; and the high precision frequencies must have been calculated.&lt;br /&gt;
&lt;br /&gt;
* Development version ( mctdh90.??dv): The only inputs required for the dynamics calculation are an optimized ground state structure and an optimized conical intersection. The rotation will be &amp;quot;automatic&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
- The main objective of this tutorial is to learn how to run dynamics calculations, thus we will give you the optimised geometries in the appropriate rotation.&lt;br /&gt;
(A description of how to rotate a structure will follow in due course)&lt;br /&gt;
&lt;br /&gt;
== State Averaged Orbitals==&lt;br /&gt;
&lt;br /&gt;
State averaged orbitals are necessary in order to represent both ground and excited states at the same time in the space close to the conical intersection. The &#039;&#039;State Average&#039;&#039; algorithm allows the convergence of CASSCF when two or more states are close. A solution is found between the average of the involved orbitals if they were calculated independently for each state. At the Frank-Condon region, away from the intersection, this is not needed, but the code maintains this approximation over all the PES to avoid discontinuities.&lt;br /&gt;
&lt;br /&gt;
= Gaussian Calculations - CASSCF =&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;1. Generate a starting geometry.&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
First of all, we need a set of initial orbitals for the CASSCF calculation, which can be obtained from a simple restricted Hartree-Fock (RHF/STO-3G) optimisation. It is useful in systems with high symmetry to start with the molecule in the standard orientation and from a symmetrised geometry. This can be achieved by running a Gaussian calculation without the nosymm keyword and using the geometry returned by this calculation.&lt;br /&gt;
&lt;br /&gt;
* NB You should use the structures given in this tutorial because they are  oriented appropriately.&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_s_orient.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_s_orient.log]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;2. Identify the Orbitals Required for the CASSCF Calculation&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
Use the geometry from 1. Calculate the HF orbitals with a tight basis set e.g. STO-3G so that it is easier to identify the relevant orbitals for CASSCF.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;HF/STO-3G pop=full nosymm geom=check&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Nosymm is required because every time a calculation is run on the molecule with a different symmetry Gaussian reorients the molecule for that particular point group and will destroy the active space. Nosymm disables this feature.&lt;br /&gt;
* Pop=full prints out the orbitals.&lt;br /&gt;
* Inspect the orbitals. Select those required for the CASSCF. &lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hf.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hf.log]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_hf.fchk]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;3. Identify the State Averaged Orbitals for the Ground State&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
An orbital inspection using any visualization software (e.g. GaussView) before performing any CASSCF calculation is essential to identify which orbitals make up the chosen active space. In some cases it may be necessary to use the &#039;&#039;&#039;guess=alter&#039;&#039;&#039; keyword to change the order of the orbitals to make sure the optimisation (see step 4) proceeds with the correct orbitals. Gaussian assumes that the electrons specified in a CASSCF calculation come from the highest occupied orbitals in the initial guess and then takes the remaining orbitals as the lowest virtuals of this guess. &lt;br /&gt;
&lt;br /&gt;
* In this example, the relevant orbitals are the six pi orbitals, which contain six electrons (so the calculation is 6,6). The six orbitals that form the pi molecular orbitals are 18, 20, 21,22, 23 and 24. Only orbital 18 is not included in the active space. Thus we need to swap orbitals 18 and 19 to get the correct active space. Use the keyword &#039;&#039;&#039;guess=alter&#039;&#039;&#039; .&lt;br /&gt;
&lt;br /&gt;
Use the orbitals chosen in 2. (i.e. use the .chk from 2.) Use the final geometry from 2.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;CAS(6,6,nroot=2,stateaverage)/STO-3G nosymm IOP(5/97=100,10/97=100) guess=(read,alter)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Here, the weights of each state must be listed explicitly. The weights are 0.5 and 0.5. These must be specified by typing 0.5 followed by 7 spaces then 0.5 (on the same line) (The Gaussian program reads 10 characters (inc spaces) for the first weight and another 10 characters for the second weight. Thus the 7 spaces plus the three characters &amp;quot;0&amp;quot;, &amp;quot;.&amp;quot; and &amp;quot;5&amp;quot; make up the first 10 characters before the second weight is read.)&lt;br /&gt;
&lt;br /&gt;
* The IOp (5/97=100,10/97=100) tells the program to switch the order of the two states. This is so that we calculate the ground state rather than the excited state. (Gaussian CASSCF calculations always perform optimisations on the highest state listed, so by switching the order we force optimisation of what is actually the lower state.)&lt;br /&gt;
* Nroot=2 specifies the &#039;&#039;first&#039;&#039; excited state so the orbitals will be averaged over the ground state and the first excited state.&lt;br /&gt;
&lt;br /&gt;
* Inspect the orbitals again after the calculation to check if the active space is correct.&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_orb_sa.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_orb_sa.log]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_orb_sa.fchk]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;4. Perform a CASSCF Optimisation on the Ground State with the State Averaged Orbitals&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
Use the orbitals chosen in 3. Use the .chk from 3.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;#P CAS(6,6,nroot=2)/STO-3G nosymm opt=conical pop=full IOP(10/10=700005) IOP(5/97=100,10/97=100) geom=check guess=read&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;N.B.&#039;&#039;&#039; This is not a conical intersection optimisation! However, the keyword opt=conical specifies automatically that the populations of the two states will each be 0.5. Thus there is no need to specify the populations manually.&lt;br /&gt;
The initial &#039;7&#039; in IOp (10/10=700005) specifies that the calculation should be an optimisation to a minimum (rather than a conical intersection).&lt;br /&gt;
The final &#039;5&#039; in the same IOp ensures that the orbital rotation derivative contributions from the CP-MC-SCF equations are included. (This is necessary and is usually the default. However, in some  version of Gaussian, the combination of &#039;&#039;&#039;opt&#039;&#039;&#039; and &#039;&#039;&#039;stateaverage&#039;&#039;&#039; excludes this).&lt;br /&gt;
Stateaverage is the default for opt=conical.&lt;br /&gt;
Nroot=2 is the default for opt=conical.&lt;br /&gt;
Do not include the keyword &#039;&#039;&#039;freq&#039;&#039;&#039; in the optimisation. (This combination of IOps does not allow &#039;&#039;&#039;opt&#039;&#039;&#039; and &#039;&#039;&#039;freq&#039;&#039;&#039; to be keywords in the same job.)&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_cas.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:Fulv_cas.log]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;5. &amp;quot;Clean&amp;quot; the Orbitals&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
In this case, all the orbitals in the active space are pure pi orbitals. Due to small numerical inaccuracies, the final orbitals may include small contributions from other (non-pi) orbitals. The aim of this step is to remove these contributions so that the active space consists (in this example) only of contributions from the C 2PY atomic orbitals. The four relevant orbitals are occupied orbitals 14 and 15 and virtual orbitals 16 and 17. In fact, they are already clean in this example. Verify this by inspection of the &amp;quot;Molecular Orbital Coefficients&amp;quot; in the population analysis. &lt;br /&gt;
&lt;br /&gt;
In other cases, multiple optimisations may be necessary to clean the orbitals:&lt;br /&gt;
&lt;br /&gt;
Open the file in GaussView, and Edit/Symmetrize. Use this symmetrised geometry as a starting geometry for another optimsation as in 4 (including the keyword &#039;&#039;&#039;nosymm&#039;&#039;&#039;). &lt;br /&gt;
Use the .chk from 4.&lt;br /&gt;
Re-run the optimisation exactly as in 4.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Ideally here we include the keyword &#039;&#039;&#039;opt=(maxstep=1)&#039;&#039;&#039;. This should ensure that the optimisation takes the smallest possible step: we already know that the geometry is very close to the minimum and we need to prevent any significant re-orientation that might occur if large steps are taken. However, this does not seem to work (at least with g03).&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Repeat until the orbitals are clean.&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;6. Calculate the (High Precision) Vibrational Modes for the Ground State &#039;&#039;with State Averaged Orbitals&#039;&#039;&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
Use the .chk and the geometry from 5. The geometry must be specified explicitly. (With this combination of IOPs, Gaussian extracts the wrong geometry from the .chk file if &#039;&#039;&#039;geom=checkpoint&#039;&#039;&#039; is specified.)&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;CAS(4,4,nroot=2) STO-3G freq=hpmodes guess=read IOP(5/17=41000200,10/10=700007) IOP(5/97=100,10/97=100)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The IOp (5/17=41000200,10/10=700007): includes the CP-MC-SCF correction (as above) (for a frequency calculation); and specifies state averaged orbitals. Do not include the keyword &#039;&#039;&#039;stateaverage&#039;&#039;&#039; with &#039;&#039;&#039;freq&#039;&#039;&#039; (the current version of Gaussian does not support this). Freq=hpmodes tells Gaussian to print the vibrational modes to 5 decimal places. As before, the IOp (5/97=100,10/97=100) forces calculation of the ground state. Do not use the keyword nosymm here. (Nosymm may prevent Gaussian from identifying the symmetries of the orbitals.) Use atom labels rather than numbers (otherwise the dd_generator will not work (see later)).&lt;br /&gt;
&lt;br /&gt;
[[Media:buta-hpfreq.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:buta-hpfreq.log]]&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;7. The Conical Intersection&#039;&#039;&#039; ==&lt;br /&gt;
&lt;br /&gt;
One strategy for locating the conical intersection is to calculate the Frank-Condon point and run an optimisation from there, following (one of) the negative frequency(ies).&lt;br /&gt;
&lt;br /&gt;
=== 7a. The Frank-Condon Point ===&lt;br /&gt;
&lt;br /&gt;
Use the .chk from 4. Using the same orbitals perform a single point energy calculation for the first excited state.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;CAS(4,4,nroot=2,stateaverage) STO-3G pop=full nosymm guess=read geom=checkpoint&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
As in 3, the weights of each state must be listed explicitly. The weights are 0.5 and 0.5. These must be specified by typing 0.5 followed by 7 spaces then 0.5 (on the same line) &#039;&#039;(The Gaussian program reads 10 characters (inc spaces) for the first weight and another 10 characters for the second weight. Thus the 7 spaces plus the three characters &amp;quot;0&amp;quot;, &amp;quot;.&amp;quot; and &amp;quot;5&amp;quot; make up the first 10 characters before the second weight is read.)&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[[Media:buta-fc.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:buta-fc.log]]&lt;br /&gt;
&lt;br /&gt;
=== 7b. Optimise the Conical Intersection ===&lt;br /&gt;
&lt;br /&gt;
Use the .chk from 7a. Distort the geometry to break the symmetry. &lt;br /&gt;
A suggested distortion is to increase the C-C-C-C dihedral angle to 45° by twisting one of the terminal carbons out of the plane of the other atoms (be careful to move only the CH2 group, not the hydrogen on the adjacent carbon). Then increase the H-C-C-C dihedral angles of both the terminal CH2 groups to 70°, in a disrotatory direction. A conical intersection optimisation should now locate a conical intersection.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;CAS(4,4,nroot=2) STO-3G opt=conical nosymm guess=read pop=full&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Stateaverage is the default for opt=conical.&lt;br /&gt;
Nroot=2 is the default for opt=conical.&lt;br /&gt;
&lt;br /&gt;
[[Media:buta-dis14570ci.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:buta-dis14570ci.log]]&lt;br /&gt;
&lt;br /&gt;
==== Note ====&lt;br /&gt;
When using the the dd_rotation method described in the next section ([[Resgrp:comp-photo-dyn/mctdh90.56dv#Rotation of the Conical Intersection|Rotation of the Conical Intersection]]) it may be convenient to use tighter condition to the optimization of the conical intersection at this stage.&lt;br /&gt;
&lt;br /&gt;
Keywords: &#039;&#039;&#039;CAS(4,4,nroot=2) STO-3G opt=(conical,tight) nosymm guess=read pop=full&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The rational of this hack is that after rotation a second conical intersection optimization needs to be perfomed to obtain orbitals and branching space coordinates for the rotated geometry. These quantities cannot be obtained from a single point calculation. In the second optimization the less strict optimization conditions are used such that no actual geometry change is performed.&lt;br /&gt;
&lt;br /&gt;
=== [[Resgrp:comp-photo-dyn/mctdh90.56dv|back]] ===&lt;/div&gt;</summary>
		<author><name>Vs13</name></author>
	</entry>
</feed>