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

dockonsurf / docs / source / inp_ref_manual.rst @ 0969983f

Historique | Voir | Annoter | Télécharger (15,39 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: :ref:`global`, :ref:`isolated`, :ref:`screening` and :ref:`refinement`
11
, the last three corresponding to the stages DockOnSurf consist on. Keywords can
12
beclassified 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
Global
35
^^^^^^
36
Parameters in this section have an effect on the entire DockOnSurf execution.
37

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

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

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

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

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

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

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

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

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

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

    
88
.. _isolated:
89

    
90
Isolated
91
^^^^^^^^
92
Parameters in this section have an effect on the Isolated stage.
93

    
94
| **isol_inp_file** (*mandatory*): The input file to be used for the chosen code
95
  in order to carry out the geometry optimization.
96
| Accepted values: The name/path of the file.
97

    
98
| **molec_file** (*mandatory*): The file containing the coordinates of the
99
  molecule. Accepted formats: see https://wiki.fysik.dtu.dk/ase/ase/io/io.html
100
| Accepted values: The name/path of the file.
101

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

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

    
113
.. _screening:
114

    
115
Screening
116
^^^^^^^^^
117
Parameters in this section have an effect on the Screening stage.
118

    
119
| **adsorption_height** (*optional*): The height at which the adsorbate should
120
  be placed above the surface. Units: Ångstroms.
121
| Accepted values: Positive decimal number. Default Value: 2.5
122

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

    
130
.. warning:: If both, the *collision_threshold* and *min_coll_height* are set to
131
  "False", atomic clashes will NOT be checked.
132

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

    
146
| **exclude_ads_ctr** (*optional*): Whether to exclude the adsorption
147
  center/anchoring point from the atomic clashes detection.
148
| Accepted values: "True" or "False". Default Value: False
149

    
150
| **h_acceptor** (*optional*): Which atom types/indices of the surface act as
151
  proton acceptors.
152
| Accepted values: Chemical symbols of surface atoms, atom indices of surface
153
  atoms or "all". The use of more than one value is possible. Default Value:
154
  all.
155

    
156
| **h_donor** (*optional*): Which atom types/indices of the adsorbate act as
157
  proton donors. When set to "False" dissociation of protons is disabled.
158
| Accepted values: Chemical symbols of adsorbate atoms, atom indices of
159
  adsorbate atoms or "False". The use of more than one value is possible.
160
  Default Value: False.
161

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

    
166
.. image:: dihedral_angle1.png
167
   :scale: 50 %
168
   :align: center
169

    
170
| **max_structures** (*optional*): Maximum number of adsorbate-surface
171
  structures to generate. Structures are chosen randomly.
172
| Accepted values: Positive integer or "False".
173

    
174
.. warning:: When *max_structures* is set, structures are chosen randomly and
175
  reproducibility is not kept.
176

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

    
185
.. warning:: If both the *collision_threshold* and *min_coll_height* are set to
186
  "False", atomic clashes will NOT be checked.
187

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

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

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

    
223
.. image:: internal_angles_centers.png
224
   :scale: 50 %
225
   :align: center
226

    
227
| **sample_points_per_angle** (*optional*): Number of rotations to carry out, in
228
  the orientational sampling, per each of the three angle in the set. The total
229
  number of rotations generated is equal to :math:`n^3 - n(n-1)` where :math:`n`
230
  is the value set for *sample_points_per_angle*.
231
| Accepted values: Positive integers. Default Value: 3.
232

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

    
243
| **screen_inp_file** (*mandatory*): The input file to be used for the chosen
244
  code in order to carry out the geometry optimization.
245
| Accepted values: The name/path of the file.
246

    
247
| **select_magns** (*mandatory*): Which magnitudes/quantities should be used to
248
  select the conformers generated at the :ref:`isolated` stage.
249
| Accepted values: "energy" or "MOI".
250

    
251
| **set_angles** (*mandatory*): Which set of angles must be used to perform the
252
  orientational sampling.
253
| Accepted values: "Internal" or "Euler"
254

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

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

    
276
.. image:: internal_angles_centers.png
277
   :scale: 50 %
278
   :align: center
279

    
280
| **surf_file** (*mandatory*): The coordinates file of the surface to be used
281
  for adsorption. Accepted formats: see
282
  https://wiki.fysik.dtu.dk/ase/ase/io/io.html
283
| Accepted values: The name/path of the file.
284

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

    
293
| **use_molec_file** (*optional*): Instead of carrying out the :ref:`screening`
294
  stage using the molecules obtained in :ref:`isolated`. It uses a single
295
  conformer provided with a coordinates file.
296
| Accepted values: The name/path of the file. Default value: False.
297

    
298
.. _refinement:
299

    
300
Refinement
301
^^^^^^^^^^
302
Parameters in this section have an effect on the Refinement stage.
303

    
304
| **refine_inp_file** (*mandatory*): The input file to be used for the chosen
305
  code in order to carry out the geometry optimization.
306
| Accepted values: The name/path of the file.
307

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

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