DMol



8       Methodology--Standalone Mode

This section discusses the basic steps for a DMol calculation in the standalone mode, which may be done using the dmol_master interface, or running DMol directly. Detailed explanations of the standalone keywords are contained in Commands--Standalone Mode.


Using DMol in the standalone mode

A DMol run can be set up in a standalone manner, completely outside the Insight environment. To do this, you need two files: an input file (run_name.input or run_name.inmol) containing command keywords to control the calculation and a file containing the numeric basis sets (any name is allowed; the convention is run_name.basis). If the .input file is used, molecular coordinates may be specified in a separate file (e.g., a run_name.car file).

New input files may be created or modified by entering the following at the UNIX prompt:

>	dmol_master run_name
where run_name is the name you select for the calculation and its associated files, and dmol_master is the name of the standalone input-preparation interface. The dmol_master interface steps you through the process of setting up a DMol job, as outlined under DMol input preparation utility: dmol_master. The output from the calculation is sent to the file .outmol; and messages from any serious errors that may occur are placed in the file .stderr.

To run dmol in standalone mode without the dmol_master interface requires the command-line argument run_name, for example:

>	dmol h2o
Optionally, you may provide a basis set file, as follows:

>	dmol h2o h2o.basis
The keyword input file in this example would be h2o.input; and dmol would expect coordinates and molecular information to be found in h2o.car. The basis file may have any name. (Users who prefer to use the INMOL file format should omit the run_name.input file and use run_name.inmol instead.)

Point charge and Hessian filenames are specified in the input file, using the Point_Charges and Hessian_File keywords.


Basics steps for a DMol calculation

As mentioned under General Methodology, four basic steps are involved in a DMol calculation:

  1. Create and modify the input files.

  2. Set up calculation parameters.

  3. Run the calculation.

  4. Analyze the results.

dmol has one required input file: either run_name.inmol or run_name.input. You may also supply a run_name.basis file. The .basis file contains the numerical atomic basis generated by the DAtom utility (see Utilities). The .inmol file contains all the user-specified input and is described in Commands--Standalone Mode. The .input file uses a simplified free format that provides almost equal flexibility. The user interface dmol_master relies on the use of the .input-type input format, while the .inmol format is maintained for compatibility with the original (academic) version of DMol.

After input generation, a .job file and, if needed, a .basis file (see Commands--Standalone Mode) are created and used. You would usually run these as batch jobs rather than as interactive sessions because of the large computational requirements of the program. Upon completion, the primary output is written to a file called .outmol. A brief summary of the output is contained in the .sum file.

You may, of course, write the .input and .job files with a text editor. However, the user interface dmol_master is provided along with DMol to assist you in:

If you want only to generate a new input file or to update an existing input file, you may use the dialog interface, which is a part of the dmol_master interface.

This utility is designed to be user-friendly. It runs interactively, querying you for information. Its greatest value lies in its ability to select reasonable default values for the various input options.

You can, in fact, go a long way just by invoking dmol_master (see below) and answering the program's queries. By simply selecting the default options, you can run a job to completion and obtain output values with some level of confidence. You may want to become more familiar with all the input options. A discussion of the input commands is contained in Commands--Standalone Mode.


DMol input preparation utility: dmol_master

This section overviews the DMol input preparation interface dmol_master, and The resulting test.input file and Files show sample .input files.

The dmol_master utility assists in:

DMol has several input parameters, all of which have default values. If you use dmol_master to help create your input decks, these default values are automatically chosen. You can override them by:

Certain input is required for DMol. This includes the title and the molecular geometry. The title is a character string that describes something about the job. The geometry may be entered in Cartesian or internal coordinates. The default is Cartesian coordinates. If you are using MSI's Insight and Discover programs, you may want to input the geometry via the .car files that these programs use.


Creating a new .input file

Once it is properly installed, dmol_master is invoked by entering at the UNIX prompt:

>	dmol_master run_name
If run_name is omitted, the program prompts you for it. dmol_master allows you to enter values for each keyword in the .input file. After all keywords have been entered, an .input file is written with the name run_name.input. These steps of dmol_master are discussed below in more detail.

When dmol_master is run, the program first checks for the existence of a file named run_name.input, which is a keyword input file file (see below). The description in this section assumes that no previous files exist.

dmol_master checks for the existence of a basis set file, which is assumed to be a file in the current working directory. This file can be used in DMol calculations if you explicitly request it. Otherwise, a run_name.basis file is generated by DMol.

(If there is no run_name.input file or if you want to modify the input, dmol_master calls the interactive dialog input system. You can also run dialog independent of dmol_master by entering dialog at the UNIX prompt.)

New input can be now entered. You are first prompted for a title. This is a string up to 50 characters long. Following this, the program asks for a geometry. This may be entered interactively or extracted from one of several types of files:

If you want to use one of these input files, note that it must exist before you run dmol_master. After Cartesian coordinates are entered, either interactively or from a .coord file, dialog finds the point-group symmetry of the molecule.

After the geometry and symmetry are found, the geometry is written to a run_name.car file, and the program displays a table of each of the keywords and its current value. New values can be entered at this time, by typing the name of the keyword you want to update. The program then prompts you for the new value. The following rules apply to entering values:

When you have updated as many keywords as needed, exit by typing quit or exit. The program writes out a run_name.input file that is used as input to DMol.

The program also prompts for the name of a scratch directory in which the job is executed (<Enter> means to use the current directory). This ultimately results in the creation of a .job file, named run_name.job.

After entering the scratch directory, the program asks you where to store the results of the calculation and if you want to delete the scratch files at the end of a calculation (Y or N, default = Y). Generally, you always delete scratch files because they are so large.

Finally, you are prompted to start the job, and the job is run in the background. The primary output file is run_name.outmol, with a brief summary written to file run_name.sum. These appear in the specified storage directory.


Running dmol_master without any previously existing input files

Example dmol_master session

Following is an example standalone dmol_master session for a geometry optimization of water with C2v symmetry, which creates a DMol job .csh script for later use. No input files are used. User input is indicated by bold type; <CR> indicates pressing <Enter> with no other input.

>	dmol_master test

 ***************************************** 
     DMol 960/400 input preparation utility
 ***************************************** 
 
Enter the object name (<RETURN> = QUIT) 
Enter HELP to learn the main features of the Dmol_master script
 
>>water

 
 Welcome to Dialog
***************************************************************************

       Welcome to **DMol/Dialog** interactive Input system

      Dialog can read and prepare job.input for DMol 960/400.
      It will check for correctness of keywords and their values.
      It will assist you in preparing the standard DMol input.
      It can read various input formats and convert them to .car file.
      For non-standard DMol options please refer to the DMol manual.

     (To learn about current limitations of Dialog type: limit
                                      to continue press: enter)


 ========:
<CR>
 :========
   --------------------------------------------------
  DMol/Dialog prepares input data for system:  water                                             
   --------------------------------------------------
  

  Enter the title for the run  

 ========:
geometry optimization of water
 :========

  Do you want to enter the geometry in Bohr or in angstrom units? 
  Current default is ANGSTROM
 ========:
a
 :========

 To read the geometry from a MOPAC-type Z-matrix enter ZMAT
 To read the geometry from a Gaussan-type Z-matrix enter GZMAT
 To read the geometry from a Discover .car file enter CAR
 To read the geometry from a DMol .coord file enter COORD

 To edit the existing geometry enter EDIT

 To enter the geometry by hand (USER option) type for each atom:
    - the number of the atom (i.e., 1,2,3,...)
    - the atomic number (e.g., 6 for C, 7 for N, etc.)
    - the x y z coordinates in ANGSTROM units
    - Terminate with a blank line

 ========:
1 8 0 0 0
 :========
   updated atom            1
 ========:
2 1 1 1 0
 :========
   updated atom            2
 ========:
3 1 -1 1 0
 :========
   updated atom            3
 ========:
<CR>
 :========
   --------------------------------------------------
  
   Current geometry in ANGSTROM
    1    8  0.000000  0.000000  0.000000
    2    1  1.000000  1.000000  0.000000
    3    1 -1.000000  1.000000  0.000000
  
   Coordinates have been symmetrized
  
   Current geometry in ANGSTROM
    1    8  0.000000  0.000000 -0.666667
    2    1 -1.000000  0.000000  0.333333
    3    1  1.000000  0.000000  0.333333
   --------------------------------------------------
  
     Molecule has the following symmetry ===>    [ C2v ]

     Do you want to use this symmetry in calculations (YES, default): 

 ========:
<CR>
 :========

  The new geometry is written to file water.car                                         
  
                      Current Flags:
  
  
        ________________________________________________________

    Calculate  ENERGY                       Basis     DNP 
    Geometry   CAR     ANGSTROM             Symmetry  C2v 
    Spin       RESTRICTED                   Charge    0.000000  
    Occupation DEFAULT 

    Integration_Grid MEDIUM 
                                            Functionals       VWN   

    Electric_Field  OFF 
    Point_Charges   OFF 
    Solvate         OFF 

    Electrostatic_Moments OFF               Mulliken_Analysis    0 
                                            Bond_Order           OFF
                                            Hirshfeld_Analysis   0  
                                            ESP_Charges          OFF
                                            Nuclear_EFG          OFF
    Optical_Absorption    OFF 
    Plot  OFF 
    Grid  BOX 

    Ndiff      1                            Vibdiff    0.010000  
    Project    ON                           FrqRestart OFF 
    Frozen     INNER_CORE                   Lmax  DEFAULT 
    Fixoc      1000                         Print OFF 

    Smear            0.000000               SCF_Energy_Convergence  0.000001  
    Number_Bad_Steps 9                      SCF_Density_Convergence OFF 
    SCF_Iterations   25                     Direct_SCF    ON 
    Mixing_Alpha     0.250000               Partial_DOS   OFF 
    Diis             4 
    Mixing_Beta      0.250000               SCF_Restart   OFF 

    Locate                MINIMUM 
    Opt_Coordinate_System AUTO              Opt_Print                2 
    Opt_Use_Symmetry      ON                Gradient_Convergence     0.001000 
    Hessian_Update        BFGS              Displacement_Convergence 0.001000 
    Hessian_File          OFF 
    GDIIS                 OFF               Opt_Energy_Convergence   0.000010 
    Opt_Cycles            20                Max_Displacement         0.300000 

        ________________________________________________________

  To update an input flag, type the flag name and the flag value.
   If not conclusive, program will then prompt you for input.
   Useful commands: HELP (for help); QUIT,EXIT (to finish);
   UNDO (undo previous command); BACK (go back to the last flag).
 ================================================================
 ========:
cal
 :========
        ________________________________________________________


  The current Calculation type is ==: ENERGY 
 Valid types are: 
 1) ENERGY              -- Compute energy only
 2) GRADIENT            -- Compute energy and gradient
 3) OPTIMIZE            -- Perform geometry optimization
 4) FREQUENCY           -- Compute harmonic frequencies at input geometry
 5) OPTIMIZE_FREQUENCY  -- Optimization followed by frequencies
 ========:
help
 :========


        ___________DMol / Dialog / Interactive Input Help_______


      You are being asked to input value of the keyword;
                you can do this in various ways:
   1) Just type the value or any part of the value name;
      if however, there are two values with the same beginning,
      Dialog will ask you to be more specific and to repeat the value
   2) You can enter the number of the value from the list of available values;
      in some cases, when the number or a string is a value, enter this value
   3) Just enter blank and then Dialog will take default


      Dialog will try to check if your entered value is correct one;
      if it is not an allowed value, then will ask to repeat input

        ________________________________________________________


  The current Calculation type is ==: ENERGY 
 Valid types are: 
 1) ENERGY              -- Compute energy only
 2) GRADIENT            -- Compute energy and gradient
 3) OPTIMIZE            -- Perform geometry optimization
 4) FREQUENCY           -- Compute harmonic frequencies at input geometry
 5) OPTIMIZE_FREQUENCY  -- Optimization followed by frequencies
 ========:
3
 :========
  
                      Current Flags:
  
        Your last change is marked by ** 
  
        ________________________________________________________

 ** Calculate  OPTIMIZE                     Basis     DNP 
    Geometry   CAR     ANGSTROM             Symmetry  C2v 
    Spin       RESTRICTED                   Charge    0.000000  
    Occupation DEFAULT 

    Integration_Grid MEDIUM 
                                            Functionals       VWN 

    Electric_Field  OFF 
    Point_Charges   OFF 
    Solvate         OFF 

    Electrostatic_Moments OFF               Mulliken_Analysis    0 
                                            Bond_Order           OFF
                                            Hirshfeld_Analysis   0  
                                            ESP_Charges          OFF
                                            Nuclear_EFG          OFF
    Optical_Absorption    OFF 
    Plot  OFF 

    Ndiff      1                            Vibdiff    0.010000 
    Project    ON                           FrqRestart OFF 
    Frozen     INNER_CORE                   Lmax  DEFAULT 
    Fixoc      1000                         Print OFF 

    Smear            0.000000               SCF_Energy_Convergence  0.000001 
    Number_Bad_Steps 9                      SCF_Density_Convergence OFF 
    SCF_Iterations   25                     Direct_SCF    ON 
    Mixing_Alpha     0.250000               Partial_DOS   OFF 
    Diis             4 
    Mixing_Beta      0.250000               SCF_Restart   OFF 

    Locate                MINIMUM 
    Opt_Coordinate_System AUTO              Opt_Print                2 
    Opt_Use_Symmetry      ON                Gradient_Convergence     0.001000 
    Hessian_Update        BFGS              Displacement_Convergence 0.001000 
    Hessian_File          OFF       
    GDIIS                 OFF               Opt_Energy_Convergence   0.000010 
    Opt_Cycles            20                Max_Displacement         0.300000 

        ________________________________________________________

  To update an input flag, type the flag name and the flag value.
   If not conclusive, program will then prompt you for input.
   Useful commands: HELP (for help); QUIT,EXIT (to finish);
   UNDO (undo previous command); BACK (go back to the last flag).
 ================================================================
 ========:
quit
 :========
  All flags processed. Writing input deck ==> water.input                                       
You may write a short or full input file: 
  short     -  has basic and nondefault keyword values
  full      -  has all the keyword values

Do you want to write only short input (YES) or full input (NO):

 ========:
y
 :========
  
  Exit DMol-Dialog 
 
 
 ************************************************************** 
 
 Now requesting data for job submission.
 
 
Enter scratch directory (where the job will be run)
Scratch directory is defined with respect to the current directory:
 
   <RETURN>  =  /usr2/people/jwa/dmol3/dialog/test 
>>water1
 
 Directory could not be found - I will create ==: water1
 
 
 Error output will be in water.stderr
 
 ************************************************************** 
 
 Please decide how you want to dispose of Dmol result files?
 
Enter storage directory (where the output files will be saved)
Storage directory is defined with respect to the current directory:
 
   <RETURN>  =  /usr2/people/jwa/dmol3/dialog/test 
>>water2
 
 Directory could not be found - I will create ==: water2
 
 
 Dmol output will be stored in the ==: water2 directory
 
 ************************************************************** 
 
 Which files do you want to save?
 
Enter the number of the chosen option:
 
 0) leave all the files in ==: water1 directory
    (you need that to continue frequency calculations)
    (or to keep your files for visualization)
 1) copy DMol outmol and car file to ==:  water2 directory 
 2) in addition copy Hessian restart (hessian) and Cosmo file 
 3) in addition copy DMol SCF restart (tpotl) file 
 
>>3
 
 ************************************************************** 
 
Do you wish to delete directory ==: water1 after run is completed?
Enter  (Y or N)
 Careful, did you save all the files you will need?
 
>>y
 
 Script to run DMol ==: water.job is ready
Job is being run in: water1.
 
Enter any character to run job; enter <CR> for NO submit.
>>x



The resulting test.job file

Please consult your system administrators for adding NQS-related commands to this .csh script.


# A shell script to run DMol 960
#!/bin/csh -f

#Home directory:
set orig_dir = /usr2/people/jwa/dmol3/dialog/test
cd $orig_dir

set jobname = water

# Run directory:
set run_dir = water1
 mkdir $run_dir
 set jobrun = $run_dir/$jobname

# Copy input files:

foreach i (coord gzmat zmat car mdf inmol input tpotl cosinp hess hessian)
  if (-e $orig_dir/$jobname.$i) then
    cp $orig_dir/$jobname.$i $run_dir
  endif
end

cd $run_dir

# Run DMol:

 dmol $jobname

# Copy output files:

 cd $orig_dir

set store_dir = water2
 mkdir $store_dir

  if (-e $jobrun.outmol) then
    cp $jobrun.outmol $store_dir
  endif
  if (-e $jobrun.car) then
    cp $jobrun.car  $store_dir
  endif
  if (-e $jobrun.hessian) then
    cp $jobrun.hessian  $store_dir
  endif
  if (-e $jobrun.cosmo) then
    cp $jobrun.cosmo  $store_dir
  endif
  if (-e $jobrun.tpotl) then
    cp $jobrun.tpotl $store_dir
  endif

# Remove working directory:

    rm -rf water1

# exit DMol job script


The resulting test.input file

This is the short version of the file.


#  geometry optimization of water                                                  
#  
Product DMol
Version 960


Calculate    OPTIMIZE 
Basis        DNP 
Symmetry     C2v 
Spin         RESTRICTED 
Charge       0.000000 
Functionals           VWN 
Integration_Grid      MEDIUM 
Frozen       INNER_CORE 
Lmax         DEFAULT



Use of the new geometry optimizer/transition state finder in standalone mode

OPTIMIZE is easiest to use via the Insight interface, in which case all necessary input is processed by the Insight job submission script. In standalone mode, all input keywords must be provided in an input file called run_name.input.

OPTIMIZE keywords in the .input file

All the OPTIMIZE keywords are contained in the DMol .input file and are documented in Commands--Standalone Mode. Old and new keyword names are correlated in Cross-Index of Old and New Keywords.

Fixed Cartesian coordinates

Cartesian coordinates are input between the keywords Fixed and Endfix in format I4,2X,A3 where the integer refers to which atom is being constrained in the order it appears in the .car file, and the character string can be any of X, Y, or Z, depending on which coordinates of the atom are to be fixed.

Dummy atoms

All dummy atoms (pseudoatoms) are defined with reference to a list of real atoms, and dummy atom coordinates are generated from the coordinates of the real atoms in its defining list. There are two types of dummy atom:

  1. Positioned at the arithmetic mean of the up to 7 real atoms in the defining list.

  2. Positioned a unit distance along the normal to a plane defined by 3 atoms, centered on the middle atom of the 3.

Dummy atoms are input between the keywords Dummy and Enddum in format I4,2X,I4,2X,7I4. The first integer is the atom identifier; this should start at one higher than the number of real atoms in the .car file. The second integer is the dummy atom type: 1 or 2 as defined above. Finally, give a list of atoms that define the dummy atom position.

Dummy atoms are used only to help define constraints.

Constraints

Constraints are input between the keywords Constraint and Endcon in format 4I4,F20.10. For a distance constraint two atoms are given; for an angle constraint three (the middle atom is the apex of the angle); and for a dihedral angle constraint four. The atom definitions must start in the first field; thus, for a distance constraint there should two integers, then two blanks, followed by the constraint value. Distances are in angstroms and angles in degrees.


Point group symmetry in standalone mode

The snap_to_sym utility is provided to aid standalone DMol users in transforming their molecules to the right framework for use of symmetry. This executable takes a .car file and a symmetry threshold and snaps the coordinates so that the molecule obeys the calculated point group. It also translates the molecule so that the center of mass is at the origin. The resulting point group label is displayed so that it may be placed in the .input file. This process can also be done automatically by specifying the AUTO option for the Symmetry keyword in the DMol input file. DMol transforms the system automatically according to the point group of the molecule.

The snap_to_sym standalone utility accepts these command-line options:

>	snap_to_sym run_name [threshold -poll -no_xform pchg_file]
where this argument is required:

and these are optional (indicated by square brackets):


COSMO--solvation effects

A DMol/COSMO run can be set up in standalone mode, completely outside the Insight environment. To do this you need two files: a DMol command input file (run_name.input) and a COSMO input file (run_name.cosinp or any name). Both the .input and .cosinp files can be created by invoking the interactive dmol_master script and the dialog interface. In addition, dmol_master allows you to submit a DMol/COSMO job.

The .input file differs from the usual DMol .input file in that the value of the Solvate parameter is changed and the name of the COSMO input file is added.

For example, a DMol/COSMO calculation for the water molecule requires the following changes in the DMol .input file:


Solvate     cosmo
cosmo     water.cosinp


The COSMO input file can be created using a dialog session. An example of a dialog session for a water molecule is given below. After the dialog program is invoked and the geometry of the molecule is assigned, you can select the Solvate keyword. The following explanatory message appears (bold type indicates user input):


  The current value of Solvate keyword is  ==: OFF 
 Valid values are:
 1) OFF    -- no solvation effects
 2) ON     -- include effects of the solvent using COSMO
 3) COSMO  -- include effects of the solvent using COSMO
 ========:
2
 :========

 COSMO input file -- .cosinp will be created.
 The current COSMO parameters are used:

___________________________________________________
 Dielectric Constant (eps) =  78.40 Basic Grid Size (nppa)    =  1082
 Number of Segments (nspa)  =  162   Solvent Radius (rsolv)    = 1.00
 A-Matrix Cutoff (disex)   = 7.0 Radius Increment (radd)   =  0.2
 Non-Electrostatic Energy  = A+B*area;
 A (ane) =  1.67274;  B (bne) =  0.020520

 The current van der Waals radii are:

 atomic symbol and radius:=   1      O         1.36000
 atomic symbol and radius:=   2      H         1.0800

___________________________________________________
 Do you wish to modify these COSMO parameters (NO, default)?

 If YES then enter the full name of the parameter you want to change, e.g.,
 to set new value of Dielectric Constant enter:   eps value

 To modify van der Waals radii of the element enter:
 element_symbol new_van_der_Waals_radius  (e.g.:  O  1.45)


 This information will help you to select COSMO parameters:

==: Dielectric constants of typical solvents are:
   acetone (20.7)      benzene (2.274)               chlorobenzene (5.621)
   chloroform (4.806)  cyclohexane (2.015)           ethyl ether (4.335)
   methanol (32.63)    tetrachloromethane (2.228)    water (78.40)
   infinity (1000.0)

==: The allowed values of nppa and nspa are:
   12,32,42,92,122,162,272,362,482,642,812,1082,1442,1922
   Number of Segments (nspa) should be < Basic Grid Size (nppa)

==: Solvent Radius (rsolv) should be  0.1 < rsolv < 2.0

==: A-Matrix Cutoff (disex) should be > 2.0

==: Radius Increment (radd) should be -0.2 < rsolv < 2.0
 ========:


The meanings of the COSMO keywords are self-explanatory. After the input files have been written, the dmol script may be invoked as usual.


ESP-fitted charges

A DMol run that includes ESP fitting can be set up in standalone mode. To do this, you need to set the ESP_Charges keyword. The standalone mode allows for more flexibility in controlling the details of calculations.

You can choose nondefault values for the atomic radii, grid spacing, and layer border diffusion parameter and can select initial or fixed values for the atomic charges. This can be accomplished by providing an espfit.inp input file (HSOH example including ESP-fitted point charges). This file can be located in your current working directory, your home directory, or the $BIOSYM/data/dmol directory. In fact, the default values are contained in the espfit.inp input file located in the $BIOSYM/data/dmol directory. The contents of this file are listed under Default espfit.inp file contents. The default values are included in the DMol program as well, so there is no need to have any espfit.inp file to run the calculations.


Notes on point charges

Point charges are now fully supported in DMol. Standalone users can easily access the point charge functionality by using the Point_Charges keyword to specify the point charge file. The point charge file can be in the form of a .car file or in a generic .pchg format. The .pchg format is:


@PCHARGES
number-of-charges (for this example, 2)
X Y Z CHARGE
X Y Z CHARGE


Where number of charges is an integer corresponding to the number of charges, and all fields are in floating-point format.

We do not recommend using point charges with symmetry, although DMol allows this. If you nevertheless use point charges with symmetry, you will have to validate that the resulting system still exhibits the desired symmetry.




Last updated September 25, 1997 at 03:14PM PDT.
Copyright © 1997, Molecular Simulations, Inc. All rights reserved.