mat3ra-esse 2025.5.17.post1__py3-none-any.whl → 2025.6.5.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/apse/file/applications/espresso/7.2/pw_x.py +6 -6
- mat3ra/esse/models/apse/materials/builders/slab/pymatgen/parameters.py +3 -3
- mat3ra/esse/models/coordinates_shape_enum.py +15 -0
- mat3ra/esse/models/core/primitive/array_of_3_integers.py +13 -0
- mat3ra/esse/models/core/reusable/axis_enum.py +13 -0
- mat3ra/esse/models/core/reusable/coordinate_conditions/__init__.py +31 -0
- mat3ra/esse/models/core/reusable/coordinate_conditions/base.py +21 -0
- mat3ra/esse/models/core/reusable/coordinate_conditions/box.py +24 -0
- mat3ra/esse/models/core/reusable/coordinate_conditions/cylinder.py +26 -0
- mat3ra/esse/models/core/reusable/coordinate_conditions/enum.py +15 -0
- mat3ra/esse/models/core/reusable/coordinate_conditions/plane.py +24 -0
- mat3ra/esse/models/core/reusable/coordinate_conditions/sphere.py +24 -0
- mat3ra/esse/models/core/reusable/coordinate_conditions/triangular_prism.py +27 -0
- mat3ra/esse/models/core/reusable/energy.py +2 -2
- mat3ra/esse/models/element.py +6 -6
- mat3ra/esse/models/material/__init__.py +14 -14
- mat3ra/esse/models/material/reusable/coordinate_conditions/base.py +21 -0
- mat3ra/esse/models/material/reusable/coordinate_conditions/box.py +24 -0
- mat3ra/esse/models/material/reusable/coordinate_conditions/cylinder.py +26 -0
- mat3ra/esse/models/material/reusable/coordinate_conditions/plane.py +24 -0
- mat3ra/esse/models/material/reusable/coordinate_conditions/sphere.py +24 -0
- mat3ra/esse/models/material/reusable/coordinate_conditions/triangular_prism.py +27 -0
- mat3ra/esse/models/material/reusable/slab/slab_configuration_with_termination.py +589 -0
- mat3ra/esse/models/material/reusable/slab/slab_with_termination.py +593 -0
- mat3ra/esse/models/material/reusable/slab/two_slabs_stack.py +618 -0
- mat3ra/esse/models/material/reusable/slab_configuration_with_termination.py +712 -0
- mat3ra/esse/models/material/reusable/stack/slab_configuration_with_termination.py +593 -0
- mat3ra/esse/models/material/reusable/stack/slab_in_stack.py +720 -0
- mat3ra/esse/models/material/reusable/stack/stack_of_slabs.py +737 -0
- mat3ra/esse/models/material/reusable/stack/stack_of_two_slabs.py +737 -0
- mat3ra/esse/models/material/reusable/supercell/supercell_matrix_2d.py +25 -0
- mat3ra/esse/models/material/reusable/supercell/supercell_matrix_3d.py +27 -0
- mat3ra/esse/models/materials_category/defects/by_host/two_dimensional/adatom/configuration.py +14 -14
- mat3ra/esse/models/materials_category/defects/by_host/two_dimensional/layered/configuration.py +14 -14
- mat3ra/esse/models/materials_category/defects/by_host/two_dimensional/point/configuration.py +14 -14
- mat3ra/esse/models/materials_category/defects/configuration.py +14 -14
- mat3ra/esse/models/materials_category/defects/one_dimensional/terrace/configuration.py +14 -14
- mat3ra/esse/models/materials_category/defects/{zero_dimensional/complex/pair.py → two_dimensional/grain_boundary_plane/configuration.py} +163 -497
- mat3ra/esse/models/materials_category/defects/two_dimensional/island/condition_json.py +28 -0
- mat3ra/esse/models/materials_category/defects/two_dimensional/island/configuration.py +163 -48
- mat3ra/esse/models/materials_category/defects/zero_dimensional/complex/pair/configuration.py +130 -130
- mat3ra/esse/models/materials_category/defects/zero_dimensional/point/configuration.py +14 -14
- mat3ra/esse/models/materials_category/defects/zero_dimensional/point/interstitial/configuration.py +14 -14
- mat3ra/esse/models/materials_category/defects/zero_dimensional/point/substitution/configuration.py +14 -14
- mat3ra/esse/models/materials_category/defects/zero_dimensional/point/vacancy/configuration.py +14 -14
- mat3ra/esse/models/materials_category/multi_material/interfaces/configuration.py +737 -0
- mat3ra/esse/models/materials_category/{defects/slab/configuration.py → pristine_structures/three_dimensional/ideal_crystal.py} +142 -24
- mat3ra/esse/models/materials_category/pristine_structures/two_dimensional/slab.py +730 -0
- mat3ra/esse/models/materials_category/single_material/two_dimensional/slab/configuration.py +17 -21
- mat3ra/esse/models/materials_category_components/entities/auxiliary/three_dimensional/__init__.py +3 -0
- mat3ra/esse/models/materials_category_components/entities/auxiliary/three_dimensional/supercell_matrix_3d.py +27 -0
- mat3ra/esse/models/materials_category_components/entities/auxiliary/two_dimensional/__init__.py +3 -0
- mat3ra/esse/models/materials_category_components/entities/auxiliary/two_dimensional/miller_indices.py +16 -0
- mat3ra/esse/models/materials_category_components/entities/auxiliary/two_dimensional/supercell_matrix_2d.py +25 -0
- mat3ra/esse/models/materials_category_components/entities/auxiliary/two_dimensional/termination.py +144 -0
- mat3ra/esse/models/materials_category_components/entities/auxiliary/zero_dimensional/__init__.py +3 -0
- mat3ra/esse/models/materials_category_components/entities/auxiliary/zero_dimensional/crystal_site.py +13 -0
- mat3ra/esse/models/materials_category_components/entities/core/three_dimensional/__init__.py +3 -0
- mat3ra/esse/models/{materials_category/defects/zero_dimensional/slab/configuration.py → materials_category_components/entities/core/three_dimensional/crystal.py} +142 -46
- mat3ra/esse/models/materials_category_components/entities/core/three_dimensional/void.py +32 -0
- mat3ra/esse/models/materials_category_components/entities/core/two_dimensional/__init__.py +3 -0
- mat3ra/esse/models/materials_category_components/entities/core/two_dimensional/vacuum.py +27 -0
- mat3ra/esse/models/materials_category_components/entities/core/zero_dimensional/__init__.py +3 -0
- mat3ra/esse/models/materials_category_components/entities/core/zero_dimensional/atom.py +134 -0
- mat3ra/esse/models/materials_category_components/entities/reusable/__init__.py +3 -0
- mat3ra/esse/models/materials_category_components/entities/reusable/repetitions.py +25 -0
- mat3ra/esse/models/materials_category_components/entities/reusable/three_dimensional/__init__.py +3 -0
- mat3ra/esse/models/materials_category_components/entities/reusable/three_dimensional/strained_non_uniform.py +544 -0
- mat3ra/esse/models/{materials_category/defects/zero_dimensional/adatom/base_configuration.py → materials_category_components/entities/reusable/three_dimensional/strained_uniform.py} +147 -24
- mat3ra/esse/models/{materials_category/defects/zero_dimensional/adatom/configuration.py → materials_category_components/entities/reusable/three_dimensional/supercell.py} +150 -26
- mat3ra/esse/models/materials_category_components/entities/reusable/two_dimensional/__init__.py +3 -0
- mat3ra/esse/models/materials_category_components/entities/reusable/two_dimensional/atomic_layers.py +683 -0
- mat3ra/esse/models/materials_category_components/entities/reusable/two_dimensional/atomic_layers_unique.py +683 -0
- mat3ra/esse/models/materials_category_components/entities/reusable/two_dimensional/atomic_layers_unique_repeated.py +687 -0
- mat3ra/esse/models/{materials_category/defects/by_host/two_dimensional/configuration.py → materials_category_components/entities/reusable/two_dimensional/crystal_lattice_planes.py} +23 -28
- mat3ra/esse/models/materials_category_components/entities/reusable/two_dimensional/slab_unit_cell.py +717 -0
- mat3ra/esse/models/materials_category_components/operations/core/combinations/__init__.py +3 -0
- mat3ra/esse/models/materials_category_components/operations/core/combinations/merge.py +583 -0
- mat3ra/esse/models/materials_category_components/operations/core/combinations/stack.py +555 -0
- mat3ra/esse/models/materials_category_components/operations/core/combinations/stack_component.py +554 -0
- mat3ra/esse/models/materials_category_components/operations/core/modifications/__init__.py +3 -0
- mat3ra/esse/models/materials_category_components/operations/core/modifications/repeat.py +27 -0
- mat3ra/esse/models/materials_category_components/operations/core/modifications/strain.py +19 -0
- mat3ra/esse/models/properties_directory/derived_properties.py +11 -11
- mat3ra/esse/models/properties_directory/non_scalar/average_potential_profile.py +2 -2
- mat3ra/esse/models/properties_directory/non_scalar/band_structure.py +2 -2
- mat3ra/esse/models/properties_directory/non_scalar/density_of_states.py +2 -2
- mat3ra/esse/models/properties_directory/non_scalar/phonon_dispersions.py +2 -2
- mat3ra/esse/models/properties_directory/non_scalar/phonon_dos.py +2 -2
- mat3ra/esse/models/properties_directory/non_scalar/total_energy_contributions.py +50 -50
- mat3ra/esse/models/properties_directory/non_scalar/vibrational_spectrum.py +2 -2
- mat3ra/esse/models/properties_directory/scalar/electron_affinity.py +2 -2
- mat3ra/esse/models/properties_directory/scalar/fermi_energy.py +2 -2
- mat3ra/esse/models/properties_directory/scalar/formation_energy.py +2 -2
- mat3ra/esse/models/properties_directory/scalar/ionization_potential.py +2 -2
- mat3ra/esse/models/properties_directory/scalar/reaction_energy_barrier.py +2 -2
- mat3ra/esse/models/properties_directory/scalar/surface_energy.py +2 -2
- mat3ra/esse/models/properties_directory/scalar/total_energy.py +2 -2
- mat3ra/esse/models/properties_directory/scalar/valence_band_offset.py +2 -2
- mat3ra/esse/models/properties_directory/scalar/zero_point_energy.py +2 -2
- mat3ra/esse/models/properties_directory/structural/basis/__init__.py +2 -2
- mat3ra/esse/models/properties_directory/structural/molecular_pattern.py +4 -4
- mat3ra/esse/models/properties_directory/workflow/convergence/ionic.py +2 -2
- {mat3ra_esse-2025.5.17.post1.dist-info → mat3ra_esse-2025.6.5.post0.dist-info}/METADATA +1 -1
- {mat3ra_esse-2025.5.17.post1.dist-info → mat3ra_esse-2025.6.5.post0.dist-info}/RECORD +117 -65
- {mat3ra_esse-2025.5.17.post1.dist-info → mat3ra_esse-2025.6.5.post0.dist-info}/WHEEL +1 -1
- mat3ra/esse/models/materials_category/defects/enums/atom_placement_method.py +0 -22
- mat3ra/esse/models/materials_category/defects/enums/complex_defect_type.py +0 -18
- mat3ra/esse/models/materials_category/defects/enums/coordinates_shape.py +0 -21
- mat3ra/esse/models/materials_category/defects/enums/slab_defect_type.py +0 -19
- mat3ra/esse/models/materials_category/defects/enums.py +0 -13
- mat3ra/esse/models/materials_category/defects/two_dimensional/slab_grain_boundary/configuration.py +0 -1105
- mat3ra/esse/models/materials_category/defects/zero_dimensional/defect_pair/configuration.py +0 -1026
- mat3ra/esse/models/materials_category/defects/zero_dimensional/point/base_configuration.py +0 -30
- /mat3ra/esse/models/{materials_category/defects/by_host/two_dimensional → material/reusable/coordinate_conditions}/__init__.py +0 -0
- /mat3ra/esse/models/{materials_category/defects/slab → material/reusable/stack}/__init__.py +0 -0
- /mat3ra/esse/models/{materials_category/defects/two_dimensional/slab_grain_boundary → material/reusable/supercell}/__init__.py +0 -0
- /mat3ra/esse/models/materials_category/defects/{zero_dimensional/adatom → two_dimensional/grain_boundary_plane}/__init__.py +0 -0
- /mat3ra/esse/models/materials_category/{defects/zero_dimensional/complex → multi_material/interfaces}/__init__.py +0 -0
- /mat3ra/esse/models/materials_category/{defects/zero_dimensional/defect_pair → pristine_structures/three_dimensional}/__init__.py +0 -0
- /mat3ra/esse/models/materials_category/{defects/zero_dimensional/slab → pristine_structures/two_dimensional}/__init__.py +0 -0
- {mat3ra_esse-2025.5.17.post1.dist-info → mat3ra_esse-2025.6.5.post0.dist-info}/licenses/LICENSE.md +0 -0
- {mat3ra_esse-2025.5.17.post1.dist-info → mat3ra_esse-2025.6.5.post0.dist-info}/top_level.txt +0 -0
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
# generated by datamodel-codegen:
|
|
2
|
-
# filename:
|
|
2
|
+
# filename: materials_category_components/entities/reusable/three_dimensional/strained_uniform.json
|
|
3
3
|
# version: 0.28.5
|
|
4
4
|
|
|
5
5
|
from __future__ import annotations
|
|
@@ -10,10 +10,136 @@ from typing import Any, Dict, List, Literal, Optional, Union
|
|
|
10
10
|
from pydantic import BaseModel, Field, RootModel, confloat, conint
|
|
11
11
|
|
|
12
12
|
|
|
13
|
+
class Value(Enum):
|
|
14
|
+
H = "H"
|
|
15
|
+
He = "He"
|
|
16
|
+
Li = "Li"
|
|
17
|
+
Be = "Be"
|
|
18
|
+
B = "B"
|
|
19
|
+
C = "C"
|
|
20
|
+
N = "N"
|
|
21
|
+
O = "O"
|
|
22
|
+
F = "F"
|
|
23
|
+
Ne = "Ne"
|
|
24
|
+
Na = "Na"
|
|
25
|
+
Mg = "Mg"
|
|
26
|
+
Al = "Al"
|
|
27
|
+
Si = "Si"
|
|
28
|
+
P = "P"
|
|
29
|
+
S = "S"
|
|
30
|
+
Cl = "Cl"
|
|
31
|
+
Ar = "Ar"
|
|
32
|
+
K = "K"
|
|
33
|
+
Ca = "Ca"
|
|
34
|
+
Sc = "Sc"
|
|
35
|
+
Ti = "Ti"
|
|
36
|
+
V = "V"
|
|
37
|
+
Cr = "Cr"
|
|
38
|
+
Mn = "Mn"
|
|
39
|
+
Fe = "Fe"
|
|
40
|
+
Co = "Co"
|
|
41
|
+
Ni = "Ni"
|
|
42
|
+
Cu = "Cu"
|
|
43
|
+
Zn = "Zn"
|
|
44
|
+
Ga = "Ga"
|
|
45
|
+
Ge = "Ge"
|
|
46
|
+
As = "As"
|
|
47
|
+
Se = "Se"
|
|
48
|
+
Br = "Br"
|
|
49
|
+
Kr = "Kr"
|
|
50
|
+
Rb = "Rb"
|
|
51
|
+
Sr = "Sr"
|
|
52
|
+
Y = "Y"
|
|
53
|
+
Zr = "Zr"
|
|
54
|
+
Nb = "Nb"
|
|
55
|
+
Mo = "Mo"
|
|
56
|
+
Tc = "Tc"
|
|
57
|
+
Ru = "Ru"
|
|
58
|
+
Rh = "Rh"
|
|
59
|
+
Pd = "Pd"
|
|
60
|
+
Ag = "Ag"
|
|
61
|
+
Cd = "Cd"
|
|
62
|
+
In = "In"
|
|
63
|
+
Sn = "Sn"
|
|
64
|
+
Sb = "Sb"
|
|
65
|
+
Te = "Te"
|
|
66
|
+
I = "I"
|
|
67
|
+
Xe = "Xe"
|
|
68
|
+
Cs = "Cs"
|
|
69
|
+
Ba = "Ba"
|
|
70
|
+
La = "La"
|
|
71
|
+
Ce = "Ce"
|
|
72
|
+
Pr = "Pr"
|
|
73
|
+
Nd = "Nd"
|
|
74
|
+
Pm = "Pm"
|
|
75
|
+
Sm = "Sm"
|
|
76
|
+
Eu = "Eu"
|
|
77
|
+
Gd = "Gd"
|
|
78
|
+
Tb = "Tb"
|
|
79
|
+
Dy = "Dy"
|
|
80
|
+
Ho = "Ho"
|
|
81
|
+
Er = "Er"
|
|
82
|
+
Tm = "Tm"
|
|
83
|
+
Yb = "Yb"
|
|
84
|
+
Lu = "Lu"
|
|
85
|
+
Hf = "Hf"
|
|
86
|
+
Ta = "Ta"
|
|
87
|
+
W = "W"
|
|
88
|
+
Re = "Re"
|
|
89
|
+
Os = "Os"
|
|
90
|
+
Ir = "Ir"
|
|
91
|
+
Pt = "Pt"
|
|
92
|
+
Au = "Au"
|
|
93
|
+
Hg = "Hg"
|
|
94
|
+
Tl = "Tl"
|
|
95
|
+
Pb = "Pb"
|
|
96
|
+
Bi = "Bi"
|
|
97
|
+
Po = "Po"
|
|
98
|
+
At = "At"
|
|
99
|
+
Rn = "Rn"
|
|
100
|
+
Fr = "Fr"
|
|
101
|
+
Ra = "Ra"
|
|
102
|
+
Ac = "Ac"
|
|
103
|
+
Th = "Th"
|
|
104
|
+
Pa = "Pa"
|
|
105
|
+
U = "U"
|
|
106
|
+
Np = "Np"
|
|
107
|
+
Pu = "Pu"
|
|
108
|
+
Am = "Am"
|
|
109
|
+
Cm = "Cm"
|
|
110
|
+
Bk = "Bk"
|
|
111
|
+
Cf = "Cf"
|
|
112
|
+
Es = "Es"
|
|
113
|
+
Fm = "Fm"
|
|
114
|
+
Md = "Md"
|
|
115
|
+
No = "No"
|
|
116
|
+
Lr = "Lr"
|
|
117
|
+
Rf = "Rf"
|
|
118
|
+
Db = "Db"
|
|
119
|
+
Sg = "Sg"
|
|
120
|
+
Bh = "Bh"
|
|
121
|
+
Hs = "Hs"
|
|
122
|
+
Mt = "Mt"
|
|
123
|
+
Ds = "Ds"
|
|
124
|
+
Rg = "Rg"
|
|
125
|
+
Cn = "Cn"
|
|
126
|
+
Nh = "Nh"
|
|
127
|
+
Fl = "Fl"
|
|
128
|
+
Mc = "Mc"
|
|
129
|
+
Lv = "Lv"
|
|
130
|
+
Ts = "Ts"
|
|
131
|
+
Og = "Og"
|
|
132
|
+
|
|
133
|
+
|
|
134
|
+
class Value41(Enum):
|
|
135
|
+
X = "X"
|
|
136
|
+
Vac = "Vac"
|
|
137
|
+
|
|
138
|
+
|
|
13
139
|
class AtomicElementSchema(BaseModel):
|
|
14
|
-
value:
|
|
140
|
+
value: Union[Value, Value41]
|
|
15
141
|
"""
|
|
16
|
-
|
|
142
|
+
All elements, including extra elements
|
|
17
143
|
"""
|
|
18
144
|
id: int
|
|
19
145
|
"""
|
|
@@ -159,30 +285,30 @@ class VolumeSchema(BaseModel):
|
|
|
159
285
|
value: float
|
|
160
286
|
|
|
161
287
|
|
|
162
|
-
class
|
|
288
|
+
class Name166(Enum):
|
|
163
289
|
density = "density"
|
|
164
290
|
|
|
165
291
|
|
|
166
|
-
class
|
|
292
|
+
class Units84(Enum):
|
|
167
293
|
g_cm_3 = "g/cm^3"
|
|
168
294
|
|
|
169
295
|
|
|
170
296
|
class DensitySchema(BaseModel):
|
|
171
297
|
name: Literal["1#-datamodel-code-generator-#-object-#-special-#"]
|
|
172
|
-
units: Optional[
|
|
298
|
+
units: Optional[Units84] = None
|
|
173
299
|
value: float
|
|
174
300
|
|
|
175
301
|
|
|
176
|
-
class
|
|
302
|
+
class Units85(Enum):
|
|
177
303
|
angstrom = "angstrom"
|
|
178
304
|
|
|
179
305
|
|
|
180
306
|
class ScalarSchema(BaseModel):
|
|
181
|
-
units: Optional[
|
|
307
|
+
units: Optional[Units85] = None
|
|
182
308
|
value: float
|
|
183
309
|
|
|
184
310
|
|
|
185
|
-
class
|
|
311
|
+
class Name167(Enum):
|
|
186
312
|
symmetry = "symmetry"
|
|
187
313
|
|
|
188
314
|
|
|
@@ -202,7 +328,7 @@ class SymmetrySchema(BaseModel):
|
|
|
202
328
|
name: Literal["2#-datamodel-code-generator-#-object-#-special-#"]
|
|
203
329
|
|
|
204
330
|
|
|
205
|
-
class
|
|
331
|
+
class Name168(Enum):
|
|
206
332
|
elemental_ratio = "elemental_ratio"
|
|
207
333
|
|
|
208
334
|
|
|
@@ -215,7 +341,7 @@ class ElementalRatio(BaseModel):
|
|
|
215
341
|
"""
|
|
216
342
|
|
|
217
343
|
|
|
218
|
-
class
|
|
344
|
+
class Name169(Enum):
|
|
219
345
|
p_norm = "p-norm"
|
|
220
346
|
|
|
221
347
|
|
|
@@ -228,7 +354,7 @@ class PNorm(BaseModel):
|
|
|
228
354
|
value: float
|
|
229
355
|
|
|
230
356
|
|
|
231
|
-
class
|
|
357
|
+
class Name170(Enum):
|
|
232
358
|
inchi = "inchi"
|
|
233
359
|
|
|
234
360
|
|
|
@@ -237,7 +363,7 @@ class InChIRepresentationSchema(BaseModel):
|
|
|
237
363
|
value: str
|
|
238
364
|
|
|
239
365
|
|
|
240
|
-
class
|
|
366
|
+
class Name171(Enum):
|
|
241
367
|
inchi_key = "inchi_key"
|
|
242
368
|
|
|
243
369
|
|
|
@@ -316,7 +442,7 @@ class FileSourceSchema(BaseModel):
|
|
|
316
442
|
"""
|
|
317
443
|
|
|
318
444
|
|
|
319
|
-
class
|
|
445
|
+
class Name172(Enum):
|
|
320
446
|
default = "default"
|
|
321
447
|
atomsTooClose = "atomsTooClose"
|
|
322
448
|
atomsOverlap = "atomsOverlap"
|
|
@@ -329,7 +455,7 @@ class Severity(Enum):
|
|
|
329
455
|
|
|
330
456
|
|
|
331
457
|
class MaterialConsistencyCheckSchema(BaseModel):
|
|
332
|
-
name:
|
|
458
|
+
name: Name172
|
|
333
459
|
"""
|
|
334
460
|
Name of the consistency check that is performed, which is listed in an enum.
|
|
335
461
|
"""
|
|
@@ -347,7 +473,7 @@ class MaterialConsistencyCheckSchema(BaseModel):
|
|
|
347
473
|
"""
|
|
348
474
|
|
|
349
475
|
|
|
350
|
-
class
|
|
476
|
+
class CrystalSchema(BaseModel):
|
|
351
477
|
formula: Optional[str] = None
|
|
352
478
|
"""
|
|
353
479
|
reduced chemical formula
|
|
@@ -404,15 +530,12 @@ class MaterialSchema(BaseModel):
|
|
|
404
530
|
metadata: Optional[Dict[str, Any]] = None
|
|
405
531
|
|
|
406
532
|
|
|
407
|
-
class
|
|
408
|
-
crystal:
|
|
409
|
-
defect_type: Literal["adatom"] = "adatom"
|
|
410
|
-
position_on_surface: List[float] = Field(..., max_length=2, min_length=2, title="coordinate 2d schema")
|
|
411
|
-
distance_z: confloat(ge=0.0)
|
|
533
|
+
class UniformlyStrainedCrystalConfigurationSchema(BaseModel):
|
|
534
|
+
crystal: CrystalSchema = Field(..., title="Crystal Schema")
|
|
412
535
|
"""
|
|
413
|
-
|
|
536
|
+
A crystal structure, referencing the base material schema
|
|
414
537
|
"""
|
|
415
|
-
|
|
538
|
+
strain_percentage: float
|
|
416
539
|
"""
|
|
417
|
-
|
|
540
|
+
Percentage of uniform strain to apply to the crystal structure
|
|
418
541
|
"""
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
# generated by datamodel-codegen:
|
|
2
|
-
# filename:
|
|
2
|
+
# filename: materials_category_components/entities/reusable/three_dimensional/supercell.json
|
|
3
3
|
# version: 0.28.5
|
|
4
4
|
|
|
5
5
|
from __future__ import annotations
|
|
@@ -10,10 +10,136 @@ from typing import Any, Dict, List, Literal, Optional, Union
|
|
|
10
10
|
from pydantic import BaseModel, Field, RootModel, confloat, conint
|
|
11
11
|
|
|
12
12
|
|
|
13
|
+
class Value(Enum):
|
|
14
|
+
H = "H"
|
|
15
|
+
He = "He"
|
|
16
|
+
Li = "Li"
|
|
17
|
+
Be = "Be"
|
|
18
|
+
B = "B"
|
|
19
|
+
C = "C"
|
|
20
|
+
N = "N"
|
|
21
|
+
O = "O"
|
|
22
|
+
F = "F"
|
|
23
|
+
Ne = "Ne"
|
|
24
|
+
Na = "Na"
|
|
25
|
+
Mg = "Mg"
|
|
26
|
+
Al = "Al"
|
|
27
|
+
Si = "Si"
|
|
28
|
+
P = "P"
|
|
29
|
+
S = "S"
|
|
30
|
+
Cl = "Cl"
|
|
31
|
+
Ar = "Ar"
|
|
32
|
+
K = "K"
|
|
33
|
+
Ca = "Ca"
|
|
34
|
+
Sc = "Sc"
|
|
35
|
+
Ti = "Ti"
|
|
36
|
+
V = "V"
|
|
37
|
+
Cr = "Cr"
|
|
38
|
+
Mn = "Mn"
|
|
39
|
+
Fe = "Fe"
|
|
40
|
+
Co = "Co"
|
|
41
|
+
Ni = "Ni"
|
|
42
|
+
Cu = "Cu"
|
|
43
|
+
Zn = "Zn"
|
|
44
|
+
Ga = "Ga"
|
|
45
|
+
Ge = "Ge"
|
|
46
|
+
As = "As"
|
|
47
|
+
Se = "Se"
|
|
48
|
+
Br = "Br"
|
|
49
|
+
Kr = "Kr"
|
|
50
|
+
Rb = "Rb"
|
|
51
|
+
Sr = "Sr"
|
|
52
|
+
Y = "Y"
|
|
53
|
+
Zr = "Zr"
|
|
54
|
+
Nb = "Nb"
|
|
55
|
+
Mo = "Mo"
|
|
56
|
+
Tc = "Tc"
|
|
57
|
+
Ru = "Ru"
|
|
58
|
+
Rh = "Rh"
|
|
59
|
+
Pd = "Pd"
|
|
60
|
+
Ag = "Ag"
|
|
61
|
+
Cd = "Cd"
|
|
62
|
+
In = "In"
|
|
63
|
+
Sn = "Sn"
|
|
64
|
+
Sb = "Sb"
|
|
65
|
+
Te = "Te"
|
|
66
|
+
I = "I"
|
|
67
|
+
Xe = "Xe"
|
|
68
|
+
Cs = "Cs"
|
|
69
|
+
Ba = "Ba"
|
|
70
|
+
La = "La"
|
|
71
|
+
Ce = "Ce"
|
|
72
|
+
Pr = "Pr"
|
|
73
|
+
Nd = "Nd"
|
|
74
|
+
Pm = "Pm"
|
|
75
|
+
Sm = "Sm"
|
|
76
|
+
Eu = "Eu"
|
|
77
|
+
Gd = "Gd"
|
|
78
|
+
Tb = "Tb"
|
|
79
|
+
Dy = "Dy"
|
|
80
|
+
Ho = "Ho"
|
|
81
|
+
Er = "Er"
|
|
82
|
+
Tm = "Tm"
|
|
83
|
+
Yb = "Yb"
|
|
84
|
+
Lu = "Lu"
|
|
85
|
+
Hf = "Hf"
|
|
86
|
+
Ta = "Ta"
|
|
87
|
+
W = "W"
|
|
88
|
+
Re = "Re"
|
|
89
|
+
Os = "Os"
|
|
90
|
+
Ir = "Ir"
|
|
91
|
+
Pt = "Pt"
|
|
92
|
+
Au = "Au"
|
|
93
|
+
Hg = "Hg"
|
|
94
|
+
Tl = "Tl"
|
|
95
|
+
Pb = "Pb"
|
|
96
|
+
Bi = "Bi"
|
|
97
|
+
Po = "Po"
|
|
98
|
+
At = "At"
|
|
99
|
+
Rn = "Rn"
|
|
100
|
+
Fr = "Fr"
|
|
101
|
+
Ra = "Ra"
|
|
102
|
+
Ac = "Ac"
|
|
103
|
+
Th = "Th"
|
|
104
|
+
Pa = "Pa"
|
|
105
|
+
U = "U"
|
|
106
|
+
Np = "Np"
|
|
107
|
+
Pu = "Pu"
|
|
108
|
+
Am = "Am"
|
|
109
|
+
Cm = "Cm"
|
|
110
|
+
Bk = "Bk"
|
|
111
|
+
Cf = "Cf"
|
|
112
|
+
Es = "Es"
|
|
113
|
+
Fm = "Fm"
|
|
114
|
+
Md = "Md"
|
|
115
|
+
No = "No"
|
|
116
|
+
Lr = "Lr"
|
|
117
|
+
Rf = "Rf"
|
|
118
|
+
Db = "Db"
|
|
119
|
+
Sg = "Sg"
|
|
120
|
+
Bh = "Bh"
|
|
121
|
+
Hs = "Hs"
|
|
122
|
+
Mt = "Mt"
|
|
123
|
+
Ds = "Ds"
|
|
124
|
+
Rg = "Rg"
|
|
125
|
+
Cn = "Cn"
|
|
126
|
+
Nh = "Nh"
|
|
127
|
+
Fl = "Fl"
|
|
128
|
+
Mc = "Mc"
|
|
129
|
+
Lv = "Lv"
|
|
130
|
+
Ts = "Ts"
|
|
131
|
+
Og = "Og"
|
|
132
|
+
|
|
133
|
+
|
|
134
|
+
class Value43(Enum):
|
|
135
|
+
X = "X"
|
|
136
|
+
Vac = "Vac"
|
|
137
|
+
|
|
138
|
+
|
|
13
139
|
class AtomicElementSchema(BaseModel):
|
|
14
|
-
value:
|
|
140
|
+
value: Union[Value, Value43]
|
|
15
141
|
"""
|
|
16
|
-
|
|
142
|
+
All elements, including extra elements
|
|
17
143
|
"""
|
|
18
144
|
id: int
|
|
19
145
|
"""
|
|
@@ -159,30 +285,30 @@ class VolumeSchema(BaseModel):
|
|
|
159
285
|
value: float
|
|
160
286
|
|
|
161
287
|
|
|
162
|
-
class
|
|
288
|
+
class Name175(Enum):
|
|
163
289
|
density = "density"
|
|
164
290
|
|
|
165
291
|
|
|
166
|
-
class
|
|
292
|
+
class Units88(Enum):
|
|
167
293
|
g_cm_3 = "g/cm^3"
|
|
168
294
|
|
|
169
295
|
|
|
170
296
|
class DensitySchema(BaseModel):
|
|
171
297
|
name: Literal["1#-datamodel-code-generator-#-object-#-special-#"]
|
|
172
|
-
units: Optional[
|
|
298
|
+
units: Optional[Units88] = None
|
|
173
299
|
value: float
|
|
174
300
|
|
|
175
301
|
|
|
176
|
-
class
|
|
302
|
+
class Units89(Enum):
|
|
177
303
|
angstrom = "angstrom"
|
|
178
304
|
|
|
179
305
|
|
|
180
306
|
class ScalarSchema(BaseModel):
|
|
181
|
-
units: Optional[
|
|
307
|
+
units: Optional[Units89] = None
|
|
182
308
|
value: float
|
|
183
309
|
|
|
184
310
|
|
|
185
|
-
class
|
|
311
|
+
class Name176(Enum):
|
|
186
312
|
symmetry = "symmetry"
|
|
187
313
|
|
|
188
314
|
|
|
@@ -202,7 +328,7 @@ class SymmetrySchema(BaseModel):
|
|
|
202
328
|
name: Literal["2#-datamodel-code-generator-#-object-#-special-#"]
|
|
203
329
|
|
|
204
330
|
|
|
205
|
-
class
|
|
331
|
+
class Name177(Enum):
|
|
206
332
|
elemental_ratio = "elemental_ratio"
|
|
207
333
|
|
|
208
334
|
|
|
@@ -215,7 +341,7 @@ class ElementalRatio(BaseModel):
|
|
|
215
341
|
"""
|
|
216
342
|
|
|
217
343
|
|
|
218
|
-
class
|
|
344
|
+
class Name178(Enum):
|
|
219
345
|
p_norm = "p-norm"
|
|
220
346
|
|
|
221
347
|
|
|
@@ -228,7 +354,7 @@ class PNorm(BaseModel):
|
|
|
228
354
|
value: float
|
|
229
355
|
|
|
230
356
|
|
|
231
|
-
class
|
|
357
|
+
class Name179(Enum):
|
|
232
358
|
inchi = "inchi"
|
|
233
359
|
|
|
234
360
|
|
|
@@ -237,7 +363,7 @@ class InChIRepresentationSchema(BaseModel):
|
|
|
237
363
|
value: str
|
|
238
364
|
|
|
239
365
|
|
|
240
|
-
class
|
|
366
|
+
class Name180(Enum):
|
|
241
367
|
inchi_key = "inchi_key"
|
|
242
368
|
|
|
243
369
|
|
|
@@ -316,7 +442,7 @@ class FileSourceSchema(BaseModel):
|
|
|
316
442
|
"""
|
|
317
443
|
|
|
318
444
|
|
|
319
|
-
class
|
|
445
|
+
class Name181(Enum):
|
|
320
446
|
default = "default"
|
|
321
447
|
atomsTooClose = "atomsTooClose"
|
|
322
448
|
atomsOverlap = "atomsOverlap"
|
|
@@ -329,7 +455,7 @@ class Severity(Enum):
|
|
|
329
455
|
|
|
330
456
|
|
|
331
457
|
class MaterialConsistencyCheckSchema(BaseModel):
|
|
332
|
-
name:
|
|
458
|
+
name: Name181
|
|
333
459
|
"""
|
|
334
460
|
Name of the consistency check that is performed, which is listed in an enum.
|
|
335
461
|
"""
|
|
@@ -347,7 +473,7 @@ class MaterialConsistencyCheckSchema(BaseModel):
|
|
|
347
473
|
"""
|
|
348
474
|
|
|
349
475
|
|
|
350
|
-
class
|
|
476
|
+
class CrystalSchema(BaseModel):
|
|
351
477
|
formula: Optional[str] = None
|
|
352
478
|
"""
|
|
353
479
|
reduced chemical formula
|
|
@@ -404,15 +530,13 @@ class MaterialSchema(BaseModel):
|
|
|
404
530
|
metadata: Optional[Dict[str, Any]] = None
|
|
405
531
|
|
|
406
532
|
|
|
407
|
-
class
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
""
|
|
413
|
-
Distance from the surface in Angstroms
|
|
414
|
-
"""
|
|
415
|
-
chemical_element: str
|
|
533
|
+
class ArrayOf3NumberElementsSchema(RootModel[List[float]]):
|
|
534
|
+
root: List[float] = Field(..., title="array of 3 number elements schema")
|
|
535
|
+
|
|
536
|
+
|
|
537
|
+
class SupercellConfigurationSchema(BaseModel):
|
|
538
|
+
crystal: CrystalSchema = Field(..., title="Crystal Schema")
|
|
416
539
|
"""
|
|
417
|
-
|
|
540
|
+
A crystal structure, referencing the base material schema
|
|
418
541
|
"""
|
|
542
|
+
matrix: List[ArrayOf3NumberElementsSchema] = Field(..., max_length=3, min_length=3, title="matrix 3x3 schema")
|