<?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=Callan</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=Callan"/>
	<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/wiki/Special:Contributions/Callan"/>
	<updated>2026-04-05T23:36:39Z</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/run&amp;diff=291897</id>
		<title>Resgrp:comp-photo-dyn/mctdh90.56dv/run</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv/run&amp;diff=291897"/>
		<updated>2013-01-11T11:11:01Z</updated>

		<summary type="html">&lt;p&gt;Callan: /* List of questions asked by dd_gennerator */&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>Callan</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv/run&amp;diff=255542</id>
		<title>Resgrp:comp-photo-dyn/mctdh90.56dv/run</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv/run&amp;diff=255542"/>
		<updated>2012-09-19T16:11:49Z</updated>

		<summary type="html">&lt;p&gt;Callan: /* 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;
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_gennerator====&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>Callan</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv/run&amp;diff=255541</id>
		<title>Resgrp:comp-photo-dyn/mctdh90.56dv/run</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv/run&amp;diff=255541"/>
		<updated>2012-09-19T16:11:12Z</updated>

		<summary type="html">&lt;p&gt;Callan: /* 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;
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_gennerator====&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.&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>Callan</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv/run&amp;diff=255540</id>
		<title>Resgrp:comp-photo-dyn/mctdh90.56dv/run</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv/run&amp;diff=255540"/>
		<updated>2012-09-19T16:09:28Z</updated>

		<summary type="html">&lt;p&gt;Callan: /* Gaussian Output to be Used as Input for the Dynamics Program */&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_gennerator====&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&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>Callan</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv/input&amp;diff=255539</id>
		<title>Resgrp:comp-photo-dyn/mctdh90.56dv/input</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv/input&amp;diff=255539"/>
		<updated>2012-09-19T16:07:34Z</updated>

		<summary type="html">&lt;p&gt;Callan: /* 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 input required for the dynamics calculation is an optimised ground state structure and an optimised conical intersection in the appropriate orientation. [These two structures are used in the diabatic transformation. They need not necessarily correspond to the Franck-Condon and 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 optimised 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 input required for the dynamics calculation is an optimised ground state structure and an optimised conical intersection. The rotation will be &amp;quot;automatic&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
- The main objective of this tutorial is learn how to run dynamics calculations, thus we will give you the optimised geometries in the appropiate rotation. (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) optimization. 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:buta-s-orient.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:buta-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:buta-hf.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:buta-hf.log]]&lt;br /&gt;
&lt;br /&gt;
[[Media:buta-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 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 &#039;&#039;&#039;guess=alter&#039;&#039;&#039; 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 four pi orbitals, which contain four electrons (so the calculation is 4,4). The four orbitals that form the pi molecular orbitals are 14, 15, 16 and 17, thus we do not have to worry about swapping orbitals with the keword &#039;&#039;alter&#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(4,4,nroot=2,stateaverage) STO-3G nosymm IOP(5/97=100,10/97=100) guess=read&#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 averaged over the ground state and the first excited state.&lt;br /&gt;
&lt;br /&gt;
* Inspect the orbitals. Select those required for the CASSCF optimisation. The relevant orbitals are still 14, 15, 16 and 17.&lt;br /&gt;
&lt;br /&gt;
[[Media:buta-orbs-sa.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:buta-orbs-sa.log]]&lt;br /&gt;
&lt;br /&gt;
[[Media:buta-orbs-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;opt=conical pop=full CAS(4,4,nroot=2,stateaverage) STO-3G nosymm IOP(10/10=700005) IOP(5/97=100,10/97=100) geom=checkpoint guess=read&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
N.B. 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. 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 the current 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:buta-cas.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:buta-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;
=== [[Resgrp:comp-photo-dyn/mctdh90.56dv|back]] ===&lt;/div&gt;</summary>
		<author><name>Callan</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv/input&amp;diff=255538</id>
		<title>Resgrp:comp-photo-dyn/mctdh90.56dv/input</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.56dv/input&amp;diff=255538"/>
		<updated>2012-09-19T16:07:02Z</updated>

		<summary type="html">&lt;p&gt;Callan: /* 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 input required for the dynamics calculation is an optimised ground state structure and an optimised conical intersection in the appropriate orientation. [These two structures are used in the diabatic transformation. They need not necessarily correspond to the Franck-Condon and 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 optimised 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 input required for the dynamics calculation is an optimised ground state structure and an optimised conical intersection. The rotation will be &amp;quot;automatic&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
- The main objective of this tutorial is learn how to run dynamics calculations, thus we will give you the optimised geometries in the appropiate rotation. (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) optimization. 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:buta-s-orient.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:buta-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:buta-hf.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:buta-hf.log]]&lt;br /&gt;
&lt;br /&gt;
[[Media:buta-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 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 &#039;&#039;&#039;guess=alter&#039;&#039;&#039; 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 four pi orbitals, which contain four electrons (so the calculation is 4,4). The four orbitals that form the pi molecular orbitals are 14, 15, 16 and 17, thus we do not have to worry about swapping orbitals with the keword &#039;&#039;alter&#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(4,4,nroot=2,stateaverage) STO-3G nosymm IOP(5/97=100,10/97=100) guess=read&#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 averaged over the ground state and the first excited state.&lt;br /&gt;
&lt;br /&gt;
* Inspect the orbitals. Select those required for the CASSCF optimisation. The relevant orbitals are still 14, 15, 16 and 17.&lt;br /&gt;
&lt;br /&gt;
[[Media:buta-orbs-sa.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:buta-orbs-sa.log]]&lt;br /&gt;
&lt;br /&gt;
[[Media:buta-orbs-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;opt=conical pop=full CAS(4,4,nroot=2,stateaverage) STO-3G nosymm IOP(10/10=700005) IOP(5/97=100,10/97=100) geom=checkpoint guess=read&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
N.B. 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. 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 the current 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:buta-cas.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:buta-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_geneartor 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;
=== [[Resgrp:comp-photo-dyn/mctdh90.56dv|back]] ===&lt;/div&gt;</summary>
		<author><name>Callan</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.31dv/run&amp;diff=53107</id>
		<title>Resgrp:comp-photo-dyn/mctdh90.31dv/run</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.31dv/run&amp;diff=53107"/>
		<updated>2009-05-05T17:20:04Z</updated>

		<summary type="html">&lt;p&gt;Callan: /* &amp;#039;&amp;#039;&amp;#039;The Database (DB)&amp;#039;&amp;#039;&amp;#039; */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= &#039;&#039;&#039;Basic use of the MCTDH 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.&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.  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 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 (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 (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 program. It contains all the mutual keywords of the GAUSSIAN calculations which will be run on-the-fly by MCTDH. 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.&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 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_gennerator====&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 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&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 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&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;/div&gt;</summary>
		<author><name>Callan</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn&amp;diff=53106</id>
		<title>Resgrp:comp-photo-dyn</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn&amp;diff=53106"/>
		<updated>2009-05-05T14:22:21Z</updated>

		<summary type="html">&lt;p&gt;Callan: /* mctdh90.31dv */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Benjamin / Charlotte / David / Marta to create this please! Some Documentation and some tutorials...&lt;br /&gt;
MY COMMENTS IN UPPER CASE  MAR&lt;br /&gt;
&lt;br /&gt;
= The direct quantum dynamics package =&lt;br /&gt;
&lt;br /&gt;
The direct quantum dynamics method we use is based on the propagation of DD-vMCG (direct dynamics variational multi-configuration Gaussian) wavepackets. This has been implemented in a development version of the Heidelberg MCTDH package [[http://www.pci.uni-heidelberg.de/cms/mctdh.html see web page]] by Graham A. Worth [[http://www.stchem.bham.ac.uk/~worthgrp/ see web page]] and collaborators.&lt;br /&gt;
&lt;br /&gt;
This package consists of a set of programs for multidimensional quantum dynamics using the MCTDH algorithm (multi-configuration time- dependent Hartree). The vMCG method is a particular case of MCTDH, where the nuclear wavepacket is expanded in a time-dependent basis set of Gaussian functions. The direct dynamics implementation allows the electronic energy (potential energy for the nuclei) to be calculated on-the-fly by the quantum chemistry package GAUSSIAN around the centre of each Gaussian function in the expansion, for both electronic states involved in the photochemical process under study.&lt;br /&gt;
&lt;br /&gt;
This approach provides a time-resolved simulation of the photochemical mechanism induced by the initial condition chosen by the user. Non-adiabatic effects and tunneling are better described than with semi-classical trajectory methods such as surface hopping [[http://www.informaworld.com/10.1080/00268970802172503 see recent review]].&lt;br /&gt;
&lt;br /&gt;
== Current available versions ==&lt;br /&gt;
&lt;br /&gt;
* mctdh90dev&lt;br /&gt;
&lt;br /&gt;
This is the &amp;quot;old&amp;quot; and stable version of the code, which has been used by Marta Araujo and David Asturiol. This version relies on the multi-set formulation for DD-vMCG calculations (distinct Gaussian functions on different electronic states), which complicates the interpretation of results and often generates numerical problems. In addition, particular cases require particular versions of the source code to be recompiled.&lt;br /&gt;
 &lt;br /&gt;
* mctdh90.31dev&lt;br /&gt;
&lt;br /&gt;
This version should be used from now on, but has not been tested extensively yet. It is more portable and more flexible in terms of options. The main new feature is the possibility of using the single-set formulation for DD-vMCG calculations (a unique set of Gaussian functions with varying occupancies on each electronic states).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;N.B.&#039;&#039;: the potential energy surfaces are calculated in the adiabatic picture by GAUSSIAN and must be transformed to the diabatic picture for MCTDH. A simple scheme, based on the &amp;quot;regularized&amp;quot; diabatic states of Köppel &#039;&#039;et al.&#039;&#039; [[http://link.aip.org/link/?JCPSA6/115/2377/1 see reference]], has been used to date in which the gradient difference and non-adiabatic coupling at a point on the conical intersection seam can be used to estimate the transformation matrix. As a consequence, the user needs to provide the geometry and the branching-space vectors of a chosen conical intersection. This complicates the generation of the input files, as these three vectors are given in a Cartesian frame that must be re-orientated following some constraints discussed further in this manual. This also introduces a possible bias and also makes the interpretation of results quite delicate in terms of the assignment of the electronic populations in both representations. A work is in progress to implement a new scheme beyond these limitations.&lt;br /&gt;
&lt;br /&gt;
== General overview ==&lt;br /&gt;
&lt;br /&gt;
The study of photochemical mechanisms using the DD-vMCG method can be approached in four stages. &lt;br /&gt;
&lt;br /&gt;
1) The preliminary stage is a static description of the mechanism under study. This corresponds to a description of the main topological features of the potential energy surfaces of the coupled electronic states, as in any other study of the potential energy surfaces using CASSCF [link, see benzene tutorial]. In practice, this involves:&lt;br /&gt;
&lt;br /&gt;
# Choice of the active space and basis set for the electronic wavefunction&lt;br /&gt;
# Characterisation of the relevant critical points (stationary points and conical intersection points)&lt;br /&gt;
# Characterisations of the main pathways (reaction paths and crossing seams)&lt;br /&gt;
# Definition – and possible selection – of the nuclear coordinates &lt;br /&gt;
&lt;br /&gt;
Some comments:&lt;br /&gt;
&lt;br /&gt;
- Choosing the active space may happen to be delicate when a full-valence description is too expensive (or just too large) to be used for frequency calculations, in particular if sigma and pi orbitals can mix. The user should keep in mind that the active space will be propagated along the trajectories followed by the centres of the Gaussian functions and may break in very distorted geometries. &lt;br /&gt;
&lt;br /&gt;
- The main critical points involved in the mechanism  must be identified, optimised and characterised. Stationary points are characterised by frequency calculations, and conical intersection points by examining the nature of the electronic states involved and the branching-space vectors that lifts the degeneracy. The important pathways can be characterised in the form of mimimum energy paths (intrinsic reaction coordinate) linking stationary points. In addition, a development version of GAUSSIAN implemented in our group [link, see documentation (Patrick&#039;s page)] can be used to characterise the curvatures of the intersection space (crossing seam). The same program can calculate minimum energy paths within the intersection space, linking conical intersection points characterised as seam minima or seam saddle points. &lt;br /&gt;
&lt;br /&gt;
- For now, the nuclear coordinates are defined as the normal coordinates of the electronic ground-state minimum (magnitude of nuclear displacements along the directions of the normal modes) for convenience. Their number can be reduced to keep the most relevant ones and thus simplify the study of the system dynamics. A method based on the development version of GAUSSIAN mentioned above may be used in this context [[http://link.aip.org/link/?JCPSA6/128/124307/1 see reference]].&lt;br /&gt;
&lt;br /&gt;
2) The second stage is the generation of the input files. This can be performed automatically by a utility program that asks the user questions in order to set the correct options, but two calculations have to be done first: &lt;br /&gt;
&lt;br /&gt;
# Frequency calculation at the ground-state minimum (log and chk or fchk files), used for (i) the initial geometry, (ii) the definition of the normal coordinates, and (iii) the initial active space.&lt;br /&gt;
# Optimised conical intersection (log file), used for the generation of diabatic electronic states from the adiabatic ones (when the so-called &amp;quot;regularization&amp;quot; scheme is used). &lt;br /&gt;
 &lt;br /&gt;
3) The third stage corresponds to the dynamics calculation itself. This part is managed by the MCTDH program and should finish normally if the input file were written correctly. However, this may fail for various reasons, often because converging the active space becomes difficult. Also, calculations may have to be redone several times, with conditions that can be improved, for example by increasing the number of Gaussian functions in the wavepacket expansion, or by changing the conical intersection point chosen for &amp;quot;regularization&amp;quot; scheme if this approach is to be followed.&lt;br /&gt;
&lt;br /&gt;
4) Finally, the last step is the analysis of results. This involves looking at the time evolution of:&lt;br /&gt;
&lt;br /&gt;
* Normal coordinates at the centre of each Gaussian function (&amp;quot;trajectories&amp;quot;)&lt;br /&gt;
* Averages and widths of the normal coordinates for the global wavepacket&lt;br /&gt;
* Adiabatic and diabatic energies at the centre of each Gaussian function (&amp;quot;trajectories&amp;quot;)&lt;br /&gt;
* Electronic populations for the global wavepacket&lt;br /&gt;
&lt;br /&gt;
Some comments:&lt;br /&gt;
&lt;br /&gt;
- Normal coordinates can be transformed into Cartesian or internal coordinates. Cartesian coordinates can be used to further represent trajectories as movies using a utility program.&lt;br /&gt;
&lt;br /&gt;
- The quality of the calculation can be checked with various indicators. The simplest is the preservation of the mean total energy. If this increases too fast, the time step might have to be reduced.&lt;br /&gt;
&lt;br /&gt;
- Stages 3 and 4, probably might have to be repeated several times before a satisfactory result is reached. Certainly, the spirit of this part is guided by the trial and error method. Playing with variables such as the number of nuclear Gaussian functions, the final propagation time, the propagation time step, or the integrator may be required.   &lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== [[Resgrp:comp-photo-dyn/mctdh90dev|mctdh90dev]] ===&lt;br /&gt;
&lt;br /&gt;
=== [[Resgrp:comp-photo-dyn/mctdh90.31dv|mctdh90.31dv]] ===&lt;br /&gt;
&lt;br /&gt;
=== [[Resgrp:comp-photo-dyn/mctdh90.56dv|mctdh90.56dv]] ===&lt;/div&gt;</summary>
		<author><name>Callan</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=File:Ircvector.log&amp;diff=52916</id>
		<title>File:Ircvector.log</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=File:Ircvector.log&amp;diff=52916"/>
		<updated>2009-04-06T11:43:16Z</updated>

		<summary type="html">&lt;p&gt;Callan: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Callan</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=File:Ircvector.gjf&amp;diff=52915</id>
		<title>File:Ircvector.gjf</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=File:Ircvector.gjf&amp;diff=52915"/>
		<updated>2009-04-06T11:42:34Z</updated>

		<summary type="html">&lt;p&gt;Callan: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Callan</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-calculations&amp;diff=52914</id>
		<title>Resgrp:comp-photo-calculations</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-calculations&amp;diff=52914"/>
		<updated>2009-04-06T11:42:14Z</updated>

		<summary type="html">&lt;p&gt;Callan: /* IRC calculations in which the vector to follow is specified by the user */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Example input files for different types of calculation, mainly using the development code.&lt;br /&gt;
&lt;br /&gt;
=nonstd=&lt;br /&gt;
This keyword means &#039;don&#039;t use any keywords&#039;, and allows you to access the gaussian route generator directly.&lt;br /&gt;
For more info [http://www.gaussian.com/g_ur/m_non_standard_routes.htm see here] [http://www.gaussian.com/iops.htm and here].&lt;br /&gt;
For some types of calculation, we have to use template input files that have non-standard routes and bypass Gaussian&#039;s own route generator in &#039;expert mode&#039;. A route is generated for all Gaussian calculations, and should be at the top of the text .log file. Alternatively, for a calculation that has keywords already available, use the [http://www.gaussian.com/g_ur/u_testrt.htm testrt] keyword interactively at a terminal to see what route is generated.&lt;br /&gt;
&lt;br /&gt;
=ionic states=&lt;br /&gt;
For ionic states, a &#039;minimal&#039; active space (e.g. cas(6,6) for benzene) won&#039;t give realistic excitation energies, as there&#039;s not enough flexibility to properly describe charge redistribution. With conjugated hydrocarbons, using a double active space and a 1-electron basis set with 3p-like functions (scaled from Si basis set) gives much of the necessary flexibility.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#p CASSCF(...)/6-31G* extrabasis&lt;br /&gt;
&lt;br /&gt;
Title&lt;br /&gt;
&lt;br /&gt;
0 1&lt;br /&gt;
Geometry&lt;br /&gt;
&lt;br /&gt;
C 0&lt;br /&gt;
 P   3 0.5&lt;br /&gt;
   .1727380000D+01   -.1779510000D-01&lt;br /&gt;
   .5729220000D+00    .2535390000D+00&lt;br /&gt;
   .2221920000D+00    .8006690000D+00&lt;br /&gt;
 P   1 0.5&lt;br /&gt;
   .7783690000D-01    .1000000000D+01&lt;br /&gt;
****&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Calculating and viewing the normal modes and frequencies of the energy difference; the modes of the seam; and the modes of the bilinear coupling=&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Calculation:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Use the non-standard route described in the section &amp;quot;Computation of Intersection-Space Frequencies&amp;quot; on the page &amp;quot;Seam Calculations of CHD&amp;quot;. The only difference in the non-standard route is 7/79. (7/79=1 for energy difference frequencies only, 7/79=2 for the three things, seam, energy difference and bilinear coupling frequencies).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Viewing the modes:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The scripts dffx_modes_g01.sh, seam_modes_g01.sh and eta_modes_g01.sh can be used to create log files that gaussview can read to visualise the normal modes and frequencies of the energy difference, the modes of the seam and/or the modes of the bilinear coupling respectively.&lt;br /&gt;
&lt;br /&gt;
First, you need a directory (on your mac or on the cluster) that we will call /dir/.&lt;br /&gt;
In here, you put the the scripts (dffx_modes_g01.sh, seam_modes_g01.sh, eta_modes_g01.sh) and a file called template.log, and you create a subdirectory /dir/gaussian_output/ in which you put your log file (say it&#039;s called jobname.log).&lt;br /&gt;
Then you create a subdirectory /dir/data/.&lt;br /&gt;
Then you execute the script this way:&lt;br /&gt;
./dffx_modes_g01.sh jobname&lt;br /&gt;
and you will get a new file in data that is called jobname_DFFX.log (for energy difference frequencies) or jobname_GV.log (for seam modes) and that can be read by GaussView.&lt;br /&gt;
&lt;br /&gt;
N.B.: ./ might not be needed on the cluster (also this may depend on the type of shell), but it is on my Mac.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Now, there used to be a small printing error in Fabrizio&#039;s code that may not have been fixed.&lt;br /&gt;
It&#039;s about the mass-weighting of the branching-space vectors, gradient difference and derivative coupling (the last two modes, given with zero frequencies). The consequence is that the motion of H atoms is exaggerated when you visualise these last two vectors with Gaussview.&lt;br /&gt;
The other ones are fine.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
NB the convention for the energy difference is S0 - S1, so if you want the modes that reduce the energy difference, take those that have a large positive frequency (with respect to the energy difference).&lt;br /&gt;
&lt;br /&gt;
=IRC calculations in which the vector to follow is specified by the user=&lt;br /&gt;
&lt;br /&gt;
This may be required if the starting point for the IRC is not a transition state (i.e. it has more than one imaginary frequency). In this case, GAUSSIAN will not know which negative frequency to follow so it must be specified explicitly.&lt;br /&gt;
&lt;br /&gt;
Using G03, certain combinations of keywords do not seem to work. Guess=read cannot be used: the orbitals must be specified explicitly in the input file along with the keyword guess=cards. It is also not possible to read in the force constants from a previous .chk file: irc=calcfc must be used. Thus if the calculation requires stateaverage orbitals, the stateaverage keyword must not be used (since, due to a bug in G03, it cannot be used in conjunction with a frequency calculation). Instead, the IOP (5/17=41000200,10/10=700007) should be specified. CAN WE VERIFY IF THIS IS ALL/PARTLY TRUE FOR OTHER VERSIONS OF GAUSSIAN?&lt;br /&gt;
&lt;br /&gt;
A typical route might look like:&lt;br /&gt;
&lt;br /&gt;
 # CAS(4,4,nroot=2)/sto-3g IRC=(CalcFC,ReadVector) guess=cards nosymm IOP(5/17=41000200,10/10=700007)&lt;br /&gt;
&lt;br /&gt;
followed by the orbitals and then the vector. The orbitals can be extracted form the .fchk of a previous calculation. Extract the section &amp;quot;Alpha MO coefficients&amp;quot; into a file (named, for example, &amp;quot;mo-file&amp;quot;) and then run (on the cluster)&lt;br /&gt;
&lt;br /&gt;
 dd_formatmos.out  &amp;lt;  mo-file &amp;gt; formatted-mos&lt;br /&gt;
&lt;br /&gt;
on &amp;quot;mo-file&amp;quot; to create a file called &amp;quot;formatted-mos&amp;quot; containing the formatted MOs. These can be pasted directly into the input file.&lt;br /&gt;
&lt;br /&gt;
Finally, specify the vector to follow. Find the direction to be followed (in the .log of the frequency calculation). The values may be listed vertically under the desired frequency, in which case these values can be used directly: list these values in rows containing 8 values per row with 10 characters (inc spaces) making up each value. If the direction is specified in cartesian coordinates they will need to be converted to internal coordinates. Do this as described in section &amp;quot;Computation of the Intersection Space Minimum Energy Path (MEP)&amp;quot; on the page &amp;quot;Seam Calculations of CHD&amp;quot;. (Essentially this will involve adding the desired cartesian frequency to the cartesian coordinates of the molecule, using GAUSSVIEW to convert this structure to internal coordinates and then subtracting the internal coordinates of the molecule.)&lt;br /&gt;
&lt;br /&gt;
[[Media:ircvector.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:ircvector.log]]&lt;/div&gt;</summary>
		<author><name>Callan</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.31dv/run&amp;diff=52899</id>
		<title>Resgrp:comp-photo-dyn/mctdh90.31dv/run</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.31dv/run&amp;diff=52899"/>
		<updated>2009-04-03T13:39:30Z</updated>

		<summary type="html">&lt;p&gt;Callan: /* Starting from a point other than the Franck-Condon point */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= &#039;&#039;&#039;Basic use of the MCTDH 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.&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.  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 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 (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 (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 program. It contains all the mutual keywords of the GAUSSIAN calculations which will be run on-the-fly by MCTDH. 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.&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 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_gennerator====&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 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&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 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&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. 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;/div&gt;</summary>
		<author><name>Callan</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-CHD&amp;diff=52740</id>
		<title>Resgrp:comp-photo-CHD</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-CHD&amp;diff=52740"/>
		<updated>2009-03-25T12:36:17Z</updated>

		<summary type="html">&lt;p&gt;Callan: /* Viewing the normal modes and frequencies of the seam (or the normal modes and frequencies of the energy difference or of the bilinear coupling) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Overview=&lt;br /&gt;
In the following sections it will be described how one can calculate the conical intersection seam of CHD (cyclo-hexa-1,3-diene) respectively &#039;&#039;cZc&#039;&#039;-HT (CZc-hexa-1,3,5-triene) with the new algorithm. Therefore the &lt;br /&gt;
&lt;br /&gt;
#  Optimization of a minimum point on the S0/S1 crossing seam&lt;br /&gt;
#  Computation of Intersection-Space Frequencies&lt;br /&gt;
#  Optimization of a Saddle point on the S0/S1 CHD crossing seam&lt;br /&gt;
#  Computation of the Intersection Space Minimum Energy Path (MEP) &lt;br /&gt;
&lt;br /&gt;
will be demonstrated.&lt;br /&gt;
  &lt;br /&gt;
==Development version and Substitutions==&lt;br /&gt;
For the calculations you have to use the Gaussian Development version, for the use of the current stable version your jobscript must contain following lines:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;module load gaussian/devel-modules&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;module load gdvg01_08&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[[Media:example-jobscript.ogg]]&lt;br /&gt;
&lt;br /&gt;
Also the beginning of your Input-file (.com) has to contain the following lines:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;%subst l103 /home/gaussian-devel/gaussiandvg01_pgi_lindafix/gdv_fabrizio/l103&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;%subst l115 /home/gaussian-devel/gaussiandvg01_pgi_lindafix/gdv_fabrizio/l115&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;%subst l510 /home/gaussian-devel/gaussiandvg01_pgi_lindafix/gdv_fabrizio/l510&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;%subst l716 /home/gaussian-devel/gaussiandvg01_pgi_lindafix/gdv_fabrizio/l716&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;%subst l1003 /home/gaussian-devel/gaussiandvg01_pgi_lindafix/gdv_fabrizio/l1003&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[[Media:test_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
=Optimization of a minimum point on the S0/S1 crossing seam=&lt;br /&gt;
For the optimization of a minimum point with the new algorithm you can use a standard input file. When you want to optimize a conical intersection geometry between the &#039;&#039;q-th&#039;&#039; and the &#039;&#039;(q-1)-th&#039;&#039; electronic state with an active space of &#039;&#039;n&#039;&#039; electrons in &#039;&#039;m&#039;&#039; orbitals the input file must contain the following lines:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;#P CAS(m,n,nr = q)/[basis set]&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Opt = Conical&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;IOp(1/5=-1,10/10=500005)&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;[Input Title]&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;[Charge] [Spin Multiplicity]&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;[Geometry]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The IOp(1/5) set to minus one specifies that we are attempting to optimize a minimum conical intersection point along the crossing seam. The IOp(10/10) is set to 500005 in order to compute the average gradient, which is used in the new algorithm, by solving the SA-CPMCSCF equations. The following files are the input and output files for the optimization of the  2A1/1A1 conical intersection minimum of CHD:&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_min_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_min_log.ogg]]&lt;br /&gt;
&lt;br /&gt;
Here also the IOp(1/16) is set to 5 in order to set the maximum allowable magnitude of the the eigenvalues of the second derative matrix. In order to check if this point is a saddle point or a minimum point a frequency calculation is necessary, which is described in the next section.&lt;br /&gt;
&lt;br /&gt;
=Computation of Intersection-Space Frequencies=&lt;br /&gt;
For the calculation of the Intersection-Space Frequencies no keywords exist to run such calculation yet. Therefore, a non-standard root has to be composed. A non-standard root is a complete sequence of links with associated options specified in an input file and read in by Gaussian. It is important to note that the program executes each link in the specified order, therefore extreme caution has to be taken when composing a non-standard route. Thus, a non-standard route is generally created by modifying the sequence of links produced by the standard route most similar to the one desired. This is accomplished most easily with the &#039;&#039;testrt&#039;&#039; utility, for more information [https://www.ch.ic.ac.uk/wiki/index.php/Resgrp:comp-photo-calculations see here]. In computing intersection-space frequencies, &#039;&#039;testrt&#039;&#039; is used to produce the route for a standard state-average CASSCF frequency calculation: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;#P CAS(n,m,stateaveraged,nroot = q)/[basis set]&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Nosymm&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Freq&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The route obtained with &#039;&#039;testrt&#039;&#039;  gives the correct sequence of links in a SA-CASSCF frequency analysis with the corresponding default options. However, in an intersection-space frequency analysis one needs the Hessian of both the intersecting electronic states and the Hessian of the rotated optimized wavefunctions. Create the route using testrt and repeat the sequence of links 5, 8, 11, 10, 6, 7 another two times within the new route. Then add/edit the specific options as below. Thus, the non-standard route used for an intersection-space frequency analysis should have a form similar to:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;1/.../1,3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;2/.../2;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;3/.../1,2,3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;4/.../1,5;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;5/..,17=41000200,.../10;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;8/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;11/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;10/...,10=600007,.../3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;6/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;7/...,45=52/1,2,3,16;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;5/...,17=41000200,...,97=100/10;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;8/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;11/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;10/...,10=600007,...,97=100/3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;6/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;7/...,45=51/1,2,3,16;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;5/...,17=41000200,...,79=1/10;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;8/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;11/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;10/...,10=600007,...,79=1/3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;6/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;7/...,45=53/1,2,3,16;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;1/.../3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039; 99//99;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The following files are the input and output files for the frequency calculation of the optimized conical intersection minimum of CHD, computed in the previous section:&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_min_freq_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_min_freq_log.ogg]]&lt;br /&gt;
&lt;br /&gt;
With the IOp(1/29) and the IOp(4/5) set to one, the geometry and the initial guess is read from the checkpoint file, which you got from the optimization. The IOp(4/17) and IOp(4/18) are set to six, which specifies the number of  electrons and orbitals in the active space, one might need to add more keywords depending on the specific study and system.&lt;br /&gt;
&lt;br /&gt;
So how you can see in the output file there is no negative frequency, therefore the structure of section 2 should be a conical intersection minimum.&lt;br /&gt;
&lt;br /&gt;
==Viewing the normal modes and frequencies of the seam (or the normal modes and frequencies of the energy difference or of the bilinear coupling)==&lt;br /&gt;
&lt;br /&gt;
The scripts dffx_modes_g01.sh, seam_modes_g01.sh and eta_modes_g01.sh can be used to create log files that gaussview can read to visualise the normal modes and frequencies of the energy difference, the modes of the seam and/or the modes of the bilinear coupling respectively.&lt;br /&gt;
&lt;br /&gt;
First, you need a directory (on your mac or on the cluster) that we will call /dir/.&lt;br /&gt;
In here, you put the the scripts (dffx_modes_g01.sh, seam_modes_g01.sh, eta_modes_g01.sh) and a file called template.log, and you create a subdirectory /dir/gaussian_output/ in which you put your log file (say it&#039;s called jobname.log).&lt;br /&gt;
Then you create a subdirectory /dir/data/.&lt;br /&gt;
Then you execute the script this way:&lt;br /&gt;
 ./dffx_modes_g01.sh jobname&lt;br /&gt;
and you will get a new file in data that is called jobname_DFFX.log (for energy difference frequencies) or jobname_GV.log (for seam modes) and that can be read by GaussView.&lt;br /&gt;
&lt;br /&gt;
N.B.: ./ might not be needed on the cluster (also this may depend on the type of shell), but it is on my Mac.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Now, there used to be a small printing error in Fabrizio&#039;s code that may not have been fixed. It&#039;s about the mass-weighting of the branching-space vectors, gradient difference and derivative coupling (the last two modes, given with zero frequencies). The consequence is that the motion of H atoms is exaggerated when you visualise these last two vectors with Gaussview. The other ones are fine.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
NB the convention for the energy difference is S0 - S1, so if you want the modes that reduce the energy difference, take those that have a large positive frequency (with respect to the energy difference).&lt;br /&gt;
&lt;br /&gt;
[[Media:Freq_scripts.zip]]&lt;br /&gt;
&lt;br /&gt;
[[Media:template.log]]&lt;br /&gt;
&lt;br /&gt;
=Optimization of a Saddle point on the S0/S1 CHD crossing seam=&lt;br /&gt;
&lt;br /&gt;
Generally, in order to optimize a saddle point structure, one must start from a geometry that is close enough to the quadratic region of such a point. In addition, the Hessian at this initial structure must have a negative eigenvalue, and the corresponding eigevector must be a suitable approximation for the direction connecting the two valleys. When one tries to optimize a saddle point within the intersection space, the initial geometry should also be a point of degeneracy (or near-degeneracy), since the intersection-space Hessian must be computed. Thus it is sometimes useful first to make a single point calculation and then a energy gap optimization between the two states along the gradient difference vector. Input and output files of the single point calculation:&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_log.ogg]]&lt;br /&gt;
&lt;br /&gt;
Input and output files of the energy gap optimization:&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_E_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_E_log.ogg]]&lt;br /&gt;
&lt;br /&gt;
Then it is also quite useful first to make a frequency calculation of this point:&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_E_freq_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_E_freq_log.ogg]]&lt;br /&gt;
&lt;br /&gt;
And then one can do with this checkpoint file the optimization of the first-order saddle point:&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_opt_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_opt_log.ogg]]&lt;br /&gt;
&lt;br /&gt;
The IOp(1/8) set to one specifies the maximum step size allowed during the optimization and the IOp(5/7) set to 250 specifies the maximum number of iterations. Because this time we want to get a first-order saddle point instead of a minimum also the IOp(1/5) is set  minus 2. To prove that this is a first-order saddle point a frequency calculation must be done, which is also necessary for the Computation of the Intersection Space Minimum Energy Path (section 5):&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_opt_freq_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_opt_freq_log.ogg]]&lt;br /&gt;
&lt;br /&gt;
The one negative frequency indicates that the point is really a first-order saddle point.&lt;br /&gt;
&lt;br /&gt;
=Computation of the Intersection Space Minimum Energy Path (MEP)=&lt;br /&gt;
&lt;br /&gt;
Currently no standard route exists to compute a minimum energy path limited to the intersection-space. Therefore, as discussed in  section 3, a non-standard route has to be specified in the input file in order to perform these calculations. Using &#039;&#039;testrt&#039;&#039; and carefully modifying the output obtained for a standard intrinsic reaction path computation, which is specified by the IRC keyword, one should obtain something similar to:&lt;br /&gt;
 &lt;br /&gt;
&#039;&#039;&#039;1/...,44=-3,.../1,15;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;2/.../2;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;3/.../1,2,3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;4/.../1,5;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;5/.../10;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;8/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;11/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;10/10=500005,.../3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;6/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;7/.../16;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;1/...,44=-3,../15(2);&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;2/.../2;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;99//99;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;2/.../2;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;3/.../1,2,3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;4/.../1,5;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;5/.../10;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;8/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;11/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;10/10=500005,.../3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;7/.../16;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;1/...,44=-3,.../15(-8);&#039;&#039;&#039;&amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;2/.../2;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;6/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;99/9=1/99;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
In order to evaluate the intersection-space minimum energy path, there are added three more options to the existing IOp(1/44):&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;1/44 = -1	Compute the intersection-space minimum energy path in mass-weighted Cartesian coordinates.&#039;&#039;&#039;&amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;1/44 = -2	Compute the intersection-space minimum energy path in internal coordinates.&#039;&#039;&#039;&amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;1/44 = -3	Compute the intersection-space minimum energy path in mass-weighted internal coordinates.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
For the following example the intersection-space minimum energy path (MEP) is computed in mass-weighted internal coordinates. For the computation of the MEP you need the transition point structure and the search vector from the optimization of the Saddle point from section 4. The transition point structure is the optimized Saddle point structure, while the search vector is the normal mode of the one negative frequency. But because in the output the normal mode is given in Cartesian coordinates, you first have to transform them in internal coordinates, by adding the normal mode to the optimized Saddle point structure, write out this structure in internal coordinates and calculate e.g with Exel the differences of the internal coordinates in comparison to the optimized Saddle point structure. These differences of the internal coordinates (search vector) have to be add to the transition point structure (in internal coordinates) in a 8F10.6 format in the input file:&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_IRC_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_IRC_log.tar.gz.ogg]]&lt;br /&gt;
&lt;br /&gt;
So the calculated MEP leads from the transition point (CI_trans) to the minimum point (CI_min) on the S0/S1 crossing seam.&lt;/div&gt;</summary>
		<author><name>Callan</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-calculations&amp;diff=52729</id>
		<title>Resgrp:comp-photo-calculations</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-calculations&amp;diff=52729"/>
		<updated>2009-03-24T13:00:06Z</updated>

		<summary type="html">&lt;p&gt;Callan: /* IRC calculations in which the vector to follow is specified by the user */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Example input files for different types of calculation, mainly using the development code.&lt;br /&gt;
&lt;br /&gt;
=nonstd=&lt;br /&gt;
This keyword means &#039;don&#039;t use any keywords&#039;, and allows you to access the gaussian route generator directly.&lt;br /&gt;
For more info [http://www.gaussian.com/g_ur/m_non_standard_routes.htm see here] [http://www.gaussian.com/iops.htm and here].&lt;br /&gt;
For some types of calculation, we have to use template input files that have non-standard routes and bypass Gaussian&#039;s own route generator in &#039;expert mode&#039;. A route is generated for all Gaussian calculations, and should be at the top of the text .log file. Alternatively, for a calculation that has keywords already available, use the [http://www.gaussian.com/g_ur/u_testrt.htm testrt] keyword interactively at a terminal to see what route is generated.&lt;br /&gt;
&lt;br /&gt;
=ionic states=&lt;br /&gt;
For ionic states, a &#039;minimal&#039; active space (e.g. cas(6,6) for benzene) won&#039;t give realistic excitation energies, as there&#039;s not enough flexibility to properly describe charge redistribution. With conjugated hydrocarbons, using a double active space and a 1-electron basis set with 3p-like functions (scaled from Si basis set) gives much of the necessary flexibility.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#p CASSCF(...)/6-31G* extrabasis&lt;br /&gt;
&lt;br /&gt;
Title&lt;br /&gt;
&lt;br /&gt;
0 1&lt;br /&gt;
Geometry&lt;br /&gt;
&lt;br /&gt;
C 0&lt;br /&gt;
 P   3 0.5&lt;br /&gt;
   .1727380000D+01   -.1779510000D-01&lt;br /&gt;
   .5729220000D+00    .2535390000D+00&lt;br /&gt;
   .2221920000D+00    .8006690000D+00&lt;br /&gt;
 P   1 0.5&lt;br /&gt;
   .7783690000D-01    .1000000000D+01&lt;br /&gt;
****&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Calculating and viewing the normal modes and frequencies of the energy difference; the modes of the seam; and the modes of the bilinear coupling=&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Calculation:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Use the non-standard route described in the section &amp;quot;Computation of Intersection-Space Frequencies&amp;quot; on the page &amp;quot;Seam Calculations of CHD&amp;quot;. The only difference in the non-standard route is 7/79. (7/79=1 for energy difference frequencies only, 7/79=2 for the three things, seam, energy difference and bilinear coupling frequencies).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Viewing the modes:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The scripts dffx_modes_g01.sh, seam_modes_g01.sh and eta_modes_g01.sh can be used to create log files that gaussview can read to visualise the normal modes and frequencies of the energy difference, the modes of the seam and/or the modes of the bilinear coupling respectively.&lt;br /&gt;
&lt;br /&gt;
First, you need a directory (on your mac or on the cluster) that we will call /dir/.&lt;br /&gt;
In here, you put the the scripts (dffx_modes_g01.sh, seam_modes_g01.sh, eta_modes_g01.sh) and a file called template.log, and you create a subdirectory /dir/gaussian_output/ in which you put your log file (say it&#039;s called jobname.log).&lt;br /&gt;
Then you create a subdirectory /dir/data/.&lt;br /&gt;
Then you execute the script this way:&lt;br /&gt;
./dffx_modes_g01.sh jobname&lt;br /&gt;
and you will get a new file in data that is called jobname_DFFX.log (for energy difference frequencies) or jobname_GV.log (for seam modes) and that can be read by GaussView.&lt;br /&gt;
&lt;br /&gt;
N.B.: ./ might not be needed on the cluster (also this may depend on the type of shell), but it is on my Mac.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Now, there used to be a small printing error in Fabrizio&#039;s code that may not have been fixed.&lt;br /&gt;
It&#039;s about the mass-weighting of the branching-space vectors, gradient difference and derivative coupling (the last two modes, given with zero frequencies). The consequence is that the motion of H atoms is exaggerated when you visualise these last two vectors with Gaussview.&lt;br /&gt;
The other ones are fine.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
NB the convention for the energy difference is S0 - S1, so if you want the modes that reduce the energy difference, take those that have a large positive frequency (with respect to the energy difference).&lt;br /&gt;
&lt;br /&gt;
=IRC calculations in which the vector to follow is specified by the user=&lt;br /&gt;
&lt;br /&gt;
This may be required if the starting point for the IRC is not a transition state (i.e. it has more than one imaginary frequency). In this case, GAUSSIAN will not know which negative frequency to follow so it must be specified explicitly.&lt;br /&gt;
&lt;br /&gt;
Using G03, certain combinations of keywords do not seem to work. Guess=read cannot be used: the orbitals must be specified explicitly in the input file along with the keyword guess=cards. It is also not possible to read in the force constants from a previous .chk file: irc=calcfc must be used. Thus if the calculation requires stateaverage orbitals, the stateaverage keyword must not be used (since, due to a bug in G03, it cannot be used in conjunction with a frequency calculation). Instead, the IOP (5/17=41000200,10/10=700007) should be specified. CAN WE VERIFY IF THIS IS ALL/PARTLY TRUE FOR OTHER VERSIONS OF GAUSSIAN?&lt;br /&gt;
&lt;br /&gt;
A typical route might look like:&lt;br /&gt;
&lt;br /&gt;
 # CAS(4,4,nroot=2)/sto-3g IRC=(CalcFC,ReadVector) guess=cards nosymm IOP(5/17=41000200,10/10=700007)&lt;br /&gt;
&lt;br /&gt;
followed by the orbitals and then the vector. The orbitals can be extracted form the .fchk of a previous calculation. Extract the section &amp;quot;Alpha MO coefficients&amp;quot; into a file (named, for example, &amp;quot;mo-file&amp;quot;) and then run (on the cluster)&lt;br /&gt;
&lt;br /&gt;
 dd_formatmos.out  &amp;lt;  mo-file &amp;gt; formatted-mos&lt;br /&gt;
&lt;br /&gt;
on &amp;quot;mo-file&amp;quot; to create a file called &amp;quot;formatted-mos&amp;quot; containing the formatted MOs. These can be pasted directly into the input file.&lt;br /&gt;
&lt;br /&gt;
Finally, specify the vector to follow. Find the direction to be followed (in the .log of the frequency calculation). The values may be listed vertically under the desired frequency, in which case these values can be used directly: list these values in rows containing 8 values per row with 10 characters (inc spaces) making up each value. If the direction is specified in cartesian coordinates they will need to be converted to internal coordinates. Do this as described in section &amp;quot;Computation of the Intersection Space Minimum Energy Path (MEP)&amp;quot; on the page &amp;quot;Seam Calculations of CHD&amp;quot;. (Essentially this will involve adding the desired cartesian frequency to the cartesian coordinates of the molecule, using GAUSSVIEW to convert this structure to internal coordinates and then subtracting the internal coordinates of the molecule.)&lt;/div&gt;</summary>
		<author><name>Callan</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-calculations&amp;diff=52728</id>
		<title>Resgrp:comp-photo-calculations</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-calculations&amp;diff=52728"/>
		<updated>2009-03-24T12:55:53Z</updated>

		<summary type="html">&lt;p&gt;Callan: /* IRC calculations in which the vector to follow is specified by the user */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Example input files for different types of calculation, mainly using the development code.&lt;br /&gt;
&lt;br /&gt;
=nonstd=&lt;br /&gt;
This keyword means &#039;don&#039;t use any keywords&#039;, and allows you to access the gaussian route generator directly.&lt;br /&gt;
For more info [http://www.gaussian.com/g_ur/m_non_standard_routes.htm see here] [http://www.gaussian.com/iops.htm and here].&lt;br /&gt;
For some types of calculation, we have to use template input files that have non-standard routes and bypass Gaussian&#039;s own route generator in &#039;expert mode&#039;. A route is generated for all Gaussian calculations, and should be at the top of the text .log file. Alternatively, for a calculation that has keywords already available, use the [http://www.gaussian.com/g_ur/u_testrt.htm testrt] keyword interactively at a terminal to see what route is generated.&lt;br /&gt;
&lt;br /&gt;
=ionic states=&lt;br /&gt;
For ionic states, a &#039;minimal&#039; active space (e.g. cas(6,6) for benzene) won&#039;t give realistic excitation energies, as there&#039;s not enough flexibility to properly describe charge redistribution. With conjugated hydrocarbons, using a double active space and a 1-electron basis set with 3p-like functions (scaled from Si basis set) gives much of the necessary flexibility.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#p CASSCF(...)/6-31G* extrabasis&lt;br /&gt;
&lt;br /&gt;
Title&lt;br /&gt;
&lt;br /&gt;
0 1&lt;br /&gt;
Geometry&lt;br /&gt;
&lt;br /&gt;
C 0&lt;br /&gt;
 P   3 0.5&lt;br /&gt;
   .1727380000D+01   -.1779510000D-01&lt;br /&gt;
   .5729220000D+00    .2535390000D+00&lt;br /&gt;
   .2221920000D+00    .8006690000D+00&lt;br /&gt;
 P   1 0.5&lt;br /&gt;
   .7783690000D-01    .1000000000D+01&lt;br /&gt;
****&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Calculating and viewing the normal modes and frequencies of the energy difference; the modes of the seam; and the modes of the bilinear coupling=&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Calculation:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Use the non-standard route described in the section &amp;quot;Computation of Intersection-Space Frequencies&amp;quot; on the page &amp;quot;Seam Calculations of CHD&amp;quot;. The only difference in the non-standard route is 7/79. (7/79=1 for energy difference frequencies only, 7/79=2 for the three things, seam, energy difference and bilinear coupling frequencies).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Viewing the modes:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The scripts dffx_modes_g01.sh, seam_modes_g01.sh and eta_modes_g01.sh can be used to create log files that gaussview can read to visualise the normal modes and frequencies of the energy difference, the modes of the seam and/or the modes of the bilinear coupling respectively.&lt;br /&gt;
&lt;br /&gt;
First, you need a directory (on your mac or on the cluster) that we will call /dir/.&lt;br /&gt;
In here, you put the the scripts (dffx_modes_g01.sh, seam_modes_g01.sh, eta_modes_g01.sh) and a file called template.log, and you create a subdirectory /dir/gaussian_output/ in which you put your log file (say it&#039;s called jobname.log).&lt;br /&gt;
Then you create a subdirectory /dir/data/.&lt;br /&gt;
Then you execute the script this way:&lt;br /&gt;
./dffx_modes_g01.sh jobname&lt;br /&gt;
and you will get a new file in data that is called jobname_DFFX.log (for energy difference frequencies) or jobname_GV.log (for seam modes) and that can be read by GaussView.&lt;br /&gt;
&lt;br /&gt;
N.B.: ./ might not be needed on the cluster (also this may depend on the type of shell), but it is on my Mac.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Now, there used to be a small printing error in Fabrizio&#039;s code that may not have been fixed.&lt;br /&gt;
It&#039;s about the mass-weighting of the branching-space vectors, gradient difference and derivative coupling (the last two modes, given with zero frequencies). The consequence is that the motion of H atoms is exaggerated when you visualise these last two vectors with Gaussview.&lt;br /&gt;
The other ones are fine.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
NB the convention for the energy difference is S0 - S1, so if you want the modes that reduce the energy difference, take those that have a large positive frequency (with respect to the energy difference).&lt;br /&gt;
&lt;br /&gt;
=IRC calculations in which the vector to follow is specified by the user=&lt;br /&gt;
&lt;br /&gt;
This may be required if the starting point for the IRC is not a transition state (i.e. it has more than one imaginary frequency). In this case, GAUSSIAN will not know which negative frequency to follow so it must be specified explicitly.&lt;br /&gt;
&lt;br /&gt;
Using G03, certain combinations of keywords do not seem to work. Guess=read cannot be used: the orbitals must be specified explicitly in the input file along with the keyword guess=cards. It is also not possible to read in the force constants from a previous .chk file: irc=calcfc must be used. Thus if the calculation requires stateaverage orbitals, the stateaverage keyword must not be used (since, due to a bug in G03, it cannot be used in conjunction with a frequency calculation). Instead, the IOP (5/17=41000200,10/10=700007) should be specified. CAN WE VERIFY IF THIS IS ALL/PARTLY TRUE FOR OTHER VERSIONS OF GAUSSIAN?&lt;br /&gt;
&lt;br /&gt;
A typical route might look like:&lt;br /&gt;
&lt;br /&gt;
 # CAS(4,4,nroot=2)/sto-3g IRC=(CalcFC,ReadVector) guess=cards nosymm IOP(5/17=41000200,10/10=700007)&lt;br /&gt;
&lt;br /&gt;
followed by the orbitals and then the vector. The orbitals can be extracted form the .fchk of a previous calculation. Extract the section &amp;quot;Alpha MO coefficients&amp;quot; into a file (named, for example, &amp;quot;mo-file&amp;quot;) and then run&lt;br /&gt;
&lt;br /&gt;
 dd_formatmos.out  &amp;lt;  mo-file &amp;gt; formatted-mos&lt;br /&gt;
&lt;br /&gt;
on &amp;quot;mo-file&amp;quot; to create a file called &amp;quot;formatted-mos&amp;quot; containing the formatted MOs. These can be pasted directly into the input file.&lt;br /&gt;
&lt;br /&gt;
Finally, specify the vector to follow. Find the direction to be followed (in the .log of the frequency calculation). The values may be listed vertically under the desired frequency, in which case these values can be used directly: list these values in rows containing 8 values per row with 10 characters (inc spaces) making up each value. If the direction is specified in cartesian coordinates they will need to be converted to internal coordinates. Do this as described in section&lt;/div&gt;</summary>
		<author><name>Callan</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-calculations&amp;diff=52727</id>
		<title>Resgrp:comp-photo-calculations</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-calculations&amp;diff=52727"/>
		<updated>2009-03-24T12:51:20Z</updated>

		<summary type="html">&lt;p&gt;Callan: /* IRC calculations in which the vector to follow is specified by the user */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Example input files for different types of calculation, mainly using the development code.&lt;br /&gt;
&lt;br /&gt;
=nonstd=&lt;br /&gt;
This keyword means &#039;don&#039;t use any keywords&#039;, and allows you to access the gaussian route generator directly.&lt;br /&gt;
For more info [http://www.gaussian.com/g_ur/m_non_standard_routes.htm see here] [http://www.gaussian.com/iops.htm and here].&lt;br /&gt;
For some types of calculation, we have to use template input files that have non-standard routes and bypass Gaussian&#039;s own route generator in &#039;expert mode&#039;. A route is generated for all Gaussian calculations, and should be at the top of the text .log file. Alternatively, for a calculation that has keywords already available, use the [http://www.gaussian.com/g_ur/u_testrt.htm testrt] keyword interactively at a terminal to see what route is generated.&lt;br /&gt;
&lt;br /&gt;
=ionic states=&lt;br /&gt;
For ionic states, a &#039;minimal&#039; active space (e.g. cas(6,6) for benzene) won&#039;t give realistic excitation energies, as there&#039;s not enough flexibility to properly describe charge redistribution. With conjugated hydrocarbons, using a double active space and a 1-electron basis set with 3p-like functions (scaled from Si basis set) gives much of the necessary flexibility.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#p CASSCF(...)/6-31G* extrabasis&lt;br /&gt;
&lt;br /&gt;
Title&lt;br /&gt;
&lt;br /&gt;
0 1&lt;br /&gt;
Geometry&lt;br /&gt;
&lt;br /&gt;
C 0&lt;br /&gt;
 P   3 0.5&lt;br /&gt;
   .1727380000D+01   -.1779510000D-01&lt;br /&gt;
   .5729220000D+00    .2535390000D+00&lt;br /&gt;
   .2221920000D+00    .8006690000D+00&lt;br /&gt;
 P   1 0.5&lt;br /&gt;
   .7783690000D-01    .1000000000D+01&lt;br /&gt;
****&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Calculating and viewing the normal modes and frequencies of the energy difference; the modes of the seam; and the modes of the bilinear coupling=&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Calculation:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Use the non-standard route described in the section &amp;quot;Computation of Intersection-Space Frequencies&amp;quot; on the page &amp;quot;Seam Calculations of CHD&amp;quot;. The only difference in the non-standard route is 7/79. (7/79=1 for energy difference frequencies only, 7/79=2 for the three things, seam, energy difference and bilinear coupling frequencies).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Viewing the modes:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The scripts dffx_modes_g01.sh, seam_modes_g01.sh and eta_modes_g01.sh can be used to create log files that gaussview can read to visualise the normal modes and frequencies of the energy difference, the modes of the seam and/or the modes of the bilinear coupling respectively.&lt;br /&gt;
&lt;br /&gt;
First, you need a directory (on your mac or on the cluster) that we will call /dir/.&lt;br /&gt;
In here, you put the the scripts (dffx_modes_g01.sh, seam_modes_g01.sh, eta_modes_g01.sh) and a file called template.log, and you create a subdirectory /dir/gaussian_output/ in which you put your log file (say it&#039;s called jobname.log).&lt;br /&gt;
Then you create a subdirectory /dir/data/.&lt;br /&gt;
Then you execute the script this way:&lt;br /&gt;
./dffx_modes_g01.sh jobname&lt;br /&gt;
and you will get a new file in data that is called jobname_DFFX.log (for energy difference frequencies) or jobname_GV.log (for seam modes) and that can be read by GaussView.&lt;br /&gt;
&lt;br /&gt;
N.B.: ./ might not be needed on the cluster (also this may depend on the type of shell), but it is on my Mac.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Now, there used to be a small printing error in Fabrizio&#039;s code that may not have been fixed.&lt;br /&gt;
It&#039;s about the mass-weighting of the branching-space vectors, gradient difference and derivative coupling (the last two modes, given with zero frequencies). The consequence is that the motion of H atoms is exaggerated when you visualise these last two vectors with Gaussview.&lt;br /&gt;
The other ones are fine.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
NB the convention for the energy difference is S0 - S1, so if you want the modes that reduce the energy difference, take those that have a large positive frequency (with respect to the energy difference).&lt;br /&gt;
&lt;br /&gt;
=IRC calculations in which the vector to follow is specified by the user=&lt;br /&gt;
&lt;br /&gt;
This may be required if the starting point for the IRC is not a transition state (i.e. it has more than one imaginary frequency). In this case, GAUSSIAN will not know which negative frequency to follow so it must be specified explicitly.&lt;br /&gt;
&lt;br /&gt;
Using G03, certain combinations of keywords do not seem to work. Guess=read cannot be used: the orbitals must be specified explicitly in the input file along with the keyword guess=cards. It is also not possible to read in the force constants from a previous .chk file: irc=calcfc must be used. Thus if the calculation requires stateaverage orbitals, the stateaverage keyword must not be used (since, due to a bug in G03, it cannot be used in conjunction with a frequency calculation). Instead, the IOP (5/17=41000200,10/10=700007) should be specified. CAN WE VERIFY IF THIS IS ALL/PARTLY TRUE FOR OTHER VERSIONS OF GAUSSIAN?&lt;br /&gt;
&lt;br /&gt;
A typical route might look like:&lt;br /&gt;
&lt;br /&gt;
 # CAS(4,4,nroot=2)/sto-3g IRC=(CalcFC,ReadVector) guess=cards nosymm IOP(5/17=41000200,10/10=700007)&lt;br /&gt;
&lt;br /&gt;
followed by the orbitals and then the vector. The orbitals can be extracted form the .fchk of a previous calculation. Extract the section &amp;quot;Alpha MO coefficients&amp;quot; into a file (named, for example, &amp;quot;mo-file&amp;quot;) and then run&lt;br /&gt;
&lt;br /&gt;
 dd_formatmos.out  &amp;lt;  mo-file &amp;gt; formatted-mos&lt;br /&gt;
&lt;br /&gt;
on &amp;quot;mo-file&amp;quot; to create a file called &amp;quot;formatted-mos&amp;quot; containing the formatted MOs. These can be pasted directly into the input file.&lt;br /&gt;
&lt;br /&gt;
Finally, specify the vector to follow. Find the direction to be followed (in the .log of the frequency calculation: the values are listed vertically under the desired frequency). List these values in rows containing 8 values per row (back to back) with 10 characters (inc spaces) making up each value.&lt;/div&gt;</summary>
		<author><name>Callan</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-calculations&amp;diff=52726</id>
		<title>Resgrp:comp-photo-calculations</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-calculations&amp;diff=52726"/>
		<updated>2009-03-24T12:47:31Z</updated>

		<summary type="html">&lt;p&gt;Callan: /* IRC calculations in which the vector to follow is specified by the user */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Example input files for different types of calculation, mainly using the development code.&lt;br /&gt;
&lt;br /&gt;
=nonstd=&lt;br /&gt;
This keyword means &#039;don&#039;t use any keywords&#039;, and allows you to access the gaussian route generator directly.&lt;br /&gt;
For more info [http://www.gaussian.com/g_ur/m_non_standard_routes.htm see here] [http://www.gaussian.com/iops.htm and here].&lt;br /&gt;
For some types of calculation, we have to use template input files that have non-standard routes and bypass Gaussian&#039;s own route generator in &#039;expert mode&#039;. A route is generated for all Gaussian calculations, and should be at the top of the text .log file. Alternatively, for a calculation that has keywords already available, use the [http://www.gaussian.com/g_ur/u_testrt.htm testrt] keyword interactively at a terminal to see what route is generated.&lt;br /&gt;
&lt;br /&gt;
=ionic states=&lt;br /&gt;
For ionic states, a &#039;minimal&#039; active space (e.g. cas(6,6) for benzene) won&#039;t give realistic excitation energies, as there&#039;s not enough flexibility to properly describe charge redistribution. With conjugated hydrocarbons, using a double active space and a 1-electron basis set with 3p-like functions (scaled from Si basis set) gives much of the necessary flexibility.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#p CASSCF(...)/6-31G* extrabasis&lt;br /&gt;
&lt;br /&gt;
Title&lt;br /&gt;
&lt;br /&gt;
0 1&lt;br /&gt;
Geometry&lt;br /&gt;
&lt;br /&gt;
C 0&lt;br /&gt;
 P   3 0.5&lt;br /&gt;
   .1727380000D+01   -.1779510000D-01&lt;br /&gt;
   .5729220000D+00    .2535390000D+00&lt;br /&gt;
   .2221920000D+00    .8006690000D+00&lt;br /&gt;
 P   1 0.5&lt;br /&gt;
   .7783690000D-01    .1000000000D+01&lt;br /&gt;
****&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Calculating and viewing the normal modes and frequencies of the energy difference; the modes of the seam; and the modes of the bilinear coupling=&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Calculation:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Use the non-standard route described in the section &amp;quot;Computation of Intersection-Space Frequencies&amp;quot; on the page &amp;quot;Seam Calculations of CHD&amp;quot;. The only difference in the non-standard route is 7/79. (7/79=1 for energy difference frequencies only, 7/79=2 for the three things, seam, energy difference and bilinear coupling frequencies).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Viewing the modes:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The scripts dffx_modes_g01.sh, seam_modes_g01.sh and eta_modes_g01.sh can be used to create log files that gaussview can read to visualise the normal modes and frequencies of the energy difference, the modes of the seam and/or the modes of the bilinear coupling respectively.&lt;br /&gt;
&lt;br /&gt;
First, you need a directory (on your mac or on the cluster) that we will call /dir/.&lt;br /&gt;
In here, you put the the scripts (dffx_modes_g01.sh, seam_modes_g01.sh, eta_modes_g01.sh) and a file called template.log, and you create a subdirectory /dir/gaussian_output/ in which you put your log file (say it&#039;s called jobname.log).&lt;br /&gt;
Then you create a subdirectory /dir/data/.&lt;br /&gt;
Then you execute the script this way:&lt;br /&gt;
./dffx_modes_g01.sh jobname&lt;br /&gt;
and you will get a new file in data that is called jobname_DFFX.log (for energy difference frequencies) or jobname_GV.log (for seam modes) and that can be read by GaussView.&lt;br /&gt;
&lt;br /&gt;
N.B.: ./ might not be needed on the cluster (also this may depend on the type of shell), but it is on my Mac.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Now, there used to be a small printing error in Fabrizio&#039;s code that may not have been fixed.&lt;br /&gt;
It&#039;s about the mass-weighting of the branching-space vectors, gradient difference and derivative coupling (the last two modes, given with zero frequencies). The consequence is that the motion of H atoms is exaggerated when you visualise these last two vectors with Gaussview.&lt;br /&gt;
The other ones are fine.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
NB the convention for the energy difference is S0 - S1, so if you want the modes that reduce the energy difference, take those that have a large positive frequency (with respect to the energy difference).&lt;br /&gt;
&lt;br /&gt;
=IRC calculations in which the vector to follow is specified by the user=&lt;br /&gt;
&lt;br /&gt;
This may be required if the starting point for the IRC is not a transition state (i.e. it has more than one imaginary frequency). In this case, GAUSSIAN will not know which negative frequency to follow so it must be specified explicitly.&lt;br /&gt;
&lt;br /&gt;
Using G03, certain combinations of keywords do not seem to work. Guess=read cannot be used: the orbitals must be specified explicitly in the input file along with the keyword guess=cards. It is also not possible to read in the force constants from a previous .chk file: irc=calcfc must be used. Thus if the calculation requires stateaverage orbitals, the stateaverage keyword must not be used (since, due to a bug in G03, it cannot be used in conjunction with a frequency calculation). Instead, the IOP (5/17=41000200,10/10=700007) should be specified. CAN WE VERIFY IF THIS IS ALL/PARTLY TRUE FOR OTHER VERSIONS OF GAUSSIAN?&lt;br /&gt;
&lt;br /&gt;
A typical route might look like:&lt;br /&gt;
&lt;br /&gt;
 # CAS(4,4,nroot=2)/sto-3g IRC=(CalcFC,ReadVector) guess=cards nosymm IOP(5/17=41000200,10/10=700007)&lt;br /&gt;
&lt;br /&gt;
followed by the orbitals and then the vector. The orbitals can be extracted form the .fchk of a previous calculation.&lt;/div&gt;</summary>
		<author><name>Callan</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-calculations&amp;diff=52725</id>
		<title>Resgrp:comp-photo-calculations</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-calculations&amp;diff=52725"/>
		<updated>2009-03-24T12:42:14Z</updated>

		<summary type="html">&lt;p&gt;Callan: /* IRC calculations in which the vector to follow is specified by the user */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Example input files for different types of calculation, mainly using the development code.&lt;br /&gt;
&lt;br /&gt;
=nonstd=&lt;br /&gt;
This keyword means &#039;don&#039;t use any keywords&#039;, and allows you to access the gaussian route generator directly.&lt;br /&gt;
For more info [http://www.gaussian.com/g_ur/m_non_standard_routes.htm see here] [http://www.gaussian.com/iops.htm and here].&lt;br /&gt;
For some types of calculation, we have to use template input files that have non-standard routes and bypass Gaussian&#039;s own route generator in &#039;expert mode&#039;. A route is generated for all Gaussian calculations, and should be at the top of the text .log file. Alternatively, for a calculation that has keywords already available, use the [http://www.gaussian.com/g_ur/u_testrt.htm testrt] keyword interactively at a terminal to see what route is generated.&lt;br /&gt;
&lt;br /&gt;
=ionic states=&lt;br /&gt;
For ionic states, a &#039;minimal&#039; active space (e.g. cas(6,6) for benzene) won&#039;t give realistic excitation energies, as there&#039;s not enough flexibility to properly describe charge redistribution. With conjugated hydrocarbons, using a double active space and a 1-electron basis set with 3p-like functions (scaled from Si basis set) gives much of the necessary flexibility.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#p CASSCF(...)/6-31G* extrabasis&lt;br /&gt;
&lt;br /&gt;
Title&lt;br /&gt;
&lt;br /&gt;
0 1&lt;br /&gt;
Geometry&lt;br /&gt;
&lt;br /&gt;
C 0&lt;br /&gt;
 P   3 0.5&lt;br /&gt;
   .1727380000D+01   -.1779510000D-01&lt;br /&gt;
   .5729220000D+00    .2535390000D+00&lt;br /&gt;
   .2221920000D+00    .8006690000D+00&lt;br /&gt;
 P   1 0.5&lt;br /&gt;
   .7783690000D-01    .1000000000D+01&lt;br /&gt;
****&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Calculating and viewing the normal modes and frequencies of the energy difference; the modes of the seam; and the modes of the bilinear coupling=&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Calculation:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Use the non-standard route described in the section &amp;quot;Computation of Intersection-Space Frequencies&amp;quot; on the page &amp;quot;Seam Calculations of CHD&amp;quot;. The only difference in the non-standard route is 7/79. (7/79=1 for energy difference frequencies only, 7/79=2 for the three things, seam, energy difference and bilinear coupling frequencies).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Viewing the modes:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The scripts dffx_modes_g01.sh, seam_modes_g01.sh and eta_modes_g01.sh can be used to create log files that gaussview can read to visualise the normal modes and frequencies of the energy difference, the modes of the seam and/or the modes of the bilinear coupling respectively.&lt;br /&gt;
&lt;br /&gt;
First, you need a directory (on your mac or on the cluster) that we will call /dir/.&lt;br /&gt;
In here, you put the the scripts (dffx_modes_g01.sh, seam_modes_g01.sh, eta_modes_g01.sh) and a file called template.log, and you create a subdirectory /dir/gaussian_output/ in which you put your log file (say it&#039;s called jobname.log).&lt;br /&gt;
Then you create a subdirectory /dir/data/.&lt;br /&gt;
Then you execute the script this way:&lt;br /&gt;
./dffx_modes_g01.sh jobname&lt;br /&gt;
and you will get a new file in data that is called jobname_DFFX.log (for energy difference frequencies) or jobname_GV.log (for seam modes) and that can be read by GaussView.&lt;br /&gt;
&lt;br /&gt;
N.B.: ./ might not be needed on the cluster (also this may depend on the type of shell), but it is on my Mac.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Now, there used to be a small printing error in Fabrizio&#039;s code that may not have been fixed.&lt;br /&gt;
It&#039;s about the mass-weighting of the branching-space vectors, gradient difference and derivative coupling (the last two modes, given with zero frequencies). The consequence is that the motion of H atoms is exaggerated when you visualise these last two vectors with Gaussview.&lt;br /&gt;
The other ones are fine.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
NB the convention for the energy difference is S0 - S1, so if you want the modes that reduce the energy difference, take those that have a large positive frequency (with respect to the energy difference).&lt;br /&gt;
&lt;br /&gt;
=IRC calculations in which the vector to follow is specified by the user=&lt;br /&gt;
&lt;br /&gt;
This may be required if the starting point for the IRC is not a transition state (i.e. it has more than one imaginary frequency). In this case, GAUSSIAN will not know which negative frequency to follow so it must be specified explicitly.&lt;br /&gt;
&lt;br /&gt;
Using G03, certain combinations of keywords do not seem to work. Guess=read cannot be used: the orbitals must be specified explicitly in the input file along with the keyword guess=cards. It is also not possible to read in the force constants from a previous .chk file: irc=calcfc must be used. Thus if the calculation requires stateaverage orbitals, the stateaverage keyword must not be used (since, due to a bug in G03, it cannot be used in conjunction with a frequency calculation). Instead, the IOP (5/17=41000200,10/10=700007) should be specified. CAN WE VERIFY IF THIS IS ALL/PARTLY TRUE FOR OTHER VERSIONS OF GAUSSIAN?&lt;br /&gt;
&lt;br /&gt;
A typical route might look like:&lt;br /&gt;
&lt;br /&gt;
 # CAS(4,4,nroot=2)/sto-3g IRC=(CalcFC,ReadVector) guess=cards nosymm IOP(5/17=41000200,10/10=700007)&lt;br /&gt;
&lt;br /&gt;
followed by the orbitals and then the vector.&lt;/div&gt;</summary>
		<author><name>Callan</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-calculations&amp;diff=52724</id>
		<title>Resgrp:comp-photo-calculations</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-calculations&amp;diff=52724"/>
		<updated>2009-03-24T11:59:50Z</updated>

		<summary type="html">&lt;p&gt;Callan: /* IRC calculations in which the vector to follow is specified by the user */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Example input files for different types of calculation, mainly using the development code.&lt;br /&gt;
&lt;br /&gt;
=nonstd=&lt;br /&gt;
This keyword means &#039;don&#039;t use any keywords&#039;, and allows you to access the gaussian route generator directly.&lt;br /&gt;
For more info [http://www.gaussian.com/g_ur/m_non_standard_routes.htm see here] [http://www.gaussian.com/iops.htm and here].&lt;br /&gt;
For some types of calculation, we have to use template input files that have non-standard routes and bypass Gaussian&#039;s own route generator in &#039;expert mode&#039;. A route is generated for all Gaussian calculations, and should be at the top of the text .log file. Alternatively, for a calculation that has keywords already available, use the [http://www.gaussian.com/g_ur/u_testrt.htm testrt] keyword interactively at a terminal to see what route is generated.&lt;br /&gt;
&lt;br /&gt;
=ionic states=&lt;br /&gt;
For ionic states, a &#039;minimal&#039; active space (e.g. cas(6,6) for benzene) won&#039;t give realistic excitation energies, as there&#039;s not enough flexibility to properly describe charge redistribution. With conjugated hydrocarbons, using a double active space and a 1-electron basis set with 3p-like functions (scaled from Si basis set) gives much of the necessary flexibility.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#p CASSCF(...)/6-31G* extrabasis&lt;br /&gt;
&lt;br /&gt;
Title&lt;br /&gt;
&lt;br /&gt;
0 1&lt;br /&gt;
Geometry&lt;br /&gt;
&lt;br /&gt;
C 0&lt;br /&gt;
 P   3 0.5&lt;br /&gt;
   .1727380000D+01   -.1779510000D-01&lt;br /&gt;
   .5729220000D+00    .2535390000D+00&lt;br /&gt;
   .2221920000D+00    .8006690000D+00&lt;br /&gt;
 P   1 0.5&lt;br /&gt;
   .7783690000D-01    .1000000000D+01&lt;br /&gt;
****&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Calculating and viewing the normal modes and frequencies of the energy difference; the modes of the seam; and the modes of the bilinear coupling=&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Calculation:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Use the non-standard route described in the section &amp;quot;Computation of Intersection-Space Frequencies&amp;quot; on the page &amp;quot;Seam Calculations of CHD&amp;quot;. The only difference in the non-standard route is 7/79. (7/79=1 for energy difference frequencies only, 7/79=2 for the three things, seam, energy difference and bilinear coupling frequencies).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Viewing the modes:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The scripts dffx_modes_g01.sh, seam_modes_g01.sh and eta_modes_g01.sh can be used to create log files that gaussview can read to visualise the normal modes and frequencies of the energy difference, the modes of the seam and/or the modes of the bilinear coupling respectively.&lt;br /&gt;
&lt;br /&gt;
First, you need a directory (on your mac or on the cluster) that we will call /dir/.&lt;br /&gt;
In here, you put the the scripts (dffx_modes_g01.sh, seam_modes_g01.sh, eta_modes_g01.sh) and a file called template.log, and you create a subdirectory /dir/gaussian_output/ in which you put your log file (say it&#039;s called jobname.log).&lt;br /&gt;
Then you create a subdirectory /dir/data/.&lt;br /&gt;
Then you execute the script this way:&lt;br /&gt;
./dffx_modes_g01.sh jobname&lt;br /&gt;
and you will get a new file in data that is called jobname_DFFX.log (for energy difference frequencies) or jobname_GV.log (for seam modes) and that can be read by GaussView.&lt;br /&gt;
&lt;br /&gt;
N.B.: ./ might not be needed on the cluster (also this may depend on the type of shell), but it is on my Mac.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Now, there used to be a small printing error in Fabrizio&#039;s code that may not have been fixed.&lt;br /&gt;
It&#039;s about the mass-weighting of the branching-space vectors, gradient difference and derivative coupling (the last two modes, given with zero frequencies). The consequence is that the motion of H atoms is exaggerated when you visualise these last two vectors with Gaussview.&lt;br /&gt;
The other ones are fine.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
NB the convention for the energy difference is S0 - S1, so if you want the modes that reduce the energy difference, take those that have a large positive frequency (with respect to the energy difference).&lt;br /&gt;
&lt;br /&gt;
=IRC calculations in which the vector to follow is specified by the user=&lt;br /&gt;
&lt;br /&gt;
This may be required if the starting point for the IRC is not a transition state (i.e. it has more than one imaginary frequency). In this case, GAUSSIAN will not know which negative frequency to follow so it must be specified explicitly.&lt;br /&gt;
&lt;br /&gt;
Using G03, certain combinations of keywords do not seem to work. Guess=read cannot be used: the orbitals must be specified explicitly in the input file along with the keyword guess=cards. It is also not possible to read in the force constants from a previous .chk file: irc=calcfc must be used. Thus if the calculation requires stateaverage orbitals, the stateaverage keyword must not be used (since, due to a bug in G03, it cannot be used in conjunction with a frequency calculation). Instead, the IOP (5/17=41000200,10/10=700007) should be specified. CAN WE VERIFY IF THIS IS ALL/PARTLY TRUE FOR OTHER VERSIONS OF GAUSSIAN?&lt;br /&gt;
&lt;br /&gt;
A typical route might look like:&lt;br /&gt;
&lt;br /&gt;
# CAS(4,4,nroot=2)/sto-3g IRC=(CalcFC,ReadVector) guess=cards nosymm IOP(5/17=41000200,10/10=700007)&lt;br /&gt;
 followed by&lt;/div&gt;</summary>
		<author><name>Callan</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-calculations&amp;diff=52723</id>
		<title>Resgrp:comp-photo-calculations</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-calculations&amp;diff=52723"/>
		<updated>2009-03-24T11:56:41Z</updated>

		<summary type="html">&lt;p&gt;Callan: /* IRC calculations in which the vector to follow is specified by the user */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Example input files for different types of calculation, mainly using the development code.&lt;br /&gt;
&lt;br /&gt;
=nonstd=&lt;br /&gt;
This keyword means &#039;don&#039;t use any keywords&#039;, and allows you to access the gaussian route generator directly.&lt;br /&gt;
For more info [http://www.gaussian.com/g_ur/m_non_standard_routes.htm see here] [http://www.gaussian.com/iops.htm and here].&lt;br /&gt;
For some types of calculation, we have to use template input files that have non-standard routes and bypass Gaussian&#039;s own route generator in &#039;expert mode&#039;. A route is generated for all Gaussian calculations, and should be at the top of the text .log file. Alternatively, for a calculation that has keywords already available, use the [http://www.gaussian.com/g_ur/u_testrt.htm testrt] keyword interactively at a terminal to see what route is generated.&lt;br /&gt;
&lt;br /&gt;
=ionic states=&lt;br /&gt;
For ionic states, a &#039;minimal&#039; active space (e.g. cas(6,6) for benzene) won&#039;t give realistic excitation energies, as there&#039;s not enough flexibility to properly describe charge redistribution. With conjugated hydrocarbons, using a double active space and a 1-electron basis set with 3p-like functions (scaled from Si basis set) gives much of the necessary flexibility.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#p CASSCF(...)/6-31G* extrabasis&lt;br /&gt;
&lt;br /&gt;
Title&lt;br /&gt;
&lt;br /&gt;
0 1&lt;br /&gt;
Geometry&lt;br /&gt;
&lt;br /&gt;
C 0&lt;br /&gt;
 P   3 0.5&lt;br /&gt;
   .1727380000D+01   -.1779510000D-01&lt;br /&gt;
   .5729220000D+00    .2535390000D+00&lt;br /&gt;
   .2221920000D+00    .8006690000D+00&lt;br /&gt;
 P   1 0.5&lt;br /&gt;
   .7783690000D-01    .1000000000D+01&lt;br /&gt;
****&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Calculating and viewing the normal modes and frequencies of the energy difference; the modes of the seam; and the modes of the bilinear coupling=&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Calculation:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Use the non-standard route described in the section &amp;quot;Computation of Intersection-Space Frequencies&amp;quot; on the page &amp;quot;Seam Calculations of CHD&amp;quot;. The only difference in the non-standard route is 7/79. (7/79=1 for energy difference frequencies only, 7/79=2 for the three things, seam, energy difference and bilinear coupling frequencies).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Viewing the modes:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The scripts dffx_modes_g01.sh, seam_modes_g01.sh and eta_modes_g01.sh can be used to create log files that gaussview can read to visualise the normal modes and frequencies of the energy difference, the modes of the seam and/or the modes of the bilinear coupling respectively.&lt;br /&gt;
&lt;br /&gt;
First, you need a directory (on your mac or on the cluster) that we will call /dir/.&lt;br /&gt;
In here, you put the the scripts (dffx_modes_g01.sh, seam_modes_g01.sh, eta_modes_g01.sh) and a file called template.log, and you create a subdirectory /dir/gaussian_output/ in which you put your log file (say it&#039;s called jobname.log).&lt;br /&gt;
Then you create a subdirectory /dir/data/.&lt;br /&gt;
Then you execute the script this way:&lt;br /&gt;
./dffx_modes_g01.sh jobname&lt;br /&gt;
and you will get a new file in data that is called jobname_DFFX.log (for energy difference frequencies) or jobname_GV.log (for seam modes) and that can be read by GaussView.&lt;br /&gt;
&lt;br /&gt;
N.B.: ./ might not be needed on the cluster (also this may depend on the type of shell), but it is on my Mac.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Now, there used to be a small printing error in Fabrizio&#039;s code that may not have been fixed.&lt;br /&gt;
It&#039;s about the mass-weighting of the branching-space vectors, gradient difference and derivative coupling (the last two modes, given with zero frequencies). The consequence is that the motion of H atoms is exaggerated when you visualise these last two vectors with Gaussview.&lt;br /&gt;
The other ones are fine.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
NB the convention for the energy difference is S0 - S1, so if you want the modes that reduce the energy difference, take those that have a large positive frequency (with respect to the energy difference).&lt;br /&gt;
&lt;br /&gt;
=IRC calculations in which the vector to follow is specified by the user=&lt;br /&gt;
&lt;br /&gt;
This may be required if the starting point for the IRC is not a transition state (i.e. it has more than one imaginary frequency). In this case, GAUSSIAN will not know which negative frequency to follow so it must be specified explicitly.&lt;br /&gt;
&lt;br /&gt;
Using G03, certain combinations of keywords do not seem to work. Guess=read cannot be used: the orbitals must be specified explicitly in the input file along with the keyword guess=cards. It is also not possible to read in the force constants from a previous .chk file: irc=calcfc must be used. Thus if the calculation requires stateaverage orbitals, the stateaverage keyword must not be used (since, due to a bug in G03, it cannot be used in conjunction with a frequency calculation). Instead, the IOP (10/10=700007) should be specified.&lt;/div&gt;</summary>
		<author><name>Callan</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-calculations&amp;diff=52722</id>
		<title>Resgrp:comp-photo-calculations</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-calculations&amp;diff=52722"/>
		<updated>2009-03-24T11:49:34Z</updated>

		<summary type="html">&lt;p&gt;Callan: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Example input files for different types of calculation, mainly using the development code.&lt;br /&gt;
&lt;br /&gt;
=nonstd=&lt;br /&gt;
This keyword means &#039;don&#039;t use any keywords&#039;, and allows you to access the gaussian route generator directly.&lt;br /&gt;
For more info [http://www.gaussian.com/g_ur/m_non_standard_routes.htm see here] [http://www.gaussian.com/iops.htm and here].&lt;br /&gt;
For some types of calculation, we have to use template input files that have non-standard routes and bypass Gaussian&#039;s own route generator in &#039;expert mode&#039;. A route is generated for all Gaussian calculations, and should be at the top of the text .log file. Alternatively, for a calculation that has keywords already available, use the [http://www.gaussian.com/g_ur/u_testrt.htm testrt] keyword interactively at a terminal to see what route is generated.&lt;br /&gt;
&lt;br /&gt;
=ionic states=&lt;br /&gt;
For ionic states, a &#039;minimal&#039; active space (e.g. cas(6,6) for benzene) won&#039;t give realistic excitation energies, as there&#039;s not enough flexibility to properly describe charge redistribution. With conjugated hydrocarbons, using a double active space and a 1-electron basis set with 3p-like functions (scaled from Si basis set) gives much of the necessary flexibility.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#p CASSCF(...)/6-31G* extrabasis&lt;br /&gt;
&lt;br /&gt;
Title&lt;br /&gt;
&lt;br /&gt;
0 1&lt;br /&gt;
Geometry&lt;br /&gt;
&lt;br /&gt;
C 0&lt;br /&gt;
 P   3 0.5&lt;br /&gt;
   .1727380000D+01   -.1779510000D-01&lt;br /&gt;
   .5729220000D+00    .2535390000D+00&lt;br /&gt;
   .2221920000D+00    .8006690000D+00&lt;br /&gt;
 P   1 0.5&lt;br /&gt;
   .7783690000D-01    .1000000000D+01&lt;br /&gt;
****&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Calculating and viewing the normal modes and frequencies of the energy difference; the modes of the seam; and the modes of the bilinear coupling=&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Calculation:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Use the non-standard route described in the section &amp;quot;Computation of Intersection-Space Frequencies&amp;quot; on the page &amp;quot;Seam Calculations of CHD&amp;quot;. The only difference in the non-standard route is 7/79. (7/79=1 for energy difference frequencies only, 7/79=2 for the three things, seam, energy difference and bilinear coupling frequencies).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Viewing the modes:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The scripts dffx_modes_g01.sh, seam_modes_g01.sh and eta_modes_g01.sh can be used to create log files that gaussview can read to visualise the normal modes and frequencies of the energy difference, the modes of the seam and/or the modes of the bilinear coupling respectively.&lt;br /&gt;
&lt;br /&gt;
First, you need a directory (on your mac or on the cluster) that we will call /dir/.&lt;br /&gt;
In here, you put the the scripts (dffx_modes_g01.sh, seam_modes_g01.sh, eta_modes_g01.sh) and a file called template.log, and you create a subdirectory /dir/gaussian_output/ in which you put your log file (say it&#039;s called jobname.log).&lt;br /&gt;
Then you create a subdirectory /dir/data/.&lt;br /&gt;
Then you execute the script this way:&lt;br /&gt;
./dffx_modes_g01.sh jobname&lt;br /&gt;
and you will get a new file in data that is called jobname_DFFX.log (for energy difference frequencies) or jobname_GV.log (for seam modes) and that can be read by GaussView.&lt;br /&gt;
&lt;br /&gt;
N.B.: ./ might not be needed on the cluster (also this may depend on the type of shell), but it is on my Mac.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Now, there used to be a small printing error in Fabrizio&#039;s code that may not have been fixed.&lt;br /&gt;
It&#039;s about the mass-weighting of the branching-space vectors, gradient difference and derivative coupling (the last two modes, given with zero frequencies). The consequence is that the motion of H atoms is exaggerated when you visualise these last two vectors with Gaussview.&lt;br /&gt;
The other ones are fine.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
NB the convention for the energy difference is S0 - S1, so if you want the modes that reduce the energy difference, take those that have a large positive frequency (with respect to the energy difference).&lt;br /&gt;
&lt;br /&gt;
=IRC calculations in which the vector to follow is specified by the user=&lt;br /&gt;
&lt;br /&gt;
This may be required if the starting point for the IRC is not a transition state (i.e. it has more than one imaginary frequency). In this case, GAUSSIAN will not know which negative frequency to follow so it must be specified explicitly.&lt;/div&gt;</summary>
		<author><name>Callan</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-calculations&amp;diff=52721</id>
		<title>Resgrp:comp-photo-calculations</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-calculations&amp;diff=52721"/>
		<updated>2009-03-24T11:45:34Z</updated>

		<summary type="html">&lt;p&gt;Callan: /* Calculating and viewing the normal modes and frequencies of the energy difference; the modes of the seam; and the modes of the bilinear coupling */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Example input files for different types of calculation, mainly using the development code.&lt;br /&gt;
&lt;br /&gt;
=nonstd=&lt;br /&gt;
This keyword means &#039;don&#039;t use any keywords&#039;, and allows you to access the gaussian route generator directly.&lt;br /&gt;
For more info [http://www.gaussian.com/g_ur/m_non_standard_routes.htm see here] [http://www.gaussian.com/iops.htm and here].&lt;br /&gt;
For some types of calculation, we have to use template input files that have non-standard routes and bypass Gaussian&#039;s own route generator in &#039;expert mode&#039;. A route is generated for all Gaussian calculations, and should be at the top of the text .log file. Alternatively, for a calculation that has keywords already available, use the [http://www.gaussian.com/g_ur/u_testrt.htm testrt] keyword interactively at a terminal to see what route is generated.&lt;br /&gt;
&lt;br /&gt;
=ionic states=&lt;br /&gt;
For ionic states, a &#039;minimal&#039; active space (e.g. cas(6,6) for benzene) won&#039;t give realistic excitation energies, as there&#039;s not enough flexibility to properly describe charge redistribution. With conjugated hydrocarbons, using a double active space and a 1-electron basis set with 3p-like functions (scaled from Si basis set) gives much of the necessary flexibility.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#p CASSCF(...)/6-31G* extrabasis&lt;br /&gt;
&lt;br /&gt;
Title&lt;br /&gt;
&lt;br /&gt;
0 1&lt;br /&gt;
Geometry&lt;br /&gt;
&lt;br /&gt;
C 0&lt;br /&gt;
 P   3 0.5&lt;br /&gt;
   .1727380000D+01   -.1779510000D-01&lt;br /&gt;
   .5729220000D+00    .2535390000D+00&lt;br /&gt;
   .2221920000D+00    .8006690000D+00&lt;br /&gt;
 P   1 0.5&lt;br /&gt;
   .7783690000D-01    .1000000000D+01&lt;br /&gt;
****&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Calculating and viewing the normal modes and frequencies of the energy difference; the modes of the seam; and the modes of the bilinear coupling=&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Calculation:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Use the non-standard route described in the section &amp;quot;Computation of Intersection-Space Frequencies&amp;quot; on the page &amp;quot;Seam Calculations of CHD&amp;quot;. The only difference in the non-standard route is 7/79. (7/79=1 for energy difference frequencies only, 7/79=2 for the three things, seam, energy difference and bilinear coupling frequencies).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Viewing the modes:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The scripts dffx_modes_g01.sh, seam_modes_g01.sh and eta_modes_g01.sh can be used to create log files that gaussview can read to visualise the normal modes and frequencies of the energy difference, the modes of the seam and/or the modes of the bilinear coupling respectively.&lt;br /&gt;
&lt;br /&gt;
First, you need a directory (on your mac or on the cluster) that we will call /dir/.&lt;br /&gt;
In here, you put the the scripts (dffx_modes_g01.sh, seam_modes_g01.sh, eta_modes_g01.sh) and a file called template.log, and you create a subdirectory /dir/gaussian_output/ in which you put your log file (say it&#039;s called jobname.log).&lt;br /&gt;
Then you create a subdirectory /dir/data/.&lt;br /&gt;
Then you execute the script this way:&lt;br /&gt;
./dffx_modes_g01.sh jobname&lt;br /&gt;
and you will get a new file in data that is called jobname_DFFX.log (for energy difference frequencies) or jobname_GV.log (for seam modes) and that can be read by GaussView.&lt;br /&gt;
&lt;br /&gt;
N.B.: ./ might not be needed on the cluster (also this may depend on the type of shell), but it is on my Mac.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Now, there used to be a small printing error in Fabrizio&#039;s code that may not have been fixed.&lt;br /&gt;
It&#039;s about the mass-weighting of the branching-space vectors, gradient difference and derivative coupling (the last two modes, given with zero frequencies). The consequence is that the motion of H atoms is exaggerated when you visualise these last two vectors with Gaussview.&lt;br /&gt;
The other ones are fine.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
NB the convention for the energy difference is S0 - S1, so if you want the modes that reduce the energy difference, take those that have a large positive frequency (with respect to the energy difference).&lt;/div&gt;</summary>
		<author><name>Callan</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-calculations&amp;diff=52720</id>
		<title>Resgrp:comp-photo-calculations</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-calculations&amp;diff=52720"/>
		<updated>2009-03-24T11:45:19Z</updated>

		<summary type="html">&lt;p&gt;Callan: /* Calculating and viewing the normal modes and frequencies of the energy difference; the modes of the seam; and the modes of the bilinear coupling */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Example input files for different types of calculation, mainly using the development code.&lt;br /&gt;
&lt;br /&gt;
=nonstd=&lt;br /&gt;
This keyword means &#039;don&#039;t use any keywords&#039;, and allows you to access the gaussian route generator directly.&lt;br /&gt;
For more info [http://www.gaussian.com/g_ur/m_non_standard_routes.htm see here] [http://www.gaussian.com/iops.htm and here].&lt;br /&gt;
For some types of calculation, we have to use template input files that have non-standard routes and bypass Gaussian&#039;s own route generator in &#039;expert mode&#039;. A route is generated for all Gaussian calculations, and should be at the top of the text .log file. Alternatively, for a calculation that has keywords already available, use the [http://www.gaussian.com/g_ur/u_testrt.htm testrt] keyword interactively at a terminal to see what route is generated.&lt;br /&gt;
&lt;br /&gt;
=ionic states=&lt;br /&gt;
For ionic states, a &#039;minimal&#039; active space (e.g. cas(6,6) for benzene) won&#039;t give realistic excitation energies, as there&#039;s not enough flexibility to properly describe charge redistribution. With conjugated hydrocarbons, using a double active space and a 1-electron basis set with 3p-like functions (scaled from Si basis set) gives much of the necessary flexibility.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#p CASSCF(...)/6-31G* extrabasis&lt;br /&gt;
&lt;br /&gt;
Title&lt;br /&gt;
&lt;br /&gt;
0 1&lt;br /&gt;
Geometry&lt;br /&gt;
&lt;br /&gt;
C 0&lt;br /&gt;
 P   3 0.5&lt;br /&gt;
   .1727380000D+01   -.1779510000D-01&lt;br /&gt;
   .5729220000D+00    .2535390000D+00&lt;br /&gt;
   .2221920000D+00    .8006690000D+00&lt;br /&gt;
 P   1 0.5&lt;br /&gt;
   .7783690000D-01    .1000000000D+01&lt;br /&gt;
****&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Calculating and viewing the normal modes and frequencies of the energy difference; the modes of the seam; and the modes of the bilinear coupling=&lt;br /&gt;
&lt;br /&gt;
Calculation:&lt;br /&gt;
&lt;br /&gt;
Use the non-standard route described in the section &amp;quot;Computation of Intersection-Space Frequencies&amp;quot; on the page &amp;quot;Seam Calculations of CHD&amp;quot;. The only difference in the non-standard route is 7/79. (7/79=1 for energy difference frequencies only, 7/79=2 for the three things, seam, energy difference and bilinear coupling frequencies).&lt;br /&gt;
&lt;br /&gt;
Viewing the modes:&lt;br /&gt;
&lt;br /&gt;
The scripts dffx_modes_g01.sh, seam_modes_g01.sh and eta_modes_g01.sh can be used to create log files that gaussview can read to visualise the normal modes and frequencies of the energy difference, the modes of the seam and/or the modes of the bilinear coupling respectively.&lt;br /&gt;
&lt;br /&gt;
First, you need a directory (on your mac or on the cluster) that we will call /dir/.&lt;br /&gt;
In here, you put the the scripts (dffx_modes_g01.sh, seam_modes_g01.sh, eta_modes_g01.sh) and a file called template.log, and you create a subdirectory /dir/gaussian_output/ in which you put your log file (say it&#039;s called jobname.log).&lt;br /&gt;
Then you create a subdirectory /dir/data/.&lt;br /&gt;
Then you execute the script this way:&lt;br /&gt;
./dffx_modes_g01.sh jobname&lt;br /&gt;
and you will get a new file in data that is called jobname_DFFX.log (for energy difference frequencies) or jobname_GV.log (for seam modes) and that can be read by GaussView.&lt;br /&gt;
&lt;br /&gt;
N.B.: ./ might not be needed on the cluster (also this may depend on the type of shell), but it is on my Mac.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Now, there used to be a small printing error in Fabrizio&#039;s code that may not have been fixed.&lt;br /&gt;
It&#039;s about the mass-weighting of the branching-space vectors, gradient difference and derivative coupling (the last two modes, given with zero frequencies). The consequence is that the motion of H atoms is exaggerated when you visualise these last two vectors with Gaussview.&lt;br /&gt;
The other ones are fine.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
NB the convention for the energy difference is S0 - S1, so if you want the modes that reduce the energy difference, take those that have a large positive frequency (with respect to the energy difference).&lt;/div&gt;</summary>
		<author><name>Callan</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-CHD&amp;diff=52719</id>
		<title>Resgrp:comp-photo-CHD</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-CHD&amp;diff=52719"/>
		<updated>2009-03-24T11:39:05Z</updated>

		<summary type="html">&lt;p&gt;Callan: /* Viewing the normal modes and frequencies of the seam (or the normal modes and frequencies of the energy difference or of the bilinear coupling) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Overview=&lt;br /&gt;
In the following sections it will be described how one can calculate the conical intersection seam of CHD (cyclo-hexa-1,3-diene) respectively &#039;&#039;cZc&#039;&#039;-HT (CZc-hexa-1,3,5-triene) with the new algorithm. Therefore the &lt;br /&gt;
&lt;br /&gt;
#  Optimization of a minimum point on the S0/S1 crossing seam&lt;br /&gt;
#  Computation of Intersection-Space Frequencies&lt;br /&gt;
#  Optimization of a Saddle point on the S0/S1 CHD crossing seam&lt;br /&gt;
#  Computation of the Intersection Space Minimum Energy Path (MEP) &lt;br /&gt;
&lt;br /&gt;
will be demonstrated.&lt;br /&gt;
  &lt;br /&gt;
==Development version and Substitutions==&lt;br /&gt;
For the calculations you have to use the Gaussian Development version, for the use of the current stable version your jobscript must contain following lines:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;module load gaussian/devel-modules&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;module load gdvg01_08&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[[Media:example-jobscript.ogg]]&lt;br /&gt;
&lt;br /&gt;
Also the beginning of your Input-file (.com) has to contain the following lines:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;%subst l103 /home/gaussian-devel/gaussiandvg01_pgi_lindafix/gdv_fabrizio/l103&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;%subst l115 /home/gaussian-devel/gaussiandvg01_pgi_lindafix/gdv_fabrizio/l115&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;%subst l510 /home/gaussian-devel/gaussiandvg01_pgi_lindafix/gdv_fabrizio/l510&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;%subst l716 /home/gaussian-devel/gaussiandvg01_pgi_lindafix/gdv_fabrizio/l716&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;%subst l1003 /home/gaussian-devel/gaussiandvg01_pgi_lindafix/gdv_fabrizio/l1003&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[[Media:test_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
=Optimization of a minimum point on the S0/S1 crossing seam=&lt;br /&gt;
For the optimization of a minimum point with the new algorithm you can use a standard input file. When you want to optimize a conical intersection geometry between the &#039;&#039;q-th&#039;&#039; and the &#039;&#039;(q-1)-th&#039;&#039; electronic state with an active space of &#039;&#039;n&#039;&#039; electrons in &#039;&#039;m&#039;&#039; orbitals the input file must contain the following lines:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;#P CAS(m,n,nr = q)/[basis set]&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Opt = Conical&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;IOp(1/5=-1,10/10=500005)&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;[Input Title]&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;[Charge] [Spin Multiplicity]&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;[Geometry]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The IOp(1/5) set to minus one specifies that we are attempting to optimize a minimum conical intersection point along the crossing seam. The IOp(10/10) is set to 500005 in order to compute the average gradient, which is used in the new algorithm, by solving the SA-CPMCSCF equations. The following files are the input and output files for the optimization of the  2A1/1A1 conical intersection minimum of CHD:&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_min_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_min_log.ogg]]&lt;br /&gt;
&lt;br /&gt;
Here also the IOp(1/16) is set to 5 in order to set the maximum allowable magnitude of the the eigenvalues of the second derative matrix. In order to check if this point is a saddle point or a minimum point a frequency calculation is necessary, which is described in the next section.&lt;br /&gt;
&lt;br /&gt;
=Computation of Intersection-Space Frequencies=&lt;br /&gt;
For the calculation of the Intersection-Space Frequencies no keywords exist to run such calculation yet. Therefore, a non-standard root has to be composed. A non-standard root is a complete sequence of links with associated options specified in an input file and read in by Gaussian. It is important to note that the program executes each link in the specified order, therefore extreme caution has to be taken when composing a non-standard route. Thus, a non-standard route is generally created by modifying the sequence of links produced by the standard route most similar to the one desired. This is accomplished most easily with the &#039;&#039;testrt&#039;&#039; utility, for more information [https://www.ch.ic.ac.uk/wiki/index.php/Resgrp:comp-photo-calculations see here]. In computing intersection-space frequencies, &#039;&#039;testrt&#039;&#039; is used to produce the route for a standard state-average CASSCF frequency calculation: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;#P CAS(n,m,stateaveraged,nroot = q)/[basis set]&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Nosymm&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Freq&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The route obtained with &#039;&#039;testrt&#039;&#039;  gives the correct sequence of links in a SA-CASSCF frequency analysis with the corresponding default options. However, in an intersection-space frequency analysis one needs the Hessian of both the intersecting electronic states and the Hessian of the rotated optimized wavefunctions. Create the route using testrt and repeat the sequence of links 5, 8, 11, 10, 6, 7 another two times within the new route. Then add/edit the specific options as below. Thus, the non-standard route used for an intersection-space frequency analysis should have a form similar to:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;1/.../1,3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;2/.../2;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;3/.../1,2,3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;4/.../1,5;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;5/..,17=41000200,.../10;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;8/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;11/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;10/...,10=600007,.../3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;6/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;7/...,45=52/1,2,3,16;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;5/...,17=41000200,...,97=100/10;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;8/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;11/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;10/...,10=600007,...,97=100/3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;6/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;7/...,45=51/1,2,3,16;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;5/...,17=41000200,...,79=1/10;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;8/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;11/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;10/...,10=600007,...,79=1/3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;6/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;7/...,45=53/1,2,3,16;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;1/.../3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039; 99//99;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The following files are the input and output files for the frequency calculation of the optimized conical intersection minimum of CHD, computed in the previous section:&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_min_freq_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_min_freq_log.ogg]]&lt;br /&gt;
&lt;br /&gt;
With the IOp(1/29) and the IOp(4/5) set to one, the geometry and the initial guess is read from the checkpoint file, which you got from the optimization. The IOp(4/17) and IOp(4/18) are set to six, which specifies the number of  electrons and orbitals in the active space, one might need to add more keywords depending on the specific study and system.&lt;br /&gt;
&lt;br /&gt;
So how you can see in the output file there is no negative frequency, therefore the structure of section 2 should be a conical intersection minimum.&lt;br /&gt;
&lt;br /&gt;
==Viewing the normal modes and frequencies of the seam (or the normal modes and frequencies of the energy difference or of the bilinear coupling)==&lt;br /&gt;
&lt;br /&gt;
The scripts dffx_modes_g01.sh, seam_modes_g01.sh and eta_modes_g01.sh can be used to create log files that gaussview can read to visualise the normal modes and frequencies of the energy difference, the modes of the seam and/or the modes of the bilinear coupling respectively.&lt;br /&gt;
&lt;br /&gt;
First, you need a directory (on your mac or on the cluster) that we will call /dir/.&lt;br /&gt;
In here, you put the the scripts (dffx_modes_g01.sh, seam_modes_g01.sh, eta_modes_g01.sh) and a file called template.log, and you create a subdirectory /dir/gaussian_output/ in which you put your log file (say it&#039;s called jobname.log).&lt;br /&gt;
Then you create a subdirectory /dir/data/.&lt;br /&gt;
Then you execute the script this way:&lt;br /&gt;
./dffx_modes_g01.sh jobname&lt;br /&gt;
and you will get a new file in data that is called jobname_DFFX.log (for energy difference frequencies) or jobname_GV.log (for seam modes) and that can be read by GaussView.&lt;br /&gt;
&lt;br /&gt;
N.B.: ./ might not be needed on the cluster (also this may depend on the type of shell), but it is on my Mac.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Now, there used to be a small printing error in Fabrizio&#039;s code that may not have been fixed. It&#039;s about the mass-weighting of the branching-space vectors, gradient difference and derivative coupling (the last two modes, given with zero frequencies). The consequence is that the motion of H atoms is exaggerated when you visualise these last two vectors with Gaussview. The other ones are fine.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
NB the convention for the energy difference is S0 - S1, so if you want the modes that reduce the energy difference, take those that have a large positive frequency (with respect to the energy difference).&lt;br /&gt;
&lt;br /&gt;
[[Media:Freq_scripts.zip]]&lt;br /&gt;
&lt;br /&gt;
[[Media:template.log]]&lt;br /&gt;
&lt;br /&gt;
=Optimization of a Saddle point on the S0/S1 CHD crossing seam=&lt;br /&gt;
&lt;br /&gt;
Generally, in order to optimize a saddle point structure, one must start from a geometry that is close enough to the quadratic region of such a point. In addition, the Hessian at this initial structure must have a negative eigenvalue, and the corresponding eigevector must be a suitable approximation for the direction connecting the two valleys. When one tries to optimize a saddle point within the intersection space, the initial geometry should also be a point of degeneracy (or near-degeneracy), since the intersection-space Hessian must be computed. Thus it is sometimes useful first to make a single point calculation and then a energy gap optimization between the two states along the gradient difference vector. Input and output files of the single point calculation:&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_log.ogg]]&lt;br /&gt;
&lt;br /&gt;
Input and output files of the energy gap optimization:&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_E_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_E_log.ogg]]&lt;br /&gt;
&lt;br /&gt;
Then it is also quite useful first to make a frequency calculation of this point:&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_E_freq_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_E_freq_log.ogg]]&lt;br /&gt;
&lt;br /&gt;
And then one can do with this checkpoint file the optimization of the first-order saddle point:&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_opt_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_opt_log.ogg]]&lt;br /&gt;
&lt;br /&gt;
The IOp(1/8) set to one specifies the maximum step size allowed during the optimization and the IOp(5/7) set to 250 specifies the maximum number of iterations. Because this time we want to get a first-order saddle point instead of a minimum also the IOp(1/5) is set  minus 2. To prove that this is a first-order saddle point a frequency calculation must be done, which is also necessary for the Computation of the Intersection Space Minimum Energy Path (section 5):&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_opt_freq_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_opt_freq_log.ogg]]&lt;br /&gt;
&lt;br /&gt;
The one negative frequency indicates that the point is really a first-order saddle point.&lt;br /&gt;
&lt;br /&gt;
=Computation of the Intersection Space Minimum Energy Path (MEP)=&lt;br /&gt;
&lt;br /&gt;
Currently no standard route exists to compute a minimum energy path limited to the intersection-space. Therefore, as discussed in  section 3, a non-standard route has to be specified in the input file in order to perform these calculations. Using &#039;&#039;testrt&#039;&#039; and carefully modifying the output obtained for a standard intrinsic reaction path computation, which is specified by the IRC keyword, one should obtain something similar to:&lt;br /&gt;
 &lt;br /&gt;
&#039;&#039;&#039;1/...,44=-3,.../1,15;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;2/.../2;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;3/.../1,2,3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;4/.../1,5;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;5/.../10;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;8/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;11/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;10/10=500005,.../3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;6/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;7/.../16;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;1/...,44=-3,../15(2);&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;2/.../2;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;99//99;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;2/.../2;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;3/.../1,2,3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;4/.../1,5;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;5/.../10;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;8/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;11/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;10/10=500005,.../3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;7/.../16;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;1/...,44=-3,.../15(-8);&#039;&#039;&#039;&amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;2/.../2;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;6/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;99/9=1/99;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
In order to evaluate the intersection-space minimum energy path, there are added three more options to the existing IOp(1/44):&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;1/44 = -1	Compute the intersection-space minimum energy path in mass-weighted Cartesian coordinates.&#039;&#039;&#039;&amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;1/44 = -2	Compute the intersection-space minimum energy path in internal coordinates.&#039;&#039;&#039;&amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;1/44 = -3	Compute the intersection-space minimum energy path in mass-weighted internal coordinates.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
For the following example the intersection-space minimum energy path (MEP) is computed in mass-weighted internal coordinates. For the computation of the MEP you need the transition point structure and the search vector from the optimization of the Saddle point from section 4. The transition point structure is the optimized Saddle point structure, while the search vector is the normal mode of the one negative frequency. But because in the output the normal mode is given in Cartesian coordinates, you first have to transform them in internal coordinates, by adding the normal mode to the optimized Saddle point structure, write out this structure in internal coordinates and calculate e.g with Exel the differences of the internal coordinates in comparison to the optimized Saddle point structure. These differences of the internal coordinates (search vector) have to be add to the transition point structure (in internal coordinates) in a 8F10.6 format in the input file:&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_IRC_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_IRC_log.tar.gz.ogg]]&lt;br /&gt;
&lt;br /&gt;
So the calculated MEP leads from the transition point (CI_trans) to the minimum point (CI_min) on the S0/S1 crossing seam.&lt;/div&gt;</summary>
		<author><name>Callan</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-CHD&amp;diff=52718</id>
		<title>Resgrp:comp-photo-CHD</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-CHD&amp;diff=52718"/>
		<updated>2009-03-24T11:38:19Z</updated>

		<summary type="html">&lt;p&gt;Callan: /* Viewing the normal modes and frequencies of the seam (or the normal modes and frequencies of the energy difference or of the bilinear coupling) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Overview=&lt;br /&gt;
In the following sections it will be described how one can calculate the conical intersection seam of CHD (cyclo-hexa-1,3-diene) respectively &#039;&#039;cZc&#039;&#039;-HT (CZc-hexa-1,3,5-triene) with the new algorithm. Therefore the &lt;br /&gt;
&lt;br /&gt;
#  Optimization of a minimum point on the S0/S1 crossing seam&lt;br /&gt;
#  Computation of Intersection-Space Frequencies&lt;br /&gt;
#  Optimization of a Saddle point on the S0/S1 CHD crossing seam&lt;br /&gt;
#  Computation of the Intersection Space Minimum Energy Path (MEP) &lt;br /&gt;
&lt;br /&gt;
will be demonstrated.&lt;br /&gt;
  &lt;br /&gt;
==Development version and Substitutions==&lt;br /&gt;
For the calculations you have to use the Gaussian Development version, for the use of the current stable version your jobscript must contain following lines:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;module load gaussian/devel-modules&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;module load gdvg01_08&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[[Media:example-jobscript.ogg]]&lt;br /&gt;
&lt;br /&gt;
Also the beginning of your Input-file (.com) has to contain the following lines:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;%subst l103 /home/gaussian-devel/gaussiandvg01_pgi_lindafix/gdv_fabrizio/l103&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;%subst l115 /home/gaussian-devel/gaussiandvg01_pgi_lindafix/gdv_fabrizio/l115&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;%subst l510 /home/gaussian-devel/gaussiandvg01_pgi_lindafix/gdv_fabrizio/l510&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;%subst l716 /home/gaussian-devel/gaussiandvg01_pgi_lindafix/gdv_fabrizio/l716&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;%subst l1003 /home/gaussian-devel/gaussiandvg01_pgi_lindafix/gdv_fabrizio/l1003&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[[Media:test_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
=Optimization of a minimum point on the S0/S1 crossing seam=&lt;br /&gt;
For the optimization of a minimum point with the new algorithm you can use a standard input file. When you want to optimize a conical intersection geometry between the &#039;&#039;q-th&#039;&#039; and the &#039;&#039;(q-1)-th&#039;&#039; electronic state with an active space of &#039;&#039;n&#039;&#039; electrons in &#039;&#039;m&#039;&#039; orbitals the input file must contain the following lines:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;#P CAS(m,n,nr = q)/[basis set]&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Opt = Conical&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;IOp(1/5=-1,10/10=500005)&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;[Input Title]&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;[Charge] [Spin Multiplicity]&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;[Geometry]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The IOp(1/5) set to minus one specifies that we are attempting to optimize a minimum conical intersection point along the crossing seam. The IOp(10/10) is set to 500005 in order to compute the average gradient, which is used in the new algorithm, by solving the SA-CPMCSCF equations. The following files are the input and output files for the optimization of the  2A1/1A1 conical intersection minimum of CHD:&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_min_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_min_log.ogg]]&lt;br /&gt;
&lt;br /&gt;
Here also the IOp(1/16) is set to 5 in order to set the maximum allowable magnitude of the the eigenvalues of the second derative matrix. In order to check if this point is a saddle point or a minimum point a frequency calculation is necessary, which is described in the next section.&lt;br /&gt;
&lt;br /&gt;
=Computation of Intersection-Space Frequencies=&lt;br /&gt;
For the calculation of the Intersection-Space Frequencies no keywords exist to run such calculation yet. Therefore, a non-standard root has to be composed. A non-standard root is a complete sequence of links with associated options specified in an input file and read in by Gaussian. It is important to note that the program executes each link in the specified order, therefore extreme caution has to be taken when composing a non-standard route. Thus, a non-standard route is generally created by modifying the sequence of links produced by the standard route most similar to the one desired. This is accomplished most easily with the &#039;&#039;testrt&#039;&#039; utility, for more information [https://www.ch.ic.ac.uk/wiki/index.php/Resgrp:comp-photo-calculations see here]. In computing intersection-space frequencies, &#039;&#039;testrt&#039;&#039; is used to produce the route for a standard state-average CASSCF frequency calculation: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;#P CAS(n,m,stateaveraged,nroot = q)/[basis set]&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Nosymm&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Freq&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The route obtained with &#039;&#039;testrt&#039;&#039;  gives the correct sequence of links in a SA-CASSCF frequency analysis with the corresponding default options. However, in an intersection-space frequency analysis one needs the Hessian of both the intersecting electronic states and the Hessian of the rotated optimized wavefunctions. Create the route using testrt and repeat the sequence of links 5, 8, 11, 10, 6, 7 another two times within the new route. Then add/edit the specific options as below. Thus, the non-standard route used for an intersection-space frequency analysis should have a form similar to:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;1/.../1,3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;2/.../2;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;3/.../1,2,3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;4/.../1,5;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;5/..,17=41000200,.../10;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;8/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;11/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;10/...,10=600007,.../3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;6/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;7/...,45=52/1,2,3,16;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;5/...,17=41000200,...,97=100/10;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;8/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;11/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;10/...,10=600007,...,97=100/3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;6/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;7/...,45=51/1,2,3,16;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;5/...,17=41000200,...,79=1/10;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;8/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;11/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;10/...,10=600007,...,79=1/3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;6/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;7/...,45=53/1,2,3,16;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;1/.../3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039; 99//99;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The following files are the input and output files for the frequency calculation of the optimized conical intersection minimum of CHD, computed in the previous section:&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_min_freq_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_min_freq_log.ogg]]&lt;br /&gt;
&lt;br /&gt;
With the IOp(1/29) and the IOp(4/5) set to one, the geometry and the initial guess is read from the checkpoint file, which you got from the optimization. The IOp(4/17) and IOp(4/18) are set to six, which specifies the number of  electrons and orbitals in the active space, one might need to add more keywords depending on the specific study and system.&lt;br /&gt;
&lt;br /&gt;
So how you can see in the output file there is no negative frequency, therefore the structure of section 2 should be a conical intersection minimum.&lt;br /&gt;
&lt;br /&gt;
==Viewing the normal modes and frequencies of the seam (or the normal modes and frequencies of the energy difference or of the bilinear coupling)==&lt;br /&gt;
&lt;br /&gt;
The scripts dffx_modes_g01.sh, seam_modes_g01.sh and eta_modes_g01.sh can be used to create log files that gaussview can read to visualise the normal modes and frequencies of the energy difference, the modes of the seam and/or the modes of the bilinear coupling respectively.&lt;br /&gt;
&lt;br /&gt;
First, you need a directory (on your mac or on the cluster) that we will call /dir/.&lt;br /&gt;
In here, you put the the scripts (dffx_modes_g01.sh, seam_modes_g01.sh, eta_modes_g01.sh) and a file called template.log, and you create a subdirectory /dir/gaussian_output/ in which you put your log file (say it&#039;s called jobname.log).&lt;br /&gt;
Then you create a subdirectory /dir/data/.&lt;br /&gt;
Then you execute the script this way:&lt;br /&gt;
./dffx_modes_g01.sh jobname&lt;br /&gt;
and you will get a new file in data that is called jobname_DFFX.log (for energy difference frequencies) or jobname_GV.log (for seam modes) and that can be read by GaussView.&lt;br /&gt;
&lt;br /&gt;
N.B.: ./ might not be needed on the cluster (also this may depend on the type of shell), but it is on my Mac.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;Now, there used to be a small printing error in Fabrizio&#039;s code that may not have been fixed.&lt;br /&gt;
It&#039;s about the mass-weighting of the branching-space vectors, gradient difference and derivative coupling (the last two modes, given with zero frequencies). The consequence is that the motion of H atoms is exaggerated when you visualise these last two vectors with Gaussview.&lt;br /&gt;
The other ones are fine.&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
NB the convention for the energy difference is S0 - S1, so if you want the modes that reduce the energy difference, take those that have a large positive frequency (with respect to the energy difference).&lt;br /&gt;
&lt;br /&gt;
[[Media:Freq_scripts.zip]]&lt;br /&gt;
&lt;br /&gt;
[[Media:template.log]]&lt;br /&gt;
&lt;br /&gt;
=Optimization of a Saddle point on the S0/S1 CHD crossing seam=&lt;br /&gt;
&lt;br /&gt;
Generally, in order to optimize a saddle point structure, one must start from a geometry that is close enough to the quadratic region of such a point. In addition, the Hessian at this initial structure must have a negative eigenvalue, and the corresponding eigevector must be a suitable approximation for the direction connecting the two valleys. When one tries to optimize a saddle point within the intersection space, the initial geometry should also be a point of degeneracy (or near-degeneracy), since the intersection-space Hessian must be computed. Thus it is sometimes useful first to make a single point calculation and then a energy gap optimization between the two states along the gradient difference vector. Input and output files of the single point calculation:&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_log.ogg]]&lt;br /&gt;
&lt;br /&gt;
Input and output files of the energy gap optimization:&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_E_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_E_log.ogg]]&lt;br /&gt;
&lt;br /&gt;
Then it is also quite useful first to make a frequency calculation of this point:&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_E_freq_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_E_freq_log.ogg]]&lt;br /&gt;
&lt;br /&gt;
And then one can do with this checkpoint file the optimization of the first-order saddle point:&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_opt_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_opt_log.ogg]]&lt;br /&gt;
&lt;br /&gt;
The IOp(1/8) set to one specifies the maximum step size allowed during the optimization and the IOp(5/7) set to 250 specifies the maximum number of iterations. Because this time we want to get a first-order saddle point instead of a minimum also the IOp(1/5) is set  minus 2. To prove that this is a first-order saddle point a frequency calculation must be done, which is also necessary for the Computation of the Intersection Space Minimum Energy Path (section 5):&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_opt_freq_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_opt_freq_log.ogg]]&lt;br /&gt;
&lt;br /&gt;
The one negative frequency indicates that the point is really a first-order saddle point.&lt;br /&gt;
&lt;br /&gt;
=Computation of the Intersection Space Minimum Energy Path (MEP)=&lt;br /&gt;
&lt;br /&gt;
Currently no standard route exists to compute a minimum energy path limited to the intersection-space. Therefore, as discussed in  section 3, a non-standard route has to be specified in the input file in order to perform these calculations. Using &#039;&#039;testrt&#039;&#039; and carefully modifying the output obtained for a standard intrinsic reaction path computation, which is specified by the IRC keyword, one should obtain something similar to:&lt;br /&gt;
 &lt;br /&gt;
&#039;&#039;&#039;1/...,44=-3,.../1,15;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;2/.../2;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;3/.../1,2,3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;4/.../1,5;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;5/.../10;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;8/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;11/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;10/10=500005,.../3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;6/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;7/.../16;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;1/...,44=-3,../15(2);&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;2/.../2;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;99//99;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;2/.../2;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;3/.../1,2,3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;4/.../1,5;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;5/.../10;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;8/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;11/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;10/10=500005,.../3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;7/.../16;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;1/...,44=-3,.../15(-8);&#039;&#039;&#039;&amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;2/.../2;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;6/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;99/9=1/99;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
In order to evaluate the intersection-space minimum energy path, there are added three more options to the existing IOp(1/44):&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;1/44 = -1	Compute the intersection-space minimum energy path in mass-weighted Cartesian coordinates.&#039;&#039;&#039;&amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;1/44 = -2	Compute the intersection-space minimum energy path in internal coordinates.&#039;&#039;&#039;&amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;1/44 = -3	Compute the intersection-space minimum energy path in mass-weighted internal coordinates.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
For the following example the intersection-space minimum energy path (MEP) is computed in mass-weighted internal coordinates. For the computation of the MEP you need the transition point structure and the search vector from the optimization of the Saddle point from section 4. The transition point structure is the optimized Saddle point structure, while the search vector is the normal mode of the one negative frequency. But because in the output the normal mode is given in Cartesian coordinates, you first have to transform them in internal coordinates, by adding the normal mode to the optimized Saddle point structure, write out this structure in internal coordinates and calculate e.g with Exel the differences of the internal coordinates in comparison to the optimized Saddle point structure. These differences of the internal coordinates (search vector) have to be add to the transition point structure (in internal coordinates) in a 8F10.6 format in the input file:&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_IRC_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_IRC_log.tar.gz.ogg]]&lt;br /&gt;
&lt;br /&gt;
So the calculated MEP leads from the transition point (CI_trans) to the minimum point (CI_min) on the S0/S1 crossing seam.&lt;/div&gt;</summary>
		<author><name>Callan</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-CHD&amp;diff=52717</id>
		<title>Resgrp:comp-photo-CHD</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-CHD&amp;diff=52717"/>
		<updated>2009-03-24T11:37:45Z</updated>

		<summary type="html">&lt;p&gt;Callan: /* Viewing the normal modes and frequencies of the energy difference; the modes of the seam; and the modes of the bilinear coupling */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Overview=&lt;br /&gt;
In the following sections it will be described how one can calculate the conical intersection seam of CHD (cyclo-hexa-1,3-diene) respectively &#039;&#039;cZc&#039;&#039;-HT (CZc-hexa-1,3,5-triene) with the new algorithm. Therefore the &lt;br /&gt;
&lt;br /&gt;
#  Optimization of a minimum point on the S0/S1 crossing seam&lt;br /&gt;
#  Computation of Intersection-Space Frequencies&lt;br /&gt;
#  Optimization of a Saddle point on the S0/S1 CHD crossing seam&lt;br /&gt;
#  Computation of the Intersection Space Minimum Energy Path (MEP) &lt;br /&gt;
&lt;br /&gt;
will be demonstrated.&lt;br /&gt;
  &lt;br /&gt;
==Development version and Substitutions==&lt;br /&gt;
For the calculations you have to use the Gaussian Development version, for the use of the current stable version your jobscript must contain following lines:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;module load gaussian/devel-modules&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;module load gdvg01_08&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[[Media:example-jobscript.ogg]]&lt;br /&gt;
&lt;br /&gt;
Also the beginning of your Input-file (.com) has to contain the following lines:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;%subst l103 /home/gaussian-devel/gaussiandvg01_pgi_lindafix/gdv_fabrizio/l103&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;%subst l115 /home/gaussian-devel/gaussiandvg01_pgi_lindafix/gdv_fabrizio/l115&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;%subst l510 /home/gaussian-devel/gaussiandvg01_pgi_lindafix/gdv_fabrizio/l510&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;%subst l716 /home/gaussian-devel/gaussiandvg01_pgi_lindafix/gdv_fabrizio/l716&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;%subst l1003 /home/gaussian-devel/gaussiandvg01_pgi_lindafix/gdv_fabrizio/l1003&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[[Media:test_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
=Optimization of a minimum point on the S0/S1 crossing seam=&lt;br /&gt;
For the optimization of a minimum point with the new algorithm you can use a standard input file. When you want to optimize a conical intersection geometry between the &#039;&#039;q-th&#039;&#039; and the &#039;&#039;(q-1)-th&#039;&#039; electronic state with an active space of &#039;&#039;n&#039;&#039; electrons in &#039;&#039;m&#039;&#039; orbitals the input file must contain the following lines:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;#P CAS(m,n,nr = q)/[basis set]&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Opt = Conical&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;IOp(1/5=-1,10/10=500005)&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;[Input Title]&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;[Charge] [Spin Multiplicity]&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;[Geometry]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The IOp(1/5) set to minus one specifies that we are attempting to optimize a minimum conical intersection point along the crossing seam. The IOp(10/10) is set to 500005 in order to compute the average gradient, which is used in the new algorithm, by solving the SA-CPMCSCF equations. The following files are the input and output files for the optimization of the  2A1/1A1 conical intersection minimum of CHD:&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_min_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_min_log.ogg]]&lt;br /&gt;
&lt;br /&gt;
Here also the IOp(1/16) is set to 5 in order to set the maximum allowable magnitude of the the eigenvalues of the second derative matrix. In order to check if this point is a saddle point or a minimum point a frequency calculation is necessary, which is described in the next section.&lt;br /&gt;
&lt;br /&gt;
=Computation of Intersection-Space Frequencies=&lt;br /&gt;
For the calculation of the Intersection-Space Frequencies no keywords exist to run such calculation yet. Therefore, a non-standard root has to be composed. A non-standard root is a complete sequence of links with associated options specified in an input file and read in by Gaussian. It is important to note that the program executes each link in the specified order, therefore extreme caution has to be taken when composing a non-standard route. Thus, a non-standard route is generally created by modifying the sequence of links produced by the standard route most similar to the one desired. This is accomplished most easily with the &#039;&#039;testrt&#039;&#039; utility, for more information [https://www.ch.ic.ac.uk/wiki/index.php/Resgrp:comp-photo-calculations see here]. In computing intersection-space frequencies, &#039;&#039;testrt&#039;&#039; is used to produce the route for a standard state-average CASSCF frequency calculation: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;#P CAS(n,m,stateaveraged,nroot = q)/[basis set]&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Nosymm&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Freq&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The route obtained with &#039;&#039;testrt&#039;&#039;  gives the correct sequence of links in a SA-CASSCF frequency analysis with the corresponding default options. However, in an intersection-space frequency analysis one needs the Hessian of both the intersecting electronic states and the Hessian of the rotated optimized wavefunctions. Create the route using testrt and repeat the sequence of links 5, 8, 11, 10, 6, 7 another two times within the new route. Then add/edit the specific options as below. Thus, the non-standard route used for an intersection-space frequency analysis should have a form similar to:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;1/.../1,3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;2/.../2;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;3/.../1,2,3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;4/.../1,5;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;5/..,17=41000200,.../10;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;8/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;11/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;10/...,10=600007,.../3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;6/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;7/...,45=52/1,2,3,16;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;5/...,17=41000200,...,97=100/10;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;8/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;11/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;10/...,10=600007,...,97=100/3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;6/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;7/...,45=51/1,2,3,16;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;5/...,17=41000200,...,79=1/10;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;8/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;11/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;10/...,10=600007,...,79=1/3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;6/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;7/...,45=53/1,2,3,16;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;1/.../3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039; 99//99;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The following files are the input and output files for the frequency calculation of the optimized conical intersection minimum of CHD, computed in the previous section:&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_min_freq_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_min_freq_log.ogg]]&lt;br /&gt;
&lt;br /&gt;
With the IOp(1/29) and the IOp(4/5) set to one, the geometry and the initial guess is read from the checkpoint file, which you got from the optimization. The IOp(4/17) and IOp(4/18) are set to six, which specifies the number of  electrons and orbitals in the active space, one might need to add more keywords depending on the specific study and system.&lt;br /&gt;
&lt;br /&gt;
So how you can see in the output file there is no negative frequency, therefore the structure of section 2 should be a conical intersection minimum.&lt;br /&gt;
&lt;br /&gt;
==Viewing the normal modes and frequencies of the seam (or the normal modes and frequencies of the energy difference or of the bilinear coupling)==&lt;br /&gt;
&lt;br /&gt;
The scripts dffx_modes_g01.sh, seam_modes_g01.sh and eta_modes_g01.sh can be used to create log files that gaussview can read to visualise the normal modes and frequencies of the energy difference, the modes of the seam and/or the modes of the bilinear coupling respectively.&lt;br /&gt;
&lt;br /&gt;
First, you need a directory (on your mac or on the cluster) that we will call /dir/.&lt;br /&gt;
In here, you put the the scripts (dffx_modes_g01.sh, seam_modes_g01.sh, eta_modes_g01.sh) and a file called template.log, and you create a subdirectory /dir/gaussian_output/ in which you put your log file (say it&#039;s called jobname.log).&lt;br /&gt;
Then you create a subdirectory /dir/data/.&lt;br /&gt;
Then you execute the script this way:&lt;br /&gt;
./dffx_modes_g01.sh jobname&lt;br /&gt;
and you will get a new file in data that is called jobname_DFFX.log (for energy difference frequencies) or jobname_GV.log (for seam modes) and that can be read by GaussView.&lt;br /&gt;
&lt;br /&gt;
N.B.: ./ might not be needed on the cluster (also this may depend on the type of shell), but it is on my Mac.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Now, there used to be a small printing error in Fabrizio&#039;s code that may not have been fixed.&lt;br /&gt;
It&#039;s about the mass-weighting of the branching-space vectors, gradient difference and derivative coupling (the last two modes, given with zero frequencies). The consequence is that the motion of H atoms is exaggerated when you visualise these last two vectors with Gaussview.&lt;br /&gt;
The other ones are fine.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
NB the convention for the energy difference is S0 - S1, so if you want the modes that reduce the energy difference, take those that have a large positive frequency (with respect to the energy difference).&lt;br /&gt;
&lt;br /&gt;
[[Media:Freq_scripts.zip]]&lt;br /&gt;
&lt;br /&gt;
[[Media:template.log]]&lt;br /&gt;
&lt;br /&gt;
=Optimization of a Saddle point on the S0/S1 CHD crossing seam=&lt;br /&gt;
&lt;br /&gt;
Generally, in order to optimize a saddle point structure, one must start from a geometry that is close enough to the quadratic region of such a point. In addition, the Hessian at this initial structure must have a negative eigenvalue, and the corresponding eigevector must be a suitable approximation for the direction connecting the two valleys. When one tries to optimize a saddle point within the intersection space, the initial geometry should also be a point of degeneracy (or near-degeneracy), since the intersection-space Hessian must be computed. Thus it is sometimes useful first to make a single point calculation and then a energy gap optimization between the two states along the gradient difference vector. Input and output files of the single point calculation:&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_log.ogg]]&lt;br /&gt;
&lt;br /&gt;
Input and output files of the energy gap optimization:&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_E_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_E_log.ogg]]&lt;br /&gt;
&lt;br /&gt;
Then it is also quite useful first to make a frequency calculation of this point:&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_E_freq_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_E_freq_log.ogg]]&lt;br /&gt;
&lt;br /&gt;
And then one can do with this checkpoint file the optimization of the first-order saddle point:&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_opt_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_opt_log.ogg]]&lt;br /&gt;
&lt;br /&gt;
The IOp(1/8) set to one specifies the maximum step size allowed during the optimization and the IOp(5/7) set to 250 specifies the maximum number of iterations. Because this time we want to get a first-order saddle point instead of a minimum also the IOp(1/5) is set  minus 2. To prove that this is a first-order saddle point a frequency calculation must be done, which is also necessary for the Computation of the Intersection Space Minimum Energy Path (section 5):&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_opt_freq_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_opt_freq_log.ogg]]&lt;br /&gt;
&lt;br /&gt;
The one negative frequency indicates that the point is really a first-order saddle point.&lt;br /&gt;
&lt;br /&gt;
=Computation of the Intersection Space Minimum Energy Path (MEP)=&lt;br /&gt;
&lt;br /&gt;
Currently no standard route exists to compute a minimum energy path limited to the intersection-space. Therefore, as discussed in  section 3, a non-standard route has to be specified in the input file in order to perform these calculations. Using &#039;&#039;testrt&#039;&#039; and carefully modifying the output obtained for a standard intrinsic reaction path computation, which is specified by the IRC keyword, one should obtain something similar to:&lt;br /&gt;
 &lt;br /&gt;
&#039;&#039;&#039;1/...,44=-3,.../1,15;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;2/.../2;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;3/.../1,2,3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;4/.../1,5;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;5/.../10;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;8/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;11/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;10/10=500005,.../3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;6/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;7/.../16;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;1/...,44=-3,../15(2);&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;2/.../2;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;99//99;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;2/.../2;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;3/.../1,2,3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;4/.../1,5;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;5/.../10;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;8/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;11/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;10/10=500005,.../3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;7/.../16;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;1/...,44=-3,.../15(-8);&#039;&#039;&#039;&amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;2/.../2;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;6/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;99/9=1/99;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
In order to evaluate the intersection-space minimum energy path, there are added three more options to the existing IOp(1/44):&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;1/44 = -1	Compute the intersection-space minimum energy path in mass-weighted Cartesian coordinates.&#039;&#039;&#039;&amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;1/44 = -2	Compute the intersection-space minimum energy path in internal coordinates.&#039;&#039;&#039;&amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;1/44 = -3	Compute the intersection-space minimum energy path in mass-weighted internal coordinates.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
For the following example the intersection-space minimum energy path (MEP) is computed in mass-weighted internal coordinates. For the computation of the MEP you need the transition point structure and the search vector from the optimization of the Saddle point from section 4. The transition point structure is the optimized Saddle point structure, while the search vector is the normal mode of the one negative frequency. But because in the output the normal mode is given in Cartesian coordinates, you first have to transform them in internal coordinates, by adding the normal mode to the optimized Saddle point structure, write out this structure in internal coordinates and calculate e.g with Exel the differences of the internal coordinates in comparison to the optimized Saddle point structure. These differences of the internal coordinates (search vector) have to be add to the transition point structure (in internal coordinates) in a 8F10.6 format in the input file:&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_IRC_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_IRC_log.tar.gz.ogg]]&lt;br /&gt;
&lt;br /&gt;
So the calculated MEP leads from the transition point (CI_trans) to the minimum point (CI_min) on the S0/S1 crossing seam.&lt;/div&gt;</summary>
		<author><name>Callan</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=File:Template.log&amp;diff=52716</id>
		<title>File:Template.log</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=File:Template.log&amp;diff=52716"/>
		<updated>2009-03-24T11:35:08Z</updated>

		<summary type="html">&lt;p&gt;Callan: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Callan</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-CHD&amp;diff=52715</id>
		<title>Resgrp:comp-photo-CHD</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-CHD&amp;diff=52715"/>
		<updated>2009-03-24T11:34:53Z</updated>

		<summary type="html">&lt;p&gt;Callan: /* Viewing the normal modes and frequencies of the energy difference; the modes of the seam; and the modes of the bilinear coupling */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Overview=&lt;br /&gt;
In the following sections it will be described how one can calculate the conical intersection seam of CHD (cyclo-hexa-1,3-diene) respectively &#039;&#039;cZc&#039;&#039;-HT (CZc-hexa-1,3,5-triene) with the new algorithm. Therefore the &lt;br /&gt;
&lt;br /&gt;
#  Optimization of a minimum point on the S0/S1 crossing seam&lt;br /&gt;
#  Computation of Intersection-Space Frequencies&lt;br /&gt;
#  Optimization of a Saddle point on the S0/S1 CHD crossing seam&lt;br /&gt;
#  Computation of the Intersection Space Minimum Energy Path (MEP) &lt;br /&gt;
&lt;br /&gt;
will be demonstrated.&lt;br /&gt;
  &lt;br /&gt;
==Development version and Substitutions==&lt;br /&gt;
For the calculations you have to use the Gaussian Development version, for the use of the current stable version your jobscript must contain following lines:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;module load gaussian/devel-modules&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;module load gdvg01_08&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[[Media:example-jobscript.ogg]]&lt;br /&gt;
&lt;br /&gt;
Also the beginning of your Input-file (.com) has to contain the following lines:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;%subst l103 /home/gaussian-devel/gaussiandvg01_pgi_lindafix/gdv_fabrizio/l103&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;%subst l115 /home/gaussian-devel/gaussiandvg01_pgi_lindafix/gdv_fabrizio/l115&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;%subst l510 /home/gaussian-devel/gaussiandvg01_pgi_lindafix/gdv_fabrizio/l510&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;%subst l716 /home/gaussian-devel/gaussiandvg01_pgi_lindafix/gdv_fabrizio/l716&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;%subst l1003 /home/gaussian-devel/gaussiandvg01_pgi_lindafix/gdv_fabrizio/l1003&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[[Media:test_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
=Optimization of a minimum point on the S0/S1 crossing seam=&lt;br /&gt;
For the optimization of a minimum point with the new algorithm you can use a standard input file. When you want to optimize a conical intersection geometry between the &#039;&#039;q-th&#039;&#039; and the &#039;&#039;(q-1)-th&#039;&#039; electronic state with an active space of &#039;&#039;n&#039;&#039; electrons in &#039;&#039;m&#039;&#039; orbitals the input file must contain the following lines:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;#P CAS(m,n,nr = q)/[basis set]&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Opt = Conical&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;IOp(1/5=-1,10/10=500005)&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;[Input Title]&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;[Charge] [Spin Multiplicity]&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;[Geometry]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The IOp(1/5) set to minus one specifies that we are attempting to optimize a minimum conical intersection point along the crossing seam. The IOp(10/10) is set to 500005 in order to compute the average gradient, which is used in the new algorithm, by solving the SA-CPMCSCF equations. The following files are the input and output files for the optimization of the  2A1/1A1 conical intersection minimum of CHD:&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_min_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_min_log.ogg]]&lt;br /&gt;
&lt;br /&gt;
Here also the IOp(1/16) is set to 5 in order to set the maximum allowable magnitude of the the eigenvalues of the second derative matrix. In order to check if this point is a saddle point or a minimum point a frequency calculation is necessary, which is described in the next section.&lt;br /&gt;
&lt;br /&gt;
=Computation of Intersection-Space Frequencies=&lt;br /&gt;
For the calculation of the Intersection-Space Frequencies no keywords exist to run such calculation yet. Therefore, a non-standard root has to be composed. A non-standard root is a complete sequence of links with associated options specified in an input file and read in by Gaussian. It is important to note that the program executes each link in the specified order, therefore extreme caution has to be taken when composing a non-standard route. Thus, a non-standard route is generally created by modifying the sequence of links produced by the standard route most similar to the one desired. This is accomplished most easily with the &#039;&#039;testrt&#039;&#039; utility, for more information [https://www.ch.ic.ac.uk/wiki/index.php/Resgrp:comp-photo-calculations see here]. In computing intersection-space frequencies, &#039;&#039;testrt&#039;&#039; is used to produce the route for a standard state-average CASSCF frequency calculation: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;#P CAS(n,m,stateaveraged,nroot = q)/[basis set]&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Nosymm&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Freq&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The route obtained with &#039;&#039;testrt&#039;&#039;  gives the correct sequence of links in a SA-CASSCF frequency analysis with the corresponding default options. However, in an intersection-space frequency analysis one needs the Hessian of both the intersecting electronic states and the Hessian of the rotated optimized wavefunctions. Create the route using testrt and repeat the sequence of links 5, 8, 11, 10, 6, 7 another two times within the new route. Then add/edit the specific options as below. Thus, the non-standard route used for an intersection-space frequency analysis should have a form similar to:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;1/.../1,3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;2/.../2;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;3/.../1,2,3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;4/.../1,5;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;5/..,17=41000200,.../10;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;8/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;11/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;10/...,10=600007,.../3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;6/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;7/...,45=52/1,2,3,16;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;5/...,17=41000200,...,97=100/10;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;8/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;11/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;10/...,10=600007,...,97=100/3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;6/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;7/...,45=51/1,2,3,16;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;5/...,17=41000200,...,79=1/10;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;8/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;11/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;10/...,10=600007,...,79=1/3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;6/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;7/...,45=53/1,2,3,16;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;1/.../3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039; 99//99;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The following files are the input and output files for the frequency calculation of the optimized conical intersection minimum of CHD, computed in the previous section:&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_min_freq_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_min_freq_log.ogg]]&lt;br /&gt;
&lt;br /&gt;
With the IOp(1/29) and the IOp(4/5) set to one, the geometry and the initial guess is read from the checkpoint file, which you got from the optimization. The IOp(4/17) and IOp(4/18) are set to six, which specifies the number of  electrons and orbitals in the active space, one might need to add more keywords depending on the specific study and system.&lt;br /&gt;
&lt;br /&gt;
So how you can see in the output file there is no negative frequency, therefore the structure of section 2 should be a conical intersection minimum.&lt;br /&gt;
&lt;br /&gt;
==Viewing the normal modes and frequencies of the energy difference; the modes of the seam; and the modes of the bilinear coupling==&lt;br /&gt;
&lt;br /&gt;
The scripts dffx_modes_g01.sh, seam_modes_g01.sh and eta_modes_g01.sh can be used to create log files that gaussview can read to visualise the normal modes and frequencies of the energy difference, the modes of the seam and/or the modes of the bilinear coupling respectively.&lt;br /&gt;
&lt;br /&gt;
First, you need a directory (on your mac or on the cluster) that we will call /dir/.&lt;br /&gt;
In here, you put the the scripts (dffx_modes_g01.sh, seam_modes_g01.sh, eta_modes_g01.sh) and a file called template.log, and you create a subdirectory /dir/gaussian_output/ in which you put your log file (say it&#039;s called jobname.log).&lt;br /&gt;
Then you create a subdirectory /dir/data/.&lt;br /&gt;
Then you execute the script this way:&lt;br /&gt;
./dffx_modes_g01.sh jobname&lt;br /&gt;
and you will get a new file in data that is called jobname_DFFX.log (for energy difference frequencies) or jobname_GV.log (for seam modes) and that can be read by GaussView.&lt;br /&gt;
&lt;br /&gt;
N.B.: ./ might not be needed on the cluster (also this may depend on the type of shell), but it is on my Mac.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Now, there used to be a small printing error in Fabrizio&#039;s code that may not have been fixed.&lt;br /&gt;
It&#039;s about the mass-weighting of the branching-space vectors, gradient difference and derivative coupling (the last two modes, given with zero frequencies). The consequence is that the motion of H atoms is exaggerated when you visualise these last two vectors with Gaussview.&lt;br /&gt;
The other ones are fine.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
NB the convention for the energy difference is S0 - S1, so if you want the modes that reduce the energy difference, take those that have a large positive frequency (with respect to the energy difference).&lt;br /&gt;
&lt;br /&gt;
[[Media:Freq_scripts.zip]]&lt;br /&gt;
&lt;br /&gt;
[[Media:template.log]]&lt;br /&gt;
&lt;br /&gt;
=Optimization of a Saddle point on the S0/S1 CHD crossing seam=&lt;br /&gt;
&lt;br /&gt;
Generally, in order to optimize a saddle point structure, one must start from a geometry that is close enough to the quadratic region of such a point. In addition, the Hessian at this initial structure must have a negative eigenvalue, and the corresponding eigevector must be a suitable approximation for the direction connecting the two valleys. When one tries to optimize a saddle point within the intersection space, the initial geometry should also be a point of degeneracy (or near-degeneracy), since the intersection-space Hessian must be computed. Thus it is sometimes useful first to make a single point calculation and then a energy gap optimization between the two states along the gradient difference vector. Input and output files of the single point calculation:&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_log.ogg]]&lt;br /&gt;
&lt;br /&gt;
Input and output files of the energy gap optimization:&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_E_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_E_log.ogg]]&lt;br /&gt;
&lt;br /&gt;
Then it is also quite useful first to make a frequency calculation of this point:&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_E_freq_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_E_freq_log.ogg]]&lt;br /&gt;
&lt;br /&gt;
And then one can do with this checkpoint file the optimization of the first-order saddle point:&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_opt_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_opt_log.ogg]]&lt;br /&gt;
&lt;br /&gt;
The IOp(1/8) set to one specifies the maximum step size allowed during the optimization and the IOp(5/7) set to 250 specifies the maximum number of iterations. Because this time we want to get a first-order saddle point instead of a minimum also the IOp(1/5) is set  minus 2. To prove that this is a first-order saddle point a frequency calculation must be done, which is also necessary for the Computation of the Intersection Space Minimum Energy Path (section 5):&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_opt_freq_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_opt_freq_log.ogg]]&lt;br /&gt;
&lt;br /&gt;
The one negative frequency indicates that the point is really a first-order saddle point.&lt;br /&gt;
&lt;br /&gt;
=Computation of the Intersection Space Minimum Energy Path (MEP)=&lt;br /&gt;
&lt;br /&gt;
Currently no standard route exists to compute a minimum energy path limited to the intersection-space. Therefore, as discussed in  section 3, a non-standard route has to be specified in the input file in order to perform these calculations. Using &#039;&#039;testrt&#039;&#039; and carefully modifying the output obtained for a standard intrinsic reaction path computation, which is specified by the IRC keyword, one should obtain something similar to:&lt;br /&gt;
 &lt;br /&gt;
&#039;&#039;&#039;1/...,44=-3,.../1,15;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;2/.../2;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;3/.../1,2,3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;4/.../1,5;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;5/.../10;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;8/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;11/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;10/10=500005,.../3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;6/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;7/.../16;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;1/...,44=-3,../15(2);&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;2/.../2;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;99//99;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;2/.../2;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;3/.../1,2,3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;4/.../1,5;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;5/.../10;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;8/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;11/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;10/10=500005,.../3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;7/.../16;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;1/...,44=-3,.../15(-8);&#039;&#039;&#039;&amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;2/.../2;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;6/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;99/9=1/99;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
In order to evaluate the intersection-space minimum energy path, there are added three more options to the existing IOp(1/44):&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;1/44 = -1	Compute the intersection-space minimum energy path in mass-weighted Cartesian coordinates.&#039;&#039;&#039;&amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;1/44 = -2	Compute the intersection-space minimum energy path in internal coordinates.&#039;&#039;&#039;&amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;1/44 = -3	Compute the intersection-space minimum energy path in mass-weighted internal coordinates.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
For the following example the intersection-space minimum energy path (MEP) is computed in mass-weighted internal coordinates. For the computation of the MEP you need the transition point structure and the search vector from the optimization of the Saddle point from section 4. The transition point structure is the optimized Saddle point structure, while the search vector is the normal mode of the one negative frequency. But because in the output the normal mode is given in Cartesian coordinates, you first have to transform them in internal coordinates, by adding the normal mode to the optimized Saddle point structure, write out this structure in internal coordinates and calculate e.g with Exel the differences of the internal coordinates in comparison to the optimized Saddle point structure. These differences of the internal coordinates (search vector) have to be add to the transition point structure (in internal coordinates) in a 8F10.6 format in the input file:&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_IRC_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_IRC_log.tar.gz.ogg]]&lt;br /&gt;
&lt;br /&gt;
So the calculated MEP leads from the transition point (CI_trans) to the minimum point (CI_min) on the S0/S1 crossing seam.&lt;/div&gt;</summary>
		<author><name>Callan</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=File:Freq_scripts.zip&amp;diff=52714</id>
		<title>File:Freq scripts.zip</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=File:Freq_scripts.zip&amp;diff=52714"/>
		<updated>2009-03-24T11:34:01Z</updated>

		<summary type="html">&lt;p&gt;Callan: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Callan</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-CHD&amp;diff=52713</id>
		<title>Resgrp:comp-photo-CHD</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-CHD&amp;diff=52713"/>
		<updated>2009-03-24T11:33:46Z</updated>

		<summary type="html">&lt;p&gt;Callan: /* Viewing the normal modes and frequencies of the energy difference; the modes of the seam; and the modes of the bilinear coupling */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Overview=&lt;br /&gt;
In the following sections it will be described how one can calculate the conical intersection seam of CHD (cyclo-hexa-1,3-diene) respectively &#039;&#039;cZc&#039;&#039;-HT (CZc-hexa-1,3,5-triene) with the new algorithm. Therefore the &lt;br /&gt;
&lt;br /&gt;
#  Optimization of a minimum point on the S0/S1 crossing seam&lt;br /&gt;
#  Computation of Intersection-Space Frequencies&lt;br /&gt;
#  Optimization of a Saddle point on the S0/S1 CHD crossing seam&lt;br /&gt;
#  Computation of the Intersection Space Minimum Energy Path (MEP) &lt;br /&gt;
&lt;br /&gt;
will be demonstrated.&lt;br /&gt;
  &lt;br /&gt;
==Development version and Substitutions==&lt;br /&gt;
For the calculations you have to use the Gaussian Development version, for the use of the current stable version your jobscript must contain following lines:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;module load gaussian/devel-modules&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;module load gdvg01_08&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[[Media:example-jobscript.ogg]]&lt;br /&gt;
&lt;br /&gt;
Also the beginning of your Input-file (.com) has to contain the following lines:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;%subst l103 /home/gaussian-devel/gaussiandvg01_pgi_lindafix/gdv_fabrizio/l103&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;%subst l115 /home/gaussian-devel/gaussiandvg01_pgi_lindafix/gdv_fabrizio/l115&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;%subst l510 /home/gaussian-devel/gaussiandvg01_pgi_lindafix/gdv_fabrizio/l510&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;%subst l716 /home/gaussian-devel/gaussiandvg01_pgi_lindafix/gdv_fabrizio/l716&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;%subst l1003 /home/gaussian-devel/gaussiandvg01_pgi_lindafix/gdv_fabrizio/l1003&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[[Media:test_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
=Optimization of a minimum point on the S0/S1 crossing seam=&lt;br /&gt;
For the optimization of a minimum point with the new algorithm you can use a standard input file. When you want to optimize a conical intersection geometry between the &#039;&#039;q-th&#039;&#039; and the &#039;&#039;(q-1)-th&#039;&#039; electronic state with an active space of &#039;&#039;n&#039;&#039; electrons in &#039;&#039;m&#039;&#039; orbitals the input file must contain the following lines:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;#P CAS(m,n,nr = q)/[basis set]&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Opt = Conical&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;IOp(1/5=-1,10/10=500005)&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;[Input Title]&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;[Charge] [Spin Multiplicity]&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;[Geometry]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The IOp(1/5) set to minus one specifies that we are attempting to optimize a minimum conical intersection point along the crossing seam. The IOp(10/10) is set to 500005 in order to compute the average gradient, which is used in the new algorithm, by solving the SA-CPMCSCF equations. The following files are the input and output files for the optimization of the  2A1/1A1 conical intersection minimum of CHD:&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_min_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_min_log.ogg]]&lt;br /&gt;
&lt;br /&gt;
Here also the IOp(1/16) is set to 5 in order to set the maximum allowable magnitude of the the eigenvalues of the second derative matrix. In order to check if this point is a saddle point or a minimum point a frequency calculation is necessary, which is described in the next section.&lt;br /&gt;
&lt;br /&gt;
=Computation of Intersection-Space Frequencies=&lt;br /&gt;
For the calculation of the Intersection-Space Frequencies no keywords exist to run such calculation yet. Therefore, a non-standard root has to be composed. A non-standard root is a complete sequence of links with associated options specified in an input file and read in by Gaussian. It is important to note that the program executes each link in the specified order, therefore extreme caution has to be taken when composing a non-standard route. Thus, a non-standard route is generally created by modifying the sequence of links produced by the standard route most similar to the one desired. This is accomplished most easily with the &#039;&#039;testrt&#039;&#039; utility, for more information [https://www.ch.ic.ac.uk/wiki/index.php/Resgrp:comp-photo-calculations see here]. In computing intersection-space frequencies, &#039;&#039;testrt&#039;&#039; is used to produce the route for a standard state-average CASSCF frequency calculation: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;#P CAS(n,m,stateaveraged,nroot = q)/[basis set]&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Nosymm&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Freq&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The route obtained with &#039;&#039;testrt&#039;&#039;  gives the correct sequence of links in a SA-CASSCF frequency analysis with the corresponding default options. However, in an intersection-space frequency analysis one needs the Hessian of both the intersecting electronic states and the Hessian of the rotated optimized wavefunctions. Create the route using testrt and repeat the sequence of links 5, 8, 11, 10, 6, 7 another two times within the new route. Then add/edit the specific options as below. Thus, the non-standard route used for an intersection-space frequency analysis should have a form similar to:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;1/.../1,3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;2/.../2;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;3/.../1,2,3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;4/.../1,5;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;5/..,17=41000200,.../10;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;8/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;11/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;10/...,10=600007,.../3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;6/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;7/...,45=52/1,2,3,16;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;5/...,17=41000200,...,97=100/10;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;8/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;11/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;10/...,10=600007,...,97=100/3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;6/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;7/...,45=51/1,2,3,16;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;5/...,17=41000200,...,79=1/10;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;8/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;11/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;10/...,10=600007,...,79=1/3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;6/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;7/...,45=53/1,2,3,16;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;1/.../3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039; 99//99;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The following files are the input and output files for the frequency calculation of the optimized conical intersection minimum of CHD, computed in the previous section:&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_min_freq_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_min_freq_log.ogg]]&lt;br /&gt;
&lt;br /&gt;
With the IOp(1/29) and the IOp(4/5) set to one, the geometry and the initial guess is read from the checkpoint file, which you got from the optimization. The IOp(4/17) and IOp(4/18) are set to six, which specifies the number of  electrons and orbitals in the active space, one might need to add more keywords depending on the specific study and system.&lt;br /&gt;
&lt;br /&gt;
So how you can see in the output file there is no negative frequency, therefore the structure of section 2 should be a conical intersection minimum.&lt;br /&gt;
&lt;br /&gt;
==Viewing the normal modes and frequencies of the energy difference; the modes of the seam; and the modes of the bilinear coupling==&lt;br /&gt;
&lt;br /&gt;
The scripts dffx_modes_g01.sh, seam_modes_g01.sh and eta_modes_g01.sh can be used to create log files that gaussview can read to visualise the normal modes and frequencies of the energy difference, the modes of the seam and/or the modes of the bilinear coupling respectively.&lt;br /&gt;
&lt;br /&gt;
First, you need a directory (on your mac or on the cluster) that we will call /dir/.&lt;br /&gt;
In here, you put the the scripts (dffx_modes_g01.sh, seam_modes_g01.sh, eta_modes_g01.sh) and a file called template.log, and you create a subdirectory /dir/gaussian_output/ in which you put your log file (say it&#039;s called jobname.log).&lt;br /&gt;
Then you create a subdirectory /dir/data/.&lt;br /&gt;
Then you execute the script this way:&lt;br /&gt;
./dffx_modes_g01.sh jobname&lt;br /&gt;
and you will get a new file in data that is called jobname_DFFX.log (for energy difference frequencies) or jobname_GV.log (for seam modes) and that can be read by GaussView.&lt;br /&gt;
&lt;br /&gt;
N.B.: ./ might not be needed on the cluster (also this may depend on the type of shell), but it is on my Mac.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Now, there used to be a small printing error in Fabrizio&#039;s code that may not have been fixed.&lt;br /&gt;
It&#039;s about the mass-weighting of the branching-space vectors, gradient difference and derivative coupling (the last two modes, given with zero frequencies). The consequence is that the motion of H atoms is exaggerated when you visualise these last two vectors with Gaussview.&lt;br /&gt;
The other ones are fine.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
NB the convention for the energy difference is S0 - S1, so if you want the modes that reduce the energy difference, take those that have a large positive frequency (with respect to the energy difference).&lt;br /&gt;
[[Media:Freq_scripts.zip]]&lt;br /&gt;
&lt;br /&gt;
=Optimization of a Saddle point on the S0/S1 CHD crossing seam=&lt;br /&gt;
&lt;br /&gt;
Generally, in order to optimize a saddle point structure, one must start from a geometry that is close enough to the quadratic region of such a point. In addition, the Hessian at this initial structure must have a negative eigenvalue, and the corresponding eigevector must be a suitable approximation for the direction connecting the two valleys. When one tries to optimize a saddle point within the intersection space, the initial geometry should also be a point of degeneracy (or near-degeneracy), since the intersection-space Hessian must be computed. Thus it is sometimes useful first to make a single point calculation and then a energy gap optimization between the two states along the gradient difference vector. Input and output files of the single point calculation:&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_log.ogg]]&lt;br /&gt;
&lt;br /&gt;
Input and output files of the energy gap optimization:&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_E_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_E_log.ogg]]&lt;br /&gt;
&lt;br /&gt;
Then it is also quite useful first to make a frequency calculation of this point:&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_E_freq_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_E_freq_log.ogg]]&lt;br /&gt;
&lt;br /&gt;
And then one can do with this checkpoint file the optimization of the first-order saddle point:&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_opt_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_opt_log.ogg]]&lt;br /&gt;
&lt;br /&gt;
The IOp(1/8) set to one specifies the maximum step size allowed during the optimization and the IOp(5/7) set to 250 specifies the maximum number of iterations. Because this time we want to get a first-order saddle point instead of a minimum also the IOp(1/5) is set  minus 2. To prove that this is a first-order saddle point a frequency calculation must be done, which is also necessary for the Computation of the Intersection Space Minimum Energy Path (section 5):&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_opt_freq_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_opt_freq_log.ogg]]&lt;br /&gt;
&lt;br /&gt;
The one negative frequency indicates that the point is really a first-order saddle point.&lt;br /&gt;
&lt;br /&gt;
=Computation of the Intersection Space Minimum Energy Path (MEP)=&lt;br /&gt;
&lt;br /&gt;
Currently no standard route exists to compute a minimum energy path limited to the intersection-space. Therefore, as discussed in  section 3, a non-standard route has to be specified in the input file in order to perform these calculations. Using &#039;&#039;testrt&#039;&#039; and carefully modifying the output obtained for a standard intrinsic reaction path computation, which is specified by the IRC keyword, one should obtain something similar to:&lt;br /&gt;
 &lt;br /&gt;
&#039;&#039;&#039;1/...,44=-3,.../1,15;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;2/.../2;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;3/.../1,2,3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;4/.../1,5;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;5/.../10;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;8/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;11/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;10/10=500005,.../3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;6/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;7/.../16;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;1/...,44=-3,../15(2);&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;2/.../2;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;99//99;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;2/.../2;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;3/.../1,2,3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;4/.../1,5;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;5/.../10;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;8/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;11/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;10/10=500005,.../3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;7/.../16;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;1/...,44=-3,.../15(-8);&#039;&#039;&#039;&amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;2/.../2;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;6/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;99/9=1/99;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
In order to evaluate the intersection-space minimum energy path, there are added three more options to the existing IOp(1/44):&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;1/44 = -1	Compute the intersection-space minimum energy path in mass-weighted Cartesian coordinates.&#039;&#039;&#039;&amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;1/44 = -2	Compute the intersection-space minimum energy path in internal coordinates.&#039;&#039;&#039;&amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;1/44 = -3	Compute the intersection-space minimum energy path in mass-weighted internal coordinates.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
For the following example the intersection-space minimum energy path (MEP) is computed in mass-weighted internal coordinates. For the computation of the MEP you need the transition point structure and the search vector from the optimization of the Saddle point from section 4. The transition point structure is the optimized Saddle point structure, while the search vector is the normal mode of the one negative frequency. But because in the output the normal mode is given in Cartesian coordinates, you first have to transform them in internal coordinates, by adding the normal mode to the optimized Saddle point structure, write out this structure in internal coordinates and calculate e.g with Exel the differences of the internal coordinates in comparison to the optimized Saddle point structure. These differences of the internal coordinates (search vector) have to be add to the transition point structure (in internal coordinates) in a 8F10.6 format in the input file:&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_IRC_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_IRC_log.tar.gz.ogg]]&lt;br /&gt;
&lt;br /&gt;
So the calculated MEP leads from the transition point (CI_trans) to the minimum point (CI_min) on the S0/S1 crossing seam.&lt;/div&gt;</summary>
		<author><name>Callan</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-CHD&amp;diff=52712</id>
		<title>Resgrp:comp-photo-CHD</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-CHD&amp;diff=52712"/>
		<updated>2009-03-24T11:31:37Z</updated>

		<summary type="html">&lt;p&gt;Callan: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Overview=&lt;br /&gt;
In the following sections it will be described how one can calculate the conical intersection seam of CHD (cyclo-hexa-1,3-diene) respectively &#039;&#039;cZc&#039;&#039;-HT (CZc-hexa-1,3,5-triene) with the new algorithm. Therefore the &lt;br /&gt;
&lt;br /&gt;
#  Optimization of a minimum point on the S0/S1 crossing seam&lt;br /&gt;
#  Computation of Intersection-Space Frequencies&lt;br /&gt;
#  Optimization of a Saddle point on the S0/S1 CHD crossing seam&lt;br /&gt;
#  Computation of the Intersection Space Minimum Energy Path (MEP) &lt;br /&gt;
&lt;br /&gt;
will be demonstrated.&lt;br /&gt;
  &lt;br /&gt;
==Development version and Substitutions==&lt;br /&gt;
For the calculations you have to use the Gaussian Development version, for the use of the current stable version your jobscript must contain following lines:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;module load gaussian/devel-modules&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;module load gdvg01_08&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[[Media:example-jobscript.ogg]]&lt;br /&gt;
&lt;br /&gt;
Also the beginning of your Input-file (.com) has to contain the following lines:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;%subst l103 /home/gaussian-devel/gaussiandvg01_pgi_lindafix/gdv_fabrizio/l103&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;%subst l115 /home/gaussian-devel/gaussiandvg01_pgi_lindafix/gdv_fabrizio/l115&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;%subst l510 /home/gaussian-devel/gaussiandvg01_pgi_lindafix/gdv_fabrizio/l510&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;%subst l716 /home/gaussian-devel/gaussiandvg01_pgi_lindafix/gdv_fabrizio/l716&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;%subst l1003 /home/gaussian-devel/gaussiandvg01_pgi_lindafix/gdv_fabrizio/l1003&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[[Media:test_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
=Optimization of a minimum point on the S0/S1 crossing seam=&lt;br /&gt;
For the optimization of a minimum point with the new algorithm you can use a standard input file. When you want to optimize a conical intersection geometry between the &#039;&#039;q-th&#039;&#039; and the &#039;&#039;(q-1)-th&#039;&#039; electronic state with an active space of &#039;&#039;n&#039;&#039; electrons in &#039;&#039;m&#039;&#039; orbitals the input file must contain the following lines:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;#P CAS(m,n,nr = q)/[basis set]&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Opt = Conical&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;IOp(1/5=-1,10/10=500005)&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;[Input Title]&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;[Charge] [Spin Multiplicity]&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;[Geometry]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The IOp(1/5) set to minus one specifies that we are attempting to optimize a minimum conical intersection point along the crossing seam. The IOp(10/10) is set to 500005 in order to compute the average gradient, which is used in the new algorithm, by solving the SA-CPMCSCF equations. The following files are the input and output files for the optimization of the  2A1/1A1 conical intersection minimum of CHD:&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_min_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_min_log.ogg]]&lt;br /&gt;
&lt;br /&gt;
Here also the IOp(1/16) is set to 5 in order to set the maximum allowable magnitude of the the eigenvalues of the second derative matrix. In order to check if this point is a saddle point or a minimum point a frequency calculation is necessary, which is described in the next section.&lt;br /&gt;
&lt;br /&gt;
=Computation of Intersection-Space Frequencies=&lt;br /&gt;
For the calculation of the Intersection-Space Frequencies no keywords exist to run such calculation yet. Therefore, a non-standard root has to be composed. A non-standard root is a complete sequence of links with associated options specified in an input file and read in by Gaussian. It is important to note that the program executes each link in the specified order, therefore extreme caution has to be taken when composing a non-standard route. Thus, a non-standard route is generally created by modifying the sequence of links produced by the standard route most similar to the one desired. This is accomplished most easily with the &#039;&#039;testrt&#039;&#039; utility, for more information [https://www.ch.ic.ac.uk/wiki/index.php/Resgrp:comp-photo-calculations see here]. In computing intersection-space frequencies, &#039;&#039;testrt&#039;&#039; is used to produce the route for a standard state-average CASSCF frequency calculation: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;#P CAS(n,m,stateaveraged,nroot = q)/[basis set]&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Nosymm&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Freq&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The route obtained with &#039;&#039;testrt&#039;&#039;  gives the correct sequence of links in a SA-CASSCF frequency analysis with the corresponding default options. However, in an intersection-space frequency analysis one needs the Hessian of both the intersecting electronic states and the Hessian of the rotated optimized wavefunctions. Create the route using testrt and repeat the sequence of links 5, 8, 11, 10, 6, 7 another two times within the new route. Then add/edit the specific options as below. Thus, the non-standard route used for an intersection-space frequency analysis should have a form similar to:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;1/.../1,3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;2/.../2;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;3/.../1,2,3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;4/.../1,5;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;5/..,17=41000200,.../10;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;8/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;11/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;10/...,10=600007,.../3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;6/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;7/...,45=52/1,2,3,16;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;5/...,17=41000200,...,97=100/10;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;8/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;11/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;10/...,10=600007,...,97=100/3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;6/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;7/...,45=51/1,2,3,16;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;5/...,17=41000200,...,79=1/10;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;8/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;11/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;10/...,10=600007,...,79=1/3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;6/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;7/...,45=53/1,2,3,16;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;1/.../3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039; 99//99;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The following files are the input and output files for the frequency calculation of the optimized conical intersection minimum of CHD, computed in the previous section:&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_min_freq_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_min_freq_log.ogg]]&lt;br /&gt;
&lt;br /&gt;
With the IOp(1/29) and the IOp(4/5) set to one, the geometry and the initial guess is read from the checkpoint file, which you got from the optimization. The IOp(4/17) and IOp(4/18) are set to six, which specifies the number of  electrons and orbitals in the active space, one might need to add more keywords depending on the specific study and system.&lt;br /&gt;
&lt;br /&gt;
So how you can see in the output file there is no negative frequency, therefore the structure of section 2 should be a conical intersection minimum.&lt;br /&gt;
&lt;br /&gt;
==Viewing the normal modes and frequencies of the energy difference; the modes of the seam; and the modes of the bilinear coupling==&lt;br /&gt;
&lt;br /&gt;
The scripts dffx_modes_g01.sh, seam_modes_g01.sh and eta_modes_g01.sh can be used to create log files that gaussview can read to visualise the normal modes and frequencies of the energy difference, the modes of the seam and/or the modes of the bilinear coupling respectively.&lt;br /&gt;
&lt;br /&gt;
First, you need a directory (on your mac or on the cluster) that we will call /dir/.&lt;br /&gt;
In here, you put the the scripts (dffx_modes_g01.sh, seam_modes_g01.sh, eta_modes_g01.sh) and a file called template.log, and you create a subdirectory /dir/gaussian_output/ in which you put your log file (say it&#039;s called jobname.log).&lt;br /&gt;
Then you create a subdirectory /dir/data/.&lt;br /&gt;
Then you execute the script this way:&lt;br /&gt;
./dffx_modes_g01.sh jobname&lt;br /&gt;
and you will get a new file in data that is called jobname_DFFX.log (for energy difference frequencies) or jobname_GV.log (for seam modes) and that can be read by GaussView.&lt;br /&gt;
&lt;br /&gt;
N.B.: ./ might not be needed on the cluster (also this may depend on the type of shell), but it is on my Mac.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Now, there used to be a small printing error in Fabrizio&#039;s code that may not have been fixed.&lt;br /&gt;
It&#039;s about the mass-weighting of the branching-space vectors, gradient difference and derivative coupling (the last two modes, given with zero frequencies). The consequence is that the motion of H atoms is exaggerated when you visualise these last two vectors with Gaussview.&lt;br /&gt;
The other ones are fine.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
NB the convention for the energy difference is S0 - S1, so if you want the modes that reduce the energy difference, take those that have a large positive frequency (with respect to the energy difference).&lt;br /&gt;
&lt;br /&gt;
=Optimization of a Saddle point on the S0/S1 CHD crossing seam=&lt;br /&gt;
&lt;br /&gt;
Generally, in order to optimize a saddle point structure, one must start from a geometry that is close enough to the quadratic region of such a point. In addition, the Hessian at this initial structure must have a negative eigenvalue, and the corresponding eigevector must be a suitable approximation for the direction connecting the two valleys. When one tries to optimize a saddle point within the intersection space, the initial geometry should also be a point of degeneracy (or near-degeneracy), since the intersection-space Hessian must be computed. Thus it is sometimes useful first to make a single point calculation and then a energy gap optimization between the two states along the gradient difference vector. Input and output files of the single point calculation:&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_log.ogg]]&lt;br /&gt;
&lt;br /&gt;
Input and output files of the energy gap optimization:&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_E_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_E_log.ogg]]&lt;br /&gt;
&lt;br /&gt;
Then it is also quite useful first to make a frequency calculation of this point:&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_E_freq_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_E_freq_log.ogg]]&lt;br /&gt;
&lt;br /&gt;
And then one can do with this checkpoint file the optimization of the first-order saddle point:&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_opt_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_opt_log.ogg]]&lt;br /&gt;
&lt;br /&gt;
The IOp(1/8) set to one specifies the maximum step size allowed during the optimization and the IOp(5/7) set to 250 specifies the maximum number of iterations. Because this time we want to get a first-order saddle point instead of a minimum also the IOp(1/5) is set  minus 2. To prove that this is a first-order saddle point a frequency calculation must be done, which is also necessary for the Computation of the Intersection Space Minimum Energy Path (section 5):&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_opt_freq_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_opt_freq_log.ogg]]&lt;br /&gt;
&lt;br /&gt;
The one negative frequency indicates that the point is really a first-order saddle point.&lt;br /&gt;
&lt;br /&gt;
=Computation of the Intersection Space Minimum Energy Path (MEP)=&lt;br /&gt;
&lt;br /&gt;
Currently no standard route exists to compute a minimum energy path limited to the intersection-space. Therefore, as discussed in  section 3, a non-standard route has to be specified in the input file in order to perform these calculations. Using &#039;&#039;testrt&#039;&#039; and carefully modifying the output obtained for a standard intrinsic reaction path computation, which is specified by the IRC keyword, one should obtain something similar to:&lt;br /&gt;
 &lt;br /&gt;
&#039;&#039;&#039;1/...,44=-3,.../1,15;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;2/.../2;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;3/.../1,2,3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;4/.../1,5;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;5/.../10;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;8/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;11/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;10/10=500005,.../3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;6/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;7/.../16;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;1/...,44=-3,../15(2);&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;2/.../2;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;99//99;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;2/.../2;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;3/.../1,2,3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;4/.../1,5;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;5/.../10;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;8/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;11/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;10/10=500005,.../3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;7/.../16;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;1/...,44=-3,.../15(-8);&#039;&#039;&#039;&amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;2/.../2;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;6/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;99/9=1/99;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
In order to evaluate the intersection-space minimum energy path, there are added three more options to the existing IOp(1/44):&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;1/44 = -1	Compute the intersection-space minimum energy path in mass-weighted Cartesian coordinates.&#039;&#039;&#039;&amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;1/44 = -2	Compute the intersection-space minimum energy path in internal coordinates.&#039;&#039;&#039;&amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;1/44 = -3	Compute the intersection-space minimum energy path in mass-weighted internal coordinates.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
For the following example the intersection-space minimum energy path (MEP) is computed in mass-weighted internal coordinates. For the computation of the MEP you need the transition point structure and the search vector from the optimization of the Saddle point from section 4. The transition point structure is the optimized Saddle point structure, while the search vector is the normal mode of the one negative frequency. But because in the output the normal mode is given in Cartesian coordinates, you first have to transform them in internal coordinates, by adding the normal mode to the optimized Saddle point structure, write out this structure in internal coordinates and calculate e.g with Exel the differences of the internal coordinates in comparison to the optimized Saddle point structure. These differences of the internal coordinates (search vector) have to be add to the transition point structure (in internal coordinates) in a 8F10.6 format in the input file:&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_IRC_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_IRC_log.tar.gz.ogg]]&lt;br /&gt;
&lt;br /&gt;
So the calculated MEP leads from the transition point (CI_trans) to the minimum point (CI_min) on the S0/S1 crossing seam.&lt;/div&gt;</summary>
		<author><name>Callan</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-CHD&amp;diff=52711</id>
		<title>Resgrp:comp-photo-CHD</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-CHD&amp;diff=52711"/>
		<updated>2009-03-24T11:30:33Z</updated>

		<summary type="html">&lt;p&gt;Callan: /* Computation of the Intersection Space Minimum Energy Path (MEP) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Overview=&lt;br /&gt;
In the following sections it will be described how one can calculate the conical intersection seam of CHD (cyclo-hexa-1,3-diene) respectively &#039;&#039;cZc&#039;&#039;-HT (CZc-hexa-1,3,5-triene) with the new algorithm. Therefore the &lt;br /&gt;
&lt;br /&gt;
#  Optimization of a minimum point on the S0/S1 crossing seam&lt;br /&gt;
#  Computation of Intersection-Space Frequencies&lt;br /&gt;
#  Optimization of a Saddle point on the S0/S1 CHD crossing seam&lt;br /&gt;
#  Computation of the Intersection Space Minimum Energy Path (MEP) &lt;br /&gt;
&lt;br /&gt;
will be demonstrated.&lt;br /&gt;
  &lt;br /&gt;
==Development version and Substitutions==&lt;br /&gt;
For the calculations you have to use the Gaussian Development version, for the use of the current stable version your jobscript must contain following lines:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;module load gaussian/devel-modules&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;module load gdvg01_08&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[[Media:example-jobscript.ogg]]&lt;br /&gt;
&lt;br /&gt;
Also the beginning of your Input-file (.com) has to contain the following lines:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;%subst l103 /home/gaussian-devel/gaussiandvg01_pgi_lindafix/gdv_fabrizio/l103&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;%subst l115 /home/gaussian-devel/gaussiandvg01_pgi_lindafix/gdv_fabrizio/l115&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;%subst l510 /home/gaussian-devel/gaussiandvg01_pgi_lindafix/gdv_fabrizio/l510&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;%subst l716 /home/gaussian-devel/gaussiandvg01_pgi_lindafix/gdv_fabrizio/l716&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;%subst l1003 /home/gaussian-devel/gaussiandvg01_pgi_lindafix/gdv_fabrizio/l1003&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[[Media:test_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
=Optimization of a minimum point on the S0/S1 crossing seam=&lt;br /&gt;
For the optimization of a minimum point with the new algorithm you can use a standard input file. When you want to optimize a conical intersection geometry between the &#039;&#039;q-th&#039;&#039; and the &#039;&#039;(q-1)-th&#039;&#039; electronic state with an active space of &#039;&#039;n&#039;&#039; electrons in &#039;&#039;m&#039;&#039; orbitals the input file must contain the following lines:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;#P CAS(m,n,nr = q)/[basis set]&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Opt = Conical&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;IOp(1/5=-1,10/10=500005)&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;[Input Title]&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;[Charge] [Spin Multiplicity]&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;[Geometry]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The IOp(1/5) set to minus one specifies that we are attempting to optimize a minimum conical intersection point along the crossing seam. The IOp(10/10) is set to 500005 in order to compute the average gradient, which is used in the new algorithm, by solving the SA-CPMCSCF equations. The following files are the input and output files for the optimization of the  2A1/1A1 conical intersection minimum of CHD:&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_min_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_min_log.ogg]]&lt;br /&gt;
&lt;br /&gt;
Here also the IOp(1/16) is set to 5 in order to set the maximum allowable magnitude of the the eigenvalues of the second derative matrix. In order to check if this point is a saddle point or a minimum point a frequency calculation is necessary, which is described in the next section.&lt;br /&gt;
&lt;br /&gt;
=Computation of Intersection-Space Frequencies=&lt;br /&gt;
For the calculation of the Intersection-Space Frequencies no keywords exist to run such calculation yet. Therefore, a non-standard root has to be composed. A non-standard root is a complete sequence of links with associated options specified in an input file and read in by Gaussian. It is important to note that the program executes each link in the specified order, therefore extreme caution has to be taken when composing a non-standard route. Thus, a non-standard route is generally created by modifying the sequence of links produced by the standard route most similar to the one desired. This is accomplished most easily with the &#039;&#039;testrt&#039;&#039; utility, for more information [https://www.ch.ic.ac.uk/wiki/index.php/Resgrp:comp-photo-calculations see here]. In computing intersection-space frequencies, &#039;&#039;testrt&#039;&#039; is used to produce the route for a standard state-average CASSCF frequency calculation: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;#P CAS(n,m,stateaveraged,nroot = q)/[basis set]&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Nosymm&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Freq&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The route obtained with &#039;&#039;testrt&#039;&#039;  gives the correct sequence of links in a SA-CASSCF frequency analysis with the corresponding default options. However, in an intersection-space frequency analysis one needs the Hessian of both the intersecting electronic states and the Hessian of the rotated optimized wavefunctions. Create the route using testrt and repeat the sequence of links 5, 8, 11, 10, 6, 7 another two times within the new route. Then add/edit the specific options as below. Thus, the non-standard route used for an intersection-space frequency analysis should have a form similar to:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;1/.../1,3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;2/.../2;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;3/.../1,2,3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;4/.../1,5;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;5/..,17=41000200,.../10;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;8/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;11/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;10/...,10=600007,.../3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;6/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;7/...,45=52/1,2,3,16;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;5/...,17=41000200,...,97=100/10;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;8/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;11/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;10/...,10=600007,...,97=100/3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;6/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;7/...,45=51/1,2,3,16;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;5/...,17=41000200,...,79=1/10;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;8/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;11/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;10/...,10=600007,...,79=1/3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;6/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;7/...,45=53/1,2,3,16;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;1/.../3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039; 99//99;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The following files are the input and output files for the frequency calculation of the optimized conical intersection minimum of CHD, computed in the previous section:&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_min_freq_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_min_freq_log.ogg]]&lt;br /&gt;
&lt;br /&gt;
With the IOp(1/29) and the IOp(4/5) set to one, the geometry and the initial guess is read from the checkpoint file, which you got from the optimization. The IOp(4/17) and IOp(4/18) are set to six, which specifies the number of  electrons and orbitals in the active space, one might need to add more keywords depending on the specific study and system.&lt;br /&gt;
&lt;br /&gt;
So how you can see in the output file there is no negative frequency, therefore the structure of section 2 should be a conical intersection minimum.&lt;br /&gt;
&lt;br /&gt;
=Optimization of a Saddle point on the S0/S1 CHD crossing seam=&lt;br /&gt;
&lt;br /&gt;
Generally, in order to optimize a saddle point structure, one must start from a geometry that is close enough to the quadratic region of such a point. In addition, the Hessian at this initial structure must have a negative eigenvalue, and the corresponding eigevector must be a suitable approximation for the direction connecting the two valleys. When one tries to optimize a saddle point within the intersection space, the initial geometry should also be a point of degeneracy (or near-degeneracy), since the intersection-space Hessian must be computed. Thus it is sometimes useful first to make a single point calculation and then a energy gap optimization between the two states along the gradient difference vector. Input and output files of the single point calculation:&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_log.ogg]]&lt;br /&gt;
&lt;br /&gt;
Input and output files of the energy gap optimization:&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_E_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_E_log.ogg]]&lt;br /&gt;
&lt;br /&gt;
Then it is also quite useful first to make a frequency calculation of this point:&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_E_freq_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_E_freq_log.ogg]]&lt;br /&gt;
&lt;br /&gt;
And then one can do with this checkpoint file the optimization of the first-order saddle point:&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_opt_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_opt_log.ogg]]&lt;br /&gt;
&lt;br /&gt;
The IOp(1/8) set to one specifies the maximum step size allowed during the optimization and the IOp(5/7) set to 250 specifies the maximum number of iterations. Because this time we want to get a first-order saddle point instead of a minimum also the IOp(1/5) is set  minus 2. To prove that this is a first-order saddle point a frequency calculation must be done, which is also necessary for the Computation of the Intersection Space Minimum Energy Path (section 5):&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_opt_freq_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_opt_freq_log.ogg]]&lt;br /&gt;
&lt;br /&gt;
The one negative frequency indicates that the point is really a first-order saddle point.&lt;br /&gt;
&lt;br /&gt;
=Computation of the Intersection Space Minimum Energy Path (MEP)=&lt;br /&gt;
&lt;br /&gt;
Currently no standard route exists to compute a minimum energy path limited to the intersection-space. Therefore, as discussed in  section 3, a non-standard route has to be specified in the input file in order to perform these calculations. Using &#039;&#039;testrt&#039;&#039; and carefully modifying the output obtained for a standard intrinsic reaction path computation, which is specified by the IRC keyword, one should obtain something similar to:&lt;br /&gt;
 &lt;br /&gt;
&#039;&#039;&#039;1/...,44=-3,.../1,15;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;2/.../2;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;3/.../1,2,3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;4/.../1,5;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;5/.../10;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;8/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;11/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;10/10=500005,.../3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;6/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;7/.../16;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;1/...,44=-3,../15(2);&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;2/.../2;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;99//99;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;2/.../2;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;3/.../1,2,3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;4/.../1,5;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;5/.../10;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;8/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;11/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;10/10=500005,.../3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;7/.../16;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;1/...,44=-3,.../15(-8);&#039;&#039;&#039;&amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;2/.../2;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;6/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;99/9=1/99;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
In order to evaluate the intersection-space minimum energy path, there are added three more options to the existing IOp(1/44):&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;1/44 = -1	Compute the intersection-space minimum energy path in mass-weighted Cartesian coordinates.&#039;&#039;&#039;&amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;1/44 = -2	Compute the intersection-space minimum energy path in internal coordinates.&#039;&#039;&#039;&amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;1/44 = -3	Compute the intersection-space minimum energy path in mass-weighted internal coordinates.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
For the following example the intersection-space minimum energy path (MEP) is computed in mass-weighted internal coordinates. For the computation of the MEP you need the transition point structure and the search vector from the optimization of the Saddle point from section 4. The transition point structure is the optimized Saddle point structure, while the search vector is the normal mode of the one negative frequency. But because in the output the normal mode is given in Cartesian coordinates, you first have to transform them in internal coordinates, by adding the normal mode to the optimized Saddle point structure, write out this structure in internal coordinates and calculate e.g with Exel the differences of the internal coordinates in comparison to the optimized Saddle point structure. These differences of the internal coordinates (search vector) have to be add to the transition point structure (in internal coordinates) in a 8F10.6 format in the input file:&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_IRC_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_IRC_log.tar.gz.ogg]]&lt;br /&gt;
&lt;br /&gt;
So the calculated MEP leads from the transition point (CI_trans) to the minimum point (CI_min) on the S0/S1 crossing seam.&lt;br /&gt;
&lt;br /&gt;
=Viewing the normal modes and frequencies of the energy difference; the modes of the seam; and the modes of the bilinear coupling=&lt;br /&gt;
&lt;br /&gt;
The scripts dffx_modes_g01.sh, seam_modes_g01.sh and eta_modes_g01.sh can be used to create log files that gaussview can read to visualise the normal modes and frequencies of the energy difference, the modes of the seam and/or the modes of the bilinear coupling respectively.&lt;br /&gt;
&lt;br /&gt;
First, you need a directory (on your mac or on the cluster) that we will call /dir/.&lt;br /&gt;
In here, you put the the scripts (dffx_modes_g01.sh, seam_modes_g01.sh, eta_modes_g01.sh) and a file called template.log, and you create a subdirectory /dir/gaussian_output/ in which you put your log file (say it&#039;s called jobname.log).&lt;br /&gt;
Then you create a subdirectory /dir/data/.&lt;br /&gt;
Then you execute the script this way:&lt;br /&gt;
./dffx_modes_g01.sh jobname&lt;br /&gt;
and you will get a new file in data that is called jobname_DFFX.log (for energy difference frequencies) or jobname_GV.log (for seam modes) and that can be read by GaussView.&lt;br /&gt;
&lt;br /&gt;
N.B.: ./ might not be needed on the cluster (also this may depend on the type of shell), but it is on my Mac.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Now, there used to be a small printing error in Fabrizio&#039;s code that may not have been fixed.&lt;br /&gt;
It&#039;s about the mass-weighting of the branching-space vectors, gradient difference and derivative coupling (the last two modes, given with zero frequencies). The consequence is that the motion of H atoms is exaggerated when you visualise these last two vectors with Gaussview.&lt;br /&gt;
The other ones are fine.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
NB the convention for the energy difference is S0 - S1, so if you want the modes that reduce the energy difference, take those that have a large positive frequency (with respect to the energy difference).&lt;/div&gt;</summary>
		<author><name>Callan</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-CHD&amp;diff=52710</id>
		<title>Resgrp:comp-photo-CHD</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-CHD&amp;diff=52710"/>
		<updated>2009-03-24T11:29:26Z</updated>

		<summary type="html">&lt;p&gt;Callan: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Overview=&lt;br /&gt;
In the following sections it will be described how one can calculate the conical intersection seam of CHD (cyclo-hexa-1,3-diene) respectively &#039;&#039;cZc&#039;&#039;-HT (CZc-hexa-1,3,5-triene) with the new algorithm. Therefore the &lt;br /&gt;
&lt;br /&gt;
#  Optimization of a minimum point on the S0/S1 crossing seam&lt;br /&gt;
#  Computation of Intersection-Space Frequencies&lt;br /&gt;
#  Optimization of a Saddle point on the S0/S1 CHD crossing seam&lt;br /&gt;
#  Computation of the Intersection Space Minimum Energy Path (MEP) &lt;br /&gt;
&lt;br /&gt;
will be demonstrated.&lt;br /&gt;
  &lt;br /&gt;
==Development version and Substitutions==&lt;br /&gt;
For the calculations you have to use the Gaussian Development version, for the use of the current stable version your jobscript must contain following lines:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;module load gaussian/devel-modules&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;module load gdvg01_08&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[[Media:example-jobscript.ogg]]&lt;br /&gt;
&lt;br /&gt;
Also the beginning of your Input-file (.com) has to contain the following lines:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;%subst l103 /home/gaussian-devel/gaussiandvg01_pgi_lindafix/gdv_fabrizio/l103&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;%subst l115 /home/gaussian-devel/gaussiandvg01_pgi_lindafix/gdv_fabrizio/l115&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;%subst l510 /home/gaussian-devel/gaussiandvg01_pgi_lindafix/gdv_fabrizio/l510&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;%subst l716 /home/gaussian-devel/gaussiandvg01_pgi_lindafix/gdv_fabrizio/l716&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;%subst l1003 /home/gaussian-devel/gaussiandvg01_pgi_lindafix/gdv_fabrizio/l1003&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[[Media:test_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
=Optimization of a minimum point on the S0/S1 crossing seam=&lt;br /&gt;
For the optimization of a minimum point with the new algorithm you can use a standard input file. When you want to optimize a conical intersection geometry between the &#039;&#039;q-th&#039;&#039; and the &#039;&#039;(q-1)-th&#039;&#039; electronic state with an active space of &#039;&#039;n&#039;&#039; electrons in &#039;&#039;m&#039;&#039; orbitals the input file must contain the following lines:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;#P CAS(m,n,nr = q)/[basis set]&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Opt = Conical&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;IOp(1/5=-1,10/10=500005)&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;[Input Title]&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;[Charge] [Spin Multiplicity]&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;[Geometry]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The IOp(1/5) set to minus one specifies that we are attempting to optimize a minimum conical intersection point along the crossing seam. The IOp(10/10) is set to 500005 in order to compute the average gradient, which is used in the new algorithm, by solving the SA-CPMCSCF equations. The following files are the input and output files for the optimization of the  2A1/1A1 conical intersection minimum of CHD:&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_min_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_min_log.ogg]]&lt;br /&gt;
&lt;br /&gt;
Here also the IOp(1/16) is set to 5 in order to set the maximum allowable magnitude of the the eigenvalues of the second derative matrix. In order to check if this point is a saddle point or a minimum point a frequency calculation is necessary, which is described in the next section.&lt;br /&gt;
&lt;br /&gt;
=Computation of Intersection-Space Frequencies=&lt;br /&gt;
For the calculation of the Intersection-Space Frequencies no keywords exist to run such calculation yet. Therefore, a non-standard root has to be composed. A non-standard root is a complete sequence of links with associated options specified in an input file and read in by Gaussian. It is important to note that the program executes each link in the specified order, therefore extreme caution has to be taken when composing a non-standard route. Thus, a non-standard route is generally created by modifying the sequence of links produced by the standard route most similar to the one desired. This is accomplished most easily with the &#039;&#039;testrt&#039;&#039; utility, for more information [https://www.ch.ic.ac.uk/wiki/index.php/Resgrp:comp-photo-calculations see here]. In computing intersection-space frequencies, &#039;&#039;testrt&#039;&#039; is used to produce the route for a standard state-average CASSCF frequency calculation: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;#P CAS(n,m,stateaveraged,nroot = q)/[basis set]&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Nosymm&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Freq&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The route obtained with &#039;&#039;testrt&#039;&#039;  gives the correct sequence of links in a SA-CASSCF frequency analysis with the corresponding default options. However, in an intersection-space frequency analysis one needs the Hessian of both the intersecting electronic states and the Hessian of the rotated optimized wavefunctions. Create the route using testrt and repeat the sequence of links 5, 8, 11, 10, 6, 7 another two times within the new route. Then add/edit the specific options as below. Thus, the non-standard route used for an intersection-space frequency analysis should have a form similar to:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;1/.../1,3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;2/.../2;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;3/.../1,2,3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;4/.../1,5;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;5/..,17=41000200,.../10;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;8/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;11/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;10/...,10=600007,.../3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;6/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;7/...,45=52/1,2,3,16;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;5/...,17=41000200,...,97=100/10;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;8/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;11/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;10/...,10=600007,...,97=100/3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;6/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;7/...,45=51/1,2,3,16;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;5/...,17=41000200,...,79=1/10;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;8/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;11/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;10/...,10=600007,...,79=1/3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;6/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;7/...,45=53/1,2,3,16;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;1/.../3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039; 99//99;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The following files are the input and output files for the frequency calculation of the optimized conical intersection minimum of CHD, computed in the previous section:&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_min_freq_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_min_freq_log.ogg]]&lt;br /&gt;
&lt;br /&gt;
With the IOp(1/29) and the IOp(4/5) set to one, the geometry and the initial guess is read from the checkpoint file, which you got from the optimization. The IOp(4/17) and IOp(4/18) are set to six, which specifies the number of  electrons and orbitals in the active space, one might need to add more keywords depending on the specific study and system.&lt;br /&gt;
&lt;br /&gt;
So how you can see in the output file there is no negative frequency, therefore the structure of section 2 should be a conical intersection minimum.&lt;br /&gt;
&lt;br /&gt;
=Optimization of a Saddle point on the S0/S1 CHD crossing seam=&lt;br /&gt;
&lt;br /&gt;
Generally, in order to optimize a saddle point structure, one must start from a geometry that is close enough to the quadratic region of such a point. In addition, the Hessian at this initial structure must have a negative eigenvalue, and the corresponding eigevector must be a suitable approximation for the direction connecting the two valleys. When one tries to optimize a saddle point within the intersection space, the initial geometry should also be a point of degeneracy (or near-degeneracy), since the intersection-space Hessian must be computed. Thus it is sometimes useful first to make a single point calculation and then a energy gap optimization between the two states along the gradient difference vector. Input and output files of the single point calculation:&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_log.ogg]]&lt;br /&gt;
&lt;br /&gt;
Input and output files of the energy gap optimization:&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_E_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_E_log.ogg]]&lt;br /&gt;
&lt;br /&gt;
Then it is also quite useful first to make a frequency calculation of this point:&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_E_freq_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_E_freq_log.ogg]]&lt;br /&gt;
&lt;br /&gt;
And then one can do with this checkpoint file the optimization of the first-order saddle point:&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_opt_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_opt_log.ogg]]&lt;br /&gt;
&lt;br /&gt;
The IOp(1/8) set to one specifies the maximum step size allowed during the optimization and the IOp(5/7) set to 250 specifies the maximum number of iterations. Because this time we want to get a first-order saddle point instead of a minimum also the IOp(1/5) is set  minus 2. To prove that this is a first-order saddle point a frequency calculation must be done, which is also necessary for the Computation of the Intersection Space Minimum Energy Path (section 5):&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_opt_freq_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_opt_freq_log.ogg]]&lt;br /&gt;
&lt;br /&gt;
The one negative frequency indicates that the point is really a first-order saddle point.&lt;br /&gt;
&lt;br /&gt;
=Computation of the Intersection Space Minimum Energy Path (MEP)=&lt;br /&gt;
&lt;br /&gt;
Currently no standard route exists to compute a minimum energy path limited to the intersection-space. Therefore, as discussed in  section 3, a non-standard route has to be specified in the input file in order to perform these calculations. Using &#039;&#039;testrt&#039;&#039; and carefully modifying the output obtained for a standard intrinsic reaction path computation, which is specified by the IRC keyword, one should obtain something similar to:&lt;br /&gt;
 &lt;br /&gt;
&#039;&#039;&#039;1/...,44=-3,.../1,15;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;2/.../2;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;3/.../1,2,3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;4/.../1,5;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;5/.../10;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;8/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;11/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;10/10=500005,.../3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;6/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;7/.../16;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;1/...,44=-3,../15(2);&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;2/.../2;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;99//99;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;2/.../2;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;3/.../1,2,3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;4/.../1,5;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;5/.../10;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;8/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;11/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;10/10=500005,.../3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;7/.../16;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;1/...,44=-3,.../15(-8);&#039;&#039;&#039;&amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;2/.../2;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;6/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;99/9=1/99;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
In order to evaluate the intersection-space minimum energy path, there are added three more options to the existing IOp(1/44):&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;1/44 = -1	Compute the intersection-space minimum energy path in mass-weighted Cartesian coordinates.&#039;&#039;&#039;&amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;1/44 = -2	Compute the intersection-space minimum energy path in internal coordinates.&#039;&#039;&#039;&amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;1/44 = -3	Compute the intersection-space minimum energy path in mass-weighted internal coordinates.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
For the following example the intersection-space minimum energy path (MEP) is computed in mass-weighted internal coordinates. For the computation of the MEP you need the transition point structure and the search vector from the optimization of the Saddle point from section 4. The transition point structure is the optimized Saddle point structure, while the search vector is the normal mode of the one negative frequency. But because in the output the normal mode is given in Cartesian coordinates, you first have to transform them in internal coordinates, by adding the normal mode to the optimized Saddle point structure, write out this structure in internal coordinates and calculate e.g with Exel the differences of the internal coordinates in comparison to the optimized Saddle point structure. These differences of the internal coordinates (search vector) have to be add to the transition point structure (in internal coordinates) in a 8F10.6 format in the input file:&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_IRC_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_IRC_log.tar.gz.ogg]]&lt;br /&gt;
&lt;br /&gt;
So the calculated MEP leads from the transition point (CI_trans) to the minimum point (CI_min) on the S0/S1 crossing seam.&lt;br /&gt;
&lt;br /&gt;
=Computation of the Intersection Space Minimum Energy Path (MEP)=&lt;/div&gt;</summary>
		<author><name>Callan</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-calculations&amp;diff=52709</id>
		<title>Resgrp:comp-photo-calculations</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-calculations&amp;diff=52709"/>
		<updated>2009-03-24T11:28:27Z</updated>

		<summary type="html">&lt;p&gt;Callan: /* Viewing the normal modes and frequencies of the energy difference; the modes of the seam; and the modes of the bilinear coupling */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Example input files for different types of calculation, mainly using the development code.&lt;br /&gt;
&lt;br /&gt;
=nonstd=&lt;br /&gt;
This keyword means &#039;don&#039;t use any keywords&#039;, and allows you to access the gaussian route generator directly.&lt;br /&gt;
For more info [http://www.gaussian.com/g_ur/m_non_standard_routes.htm see here] [http://www.gaussian.com/iops.htm and here].&lt;br /&gt;
For some types of calculation, we have to use template input files that have non-standard routes and bypass Gaussian&#039;s own route generator in &#039;expert mode&#039;. A route is generated for all Gaussian calculations, and should be at the top of the text .log file. Alternatively, for a calculation that has keywords already available, use the [http://www.gaussian.com/g_ur/u_testrt.htm testrt] keyword interactively at a terminal to see what route is generated.&lt;br /&gt;
&lt;br /&gt;
=ionic states=&lt;br /&gt;
For ionic states, a &#039;minimal&#039; active space (e.g. cas(6,6) for benzene) won&#039;t give realistic excitation energies, as there&#039;s not enough flexibility to properly describe charge redistribution. With conjugated hydrocarbons, using a double active space and a 1-electron basis set with 3p-like functions (scaled from Si basis set) gives much of the necessary flexibility.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#p CASSCF(...)/6-31G* extrabasis&lt;br /&gt;
&lt;br /&gt;
Title&lt;br /&gt;
&lt;br /&gt;
0 1&lt;br /&gt;
Geometry&lt;br /&gt;
&lt;br /&gt;
C 0&lt;br /&gt;
 P   3 0.5&lt;br /&gt;
   .1727380000D+01   -.1779510000D-01&lt;br /&gt;
   .5729220000D+00    .2535390000D+00&lt;br /&gt;
   .2221920000D+00    .8006690000D+00&lt;br /&gt;
 P   1 0.5&lt;br /&gt;
   .7783690000D-01    .1000000000D+01&lt;br /&gt;
****&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Calculating and viewing the normal modes and frequencies of the energy difference; the modes of the seam; and the modes of the bilinear coupling=&lt;br /&gt;
&lt;br /&gt;
Calculation:&lt;br /&gt;
&lt;br /&gt;
Use the non-standard route described at The only difference in the non-standard route is 7/79. (7/79=1 for energy difference, 7/792 for the three things, seam, energy difference and bilinear coupling).&lt;br /&gt;
&lt;br /&gt;
Viewing the modes:&lt;br /&gt;
&lt;br /&gt;
The scripts dffx_modes_g01.sh, seam_modes_g01.sh and eta_modes_g01.sh can be used to create log files that gaussview can read to visualise the normal modes and frequencies of the energy difference, the modes of the seam and/or the modes of the bilinear coupling respectively.&lt;br /&gt;
&lt;br /&gt;
First, you need a directory (on your mac or on the cluster) that we will call /dir/.&lt;br /&gt;
In here, you put the the scripts (dffx_modes_g01.sh, seam_modes_g01.sh, eta_modes_g01.sh) and a file called template.log, and you create a subdirectory /dir/gaussian_output/ in which you put your log file (say it&#039;s called jobname.log).&lt;br /&gt;
Then you create a subdirectory /dir/data/.&lt;br /&gt;
Then you execute the script this way:&lt;br /&gt;
./dffx_modes_g01.sh jobname&lt;br /&gt;
and you will get a new file in data that is called jobname_DFFX.log (for energy difference frequencies) or jobname_GV.log (for seam modes) and that can be read by GaussView.&lt;br /&gt;
&lt;br /&gt;
N.B.: ./ might not be needed on the cluster (also this may depend on the type of shell), but it is on my Mac.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Now, there used to be a small printing error in Fabrizio&#039;s code that may not have been fixed.&lt;br /&gt;
It&#039;s about the mass-weighting of the branching-space vectors, gradient difference and derivative coupling (the last two modes, given with zero frequencies). The consequence is that the motion of H atoms is exaggerated when you visualise these last two vectors with Gaussview.&lt;br /&gt;
The other ones are fine.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
NB the convention for the energy difference is S0 - S1, so if you want the modes that reduce the energy difference, take those that have a large positive frequency (with respect to the energy difference).&lt;/div&gt;</summary>
		<author><name>Callan</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-calculations&amp;diff=52708</id>
		<title>Resgrp:comp-photo-calculations</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-calculations&amp;diff=52708"/>
		<updated>2009-03-24T11:26:26Z</updated>

		<summary type="html">&lt;p&gt;Callan: /* Viewing the normal modes and frequencies of the energy difference; the modes of the seam; and the modes of the bilinear coupling */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Example input files for different types of calculation, mainly using the development code.&lt;br /&gt;
&lt;br /&gt;
=nonstd=&lt;br /&gt;
This keyword means &#039;don&#039;t use any keywords&#039;, and allows you to access the gaussian route generator directly.&lt;br /&gt;
For more info [http://www.gaussian.com/g_ur/m_non_standard_routes.htm see here] [http://www.gaussian.com/iops.htm and here].&lt;br /&gt;
For some types of calculation, we have to use template input files that have non-standard routes and bypass Gaussian&#039;s own route generator in &#039;expert mode&#039;. A route is generated for all Gaussian calculations, and should be at the top of the text .log file. Alternatively, for a calculation that has keywords already available, use the [http://www.gaussian.com/g_ur/u_testrt.htm testrt] keyword interactively at a terminal to see what route is generated.&lt;br /&gt;
&lt;br /&gt;
=ionic states=&lt;br /&gt;
For ionic states, a &#039;minimal&#039; active space (e.g. cas(6,6) for benzene) won&#039;t give realistic excitation energies, as there&#039;s not enough flexibility to properly describe charge redistribution. With conjugated hydrocarbons, using a double active space and a 1-electron basis set with 3p-like functions (scaled from Si basis set) gives much of the necessary flexibility.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#p CASSCF(...)/6-31G* extrabasis&lt;br /&gt;
&lt;br /&gt;
Title&lt;br /&gt;
&lt;br /&gt;
0 1&lt;br /&gt;
Geometry&lt;br /&gt;
&lt;br /&gt;
C 0&lt;br /&gt;
 P   3 0.5&lt;br /&gt;
   .1727380000D+01   -.1779510000D-01&lt;br /&gt;
   .5729220000D+00    .2535390000D+00&lt;br /&gt;
   .2221920000D+00    .8006690000D+00&lt;br /&gt;
 P   1 0.5&lt;br /&gt;
   .7783690000D-01    .1000000000D+01&lt;br /&gt;
****&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Viewing the normal modes and frequencies of the energy difference; the modes of the seam; and the modes of the bilinear coupling=&lt;br /&gt;
&lt;br /&gt;
The scripts dffx_modes_g01.sh, seam_modes_g01.sh and eta_modes_g01.sh can be used to create log files that gaussview can read to visualise the normal modes and frequencies of the energy difference, the modes of the seam and/or the modes of the bilinear coupling respectively.&lt;br /&gt;
&lt;br /&gt;
First, you need a directory (on your mac or on the cluster) that we will call /dir/.&lt;br /&gt;
In here, you put the the scripts (dffx_modes_g01.sh, seam_modes_g01.sh, eta_modes_g01.sh) and a file called template.log, and you create a subdirectory /dir/gaussian_output/ in which you put your log file (say it&#039;s called jobname.log).&lt;br /&gt;
Then you create a subdirectory /dir/data/.&lt;br /&gt;
Then you execute the script this way:&lt;br /&gt;
./dffx_modes_g01.sh jobname&lt;br /&gt;
and you will get a new file in data that is called jobname_DFFX.log (for energy difference frequencies) or jobname_GV.log (for seam modes) and that can be read by GaussView.&lt;br /&gt;
&lt;br /&gt;
N.B.: ./ might not be needed on the cluster (also this may depend on the type of shell), but it is on my Mac.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Now, there used to be a small printing error in Fabrizio&#039;s code that may not have been fixed.&lt;br /&gt;
It&#039;s about the mass-weighting of the branching-space vectors, gradient difference and derivative coupling (the last two modes, given with zero frequencies). The consequence is that the motion of H atoms is exaggerated when you visualise these last two vectors with Gaussview.&lt;br /&gt;
The other ones are fine.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
NB the convention for the energy difference is S0 - S1, so if you want the modes that reduce the energy difference, take those that have a large positive frequency (with respect to the energy difference).&lt;/div&gt;</summary>
		<author><name>Callan</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-calculations&amp;diff=52707</id>
		<title>Resgrp:comp-photo-calculations</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-calculations&amp;diff=52707"/>
		<updated>2009-03-24T11:21:15Z</updated>

		<summary type="html">&lt;p&gt;Callan: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Example input files for different types of calculation, mainly using the development code.&lt;br /&gt;
&lt;br /&gt;
=nonstd=&lt;br /&gt;
This keyword means &#039;don&#039;t use any keywords&#039;, and allows you to access the gaussian route generator directly.&lt;br /&gt;
For more info [http://www.gaussian.com/g_ur/m_non_standard_routes.htm see here] [http://www.gaussian.com/iops.htm and here].&lt;br /&gt;
For some types of calculation, we have to use template input files that have non-standard routes and bypass Gaussian&#039;s own route generator in &#039;expert mode&#039;. A route is generated for all Gaussian calculations, and should be at the top of the text .log file. Alternatively, for a calculation that has keywords already available, use the [http://www.gaussian.com/g_ur/u_testrt.htm testrt] keyword interactively at a terminal to see what route is generated.&lt;br /&gt;
&lt;br /&gt;
=ionic states=&lt;br /&gt;
For ionic states, a &#039;minimal&#039; active space (e.g. cas(6,6) for benzene) won&#039;t give realistic excitation energies, as there&#039;s not enough flexibility to properly describe charge redistribution. With conjugated hydrocarbons, using a double active space and a 1-electron basis set with 3p-like functions (scaled from Si basis set) gives much of the necessary flexibility.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#p CASSCF(...)/6-31G* extrabasis&lt;br /&gt;
&lt;br /&gt;
Title&lt;br /&gt;
&lt;br /&gt;
0 1&lt;br /&gt;
Geometry&lt;br /&gt;
&lt;br /&gt;
C 0&lt;br /&gt;
 P   3 0.5&lt;br /&gt;
   .1727380000D+01   -.1779510000D-01&lt;br /&gt;
   .5729220000D+00    .2535390000D+00&lt;br /&gt;
   .2221920000D+00    .8006690000D+00&lt;br /&gt;
 P   1 0.5&lt;br /&gt;
   .7783690000D-01    .1000000000D+01&lt;br /&gt;
****&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Viewing the normal modes and frequencies of the energy difference; the modes of the seam; and the modes of the bilinear coupling=&lt;br /&gt;
&lt;br /&gt;
The scripts dffx_modes_g01.sh, seam_modes_g01.sh and eta_modes_g01.sh can be used to create log files that gaussview can read to visualise the normal modes and frequencies of the energy difference, the modes of the seam and/or the modes of the bilinear coupling respectively.&lt;/div&gt;</summary>
		<author><name>Callan</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.31dv/run&amp;diff=52706</id>
		<title>Resgrp:comp-photo-dyn/mctdh90.31dv/run</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.31dv/run&amp;diff=52706"/>
		<updated>2009-03-24T11:06:13Z</updated>

		<summary type="html">&lt;p&gt;Callan: /* &amp;#039;&amp;#039;&amp;#039;Basic use of the MCTDH package&amp;#039;&amp;#039;&amp;#039; */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= &#039;&#039;&#039;Basic use of the MCTDH 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.&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.  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 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 (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 (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 program. It contains all the mutual keywords of the GAUSSIAN calculations which will be run on-the-fly by MCTDH. 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.&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 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_gennerator====&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 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&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 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.)&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&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. 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;/div&gt;</summary>
		<author><name>Callan</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.31dv/input&amp;diff=52705</id>
		<title>Resgrp:comp-photo-dyn/mctdh90.31dv/input</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.31dv/input&amp;diff=52705"/>
		<updated>2009-03-24T11:03:29Z</updated>

		<summary type="html">&lt;p&gt;Callan: /* MCTDH versions */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Creating Input for Dynamics Calculations =&lt;br /&gt;
&lt;br /&gt;
== MCTDH versions ==&lt;br /&gt;
&lt;br /&gt;
* Current version (mctdh90dev): The input required for the dynamics calculation is an optimised ground state structure and an optimised conical intersection in the appropriate orientation. [These two structures are used in the diabatic transformation. They need not necessarily correspond to the Franck-Condon and 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 optimised 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.31dev): The only input required for the dynamics calculation is an optimised ground state structure and an optimised conical intersection (the rotation will be &amp;quot;automatic&amp;quot;). [These two structures are used in the diabatic transformation. They need not necessarily correspond to the Franck-Condon and 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.] Again, the ground state structure must have been optimised with state averaged orbitals. These orbitals must be &amp;quot;cleaned&amp;quot; and finally high precision frequencies must be calculated.&lt;br /&gt;
&lt;br /&gt;
* The main objective of this tutorial is learn how to run dynamics calculations, thus we will give you the optimised geometries in the appropiate rotation. (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;
Discussion on the necessity of using state averaged orbitals to go here. NEED TO REPRESENT BOTH GROUND AND EXCITED STATES AT THE SAME TIME. I AM NOT CLEAR WHY YOU ARE USING STATE AVERAGING AT EQUILIBRIUM GEOMETRY. NORMALLY THIS WOULD NOT BE A SENSIBLE THING TO DO.&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) optimization. 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:buta-s-orient.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:buta-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:buta-hf.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:buta-hf.log]]&lt;br /&gt;
&lt;br /&gt;
[[Media:buta-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 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 &#039;&#039;&#039;guess=alter&#039;&#039;&#039; 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 four pi orbitals, which contain four electrons (so the calculation is 4,4). The four orbitals that form the pi molecular orbitals are 14, 15, 16 and 17, thus we do not have to worry about swapping orbitals with the keword &#039;&#039;alter&#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(4,4,nroot=2,stateaverage) STO-3G nosymm IOP(5/97=100,10/97=100) guess=read&#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 averaged over the ground state and the first excited state.&lt;br /&gt;
&lt;br /&gt;
* Inspect the orbitals. Select those required for the CASSCF optimisation. The relevant orbitals are still 14, 15, 16 and 17.&lt;br /&gt;
&lt;br /&gt;
[[Media:buta-orbs-sa.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:buta-orbs-sa.log]]&lt;br /&gt;
&lt;br /&gt;
[[Media:buta-orbs-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;opt=conical pop=full CAS(4,4,nroot=2,stateaverage) STO-3G nosymm IOP(10/10=700005) IOP(5/97=100,10/97=100) geom=checkpoint guess=read&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
N.B. 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. 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 the current 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:buta-cas.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:buta-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.)&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;
=== [[Resgrp:comp-photo-dyn/mctdh90.31dv|back]] ===&lt;/div&gt;</summary>
		<author><name>Callan</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.31dv/run&amp;diff=52704</id>
		<title>Resgrp:comp-photo-dyn/mctdh90.31dv/run</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.31dv/run&amp;diff=52704"/>
		<updated>2009-03-24T10:49:45Z</updated>

		<summary type="html">&lt;p&gt;Callan: /* &amp;#039;&amp;#039;&amp;#039;Gaussian Output to be Used as Input for the Dynamics Program&amp;#039;&amp;#039;&amp;#039; */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= &#039;&#039;&#039;Basic use of the MCTDH 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.&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 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.  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 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 (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 (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 program. It contains all the mutual keywords of the GAUSSIAN calculations which will be run on-the-fly by MCTDH. 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.&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 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_gennerator====&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 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&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 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.)&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&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. 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;/div&gt;</summary>
		<author><name>Callan</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.31dv/run&amp;diff=52703</id>
		<title>Resgrp:comp-photo-dyn/mctdh90.31dv/run</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.31dv/run&amp;diff=52703"/>
		<updated>2009-03-24T10:41:49Z</updated>

		<summary type="html">&lt;p&gt;Callan: /* &amp;#039;&amp;#039;&amp;#039;Gaussian Output to be Used as Input for the Dynamics Program&amp;#039;&amp;#039;&amp;#039; */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= &#039;&#039;&#039;Basic use of the MCTDH 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.&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 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.  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 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 used to perform the diabatisation. Thus the diabatisation will be exact at this point and the diabatisation will be become more approximate the further you are from this point. 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 (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 (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 program. It contains all the mutual keywords of the GAUSSIAN calculations which will be run on-the-fly by MCTDH. 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.&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 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_gennerator====&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 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&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 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.)&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&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. 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;/div&gt;</summary>
		<author><name>Callan</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.31dv/run&amp;diff=52194</id>
		<title>Resgrp:comp-photo-dyn/mctdh90.31dv/run</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.31dv/run&amp;diff=52194"/>
		<updated>2009-02-27T16:37:59Z</updated>

		<summary type="html">&lt;p&gt;Callan: /* &amp;#039;&amp;#039;&amp;#039;Current Known Bugs&amp;#039;&amp;#039;&amp;#039; */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= &#039;&#039;&#039;Basic use of the MCTDH 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.&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 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.  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 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 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 (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 (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 program. It contains all the mutual keywords of the GAUSSIAN calculations which will be run on-the-fly by MCTDH. 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.&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 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_gennerator====&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 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&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 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.)&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&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. 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;/div&gt;</summary>
		<author><name>Callan</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.31dv/run&amp;diff=52192</id>
		<title>Resgrp:comp-photo-dyn/mctdh90.31dv/run</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.31dv/run&amp;diff=52192"/>
		<updated>2009-02-27T16:37:13Z</updated>

		<summary type="html">&lt;p&gt;Callan: /* &amp;#039;&amp;#039;&amp;#039;Current Known Bugs&amp;#039;&amp;#039;&amp;#039; */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= &#039;&#039;&#039;Basic use of the MCTDH 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.&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 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.  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 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 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 (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 (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 program. It contains all the mutual keywords of the GAUSSIAN calculations which will be run on-the-fly by MCTDH. 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.&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 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_gennerator====&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 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&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 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.)&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&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. 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.]&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;/div&gt;</summary>
		<author><name>Callan</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.31dv/run&amp;diff=52190</id>
		<title>Resgrp:comp-photo-dyn/mctdh90.31dv/run</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.31dv/run&amp;diff=52190"/>
		<updated>2009-02-27T16:29:55Z</updated>

		<summary type="html">&lt;p&gt;Callan: /* &amp;#039;&amp;#039;&amp;#039;Questions and Modifications to be made to this wiki&amp;#039;&amp;#039;&amp;#039; */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= &#039;&#039;&#039;Basic use of the MCTDH 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.&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 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.  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 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 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 (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 (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 program. It contains all the mutual keywords of the GAUSSIAN calculations which will be run on-the-fly by MCTDH. 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.&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 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_gennerator====&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 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&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 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.)&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&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. 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).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Total energy:&lt;br /&gt;
&lt;br /&gt;
1) The total energy can be &amp;quot;artificially&amp;quot; increased by much. If so, try a different integrator.&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.]&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;/div&gt;</summary>
		<author><name>Callan</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-CHD&amp;diff=51979</id>
		<title>Resgrp:comp-photo-CHD</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-CHD&amp;diff=51979"/>
		<updated>2009-02-27T11:44:53Z</updated>

		<summary type="html">&lt;p&gt;Callan: /* Computation of Intersection-Space Frequencies */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Overview=&lt;br /&gt;
In the following sections it will be described how one can calculate the conical intersection seam of CHD (cyclo-hexa-1,3-diene) respectively &#039;&#039;cZc&#039;&#039;-HT (CZc-hexa-1,3,5-triene) with the new algorithm. Therefore the &lt;br /&gt;
&lt;br /&gt;
#  Optimization of a minimum point on the S0/S1 crossing seam&lt;br /&gt;
#  Computation of Intersection-Space Frequencies&lt;br /&gt;
#  Optimization of a Saddle point on the S0/S1 CHD crossing seam&lt;br /&gt;
#  Computation of the Intersection Space Minimum Energy Path (MEP) &lt;br /&gt;
&lt;br /&gt;
will be demonstrated.&lt;br /&gt;
  &lt;br /&gt;
==Development version and Substitutions==&lt;br /&gt;
For the calculations you have to use the Gaussian Development version, for the use of the current stable version your jobscript must contain following lines:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;module load gaussian/devel-modules&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;module load gdvg01_08&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[[Media:example-jobscript.ogg]]&lt;br /&gt;
&lt;br /&gt;
Also the beginning of your Input-file (.com) has to contain the following lines:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;%subst l103 /home/gaussian-devel/gaussiandvg01_pgi_lindafix/gdv_fabrizio/l103&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;%subst l115 /home/gaussian-devel/gaussiandvg01_pgi_lindafix/gdv_fabrizio/l115&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;%subst l510 /home/gaussian-devel/gaussiandvg01_pgi_lindafix/gdv_fabrizio/l510&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;%subst l716 /home/gaussian-devel/gaussiandvg01_pgi_lindafix/gdv_fabrizio/l716&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;%subst l1003 /home/gaussian-devel/gaussiandvg01_pgi_lindafix/gdv_fabrizio/l1003&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[[Media:test_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
=Optimization of a minimum point on the S0/S1 crossing seam=&lt;br /&gt;
For the optimization of a minimum point with the new algorithm you can use a standard input file. When you want to optimize a conical intersection geometry between the &#039;&#039;q-th&#039;&#039; and the &#039;&#039;(q-1)-th&#039;&#039; electronic state with an active space of &#039;&#039;n&#039;&#039; electrons in &#039;&#039;m&#039;&#039; orbitals the input file must contain the following lines:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;#P CAS(m,n,nr = q)/[basis set]&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Opt = Conical&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;IOp(1/5=-1,10/10=500005)&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;[Input Title]&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;[Charge] [Spin Multiplicity]&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;[Geometry]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The IOp(1/5) set to minus one specifies that we are attempting to optimize a minimum conical intersection point along the crossing seam. The IOp(10/10) is set to 500005 in order to compute the average gradient, which is used in the new algorithm, by solving the SA-CPMCSCF equations. The following files are the input and output files for the optimization of the  2A1/1A1 conical intersection minimum of CHD:&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_min_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_min_log.ogg]]&lt;br /&gt;
&lt;br /&gt;
Here also the IOp(1/16) is set to 5 in order to set the maximum allowable magnitude of the the eigenvalues of the second derative matrix. In order to check if this point is a saddle point or a minimum point a frequency calculation is necessary, which is described in the next section.&lt;br /&gt;
&lt;br /&gt;
=Computation of Intersection-Space Frequencies=&lt;br /&gt;
For the calculation of the Intersection-Space Frequencies no keywords exist to run such calculation yet. Therefore, a non-standard root has to be composed. A non-standard root is a complete sequence of links with associated options specified in an input file and read in by Gaussian. It is important to note that the program executes each link in the specified order, therefore extreme caution has to be taken when composing a non-standard route. Thus, a non-standard route is generally created by modifying the sequence of links produced by the standard route most similar to the one desired. This is accomplished most easily with the &#039;&#039;testrt&#039;&#039; utility, for more information [https://www.ch.ic.ac.uk/wiki/index.php/Resgrp:comp-photo-calculations see here]. In computing intersection-space frequencies, &#039;&#039;testrt&#039;&#039; is used to produce the route for a standard state-average CASSCF frequency calculation: &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;#P CAS(n,m,stateaveraged,nroot = q)/[basis set]&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Nosymm&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Freq&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The route obtained with &#039;&#039;testrt&#039;&#039;  gives the correct sequence of links in a SA-CASSCF frequency analysis with the corresponding default options. However, in an intersection-space frequency analysis one needs the Hessian of both the intersecting electronic states and the Hessian of the rotated optimized wavefunctions. Create the route using testrt and repeat the sequence of links 5, 8, 11, 10, 6, 7 another two times within the new route. Then add/edit the specific options as below. Thus, the non-standard route used for an intersection-space frequency analysis should have a form similar to:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;1/.../1,3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;2/.../2;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;3/.../1,2,3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;4/.../1,5;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;5/..,17=41000200,.../10;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;8/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;11/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;10/...,10=600007,.../3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;6/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;7/...,45=52/1,2,3,16;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;5/...,17=41000200,...,97=100/10;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;8/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;11/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;10/...,10=600007,...,97=100/3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;6/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;7/...,45=51/1,2,3,16;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;5/...,17=41000200,...,79=1/10;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;8/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;11/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;10/...,10=600007,...,79=1/3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;6/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;7/...,45=53/1,2,3,16;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;1/.../3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039; 99//99;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The following files are the input and output files for the frequency calculation of the optimized conical intersection minimum of CHD, computed in the previous section:&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_min_freq_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_min_freq_log.ogg]]&lt;br /&gt;
&lt;br /&gt;
With the IOp(1/29) and the IOp(4/5) set to one, the geometry and the initial guess is read from the checkpoint file, which you got from the optimization. The IOp(4/17) and IOp(4/18) are set to six, which specifies the number of  electrons and orbitals in the active space, one might need to add more keywords depending on the specific study and system.&lt;br /&gt;
&lt;br /&gt;
So how you can see in the output file there is no negative frequency, therefore the structure of section 2 should be a conical intersection minimum.&lt;br /&gt;
&lt;br /&gt;
=Optimization of a Saddle point on the S0/S1 CHD crossing seam=&lt;br /&gt;
&lt;br /&gt;
Generally, in order to optimize a saddle point structure, one must start from a geometry that is close enough to the quadratic region of such a point. In addition, the Hessian at this initial structure must have a negative eigenvalue, and the corresponding eigevector must be a suitable approximation for the direction connecting the two valleys. When one tries to optimize a saddle point within the intersection space, the initial geometry should also be a point of degeneracy (or near-degeneracy), since the intersection-space Hessian must be computed. Thus it is sometimes useful first to make a single point calculation and then a energy gap optimization between the two states along the gradient difference vector. Input and output files of the single point calculation:&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_log.ogg]]&lt;br /&gt;
&lt;br /&gt;
Input and output files of the energy gap optimization:&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_E_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_E_log.ogg]]&lt;br /&gt;
&lt;br /&gt;
Then it is also quite useful first to make a frequency calculation of this point:&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_E_freq_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_E_freq_log.ogg]]&lt;br /&gt;
&lt;br /&gt;
And then one can do with this checkpoint file the optimization of the first-order saddle point:&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_opt_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_opt_log.ogg]]&lt;br /&gt;
&lt;br /&gt;
The IOp(1/8) set to one specifies the maximum step size allowed during the optimization and the IOp(5/7) set to 250 specifies the maximum number of iterations. Because this time we want to get a first-order saddle point instead of a minimum also the IOp(1/5) is set  minus 2. To prove that this is a first-order saddle point a frequency calculation must be done, which is also necessary for the Computation of the Intersection Space Minimum Energy Path (section 5):&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_opt_freq_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_trans_opt_freq_log.ogg]]&lt;br /&gt;
&lt;br /&gt;
The one negative frequency indicates that the point is really a first-order saddle point.&lt;br /&gt;
&lt;br /&gt;
=Computation of the Intersection Space Minimum Energy Path (MEP)=&lt;br /&gt;
&lt;br /&gt;
Currently no standard route exists to compute a minimum energy path limited to the intersection-space. Therefore, as discussed in  section 3, a non-standard route has to be specified in the input file in order to perform these calculations. Using &#039;&#039;testrt&#039;&#039; and carefully modifying the output obtained for a standard intrinsic reaction path computation, which is specified by the IRC keyword, one should obtain something similar to:&lt;br /&gt;
 &lt;br /&gt;
&#039;&#039;&#039;1/...,44=-3,.../1,15;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;2/.../2;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;3/.../1,2,3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;4/.../1,5;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;5/.../10;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;8/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;11/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;10/10=500005,.../3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;6/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;7/.../16;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;1/...,44=-3,../15(2);&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;2/.../2;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;99//99;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;2/.../2;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;3/.../1,2,3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;4/.../1,5;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;5/.../10;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;8/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;11/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;10/10=500005,.../3;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;7/.../16;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;1/...,44=-3,.../15(-8);&#039;&#039;&#039;&amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;2/.../2;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;6/.../1;&#039;&#039;&#039; &amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;99/9=1/99;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
In order to evaluate the intersection-space minimum energy path, there are added three more options to the existing IOp(1/44):&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;1/44 = -1	Compute the intersection-space minimum energy path in mass-weighted Cartesian coordinates.&#039;&#039;&#039;&amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;1/44 = -2	Compute the intersection-space minimum energy path in internal coordinates.&#039;&#039;&#039;&amp;lt;br/&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;1/44 = -3	Compute the intersection-space minimum energy path in mass-weighted internal coordinates.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
For the following example the intersection-space minimum energy path (MEP) is computed in mass-weighted internal coordinates. For the computation of the MEP you need the transition point structure and the search vector from the optimization of the Saddle point from section 4. The transition point structure is the optimized Saddle point structure, while the search vector is the normal mode of the one negative frequency. But because in the output the normal mode is given in Cartesian coordinates, you first have to transform them in internal coordinates, by adding the normal mode to the optimized Saddle point structure, write out this structure in internal coordinates and calculate e.g with Exel the differences of the internal coordinates in comparison to the optimized Saddle point structure. These differences of the internal coordinates (search vector) have to be add to the transition point structure (in internal coordinates) in a 8F10.6 format in the input file:&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_IRC_com.ogg]]&lt;br /&gt;
&lt;br /&gt;
[[Media:CI_IRC_log.tar.gz.ogg]]&lt;br /&gt;
&lt;br /&gt;
So the calculated MEP leads from the transition point (CI_trans) to the minimum point (CI_min) on the S0/S1 crossing seam.&lt;/div&gt;</summary>
		<author><name>Callan</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.31dv/run&amp;diff=44307</id>
		<title>Resgrp:comp-photo-dyn/mctdh90.31dv/run</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.31dv/run&amp;diff=44307"/>
		<updated>2009-02-13T11:32:18Z</updated>

		<summary type="html">&lt;p&gt;Callan: /* &amp;#039;&amp;#039;&amp;#039;Modifications to be made to the files before running the dynamics&amp;#039;&amp;#039;&amp;#039; */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= &#039;&#039;&#039;Basic use of the MCTDH 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.&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 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.  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 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 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 (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 (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 program. It contains all the mutual keywords of the GAUSSIAN calculations which will be run on-the-fly by MCTDH. 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.&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 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_gennerator====&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 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&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 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.)&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&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. 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).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Total energy:&lt;br /&gt;
&lt;br /&gt;
1) The total energy can be &amp;quot;artificially&amp;quot; increased by much. If so, try a different integrator.&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.]&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?&lt;br /&gt;
*Need a section on using the database.&lt;br /&gt;
*In terms of Delta-E, how much is too much?&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?&lt;/div&gt;</summary>
		<author><name>Callan</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.31dv/run&amp;diff=43883</id>
		<title>Resgrp:comp-photo-dyn/mctdh90.31dv/run</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.31dv/run&amp;diff=43883"/>
		<updated>2009-02-12T11:23:16Z</updated>

		<summary type="html">&lt;p&gt;Callan: /* &amp;#039;&amp;#039;&amp;#039;Current Known Bugs&amp;#039;&amp;#039;&amp;#039; */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= &#039;&#039;&#039;Basic use of the MCTDH 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.&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 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.  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 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 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 (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 (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 program. It contains all the mutual keywords of the GAUSSIAN calculations which will be run on-the-fly by MCTDH. 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.&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 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_gennerator====&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 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&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 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_08).&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.)&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&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. 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).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Total energy:&lt;br /&gt;
&lt;br /&gt;
1) The total energy can be &amp;quot;artificially&amp;quot; increased by much. If so, try a different integrator.&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.]&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?&lt;br /&gt;
*Need a section on using the database.&lt;br /&gt;
*In terms of Delta-E, how much is too much?&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?&lt;/div&gt;</summary>
		<author><name>Callan</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.31dv/input&amp;diff=43610</id>
		<title>Resgrp:comp-photo-dyn/mctdh90.31dv/input</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.31dv/input&amp;diff=43610"/>
		<updated>2009-02-11T17:05:49Z</updated>

		<summary type="html">&lt;p&gt;Callan: /* &amp;#039;&amp;#039;&amp;#039;4. Perform a CASSCF Optimisation on the Ground State with the State Averaged Orbitals&amp;#039;&amp;#039;&amp;#039; */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Creating Input for Dynamics Calculations =&lt;br /&gt;
&lt;br /&gt;
== MCTDH versions ==&lt;br /&gt;
&lt;br /&gt;
* Current version (mctdh90dev): The input required for the dynamics calculation is an optimised ground state structure and an optimised conical intersection in the appropriate orientation . The ground state structure must have been optimised 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.31dev): The only input required for the dynamics calculation is an optimised ground state structure and an optimised conical intersection (the rotation will be &amp;quot;automatic&amp;quot;). Again, the ground state structure must have been optimised with state averaged orbitals. These orbitals must be &amp;quot;cleaned&amp;quot; and finally high precision frequencies must be calculated.&lt;br /&gt;
&lt;br /&gt;
* The main objective of this tutorial is learn how to run dynamics calculations, thus we will give you the optimised geometries in the appropiate rotation. (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;
Discussion on the necessity of using state averaged orbitals to go here. NEED TO REPRESENT BOTH GROUND AND EXCITED STATES AT THE SAME TIME. I AM NOT CLEAR WHY YOU ARE USING STATE AVERAGING AT EQUILIBRIUM GEOMETRY. NORMALLY THIS WOULD NOT BE A SENSIBLE THING TO DO.&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) optimization. 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:buta-s-orient.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:buta-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:buta-hf.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:buta-hf.log]]&lt;br /&gt;
&lt;br /&gt;
[[Media:buta-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 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 &#039;&#039;&#039;guess=alter&#039;&#039;&#039; 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 four pi orbitals, which contain four electrons (so the calculation is 4,4). The four orbitals that form the pi molecular orbitals are 14, 15, 16 and 17, thus we do not have to worry about swapping orbitals with the keword &#039;&#039;alter&#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(4,4,nroot=2,stateaverage) STO-3G nosymm IOP(5/97=100,10/97=100) guess=read&#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 averaged over the ground state and the first excited state.&lt;br /&gt;
&lt;br /&gt;
* Inspect the orbitals. Select those required for the CASSCF optimisation. The relevant orbitals are still 14, 15, 16 and 17.&lt;br /&gt;
&lt;br /&gt;
[[Media:buta-orbs-sa.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:buta-orbs-sa.log]]&lt;br /&gt;
&lt;br /&gt;
[[Media:buta-orbs-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;opt=conical pop=full CAS(4,4,nroot=2,stateaverage) STO-3G nosymm IOP(10/10=700005) IOP(5/97=100,10/97=100) geom=checkpoint guess=read&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
N.B. 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. 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 the current 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:buta-cas.gjf]]&lt;br /&gt;
&lt;br /&gt;
[[Media:buta-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.)&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;
=== [[Resgrp:comp-photo-dyn/mctdh90.31dv|back]] ===&lt;/div&gt;</summary>
		<author><name>Callan</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.31dv/run&amp;diff=43330</id>
		<title>Resgrp:comp-photo-dyn/mctdh90.31dv/run</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.31dv/run&amp;diff=43330"/>
		<updated>2009-02-10T15:32:43Z</updated>

		<summary type="html">&lt;p&gt;Callan: /* &amp;#039;&amp;#039;&amp;#039;Basic use of the MCTDH package&amp;#039;&amp;#039;&amp;#039; */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= &#039;&#039;&#039;Basic use of the MCTDH 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.&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 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.  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 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 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 (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 (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 program. It contains all the mutual keywords of the GAUSSIAN calculations which will be run on-the-fly by MCTDH. 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.&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 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_gennerator====&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 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&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 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_08).&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.)&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&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. 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;
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).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Total energy:&lt;br /&gt;
&lt;br /&gt;
1) The total energy can be &amp;quot;artificially&amp;quot; increased by much. If so, try a different integrator.&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.]&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;
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;
= &#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?&lt;br /&gt;
*Need a section on using the database.&lt;br /&gt;
*In terms of Delta-E, how much is too much?&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?&lt;/div&gt;</summary>
		<author><name>Callan</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.31dv/run&amp;diff=43329</id>
		<title>Resgrp:comp-photo-dyn/mctdh90.31dv/run</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.31dv/run&amp;diff=43329"/>
		<updated>2009-02-10T15:32:32Z</updated>

		<summary type="html">&lt;p&gt;Callan: /* &amp;#039;&amp;#039;&amp;#039;Basic use of the MCTDH package&amp;#039;&amp;#039;&amp;#039; */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= &#039;&#039;&#039;Basic use of the MCTDH 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.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Notes&#039;&#039;&#039;&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 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.  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 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 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 (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 (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 program. It contains all the mutual keywords of the GAUSSIAN calculations which will be run on-the-fly by MCTDH. 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.&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 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_gennerator====&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 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&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 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_08).&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.)&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&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. 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;
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).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Total energy:&lt;br /&gt;
&lt;br /&gt;
1) The total energy can be &amp;quot;artificially&amp;quot; increased by much. If so, try a different integrator.&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.]&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;
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;
= &#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?&lt;br /&gt;
*Need a section on using the database.&lt;br /&gt;
*In terms of Delta-E, how much is too much?&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?&lt;/div&gt;</summary>
		<author><name>Callan</name></author>
	</entry>
	<entry>
		<id>https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.31dv/run&amp;diff=43328</id>
		<title>Resgrp:comp-photo-dyn/mctdh90.31dv/run</title>
		<link rel="alternate" type="text/html" href="https://chemwiki.ch.ic.ac.uk/index.php?title=Resgrp:comp-photo-dyn/mctdh90.31dv/run&amp;diff=43328"/>
		<updated>2009-02-10T15:32:18Z</updated>

		<summary type="html">&lt;p&gt;Callan: /* &amp;#039;&amp;#039;&amp;#039;Basic use of the MCTDH package: Notes&amp;#039;&amp;#039;&amp;#039; */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= &#039;&#039;&#039;Basic use of the MCTDH 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.&lt;br /&gt;
&lt;br /&gt;
Notes&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 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.  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 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 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 (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 (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 program. It contains all the mutual keywords of the GAUSSIAN calculations which will be run on-the-fly by MCTDH. 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.&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 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_gennerator====&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 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&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 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_08).&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.)&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&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. 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;
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).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Total energy:&lt;br /&gt;
&lt;br /&gt;
1) The total energy can be &amp;quot;artificially&amp;quot; increased by much. If so, try a different integrator.&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.]&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;
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;
= &#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?&lt;br /&gt;
*Need a section on using the database.&lt;br /&gt;
*In terms of Delta-E, how much is too much?&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?&lt;/div&gt;</summary>
		<author><name>Callan</name></author>
	</entry>
</feed>