mat3ra-esse 2025.5.13.post0__py3-none-any.whl → 2025.5.16.post1__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 +8 -8
- mat3ra/esse/models/apse/materials/builders/slab/pymatgen/__init__.py +3 -0
- mat3ra/esse/models/apse/materials/builders/slab/pymatgen/parameters.py +28 -0
- mat3ra/esse/models/core/reusable/energy.py +2 -2
- mat3ra/esse/models/element.py +128 -10
- mat3ra/esse/models/enums/__init__.py +3 -0
- mat3ra/esse/models/enums/chemical_elements.py +13 -0
- mat3ra/esse/models/material/__init__.py +140 -14
- mat3ra/esse/models/material/builders/base/__init__.py +3 -0
- mat3ra/esse/models/material/builders/base/selector_parameters.py +16 -0
- mat3ra/esse/models/material/builders/single_material/two_dimensional/slab/__init__.py +3 -0
- mat3ra/esse/models/material/builders/single_material/two_dimensional/slab/builder_parameters.py +28 -0
- mat3ra/esse/models/material/builders/single_material/two_dimensional/slab/selector_parameters.py +151 -0
- mat3ra/esse/models/material/reusable/slab/enums/__init__.py +3 -0
- mat3ra/esse/models/material/reusable/slab/enums/exposed_face.py +13 -0
- mat3ra/esse/models/material/reusable/slab/number_of_layers.py +1 -1
- mat3ra/esse/models/material/reusable/slab/termination.py +129 -3
- mat3ra/esse/models/material/reusable/slab/vacuum.py +2 -2
- mat3ra/esse/models/materials_category/defects/__init__.py +3 -0
- mat3ra/esse/models/materials_category/defects/configuration.py +538 -0
- mat3ra/esse/models/materials_category/defects/enums/__init__.py +3 -0
- mat3ra/esse/models/materials_category/defects/enums/atom_placement_method.py +22 -0
- mat3ra/esse/models/materials_category/defects/enums/complex_defect_type.py +18 -0
- mat3ra/esse/models/materials_category/defects/enums/coordinates_shape.py +21 -0
- mat3ra/esse/models/materials_category/defects/enums/point_defect_type.py +13 -0
- mat3ra/esse/models/materials_category/defects/enums/slab_defect_type.py +19 -0
- mat3ra/esse/models/materials_category/defects/enums.py +13 -0
- mat3ra/esse/models/materials_category/defects/one_dimensional/terrace/__init__.py +3 -0
- mat3ra/esse/models/materials_category/defects/one_dimensional/terrace/configuration.py +425 -0
- mat3ra/esse/models/materials_category/defects/slab/__init__.py +3 -0
- mat3ra/esse/models/materials_category/defects/slab/configuration.py +412 -0
- mat3ra/esse/models/materials_category/defects/two_dimensional/island/__init__.py +3 -0
- mat3ra/esse/models/materials_category/defects/two_dimensional/island/configuration.py +449 -0
- mat3ra/esse/models/materials_category/defects/two_dimensional/slab_grain_boundary/__init__.py +3 -0
- mat3ra/esse/models/materials_category/defects/two_dimensional/slab_grain_boundary/configuration.py +1105 -0
- mat3ra/esse/models/materials_category/defects/zero_dimensional/adatom/__init__.py +3 -0
- mat3ra/esse/models/materials_category/defects/zero_dimensional/adatom/base_configuration.py +418 -0
- mat3ra/esse/models/materials_category/defects/zero_dimensional/adatom/configuration.py +418 -0
- mat3ra/esse/models/materials_category/defects/zero_dimensional/defect_pair/__init__.py +3 -0
- mat3ra/esse/models/materials_category/defects/zero_dimensional/defect_pair/configuration.py +1026 -0
- mat3ra/esse/models/materials_category/defects/zero_dimensional/point/__init__.py +3 -0
- mat3ra/esse/models/materials_category/defects/zero_dimensional/point/base_configuration.py +30 -0
- mat3ra/esse/models/materials_category/defects/zero_dimensional/point/configuration.py +672 -0
- mat3ra/esse/models/materials_category/defects/zero_dimensional/slab/__init__.py +3 -0
- mat3ra/esse/models/materials_category/defects/zero_dimensional/slab/configuration.py +434 -0
- mat3ra/esse/models/materials_category/single_material/two_dimensional/slab/configuration.py +142 -16
- mat3ra/esse/models/properties_directory/derived_properties.py +11 -11
- 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 +128 -2
- mat3ra/esse/models/properties_directory/structural/basis/atomic_element.py +131 -2
- mat3ra/esse/models/properties_directory/structural/basis/atomic_elements.py +130 -3
- 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.13.post0.dist-info → mat3ra_esse-2025.5.16.post1.dist-info}/METADATA +1 -1
- {mat3ra_esse-2025.5.13.post0.dist-info → mat3ra_esse-2025.5.16.post1.dist-info}/RECORD +73 -36
- {mat3ra_esse-2025.5.13.post0.dist-info → mat3ra_esse-2025.5.16.post1.dist-info}/WHEEL +1 -1
- mat3ra/esse/models/material/reusable/slab/thickness.py +0 -16
- {mat3ra_esse-2025.5.13.post0.dist-info → mat3ra_esse-2025.5.16.post1.dist-info}/licenses/LICENSE.md +0 -0
- {mat3ra_esse-2025.5.13.post0.dist-info → mat3ra_esse-2025.5.16.post1.dist-info}/top_level.txt +0 -0
|
@@ -1663,7 +1663,7 @@ class CardOption(Enum):
|
|
|
1663
1663
|
crystal_sg = "crystal_sg"
|
|
1664
1664
|
|
|
1665
1665
|
|
|
1666
|
-
class
|
|
1666
|
+
class Value19(BaseModel):
|
|
1667
1667
|
model_config = ConfigDict(
|
|
1668
1668
|
extra="forbid",
|
|
1669
1669
|
)
|
|
@@ -1693,7 +1693,7 @@ class AtomicPositionsSchema(BaseModel):
|
|
|
1693
1693
|
extra="forbid",
|
|
1694
1694
|
)
|
|
1695
1695
|
card_option: Optional[CardOption] = "alat"
|
|
1696
|
-
values: Optional[List[
|
|
1696
|
+
values: Optional[List[Value19]] = None
|
|
1697
1697
|
|
|
1698
1698
|
|
|
1699
1699
|
class CardOption5(Enum):
|
|
@@ -1707,7 +1707,7 @@ class CardOption5(Enum):
|
|
|
1707
1707
|
crystal_c = "crystal_c"
|
|
1708
1708
|
|
|
1709
1709
|
|
|
1710
|
-
class
|
|
1710
|
+
class Value20(BaseModel):
|
|
1711
1711
|
model_config = ConfigDict(
|
|
1712
1712
|
extra="forbid",
|
|
1713
1713
|
)
|
|
@@ -1756,7 +1756,7 @@ class KPointsSchema(BaseModel):
|
|
|
1756
1756
|
extra="forbid",
|
|
1757
1757
|
)
|
|
1758
1758
|
card_option: Optional[CardOption5] = None
|
|
1759
|
-
values: Optional[Union[List[
|
|
1759
|
+
values: Optional[Union[List[Value20], Values]] = None
|
|
1760
1760
|
|
|
1761
1761
|
|
|
1762
1762
|
class CardOption6(Enum):
|
|
@@ -1853,7 +1853,7 @@ class ParamType(Enum):
|
|
|
1853
1853
|
E3 = "E3"
|
|
1854
1854
|
|
|
1855
1855
|
|
|
1856
|
-
class
|
|
1856
|
+
class Value21(BaseModel):
|
|
1857
1857
|
model_config = ConfigDict(
|
|
1858
1858
|
extra="forbid",
|
|
1859
1859
|
)
|
|
@@ -1966,9 +1966,9 @@ class HubbardSchema(BaseModel):
|
|
|
1966
1966
|
extra="forbid",
|
|
1967
1967
|
)
|
|
1968
1968
|
card_option: Optional[CardOption7] = None
|
|
1969
|
-
values: Optional[
|
|
1970
|
-
|
|
1971
|
-
|
|
1969
|
+
values: Optional[
|
|
1970
|
+
Union[List[Union[Values9, Values10]], List[Value21], List[Union[Values11, Values12, Values13]]]
|
|
1971
|
+
] = None
|
|
1972
1972
|
|
|
1973
1973
|
|
|
1974
1974
|
class PwxMainSchema(BaseModel):
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
# generated by datamodel-codegen:
|
|
2
|
+
# filename: apse/materials/builders/slab/pymatgen/parameters.json
|
|
3
|
+
# version: 0.28.5
|
|
4
|
+
|
|
5
|
+
from __future__ import annotations
|
|
6
|
+
|
|
7
|
+
from typing import Optional, Union
|
|
8
|
+
|
|
9
|
+
from pydantic import BaseModel, confloat, conint
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
class PymatgenSlabGeneratorParametersSchema(BaseModel):
|
|
13
|
+
min_vacuum_size: Optional[Union[conint(ge=0), confloat(ge=0.0)]] = 1
|
|
14
|
+
"""
|
|
15
|
+
Minimum size of the vacuum in layers or angstroms
|
|
16
|
+
"""
|
|
17
|
+
in_unit_planes: Optional[bool] = True
|
|
18
|
+
"""
|
|
19
|
+
Whether to cleave in unit planes
|
|
20
|
+
"""
|
|
21
|
+
reorient_lattice: Optional[bool] = True
|
|
22
|
+
"""
|
|
23
|
+
Whether to reorient the lattice
|
|
24
|
+
"""
|
|
25
|
+
symmetrize: Optional[bool] = True
|
|
26
|
+
"""
|
|
27
|
+
Whether to symmetrize the slab
|
|
28
|
+
"""
|
|
@@ -20,11 +20,11 @@ class Units(Enum):
|
|
|
20
20
|
eV_atom = "eV/atom"
|
|
21
21
|
|
|
22
22
|
|
|
23
|
-
class
|
|
23
|
+
class Units30(Enum):
|
|
24
24
|
eV_A_2 = "eV/A^2"
|
|
25
25
|
|
|
26
26
|
|
|
27
27
|
class EnergySchema(BaseModel):
|
|
28
28
|
name: str
|
|
29
|
-
units: Union[Units,
|
|
29
|
+
units: Union[Units, Units30]
|
|
30
30
|
value: float
|
mat3ra/esse/models/element.py
CHANGED
|
@@ -10,6 +10,127 @@ from typing import List, Optional, Union
|
|
|
10
10
|
from pydantic import BaseModel
|
|
11
11
|
|
|
12
12
|
|
|
13
|
+
class Symbol(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
|
+
|
|
13
134
|
class Name(Enum):
|
|
14
135
|
atomic_radius = "atomic_radius"
|
|
15
136
|
|
|
@@ -33,20 +154,20 @@ class AtomicRadius(BaseModel):
|
|
|
33
154
|
value: float
|
|
34
155
|
|
|
35
156
|
|
|
36
|
-
class
|
|
157
|
+
class Name47(Enum):
|
|
37
158
|
electronegativity = "electronegativity"
|
|
38
159
|
|
|
39
160
|
|
|
40
161
|
class Electronegativity(BaseModel):
|
|
41
|
-
name: Optional[
|
|
162
|
+
name: Optional[Name47] = None
|
|
42
163
|
value: float
|
|
43
164
|
|
|
44
165
|
|
|
45
|
-
class
|
|
166
|
+
class Name48(Enum):
|
|
46
167
|
ionization_potential = "ionization_potential"
|
|
47
168
|
|
|
48
169
|
|
|
49
|
-
class
|
|
170
|
+
class Units28(Enum):
|
|
50
171
|
kJ_mol = "kJ/mol"
|
|
51
172
|
eV = "eV"
|
|
52
173
|
J_mol = "J/mol"
|
|
@@ -57,16 +178,13 @@ class Units22(Enum):
|
|
|
57
178
|
|
|
58
179
|
|
|
59
180
|
class IonizationPotential(BaseModel):
|
|
60
|
-
name: Optional[
|
|
61
|
-
units: Optional[
|
|
181
|
+
name: Optional[Name48] = None
|
|
182
|
+
units: Optional[Units28] = None
|
|
62
183
|
value: float
|
|
63
184
|
|
|
64
185
|
|
|
65
186
|
class ElementSchema(BaseModel):
|
|
66
|
-
symbol: Optional[
|
|
67
|
-
"""
|
|
68
|
-
Element symbol.
|
|
69
|
-
"""
|
|
187
|
+
symbol: Optional[Symbol] = None
|
|
70
188
|
properties: Optional[List[Union[AtomicRadius, Electronegativity, IonizationPotential]]] = None
|
|
71
189
|
"""
|
|
72
190
|
list of elemental properties
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
# generated by datamodel-codegen:
|
|
2
|
+
# filename: enums/chemical_elements.json
|
|
3
|
+
# version: 0.28.5
|
|
4
|
+
|
|
5
|
+
from __future__ import annotations
|
|
6
|
+
|
|
7
|
+
from typing import Any
|
|
8
|
+
|
|
9
|
+
from pydantic import Field, RootModel
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
class ChemicalElementSymbols(RootModel[Any]):
|
|
13
|
+
root: Any = Field(..., title="Chemical Element Symbols")
|
|
@@ -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 Value17(Enum):
|
|
135
|
+
X = "X"
|
|
136
|
+
Vac = "Vac"
|
|
137
|
+
|
|
138
|
+
|
|
13
139
|
class AtomicElementSchema(BaseModel):
|
|
14
|
-
value:
|
|
140
|
+
value: Union[Value, Value17]
|
|
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 Name69(Enum):
|
|
163
289
|
density = "density"
|
|
164
290
|
|
|
165
291
|
|
|
166
|
-
class
|
|
292
|
+
class Units45(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[Units45] = None
|
|
173
299
|
value: float
|
|
174
300
|
|
|
175
301
|
|
|
176
|
-
class
|
|
302
|
+
class Units46(Enum):
|
|
177
303
|
angstrom = "angstrom"
|
|
178
304
|
|
|
179
305
|
|
|
180
306
|
class ScalarSchema(BaseModel):
|
|
181
|
-
units: Optional[
|
|
307
|
+
units: Optional[Units46] = None
|
|
182
308
|
value: float
|
|
183
309
|
|
|
184
310
|
|
|
185
|
-
class
|
|
311
|
+
class Name70(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 Name71(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 Name72(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 Name73(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 Name74(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 Name75(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: Name75
|
|
333
459
|
"""
|
|
334
460
|
Name of the consistency check that is performed, which is listed in an enum.
|
|
335
461
|
"""
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
# generated by datamodel-codegen:
|
|
2
|
+
# filename: material/builders/base/selector_parameters.json
|
|
3
|
+
# version: 0.28.5
|
|
4
|
+
|
|
5
|
+
from __future__ import annotations
|
|
6
|
+
|
|
7
|
+
from typing import Optional
|
|
8
|
+
|
|
9
|
+
from pydantic import BaseModel, conint
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
class BaseSelectorParametersSchema(BaseModel):
|
|
13
|
+
default_index: Optional[conint(ge=0)] = 0
|
|
14
|
+
"""
|
|
15
|
+
Default index for the selector
|
|
16
|
+
"""
|
mat3ra/esse/models/material/builders/single_material/two_dimensional/slab/builder_parameters.py
ADDED
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
# generated by datamodel-codegen:
|
|
2
|
+
# filename: material/builders/single_material/two_dimensional/slab/builder_parameters.json
|
|
3
|
+
# version: 0.28.5
|
|
4
|
+
|
|
5
|
+
from __future__ import annotations
|
|
6
|
+
|
|
7
|
+
from typing import Optional, Union
|
|
8
|
+
|
|
9
|
+
from pydantic import BaseModel, confloat, conint
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
class SlabBuilderParametersSchema(BaseModel):
|
|
13
|
+
min_vacuum_size: Optional[Union[conint(ge=0), confloat(ge=0.0)]] = 1
|
|
14
|
+
"""
|
|
15
|
+
Minimum size of the vacuum in layers or angstroms
|
|
16
|
+
"""
|
|
17
|
+
in_unit_planes: Optional[bool] = True
|
|
18
|
+
"""
|
|
19
|
+
Whether to cleave in unit planes
|
|
20
|
+
"""
|
|
21
|
+
reorient_lattice: Optional[bool] = True
|
|
22
|
+
"""
|
|
23
|
+
Whether to reorient the lattice
|
|
24
|
+
"""
|
|
25
|
+
symmetrize: Optional[bool] = True
|
|
26
|
+
"""
|
|
27
|
+
Whether to symmetrize the slab
|
|
28
|
+
"""
|