chemicalml 0.1.0
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.
- checksums.yaml +7 -0
- data/.gitignore +11 -0
- data/.rubocop.yml +20 -0
- data/CHANGELOG.md +21 -0
- data/CLAUDE.md +198 -0
- data/Gemfile +14 -0
- data/LICENSE +24 -0
- data/NOTICES.adoc +115 -0
- data/README.adoc +87 -0
- data/Rakefile +8 -0
- data/TODO.align/01-cml-base-mixins.md +122 -0
- data/TODO.align/02-real-schema-hierarchies.md +88 -0
- data/TODO.align/03-configuration.md +50 -0
- data/TODO.align/04-parse-entry-points.md +59 -0
- data/TODO.align/05-schema-aware-translator.md +33 -0
- data/TODO.align/06-no-respond-to.md +44 -0
- data/TODO.align/07-canon-xml-comparison.md +43 -0
- data/TODO.align/08-expand-fixtures.md +37 -0
- data/TODO.align/09-final-spec-lint.md +29 -0
- data/TODO.align/10-role-marker-modules.md +54 -0
- data/TODO.align/11-dry-configuration.md +63 -0
- data/TODO.align/12-wire-class-macro.md +51 -0
- data/TODO.align/13-wire-namespace.md +44 -0
- data/TODO.align/14-schema24-correctness.md +37 -0
- data/TODO.align/15-canon-fixture-roundtrip.md +38 -0
- data/TODO.align/16-schema24-convention-coverage.md +33 -0
- data/TODO.align/17-final-spec-lint.md +28 -0
- data/TODO.align/README.md +27 -0
- data/TODO.align/README.round2.md +24 -0
- data/TODO.cml-full/01-reference-docs.md +43 -0
- data/TODO.cml-full/02-schema-versioned-model.md +70 -0
- data/TODO.cml-full/03-fixtures-scrape.md +52 -0
- data/TODO.cml-full/04-convention-framework.md +69 -0
- data/TODO.cml-full/05-dictionary-layer.md +77 -0
- data/TODO.cml-full/06-extend-canonical-translator.md +60 -0
- data/TODO.cml-full/07-attribution-notices.md +42 -0
- data/TODO.cml-full/08-autoload-only.md +48 -0
- data/TODO.cml-full/09-spec-coverage.md +38 -0
- data/TODO.cml-full/README.md +23 -0
- data/chemicalml.gemspec +35 -0
- data/data/dictionaries/_index.yaml +14 -0
- data/data/dictionaries/compchem.yaml +481 -0
- data/data/dictionaries/unit_non_si.yaml +53 -0
- data/data/dictionaries/unit_si.yaml +87 -0
- data/data/dictionaries/unit_type.yaml +113 -0
- data/lib/chemicalml/cml/array.rb +10 -0
- data/lib/chemicalml/cml/atom.rb +10 -0
- data/lib/chemicalml/cml/atom_array.rb +10 -0
- data/lib/chemicalml/cml/atom_parity.rb +10 -0
- data/lib/chemicalml/cml/base/array.rb +36 -0
- data/lib/chemicalml/cml/base/atom.rb +38 -0
- data/lib/chemicalml/cml/base/atom_array.rb +22 -0
- data/lib/chemicalml/cml/base/atom_parity.rb +24 -0
- data/lib/chemicalml/cml/base/bond.rb +28 -0
- data/lib/chemicalml/cml/base/bond_array.rb +22 -0
- data/lib/chemicalml/cml/base/bond_stereo.rb +28 -0
- data/lib/chemicalml/cml/base/cml_module.rb +40 -0
- data/lib/chemicalml/cml/base/dictionary.rb +32 -0
- data/lib/chemicalml/cml/base/dictionary_entry.rb +34 -0
- data/lib/chemicalml/cml/base/document.rb +26 -0
- data/lib/chemicalml/cml/base/formula.rb +38 -0
- data/lib/chemicalml/cml/base/identifier.rb +26 -0
- data/lib/chemicalml/cml/base/label.rb +28 -0
- data/lib/chemicalml/cml/base/list.rb +36 -0
- data/lib/chemicalml/cml/base/matrix.rb +38 -0
- data/lib/chemicalml/cml/base/metadata.rb +30 -0
- data/lib/chemicalml/cml/base/metadata_list.rb +28 -0
- data/lib/chemicalml/cml/base/molecule.rb +40 -0
- data/lib/chemicalml/cml/base/name.rb +26 -0
- data/lib/chemicalml/cml/base/parameter.rb +34 -0
- data/lib/chemicalml/cml/base/parameter_list.rb +28 -0
- data/lib/chemicalml/cml/base/product.rb +22 -0
- data/lib/chemicalml/cml/base/product_list.rb +22 -0
- data/lib/chemicalml/cml/base/property.rb +34 -0
- data/lib/chemicalml/cml/base/property_list.rb +28 -0
- data/lib/chemicalml/cml/base/reactant.rb +22 -0
- data/lib/chemicalml/cml/base/reactant_list.rb +22 -0
- data/lib/chemicalml/cml/base/reaction.rb +32 -0
- data/lib/chemicalml/cml/base/reaction_list.rb +22 -0
- data/lib/chemicalml/cml/base/scalar.rb +32 -0
- data/lib/chemicalml/cml/base/substance.rb +30 -0
- data/lib/chemicalml/cml/base/unit.rb +38 -0
- data/lib/chemicalml/cml/base/unit_list.rb +30 -0
- data/lib/chemicalml/cml/base/unit_type.rb +28 -0
- data/lib/chemicalml/cml/base/unit_type_list.rb +30 -0
- data/lib/chemicalml/cml/base.rb +51 -0
- data/lib/chemicalml/cml/bond.rb +10 -0
- data/lib/chemicalml/cml/bond_array.rb +10 -0
- data/lib/chemicalml/cml/bond_stereo.rb +10 -0
- data/lib/chemicalml/cml/cml_module.rb +10 -0
- data/lib/chemicalml/cml/dictionary.rb +10 -0
- data/lib/chemicalml/cml/dictionary_entry.rb +10 -0
- data/lib/chemicalml/cml/document.rb +10 -0
- data/lib/chemicalml/cml/elements.rb +58 -0
- data/lib/chemicalml/cml/formula.rb +10 -0
- data/lib/chemicalml/cml/identifier.rb +10 -0
- data/lib/chemicalml/cml/label.rb +10 -0
- data/lib/chemicalml/cml/list.rb +10 -0
- data/lib/chemicalml/cml/matrix.rb +10 -0
- data/lib/chemicalml/cml/metadata.rb +10 -0
- data/lib/chemicalml/cml/metadata_list.rb +10 -0
- data/lib/chemicalml/cml/molecule.rb +10 -0
- data/lib/chemicalml/cml/name.rb +10 -0
- data/lib/chemicalml/cml/namespace.rb +17 -0
- data/lib/chemicalml/cml/parameter.rb +10 -0
- data/lib/chemicalml/cml/parameter_list.rb +10 -0
- data/lib/chemicalml/cml/product.rb +10 -0
- data/lib/chemicalml/cml/product_list.rb +10 -0
- data/lib/chemicalml/cml/property.rb +10 -0
- data/lib/chemicalml/cml/property_list.rb +10 -0
- data/lib/chemicalml/cml/reactant.rb +10 -0
- data/lib/chemicalml/cml/reactant_list.rb +10 -0
- data/lib/chemicalml/cml/reaction.rb +10 -0
- data/lib/chemicalml/cml/reaction_list.rb +10 -0
- data/lib/chemicalml/cml/role/array.rb +13 -0
- data/lib/chemicalml/cml/role/atom.rb +13 -0
- data/lib/chemicalml/cml/role/atom_array.rb +13 -0
- data/lib/chemicalml/cml/role/atom_parity.rb +13 -0
- data/lib/chemicalml/cml/role/bond.rb +13 -0
- data/lib/chemicalml/cml/role/bond_array.rb +13 -0
- data/lib/chemicalml/cml/role/bond_stereo.rb +13 -0
- data/lib/chemicalml/cml/role/cml_module.rb +14 -0
- data/lib/chemicalml/cml/role/dictionary.rb +13 -0
- data/lib/chemicalml/cml/role/dictionary_entry.rb +13 -0
- data/lib/chemicalml/cml/role/document.rb +13 -0
- data/lib/chemicalml/cml/role/formula.rb +13 -0
- data/lib/chemicalml/cml/role/identifier.rb +13 -0
- data/lib/chemicalml/cml/role/label.rb +13 -0
- data/lib/chemicalml/cml/role/list.rb +13 -0
- data/lib/chemicalml/cml/role/matrix.rb +13 -0
- data/lib/chemicalml/cml/role/metadata.rb +13 -0
- data/lib/chemicalml/cml/role/metadata_list.rb +13 -0
- data/lib/chemicalml/cml/role/molecule.rb +13 -0
- data/lib/chemicalml/cml/role/name.rb +13 -0
- data/lib/chemicalml/cml/role/parameter.rb +13 -0
- data/lib/chemicalml/cml/role/parameter_list.rb +13 -0
- data/lib/chemicalml/cml/role/product.rb +13 -0
- data/lib/chemicalml/cml/role/product_list.rb +13 -0
- data/lib/chemicalml/cml/role/property.rb +13 -0
- data/lib/chemicalml/cml/role/property_list.rb +13 -0
- data/lib/chemicalml/cml/role/reactant.rb +13 -0
- data/lib/chemicalml/cml/role/reactant_list.rb +13 -0
- data/lib/chemicalml/cml/role/reaction.rb +13 -0
- data/lib/chemicalml/cml/role/reaction_list.rb +13 -0
- data/lib/chemicalml/cml/role/scalar.rb +13 -0
- data/lib/chemicalml/cml/role/substance.rb +13 -0
- data/lib/chemicalml/cml/role/unit.rb +13 -0
- data/lib/chemicalml/cml/role/unit_list.rb +13 -0
- data/lib/chemicalml/cml/role/unit_type.rb +13 -0
- data/lib/chemicalml/cml/role/unit_type_list.rb +13 -0
- data/lib/chemicalml/cml/role.rb +54 -0
- data/lib/chemicalml/cml/scalar.rb +10 -0
- data/lib/chemicalml/cml/schema24/configuration.rb +19 -0
- data/lib/chemicalml/cml/schema24.rb +40 -0
- data/lib/chemicalml/cml/schema3/configuration.rb +17 -0
- data/lib/chemicalml/cml/schema3.rb +40 -0
- data/lib/chemicalml/cml/substance.rb +10 -0
- data/lib/chemicalml/cml/translator/value_translations.rb +265 -0
- data/lib/chemicalml/cml/translator.rb +233 -0
- data/lib/chemicalml/cml/unit.rb +10 -0
- data/lib/chemicalml/cml/unit_list.rb +10 -0
- data/lib/chemicalml/cml/unit_type.rb +10 -0
- data/lib/chemicalml/cml/unit_type_list.rb +10 -0
- data/lib/chemicalml/cml/visitable.rb +65 -0
- data/lib/chemicalml/cml/wire_class_macro.rb +45 -0
- data/lib/chemicalml/cml.rb +55 -0
- data/lib/chemicalml/context_configuration.rb +127 -0
- data/lib/chemicalml/convention/base.rb +48 -0
- data/lib/chemicalml/convention/compchem/constraints/compchem_module_must_contain_job_list.rb +33 -0
- data/lib/chemicalml/convention/compchem/constraints/job_must_contain_initialization.rb +38 -0
- data/lib/chemicalml/convention/compchem/constraints.rb +14 -0
- data/lib/chemicalml/convention/compchem.rb +28 -0
- data/lib/chemicalml/convention/constraint.rb +79 -0
- data/lib/chemicalml/convention/dictionary/constraints/entry_ids_unique_within_dictionary.rb +33 -0
- data/lib/chemicalml/convention/dictionary/constraints/entry_must_have_id_and_term.rb +34 -0
- data/lib/chemicalml/convention/dictionary/constraints.rb +14 -0
- data/lib/chemicalml/convention/dictionary.rb +28 -0
- data/lib/chemicalml/convention/molecular/constraints/atom_array_must_contain_atoms.rb +30 -0
- data/lib/chemicalml/convention/molecular/constraints/atom_ids_unique_within_molecule.rb +42 -0
- data/lib/chemicalml/convention/molecular/constraints/bond_must_reference_atoms_in_same_molecule.rb +54 -0
- data/lib/chemicalml/convention/molecular/constraints.rb +19 -0
- data/lib/chemicalml/convention/molecular.rb +29 -0
- data/lib/chemicalml/convention/registry.rb +50 -0
- data/lib/chemicalml/convention/unit_dictionary/constraints/unit_must_have_symbol_and_unit_type.rb +46 -0
- data/lib/chemicalml/convention/unit_dictionary/constraints.rb +12 -0
- data/lib/chemicalml/convention/unit_dictionary.rb +27 -0
- data/lib/chemicalml/convention/unit_type_dictionary/constraints/unit_type_must_have_id_and_name.rb +34 -0
- data/lib/chemicalml/convention/unit_type_dictionary/constraints.rb +12 -0
- data/lib/chemicalml/convention/unit_type_dictionary.rb +27 -0
- data/lib/chemicalml/convention/violation.rb +36 -0
- data/lib/chemicalml/convention.rb +39 -0
- data/lib/chemicalml/dictionary/entry.rb +59 -0
- data/lib/chemicalml/dictionary/enum.rb +51 -0
- data/lib/chemicalml/dictionary/link.rb +32 -0
- data/lib/chemicalml/dictionary/loader.rb +60 -0
- data/lib/chemicalml/dictionary/model.rb +64 -0
- data/lib/chemicalml/dictionary/registry.rb +75 -0
- data/lib/chemicalml/dictionary.rb +26 -0
- data/lib/chemicalml/errors.rb +7 -0
- data/lib/chemicalml/model/atom.rb +40 -0
- data/lib/chemicalml/model/bond.rb +33 -0
- data/lib/chemicalml/model/cml_array.rb +27 -0
- data/lib/chemicalml/model/cml_module.rb +45 -0
- data/lib/chemicalml/model/document.rb +29 -0
- data/lib/chemicalml/model/formula.rb +34 -0
- data/lib/chemicalml/model/identifier.rb +21 -0
- data/lib/chemicalml/model/label.rb +21 -0
- data/lib/chemicalml/model/matrix.rb +29 -0
- data/lib/chemicalml/model/metadata.rb +23 -0
- data/lib/chemicalml/model/metadata_list.rb +25 -0
- data/lib/chemicalml/model/molecule.rb +38 -0
- data/lib/chemicalml/model/name.rb +21 -0
- data/lib/chemicalml/model/node.rb +45 -0
- data/lib/chemicalml/model/parameter.rb +27 -0
- data/lib/chemicalml/model/parameter_list.rb +25 -0
- data/lib/chemicalml/model/product.rb +21 -0
- data/lib/chemicalml/model/product_list.rb +21 -0
- data/lib/chemicalml/model/property.rb +28 -0
- data/lib/chemicalml/model/property_list.rb +25 -0
- data/lib/chemicalml/model/reactant.rb +21 -0
- data/lib/chemicalml/model/reactant_list.rb +21 -0
- data/lib/chemicalml/model/reaction.rb +41 -0
- data/lib/chemicalml/model/reaction_list.rb +23 -0
- data/lib/chemicalml/model/scalar.rb +25 -0
- data/lib/chemicalml/model/substance.rb +25 -0
- data/lib/chemicalml/model.rb +38 -0
- data/lib/chemicalml/schema/definition.rb +41 -0
- data/lib/chemicalml/schema/registry.rb +30 -0
- data/lib/chemicalml/schema.rb +35 -0
- data/lib/chemicalml/version.rb +5 -0
- data/lib/chemicalml/versioned_parser.rb +43 -0
- data/lib/chemicalml.rb +47 -0
- data/lib/tasks/reference_fetch.rake +105 -0
- data/lib/tasks/scrape_fixtures.rake +133 -0
- data/reference-docs/conventions/compchem.md +141 -0
- data/reference-docs/conventions/dictionary.md +119 -0
- data/reference-docs/conventions/index.md +56 -0
- data/reference-docs/conventions/molecular.md +115 -0
- data/reference-docs/conventions/unit-dictionary.md +92 -0
- data/reference-docs/conventions/unitType-dictionary.md +51 -0
- data/reference-docs/dictionaries/compchem.md +335 -0
- data/reference-docs/dictionaries/index.md +52 -0
- data/reference-docs/examples/schema24-index.md +50 -0
- data/reference-docs/examples/schema3-compchem-index.md +14 -0
- data/reference-docs/examples/schema3-molecular-index.md +28 -0
- data/reference-docs/schemas/schema24/schema.xsd +10624 -0
- data/reference-docs/schemas/schema3/schema.xsd +11459 -0
- metadata +306 -0
|
@@ -0,0 +1,335 @@
|
|
|
1
|
+
<!-- Source: http://www.xml-cml.org/dictionary/compchem/ -->
|
|
2
|
+
<!-- Authors: Peter Murray-Rust, Weerapong Phadungsukanan, Jens Thomas -->
|
|
3
|
+
<!-- License: CC-BY-3.0 (http://creativecommons.org/licenses/by/3.0/) -->
|
|
4
|
+
|
|
5
|
+
# CompChem Dictionary
|
|
6
|
+
|
|
7
|
+
Toplevel dictionary for computational chemistry.
|
|
8
|
+
|
|
9
|
+
Concepts in this dictionary are general throughout computational
|
|
10
|
+
chemistry and are used extensively in the CompChem convention to
|
|
11
|
+
describe the structure of computational chemistry.
|
|
12
|
+
|
|
13
|
+
Author: Weerapong Phadungsukanan.
|
|
14
|
+
|
|
15
|
+
## Entries
|
|
16
|
+
|
|
17
|
+
### calculation
|
|
18
|
+
|
|
19
|
+
A calculation module for a computational job.
|
|
20
|
+
|
|
21
|
+
A calculation module represents the concept of the model calculation,
|
|
22
|
+
optimisation or iteration processes for a computational job. Almost any
|
|
23
|
+
computational procedure is a calculation, and calculations can be nested
|
|
24
|
+
to any level. As an example, an SCF calculation consists of an initial
|
|
25
|
+
guess calculation, and a number of iterative calculations, the output of
|
|
26
|
+
the final iteration constituting the results. An SCF geometry optimisation
|
|
27
|
+
process consists of multiple calculation steps, each of which consists of
|
|
28
|
+
an SCF calculation, followed by a gradient calculation.
|
|
29
|
+
|
|
30
|
+
A calculation must contain an initialization module, which defines the
|
|
31
|
+
inputs to the calculation (and therefore the calculation), and a
|
|
32
|
+
finalization module, which holds all outputs. The calculation module may
|
|
33
|
+
contain many other modules describing the process of the calculation, but
|
|
34
|
+
that may not necessarily be desirable as results.
|
|
35
|
+
|
|
36
|
+
### environment
|
|
37
|
+
|
|
38
|
+
Module holding concepts relating to the environment that the job used or
|
|
39
|
+
required.
|
|
40
|
+
|
|
41
|
+
The computing environment concept refers to a hardware platform, software
|
|
42
|
+
application, the operating system and any hardware and software
|
|
43
|
+
configurations used in order to run the job or computational task. The
|
|
44
|
+
environment includes metadata such as machine id, username, starting and
|
|
45
|
+
finishing date time, tools, compilers, IP, etc.
|
|
46
|
+
|
|
47
|
+
This information is not related to input and output of the model but is
|
|
48
|
+
supplementary to the software application to run properly and may vary
|
|
49
|
+
from machine to machine. Therefore, the computing environment is OPTIONAL
|
|
50
|
+
in the CompChem convention.
|
|
51
|
+
|
|
52
|
+
### finalization
|
|
53
|
+
|
|
54
|
+
A finalization module for a computational job or calculation.
|
|
55
|
+
|
|
56
|
+
Represents the concept of the model results for a computational job or
|
|
57
|
+
calculation. This will usually be the output properties of the final
|
|
58
|
+
calculation carried out by the job. The finalization module should contain
|
|
59
|
+
a propertyList with scalar, array and matrix quantities, but may also
|
|
60
|
+
contain more complex objects such as molecules or orbitals as cml:lists.
|
|
61
|
+
|
|
62
|
+
### initialization
|
|
63
|
+
|
|
64
|
+
An initialization module for a computational job or calculation.
|
|
65
|
+
|
|
66
|
+
Represents the concept of the model parameters and inputs. The module
|
|
67
|
+
defines the calculation, so that it should be possible to reproduce the
|
|
68
|
+
calculation based solely on the data in this module. The initialization
|
|
69
|
+
module should contain a parameterList with scalar, array and matrix
|
|
70
|
+
quantities, and the starting molecule, but may also contain more complex
|
|
71
|
+
objects as cml:lists, such as the basis set.
|
|
72
|
+
|
|
73
|
+
### job
|
|
74
|
+
|
|
75
|
+
A job or computational task.
|
|
76
|
+
|
|
77
|
+
The job concept represents a computational job performed by quantum
|
|
78
|
+
chemistry software, e.g. geometry optimisation job, frequency analysis
|
|
79
|
+
job. The job can be considered as the unit of work that would be
|
|
80
|
+
submitted to a computational resource. In almost all respects a job is
|
|
81
|
+
identical to a calculation, in that it has an initialization module,
|
|
82
|
+
which holds the inputs for the calculation(s) to be run, and a
|
|
83
|
+
finalization module, which holds all outputs. In addition, a job may
|
|
84
|
+
contain an environment module.
|
|
85
|
+
|
|
86
|
+
### jobList
|
|
87
|
+
|
|
88
|
+
A list of computational jobs.
|
|
89
|
+
|
|
90
|
+
A quantum chemistry calculation is often comprised of a series of
|
|
91
|
+
subtasks, e.g. coarse optimisation -> fine optimisation -> NMR Spectrum
|
|
92
|
+
Analysis. The joblist concept captures these series of successive
|
|
93
|
+
subtasks and links the information from one subtask to the next.
|
|
94
|
+
|
|
95
|
+
### compileDate
|
|
96
|
+
|
|
97
|
+
The date that the executable was compiled.
|
|
98
|
+
|
|
99
|
+
### runDate
|
|
100
|
+
|
|
101
|
+
The date that the job commenced.
|
|
102
|
+
|
|
103
|
+
### executable
|
|
104
|
+
|
|
105
|
+
The path to the executable program.
|
|
106
|
+
|
|
107
|
+
### hostName
|
|
108
|
+
|
|
109
|
+
The name of the host that the program was run on.
|
|
110
|
+
|
|
111
|
+
### inputFile
|
|
112
|
+
|
|
113
|
+
A cml module for a single literal representation of an input file.
|
|
114
|
+
|
|
115
|
+
### inputFileList
|
|
116
|
+
|
|
117
|
+
A cml module containing a list of input files.
|
|
118
|
+
|
|
119
|
+
### inputFileName
|
|
120
|
+
|
|
121
|
+
A representation of the name of a single input file.
|
|
122
|
+
|
|
123
|
+
### numProc
|
|
124
|
+
|
|
125
|
+
The number of processors used to run the job.
|
|
126
|
+
|
|
127
|
+
### program
|
|
128
|
+
|
|
129
|
+
The program being run. Known values:
|
|
130
|
+
|
|
131
|
+
- `nwchem` — The Northwest Computational Chemistry Package (NWChem)
|
|
132
|
+
- `gaussian` — The Gaussian electronic structure code
|
|
133
|
+
|
|
134
|
+
### programVersion
|
|
135
|
+
|
|
136
|
+
Specifies the version of the code that was used to run the calculation.
|
|
137
|
+
|
|
138
|
+
### method
|
|
139
|
+
|
|
140
|
+
The type of computational method. Example values: `SCF`, `DFT`, `MP2`.
|
|
141
|
+
|
|
142
|
+
### task
|
|
143
|
+
|
|
144
|
+
The task being carried out. Example values: `energy`, `frequency`,
|
|
145
|
+
`geometry_optimization`, `gradient`, `initial_guess`, `iteration`, `step`.
|
|
146
|
+
|
|
147
|
+
### id
|
|
148
|
+
|
|
149
|
+
A CML id. Usable throughout cml documents. Need not be unique.
|
|
150
|
+
|
|
151
|
+
### index
|
|
152
|
+
|
|
153
|
+
An index. An integer used as an index.
|
|
154
|
+
|
|
155
|
+
### iterationIndex
|
|
156
|
+
|
|
157
|
+
The serial number of an iteration.
|
|
158
|
+
|
|
159
|
+
### parameter
|
|
160
|
+
|
|
161
|
+
(TODO)
|
|
162
|
+
|
|
163
|
+
### property
|
|
164
|
+
|
|
165
|
+
(TODO)
|
|
166
|
+
|
|
167
|
+
### title
|
|
168
|
+
|
|
169
|
+
An arbitrary title.
|
|
170
|
+
|
|
171
|
+
### UUID
|
|
172
|
+
|
|
173
|
+
A Universally Unique IDentifier as per RFC 4122.
|
|
174
|
+
|
|
175
|
+
### cpuTime
|
|
176
|
+
|
|
177
|
+
Elapsed CPU time.
|
|
178
|
+
|
|
179
|
+
### wallTime
|
|
180
|
+
|
|
181
|
+
Elapsed wallclock time.
|
|
182
|
+
|
|
183
|
+
### charge
|
|
184
|
+
|
|
185
|
+
The total charge on the system in elementary charge units.
|
|
186
|
+
|
|
187
|
+
### atomType
|
|
188
|
+
|
|
189
|
+
the type of the element (the atomic symbol).
|
|
190
|
+
|
|
191
|
+
### numAtoms
|
|
192
|
+
|
|
193
|
+
The number of atoms. Normally the count of atoms in a molecule.
|
|
194
|
+
|
|
195
|
+
### numElectrons
|
|
196
|
+
|
|
197
|
+
The total number of electrons in a system.
|
|
198
|
+
|
|
199
|
+
### numAlphaElectrons
|
|
200
|
+
|
|
201
|
+
The total number of alpha spin electrons.
|
|
202
|
+
|
|
203
|
+
### numBetaElectrons
|
|
204
|
+
|
|
205
|
+
The total number of beta spin electrons.
|
|
206
|
+
|
|
207
|
+
### numClosedShells
|
|
208
|
+
|
|
209
|
+
The number of closed shells.
|
|
210
|
+
|
|
211
|
+
### numOpenShells
|
|
212
|
+
|
|
213
|
+
The number of open shells.
|
|
214
|
+
|
|
215
|
+
### pointGroup
|
|
216
|
+
|
|
217
|
+
The molecular point group in Schoenflies notation.
|
|
218
|
+
|
|
219
|
+
### spinMultiplicity
|
|
220
|
+
|
|
221
|
+
The spin multiplicity = (alpha electrons) - (beta electrons) + 1.
|
|
222
|
+
|
|
223
|
+
### wavefunctionType
|
|
224
|
+
|
|
225
|
+
The type of wavefunction. Acceptable values: `closed`, `open`,
|
|
226
|
+
`restricted open`.
|
|
227
|
+
|
|
228
|
+
### basisSet
|
|
229
|
+
|
|
230
|
+
A cml list container for all information related to the basis set.
|
|
231
|
+
|
|
232
|
+
The basis set is the set of functions from which the electron orbitals
|
|
233
|
+
are constructed.
|
|
234
|
+
|
|
235
|
+
### basisSetLabel
|
|
236
|
+
|
|
237
|
+
The name of the basis set. Should be one of the names used within the
|
|
238
|
+
EMSL Basis Set Exchange.
|
|
239
|
+
|
|
240
|
+
### basisSetType
|
|
241
|
+
|
|
242
|
+
The type of the basis set. Valid values: `orbital`, `dftorb`, `dftxfit`,
|
|
243
|
+
`dftcfit`, `periodic`, `ecporb`, `spinorb`, `polarization`, `diffuse`,
|
|
244
|
+
`tight`, `rydberg`.
|
|
245
|
+
|
|
246
|
+
### basisSetHarmonicType
|
|
247
|
+
|
|
248
|
+
The type of the angular functions. Valid values: `cartesian`, `spherical`.
|
|
249
|
+
|
|
250
|
+
### basisSetContractionType
|
|
251
|
+
|
|
252
|
+
How the gaussian functions are contracted. Valid values: `segmented`,
|
|
253
|
+
`general`, `uncontracted`.
|
|
254
|
+
|
|
255
|
+
### basisSetDescription
|
|
256
|
+
|
|
257
|
+
A description of the basis set.
|
|
258
|
+
|
|
259
|
+
### basisSetContractions
|
|
260
|
+
|
|
261
|
+
The cml:list container for the contractions relating to a particular
|
|
262
|
+
atom type.
|
|
263
|
+
|
|
264
|
+
### basisSetShell
|
|
265
|
+
|
|
266
|
+
The label for the contraction shell. Valid values: `S`, `P`, `SP`, `D`,
|
|
267
|
+
`F`, `G`, `H`, `I`, `K`, `L`, `M`.
|
|
268
|
+
|
|
269
|
+
### basisSetContraction
|
|
270
|
+
|
|
271
|
+
The cml:list container for an individual contraction.
|
|
272
|
+
|
|
273
|
+
### basisSetExponent
|
|
274
|
+
|
|
275
|
+
A cml:array holding the list of exponents for an individual contraction.
|
|
276
|
+
|
|
277
|
+
### basisSetRExponent
|
|
278
|
+
|
|
279
|
+
A cml:array holding the list of R exponents for an individual ECP
|
|
280
|
+
contraction.
|
|
281
|
+
|
|
282
|
+
### basisSetCoefficient
|
|
283
|
+
|
|
284
|
+
A cml:array holding the list of coefficients for an individual contraction.
|
|
285
|
+
|
|
286
|
+
### numElectronsReplaced
|
|
287
|
+
|
|
288
|
+
The number of electrons replaced by an Effective Core Potential (ECP).
|
|
289
|
+
|
|
290
|
+
### orbital
|
|
291
|
+
|
|
292
|
+
A cml list container for all information related to an Orbital.
|
|
293
|
+
|
|
294
|
+
### dftFunctional
|
|
295
|
+
|
|
296
|
+
A cml list container for all information related to a DFT Functional.
|
|
297
|
+
|
|
298
|
+
### dftFunctionalLabel
|
|
299
|
+
|
|
300
|
+
The name of the DFT functional used, if a standard functional was used.
|
|
301
|
+
|
|
302
|
+
### coulombEnergy
|
|
303
|
+
|
|
304
|
+
The Coulomb component of the electronic energy in a Density Functional
|
|
305
|
+
Calculation.
|
|
306
|
+
|
|
307
|
+
### correlationEnergy
|
|
308
|
+
|
|
309
|
+
The Correlation Energy.
|
|
310
|
+
|
|
311
|
+
### e1Energy
|
|
312
|
+
|
|
313
|
+
The one-electron energy. The one-electron kinetic energy component of
|
|
314
|
+
the Hamiltonian operator.
|
|
315
|
+
|
|
316
|
+
### e2Energy
|
|
317
|
+
|
|
318
|
+
The two-electron energy.
|
|
319
|
+
|
|
320
|
+
### nuclearRepulsionEnergy
|
|
321
|
+
|
|
322
|
+
The potential energy arising from Coulombic nuclei-nuclei repulsions.
|
|
323
|
+
|
|
324
|
+
### scfEnergy
|
|
325
|
+
|
|
326
|
+
The Hartree-Fock Self-Consistent Field component of the energy.
|
|
327
|
+
|
|
328
|
+
### totalEnergy
|
|
329
|
+
|
|
330
|
+
The total energy for a system of electrons and nuclei. Formed from the
|
|
331
|
+
sum of the nuclear, one- and two-electron energies.
|
|
332
|
+
|
|
333
|
+
### xcEnergy
|
|
334
|
+
|
|
335
|
+
The Exchange correlation energy.
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
<!-- Source: http://www.xml-cml.org/dictionary/ -->
|
|
2
|
+
<!-- License: CC-BY-3.0 (http://creativecommons.org/licenses/by/3.0/) -->
|
|
3
|
+
|
|
4
|
+
# CML Dictionaries
|
|
5
|
+
|
|
6
|
+
Dictionaries allow CML to be *understood* by machines. Much of physical
|
|
7
|
+
science is managed through the dictionary mechanism. We find terms and
|
|
8
|
+
units relating to an aspect of science (such as heat of formation,
|
|
9
|
+
melting point, point group) and create entries for these items in a
|
|
10
|
+
dictionary.
|
|
11
|
+
|
|
12
|
+
The entries can consist of just a unique id (within the dictionary's
|
|
13
|
+
namespace) and some human-understandable definition, but we strongly
|
|
14
|
+
encourage more information: units, upper/lower bounds, data type.
|
|
15
|
+
|
|
16
|
+
Different programs sometimes produce data with the same label but a
|
|
17
|
+
different interpretation; does `density` mean electron density or
|
|
18
|
+
physical density? Each computational chemistry code has its own
|
|
19
|
+
dictionary; the community can then group concepts into a higher-level
|
|
20
|
+
common dictionary (the compchem dictionary).
|
|
21
|
+
|
|
22
|
+
## Implemented Dictionaries
|
|
23
|
+
|
|
24
|
+
### Common Concepts
|
|
25
|
+
|
|
26
|
+
- **Fundamental Chemistry Concepts** — namespace:
|
|
27
|
+
`http://www.xml-cml.org/dictionary/cml/`
|
|
28
|
+
- **Chemical Naming Conventions** — namespace:
|
|
29
|
+
`http://www.xml-cml.org/dictionary/cml/name/`
|
|
30
|
+
- **Chemical Formula Conventions** — namespace:
|
|
31
|
+
`http://www.xml-cml.org/dictionary/cml/formula/`
|
|
32
|
+
|
|
33
|
+
### Crystallography
|
|
34
|
+
|
|
35
|
+
- **CIF Core Definitions** — namespace:
|
|
36
|
+
`http://www.xml-cml.org/dictionary/cif/`
|
|
37
|
+
|
|
38
|
+
### Computational Chemistry
|
|
39
|
+
|
|
40
|
+
- **Computational Chemistry — Core Concepts** — namespace:
|
|
41
|
+
`http://www.xml-cml.org/dictionary/compchem/`
|
|
42
|
+
|
|
43
|
+
## Unit Dictionaries
|
|
44
|
+
|
|
45
|
+
### Units
|
|
46
|
+
|
|
47
|
+
- **SI Units** — namespace: `http://www.xml-cml.org/unit/si/`
|
|
48
|
+
- **Non-SI Units** — namespace: `http://www.xml-cml.org/unit/nonSi/`
|
|
49
|
+
|
|
50
|
+
### Unit Types
|
|
51
|
+
|
|
52
|
+
- **Unit Types** — namespace: `http://www.xml-cml.org/unit/unitType/`
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
<!-- Source: http://www.xml-cml.org/examples/schema24/ -->
|
|
2
|
+
<!-- License: CC-BY-3.0 (http://creativecommons.org/licenses/by/3.0/) -->
|
|
3
|
+
|
|
4
|
+
# Schema 2.4 Examples
|
|
5
|
+
|
|
6
|
+
We have attempted to provide at least one example for each element.
|
|
7
|
+
(There are also some examples for many of the attributes and types.)
|
|
8
|
+
The examples show minimal examples of how each element can be used and
|
|
9
|
+
so are a guide to its semantics. By convention an element `foo` will
|
|
10
|
+
have an example `foo1.cml`. There may be further examples (`foo2.cml`
|
|
11
|
+
etc.) which are often more complex.
|
|
12
|
+
|
|
13
|
+
## Example index
|
|
14
|
+
|
|
15
|
+
action1, action2, actionList1, alternative1, alternativeType1, amount1,
|
|
16
|
+
angle1, annotation1, appinfo1, arg1, arg2, array1, array2, array3,
|
|
17
|
+
atom1, atom2, atomArray1, atomArray2, atomicBasisFunction1,
|
|
18
|
+
atomIDType1, atomParity1, atomRefArrayType1, atomRefs21, atomRefs31,
|
|
19
|
+
atomRefs41, atomRefType1, atomSet1, atomTest, atomType1, atomTypeList1,
|
|
20
|
+
band1, basisSet1, basisSet2, basisSet3, bond1, bond2, bond3, bond4,
|
|
21
|
+
bondArray1, bondRefArrayType1, bondSet1, bondStereo1, bondType1,
|
|
22
|
+
bondTypeList1, box31, cml2, cmlone, complexObject1, conditionList1,
|
|
23
|
+
coordinateComponentArrayType1, coordinateComponentArrayType2, countType1,
|
|
24
|
+
crystal1, crystal2, dataTypeType1, definition1, delimiterType1,
|
|
25
|
+
description1, dictionary1, dictionary2, dictRefGroup1, dictRefGroup2,
|
|
26
|
+
dimension1, dimension2, documentation1, eigen1, eigen2, electron1,
|
|
27
|
+
electron2, elementTypeArrayType1, elementTypeType1, entry1, enumeration1,
|
|
28
|
+
expression1, formalChargeType1, formula1, formula2, formula3,
|
|
29
|
+
formulaType1, gradient1, ichi, idArrayType1, identifier1, identifier2,
|
|
30
|
+
isotope1, isotope2, isotope3, isotope4, isotopeList1, join1, kpoint1,
|
|
31
|
+
label1, lattice3, latticeVector1, latticeVector2, length1, line31,
|
|
32
|
+
list1, matrix1, maxType1, mechanism1, mechanismComponent1, metadata1,
|
|
33
|
+
module1, molecule1, moleculeTable1, name1, namespaceRefType1,
|
|
34
|
+
nonNegativeAngleType, object1, observation1, parameter1, parameterList1,
|
|
35
|
+
particleRefType1, peak1, peak2, peakGroup1, peakList1, peakStructure1,
|
|
36
|
+
peakStructure1Schema, peakStructure2, peakStructure2Schema, plane31,
|
|
37
|
+
point31, positiveAngleType, potential1, potentialForm1, potentialList1,
|
|
38
|
+
productList1, property1, propertyList1, reactant1, reactantList1,
|
|
39
|
+
reaction1, reaction10a, reaction10b, reaction11, reaction5, reaction6,
|
|
40
|
+
reaction7, reaction9a, reaction9b, reactionList1, reactionList2,
|
|
41
|
+
reactionScheme1, reactionScheme3, reactionScheme4a, reactionScheme4b,
|
|
42
|
+
reactionStepList1, reactionStepList2, reactionStepList3,
|
|
43
|
+
reactionStepList4, reactionStepList5a, reactiveCentre1, refGroup1,
|
|
44
|
+
region1, region2, sample1, scalar1, space1, spectator1, spectatorList1,
|
|
45
|
+
spectrum1, spectrum2-local, spectrum2, spectrum3, spectrum4, spectrum5,
|
|
46
|
+
spectrumData1, spectrumList1, sphere31, spin1, stateType1, stmml1,
|
|
47
|
+
substance1, substanceList1, substanceList2, symmetry1, symmetry2,
|
|
48
|
+
system1, table1, table4, table5, table6, table7, title1, torsion1,
|
|
49
|
+
transitionState1, unitList1, unitType1, unitType2, vector31, xaxis,
|
|
50
|
+
xaxis1, yaxis, yaxis1, zMatrix1.
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
<!-- Source: http://www.xml-cml.org/examples/schema3/compchem/ -->
|
|
2
|
+
<!-- License: CC-BY-3.0 (http://creativecommons.org/licenses/by/3.0/) -->
|
|
3
|
+
|
|
4
|
+
# Schema 3 CompChem Examples
|
|
5
|
+
|
|
6
|
+
The CML files here were generated by the Jumbo Converters from the
|
|
7
|
+
NWChem log files linked below. The Jumbo NWChem converters are currently
|
|
8
|
+
the reference for generating Convention-Compliant CML.
|
|
9
|
+
|
|
10
|
+
| Title | CML | NWChem Logfile |
|
|
11
|
+
| --- | --- | --- |
|
|
12
|
+
| DFT B3LYP calculation on CH2 with 3-21g basis | `ch2_321g_b3lyp.cml` | `ch2_321g_b3lyp.nwo` |
|
|
13
|
+
| HF SCF optimisation on water with STO-3G basis | `h2o_sto3g_opt.cml` | `h2o_sto3g_opt.nwo` |
|
|
14
|
+
| Two jobs: DFT and MP2 calculations on water with different basis sets | `two_jobs.cml` | `two_jobs.nwo` |
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
<!-- Source: http://www.xml-cml.org/examples/schema3/molecular/ -->
|
|
2
|
+
<!-- License: CC-BY-3.0 (http://creativecommons.org/licenses/by/3.0/) -->
|
|
3
|
+
|
|
4
|
+
# Schema 3 Molecular Examples
|
|
5
|
+
|
|
6
|
+
The following examples are all valid under the molecular convention. The
|
|
7
|
+
files have been used to unit-test the validation service and should
|
|
8
|
+
therefore give a fairly full example of each element.
|
|
9
|
+
|
|
10
|
+
## Example index
|
|
11
|
+
|
|
12
|
+
- atom with non cml content
|
|
13
|
+
- atoms in formula do not need id
|
|
14
|
+
- bond order other should have dictRef
|
|
15
|
+
- bondStereo atomRefs2 must match parent bonds 1, 2
|
|
16
|
+
- bondStereo atomRefs4 must contain parent bonds 1–8
|
|
17
|
+
- bondStereo other should have dictRef
|
|
18
|
+
- formula must have atomArray or concise or inline 1–7
|
|
19
|
+
- minimal molecule 1–4
|
|
20
|
+
- minimal molecule with foreign sibling
|
|
21
|
+
- minimal molecule with non cml content 1–3
|
|
22
|
+
- molecular convention molecule with non molecular sibling 1, 2
|
|
23
|
+
- molecular convention not as root element
|
|
24
|
+
- molecular molecule within non molecular
|
|
25
|
+
- must be at least one molecule in molecular convention 1, 2
|
|
26
|
+
- property must have dictRef and title
|
|
27
|
+
- repeated atom ids in different molecules
|
|
28
|
+
- scalar must have units and datatype and be child of property
|