mat3ra-esse 2025.8.14.post0__py3-none-any.whl → 2025.10.8.post0__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.
Potentially problematic release.
This version of mat3ra-esse might be problematic. Click here for more details.
- mat3ra/esse/data/examples.py +1 -1
- mat3ra/esse/data/schemas.py +1 -1
- mat3ra/esse/models/core/abstract/_2d_data.py +2 -2
- mat3ra/esse/models/core/abstract/_2d_plot.py +2 -6
- mat3ra/esse/models/core/primitive/_1d_data_series.py +3 -3
- mat3ra/esse/models/core/primitive/axis_3d_names_enum.py +13 -0
- mat3ra/esse/models/core/reference/__init__.py +8 -8
- mat3ra/esse/models/core/reference/exabyte.py +2 -8
- mat3ra/esse/models/core/reference/experiment/__init__.py +2 -2
- mat3ra/esse/models/core/reusable/coordinate_conditions/__init__.py +1 -78
- mat3ra/esse/models/core/reusable/coordinate_conditions/index.py +80 -0
- mat3ra/esse/models/core/reusable/hubbard_parameters.py +48 -0
- mat3ra/esse/models/core/reusable/kpoint.py +16 -0
- mat3ra/esse/models/core/reusable/repetition.py +14 -0
- mat3ra/esse/models/definitions/material.py +13 -0
- mat3ra/esse/models/element.py +10 -8
- mat3ra/esse/models/job/__init__.py +62 -62
- mat3ra/esse/models/material/__init__.py +12 -12
- mat3ra/esse/models/materials_category/compound_pristine_structures/two_dimensional/interface/configuration.py +80 -80
- mat3ra/esse/models/materials_category/defective_structures/one_dimensional/grain_boundary_linear/configuration.py +80 -80
- mat3ra/esse/models/materials_category/defective_structures/two_dimensional/adatom/configuration.py +35 -35
- mat3ra/esse/models/materials_category/defective_structures/two_dimensional/grain_boundary_planar/configuration.py +80 -80
- mat3ra/esse/models/materials_category/defective_structures/two_dimensional/island/configuration.py +53 -53
- mat3ra/esse/models/materials_category/defective_structures/two_dimensional/terrace/configuration.py +53 -53
- mat3ra/esse/models/materials_category/defective_structures/zero_dimensional/point_defect/interstitial.py +29 -29
- mat3ra/esse/models/materials_category/defective_structures/zero_dimensional/point_defect/substitutional.py +32 -32
- mat3ra/esse/models/materials_category/defective_structures/zero_dimensional/point_defect/vacancy.py +12 -12
- mat3ra/esse/models/materials_category/pristine_structures/three_dimensional/ideal_crystal.py +12 -12
- mat3ra/esse/models/materials_category/pristine_structures/two_dimensional/nanoribbon.py +52 -52
- mat3ra/esse/models/materials_category/pristine_structures/two_dimensional/nanotape.py +32 -32
- mat3ra/esse/models/materials_category/pristine_structures/two_dimensional/slab.py +32 -32
- mat3ra/esse/models/materials_category/pristine_structures/two_dimensional/slab_strained_supercell.py +32 -32
- mat3ra/esse/models/materials_category/pristine_structures/two_dimensional/slab_strained_supercell_with_gap.py +1151 -0
- mat3ra/esse/models/materials_category/processed_structures/two_dimensional/passivation/configuration.py +17 -17
- mat3ra/esse/models/materials_category_components/entities/auxiliary/zero_dimensional/crystal_site.py +8 -8
- mat3ra/esse/models/materials_category_components/entities/auxiliary/zero_dimensional/point_defect_site.py +12 -12
- mat3ra/esse/models/materials_category_components/entities/auxiliary/zero_dimensional/void_region.py +12 -12
- mat3ra/esse/models/materials_category_components/entities/core/three_dimensional/crystal.py +8 -8
- mat3ra/esse/models/materials_category_components/entities/core/two_dimensional/vacuum.py +12 -12
- mat3ra/esse/models/materials_category_components/entities/reusable/one_dimensional/crystal_lattice_lines.py +8 -8
- mat3ra/esse/models/materials_category_components/entities/reusable/one_dimensional/crystal_lattice_lines_unique_repeated.py +8 -8
- mat3ra/esse/models/materials_category_components/entities/reusable/three_dimensional/crystal_lattice_base.py +8 -8
- mat3ra/esse/models/materials_category_components/entities/reusable/three_dimensional/strained_non_uniform.py +12 -12
- mat3ra/esse/models/materials_category_components/entities/reusable/three_dimensional/strained_uniform.py +12 -12
- mat3ra/esse/models/materials_category_components/entities/reusable/three_dimensional/supercell.py +12 -12
- mat3ra/esse/models/materials_category_components/entities/reusable/two_dimensional/crystal_lattice_planes.py +8 -8
- mat3ra/esse/models/materials_category_components/entities/reusable/two_dimensional/slab_stack_configuration.py +52 -52
- mat3ra/esse/models/materials_category_components/operations/core/modifications/perturb.py +12 -12
- mat3ra/esse/models/methods_directory/physical/psp/__init__.py +2 -2
- mat3ra/esse/models/methods_directory/physical/psp/file.py +2 -2
- mat3ra/esse/models/methods_directory/physical/psp/file_data_item.py +2 -2
- mat3ra/esse/models/properties_directory/derived_properties.py +6 -6
- mat3ra/esse/models/properties_directory/elemental/atomic_radius.py +1 -1
- mat3ra/esse/models/properties_directory/elemental/electronegativity.py +1 -2
- mat3ra/esse/models/properties_directory/elemental/ionization_potential.py +3 -4
- mat3ra/esse/models/properties_directory/jupyter_notebook_endpoint.py +20 -0
- mat3ra/esse/models/properties_directory/non_scalar/average_potential_profile.py +4 -8
- mat3ra/esse/models/properties_directory/non_scalar/band_gaps.py +2 -2
- mat3ra/esse/models/properties_directory/non_scalar/band_structure.py +5 -9
- mat3ra/esse/models/properties_directory/non_scalar/charge_density_profile.py +4 -8
- mat3ra/esse/models/properties_directory/non_scalar/density_of_states.py +5 -8
- mat3ra/esse/models/properties_directory/non_scalar/dielectric_tensor.py +2 -2
- mat3ra/esse/models/properties_directory/non_scalar/file_content.py +2 -2
- mat3ra/esse/models/properties_directory/non_scalar/final_structure.py +22 -0
- mat3ra/esse/models/properties_directory/non_scalar/hubbard_u.py +4 -4
- mat3ra/esse/models/properties_directory/non_scalar/hubbard_v.py +3 -4
- mat3ra/esse/models/properties_directory/non_scalar/hubbard_v_nn.py +3 -4
- mat3ra/esse/models/properties_directory/non_scalar/is_relaxed.py +22 -0
- mat3ra/esse/models/properties_directory/non_scalar/phonon_dispersions.py +10 -14
- mat3ra/esse/models/properties_directory/non_scalar/phonon_dos.py +10 -14
- mat3ra/esse/models/properties_directory/non_scalar/potential_profile.py +8 -12
- mat3ra/esse/models/properties_directory/non_scalar/reaction_energy_profile.py +8 -12
- mat3ra/esse/models/properties_directory/non_scalar/stress_tensor.py +5 -7
- mat3ra/esse/models/properties_directory/non_scalar/total_energy_contributions.py +64 -51
- mat3ra/esse/models/properties_directory/non_scalar/vibrational_spectrum.py +10 -14
- mat3ra/esse/models/properties_directory/non_scalar/workflow.py +2234 -0
- mat3ra/esse/models/properties_directory/reusable/hubbard_parameters.py +48 -0
- mat3ra/esse/models/properties_directory/scalar/electron_affinity.py +1 -1
- mat3ra/esse/models/properties_directory/scalar/fermi_energy.py +1 -1
- mat3ra/esse/models/properties_directory/scalar/formation_energy.py +1 -1
- mat3ra/esse/models/properties_directory/scalar/ionization_potential.py +3 -3
- mat3ra/esse/models/properties_directory/scalar/pressure.py +3 -4
- mat3ra/esse/models/properties_directory/scalar/reaction_energy_barrier.py +3 -3
- mat3ra/esse/models/properties_directory/scalar/surface_energy.py +3 -3
- mat3ra/esse/models/properties_directory/scalar/total_energy.py +3 -3
- mat3ra/esse/models/properties_directory/scalar/total_force.py +3 -4
- mat3ra/esse/models/properties_directory/scalar/valence_band_offset.py +3 -3
- mat3ra/esse/models/properties_directory/scalar/zero_point_energy.py +3 -3
- mat3ra/esse/models/properties_directory/structural/atomic_forces.py +5 -5
- mat3ra/esse/models/properties_directory/structural/basis/atomic_constraints_property.py +3 -3
- mat3ra/esse/models/properties_directory/structural/basis/boundary_conditions.py +30 -0
- mat3ra/esse/models/properties_directory/structural/basis/predicted_properties.py +82 -0
- mat3ra/esse/models/properties_directory/structural/lattice/units/__init__.py +23 -1
- mat3ra/esse/models/properties_directory/structural/magnetic_moments.py +5 -5
- mat3ra/esse/models/properties_directory/structural/molecular_pattern.py +5 -5
- mat3ra/esse/models/properties_directory/structural/patterns/functional_group.py +1 -1
- mat3ra/esse/models/properties_directory/structural/patterns/ring.py +1 -1
- mat3ra/esse/models/properties_directory/structural/patterns/special_bond.py +1 -1
- mat3ra/esse/models/properties_directory/workflow/convergence/electronic.py +4 -4
- mat3ra/esse/models/properties_directory/workflow/convergence/ionic.py +6 -6
- mat3ra/esse/models/property/base.py +1492 -14
- mat3ra/esse/models/property/holder.py +3568 -0
- mat3ra/esse/models/property/meta_holder/Reusable_schema_for_energy_value_with_unit_corresponding_to_a_specific_accuracy_level__e/g.py +31 -0
- mat3ra/esse/models/property/meta_holder.py +140 -0
- mat3ra/esse/models/property/proto_holder.py +86 -0
- mat3ra/esse/models/property/raw.py +27 -11
- mat3ra/esse/models/property/source.py +24 -1
- mat3ra/esse/models/workflow/__init__.py +54 -54
- mat3ra/esse/models/workflow/base_flow.py +4 -4
- mat3ra/esse/models/workflow/subworkflow/__init__.py +7 -7
- mat3ra/esse/models/workflow/subworkflow/unit.py +10 -10
- mat3ra/esse/models/workflow/unit/__init__.py +12 -12
- mat3ra/esse/models/workflow/unit/io/__init__.py +4 -4
- mat3ra/esse/models/workflow/unit/io/db.py +2 -2
- mat3ra/esse/models/workflow/unit/io/object_storage.py +1 -1
- {mat3ra_esse-2025.8.14.post0.dist-info → mat3ra_esse-2025.10.8.post0.dist-info}/METADATA +1 -1
- {mat3ra_esse-2025.8.14.post0.dist-info → mat3ra_esse-2025.10.8.post0.dist-info}/RECORD +122 -118
- mat3ra/esse/models/property/meta.py +0 -200
- mat3ra/esse/models/software_directory/ml/exabyteml.py +0 -28
- mat3ra/esse/models/software_directory/ml/unit/execution/__init__.py +0 -879
- mat3ra/esse/models/software_directory/ml/unit/execution/evaluate/__init__.py +0 -3
- mat3ra/esse/models/software_directory/ml/unit/execution/evaluate/cross_validate.py +0 -293
- mat3ra/esse/models/software_directory/ml/unit/execution/initialize.py +0 -293
- mat3ra/esse/models/software_directory/ml/unit/execution/score.py +0 -286
- mat3ra/esse/models/software_directory/ml/unit/execution/train.py +0 -297
- mat3ra/esse/models/software_directory/ml/unit/processing/__init__.py +0 -276
- mat3ra/esse/models/software_directory/ml/unit/processing/data_transformation/__init__.py +0 -167
- mat3ra/esse/models/software_directory/ml/unit/processing/data_transformation/manipulation.py +0 -144
- mat3ra/esse/models/software_directory/ml/unit/processing/data_transformation/scale_and_reduce.py +0 -163
- mat3ra/esse/models/software_directory/ml/unit/processing/feature_selection/__init__.py +0 -148
- mat3ra/esse/models/software_directory/ml/unit/processing/feature_selection/filter_based.py +0 -144
- /mat3ra/esse/models/{software_directory/ml → properties_directory/reusable}/__init__.py +0 -0
- /mat3ra/esse/models/{software_directory/ml/unit → property/meta_holder/Reusable_schema_for_energy_value_with_unit_corresponding_to_a_specific_accuracy_level__e}/__init__.py +0 -0
- {mat3ra_esse-2025.8.14.post0.dist-info → mat3ra_esse-2025.10.8.post0.dist-info}/WHEEL +0 -0
- {mat3ra_esse-2025.8.14.post0.dist-info → mat3ra_esse-2025.10.8.post0.dist-info}/licenses/LICENSE.md +0 -0
- {mat3ra_esse-2025.8.14.post0.dist-info → mat3ra_esse-2025.10.8.post0.dist-info}/top_level.txt +0 -0
|
@@ -5,16 +5,1447 @@
|
|
|
5
5
|
from __future__ import annotations
|
|
6
6
|
|
|
7
7
|
from enum import Enum
|
|
8
|
-
from typing import Any, Dict, List, Optional
|
|
8
|
+
from typing import Any, Dict, List, Optional, Union
|
|
9
9
|
|
|
10
|
-
from pydantic import BaseModel, Field
|
|
10
|
+
from pydantic import BaseModel, Field, RootModel, constr
|
|
11
11
|
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
12
|
+
|
|
13
|
+
class Name(Enum):
|
|
14
|
+
ionization_potential = "ionization_potential"
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
class Units(Enum):
|
|
18
|
+
kJ_mol = "kJ/mol"
|
|
19
|
+
eV = "eV"
|
|
20
|
+
J_mol = "J/mol"
|
|
21
|
+
hartree = "hartree"
|
|
22
|
+
cm_1 = "cm-1"
|
|
23
|
+
Ry = "Ry"
|
|
24
|
+
eV_atom = "eV/atom"
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
class IonizationPotentialElementalPropertySchema(BaseModel):
|
|
28
|
+
name: Name
|
|
29
|
+
units: Units
|
|
30
|
+
value: float
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
class Name31(Enum):
|
|
34
|
+
valence_band_offset = "valence_band_offset"
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
class Units19(Enum):
|
|
38
|
+
eV_A_2 = "eV/A^2"
|
|
39
|
+
|
|
40
|
+
|
|
41
|
+
class ValenceBandOffsetPropertySchema(BaseModel):
|
|
42
|
+
name: Name31
|
|
43
|
+
units: Union[Units, Units19]
|
|
44
|
+
value: float
|
|
45
|
+
|
|
46
|
+
|
|
47
|
+
class Name32(Enum):
|
|
48
|
+
zero_point_energy = "zero_point_energy"
|
|
49
|
+
|
|
50
|
+
|
|
51
|
+
class Units20(Enum):
|
|
52
|
+
kJ_mol = "kJ/mol"
|
|
53
|
+
eV = "eV"
|
|
54
|
+
J_mol = "J/mol"
|
|
55
|
+
hartree = "hartree"
|
|
56
|
+
cm_1 = "cm-1"
|
|
57
|
+
Ry = "Ry"
|
|
58
|
+
eV_atom = "eV/atom"
|
|
59
|
+
|
|
60
|
+
|
|
61
|
+
class Units21(Enum):
|
|
62
|
+
eV_A_2 = "eV/A^2"
|
|
63
|
+
|
|
64
|
+
|
|
65
|
+
class ZeroPointEnergyPropertySchema(BaseModel):
|
|
66
|
+
name: Name32
|
|
67
|
+
units: Union[Units20, Units21]
|
|
68
|
+
value: float
|
|
69
|
+
|
|
70
|
+
|
|
71
|
+
class Name33(Enum):
|
|
72
|
+
pressure = "pressure"
|
|
73
|
+
|
|
74
|
+
|
|
75
|
+
class Units22(Enum):
|
|
76
|
+
kbar = "kbar"
|
|
77
|
+
pa = "pa"
|
|
78
|
+
|
|
79
|
+
|
|
80
|
+
class PressurePropertySchema(BaseModel):
|
|
81
|
+
name: Name33
|
|
82
|
+
units: Units22
|
|
83
|
+
value: float
|
|
84
|
+
|
|
85
|
+
|
|
86
|
+
class Name34(Enum):
|
|
87
|
+
reaction_energy_barrier = "reaction_energy_barrier"
|
|
88
|
+
|
|
89
|
+
|
|
90
|
+
class Units23(Enum):
|
|
91
|
+
kJ_mol = "kJ/mol"
|
|
92
|
+
eV = "eV"
|
|
93
|
+
J_mol = "J/mol"
|
|
94
|
+
hartree = "hartree"
|
|
95
|
+
cm_1 = "cm-1"
|
|
96
|
+
Ry = "Ry"
|
|
97
|
+
eV_atom = "eV/atom"
|
|
98
|
+
|
|
99
|
+
|
|
100
|
+
class Units24(Enum):
|
|
101
|
+
eV_A_2 = "eV/A^2"
|
|
102
|
+
|
|
103
|
+
|
|
104
|
+
class ReactionEnergyBarrierPropertySchema(BaseModel):
|
|
105
|
+
name: Name34
|
|
106
|
+
units: Union[Units23, Units24]
|
|
107
|
+
value: float
|
|
108
|
+
|
|
109
|
+
|
|
110
|
+
class Name35(Enum):
|
|
111
|
+
surface_energy = "surface_energy"
|
|
112
|
+
|
|
113
|
+
|
|
114
|
+
class Units25(Enum):
|
|
115
|
+
kJ_mol = "kJ/mol"
|
|
116
|
+
eV = "eV"
|
|
117
|
+
J_mol = "J/mol"
|
|
118
|
+
hartree = "hartree"
|
|
119
|
+
cm_1 = "cm-1"
|
|
120
|
+
Ry = "Ry"
|
|
121
|
+
eV_atom = "eV/atom"
|
|
122
|
+
|
|
123
|
+
|
|
124
|
+
class Units26(Enum):
|
|
125
|
+
eV_A_2 = "eV/A^2"
|
|
126
|
+
|
|
127
|
+
|
|
128
|
+
class SurfaceEnergyPropertySchema(BaseModel):
|
|
129
|
+
name: Name35
|
|
130
|
+
units: Union[Units25, Units26]
|
|
131
|
+
value: float
|
|
132
|
+
|
|
133
|
+
|
|
134
|
+
class Name36(Enum):
|
|
135
|
+
total_energy = "total_energy"
|
|
136
|
+
|
|
137
|
+
|
|
138
|
+
class Units27(Enum):
|
|
139
|
+
kJ_mol = "kJ/mol"
|
|
140
|
+
eV = "eV"
|
|
141
|
+
J_mol = "J/mol"
|
|
142
|
+
hartree = "hartree"
|
|
143
|
+
cm_1 = "cm-1"
|
|
144
|
+
Ry = "Ry"
|
|
145
|
+
eV_atom = "eV/atom"
|
|
146
|
+
|
|
147
|
+
|
|
148
|
+
class Units28(Enum):
|
|
149
|
+
eV_A_2 = "eV/A^2"
|
|
150
|
+
|
|
151
|
+
|
|
152
|
+
class TotalEnergyPropertySchema(BaseModel):
|
|
153
|
+
name: Name36
|
|
154
|
+
units: Union[Units27, Units28]
|
|
155
|
+
value: float
|
|
156
|
+
|
|
157
|
+
|
|
158
|
+
class Name37(Enum):
|
|
159
|
+
total_force = "total_force"
|
|
160
|
+
|
|
161
|
+
|
|
162
|
+
class Units29(Enum):
|
|
163
|
+
eV_bohr = "eV/bohr"
|
|
164
|
+
eV_angstrom = "eV/angstrom"
|
|
165
|
+
Ry_a_u_ = "Ry/a.u."
|
|
166
|
+
newton = "newton"
|
|
167
|
+
kg_m_s_2 = "kg*m/s^2"
|
|
168
|
+
eV_a_u_ = "eV/a.u."
|
|
169
|
+
|
|
170
|
+
|
|
171
|
+
class TotalForcesPropertySchema(BaseModel):
|
|
172
|
+
name: Name37
|
|
173
|
+
units: Units29
|
|
174
|
+
value: float
|
|
175
|
+
|
|
176
|
+
|
|
177
|
+
class Name38(Enum):
|
|
178
|
+
electron_affinity = "electron_affinity"
|
|
179
|
+
|
|
180
|
+
|
|
181
|
+
class Units30(Enum):
|
|
182
|
+
kJ_mol = "kJ/mol"
|
|
183
|
+
eV = "eV"
|
|
184
|
+
J_mol = "J/mol"
|
|
185
|
+
hartree = "hartree"
|
|
186
|
+
cm_1 = "cm-1"
|
|
187
|
+
Ry = "Ry"
|
|
188
|
+
eV_atom = "eV/atom"
|
|
189
|
+
|
|
190
|
+
|
|
191
|
+
class Units31(Enum):
|
|
192
|
+
eV_A_2 = "eV/A^2"
|
|
193
|
+
|
|
194
|
+
|
|
195
|
+
class ElectronAffinityPropertySchema(BaseModel):
|
|
196
|
+
name: Name38
|
|
197
|
+
units: Union[Units30, Units31]
|
|
198
|
+
value: float
|
|
199
|
+
|
|
200
|
+
|
|
201
|
+
class Name39(Enum):
|
|
202
|
+
fermi_energy = "fermi_energy"
|
|
203
|
+
|
|
204
|
+
|
|
205
|
+
class Units32(Enum):
|
|
206
|
+
kJ_mol = "kJ/mol"
|
|
207
|
+
eV = "eV"
|
|
208
|
+
J_mol = "J/mol"
|
|
209
|
+
hartree = "hartree"
|
|
210
|
+
cm_1 = "cm-1"
|
|
211
|
+
Ry = "Ry"
|
|
212
|
+
eV_atom = "eV/atom"
|
|
213
|
+
|
|
214
|
+
|
|
215
|
+
class Units33(Enum):
|
|
216
|
+
eV_A_2 = "eV/A^2"
|
|
217
|
+
|
|
218
|
+
|
|
219
|
+
class FermiEnergyPropertySchema(BaseModel):
|
|
220
|
+
name: Name39
|
|
221
|
+
units: Union[Units32, Units33]
|
|
222
|
+
value: float
|
|
223
|
+
|
|
224
|
+
|
|
225
|
+
class Name40(Enum):
|
|
226
|
+
formation_energy = "formation_energy"
|
|
227
|
+
|
|
228
|
+
|
|
229
|
+
class Units34(Enum):
|
|
230
|
+
kJ_mol = "kJ/mol"
|
|
231
|
+
eV = "eV"
|
|
232
|
+
J_mol = "J/mol"
|
|
233
|
+
hartree = "hartree"
|
|
234
|
+
cm_1 = "cm-1"
|
|
235
|
+
Ry = "Ry"
|
|
236
|
+
eV_atom = "eV/atom"
|
|
237
|
+
|
|
238
|
+
|
|
239
|
+
class Units35(Enum):
|
|
240
|
+
eV_A_2 = "eV/A^2"
|
|
241
|
+
|
|
242
|
+
|
|
243
|
+
class FormationEnergyPropertySchema(BaseModel):
|
|
244
|
+
name: Name40
|
|
245
|
+
units: Union[Units34, Units35]
|
|
246
|
+
value: float
|
|
247
|
+
|
|
248
|
+
|
|
249
|
+
class Name41(Enum):
|
|
250
|
+
ionization_potential = "ionization_potential"
|
|
251
|
+
|
|
252
|
+
|
|
253
|
+
class Units36(Enum):
|
|
254
|
+
kJ_mol = "kJ/mol"
|
|
255
|
+
eV = "eV"
|
|
256
|
+
J_mol = "J/mol"
|
|
257
|
+
hartree = "hartree"
|
|
258
|
+
cm_1 = "cm-1"
|
|
259
|
+
Ry = "Ry"
|
|
260
|
+
eV_atom = "eV/atom"
|
|
261
|
+
|
|
262
|
+
|
|
263
|
+
class Units37(Enum):
|
|
264
|
+
eV_A_2 = "eV/A^2"
|
|
265
|
+
|
|
266
|
+
|
|
267
|
+
class IonizationPotentialScalarPropertySchema(BaseModel):
|
|
268
|
+
name: Name41
|
|
269
|
+
units: Union[Units36, Units37]
|
|
270
|
+
value: float
|
|
271
|
+
|
|
272
|
+
|
|
273
|
+
class ArrayOf3NumberElementsSchema(RootModel[List[float]]):
|
|
274
|
+
root: List[float] = Field(..., title="array of 3 number elements schema")
|
|
275
|
+
|
|
276
|
+
|
|
277
|
+
class Name42(Enum):
|
|
278
|
+
stress_tensor = "stress_tensor"
|
|
279
|
+
|
|
280
|
+
|
|
281
|
+
class Units38(Enum):
|
|
282
|
+
kbar = "kbar"
|
|
283
|
+
pa = "pa"
|
|
284
|
+
|
|
285
|
+
|
|
286
|
+
class StressTensorPropertySchema(BaseModel):
|
|
287
|
+
value: List[ArrayOf3NumberElementsSchema] = Field(..., max_length=3, min_length=3, title="matrix 3x3 schema")
|
|
288
|
+
name: Name42
|
|
289
|
+
units: Units38
|
|
290
|
+
|
|
291
|
+
|
|
292
|
+
class Name43(Enum):
|
|
293
|
+
band_gaps = "band_gaps"
|
|
15
294
|
|
|
16
295
|
|
|
17
296
|
class Type(Enum):
|
|
297
|
+
direct = "direct"
|
|
298
|
+
indirect = "indirect"
|
|
299
|
+
|
|
300
|
+
|
|
301
|
+
class Units39(Enum):
|
|
302
|
+
kJ_mol = "kJ/mol"
|
|
303
|
+
eV = "eV"
|
|
304
|
+
J_mol = "J/mol"
|
|
305
|
+
hartree = "hartree"
|
|
306
|
+
cm_1 = "cm-1"
|
|
307
|
+
Ry = "Ry"
|
|
308
|
+
eV_atom = "eV/atom"
|
|
309
|
+
|
|
310
|
+
|
|
311
|
+
class BandGapSchema(BaseModel):
|
|
312
|
+
kpointConduction: Optional[List[float]] = Field(None, max_length=3, min_length=3, title="kpoint schema")
|
|
313
|
+
"""
|
|
314
|
+
A k-point is a point in reciprocal space of a crystal.
|
|
315
|
+
"""
|
|
316
|
+
kpointValence: Optional[List[float]] = Field(None, max_length=3, min_length=3, title="kpoint schema")
|
|
317
|
+
"""
|
|
318
|
+
A k-point is a point in reciprocal space of a crystal.
|
|
319
|
+
"""
|
|
320
|
+
eigenvalueConduction: Optional[float] = None
|
|
321
|
+
"""
|
|
322
|
+
eigenvalue at k-point in conduction band
|
|
323
|
+
"""
|
|
324
|
+
eigenvalueValence: Optional[float] = None
|
|
325
|
+
"""
|
|
326
|
+
eigenvalue at k-point in valence band
|
|
327
|
+
"""
|
|
328
|
+
spin: Optional[float] = None
|
|
329
|
+
type: Type
|
|
330
|
+
units: Optional[Units39] = None
|
|
331
|
+
value: float
|
|
332
|
+
|
|
333
|
+
|
|
334
|
+
class Eigenvalue(BaseModel):
|
|
335
|
+
spin: Optional[float] = None
|
|
336
|
+
energies: Optional[List] = None
|
|
337
|
+
occupations: Optional[List] = None
|
|
338
|
+
|
|
339
|
+
|
|
340
|
+
class Eigenvalue2(BaseModel):
|
|
341
|
+
kpoint: Optional[List[float]] = Field(None, max_length=3, min_length=3, title="kpoint schema")
|
|
342
|
+
"""
|
|
343
|
+
A k-point is a point in reciprocal space of a crystal.
|
|
344
|
+
"""
|
|
345
|
+
weight: Optional[float] = None
|
|
346
|
+
eigenvalues: Optional[List[Eigenvalue]] = None
|
|
347
|
+
|
|
348
|
+
|
|
349
|
+
class BandGapsPropertySchema(BaseModel):
|
|
350
|
+
name: Name43
|
|
351
|
+
values: List[BandGapSchema]
|
|
352
|
+
eigenvalues: Optional[List[Eigenvalue2]] = None
|
|
353
|
+
|
|
354
|
+
|
|
355
|
+
class Label(Enum):
|
|
356
|
+
kpoints = "kpoints"
|
|
357
|
+
|
|
358
|
+
|
|
359
|
+
class Units40(Enum):
|
|
360
|
+
crystal = "crystal"
|
|
361
|
+
cartesian = "cartesian"
|
|
362
|
+
|
|
363
|
+
|
|
364
|
+
class AxisSchema(BaseModel):
|
|
365
|
+
label: Label
|
|
366
|
+
"""
|
|
367
|
+
label of an axis object
|
|
368
|
+
"""
|
|
369
|
+
units: Optional[Units40] = "crystal"
|
|
370
|
+
"""
|
|
371
|
+
units for an axis
|
|
372
|
+
"""
|
|
373
|
+
|
|
374
|
+
|
|
375
|
+
class Label5(Enum):
|
|
376
|
+
energy = "energy"
|
|
377
|
+
|
|
378
|
+
|
|
379
|
+
class Units41(Enum):
|
|
380
|
+
kJ_mol = "kJ/mol"
|
|
381
|
+
eV = "eV"
|
|
382
|
+
J_mol = "J/mol"
|
|
383
|
+
hartree = "hartree"
|
|
384
|
+
cm_1 = "cm-1"
|
|
385
|
+
Ry = "Ry"
|
|
386
|
+
eV_atom = "eV/atom"
|
|
387
|
+
|
|
388
|
+
|
|
389
|
+
class AxisSchema8(BaseModel):
|
|
390
|
+
label: Label5
|
|
391
|
+
"""
|
|
392
|
+
label of an axis object
|
|
393
|
+
"""
|
|
394
|
+
units: Optional[Units41] = None
|
|
395
|
+
"""
|
|
396
|
+
units for an axis
|
|
397
|
+
"""
|
|
398
|
+
|
|
399
|
+
|
|
400
|
+
class Name44(Enum):
|
|
401
|
+
band_structure = "band_structure"
|
|
402
|
+
|
|
403
|
+
|
|
404
|
+
class SpinEnum(Enum):
|
|
405
|
+
number_0_5 = 0.5
|
|
406
|
+
number__0_5 = -0.5
|
|
407
|
+
|
|
408
|
+
|
|
409
|
+
class BandStructurePropertySchema(BaseModel):
|
|
410
|
+
xAxis: AxisSchema = Field(..., title="axis schema")
|
|
411
|
+
yAxis: AxisSchema8 = Field(..., title="axis schema")
|
|
412
|
+
name: Name44
|
|
413
|
+
spin: List[SpinEnum]
|
|
414
|
+
"""
|
|
415
|
+
spin of each band
|
|
416
|
+
"""
|
|
417
|
+
xDataArray: List[Union[float, List[float]]]
|
|
418
|
+
"""
|
|
419
|
+
array containing values of x Axis
|
|
420
|
+
"""
|
|
421
|
+
yDataSeries: List[List[float]] = Field(..., title="1 dimension data series schema")
|
|
422
|
+
|
|
423
|
+
|
|
424
|
+
class Label6(Enum):
|
|
425
|
+
qpoints = "qpoints"
|
|
426
|
+
|
|
427
|
+
|
|
428
|
+
class Units42(Enum):
|
|
429
|
+
crystal = "crystal"
|
|
430
|
+
cartesian = "cartesian"
|
|
431
|
+
|
|
432
|
+
|
|
433
|
+
class AxisSchema9(BaseModel):
|
|
434
|
+
label: Label6
|
|
435
|
+
"""
|
|
436
|
+
label of an axis object
|
|
437
|
+
"""
|
|
438
|
+
units: Optional[Units42] = "crystal"
|
|
439
|
+
"""
|
|
440
|
+
units for an axis
|
|
441
|
+
"""
|
|
442
|
+
|
|
443
|
+
|
|
444
|
+
class Label7(Enum):
|
|
445
|
+
frequency = "frequency"
|
|
446
|
+
|
|
447
|
+
|
|
448
|
+
class Units43(Enum):
|
|
449
|
+
cm_1 = "cm-1"
|
|
450
|
+
THz = "THz"
|
|
451
|
+
meV = "meV"
|
|
452
|
+
|
|
453
|
+
|
|
454
|
+
class AxisSchema10(BaseModel):
|
|
455
|
+
label: Label7
|
|
456
|
+
"""
|
|
457
|
+
label of an axis object
|
|
458
|
+
"""
|
|
459
|
+
units: Optional[Units43] = None
|
|
460
|
+
"""
|
|
461
|
+
units for an axis
|
|
462
|
+
"""
|
|
463
|
+
|
|
464
|
+
|
|
465
|
+
class Name45(Enum):
|
|
466
|
+
phonon_dispersions = "phonon_dispersions"
|
|
467
|
+
|
|
468
|
+
|
|
469
|
+
class PhononBandStructurePropertySchema(BaseModel):
|
|
470
|
+
xAxis: AxisSchema9 = Field(..., title="axis schema")
|
|
471
|
+
yAxis: AxisSchema10 = Field(..., title="axis schema")
|
|
472
|
+
name: Name45
|
|
473
|
+
xDataArray: List[Union[float, List[float]]]
|
|
474
|
+
"""
|
|
475
|
+
array containing values of x Axis
|
|
476
|
+
"""
|
|
477
|
+
yDataSeries: List[List[float]] = Field(..., title="1 dimension data series schema")
|
|
478
|
+
|
|
479
|
+
|
|
480
|
+
class Name46(Enum):
|
|
481
|
+
temperature_entropy = "temperature_entropy"
|
|
482
|
+
|
|
483
|
+
|
|
484
|
+
class ScalarSchema(BaseModel):
|
|
485
|
+
name: Optional[Name46] = None
|
|
486
|
+
value: float
|
|
487
|
+
|
|
488
|
+
|
|
489
|
+
class Name47(Enum):
|
|
490
|
+
harris_foulkes = "harris_foulkes"
|
|
491
|
+
|
|
492
|
+
|
|
493
|
+
class ScalarSchema5(BaseModel):
|
|
494
|
+
name: Optional[Name47] = None
|
|
495
|
+
value: float
|
|
496
|
+
|
|
497
|
+
|
|
498
|
+
class Name48(Enum):
|
|
499
|
+
smearing = "smearing"
|
|
500
|
+
|
|
501
|
+
|
|
502
|
+
class ScalarSchema6(BaseModel):
|
|
503
|
+
name: Optional[Name48] = None
|
|
504
|
+
value: float
|
|
505
|
+
|
|
506
|
+
|
|
507
|
+
class Name49(Enum):
|
|
508
|
+
one_electron = "one_electron"
|
|
509
|
+
|
|
510
|
+
|
|
511
|
+
class ScalarSchema7(BaseModel):
|
|
512
|
+
name: Optional[Name49] = None
|
|
513
|
+
value: float
|
|
514
|
+
|
|
515
|
+
|
|
516
|
+
class Name50(Enum):
|
|
517
|
+
hartree = "hartree"
|
|
518
|
+
|
|
519
|
+
|
|
520
|
+
class ScalarSchema8(BaseModel):
|
|
521
|
+
name: Optional[Name50] = None
|
|
522
|
+
value: float
|
|
523
|
+
|
|
524
|
+
|
|
525
|
+
class Name51(Enum):
|
|
526
|
+
exchange = "exchange"
|
|
527
|
+
|
|
528
|
+
|
|
529
|
+
class ScalarSchema9(BaseModel):
|
|
530
|
+
name: Optional[Name51] = None
|
|
531
|
+
value: float
|
|
532
|
+
|
|
533
|
+
|
|
534
|
+
class Name52(Enum):
|
|
535
|
+
exchange_correlation = "exchange_correlation"
|
|
536
|
+
|
|
537
|
+
|
|
538
|
+
class ScalarSchema10(BaseModel):
|
|
539
|
+
name: Optional[Name52] = None
|
|
540
|
+
value: float
|
|
541
|
+
|
|
542
|
+
|
|
543
|
+
class Name53(Enum):
|
|
544
|
+
ewald = "ewald"
|
|
545
|
+
|
|
546
|
+
|
|
547
|
+
class ScalarSchema11(BaseModel):
|
|
548
|
+
name: Optional[Name53] = None
|
|
549
|
+
value: float
|
|
550
|
+
|
|
551
|
+
|
|
552
|
+
class Name54(Enum):
|
|
553
|
+
alphaZ = "alphaZ"
|
|
554
|
+
|
|
555
|
+
|
|
556
|
+
class ScalarSchema12(BaseModel):
|
|
557
|
+
name: Optional[Name54] = None
|
|
558
|
+
value: float
|
|
559
|
+
|
|
560
|
+
|
|
561
|
+
class Name55(Enum):
|
|
562
|
+
atomic_energy = "atomic_energy"
|
|
563
|
+
|
|
564
|
+
|
|
565
|
+
class ScalarSchema13(BaseModel):
|
|
566
|
+
name: Optional[Name55] = None
|
|
567
|
+
value: float
|
|
568
|
+
|
|
569
|
+
|
|
570
|
+
class Name56(Enum):
|
|
571
|
+
eigenvalues = "eigenvalues"
|
|
572
|
+
|
|
573
|
+
|
|
574
|
+
class ScalarSchema14(BaseModel):
|
|
575
|
+
name: Optional[Name56] = None
|
|
576
|
+
value: float
|
|
577
|
+
|
|
578
|
+
|
|
579
|
+
class Name57(Enum):
|
|
580
|
+
PAW_double_counting_correction_2 = "PAW_double-counting_correction_2"
|
|
581
|
+
|
|
582
|
+
|
|
583
|
+
class ScalarSchema15(BaseModel):
|
|
584
|
+
name: Optional[Name57] = None
|
|
585
|
+
value: float
|
|
586
|
+
|
|
587
|
+
|
|
588
|
+
class Name58(Enum):
|
|
589
|
+
PAW_double_counting_correction_3 = "PAW_double-counting_correction_3"
|
|
590
|
+
|
|
591
|
+
|
|
592
|
+
class ScalarSchema16(BaseModel):
|
|
593
|
+
name: Optional[Name58] = None
|
|
594
|
+
value: float
|
|
595
|
+
|
|
596
|
+
|
|
597
|
+
class Name59(Enum):
|
|
598
|
+
hartree_fock = "hartree_fock"
|
|
599
|
+
|
|
600
|
+
|
|
601
|
+
class ScalarSchema17(BaseModel):
|
|
602
|
+
name: Optional[Name59] = None
|
|
603
|
+
value: float
|
|
604
|
+
|
|
605
|
+
|
|
606
|
+
class Name60(Enum):
|
|
607
|
+
total_energy_contributions = "total_energy_contributions"
|
|
608
|
+
|
|
609
|
+
|
|
610
|
+
class Units44(Enum):
|
|
611
|
+
kJ_mol = "kJ/mol"
|
|
612
|
+
eV = "eV"
|
|
613
|
+
J_mol = "J/mol"
|
|
614
|
+
hartree = "hartree"
|
|
615
|
+
cm_1 = "cm-1"
|
|
616
|
+
Ry = "Ry"
|
|
617
|
+
eV_atom = "eV/atom"
|
|
618
|
+
|
|
619
|
+
|
|
620
|
+
class TotalEnergyContributionsPropertySchema(BaseModel):
|
|
621
|
+
temperatureEntropy: Optional[ScalarSchema] = Field(None, title="scalar schema")
|
|
622
|
+
"""
|
|
623
|
+
product of temperature and configurational entropy
|
|
624
|
+
"""
|
|
625
|
+
harris_foulkes: Optional[ScalarSchema5] = Field(None, title="scalar schema")
|
|
626
|
+
"""
|
|
627
|
+
non self-consitent energy based on an input charge density
|
|
628
|
+
"""
|
|
629
|
+
smearing: Optional[ScalarSchema6] = Field(None, title="scalar schema")
|
|
630
|
+
"""
|
|
631
|
+
smearing energy
|
|
632
|
+
"""
|
|
633
|
+
one_electron: Optional[ScalarSchema7] = Field(None, title="scalar schema")
|
|
634
|
+
"""
|
|
635
|
+
kinetic + pseudopotential energy
|
|
636
|
+
"""
|
|
637
|
+
hartree: Optional[ScalarSchema8] = Field(None, title="scalar schema")
|
|
638
|
+
"""
|
|
639
|
+
energy due to coulomb potential
|
|
640
|
+
"""
|
|
641
|
+
exchange: Optional[ScalarSchema9] = Field(None, title="scalar schema")
|
|
642
|
+
"""
|
|
643
|
+
exchange energy
|
|
644
|
+
"""
|
|
645
|
+
exchange_correlation: Optional[ScalarSchema10] = Field(None, title="scalar schema")
|
|
646
|
+
"""
|
|
647
|
+
exchange and correlation energy per particle
|
|
648
|
+
"""
|
|
649
|
+
ewald: Optional[ScalarSchema11] = Field(None, title="scalar schema")
|
|
650
|
+
"""
|
|
651
|
+
summation of interaction energies at long length scales due to coloumbic interactions
|
|
652
|
+
"""
|
|
653
|
+
alphaZ: Optional[ScalarSchema12] = Field(None, title="scalar schema")
|
|
654
|
+
"""
|
|
655
|
+
divergent electrostatic ion interaction in compensating electron gas
|
|
656
|
+
"""
|
|
657
|
+
atomicEnergy: Optional[ScalarSchema13] = Field(None, title="scalar schema")
|
|
658
|
+
"""
|
|
659
|
+
kinetic energy of wavefunctions in the atomic limit
|
|
660
|
+
"""
|
|
661
|
+
eigenvalues: Optional[ScalarSchema14] = Field(None, title="scalar schema")
|
|
662
|
+
"""
|
|
663
|
+
sum of one electron energies of kinetic, electrostatic, and exchange correlation
|
|
664
|
+
"""
|
|
665
|
+
PAWDoubleCounting2: Optional[ScalarSchema15] = Field(None, title="scalar schema")
|
|
666
|
+
"""
|
|
667
|
+
double counting correction 2
|
|
668
|
+
"""
|
|
669
|
+
PAWDoubleCounting3: Optional[ScalarSchema16] = Field(None, title="scalar schema")
|
|
670
|
+
"""
|
|
671
|
+
double counting correction 3
|
|
672
|
+
"""
|
|
673
|
+
hartreeFock: Optional[ScalarSchema17] = Field(None, title="scalar schema")
|
|
674
|
+
"""
|
|
675
|
+
hartree-fock contribution
|
|
676
|
+
"""
|
|
677
|
+
name: Name60
|
|
678
|
+
units: Optional[Units44] = None
|
|
679
|
+
|
|
680
|
+
|
|
681
|
+
class Label8(Enum):
|
|
682
|
+
frequency = "frequency"
|
|
683
|
+
wavenumber = "wavenumber"
|
|
684
|
+
|
|
685
|
+
|
|
686
|
+
class Units45(Enum):
|
|
687
|
+
cm_1 = "cm-1"
|
|
688
|
+
THz = "THz"
|
|
689
|
+
meV = "meV"
|
|
690
|
+
|
|
691
|
+
|
|
692
|
+
class AxisSchema11(BaseModel):
|
|
693
|
+
label: Label8
|
|
694
|
+
"""
|
|
695
|
+
label of an axis object
|
|
696
|
+
"""
|
|
697
|
+
units: Optional[Units45] = None
|
|
698
|
+
"""
|
|
699
|
+
units for an axis
|
|
700
|
+
"""
|
|
701
|
+
|
|
702
|
+
|
|
703
|
+
class Label9(Enum):
|
|
704
|
+
Intensity = "Intensity"
|
|
705
|
+
Absorbance = "Absorbance"
|
|
706
|
+
Absorption_coefficient = "Absorption coefficient"
|
|
707
|
+
|
|
708
|
+
|
|
709
|
+
class Units46(Enum):
|
|
710
|
+
field_debye_angstrom__2 = "(debye/angstrom)^2"
|
|
711
|
+
km_mol = "km/mol"
|
|
712
|
+
m_mol = "m/mol"
|
|
713
|
+
a_u_ = "a.u."
|
|
714
|
+
|
|
715
|
+
|
|
716
|
+
class AxisSchema12(BaseModel):
|
|
717
|
+
label: Label9
|
|
718
|
+
"""
|
|
719
|
+
label of an axis object
|
|
720
|
+
"""
|
|
721
|
+
units: Optional[Units46] = None
|
|
722
|
+
"""
|
|
723
|
+
units for an axis
|
|
724
|
+
"""
|
|
725
|
+
|
|
726
|
+
|
|
727
|
+
class Name61(Enum):
|
|
728
|
+
vibrational_spectrum = "vibrational_spectrum"
|
|
729
|
+
|
|
730
|
+
|
|
731
|
+
class VibrationalSpectrumPropertySchema(BaseModel):
|
|
732
|
+
xAxis: AxisSchema11 = Field(..., title="axis schema")
|
|
733
|
+
yAxis: AxisSchema12 = Field(..., title="axis schema")
|
|
734
|
+
name: Name61
|
|
735
|
+
xDataArray: List[Union[float, List[float]]]
|
|
736
|
+
"""
|
|
737
|
+
array containing values of x Axis
|
|
738
|
+
"""
|
|
739
|
+
yDataSeries: List[List[float]] = Field(..., title="1 dimension data series schema")
|
|
740
|
+
|
|
741
|
+
|
|
742
|
+
class Label10(Enum):
|
|
743
|
+
frequency = "frequency"
|
|
744
|
+
|
|
745
|
+
|
|
746
|
+
class Units47(Enum):
|
|
747
|
+
cm_1 = "cm-1"
|
|
748
|
+
THz = "THz"
|
|
749
|
+
meV = "meV"
|
|
750
|
+
|
|
751
|
+
|
|
752
|
+
class AxisSchema13(BaseModel):
|
|
753
|
+
label: Label10
|
|
754
|
+
"""
|
|
755
|
+
label of an axis object
|
|
756
|
+
"""
|
|
757
|
+
units: Optional[Units47] = None
|
|
758
|
+
"""
|
|
759
|
+
units for an axis
|
|
760
|
+
"""
|
|
761
|
+
|
|
762
|
+
|
|
763
|
+
class Label11(Enum):
|
|
764
|
+
Phonon_DOS = "Phonon DOS"
|
|
765
|
+
|
|
766
|
+
|
|
767
|
+
class Units48(Enum):
|
|
768
|
+
states_cm_1 = "states/cm-1"
|
|
769
|
+
states_THz = "states/THz"
|
|
770
|
+
states_meV = "states/meV"
|
|
771
|
+
|
|
772
|
+
|
|
773
|
+
class AxisSchema14(BaseModel):
|
|
774
|
+
label: Label11
|
|
775
|
+
"""
|
|
776
|
+
label of an axis object
|
|
777
|
+
"""
|
|
778
|
+
units: Optional[Units48] = None
|
|
779
|
+
"""
|
|
780
|
+
units for an axis
|
|
781
|
+
"""
|
|
782
|
+
|
|
783
|
+
|
|
784
|
+
class Name62(Enum):
|
|
785
|
+
phonon_dos = "phonon_dos"
|
|
786
|
+
|
|
787
|
+
|
|
788
|
+
class PhononDensityOfStatesPropertySchema(BaseModel):
|
|
789
|
+
xAxis: AxisSchema13 = Field(..., title="axis schema")
|
|
790
|
+
yAxis: AxisSchema14 = Field(..., title="axis schema")
|
|
791
|
+
name: Name62
|
|
792
|
+
xDataArray: List[Union[float, List[float]]]
|
|
793
|
+
"""
|
|
794
|
+
array containing values of x Axis
|
|
795
|
+
"""
|
|
796
|
+
yDataSeries: List[List[float]] = Field(..., title="1 dimension data series schema")
|
|
797
|
+
|
|
798
|
+
|
|
799
|
+
class Label12(Enum):
|
|
800
|
+
z_coordinate = "z coordinate"
|
|
801
|
+
|
|
802
|
+
|
|
803
|
+
class AxisSchema15(BaseModel):
|
|
804
|
+
label: Label12
|
|
805
|
+
"""
|
|
806
|
+
label of an axis object
|
|
807
|
+
"""
|
|
808
|
+
units: Optional[str] = None
|
|
809
|
+
"""
|
|
810
|
+
units for an axis
|
|
811
|
+
"""
|
|
812
|
+
|
|
813
|
+
|
|
814
|
+
class Label13(Enum):
|
|
815
|
+
energy = "energy"
|
|
816
|
+
|
|
817
|
+
|
|
818
|
+
class Units49(Enum):
|
|
819
|
+
kJ_mol = "kJ/mol"
|
|
820
|
+
eV = "eV"
|
|
821
|
+
J_mol = "J/mol"
|
|
822
|
+
hartree = "hartree"
|
|
823
|
+
cm_1 = "cm-1"
|
|
824
|
+
Ry = "Ry"
|
|
825
|
+
eV_atom = "eV/atom"
|
|
826
|
+
|
|
827
|
+
|
|
828
|
+
class AxisSchema16(BaseModel):
|
|
829
|
+
label: Label13
|
|
830
|
+
"""
|
|
831
|
+
label of an axis object
|
|
832
|
+
"""
|
|
833
|
+
units: Optional[Units49] = None
|
|
834
|
+
"""
|
|
835
|
+
units for an axis
|
|
836
|
+
"""
|
|
837
|
+
|
|
838
|
+
|
|
839
|
+
class Name63(Enum):
|
|
840
|
+
potential_profile = "potential_profile"
|
|
841
|
+
|
|
842
|
+
|
|
843
|
+
class PotentialProfilePropertySchema(BaseModel):
|
|
844
|
+
xAxis: AxisSchema15 = Field(..., title="axis schema")
|
|
845
|
+
yAxis: AxisSchema16 = Field(..., title="axis schema")
|
|
846
|
+
name: Name63
|
|
847
|
+
xDataArray: List[Union[float, List[float]]]
|
|
848
|
+
"""
|
|
849
|
+
array containing values of x Axis
|
|
850
|
+
"""
|
|
851
|
+
yDataSeries: List[List[float]] = Field(..., title="1 dimension data series schema")
|
|
852
|
+
|
|
853
|
+
|
|
854
|
+
class Label14(Enum):
|
|
855
|
+
reaction_coordinate = "reaction coordinate"
|
|
856
|
+
|
|
857
|
+
|
|
858
|
+
class AxisSchema17(BaseModel):
|
|
859
|
+
label: Label14
|
|
860
|
+
"""
|
|
861
|
+
label of an axis object
|
|
862
|
+
"""
|
|
863
|
+
units: Optional[str] = None
|
|
864
|
+
"""
|
|
865
|
+
units for an axis
|
|
866
|
+
"""
|
|
867
|
+
|
|
868
|
+
|
|
869
|
+
class Label15(Enum):
|
|
870
|
+
energy = "energy"
|
|
871
|
+
|
|
872
|
+
|
|
873
|
+
class AxisSchema18(BaseModel):
|
|
874
|
+
label: Label15
|
|
875
|
+
"""
|
|
876
|
+
label of an axis object
|
|
877
|
+
"""
|
|
878
|
+
units: Optional[Units49] = None
|
|
879
|
+
"""
|
|
880
|
+
units for an axis
|
|
881
|
+
"""
|
|
882
|
+
|
|
883
|
+
|
|
884
|
+
class Name64(Enum):
|
|
885
|
+
reaction_energy_profile = "reaction_energy_profile"
|
|
886
|
+
|
|
887
|
+
|
|
888
|
+
class ReactionEnergyProfilePropertySchema(BaseModel):
|
|
889
|
+
xAxis: AxisSchema17 = Field(..., title="axis schema")
|
|
890
|
+
yAxis: AxisSchema18 = Field(..., title="axis schema")
|
|
891
|
+
name: Name64
|
|
892
|
+
xDataArray: List[Union[float, List[float]]]
|
|
893
|
+
"""
|
|
894
|
+
array containing values of x Axis
|
|
895
|
+
"""
|
|
896
|
+
yDataSeries: List[List[float]] = Field(..., title="1 dimension data series schema")
|
|
897
|
+
|
|
898
|
+
|
|
899
|
+
class AxisSchema19(BaseModel):
|
|
900
|
+
label: Label15
|
|
901
|
+
"""
|
|
902
|
+
label of an axis object
|
|
903
|
+
"""
|
|
904
|
+
units: Optional[Units49] = None
|
|
905
|
+
"""
|
|
906
|
+
units for an axis
|
|
907
|
+
"""
|
|
908
|
+
|
|
909
|
+
|
|
910
|
+
class Label17(Enum):
|
|
911
|
+
density_of_states = "density of states"
|
|
912
|
+
|
|
913
|
+
|
|
914
|
+
class Units52(Enum):
|
|
915
|
+
states_unitcell = "states/unitcell"
|
|
916
|
+
|
|
917
|
+
|
|
918
|
+
class AxisSchema20(BaseModel):
|
|
919
|
+
label: Label17
|
|
920
|
+
"""
|
|
921
|
+
label of an axis object
|
|
922
|
+
"""
|
|
923
|
+
units: Optional[Units52] = None
|
|
924
|
+
"""
|
|
925
|
+
units for an axis
|
|
926
|
+
"""
|
|
927
|
+
|
|
928
|
+
|
|
929
|
+
class Name65(Enum):
|
|
930
|
+
density_of_states = "density_of_states"
|
|
931
|
+
|
|
932
|
+
|
|
933
|
+
class Spin(Enum):
|
|
934
|
+
number_0_5 = 0.5
|
|
935
|
+
number__0_5 = -0.5
|
|
936
|
+
|
|
937
|
+
|
|
938
|
+
class LegendItem(BaseModel):
|
|
939
|
+
element: Optional[str] = None
|
|
940
|
+
"""
|
|
941
|
+
chemical element
|
|
942
|
+
"""
|
|
943
|
+
index: Optional[int] = None
|
|
944
|
+
"""
|
|
945
|
+
index inside sub-array of atoms of the same element type
|
|
946
|
+
"""
|
|
947
|
+
electronicState: Optional[constr(pattern=r"^([1-5]{1})?(s|p|d|f|g).*$")] = None
|
|
948
|
+
"""
|
|
949
|
+
electronic character and shell of PDOS, such as `1s` or `s`, or `total`
|
|
950
|
+
"""
|
|
951
|
+
spin: Optional[Spin] = None
|
|
952
|
+
"""
|
|
953
|
+
spin of the electronic state
|
|
954
|
+
"""
|
|
955
|
+
|
|
956
|
+
|
|
957
|
+
class DensityOfStatesPropertySchema(BaseModel):
|
|
958
|
+
xAxis: AxisSchema19 = Field(..., title="axis schema")
|
|
959
|
+
yAxis: AxisSchema20 = Field(..., title="axis schema")
|
|
960
|
+
name: Name65
|
|
961
|
+
legend: List[LegendItem]
|
|
962
|
+
xDataArray: List[Union[float, List[float]]]
|
|
963
|
+
"""
|
|
964
|
+
array containing values of x Axis
|
|
965
|
+
"""
|
|
966
|
+
yDataSeries: List[List[float]] = Field(..., title="1 dimension data series schema")
|
|
967
|
+
|
|
968
|
+
|
|
969
|
+
class Name66(Enum):
|
|
970
|
+
dielectric_tensor = "dielectric_tensor"
|
|
971
|
+
|
|
972
|
+
|
|
973
|
+
class Part(Enum):
|
|
974
|
+
real = "real"
|
|
975
|
+
imaginary = "imaginary"
|
|
976
|
+
|
|
977
|
+
|
|
978
|
+
class DielectricTensor(BaseModel):
|
|
979
|
+
part: Part
|
|
980
|
+
"""
|
|
981
|
+
Real or imaginary part of the dielectric tensor component
|
|
982
|
+
"""
|
|
983
|
+
spin: Optional[float] = None
|
|
984
|
+
frequencies: List[float]
|
|
985
|
+
"""
|
|
986
|
+
Frequencies
|
|
987
|
+
"""
|
|
988
|
+
components: List[List[float]]
|
|
989
|
+
"""
|
|
990
|
+
Matrix with 3 columns, e.g. x, y, z
|
|
991
|
+
"""
|
|
992
|
+
|
|
993
|
+
|
|
994
|
+
class DielectricTensorPropertySchema(BaseModel):
|
|
995
|
+
name: Name66
|
|
996
|
+
values: List[DielectricTensor]
|
|
997
|
+
|
|
998
|
+
|
|
999
|
+
class Name67(Enum):
|
|
1000
|
+
file_content = "file_content"
|
|
1001
|
+
|
|
1002
|
+
|
|
1003
|
+
class Filetype(Enum):
|
|
1004
|
+
image = "image"
|
|
1005
|
+
text = "text"
|
|
1006
|
+
csv = "csv"
|
|
1007
|
+
|
|
1008
|
+
|
|
1009
|
+
class ObjectStorageContainerData(BaseModel):
|
|
1010
|
+
CONTAINER: Optional[str] = None
|
|
1011
|
+
"""
|
|
1012
|
+
Object storage container for the file
|
|
1013
|
+
"""
|
|
1014
|
+
NAME: Optional[str] = None
|
|
1015
|
+
"""
|
|
1016
|
+
Name of the file inside the object storage bucket
|
|
1017
|
+
"""
|
|
1018
|
+
PROVIDER: Optional[str] = None
|
|
1019
|
+
"""
|
|
1020
|
+
Object storage provider
|
|
1021
|
+
"""
|
|
1022
|
+
REGION: Optional[str] = None
|
|
1023
|
+
"""
|
|
1024
|
+
Region for the object container specified in Container
|
|
1025
|
+
"""
|
|
1026
|
+
SIZE: Optional[int] = None
|
|
1027
|
+
"""
|
|
1028
|
+
Size of the file in bytes
|
|
1029
|
+
"""
|
|
1030
|
+
TIMESTAMP: Optional[str] = None
|
|
1031
|
+
"""
|
|
1032
|
+
Unix timestamp showing when the file was last modified
|
|
1033
|
+
"""
|
|
1034
|
+
|
|
1035
|
+
|
|
1036
|
+
class FileContentPropertySchema(BaseModel):
|
|
1037
|
+
name: Name67
|
|
1038
|
+
filetype: Filetype
|
|
1039
|
+
"""
|
|
1040
|
+
What kind of file this is, e.g. image / text
|
|
1041
|
+
"""
|
|
1042
|
+
objectData: ObjectStorageContainerData = Field(..., title="Object Storage Container Data")
|
|
1043
|
+
pathname: Optional[str] = None
|
|
1044
|
+
"""
|
|
1045
|
+
Relative path to the directory that contains the file.
|
|
1046
|
+
"""
|
|
1047
|
+
basename: Optional[str] = None
|
|
1048
|
+
"""
|
|
1049
|
+
Basename of the file
|
|
1050
|
+
"""
|
|
1051
|
+
|
|
1052
|
+
|
|
1053
|
+
class Name68(Enum):
|
|
1054
|
+
hubbard_u = "hubbard_u"
|
|
1055
|
+
|
|
1056
|
+
|
|
1057
|
+
class Units53(Enum):
|
|
1058
|
+
eV = "eV"
|
|
1059
|
+
|
|
1060
|
+
|
|
1061
|
+
class AtomicDataPerOrbitalNumeric(BaseModel):
|
|
1062
|
+
id: int
|
|
1063
|
+
"""
|
|
1064
|
+
Site number or index in the lattice
|
|
1065
|
+
"""
|
|
1066
|
+
atomicSpecies: constr(pattern=r"^[a-zA-Z]{1,2}[\d+]?$")
|
|
1067
|
+
"""
|
|
1068
|
+
Example: Co1, Mn
|
|
1069
|
+
"""
|
|
1070
|
+
orbitalName: constr(pattern=r"^[1-7][sSpPdDfF]$")
|
|
1071
|
+
value: float
|
|
1072
|
+
"""
|
|
1073
|
+
Value related to a specific property, e.g., Hubbard U, V etc.
|
|
1074
|
+
"""
|
|
1075
|
+
|
|
1076
|
+
|
|
1077
|
+
class HubbardUParametersPropertySchema(BaseModel):
|
|
1078
|
+
name: Name68
|
|
1079
|
+
units: Units53
|
|
1080
|
+
values: List[AtomicDataPerOrbitalNumeric]
|
|
1081
|
+
|
|
1082
|
+
|
|
1083
|
+
class Name69(Enum):
|
|
1084
|
+
hubbard_v = "hubbard_v"
|
|
1085
|
+
|
|
1086
|
+
|
|
1087
|
+
class AtomicDataPerOrbitalPairNumeric(BaseModel):
|
|
1088
|
+
id: int
|
|
1089
|
+
"""
|
|
1090
|
+
Site number or index in the lattice
|
|
1091
|
+
"""
|
|
1092
|
+
id2: int
|
|
1093
|
+
"""
|
|
1094
|
+
Site number or index in the lattice of second site
|
|
1095
|
+
"""
|
|
1096
|
+
atomicSpecies: constr(pattern=r"^[a-zA-Z]{1,2}[\d+]?$")
|
|
1097
|
+
"""
|
|
1098
|
+
Example: Co1, Mn
|
|
1099
|
+
"""
|
|
1100
|
+
atomicSpecies2: constr(pattern=r"^[a-zA-Z]{1,2}[\d+]?$")
|
|
1101
|
+
"""
|
|
1102
|
+
Example: Co2, O
|
|
1103
|
+
"""
|
|
1104
|
+
orbitalName: Optional[constr(pattern=r"^[1-7][sSpPdDfF]$")] = None
|
|
1105
|
+
orbitalName2: Optional[constr(pattern=r"^[1-7][sSpPdDfF]$")] = None
|
|
1106
|
+
distance: Optional[float] = None
|
|
1107
|
+
"""
|
|
1108
|
+
Distance between two sites in Bohr.
|
|
1109
|
+
"""
|
|
1110
|
+
value: float
|
|
1111
|
+
"""
|
|
1112
|
+
Value related to a specific property, e.g., Hubbard U, V etc.
|
|
1113
|
+
"""
|
|
1114
|
+
|
|
1115
|
+
|
|
1116
|
+
class HubbardVParametersPropertySchema(BaseModel):
|
|
1117
|
+
name: Name69
|
|
1118
|
+
units: Units53
|
|
1119
|
+
values: List[AtomicDataPerOrbitalPairNumeric]
|
|
1120
|
+
|
|
1121
|
+
|
|
1122
|
+
class Name70(Enum):
|
|
1123
|
+
hubbard_v_nn = "hubbard_v_nn"
|
|
1124
|
+
|
|
1125
|
+
|
|
1126
|
+
class HubbardVNNParametersPropertySchema(BaseModel):
|
|
1127
|
+
name: Name70
|
|
1128
|
+
units: Units53
|
|
1129
|
+
values: List[AtomicDataPerOrbitalPairNumeric]
|
|
1130
|
+
|
|
1131
|
+
|
|
1132
|
+
class Label18(Enum):
|
|
1133
|
+
z_coordinate = "z coordinate"
|
|
1134
|
+
|
|
1135
|
+
|
|
1136
|
+
class Units56(Enum):
|
|
1137
|
+
km = "km"
|
|
1138
|
+
m = "m"
|
|
1139
|
+
cm = "cm"
|
|
1140
|
+
mm = "mm"
|
|
1141
|
+
um = "um"
|
|
1142
|
+
nm = "nm"
|
|
1143
|
+
angstrom = "angstrom"
|
|
1144
|
+
a_u_ = "a.u."
|
|
1145
|
+
bohr = "bohr"
|
|
1146
|
+
pm = "pm"
|
|
1147
|
+
|
|
1148
|
+
|
|
1149
|
+
class AxisSchema21(BaseModel):
|
|
1150
|
+
label: Label18
|
|
1151
|
+
"""
|
|
1152
|
+
label of an axis object
|
|
1153
|
+
"""
|
|
1154
|
+
units: Optional[Units56] = None
|
|
1155
|
+
"""
|
|
1156
|
+
units for an axis
|
|
1157
|
+
"""
|
|
1158
|
+
|
|
1159
|
+
|
|
1160
|
+
class Label19(Enum):
|
|
1161
|
+
energy = "energy"
|
|
1162
|
+
|
|
1163
|
+
|
|
1164
|
+
class Units57(Enum):
|
|
1165
|
+
kJ_mol = "kJ/mol"
|
|
1166
|
+
eV = "eV"
|
|
1167
|
+
J_mol = "J/mol"
|
|
1168
|
+
hartree = "hartree"
|
|
1169
|
+
cm_1 = "cm-1"
|
|
1170
|
+
Ry = "Ry"
|
|
1171
|
+
eV_atom = "eV/atom"
|
|
1172
|
+
|
|
1173
|
+
|
|
1174
|
+
class AxisSchema22(BaseModel):
|
|
1175
|
+
label: Label19
|
|
1176
|
+
"""
|
|
1177
|
+
label of an axis object
|
|
1178
|
+
"""
|
|
1179
|
+
units: Optional[Units57] = None
|
|
1180
|
+
"""
|
|
1181
|
+
units for an axis
|
|
1182
|
+
"""
|
|
1183
|
+
|
|
1184
|
+
|
|
1185
|
+
class Name71(Enum):
|
|
1186
|
+
average_potential_profile = "average_potential_profile"
|
|
1187
|
+
|
|
1188
|
+
|
|
1189
|
+
class AveragePotentialProfilePropertySchema(BaseModel):
|
|
1190
|
+
xAxis: AxisSchema21 = Field(..., title="axis schema")
|
|
1191
|
+
yAxis: AxisSchema22 = Field(..., title="axis schema")
|
|
1192
|
+
name: Name71
|
|
1193
|
+
xDataArray: List[Union[float, List[float]]]
|
|
1194
|
+
"""
|
|
1195
|
+
array containing values of x Axis
|
|
1196
|
+
"""
|
|
1197
|
+
yDataSeries: List[List[float]] = Field(..., title="1 dimension data series schema")
|
|
1198
|
+
|
|
1199
|
+
|
|
1200
|
+
class Label20(Enum):
|
|
1201
|
+
z_coordinate = "z coordinate"
|
|
1202
|
+
|
|
1203
|
+
|
|
1204
|
+
class AxisSchema23(BaseModel):
|
|
1205
|
+
label: Label20
|
|
1206
|
+
"""
|
|
1207
|
+
label of an axis object
|
|
1208
|
+
"""
|
|
1209
|
+
units: Optional[str] = None
|
|
1210
|
+
"""
|
|
1211
|
+
units for an axis
|
|
1212
|
+
"""
|
|
1213
|
+
|
|
1214
|
+
|
|
1215
|
+
class Label21(Enum):
|
|
1216
|
+
charge_density = "charge density"
|
|
1217
|
+
|
|
1218
|
+
|
|
1219
|
+
class Units58(Enum):
|
|
1220
|
+
e_A = "e/A"
|
|
1221
|
+
|
|
1222
|
+
|
|
1223
|
+
class AxisSchema24(BaseModel):
|
|
1224
|
+
label: Label21
|
|
1225
|
+
"""
|
|
1226
|
+
label of an axis object
|
|
1227
|
+
"""
|
|
1228
|
+
units: Optional[Units58] = None
|
|
1229
|
+
"""
|
|
1230
|
+
units for an axis
|
|
1231
|
+
"""
|
|
1232
|
+
|
|
1233
|
+
|
|
1234
|
+
class Name72(Enum):
|
|
1235
|
+
charge_density_profile = "charge_density_profile"
|
|
1236
|
+
|
|
1237
|
+
|
|
1238
|
+
class ChargeDensityProfilePropertySchema(BaseModel):
|
|
1239
|
+
xAxis: AxisSchema23 = Field(..., title="axis schema")
|
|
1240
|
+
yAxis: AxisSchema24 = Field(..., title="axis schema")
|
|
1241
|
+
name: Name72
|
|
1242
|
+
xDataArray: List[Union[float, List[float]]]
|
|
1243
|
+
"""
|
|
1244
|
+
array containing values of x Axis
|
|
1245
|
+
"""
|
|
1246
|
+
yDataSeries: List[List[float]] = Field(..., title="1 dimension data series schema")
|
|
1247
|
+
|
|
1248
|
+
|
|
1249
|
+
class Name73(Enum):
|
|
1250
|
+
magnetic_moments = "magnetic_moments"
|
|
1251
|
+
|
|
1252
|
+
|
|
1253
|
+
class AtomicVectorSchema(BaseModel):
|
|
1254
|
+
value: List[float] = Field(..., max_length=3, min_length=3, title="vector 3d schema")
|
|
1255
|
+
"""
|
|
1256
|
+
value of this entry
|
|
1257
|
+
"""
|
|
1258
|
+
id: int
|
|
1259
|
+
"""
|
|
1260
|
+
integer id of this entry
|
|
1261
|
+
"""
|
|
1262
|
+
|
|
1263
|
+
|
|
1264
|
+
class Units59(Enum):
|
|
1265
|
+
uB = "uB"
|
|
1266
|
+
|
|
1267
|
+
|
|
1268
|
+
class MagneticMomentsPropertySchema(BaseModel):
|
|
1269
|
+
name: Name73
|
|
1270
|
+
values: List[AtomicVectorSchema] = Field(..., title="atomic vectors schema")
|
|
1271
|
+
units: Units59
|
|
1272
|
+
|
|
1273
|
+
|
|
1274
|
+
class Name74(Enum):
|
|
1275
|
+
atomic_forces = "atomic_forces"
|
|
1276
|
+
|
|
1277
|
+
|
|
1278
|
+
class Units60(Enum):
|
|
1279
|
+
eV_bohr = "eV/bohr"
|
|
1280
|
+
eV_angstrom = "eV/angstrom"
|
|
1281
|
+
Ry_a_u_ = "Ry/a.u."
|
|
1282
|
+
newton = "newton"
|
|
1283
|
+
kg_m_s_2 = "kg*m/s^2"
|
|
1284
|
+
eV_a_u_ = "eV/a.u."
|
|
1285
|
+
|
|
1286
|
+
|
|
1287
|
+
class AtomicForcesPropertySchema(BaseModel):
|
|
1288
|
+
name: Name74
|
|
1289
|
+
values: List[AtomicVectorSchema] = Field(..., title="atomic vectors schema")
|
|
1290
|
+
units: Units60
|
|
1291
|
+
|
|
1292
|
+
|
|
1293
|
+
class Name75(Enum):
|
|
1294
|
+
atomic_constraints = "atomic_constraints"
|
|
1295
|
+
|
|
1296
|
+
|
|
1297
|
+
class AtomicConstraintSchema(BaseModel):
|
|
1298
|
+
value: List[bool] = Field(..., title="vector boolean 3d schema")
|
|
1299
|
+
"""
|
|
1300
|
+
value of this entry
|
|
1301
|
+
"""
|
|
1302
|
+
id: int
|
|
1303
|
+
"""
|
|
1304
|
+
integer id of this entry
|
|
1305
|
+
"""
|
|
1306
|
+
|
|
1307
|
+
|
|
1308
|
+
class AtomicConstraintsPropertySchema(BaseModel):
|
|
1309
|
+
name: Name75
|
|
1310
|
+
values: List[AtomicConstraintSchema] = Field(..., title="atomic constraints schema")
|
|
1311
|
+
"""
|
|
1312
|
+
atomic constraints schema
|
|
1313
|
+
"""
|
|
1314
|
+
|
|
1315
|
+
|
|
1316
|
+
class Name76(Enum):
|
|
1317
|
+
functional_group = "functional_group"
|
|
1318
|
+
|
|
1319
|
+
|
|
1320
|
+
class ObjectWithId(BaseModel):
|
|
1321
|
+
isConnector: Optional[bool] = None
|
|
1322
|
+
"""
|
|
1323
|
+
whether atom connects to atoms outside of functional group.
|
|
1324
|
+
"""
|
|
1325
|
+
id: int
|
|
1326
|
+
"""
|
|
1327
|
+
integer id of this entry
|
|
1328
|
+
"""
|
|
1329
|
+
|
|
1330
|
+
|
|
1331
|
+
class FunctionalGroupPatternSchema(BaseModel):
|
|
1332
|
+
name: Name76
|
|
1333
|
+
atoms: Optional[List[ObjectWithId]] = Field(None, title="array of ids")
|
|
1334
|
+
"""
|
|
1335
|
+
array of objects containing integer id each
|
|
1336
|
+
"""
|
|
1337
|
+
SMARTS: Optional[str] = None
|
|
1338
|
+
"""
|
|
1339
|
+
SMARTS string for classification of FG; https://en.wikipedia.org/wiki/SMILES_arbitrary_target_specification
|
|
1340
|
+
"""
|
|
1341
|
+
|
|
1342
|
+
|
|
1343
|
+
class Name77(Enum):
|
|
1344
|
+
ring = "ring"
|
|
1345
|
+
|
|
1346
|
+
|
|
1347
|
+
class RingPatternSchema(BaseModel):
|
|
1348
|
+
name: Name77
|
|
1349
|
+
atoms: Optional[List[ObjectWithId]] = Field(None, title="array of ids")
|
|
1350
|
+
"""
|
|
1351
|
+
array of objects containing integer id each
|
|
1352
|
+
"""
|
|
1353
|
+
isAromatic: Optional[bool] = None
|
|
1354
|
+
|
|
1355
|
+
|
|
1356
|
+
class Name78(Enum):
|
|
1357
|
+
special_bond = "special_bond"
|
|
1358
|
+
|
|
1359
|
+
|
|
1360
|
+
class SpecialBondPatternSchema(BaseModel):
|
|
1361
|
+
name: Name78
|
|
1362
|
+
atoms: Optional[List[ObjectWithId]] = Field(None, title="array of ids")
|
|
1363
|
+
"""
|
|
1364
|
+
array of objects containing integer id each
|
|
1365
|
+
"""
|
|
1366
|
+
|
|
1367
|
+
|
|
1368
|
+
class Name79(Enum):
|
|
1369
|
+
convergence_electronic = "convergence_electronic"
|
|
1370
|
+
|
|
1371
|
+
|
|
1372
|
+
class Units61(Enum):
|
|
1373
|
+
eV = "eV"
|
|
1374
|
+
Ry = "Ry"
|
|
1375
|
+
hartree = "hartree"
|
|
1376
|
+
|
|
1377
|
+
|
|
1378
|
+
class ConvergenceElectronicPropertySchema(BaseModel):
|
|
1379
|
+
name: Name79
|
|
1380
|
+
units: Units61
|
|
1381
|
+
data: List[List[float]]
|
|
1382
|
+
|
|
1383
|
+
|
|
1384
|
+
class Name80(Enum):
|
|
1385
|
+
convergence_ionic = "convergence_ionic"
|
|
1386
|
+
|
|
1387
|
+
|
|
1388
|
+
class Units62(Enum):
|
|
1389
|
+
eV = "eV"
|
|
1390
|
+
|
|
1391
|
+
|
|
1392
|
+
class Units63(Enum):
|
|
1393
|
+
eV = "eV"
|
|
1394
|
+
Ry = "Ry"
|
|
1395
|
+
hartree = "hartree"
|
|
1396
|
+
|
|
1397
|
+
|
|
1398
|
+
class Electronic(BaseModel):
|
|
1399
|
+
units: Optional[Units63] = None
|
|
1400
|
+
"""
|
|
1401
|
+
units for force tolerance
|
|
1402
|
+
"""
|
|
1403
|
+
data: Optional[List[float]] = None
|
|
1404
|
+
|
|
1405
|
+
|
|
1406
|
+
class Datum(BaseModel):
|
|
1407
|
+
energy: float
|
|
1408
|
+
"""
|
|
1409
|
+
converged electronic energy for this structure (last in `electronic`)
|
|
1410
|
+
"""
|
|
1411
|
+
structure: Optional[Dict[str, Any]] = None
|
|
1412
|
+
"""
|
|
1413
|
+
TODO: structural information at each step to be here
|
|
1414
|
+
"""
|
|
1415
|
+
electronic: Optional[Electronic] = None
|
|
1416
|
+
"""
|
|
1417
|
+
data about electronic at this ionic step
|
|
1418
|
+
"""
|
|
1419
|
+
|
|
1420
|
+
|
|
1421
|
+
class ConvergenceIonicPropertySchema(BaseModel):
|
|
1422
|
+
name: Name80
|
|
1423
|
+
tolerance: Optional[Any] = None
|
|
1424
|
+
"""
|
|
1425
|
+
for ionic convergence tolerance shows force tolerance
|
|
1426
|
+
"""
|
|
1427
|
+
units: Units62
|
|
1428
|
+
"""
|
|
1429
|
+
units for force tolerance
|
|
1430
|
+
"""
|
|
1431
|
+
data: List[Datum]
|
|
1432
|
+
"""
|
|
1433
|
+
energetic and structural information
|
|
1434
|
+
"""
|
|
1435
|
+
|
|
1436
|
+
|
|
1437
|
+
class Info(BaseModel):
|
|
1438
|
+
jobId: str
|
|
1439
|
+
"""
|
|
1440
|
+
Job's identity
|
|
1441
|
+
"""
|
|
1442
|
+
unitId: str
|
|
1443
|
+
"""
|
|
1444
|
+
Id of the unit that extracted the result
|
|
1445
|
+
"""
|
|
1446
|
+
|
|
1447
|
+
|
|
1448
|
+
class Type5(Enum):
|
|
18
1449
|
experiment = "experiment"
|
|
19
1450
|
|
|
20
1451
|
|
|
@@ -55,7 +1486,7 @@ class LocationSchema(BaseModel):
|
|
|
55
1486
|
"""
|
|
56
1487
|
|
|
57
1488
|
|
|
58
|
-
class
|
|
1489
|
+
class Type6(Enum):
|
|
59
1490
|
literature = "literature"
|
|
60
1491
|
|
|
61
1492
|
|
|
@@ -65,7 +1496,7 @@ class PagesSchema(BaseModel):
|
|
|
65
1496
|
|
|
66
1497
|
|
|
67
1498
|
class LiteratureReferenceSchema(BaseModel):
|
|
68
|
-
type: Optional[
|
|
1499
|
+
type: Optional[Type6] = None
|
|
69
1500
|
doi: Optional[str] = None
|
|
70
1501
|
"""
|
|
71
1502
|
Digital Object Identifier of the reference.
|
|
@@ -125,7 +1556,7 @@ class LiteratureReferenceSchema(BaseModel):
|
|
|
125
1556
|
|
|
126
1557
|
|
|
127
1558
|
class InfoForCharacteristicObtainedByExperiment(BaseModel):
|
|
128
|
-
type: Optional[
|
|
1559
|
+
type: Optional[Type5] = None
|
|
129
1560
|
authors: List[ExperimentAuthorSchema]
|
|
130
1561
|
"""
|
|
131
1562
|
experiment authors
|
|
@@ -154,12 +1585,24 @@ class InfoForCharacteristicObtainedByExperiment(BaseModel):
|
|
|
154
1585
|
"""
|
|
155
1586
|
|
|
156
1587
|
|
|
1588
|
+
class PropertySourceSchema(BaseModel):
|
|
1589
|
+
type: Optional[str] = None
|
|
1590
|
+
"""
|
|
1591
|
+
Type of the material property's source.
|
|
1592
|
+
"""
|
|
1593
|
+
url: Optional[str] = None
|
|
1594
|
+
"""
|
|
1595
|
+
Internet address of the reference.
|
|
1596
|
+
"""
|
|
1597
|
+
info: Union[Info, InfoForCharacteristicObtainedByExperiment]
|
|
1598
|
+
|
|
1599
|
+
|
|
157
1600
|
class SystemTag(Enum):
|
|
158
1601
|
isRefined = "isRefined"
|
|
159
1602
|
isBest = "isBest"
|
|
160
1603
|
|
|
161
1604
|
|
|
162
|
-
class
|
|
1605
|
+
class PropertyBaseSchema(BaseModel):
|
|
163
1606
|
slug: Optional[str] = None
|
|
164
1607
|
"""
|
|
165
1608
|
property slug, e.g. total_energy
|
|
@@ -168,14 +1611,49 @@ class SchemaOfBaseMaterialSPreliminaryProperty(BaseModel):
|
|
|
168
1611
|
"""
|
|
169
1612
|
property group, e.g. qe:dft:gga:pbe
|
|
170
1613
|
"""
|
|
171
|
-
data:
|
|
1614
|
+
data: Union[
|
|
1615
|
+
IonizationPotentialElementalPropertySchema,
|
|
1616
|
+
ValenceBandOffsetPropertySchema,
|
|
1617
|
+
ZeroPointEnergyPropertySchema,
|
|
1618
|
+
PressurePropertySchema,
|
|
1619
|
+
ReactionEnergyBarrierPropertySchema,
|
|
1620
|
+
SurfaceEnergyPropertySchema,
|
|
1621
|
+
TotalEnergyPropertySchema,
|
|
1622
|
+
TotalForcesPropertySchema,
|
|
1623
|
+
ElectronAffinityPropertySchema,
|
|
1624
|
+
FermiEnergyPropertySchema,
|
|
1625
|
+
FormationEnergyPropertySchema,
|
|
1626
|
+
IonizationPotentialScalarPropertySchema,
|
|
1627
|
+
StressTensorPropertySchema,
|
|
1628
|
+
BandGapsPropertySchema,
|
|
1629
|
+
BandStructurePropertySchema,
|
|
1630
|
+
PhononBandStructurePropertySchema,
|
|
1631
|
+
TotalEnergyContributionsPropertySchema,
|
|
1632
|
+
VibrationalSpectrumPropertySchema,
|
|
1633
|
+
PhononDensityOfStatesPropertySchema,
|
|
1634
|
+
PotentialProfilePropertySchema,
|
|
1635
|
+
ReactionEnergyProfilePropertySchema,
|
|
1636
|
+
DensityOfStatesPropertySchema,
|
|
1637
|
+
DielectricTensorPropertySchema,
|
|
1638
|
+
FileContentPropertySchema,
|
|
1639
|
+
HubbardUParametersPropertySchema,
|
|
1640
|
+
HubbardVParametersPropertySchema,
|
|
1641
|
+
HubbardVNNParametersPropertySchema,
|
|
1642
|
+
AveragePotentialProfilePropertySchema,
|
|
1643
|
+
ChargeDensityProfilePropertySchema,
|
|
1644
|
+
MagneticMomentsPropertySchema,
|
|
1645
|
+
AtomicForcesPropertySchema,
|
|
1646
|
+
AtomicConstraintsPropertySchema,
|
|
1647
|
+
FunctionalGroupPatternSchema,
|
|
1648
|
+
RingPatternSchema,
|
|
1649
|
+
SpecialBondPatternSchema,
|
|
1650
|
+
ConvergenceElectronicPropertySchema,
|
|
1651
|
+
ConvergenceIonicPropertySchema,
|
|
1652
|
+
]
|
|
172
1653
|
"""
|
|
173
1654
|
container of the information, specific to each property
|
|
174
1655
|
"""
|
|
175
|
-
source:
|
|
176
|
-
...,
|
|
177
|
-
title="The source of a property. This could be an article, a simulation on Exabyte, an external simulation, etc.",
|
|
178
|
-
)
|
|
1656
|
+
source: PropertySourceSchema = Field(..., title="Property source schema")
|
|
179
1657
|
exabyteId: Optional[List[str]] = None
|
|
180
1658
|
"""
|
|
181
1659
|
Id of the corresponding item in the entity bank that this property is obtained for
|