Statistiques
| Branche: | Tag: | Révision :

dockonsurf / docs / source / inp_ref_manual.rst @ cf980c86

Historique | Voir | Annoter | Télécharger (15,31 ko)

1
Input file reference manual
2
===========================
3

    
4
DockOnSurf execution is controlled by the edition of an input file. In this
5
file, all the mandatory and optional parameters are specified using a keyword
6
= value pair. An example of such file is provided in
7
``dockonsurf/examples/dockonsurf.inp``.
8

    
9
Keywords must be specified under one of the four existing
10
sections: ``Global``, ``Isolated``, ``Screening`` and ``Refinement``, the last
11
three corresponding to the stages DockOnSurf consist on. Keywords can be
12
classified in three categories:
13

    
14
* *mandatory*, for which its value must always be provided (eg. **run_type**)
15
* *keyword-dependent*, for which specification is only mandatory depending on
16
  the value of another keyword (eg. **subm_script** keyword is mandatory if
17
  **batch_q_sys** has a value different than "False")
18
* *optional*, for which a default value is assigned when the keyword is not
19
  given any value (eg. **max_structures**).
20

    
21
Although none of the three stages is compulsory for a DockOnSurf execution, the
22
necessary keywords for each of the stages will be also considered as mandatory.
23
They are mandatory in the case of running such stage.
24

    
25
For some keywords, the use of more than one value is possible. In order to
26
separate such values, a whitespace (" "), a comma (",") or a semicolon (";") can
27
all be used. Some values need to be specified in groups (eg. each of the three
28
vectors of the cell matrix). In such case groups are defined by enclosing the
29
elements around parentheses-like characters: "()", "[]" or "{}". (eg. "(a1,
30
a2,a3) [b1 b2 b3] {c1;c2; c3}").
31

    
32
Global
33
^^^^^^
34
Parameters in this section have an effect on the entire DockOnSurf execution.
35

    
36
| **batch_q_sys** (*mandatory*): The scheduler managing the job submission in
37
  the computing center. If set to "False" DockOnSurf will perform a dry run,
38
  where all structures and the directory hierarchy will be created but no job
39
  will be submitted/run.
40
| Accepted values: "SGE", "LSF", "SLURM" or "False".
41

    
42
| **code** (*mandatory*): The program to carry out the geometry optimizations.
43
| Accepted values: "CP2K" or "VASP".
44

    
45
| **max_jobs** (*optional*): The maximum number of jobs in a certain status:
46
  running ("r"), pending/queued ("p" or "q"), or the sum of both ("rp" or "rq").
47
| Accepted values: positive integers together to the letters defining the
48
  status (eg. "7r", "5p" or "10r 5q 12rq"), or "False". Combination of different
49
  values is possible. Default value: False
50

    
51
| **pbc_cell** (*optional*): The cell to which Periodic Boundary conditions is
52
  going to be applied. It's used in the detection of collisions and dissociation
53
  of hydrogen atoms.
54
| Accepted values: The cell matrix: (a1 a2 a3) (b1 b2 b3) (c1 c2 c3) or
55
  "False". Default value: False
56

    
57
.. note:: When using VASP as code, the PBC cell must be provided either through
58
  the *pbc_cell* keyword or inside the coordinates file. (eg. POSCAR/CONTCAR)
59

    
60
| **potcar_dir** (*optional*): The path to the directory containing all the
61
  elements with their corresponding POTCAR files.
62
| Accepted values: The path of a directory (eg. /home/cmarti/potcars/) or
63
  "False". Default value: False
64

    
65
| **project_name** (*optional*): The name of the project. It will appear in the
66
  job names of the submitted calculations.
67
| Accepted values: all. Default value: *nothing*
68

    
69
| **run_type** (*mandatory*): Type of run that you want to perform.
70
  It will activate the execution of each of the different stages.
71
| Accepted values: Isolated, Screening, Refinement, Full = Isolated +
72
  Screening + Refinement, Adsorption = Screeng + Refinement. More than
73
  one value can be specified separated by (Isolated Screening
74

    
75
| **special_atoms** (*optional*): Non-standard atom types defined in the
76
 coordinates file together with the standard atom it is related to grouped
77
 inside parentheses.
78
| Accepted values: groups of parentheses containing each a couple of
79
  non-standard, standard chemical symbol. (eg. (Fe1 Fe) (Fe2 Fe) (O1 O)),
80
  or "False". Default value: False
81

    
82
| **subm_script** (*keyword-dependent*): The script for the job submission.
83
| Mandatory if *batch_q_sys* is not set to "False".
84
| Accepted values: The name/path of the file.
85

    
86
Isolated
87
^^^^^^^^
88
Parameters in this section have an effect on the Isolated stage.
89

    
90
| **isol_inp_file** (*mandatory*): The input file to be used for the chosen code
91
  in order to carry out the geometry optimization.
92
| Accepted values: The name/path of the file.
93

    
94
| **molec_file** (*mandatory*): The file containing the coordinates of the
95
  molecule. Accepted formats: see https://wiki.fysik.dtu.dk/ase/ase/io/io.html
96
| Accepted values: The name/path of the file.
97

    
98
| **num_conformers** (*optional*): The number of raw conformers to generate
99
  to later optimize. It is NOT the final number of structures to optimize its
100
  geometry.
101
| Accepted values: Positive integer. Typically among 100 and 10.000. Default
102
  value: 100
103

    
104
| **pre_opt** (*optional*): Which force field should be used to preoptimize the
105
  geometry of the generated conformers in order to correct configurations with
106
  unreasonable geometries.
107
| Accepted values: "MMFF", "UFF" or "False". Default value: MMFF
108

    
109
Screening
110
^^^^^^^^^
111
Parameters in this section have an effect on the Screening stage.
112

    
113
| **adsorption_height** (*optional*): The height at which the adsorbate should
114
  be placed above the surface. Units: Ångstroms.
115
| Accepted values: Positive decimal number. Default Value: 2.5
116

    
117
| **collision_threshold** (*optional*): When detecting atomic clashes with the
118
  collision of spheres method, *collision_threshold* sets the  coefficient by
119
  which the covalent radius of each atom should be multiplied to get the sphere
120
  radius. When set to False the detection of atomic clashes with the collision
121
  of spheres method is not  carried out.
122
| Accepted values: Positive decimal number or "False". Default Value: False
123

    
124
.. warning:: If both, the *collision_threshold* and *min_coll_height* are set to
125
  "False", atomic clashes will NOT be checked.
126

    
127
| **confs_per_magn** (*optional*): The number of conformers to select per
128
  magnitude/quantity. It selects the conformers with most different values of
129
  the relevant quantity. If the moment of inertia (MOI) is chosen as magnitude,
130
  in **select_magns**,
131
  setting *confs_per_magn* to 1 picks the conformer with the largest value of
132
  moment of inertia, setting it to 2 picks the ones having the largest and the
133
  smallest, setting it to three, the largest, the median and the smallest, and
134
  so on. If energy is chosen as magnitude, setting *confs_per_magn* to 1 picks
135
  the most stable conformer (the smallest value of energy), setting it to 2
136
  picks the ones having the largest and the smallest, setting it to three, the
137
  largest, the median and the smallest, and so on.
138
| Accepted values: Positive integers.
139

    
140
| **exclude_ads_ctr** (*optional*): Whether to exclude the adsorption
141
  center/anchoring point from the atomic clashes detection.
142
| Accepted values: "True" or "False". Default Value: False
143

    
144
| **h_acceptor** (*optional*): Which atom types/indices of the surface act as
145
  proton acceptors.
146
| Accepted values: Chemical symbols of surface atoms, atom indices of surface
147
  atoms or "all". The use of more than one value is possible. Default Value:
148
  all.
149

    
150
| **h_donor** (*optional*): Which atom types/indices of the adsorbate act as
151
  proton donors. When set to "False" dissociation of protons is disabled.
152
| Accepted values: Chemical symbols of adsorbate atoms, atom indices of
153
  adsorbate atoms or "False". The use of more than one value is possible.
154
  Default Value: False.
155

    
156
| **max_helic_angle** (*optional*): The maximum value for the helicopter
157
  rotation of the adsorbate over the surface in degrees (see figure underneath).
158
| Accepted values: Positive decimal number. Default Value: 180.0.
159

    
160
.. image:: dihedral_angle1.png
161
   :scale: 50 %
162
   :align: center
163

    
164
| **max_structures** (*optional*): Maximum number of adsorbate-surface
165
  structures to generate. Structures are chosen randomly.
166
| Accepted values: Positive integer or "False".
167

    
168
.. warning:: When *max_structures* is set, structures are chosen randomly and
169
  reproducibility is not kept.
170

    
171
| **min_coll_height** (*optional*): The minimum height of atoms above the
172
  surface for them to be considered as non-colliding with the surface. It can
173
  only be used if the surface normal is one of the cartesian axes (both positive
174
  and negative).
175
  When set to False the detection of atomic clashes with the minimum height
176
  method is not carried out.
177
| Accepted values: Positive decimal number or "False". Default Value: 1.5
178

    
179
.. warning:: If both the *collision_threshold* and *min_coll_height* are set to
180
  "False", atomic clashes will NOT be checked.
181

    
182
| **molec_ctrs** (*mandatory*): The (groups of) atom indices in the
183
  adsorbate to be used as adsorption centers/anchoring points (ie. the centers
184
  to be placed right above the surface site). When a group of atom indices is
185
  defined by enclosing them inside parentheses-like characters ("()", "[]" or
186
  "{}"), the adsorption center/anchoring point is defined as the average of the
187
  atom's coordinates. It is useful to define π-modes like in ethylene or
188
  benzene.
189
| Accepted values: atom indices of the adsorbate atoms optionally grouped by
190
  enclosing them inside parentheses-like characters ("()", "[]" or "{}").
191
  The use of more than one value is possible.
192

    
193
| **molec_ctrs2** (*keyword-dependent*): The (groups of) atom indices in the
194
  adsorbate to be used as second centers (ie. the atoms used to define dihedral
195
  angles when using the internal set of angles). When a group of atom indices
196
  is defined by enclosing them inside parentheses-like characters ("()", "[]"
197
  or "{}"), the second center is defined as the average of the atom's
198
  coordinates.
199
| Mandatory if **set_angles** is set to "internal".
200
| Accepted values: atom indices of the adsorbate atoms optionally grouped by
201
  enclosing them inside parentheses-like characters ("()", "[]" or "{}").
202
  The number of second centers must be the same than the number of adsorption
203
  centers/anchoring points. Groups of indices count as 1.
204

    
205
| **molec_ctrs3** (*keyword-dependent*): The (groups of) atom indices in the
206
  adsorbate to be used as third centers (ie. the atoms used to define dihedral
207
  angles when using the internal set of angles). When a group of atom indices
208
  is defined by enclosing them inside parentheses-like characters ("()", "[]"
209
  or "{}"), the second center is defined as the average of the atom's
210
  coordinates.
211
| Mandatory if **set_angles** is set to "internal".
212
| Accepted values: atom indices of the adsorbate atoms optionally grouped by
213
  enclosing them inside parentheses-like characters ("()", "[]" or "{}").
214
  The number of third centers must be the same than the number of adsorption
215
  centers/anchoring points. Groups of indices count as 1.
216

    
217
.. image:: internal_angles_centers.png
218
   :scale: 50 %
219
   :align: center
220

    
221
| **sample_points_per_angle** (*optional*): Number of rotations to carry out, in
222
  the orientational sampling, per each of the three angle in the set. The total
223
  number of rotations generated is equal to :math:`n^3 - n(n-1)` where :math:`n`
224
  is the value set for *sample_points_per_angle*.
225
| Accepted values: Positive integers. Default Value: 3.
226

    
227
.. note:: All possible combinations of the three different angles are generated,
228
 leading to :math:`n^3` raw configurations. However, for both, the Euler (in its
229
 x-convention) and the internal set of angles, redundant configurations are
230
 generated with a dependence on the rotations per angle :math:`n`) equal to
231
 :math:`n(n-1)`: In the x-convention of Euler angles,
232
 :math:`(x, 0, 0) \equiv (0, 0 , x)`. In the internal angles, when the bond
233
 angle is flat, all the bond-dihedral angle rotations are ineffective. These
234
 redundant configurations generated both in the Euler and Internal angles are
235
 algorithmically filtered out.
236

    
237
| **screen_inp_file** (*mandatory*): The input file to be used for the chosen
238
  code in order to carry out the geometry optimization.
239
| Accepted values: The name/path of the file.
240

    
241
| **select_magns** (*mandatory*): Which magnitudes/quantities should be used to
242
  select the conformers generated at the ``Isolated`` stage.
243
| Accepted values: "energy" or "MOI".
244

    
245
| **set_angles** (*mandatory*): Which set of angles must be used to perform the
246
  orientational sampling.
247
| Accepted values: "Internal" or "Euler"
248

    
249
| **sites** (*mandatory*): The (groups of) atom indices in the surface to be
250
  used as sites of adsorption (ie. where the adsorbate should be placed on the
251
  surface). When a group of atom indices is defined by enclosing them inside
252
  parentheses-like characters ("()", "[]" or "{}"), the adsorption site is
253
  defined as the average of the atom's coordinates. A single index represents an
254
  atop site, a group of two a bridge site and a group of three a hollow site.
255
| Accepted values: atom indices of the surface atoms optionally grouped, by
256
  enclosing them inside parentheses-like characters ("()", "[]" or "{}").
257
  The use of more than one value is possible.
258

    
259
| **surf_ctrs2** (*keyword-dependent*): The (groups of) atom indices in the
260
  surface to be used as second centers (ie. the atoms used to define dihedral
261
  angles when using the internal set of angles). When a group of atom indices is
262
  defined by enclosing them inside parentheses-like characters ("()", "[]" or
263
  "{}"), the surface second center is defined as the average of the atom's
264
  coordinates.
265
| Mandatory if **set_angles** is set to "internal".
266
| Accepted values: atom indices of the surface atoms optionally grouped, by
267
  enclosing them inside parentheses-like characters ("()", "[]" or "{}").
268
  The use of more than one value is possible.
269

    
270
.. image:: internal_angles_centers.png
271
   :scale: 50 %
272
   :align: center
273

    
274
| **surf_file** (*mandatory*): The coordinates file of the surface to be used
275
  for adsorption. Accepted formats: see
276
  https://wiki.fysik.dtu.dk/ase/ase/io/io.html
277
| Accepted values: The name/path of the file.
278

    
279
| **surf_normal_vect** (*optional*): The direction vector perpendicular to the
280
  surface. This is the direction towards where the adsorbate should be placed
281
  above the surface. The surface normal vector can be automatically guessed
282
  using the ASANN method. This is specially useful for stepped/kinked surfaces
283
  or nanoparticles, where the surface normal has to be defined locally.
284
| Accepted values: a three-dimensional vector (eg. "(1, -2, 4)"), "x", "y", "z",
285
  "-x", "-y", "-z" or "auto". Default value: auto.
286

    
287
| **use_molec_file** (*optional*): Instead of carrying out the ``Screening``
288
  stage using the molecules obtained in ``Isolated``. It uses a single conformer
289
  provided with a coordinates file.
290
| Accepted values: The name/path of the file. Default value: False.
291

    
292
Refinement
293
^^^^^^^^^^
294
Parameters in this section have an effect on the Refinement stage.
295

    
296
| **refine_inp_file** (*mandatory*): The input file to be used for the chosen
297
  code in order to carry out the geometry optimization.
298
| Accepted values: The name/path of the file.
299

    
300
| **energy_cutoff** (*optional*): The results from the screening are read and
301
  all structures corresponding to relative energies below a specified energy
302
  with respect to the most stable structure, are recomputed at a higher level of
303
  theory or accuracy. Units: eV.
304
| Accepted values: Positive decimal number. Default value: 0.5.
305

    
306
.. note:: The *energy_cutoff* must be chosen considering the approximate
307
  adsorption energy. For a given value several low-interacting species may fall
308
  within the energy cutoff, while for the most binding ones, only few of them
309
  may be selected for refinement.