digichem-core 6.0.0rc1__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (111) hide show
  1. digichem/__init__.py +75 -0
  2. digichem/basis.py +116 -0
  3. digichem/config/README +3 -0
  4. digichem/config/__init__.py +5 -0
  5. digichem/config/base.py +321 -0
  6. digichem/config/locations.py +14 -0
  7. digichem/config/parse.py +90 -0
  8. digichem/config/util.py +117 -0
  9. digichem/data/README +4 -0
  10. digichem/data/batoms/COPYING +18 -0
  11. digichem/data/batoms/LICENSE +674 -0
  12. digichem/data/batoms/README +2 -0
  13. digichem/data/batoms/__init__.py +0 -0
  14. digichem/data/batoms/batoms-renderer.py +351 -0
  15. digichem/data/config/digichem.yaml +714 -0
  16. digichem/data/functionals.csv +15 -0
  17. digichem/data/solvents.csv +185 -0
  18. digichem/data/tachyon/COPYING.md +5 -0
  19. digichem/data/tachyon/LICENSE +30 -0
  20. digichem/data/tachyon/tachyon_LINUXAMD64 +0 -0
  21. digichem/data/vmd/common.tcl +468 -0
  22. digichem/data/vmd/generate_combined_orbital_images.tcl +70 -0
  23. digichem/data/vmd/generate_density_images.tcl +45 -0
  24. digichem/data/vmd/generate_dipole_images.tcl +68 -0
  25. digichem/data/vmd/generate_orbital_images.tcl +57 -0
  26. digichem/data/vmd/generate_spin_images.tcl +66 -0
  27. digichem/data/vmd/generate_structure_images.tcl +40 -0
  28. digichem/datas.py +14 -0
  29. digichem/exception/__init__.py +7 -0
  30. digichem/exception/base.py +133 -0
  31. digichem/exception/uncatchable.py +63 -0
  32. digichem/file/__init__.py +1 -0
  33. digichem/file/base.py +364 -0
  34. digichem/file/cube.py +284 -0
  35. digichem/file/fchk.py +94 -0
  36. digichem/file/prattle.py +277 -0
  37. digichem/file/types.py +97 -0
  38. digichem/image/__init__.py +6 -0
  39. digichem/image/base.py +113 -0
  40. digichem/image/excited_states.py +335 -0
  41. digichem/image/graph.py +293 -0
  42. digichem/image/orbitals.py +239 -0
  43. digichem/image/render.py +617 -0
  44. digichem/image/spectroscopy.py +797 -0
  45. digichem/image/structure.py +115 -0
  46. digichem/image/vmd.py +826 -0
  47. digichem/input/__init__.py +3 -0
  48. digichem/input/base.py +78 -0
  49. digichem/input/digichem_input.py +500 -0
  50. digichem/input/gaussian.py +140 -0
  51. digichem/log.py +179 -0
  52. digichem/memory.py +166 -0
  53. digichem/misc/__init__.py +4 -0
  54. digichem/misc/argparse.py +44 -0
  55. digichem/misc/base.py +61 -0
  56. digichem/misc/io.py +239 -0
  57. digichem/misc/layered_dict.py +285 -0
  58. digichem/misc/text.py +139 -0
  59. digichem/misc/time.py +73 -0
  60. digichem/parse/__init__.py +13 -0
  61. digichem/parse/base.py +220 -0
  62. digichem/parse/cclib.py +138 -0
  63. digichem/parse/dump.py +253 -0
  64. digichem/parse/gaussian.py +130 -0
  65. digichem/parse/orca.py +96 -0
  66. digichem/parse/turbomole.py +201 -0
  67. digichem/parse/util.py +523 -0
  68. digichem/result/__init__.py +6 -0
  69. digichem/result/alignment/AA.py +114 -0
  70. digichem/result/alignment/AAA.py +61 -0
  71. digichem/result/alignment/FAP.py +148 -0
  72. digichem/result/alignment/__init__.py +3 -0
  73. digichem/result/alignment/base.py +310 -0
  74. digichem/result/angle.py +153 -0
  75. digichem/result/atom.py +742 -0
  76. digichem/result/base.py +258 -0
  77. digichem/result/dipole_moment.py +332 -0
  78. digichem/result/emission.py +402 -0
  79. digichem/result/energy.py +323 -0
  80. digichem/result/excited_state.py +821 -0
  81. digichem/result/ground_state.py +94 -0
  82. digichem/result/metadata.py +644 -0
  83. digichem/result/multi.py +98 -0
  84. digichem/result/nmr.py +1086 -0
  85. digichem/result/orbital.py +647 -0
  86. digichem/result/result.py +244 -0
  87. digichem/result/soc.py +272 -0
  88. digichem/result/spectroscopy.py +514 -0
  89. digichem/result/tdm.py +267 -0
  90. digichem/result/vibration.py +167 -0
  91. digichem/test/__init__.py +6 -0
  92. digichem/test/conftest.py +4 -0
  93. digichem/test/test_basis.py +71 -0
  94. digichem/test/test_calculate.py +30 -0
  95. digichem/test/test_config.py +78 -0
  96. digichem/test/test_cube.py +369 -0
  97. digichem/test/test_exception.py +16 -0
  98. digichem/test/test_file.py +104 -0
  99. digichem/test/test_image.py +337 -0
  100. digichem/test/test_input.py +64 -0
  101. digichem/test/test_parsing.py +79 -0
  102. digichem/test/test_prattle.py +36 -0
  103. digichem/test/test_result.py +489 -0
  104. digichem/test/test_translate.py +112 -0
  105. digichem/test/util.py +207 -0
  106. digichem/translate.py +591 -0
  107. digichem_core-6.0.0rc1.dist-info/METADATA +96 -0
  108. digichem_core-6.0.0rc1.dist-info/RECORD +111 -0
  109. digichem_core-6.0.0rc1.dist-info/WHEEL +4 -0
  110. digichem_core-6.0.0rc1.dist-info/licenses/COPYING.md +10 -0
  111. digichem_core-6.0.0rc1.dist-info/licenses/LICENSE +11 -0
@@ -0,0 +1,714 @@
1
+ # Master silico config file. Uncomment and change options here to affect everyone.
2
+ #
3
+ # Options for controlling the appearance of simulated UV-Vis like absorption spectra.
4
+ # required: False
5
+ #absorption_spectrum:
6
+ # Set to False to disable image rendering.
7
+ # type: wrapper_type, default: True, required: False
8
+ # enable_rendering: true
9
+ #
10
+ # The method used to set the min/max limits of the Y axis.
11
+ # Possible options are:
12
+ # - 'auto': Limits are set automatically so all peaks are clearly visible.
13
+ # - a list of [y_min, y_max], where y_min is the most negative value on the Y axis, and y_max is
14
+ # the most positive value on the Y axis (both in oscillator strength).
15
+ # type: wrapper_type, default: auto, required: False
16
+ # y_limits: auto
17
+ #
18
+ # The method used to set the min/max limits of the X axis.
19
+ # Possible options are:
20
+ # - 'auto': Limits are set automatically so all peaks are clearly visible.
21
+ # - a list of [x_min, x_max], where x_min is the most negative value on the X axis, and x_max is
22
+ # the most positive value on the X axis (both in nm).
23
+ # type: wrapper_type, default: auto, required: False
24
+ # x_limits: auto
25
+ #
26
+ # The maximum image width in pixels.
27
+ # Absorption graphs will grow/shrink their width to fit available data, keeping a constant scale
28
+ # (constant pixels to nm ratio) but only up to this maximum.
29
+ # To disable the maximum width, set to null.
30
+ # type: wrapper_type, default: 1200, required: False
31
+ # max_width: 1200
32
+ #
33
+ # The minimum oscillator strength that a peak must have to be shown in the graph, as a fraction
34
+ # ofthe highest peak.
35
+ # Set to 0 for no cutoff (all peaks shown), which may results in the graph being extended well
36
+ # beyond the drawn peaks (because many peaks are too small to see).
37
+ # This option has no effect when using manual x limits.
38
+ # type: wrapper_type, default: 0.01, required: False
39
+ # peak_cutoff: 0.01
40
+ #
41
+ # The amount (in nm) to extend the x axis past the highest/lowest energy peak.
42
+ # type: wrapper_type, default: 40, required: False
43
+ # x_padding: 40
44
+ #
45
+ # The full-width at half-maximum; changes how wide the drawn peaks are. Note that the choice of
46
+ # peak width is essentially arbitrary; only the peak height is given by calculation. Units are eV.
47
+ # type: wrapper_type, default: 0.4, required: False
48
+ # fwhm: 0.4
49
+ #
50
+ # The minimum y value to plot using the Gaussian function (controls how close to the x axis we
51
+ # draw the gaussian) as a fraction of the max peak height.
52
+ # type: wrapper_type, default: 0.001, required: False
53
+ # gaussian_cutoff: 0.001
54
+ #
55
+ # The spacing between x values to plot using the Gaussian function, in eV. Values that are too
56
+ # large will result in 'curves' made up of a series of straight edges.
57
+ # type: wrapper_type, default: 0.01, required: False
58
+ # gaussian_resolution: 0.01
59
+ #
60
+ # Whether or not to use the jacobian transformation to correctly scale the y-axis (see J. Phys.
61
+ # Chem. Lett. 2014, 5, 20, 3497)
62
+ # type: wrapper_type, default: True, required: False
63
+ # use_jacobian: true
64
+ #
65
+ # Whether to plot vertical bars for each excited state.
66
+ # type: wrapper_type, default: True, required: False
67
+ # plot_bars: true
68
+ #
69
+ # Whether to plot individual Gaussian functions for each excited state.
70
+ # type: wrapper_type, default: False, required: False
71
+ # plot_peaks: false
72
+ #
73
+ # Whether to plot the sum of all Gaussian functions (most closely simulates a real spectrum).
74
+ # type: wrapper_type, default: True, required: False
75
+ # plot_cumulative_peak: true
76
+ #
77
+ # The default alignment method to use, MIN: minimal, FAP: furthest atom pair, AA: average angle,
78
+ # AAA: advanced average angle.
79
+ # default: MIN, choices: ['MIN', 'FAP', 'AA', 'AAA'], required: False
80
+ #alignment: MIN
81
+ #
82
+ # The default angle units to use, deg: degrees, rad: radians.
83
+ # default: deg, choices: ['deg', 'rad'], required: False
84
+ #angle_units: deg
85
+ #
86
+ # A list of database configs.
87
+ # type: wrapper_type, list_type: list, default: [<silico.config.silico.Database_config object at
88
+ # 0x7f668619f970>], required: False
89
+ #databases:
90
+ #- name: main
91
+ # path: ~/.silico/silico.main.db
92
+ #
93
+ # Options for controlling the appearance of simulated emission spectra. 'emission_spectrum' and
94
+ # 'absorption_spectrum 'take the same options.
95
+ # required: False
96
+ #emission_spectrum:
97
+ # Set to False to disable image rendering.
98
+ # type: wrapper_type, default: True, required: False
99
+ # enable_rendering: true
100
+ #
101
+ # The method used to set the min/max limits of the Y axis.
102
+ # Possible options are:
103
+ # - 'auto': Limits are set automatically so all peaks are clearly visible.
104
+ # - a list of [y_min, y_max], where y_min is the most negative value on the Y axis, and y_max is
105
+ # the most positive value on the Y axis (both in oscillator strength).
106
+ # type: wrapper_type, default: auto, required: False
107
+ # y_limits: auto
108
+ #
109
+ # The method used to set the min/max limits of the X axis.
110
+ # Possible options are:
111
+ # - 'auto': Limits are set automatically so all peaks are clearly visible.
112
+ # - a list of [x_min, x_max], where x_min is the most negative value on the X axis, and x_max is
113
+ # the most positive value on the X axis (both in nm).
114
+ # type: wrapper_type, default: auto, required: False
115
+ # x_limits: auto
116
+ #
117
+ # The maximum image width in pixels.
118
+ # Absorption graphs will grow/shrink their width to fit available data, keeping a constant scale
119
+ # (constant pixels to nm ratio) but only up to this maximum.
120
+ # To disable the maximum width, set to null.
121
+ # type: wrapper_type, default: 1200, required: False
122
+ # max_width: 1200
123
+ #
124
+ # The minimum oscillator strength that a peak must have to be shown in the graph, as a fraction
125
+ # ofthe highest peak.
126
+ # Set to 0 for no cutoff (all peaks shown), which may results in the graph being extended well
127
+ # beyond the drawn peaks (because many peaks are too small to see).
128
+ # This option has no effect when using manual x limits.
129
+ # type: wrapper_type, default: 0.01, required: False
130
+ # peak_cutoff: 0.01
131
+ #
132
+ # The amount (in nm) to extend the x axis past the highest/lowest energy peak.
133
+ # type: wrapper_type, default: 40, required: False
134
+ # x_padding: 40
135
+ #
136
+ # The full-width at half-maximum; changes how wide the drawn peaks are. Note that the choice of
137
+ # peak width is essentially arbitrary; only the peak height is given by calculation. Units are eV.
138
+ # type: wrapper_type, default: 0.4, required: False
139
+ # fwhm: 0.4
140
+ #
141
+ # The minimum y value to plot using the Gaussian function (controls how close to the x axis we
142
+ # draw the gaussian) as a fraction of the max peak height.
143
+ # type: wrapper_type, default: 0.001, required: False
144
+ # gaussian_cutoff: 0.001
145
+ #
146
+ # The spacing between x values to plot using the Gaussian function, in eV. Values that are too
147
+ # large will result in 'curves' made up of a series of straight edges.
148
+ # type: wrapper_type, default: 0.01, required: False
149
+ # gaussian_resolution: 0.01
150
+ #
151
+ # Whether or not to use the jacobian transformation to correctly scale the y-axis (see J. Phys.
152
+ # Chem. Lett. 2014, 5, 20, 3497)
153
+ # type: wrapper_type, default: True, required: False
154
+ # use_jacobian: true
155
+ #
156
+ # Whether to plot vertical bars for each excited state.
157
+ # type: wrapper_type, default: True, required: False
158
+ # plot_bars: true
159
+ #
160
+ # Whether to plot individual Gaussian functions for each excited state.
161
+ # type: wrapper_type, default: False, required: False
162
+ # plot_peaks: false
163
+ #
164
+ # Whether to plot the sum of all Gaussian functions (most closely simulates a real spectrum).
165
+ # type: wrapper_type, default: True, required: False
166
+ # plot_cumulative_peak: true
167
+ #
168
+ # Options that control the appearance of excited states energy diagrams.
169
+ # required: False
170
+ #excited_states_diagram:
171
+ # Set to False to disable image rendering.
172
+ # type: wrapper_type, default: True, required: False
173
+ # enable_rendering: true
174
+ #
175
+ # The method used to set the min/max limits of the Y axis.
176
+ # Possible options are:
177
+ # - 'all': Limits are set so all excited states are visible.
178
+ # - 'auto': Limits are set automatically so the lowest excited state of each multiplicity is
179
+ # clearly visible (S1, D1, T1, Q1... N1 etc).
180
+ # - a list of [y_min, y_max], where y_min is the most negative value on the Y axis, and y_max is
181
+ # the most positive value on the Y axis (both in eV).
182
+ # type: wrapper_type, default: all, required: False
183
+ # y_limits: all
184
+ #
185
+ # Whether or not to show the dE(ST) label.
186
+ # type: wrapper_type, default: True, required: False
187
+ # show_dest: true
188
+ #
189
+ # Options specifying paths to various external programs that silico may use. If no path is given,
190
+ # then these programs will simply be executed by name (so relying on OS path resolution to find the
191
+ # necessary executables, which is normally fine.)
192
+ # required: False
193
+ #external:
194
+ # Gaussian's formchk utility https://gaussian.com/formchk/
195
+ # default: formchk, required: False
196
+ # formchk: formchk
197
+ #
198
+ # Gaussian's cubegen utility https://gaussian.com/cubegen/
199
+ # default: cubegen, required: False
200
+ # cubegen: cubegen
201
+ #
202
+ # Options for controlling the appearance of simulated IR like vibrational frequency spectra.
203
+ # required: False
204
+ #IR_spectrum:
205
+ # Set to False to disable image rendering.
206
+ # type: wrapper_type, default: True, required: False
207
+ # enable_rendering: true
208
+ #
209
+ # The method used to set the min/max limits of the Y axis.
210
+ # Possible options are:
211
+ # - 'auto': Limits are set automatically so all peaks are clearly visible.
212
+ # - a list of [y_min, y_max], where y_min is the most negative value on the Y axis, and y_max is
213
+ # the most positive value on the Y axis (both in km/mol).
214
+ # type: wrapper_type, default: auto, required: False
215
+ # y_limits: auto
216
+ #
217
+ # The method used to set the min/max limits of the X axis.
218
+ # Possible options are:
219
+ # - 'auto': Limits are set automatically so all peaks are clearly visible.
220
+ # - a list of [x_min, x_max], where x_min is the most negative value on the X axis, and x_max is
221
+ # the most positive value on the X axis (both in cm-1).
222
+ # type: wrapper_type, default: auto, required: False
223
+ # x_limits: auto
224
+ #
225
+ # The full-width at half-maximum; changes how wide the drawn peaks are. Note that the choice of
226
+ # peak width is essentially arbitrary; only the peak height is given by calculation. Units are
227
+ # cm-1.
228
+ # type: wrapper_type, default: 80, required: False
229
+ # fwhm: 80
230
+ #
231
+ # The maximum image width in pixels.
232
+ # IR spectra will grow/shrink their width to fit available data, keeping a constant scale
233
+ # (constant pixels to nm ratio) but only up to this maximum.
234
+ # To disable the maximum width, set to null.
235
+ # type: wrapper_type, default: 1500, required: False
236
+ # max_width: 1500
237
+ #
238
+ # The minimum y value to plot using the Gaussian function (controls how close to the x axis we
239
+ # draw the gaussian) as a fraction of the max peak height.
240
+ # type: wrapper_type, default: 0.001, required: False
241
+ # gaussian_cutoff: 0.001
242
+ #
243
+ # The spacing between x values to plot using the Gaussian function, in eV. Values that are too
244
+ # large will result in 'curves' made up of a series of straight edges.
245
+ # type: wrapper_type, default: 1.0, required: False
246
+ # gaussian_resolution: 1.0
247
+ #
248
+ # Options relating to output of error messages. Note that the final logging level is determined by
249
+ # combining both 'log_level' and 'verbose', so a 'log_level' of 'OFF' and 'verbose' of '2' is equal
250
+ # to 'ERROR'.
251
+ # required: False
252
+ #logging:
253
+ # The level of messages to output, one of OFF (no logging at all), CRITICAL (fewest messages),
254
+ # ERROR, WARNING, INFO or DEBUG (most messages)
255
+ # default: INFO, choices: ['OFF', 'CRITICAL', 'ERROR', 'WARNING', 'INFO', 'DEBUG'], required:
256
+ # False
257
+ # log_level: INFO
258
+ #
259
+ # Increase the verbosity of the program by this amount. Each integer increase of verbosity will
260
+ # increase 'log_level' by 1 degree.
261
+ # type: wrapper_type, default: 0, required: False
262
+ # verbose: 0
263
+ #
264
+ # Whether to print output from render engines.
265
+ # type: wrapper_type, default: False, required: False
266
+ # render_logging: false
267
+ #
268
+ # Options for controlling simulated NMR spectra
269
+ # required: False
270
+ #nmr:
271
+ # Set to False to disable image rendering.
272
+ # type: wrapper_type, default: True, required: False
273
+ # enable_rendering: true
274
+ #
275
+ # Discard J coupling that is below this threshold (in Hz)
276
+ # type: wrapper_type, default: 1, required: False
277
+ # coupling_filter: 1
278
+ #
279
+ # The full-width at half-maximum; changes how wide the drawn peaks are. Note that the choice of
280
+ # peak width is essentially arbitrary; only the peak height is given by calculation. Units are
281
+ # ppm.
282
+ # type: wrapper_type, default: 0.01, required: False
283
+ # fwhm: 0.01
284
+ #
285
+ # The minimum y value to plot using the Gaussian function (controls how close to the x axis we
286
+ # draw the gaussian) as a fraction of the max peak height.
287
+ # type: wrapper_type, default: 0.001, required: False
288
+ # gaussian_cutoff: 0.001
289
+ #
290
+ # The spacing between x values to plot using the Gaussian function, in ppm. Values that are too
291
+ # large will result in 'curves' made up of a series of straight edges.
292
+ # type: wrapper_type, default: 0.001, required: False
293
+ # gaussian_resolution: 0.001
294
+ #
295
+ # The frequency to run the simulated spectrometer at. Larger values will result in narrower
296
+ # coupling. Units are MHz
297
+ # type: wrapper_type, default: 100, required: False
298
+ # frequency: 100
299
+ #
300
+ # The threshold within which similar peaks will be merged together, before they are split by
301
+ # coupling. This option typically results in faster execution, but more error, compared to
302
+ # post_merge. Units in ppm.
303
+ # type: wrapper_type, default: 0.01, required: False
304
+ # pre_merge: 0.01
305
+ #
306
+ # The threshold within which similar peaks will be merged together. Units in ppm.
307
+ # type: wrapper_type, required: False
308
+ # post_merge: null
309
+ #
310
+ # The chemical shift of a standard reference peak (in ppm) to use to adjust the spectrum. One for
311
+ # each element.
312
+ # type: wrapper_type, default: B: 111.27199999999999
313
+ # C: 197.90316666666664
314
+ # F: 183.2779999999999
315
+ # H: 31.68766666666667
316
+ # P: 290.8630000000001
317
+ # , required: False
318
+ # standards: 'B: 111.27199999999999
319
+ # C: 197.90316666666664
320
+ # F: 183.2779999999999
321
+ # H: 31.68766666666667
322
+ # P: 290.8630000000001
323
+ # '
324
+ #
325
+ # Whether to plot vertical bars for each NMR shift
326
+ # type: wrapper_type, default: False, required: False
327
+ # plot_bars: false
328
+ #
329
+ # Whether to plot vertical bars for each NMR shift in zoomed spectra
330
+ # type: wrapper_type, default: True, required: False
331
+ # plot_zoom_bars: true
332
+ #
333
+ # Isotope specific options. Each key should consist of a tuple of (proton_number, isotope).
334
+ # type: wrapper_type, default: 11B:
335
+ # frequency: 128.3
336
+ # 13C:
337
+ # frequency: 100.6
338
+ # 19F:
339
+ # frequency: 376.5
340
+ # 1H:
341
+ # coupling_filter: 0.001
342
+ # frequency: 400
343
+ # fwhm: 0.005
344
+ # gaussian_resolution: 0.0005
345
+ # pre_merge: 0.0005
346
+ # 31P:
347
+ # frequency: 162.0
348
+ # , required: False
349
+ # isotopes: "11B:\n frequency: 128.3\n13C:\n frequency: 100.6\n19F:\n frequency:\
350
+ # \ 376.5\n1H:\n coupling_filter: 0.001\n frequency: 400\n fwhm: 0.005\n gaussian_resolution:\
351
+ # \ 0.0005\n pre_merge: 0.0005\n31P:\n frequency: 162.0\n"
352
+ #
353
+ # Options that control the appearance of orbital energy diagrams.
354
+ # required: False
355
+ #orbital_diagram:
356
+ # Set to False to disable image rendering.
357
+ # type: wrapper_type, default: True, required: False
358
+ # enable_rendering: true
359
+ #
360
+ # The method used to set the min/max limits of the Y axis.
361
+ # Possible options are:
362
+ # - 'all': Limits are set so all orbitals are visible.
363
+ # - 'auto': Limits are set automatically so the 0 point (ie, 'X' axis), HOMO and LUMO are
364
+ # clearly visible.
365
+ # - 'center': Like 'auto' except the lower limit is set more negative so the HOMO-LUMO are
366
+ # closer to the middle of the diagram.
367
+ # - a list of [y_min, y_max], where y_min is the most negative value on the Y axis, and y_max is
368
+ # the most positive value on the Y axis (both in eV).
369
+ # type: wrapper_type, default: auto, required: False
370
+ # y_limits: auto
371
+ #
372
+ # If True, black lines are drawn around the boarder of the diagram. If False, a line is drawn for
373
+ # the Y axis but not for the other 3 sides of the diagram.
374
+ # type: wrapper_type, default: False, required: False
375
+ # full_axis_lines: false
376
+ #
377
+ # Options for controlling the appearance of 3D molecule images.
378
+ # required: False
379
+ #render:
380
+ # Set to False to disable image rendering.
381
+ # type: wrapper_type, default: True, required: False
382
+ # enable_rendering: true
383
+ #
384
+ # The rendering engine to use
385
+ # default: batoms, choices: ['vmd', 'batoms'], required: False
386
+ # engine: batoms
387
+ #
388
+ # VMD specific options (only applies if engine == 'vmd'
389
+ # required: False
390
+ # vmd:
391
+ # Path to the VMD (Visual Molecular Dynamics) executable
392
+ # default: vmd, required: False
393
+ # executable: vmd
394
+ #
395
+ # The tachyon ray-tracing library, performs the actual rendering. Tachyon is typically packaged
396
+ # with VMD, but often isn't added to the path automatically
397
+ # default: tachyon, required: False
398
+ # tachyon: tachyon
399
+ #
400
+ # The render/display mode, changes the appearance of rendered molecules/orbitals.
401
+ # Possible options are:
402
+ # pastel: The default style, uses light, pastel-ish colours for orbitals with low transparency.
403
+ # Normal atom colours.
404
+ # light-pastel: Similar to pastel, but with lighter orbital colours.
405
+ # dark-pastel: Similar to pastel, but with darker orbital colours, reminiscant of the 'sharp'
406
+ # style.
407
+ # sharp: Orbitals are darkly coloured around their edge but have high transparency in their
408
+ # center. Normal atom colours.
409
+ # gaussian: A style attempting to mimic that of GaussView.
410
+ # vesta: A style attempting to mimic that of VESTA.
411
+ # default: pastel, choices: ['pastel', 'light-pastel', 'dark-pastel', 'sharp', 'gaussian',
412
+ # 'vesta'], required: False
413
+ # rendering_style: pastel
414
+ #
415
+ # Beautiful Atoms/Blender specific options (only applies if engine == 'batoms'
416
+ # required: False
417
+ # batoms:
418
+ # Path to the blender executable, in which beautiful atoms should be installed
419
+ # required: False
420
+ # blender: null
421
+ #
422
+ # The number of CPUs/threads to use. This option is overridden if running in a calculation
423
+ # environemnt (where it uses the same number of CPUs as the calculation did)
424
+ # type: wrapper_type, default: 1, required: False
425
+ # cpus: 1
426
+ #
427
+ # The number of render samples (or passes) to use. Higher values result in higher image quality
428
+ # and greater render times
429
+ # type: wrapper_type, default: 256, required: False
430
+ # render_samples: 256
431
+ #
432
+ # The perspective mode
433
+ # default: orthographic, choices: ['orthographic', 'perspective'], required: False
434
+ # perspective: orthographic
435
+ #
436
+ # If True, previously created files will be reused. If False, new images will rendered, replacing
437
+ # the old.
438
+ # This is on by default for 3D rendered images because they are expensive (time-consuming) to
439
+ # render.
440
+ # type: wrapper_type, default: True, required: False
441
+ # use_existing: true
442
+ #
443
+ # Whether to enable automatic cropping of excess whitespace around the border of generated
444
+ # images. If False, overall image rendering is likely to take less time, but molecules may only
445
+ # occupy a small portion of the true image.
446
+ # type: wrapper_type, default: True, required: False
447
+ # auto_crop: true
448
+ #
449
+ # The target resolution for rendered images. Higher values will increase image quality, at the
450
+ # cost of increased render time and file size.
451
+ # type: wrapper_type, default: 512, required: False
452
+ # resolution: 512
453
+ #
454
+ # Specific options for orbital density plots.
455
+ # required: False
456
+ # orbital:
457
+ # The size of grid used to generate cube files.
458
+ # Densities are plotted on a 3D grid of points, this option controls how many points there are
459
+ # in the grid (per dimension).
460
+ # In addition to an integer number of points (~100 is often sufficient), any of the following
461
+ # keywords can also be specified:
462
+ # Tiny, Small, Medium, Large, Huge or Default.
463
+ # type: wrapper_type, default: Default, required: False
464
+ # cube_grid_size: Default
465
+ #
466
+ # The isovalue to use for rendering orbital density.
467
+ # type: wrapper_type, default: 0.02, required: False
468
+ # isovalue: 0.02
469
+ #
470
+ # Specific options for spin density plots.
471
+ # required: False
472
+ # spin:
473
+ # The size of the grid use to plot cube data. As cubes of this type are rendered with a smaller
474
+ # isovalue, it is often necessary to use a larger grid size than normal to maintain quality.
475
+ # type: wrapper_type, default: Large, required: False
476
+ # cube_grid_size: Large
477
+ #
478
+ # The isovalue to use for plotting spin density.
479
+ # type: wrapper_type, default: 0.0004, required: False
480
+ # isovalue: 0.0004
481
+ #
482
+ # Specific options for total density plots.
483
+ # required: False
484
+ # density:
485
+ # The size of the grid use to plot cube data.
486
+ # type: wrapper_type, default: Large, required: False
487
+ # cube_grid_size: Large
488
+ #
489
+ # The isovalue to use for plotting total density.
490
+ # type: wrapper_type, default: 0.02, required: False
491
+ # isovalue: 0.02
492
+ #
493
+ # Specific options for excited states difference density plots.
494
+ # required: False
495
+ # difference_density:
496
+ # The size of the grid use to plot cube data.
497
+ # type: wrapper_type, default: Default, required: False
498
+ # cube_grid_size: Default
499
+ #
500
+ # The isovalue to use for difference density plots.
501
+ # type: wrapper_type, default: 0.001, required: False
502
+ # isovalue: 0.001
503
+ #
504
+ # Specific options for NTO plots.
505
+ # required: False
506
+ # natural_transition_orbital:
507
+ # The size of the grid use to plot cube data.
508
+ # type: wrapper_type, default: Default, required: False
509
+ # cube_grid_size: Default
510
+ #
511
+ # The isovalue to use for NTO plots.
512
+ # type: wrapper_type, default: 0.02, required: False
513
+ # isovalue: 0.02
514
+ #
515
+ # Specific options for permanent dipole moment plots.
516
+ # required: False
517
+ # dipole_moment:
518
+ # The value (x) to scale the TDM by, where 1 D = x Å.
519
+ # type: wrapper_type, default: 1.0, required: False
520
+ # scaling: 1.0
521
+ #
522
+ # Specific options for transition dipole moment plots.
523
+ # required: False
524
+ # transition_dipole_moment:
525
+ # The value (x) to scale the TEDM by, where 1 D = x Å.
526
+ # type: wrapper_type, default: 5.0, required: False
527
+ # electric_scaling: 5.0
528
+ #
529
+ # The value (x) to scale the TMDM by, where 1 au = x Å.
530
+ # type: wrapper_type, default: 10.0, required: False
531
+ # magnetic_scaling: 10.0
532
+ #
533
+ # Options for controlling the generation of calculation reports.
534
+ # required: False
535
+ #report:
536
+ # The image to use for the front page of the report.
537
+ # default: rendered, choices: ['skeletal', 'rendered'], required: False
538
+ # front_page_image: rendered
539
+ #
540
+ # Options that control the running of Turbomole calculations to generate cube files from completed
541
+ # calculations. Note that when reports are created automatically following calculation completion
542
+ # these options will be overridden with the specifics of that calculation.
543
+ # required: False
544
+ # turbomole:
545
+ # The number of CPUs with which to run.
546
+ # type: wrapper_type, default: 1, required: False
547
+ # num_cpu: 1
548
+ #
549
+ # The amount of memory with which to run.
550
+ # type: wrapper_type, default: 1GB, required: False
551
+ # memory: 1GB
552
+ #
553
+ # A program definition from the internal library to run.
554
+ # type: type_func, required: False
555
+ # program: null
556
+ #
557
+ # Options that control the running of Gaussian calculations to generate NTO cube files from
558
+ # completed calculations. Note that when reports are created automatically following calculation
559
+ # completion these options will be overridden with the specifics of that calculation.
560
+ # required: False
561
+ # gaussian:
562
+ # The number of CPUs with which to run.
563
+ # type: wrapper_type, default: 1, required: False
564
+ # num_cpu: 1
565
+ #
566
+ # The amount of memory with which to run.
567
+ # type: wrapper_type, default: 1GB, required: False
568
+ # memory: 1GB
569
+ #
570
+ # A program definition from the internal library to run.
571
+ # type: type_func, required: False
572
+ # program: null
573
+ #
574
+ # Path to the top of the scratch directory.
575
+ # default: /scratch, required: False
576
+ # scratch_path: /scratch
577
+ #
578
+ # Options that control the running of orca_plot to generate cube files from completed
579
+ # calculations. Note that when reports are created automatically following calculation completion
580
+ # these options will be overridden with the specifics of that calculation.
581
+ # required: False
582
+ # orca:
583
+ # The amount of memory with which to run. If left blank, no maximum will be specified.
584
+ # type: wrapper_type, required: False
585
+ # memory: null
586
+ #
587
+ # A program definition from the internal library to run.
588
+ # type: type_func, required: False
589
+ # program: null
590
+ #
591
+ # Whether to delete intermediate files that are written during the report generation process.
592
+ # Intermediate files include:
593
+ # - .cube files.
594
+ # - .fchk files.
595
+ # - .html files.
596
+ # - .css files.
597
+ # Note that this option will only delete new files written by the program; existing files given by
598
+ # the user are never deleted.
599
+ # type: wrapper_type, default: True, required: False
600
+ # cleanup: true
601
+ #
602
+ # Options which control how many orbitals to print in the MO table.
603
+ # These numbers are relative to the HOMO for both the min and max.
604
+ # null can be specified for either/both the min/max to print all available orbitals in that
605
+ # direction.
606
+ # If both alpha and beta orbitals are available (for unrestricted calculations, for example), then
607
+ # additional orbitals may be printed outside of the given min/max to ensure the given value is
608
+ # met for both sets of orbitals. This is common for triplet calculations, where the alpha and beta
609
+ # frontier MOs are at different levels.
610
+ # Examples:
611
+ # min: -10, max: 16: From HOMO-10 to LUMO+15 inclusive (total of 27 orbitals).
612
+ # min: null, max: 11: All orbitals with energy less than or equal to LUMO+10.
613
+ # min: 0, max: 1: HOMO and LUMO only.
614
+ # required: False
615
+ # orbital_table:
616
+ # The highest orbital to show in the molecular orbital table.
617
+ # type: wrapper_type, default: 16, required: False
618
+ # max: 16
619
+ #
620
+ # The lowest orbital to show in the molecular orbital table.
621
+ # type: wrapper_type, default: -15, required: False
622
+ # min: -15
623
+ #
624
+ # Options which specify which orbitals to render 3D images of. The default is the HOMO and LUMO.
625
+ # Orbitals can be specified by level (an index starting at 1 for the most negative orbital, useful
626
+ # if you want images of a particular orbital) and/or by distance from the HOMO (useful for more
627
+ # day-to-day operation.
628
+ # In addition, excited_state_transition_threshold: can be used to add orbitals that are involved
629
+ # in an excited state transition with a probability above a certain threshold.
630
+ # Duplicates will be automatically ignored, as will orbitals specified here that are not actually
631
+ # available in the calculation result file.
632
+ # Alpha and beta are set separately. Beta will be ignored if there are no beta orbitals available.
633
+ #
634
+ # Example:
635
+ # orbital_levels:
636
+ # - 5
637
+ # orbital_distance:
638
+ # - -1
639
+ # - 0
640
+ # - 1
641
+ # excited_state_transition_threshold: 0.1
642
+ # Would render orbital 5, HOMO-1, HOMO, LUMO and any orbitals involved in an excited state
643
+ # transition with a probability 0.1 or greater.
644
+ # required: False
645
+ # orbital_image:
646
+ # Include orbitals involved in an excited state transition with a probability of this value or
647
+ # greater.
648
+ # type: wrapper_type, default: 0.1, required: False
649
+ # et_transition_threshold: 0.1
650
+ #
651
+ # Include normal/alpha orbitals by level.
652
+ # type: wrapper_type, list_type: list, required: False
653
+ # orbital_levels: []
654
+ #
655
+ # Include beta orbitals by level.
656
+ # type: wrapper_type, list_type: list, required: False
657
+ # beta_levels: []
658
+ #
659
+ # Include normal/alpha orbitals by distance from the HOMO.
660
+ # type: wrapper_type, list_type: list, default: [0, 1], required: False
661
+ # orbital_distances:
662
+ # - 0
663
+ # - 1
664
+ #
665
+ # Include beta orbitals by distance from the HOMO.
666
+ # type: wrapper_type, list_type: list, default: [0, 1], required: False
667
+ # beta_distances:
668
+ # - 0
669
+ # - 1
670
+ #
671
+ # Options that control how many vibrational frequencies to list in the frequencies table.
672
+ # required: False
673
+ # frequency_table:
674
+ # The most negative frequency to show in the table (remember that frequencies can be negative).
675
+ # 'null' is for no limit. Units are cm-1.
676
+ # type: wrapper_type, required: False
677
+ # min_frequency: null
678
+ #
679
+ # The most positive frequency to show in the table. 'null' is for no limit. Units are cm-1.
680
+ # type: wrapper_type, required: False
681
+ # max_frequency: null
682
+ #
683
+ # The maximum number of frequencies to show in the table.
684
+ # type: wrapper_type, required: False
685
+ # max_num: null
686
+ #
687
+ # Options which specify which NMR spectra to render.
688
+ # required: False
689
+ # nmr_image:
690
+ # If True, at least one experiment will be included for each element and isotope pair (for which
691
+ # NMR data is available). If no expt is explicitly requested (via codes), then the spectra will
692
+ # be the one with the least decoupling.
693
+ # type: wrapper_type, default: True, required: False
694
+ # auto: true
695
+ #
696
+ # Explicitly include certain NMR experiments.
697
+ # type: wrapper_type, list_type: list, default: ['13C{1H}'], required: False
698
+ # codes:
699
+ # - 13C{1H}
700
+ #
701
+ # Options for controlling the rendering of 2D skeletal images.
702
+ # required: False
703
+ #skeletal_image:
704
+ # The resolution for rendered images
705
+ # required: False
706
+ # resolution:
707
+ # The output resolution (x and y) in pixels
708
+ # type: wrapper_type, required: False
709
+ # absolute: null
710
+ #
711
+ # The output resolution (x and y) in multiples of the length of the molecule
712
+ # type: wrapper_type, default: 100, required: False
713
+ # relative: 100
714
+ #