User Tools

Site Tools


example:structure_optimization

This is an old revision of the document!


Here we describe how to perform structure optimization of a simple molecule using new version of Fireball. These are minimal steps required to optimize atomic structure using quenching optimization method:


define atomic structure

In this particular case, we are going to optimize atomic structure of [http://en.wikipedia.org/wiki/Diarylethene Dithienylethene] molecule. Initial configuration is written in a file with an arbitrary name e.g. 'initial.bas'

   22
   1      -4.9733425385 -1.5889446414 -0.6324262614
   1      -3.5407118660 1.9647924939 0.0295048409
   1      -1.2425048935 3.4347884406 0.1880405389
   1      -0.4883657050 -0.0307476937 -1.4365138827
   1      0.4883442161 -0.0307175904 1.4365127074
   1      1.2424716028 3.4348261025 -0.1879964427
   1      3.5407067601 1.9648329703 -0.0295429145
   1      4.9733510894 -1.5889481906 0.6324807825
   6      -3.2259570193 -0.1187553365 0.1227953048
   6      -2.8463998459 1.1491909656 0.0196177528
   6      -1.4086936247 1.3589710806 -0.0822094116
   6      -0.7300575245 2.5041053928 0.0366849646
   6      -0.6563976212 0.0654235722 -0.3703685714
   6      0.6563995457 0.0654301045 0.3703705700
   6      0.7300443321 2.5041165409 -0.0366782638
   6      1.4086854525 1.3589852923 0.0821935312
   6      2.8464056724 1.1492164454 -0.0196277792
   6      3.2259671922 -0.1187335668 -0.1227750796
   16      -1.8486925311 -1.3226946514 0.1183120883
   16      1.8486919128 -1.3226609144 -0.1182720601
   16      -4.9269798064 -0.6874300708 0.3778441339
   16      4.9269717770 -0.6874703584 -0.3778194289

edit input file //fireball.in//

The 'fireball.in' input file provides control over what sort of calculation will be done. If the file is not presented, fireball run default task with predefined parameters. Complete list of all choices can be found here. In our particular case, 'fireball.in' file looks like:

&OPTION
basisfile = initial.bas
nstepf = 5000
iquench = -1
icluster = 1
dt = 0.5
&END
&OUTPUT
iwrtxyz = 1
&END

where <br \> keyword 'basisfile' defines name of file with an initial atomic configuration; <br \> keyword 'nstepf' sets maximal number of time steps; <br \> keyword 'iquench' type of structure optimization; <br \> keyword 'icluster' defines type of boundary conditions (here no periodicity); <br \> keyword 'dt' is time step in femtoseconds; <br \> keyword 'iwrtxyz' allows save history of atomic trajectories during optimization proces into xyz-format output file ' answer.xyz'


* link to tabulated electronic integral Fdata To initiate Fireball run, we need to create Fdata directory in working directory, which contains all electronic integrals to build up Hamiltonian for each geometry. These integrals has to be calculated in advance by create module. Once we have these data, usually we create 'Fdata' dir via symbolic link ln -s $CURRENT_DIR_Fdata Fdata


run optimization process

Initiate Fireball run we need to execute binary file fireball.x. Usually we do that via shell script e.g. named run.bat:

 rm -fr CHARGES *.xv *.ac *.xyz\\
 $DIR_FIR/fireball.x

to run code we simply type in command line:
./run.bat > out &;
this command run fireball on background.


output

Status of optimization process we can follow by simple command:
grep “+++” out

You'll obtain on your screen comprehensive information how close optimization criteria are to used convergence tolerance:

 ++++ iter =      244 Etot=    -125.75780733 Fi_max=       0.051624
  +++ Etot  RES =      0.00006208  TOL =       0.00010000   CONVERGED 
  +++ Fmax  RES =      0.05162403  TOL =       0.05000000   NOT CONVERGED 
 ++++ iter =      245 Etot=    -125.75783474 Fi_max=       0.050696
  +++ Etot  RES =      0.00060299  TOL =       0.00010000   NOT CONVERGED 
  +++ Fmax  RES =      0.05069560  TOL =       0.05000000   NOT CONVERGED 
 ++++ iter =      246 Etot=    -125.75780865 Fi_max=       0.049891
  +++ Etot  RES =      0.00057405  TOL =       0.00010000   NOT CONVERGED 
  +++ Fmax  RES =      0.04989075  TOL =       0.05000000   CONVERGED 
 ++++ iter =      247 Etot=    -125.75780503 Fi_max=       0.049054
  +++ Etot  RES =      0.00007959  TOL =       0.00010000   CONVERGED 
  +++ Fmax  RES =      0.04905359  TOL =       0.05000000   CONVERGED 
  +++++  Quenching  process converged  +++++ 

final optimized structure

Current optimized structure is placed in 'answer.bas' file and it can be directly used as input file for a next run.

        22
 1     -4.725762     -2.015808     -0.087119
 1     -3.609256      1.985578      0.023008
 1     -1.250107      3.495166      0.140739
 1     -0.483272     -0.086442     -1.465570
 1      0.482065     -0.087248      1.464818
 1      1.250232      3.495031     -0.140569
 1      3.608862      1.985817     -0.022156
 1      4.726247     -2.015096      0.089315
 6     -3.250443     -0.108624      0.117464
 6     -2.866935      1.174479     -0.002012
 6     -1.446633      1.401806     -0.116652
 6     -0.725770      2.542664      0.011912
 6     -0.661669      0.090882     -0.382848
 6      0.661445      0.090614      0.382310
 6      0.725933      2.542528     -0.011857
 6      1.446565      1.401528      0.116997
 6      2.866829      1.174498      0.002597
 6      3.250469     -0.108498     -0.117342
16     -1.881528     -1.338913      0.093151
16      1.881703     -1.339239     -0.092984
16     -4.948018     -0.711555      0.385735
16      4.947941     -0.711661     -0.386126
example/structure_optimization.1257585301.txt.gz · Last modified: 2011/02/18 13:14 (external edit)