The COLUMBUS program allows the calculation of potential curves along an internal coordinate with the computational method defined by the input files in the main directory and the informations written in the control.run file.
Entering Set up job control in the main colinp menu the following submenu is displayed:
1) Job control for single point or gradient calculation
2) Generate int. coordinates for potential energy curve
3) Potential energy curve for one int. coordinate
4) Vibrational frequencies and force constants
5) Exit
Before entering item 3) you have to enter item 1) for setting up the control.run file (which will be used for all points of the curve). Furthermore, a set of internal coordinate definitions (intcfl file) must be generated. You can do this using item 2. In special cases edit the intcfl file by hand (recommended for experts only). Now you ready to enter the item 3):
submenu 3.1: Potential energy curve for one int. coordinate
Potential energy curve calculation for one int.coord.:
(bond distances in Angstrom, angles in degree)
System with 3 internal coordinates detected!
calculate the potential energy curve along the
int.coord. number [ ] is an angle [n]
initial displacement [ ] final displacement [ ]
number of displacements [ ]
The input is to be made in the following units: distances in Angstrom and angles in degree. The initial and final point values are displacements relative to the geometry in the geom file in the main directory. It is recommended to select from the two boundary values the one closer to zero as initial point. Submenu 3.1 generates a new directory structure DISPLACEMENT/CALC.cA.dB (displacement B in internal coordinate A). In every directory there will be a new geometry file will be created corresponding to the desired displacement. Furthermore, the file: DISPLACEMENT/displfl is generated, which contains informations about the points to be calculated. Then quit colinp. Next steps are performed using the script: disp.pl. After calling the script the following screen will appear:
menu 1: COLUMBUS calculations based on the displfl file
1) copy input files for force constant calculation
2) copy input files for potential curve calculation
3) perform force constant calculations
4) perform potential curve calculations
5) quit
The first point will copy all the necessary files into the directories: DISPLACEMENT/CALC.cA.dB (as listed in the file DISPLACEMENT/displfl) required by the calculation specified in control.run.
Before starting the calculations we have to generate a file mocoef.start in the main directory, which will be used as initial MO coefficent file for the first point to be calculated. You can use an appropriate file from a previous calculation. For all following points the mocoef file from the previous calculation will be used as initial MO coefficient file.
The calculation is started using the item 3) in the disp.pl script. The calculation is started background with the nohoup option and the point are calculated one by one. After each point is finished, the directories WORK and RESTART are removed. In this way the calculation requires only as much disk space as one single-point calculation does.
For output analysis the script curve.pl may be used. This script requires as input file curvein, which specifies the type of data to be extracted from the output files. The next table shows the keywords, which are used for the energy analysis (N is the number of energies to be extracted):
| mcscf | N |
| ci | N |
| aqcc | N |
The result is written to standard output. It contains convergence informations, the list of displacements and respective energies. These data are meant to be processed further by a plotting routine.
A CSF analysis may be performed, using the curve.pl script as well. The corresponding keywords are found in the following table (N is the number of states to be read out; DRT is the DRT number; CSF is the step vector for which the c**2 values should be printed out; comment is an arbitrary user comment word):
| mccsf | N | DRT | CSF | comment |
| cicsf | N | DRT | CSF | comment |
Note: For AQCC, the same keyword cicsf is to be used.
The program lic.pl generates a selected number of intermediate geometries between an initial and a final geometry. The interpolation can be carried out in internal coordinates defined via a Z-matrix or Pulay natural internal coordinates. It also supplies the user with tools for plotting and visualizing the potential curve. This feature can be used even during the calculations.
Note: Interpolation through Z-matrix requires Babel program ($BABEL_DIR variable).
Invoke the program as $COLUMBUS/lic.pl. As input the program requires two files with initial and final geometries named geom.ini and geom.last in the COLUMBUS format. After invoking the program the following menu is displayed:
Please choose the method of transformation:
1. TRANSFORMATION THROUGH Z-MATRIX
Requires: Babel
2. TRANSFORMATION THROUGH PULAY INTERNAL COORDINATES
3. EXIT
Special options and tools:
4. TRANSFORMATION THROUGH A FIXED Z-MATRIX
Requires existing Z-matrixes from 1st choice
5. Potential curve generation
Requires GNUPLOT
6. Visualization of the LIC path (by MOLDEN)
Requires MOLDEN
After choosing the interpolation method the user has simply to follow the instructions on the screen. As a result a new directory structure DISPLACEMENT/CALC.c1.dN will be created.
In each directory a new geometry file will be created corresponding to the requested number of N points. Furthermore, the file DISPLACEMENT/displfl is generated, which contains information about the points to be calculated.
The created directory structure meets the requirements for the COLUMBUS potential curve calculations.
The program disp_nc.pl and disp_normcoord.x allows the calculation of potential curves along normal modes with COLUMBUS by creating the displaced geometry files and the directory structure containing the computational method defined by the input files in the main directory.
Information about the algorithm can be found here
A COLUMBUS frequency calculation must be already done. In particular these files must exist:
*)geom
*)cartesian_frequencies (created by suscal.x)
In order to perform a potential curve calculation, the COLUMBUS input should be in the same directory.
Now the script disp_nc.pl should be called. The user will be asked for:
1)Lower and upper bound in dimensionless units [1] or in Angstrom [2] ?
2)Lower bound for displacement (floating point) ?
3)Upper bound for displacement (floating point) ?
4)Displacement steps (integer) ?
This will create 3N-6 directories named normcoordXXX where XXX is the number of the corresponding normal mode. The enumeration starts with 7 as the first 6 are the translations and rotations. All files will be copied to each of the normcoordXXX directories. Additionally a directory DISPLACEMENT is created. It contains the directories CALC.cXXX.dYYY where XXX is the normal mode and YYY is the displacement in Angstrom and the file displfl. In the CALC.cXXX.dYYY directories are the corresponding geom files.
To calculate the potential curve along one normal coordinate the user has to go to the corresponding normcoordXXX directory. There the COLUMBUS environment for calculating potential curves can be used (disp.pl).