This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
example:structure_optimization [2009/11/07 10:10] jelen |
example:structure_optimization [2011/02/18 13:13] (current) |
||
---|---|---|---|
Line 2: | Line 2: | ||
These are minimal steps required to optimize atomic structure using quenching optimization method: | These are minimal steps required to optimize atomic structure using quenching optimization method: | ||
- | ---- | ||
- | * define atomic structure | + | |
+ | ===== atomic structure ===== | ||
In this particular case, we are going to optimize atomic structure of [http://en.wikipedia.org/wiki/Diarylethene Dithienylethene] molecule. | 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''' | + | Initial configuration is written in a file with an arbitrary name e.g. //initial.bas// |
- | 22 | + | 22 |
1 -4.9733425385 -1.5889446414 -0.6324262614 | 1 -4.9733425385 -1.5889446414 -0.6324262614 | ||
1 -3.5407118660 1.9647924939 0.0295048409 | 1 -3.5407118660 1.9647924939 0.0295048409 | ||
Line 31: | Line 32: | ||
16 -4.9269798064 -0.6874300708 0.3778441339 | 16 -4.9269798064 -0.6874300708 0.3778441339 | ||
16 4.9269717770 -0.6874703584 -0.3778194289 | 16 4.9269717770 -0.6874703584 -0.3778194289 | ||
- | </pre> | ||
- | ---- | ||
- | * 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: | ||
- | <pre> | ||
- | &OPTION | ||
- | basisfile = initial.bas | ||
- | nstepf = 5000 | ||
- | iquench = -1 | ||
- | icluster = 1 | ||
- | dt = 0.5 | ||
- | &END | ||
- | &OUTPUT | ||
- | iwrtxyz = 1 | ||
- | &END | ||
- | </pre> | ||
- | where <br \> | + | ===== input file ===== |
- | keyword '''basisfile''' defines name of file with an initial atomic configuration; <br \> | + | |
- | keyword '''nstepf''' sets maximal number of time steps; <br \> | + | 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. |
- | keyword '''iquench''' type of structure optimization; <br \> | + | In our particular case, //fireball.in// file looks like: |
- | keyword '''icluster''' defines type of boundary conditions (here no periodicity); <br \> | + | |
- | keyword '''dt''' is time step in femtoseconds; <br \> | + | |
+ | &OPTION | ||
+ | basisfile = initial.bas | ||
+ | nstepf = 5000 | ||
+ | iquench = -1 | ||
+ | icluster = 1 | ||
+ | dt = 0.5 | ||
+ | &END | ||
+ | &OUTPUT | ||
+ | iwrtxyz = 1 | ||
+ | &END | ||
+ | |||
+ | |||
+ | where\\ | ||
+ | keyword '''basisfile''' defines name of file with an initial atomic configuration;\\ | ||
+ | keyword '''nstepf''' sets maximal number of time steps; \\ | ||
+ | keyword '''iquench''' type of structure optimization; \\ | ||
+ | keyword '''icluster''' defines type of boundary conditions (here no periodicity); \\ | ||
+ | keyword '''dt''' is time step in femtoseconds; \\ | ||
keyword '''iwrtxyz''' allows save history of atomic trajectories during optimization proces into xyz-format output file ''' answer.xyz''' | keyword '''iwrtxyz''' allows save history of atomic trajectories during optimization proces into xyz-format output file ''' answer.xyz''' | ||
- | ---- | ||
- | * link to tabulated electronic integral Fdata | + | |
+ | ===== Fdata ===== | ||
To initiate Fireball run, we need to create Fdata directory in working directory, which contains all electronic integrals | 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. | 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'' | + | 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 | ||
+ | |||
- | * run optimization process | + | to run code we simply type in command line: |
- | Initiate Fireball run we need to execute binary file ''fireball.x''. Usually we do that via shell script e.g. named ''run.bat'': | + | |
- | <pre> | + | ./run.bat > out & |
- | rm -fr CHARGES *.xv *.ac *.xyz | + | |
- | $DIR_FIR/fireball.x | + | |
- | </pre> | + | |
- | to run code we simply type in command line:<br \> | ||
- | '' ./run.bat > out &'';<br \> | ||
this command run fireball on background. | this command run fireball on background. | ||
- | ---- | ||
- | * output | ||
- | Status of optimization process we can follow by simple command:<br \> | ||
- | '' grep "+++" out''<br \> | ||
- | You'll obtain on your screen comprehensive information how close optimization criteria are to used convergence tolerance:<br \> | + | ===== output ===== |
- | <pre> | + | |
+ | 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 | ++++ iter = 244 Etot= -125.75780733 Fi_max= 0.051624 | ||
+++ Etot RES = 0.00006208 TOL = 0.00010000 CONVERGED | +++ Etot RES = 0.00006208 TOL = 0.00010000 CONVERGED | ||
Line 103: | Line 112: | ||
+++ Fmax RES = 0.04905359 TOL = 0.05000000 CONVERGED | +++ Fmax RES = 0.04905359 TOL = 0.05000000 CONVERGED | ||
+++++ Quenching process converged +++++ | +++++ Quenching process converged +++++ | ||
- | </pre> | ||
- | ---- | ||
- | * 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. | ||
- | <pre> | + | |
+ | ===== 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 | 22 | ||
1 -4.725762 -2.015808 -0.087119 | 1 -4.725762 -2.015808 -0.087119 | ||
Line 134: | Line 144: | ||
16 -4.948018 -0.711555 0.385735 | 16 -4.948018 -0.711555 0.385735 | ||
16 4.947941 -0.711661 -0.386126 | 16 4.947941 -0.711661 -0.386126 | ||
- | </pre> | + | |