mat3ra-esse 2025.8.6.post1__py3-none-any.whl → 2025.8.9.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/reusable/coordinate_conditions/__init__.py +54 -5
- mat3ra/esse/models/core/reusable/coordinate_conditions/box.py +1 -1
- mat3ra/esse/models/core/reusable/coordinate_conditions/cylinder.py +25 -0
- mat3ra/esse/models/core/reusable/coordinate_conditions/plane.py +24 -0
- mat3ra/esse/models/core/reusable/coordinate_conditions/sphere.py +23 -0
- mat3ra/esse/models/core/reusable/coordinate_conditions/triangular_prism.py +33 -0
- mat3ra/esse/models/materials_category/compound_pristine_structures/two_dimensional/interface/configuration.py +15 -12
- mat3ra/esse/models/materials_category/defective_structures/one_dimensional/grain_boundary_linear/configuration.py +15 -12
- mat3ra/esse/models/materials_category/defective_structures/two_dimensional/adatom/configuration.py +9 -6
- mat3ra/esse/models/materials_category/defective_structures/two_dimensional/grain_boundary_planar/configuration.py +15 -12
- mat3ra/esse/models/materials_category/defective_structures/two_dimensional/island/configuration.py +52 -10
- mat3ra/esse/models/materials_category/defective_structures/two_dimensional/terrace/configuration.py +52 -10
- mat3ra/esse/models/materials_category/pristine_structures/two_dimensional/nanoribbon.py +9 -6
- mat3ra/esse/models/materials_category/pristine_structures/two_dimensional/nanotape.py +7 -4
- mat3ra/esse/models/materials_category/pristine_structures/two_dimensional/slab.py +7 -4
- mat3ra/esse/models/materials_category/pristine_structures/two_dimensional/slab_strained_supercell.py +7 -4
- mat3ra/esse/models/materials_category_components/entities/auxiliary/zero_dimensional/void_region.py +41 -2
- mat3ra/esse/models/materials_category_components/entities/core/three_dimensional/void.py +43 -4
- mat3ra/esse/models/materials_category_components/entities/reusable/two_dimensional/slab_stack_configuration.py +9 -6
- mat3ra/esse/models/materials_category_components/operations/core/combinations/stack.py +8 -5
- {mat3ra_esse-2025.8.6.post1.dist-info → mat3ra_esse-2025.8.9.post0.dist-info}/METADATA +1 -1
- {mat3ra_esse-2025.8.6.post1.dist-info → mat3ra_esse-2025.8.9.post0.dist-info}/RECORD +27 -23
- {mat3ra_esse-2025.8.6.post1.dist-info → mat3ra_esse-2025.8.9.post0.dist-info}/WHEEL +0 -0
- {mat3ra_esse-2025.8.6.post1.dist-info → mat3ra_esse-2025.8.9.post0.dist-info}/licenses/LICENSE.md +0 -0
- {mat3ra_esse-2025.8.6.post1.dist-info → mat3ra_esse-2025.8.9.post0.dist-info}/top_level.txt +0 -0
|
@@ -5,9 +5,9 @@
|
|
|
5
5
|
from __future__ import annotations
|
|
6
6
|
|
|
7
7
|
from enum import Enum
|
|
8
|
-
from typing import List, Literal
|
|
8
|
+
from typing import List, Literal, Union
|
|
9
9
|
|
|
10
|
-
from pydantic import BaseModel, Field, RootModel
|
|
10
|
+
from pydantic import BaseModel, Field, RootModel, confloat
|
|
11
11
|
|
|
12
12
|
|
|
13
13
|
class CoordinateShapeEnum(Enum):
|
|
@@ -19,13 +19,62 @@ class CoordinateShapeEnum(Enum):
|
|
|
19
19
|
|
|
20
20
|
|
|
21
21
|
class BoxCoordinateConditionSchema(BaseModel):
|
|
22
|
-
shape: Literal["box"] = Field(
|
|
22
|
+
shape: Literal["box"] = Field("box", title="Coordinate Shape Enum")
|
|
23
23
|
min_coordinate: List[float] = Field(..., max_length=3, min_length=3, title="coordinate 3d schema")
|
|
24
24
|
max_coordinate: List[float] = Field(..., max_length=3, min_length=3, title="coordinate 3d schema")
|
|
25
25
|
|
|
26
26
|
|
|
27
|
-
class
|
|
28
|
-
|
|
27
|
+
class SphereCoordinateConditionSchema(BaseModel):
|
|
28
|
+
shape: Literal["sphere"] = Field("sphere", title="Coordinate Shape Enum")
|
|
29
|
+
radius: confloat(ge=0.0)
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
class CylinderCoordinateConditionSchema(BaseModel):
|
|
33
|
+
shape: Literal["cylinder"] = Field("cylinder", title="Coordinate Shape Enum")
|
|
34
|
+
radius: confloat(ge=0.0)
|
|
35
|
+
min_z: float
|
|
36
|
+
max_z: float
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
class TriangularPrismCoordinateConditionSchema(BaseModel):
|
|
40
|
+
shape: Literal["triangular_prism"] = Field("triangular_prism", title="Coordinate Shape Enum")
|
|
41
|
+
position_on_surface_1: List[float] = Field(
|
|
42
|
+
..., max_length=2, min_length=2, title="array of 2 number elements schema"
|
|
43
|
+
)
|
|
44
|
+
position_on_surface_2: List[float] = Field(
|
|
45
|
+
..., max_length=2, min_length=2, title="array of 2 number elements schema"
|
|
46
|
+
)
|
|
47
|
+
position_on_surface_3: List[float] = Field(
|
|
48
|
+
..., max_length=2, min_length=2, title="array of 2 number elements schema"
|
|
49
|
+
)
|
|
50
|
+
min_z: float
|
|
51
|
+
max_z: float
|
|
52
|
+
|
|
53
|
+
|
|
54
|
+
class PlaneCoordinateConditionSchema(BaseModel):
|
|
55
|
+
shape: Literal["plane"] = Field("plane", title="Coordinate Shape Enum")
|
|
56
|
+
plane_normal: List[float] = Field(..., max_length=3, min_length=3, title="coordinate 3d schema")
|
|
57
|
+
plane_point_coordinate: List[float] = Field(..., max_length=3, min_length=3, title="coordinate 3d schema")
|
|
58
|
+
|
|
59
|
+
|
|
60
|
+
class ESSE(
|
|
61
|
+
RootModel[
|
|
62
|
+
Union[
|
|
63
|
+
BoxCoordinateConditionSchema,
|
|
64
|
+
SphereCoordinateConditionSchema,
|
|
65
|
+
CylinderCoordinateConditionSchema,
|
|
66
|
+
TriangularPrismCoordinateConditionSchema,
|
|
67
|
+
PlaneCoordinateConditionSchema,
|
|
68
|
+
]
|
|
69
|
+
]
|
|
70
|
+
):
|
|
71
|
+
root: Union[
|
|
72
|
+
BoxCoordinateConditionSchema,
|
|
73
|
+
SphereCoordinateConditionSchema,
|
|
74
|
+
CylinderCoordinateConditionSchema,
|
|
75
|
+
TriangularPrismCoordinateConditionSchema,
|
|
76
|
+
PlaneCoordinateConditionSchema,
|
|
77
|
+
] = Field(..., title="Coordinate Conditions Schema")
|
|
29
78
|
"""
|
|
30
79
|
Combined schema for all coordinate condition types
|
|
31
80
|
"""
|
|
@@ -19,6 +19,6 @@ class CoordinateShapeEnum(Enum):
|
|
|
19
19
|
|
|
20
20
|
|
|
21
21
|
class BoxCoordinateConditionSchema(BaseModel):
|
|
22
|
-
shape: Literal["box"] = Field(
|
|
22
|
+
shape: Literal["box"] = Field("box", title="Coordinate Shape Enum")
|
|
23
23
|
min_coordinate: List[float] = Field(..., max_length=3, min_length=3, title="coordinate 3d schema")
|
|
24
24
|
max_coordinate: List[float] = Field(..., max_length=3, min_length=3, title="coordinate 3d schema")
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
# generated by datamodel-codegen:
|
|
2
|
+
# filename: core/reusable/coordinate_conditions/cylinder.json
|
|
3
|
+
# version: 0.28.5
|
|
4
|
+
|
|
5
|
+
from __future__ import annotations
|
|
6
|
+
|
|
7
|
+
from enum import Enum
|
|
8
|
+
from typing import Literal
|
|
9
|
+
|
|
10
|
+
from pydantic import BaseModel, Field, confloat
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
class CoordinateShapeEnum(Enum):
|
|
14
|
+
cylinder = "cylinder"
|
|
15
|
+
sphere = "sphere"
|
|
16
|
+
box = "box"
|
|
17
|
+
triangular_prism = "triangular_prism"
|
|
18
|
+
plane = "plane"
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
class CylinderCoordinateConditionSchema(BaseModel):
|
|
22
|
+
shape: Literal["cylinder"] = Field("cylinder", title="Coordinate Shape Enum")
|
|
23
|
+
radius: confloat(ge=0.0)
|
|
24
|
+
min_z: float
|
|
25
|
+
max_z: float
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
# generated by datamodel-codegen:
|
|
2
|
+
# filename: core/reusable/coordinate_conditions/plane.json
|
|
3
|
+
# version: 0.28.5
|
|
4
|
+
|
|
5
|
+
from __future__ import annotations
|
|
6
|
+
|
|
7
|
+
from enum import Enum
|
|
8
|
+
from typing import List, Literal
|
|
9
|
+
|
|
10
|
+
from pydantic import BaseModel, Field
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
class CoordinateShapeEnum(Enum):
|
|
14
|
+
cylinder = "cylinder"
|
|
15
|
+
sphere = "sphere"
|
|
16
|
+
box = "box"
|
|
17
|
+
triangular_prism = "triangular_prism"
|
|
18
|
+
plane = "plane"
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
class PlaneCoordinateConditionSchema(BaseModel):
|
|
22
|
+
shape: Literal["plane"] = Field("plane", title="Coordinate Shape Enum")
|
|
23
|
+
plane_normal: List[float] = Field(..., max_length=3, min_length=3, title="coordinate 3d schema")
|
|
24
|
+
plane_point_coordinate: List[float] = Field(..., max_length=3, min_length=3, title="coordinate 3d schema")
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
# generated by datamodel-codegen:
|
|
2
|
+
# filename: core/reusable/coordinate_conditions/sphere.json
|
|
3
|
+
# version: 0.28.5
|
|
4
|
+
|
|
5
|
+
from __future__ import annotations
|
|
6
|
+
|
|
7
|
+
from enum import Enum
|
|
8
|
+
from typing import Literal
|
|
9
|
+
|
|
10
|
+
from pydantic import BaseModel, Field, confloat
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
class CoordinateShapeEnum(Enum):
|
|
14
|
+
cylinder = "cylinder"
|
|
15
|
+
sphere = "sphere"
|
|
16
|
+
box = "box"
|
|
17
|
+
triangular_prism = "triangular_prism"
|
|
18
|
+
plane = "plane"
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
class SphereCoordinateConditionSchema(BaseModel):
|
|
22
|
+
shape: Literal["sphere"] = Field("sphere", title="Coordinate Shape Enum")
|
|
23
|
+
radius: confloat(ge=0.0)
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
# generated by datamodel-codegen:
|
|
2
|
+
# filename: core/reusable/coordinate_conditions/triangular_prism.json
|
|
3
|
+
# version: 0.28.5
|
|
4
|
+
|
|
5
|
+
from __future__ import annotations
|
|
6
|
+
|
|
7
|
+
from enum import Enum
|
|
8
|
+
from typing import List, Literal
|
|
9
|
+
|
|
10
|
+
from pydantic import BaseModel, Field
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
class CoordinateShapeEnum(Enum):
|
|
14
|
+
cylinder = "cylinder"
|
|
15
|
+
sphere = "sphere"
|
|
16
|
+
box = "box"
|
|
17
|
+
triangular_prism = "triangular_prism"
|
|
18
|
+
plane = "plane"
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
class TriangularPrismCoordinateConditionSchema(BaseModel):
|
|
22
|
+
shape: Literal["triangular_prism"] = Field("triangular_prism", title="Coordinate Shape Enum")
|
|
23
|
+
position_on_surface_1: List[float] = Field(
|
|
24
|
+
..., max_length=2, min_length=2, title="array of 2 number elements schema"
|
|
25
|
+
)
|
|
26
|
+
position_on_surface_2: List[float] = Field(
|
|
27
|
+
..., max_length=2, min_length=2, title="array of 2 number elements schema"
|
|
28
|
+
)
|
|
29
|
+
position_on_surface_3: List[float] = Field(
|
|
30
|
+
..., max_length=2, min_length=2, title="array of 2 number elements schema"
|
|
31
|
+
)
|
|
32
|
+
min_z: float
|
|
33
|
+
max_z: float
|
|
@@ -1117,8 +1117,11 @@ class VacuumConfigurationSchema(BaseModel):
|
|
|
1117
1117
|
"""
|
|
1118
1118
|
|
|
1119
1119
|
|
|
1120
|
-
class
|
|
1121
|
-
value:
|
|
1120
|
+
class ObjectWithIdAndValueSchema(BaseModel):
|
|
1121
|
+
value: float
|
|
1122
|
+
"""
|
|
1123
|
+
value of this entry
|
|
1124
|
+
"""
|
|
1122
1125
|
id: int
|
|
1123
1126
|
"""
|
|
1124
1127
|
integer id of this entry
|
|
@@ -1133,9 +1136,9 @@ class SlabConfigurationSchema(BaseModel):
|
|
|
1133
1136
|
"""
|
|
1134
1137
|
Enum for axis types
|
|
1135
1138
|
"""
|
|
1136
|
-
gaps: Optional[List[
|
|
1139
|
+
gaps: Optional[List[ObjectWithIdAndValueSchema]] = None
|
|
1137
1140
|
"""
|
|
1138
|
-
Gap distances between stack components as
|
|
1141
|
+
Gap distances between stack components as array of objects with id and value
|
|
1139
1142
|
"""
|
|
1140
1143
|
|
|
1141
1144
|
|
|
@@ -2036,9 +2039,9 @@ class SlabStrainedSupercellConfigurationSchema(BaseModel):
|
|
|
2036
2039
|
"""
|
|
2037
2040
|
Enum for axis types
|
|
2038
2041
|
"""
|
|
2039
|
-
gaps: Optional[List[
|
|
2042
|
+
gaps: Optional[List[ObjectWithIdAndValueSchema]] = None
|
|
2040
2043
|
"""
|
|
2041
|
-
Gap distances between stack components as
|
|
2044
|
+
Gap distances between stack components as array of objects with id and value
|
|
2042
2045
|
"""
|
|
2043
2046
|
|
|
2044
2047
|
|
|
@@ -2919,9 +2922,9 @@ class SlabConfigurationSchema10(BaseModel):
|
|
|
2919
2922
|
"""
|
|
2920
2923
|
Enum for axis types
|
|
2921
2924
|
"""
|
|
2922
|
-
gaps: Optional[List[
|
|
2925
|
+
gaps: Optional[List[ObjectWithIdAndValueSchema]] = None
|
|
2923
2926
|
"""
|
|
2924
|
-
Gap distances between stack components as
|
|
2927
|
+
Gap distances between stack components as array of objects with id and value
|
|
2925
2928
|
"""
|
|
2926
2929
|
|
|
2927
2930
|
|
|
@@ -3814,9 +3817,9 @@ class SlabStrainedSupercellConfigurationSchema5(BaseModel):
|
|
|
3814
3817
|
"""
|
|
3815
3818
|
Enum for axis types
|
|
3816
3819
|
"""
|
|
3817
|
-
gaps: Optional[List[
|
|
3820
|
+
gaps: Optional[List[ObjectWithIdAndValueSchema]] = None
|
|
3818
3821
|
"""
|
|
3819
|
-
Gap distances between stack components as
|
|
3822
|
+
Gap distances between stack components as array of objects with id and value
|
|
3820
3823
|
"""
|
|
3821
3824
|
|
|
3822
3825
|
|
|
@@ -4263,7 +4266,7 @@ class InterfaceConfigurationSchema(BaseModel):
|
|
|
4263
4266
|
"""
|
|
4264
4267
|
xy shift for the film as cartesian 2D vector on the xy plane.
|
|
4265
4268
|
"""
|
|
4266
|
-
gaps: Optional[List[
|
|
4269
|
+
gaps: Optional[List[ObjectWithIdAndValueSchema]] = None
|
|
4267
4270
|
"""
|
|
4268
|
-
Gap distances between stack components as
|
|
4271
|
+
Gap distances between stack components as array of objects with id and value
|
|
4269
4272
|
"""
|
|
@@ -1117,8 +1117,11 @@ class VacuumConfigurationSchema(BaseModel):
|
|
|
1117
1117
|
"""
|
|
1118
1118
|
|
|
1119
1119
|
|
|
1120
|
-
class
|
|
1121
|
-
value:
|
|
1120
|
+
class ObjectWithIdAndValueSchema(BaseModel):
|
|
1121
|
+
value: float
|
|
1122
|
+
"""
|
|
1123
|
+
value of this entry
|
|
1124
|
+
"""
|
|
1122
1125
|
id: int
|
|
1123
1126
|
"""
|
|
1124
1127
|
integer id of this entry
|
|
@@ -1133,9 +1136,9 @@ class SlabConfigurationSchema(BaseModel):
|
|
|
1133
1136
|
"""
|
|
1134
1137
|
Enum for axis types
|
|
1135
1138
|
"""
|
|
1136
|
-
gaps: Optional[List[
|
|
1139
|
+
gaps: Optional[List[ObjectWithIdAndValueSchema]] = None
|
|
1137
1140
|
"""
|
|
1138
|
-
Gap distances between stack components as
|
|
1141
|
+
Gap distances between stack components as array of objects with id and value
|
|
1139
1142
|
"""
|
|
1140
1143
|
|
|
1141
1144
|
|
|
@@ -2036,9 +2039,9 @@ class SlabStrainedSupercellConfigurationSchema(BaseModel):
|
|
|
2036
2039
|
"""
|
|
2037
2040
|
Enum for axis types
|
|
2038
2041
|
"""
|
|
2039
|
-
gaps: Optional[List[
|
|
2042
|
+
gaps: Optional[List[ObjectWithIdAndValueSchema]] = None
|
|
2040
2043
|
"""
|
|
2041
|
-
Gap distances between stack components as
|
|
2044
|
+
Gap distances between stack components as array of objects with id and value
|
|
2042
2045
|
"""
|
|
2043
2046
|
|
|
2044
2047
|
|
|
@@ -2919,9 +2922,9 @@ class SlabConfigurationSchema8(BaseModel):
|
|
|
2919
2922
|
"""
|
|
2920
2923
|
Enum for axis types
|
|
2921
2924
|
"""
|
|
2922
|
-
gaps: Optional[List[
|
|
2925
|
+
gaps: Optional[List[ObjectWithIdAndValueSchema]] = None
|
|
2923
2926
|
"""
|
|
2924
|
-
Gap distances between stack components as
|
|
2927
|
+
Gap distances between stack components as array of objects with id and value
|
|
2925
2928
|
"""
|
|
2926
2929
|
|
|
2927
2930
|
|
|
@@ -3814,9 +3817,9 @@ class SlabStrainedSupercellConfigurationSchema3(BaseModel):
|
|
|
3814
3817
|
"""
|
|
3815
3818
|
Enum for axis types
|
|
3816
3819
|
"""
|
|
3817
|
-
gaps: Optional[List[
|
|
3820
|
+
gaps: Optional[List[ObjectWithIdAndValueSchema]] = None
|
|
3818
3821
|
"""
|
|
3819
|
-
Gap distances between stack components as
|
|
3822
|
+
Gap distances between stack components as array of objects with id and value
|
|
3820
3823
|
"""
|
|
3821
3824
|
|
|
3822
3825
|
|
|
@@ -4267,7 +4270,7 @@ class GrainBoundaryLinearConfigurationSchema(BaseModel):
|
|
|
4267
4270
|
"""
|
|
4268
4271
|
xy shift for the film as cartesian 2D vector on the xy plane.
|
|
4269
4272
|
"""
|
|
4270
|
-
gaps: Optional[List[
|
|
4273
|
+
gaps: Optional[List[ObjectWithIdAndValueSchema]] = None
|
|
4271
4274
|
"""
|
|
4272
|
-
Gap distances between stack components as
|
|
4275
|
+
Gap distances between stack components as array of objects with id and value
|
|
4273
4276
|
"""
|
mat3ra/esse/models/materials_category/defective_structures/two_dimensional/adatom/configuration.py
CHANGED
|
@@ -1117,8 +1117,11 @@ class VacuumConfigurationSchema(BaseModel):
|
|
|
1117
1117
|
"""
|
|
1118
1118
|
|
|
1119
1119
|
|
|
1120
|
-
class
|
|
1121
|
-
value:
|
|
1120
|
+
class ObjectWithIdAndValueSchema(BaseModel):
|
|
1121
|
+
value: float
|
|
1122
|
+
"""
|
|
1123
|
+
value of this entry
|
|
1124
|
+
"""
|
|
1122
1125
|
id: int
|
|
1123
1126
|
"""
|
|
1124
1127
|
integer id of this entry
|
|
@@ -1133,9 +1136,9 @@ class SlabConfigurationSchema(BaseModel):
|
|
|
1133
1136
|
"""
|
|
1134
1137
|
Enum for axis types
|
|
1135
1138
|
"""
|
|
1136
|
-
gaps: Optional[List[
|
|
1139
|
+
gaps: Optional[List[ObjectWithIdAndValueSchema]] = None
|
|
1137
1140
|
"""
|
|
1138
|
-
Gap distances between stack components as
|
|
1141
|
+
Gap distances between stack components as array of objects with id and value
|
|
1139
1142
|
"""
|
|
1140
1143
|
|
|
1141
1144
|
|
|
@@ -2126,7 +2129,7 @@ class AdatomDefectConfigurationSchema(BaseModel):
|
|
|
2126
2129
|
"""
|
|
2127
2130
|
Enum for axis types
|
|
2128
2131
|
"""
|
|
2129
|
-
gaps: Optional[List[
|
|
2132
|
+
gaps: Optional[List[ObjectWithIdAndValueSchema]] = None
|
|
2130
2133
|
"""
|
|
2131
|
-
Gap distances between stack components as
|
|
2134
|
+
Gap distances between stack components as array of objects with id and value
|
|
2132
2135
|
"""
|
|
@@ -1117,8 +1117,11 @@ class VacuumConfigurationSchema(BaseModel):
|
|
|
1117
1117
|
"""
|
|
1118
1118
|
|
|
1119
1119
|
|
|
1120
|
-
class
|
|
1121
|
-
value:
|
|
1120
|
+
class ObjectWithIdAndValueSchema(BaseModel):
|
|
1121
|
+
value: float
|
|
1122
|
+
"""
|
|
1123
|
+
value of this entry
|
|
1124
|
+
"""
|
|
1122
1125
|
id: int
|
|
1123
1126
|
"""
|
|
1124
1127
|
integer id of this entry
|
|
@@ -1133,9 +1136,9 @@ class SlabConfigurationSchema(BaseModel):
|
|
|
1133
1136
|
"""
|
|
1134
1137
|
Enum for axis types
|
|
1135
1138
|
"""
|
|
1136
|
-
gaps: Optional[List[
|
|
1139
|
+
gaps: Optional[List[ObjectWithIdAndValueSchema]] = None
|
|
1137
1140
|
"""
|
|
1138
|
-
Gap distances between stack components as
|
|
1141
|
+
Gap distances between stack components as array of objects with id and value
|
|
1139
1142
|
"""
|
|
1140
1143
|
|
|
1141
1144
|
|
|
@@ -2036,9 +2039,9 @@ class SlabStrainedSupercellConfigurationSchema(BaseModel):
|
|
|
2036
2039
|
"""
|
|
2037
2040
|
Enum for axis types
|
|
2038
2041
|
"""
|
|
2039
|
-
gaps: Optional[List[
|
|
2042
|
+
gaps: Optional[List[ObjectWithIdAndValueSchema]] = None
|
|
2040
2043
|
"""
|
|
2041
|
-
Gap distances between stack components as
|
|
2044
|
+
Gap distances between stack components as array of objects with id and value
|
|
2042
2045
|
"""
|
|
2043
2046
|
|
|
2044
2047
|
|
|
@@ -2919,9 +2922,9 @@ class SlabConfigurationSchema1(BaseModel):
|
|
|
2919
2922
|
"""
|
|
2920
2923
|
Enum for axis types
|
|
2921
2924
|
"""
|
|
2922
|
-
gaps: Optional[List[
|
|
2925
|
+
gaps: Optional[List[ObjectWithIdAndValueSchema]] = None
|
|
2923
2926
|
"""
|
|
2924
|
-
Gap distances between stack components as
|
|
2927
|
+
Gap distances between stack components as array of objects with id and value
|
|
2925
2928
|
"""
|
|
2926
2929
|
|
|
2927
2930
|
|
|
@@ -3814,9 +3817,9 @@ class SlabStrainedSupercellConfigurationSchema1(BaseModel):
|
|
|
3814
3817
|
"""
|
|
3815
3818
|
Enum for axis types
|
|
3816
3819
|
"""
|
|
3817
|
-
gaps: Optional[List[
|
|
3820
|
+
gaps: Optional[List[ObjectWithIdAndValueSchema]] = None
|
|
3818
3821
|
"""
|
|
3819
|
-
Gap distances between stack components as
|
|
3822
|
+
Gap distances between stack components as array of objects with id and value
|
|
3820
3823
|
"""
|
|
3821
3824
|
|
|
3822
3825
|
|
|
@@ -4263,7 +4266,7 @@ class GrainBoundaryPlanarConfigurationSchema(BaseModel):
|
|
|
4263
4266
|
"""
|
|
4264
4267
|
xy shift for the film as cartesian 2D vector on the xy plane.
|
|
4265
4268
|
"""
|
|
4266
|
-
gaps: Optional[List[
|
|
4269
|
+
gaps: Optional[List[ObjectWithIdAndValueSchema]] = None
|
|
4267
4270
|
"""
|
|
4268
|
-
Gap distances between stack components as
|
|
4271
|
+
Gap distances between stack components as array of objects with id and value
|
|
4269
4272
|
"""
|
mat3ra/esse/models/materials_category/defective_structures/two_dimensional/island/configuration.py
CHANGED
|
@@ -1117,8 +1117,11 @@ class VacuumConfigurationSchema(BaseModel):
|
|
|
1117
1117
|
"""
|
|
1118
1118
|
|
|
1119
1119
|
|
|
1120
|
-
class
|
|
1121
|
-
value:
|
|
1120
|
+
class ObjectWithIdAndValueSchema(BaseModel):
|
|
1121
|
+
value: float
|
|
1122
|
+
"""
|
|
1123
|
+
value of this entry
|
|
1124
|
+
"""
|
|
1122
1125
|
id: int
|
|
1123
1126
|
"""
|
|
1124
1127
|
integer id of this entry
|
|
@@ -1133,9 +1136,9 @@ class SlabConfigurationSchema(BaseModel):
|
|
|
1133
1136
|
"""
|
|
1134
1137
|
Enum for axis types
|
|
1135
1138
|
"""
|
|
1136
|
-
gaps: Optional[List[
|
|
1139
|
+
gaps: Optional[List[ObjectWithIdAndValueSchema]] = None
|
|
1137
1140
|
"""
|
|
1138
|
-
Gap distances between stack components as
|
|
1141
|
+
Gap distances between stack components as array of objects with id and value
|
|
1139
1142
|
"""
|
|
1140
1143
|
|
|
1141
1144
|
|
|
@@ -2016,9 +2019,9 @@ class SlabConfigurationSchema6(BaseModel):
|
|
|
2016
2019
|
"""
|
|
2017
2020
|
Enum for axis types
|
|
2018
2021
|
"""
|
|
2019
|
-
gaps: Optional[List[
|
|
2022
|
+
gaps: Optional[List[ObjectWithIdAndValueSchema]] = None
|
|
2020
2023
|
"""
|
|
2021
|
-
Gap distances between stack components as
|
|
2024
|
+
Gap distances between stack components as array of objects with id and value
|
|
2022
2025
|
"""
|
|
2023
2026
|
|
|
2024
2027
|
|
|
@@ -2440,17 +2443,56 @@ class CoordinateShapeEnum(Enum):
|
|
|
2440
2443
|
|
|
2441
2444
|
|
|
2442
2445
|
class BoxCoordinateConditionSchema(BaseModel):
|
|
2443
|
-
shape: Literal["box"] = Field(
|
|
2446
|
+
shape: Literal["box"] = Field("box", title="Coordinate Shape Enum")
|
|
2444
2447
|
min_coordinate: List[float] = Field(..., max_length=3, min_length=3, title="coordinate 3d schema")
|
|
2445
2448
|
max_coordinate: List[float] = Field(..., max_length=3, min_length=3, title="coordinate 3d schema")
|
|
2446
2449
|
|
|
2447
2450
|
|
|
2451
|
+
class SphereCoordinateConditionSchema(BaseModel):
|
|
2452
|
+
shape: Literal["sphere"] = Field("sphere", title="Coordinate Shape Enum")
|
|
2453
|
+
radius: confloat(ge=0.0)
|
|
2454
|
+
|
|
2455
|
+
|
|
2456
|
+
class CylinderCoordinateConditionSchema(BaseModel):
|
|
2457
|
+
shape: Literal["cylinder"] = Field("cylinder", title="Coordinate Shape Enum")
|
|
2458
|
+
radius: confloat(ge=0.0)
|
|
2459
|
+
min_z: float
|
|
2460
|
+
max_z: float
|
|
2461
|
+
|
|
2462
|
+
|
|
2463
|
+
class TriangularPrismCoordinateConditionSchema(BaseModel):
|
|
2464
|
+
shape: Literal["triangular_prism"] = Field("triangular_prism", title="Coordinate Shape Enum")
|
|
2465
|
+
position_on_surface_1: List[float] = Field(
|
|
2466
|
+
..., max_length=2, min_length=2, title="array of 2 number elements schema"
|
|
2467
|
+
)
|
|
2468
|
+
position_on_surface_2: List[float] = Field(
|
|
2469
|
+
..., max_length=2, min_length=2, title="array of 2 number elements schema"
|
|
2470
|
+
)
|
|
2471
|
+
position_on_surface_3: List[float] = Field(
|
|
2472
|
+
..., max_length=2, min_length=2, title="array of 2 number elements schema"
|
|
2473
|
+
)
|
|
2474
|
+
min_z: float
|
|
2475
|
+
max_z: float
|
|
2476
|
+
|
|
2477
|
+
|
|
2478
|
+
class PlaneCoordinateConditionSchema(BaseModel):
|
|
2479
|
+
shape: Literal["plane"] = Field("plane", title="Coordinate Shape Enum")
|
|
2480
|
+
plane_normal: List[float] = Field(..., max_length=3, min_length=3, title="coordinate 3d schema")
|
|
2481
|
+
plane_point_coordinate: List[float] = Field(..., max_length=3, min_length=3, title="coordinate 3d schema")
|
|
2482
|
+
|
|
2483
|
+
|
|
2448
2484
|
class VoidRegionSchema(BaseModel):
|
|
2449
2485
|
crystal: CrystalSchema27 = Field(..., title="Crystal Schema")
|
|
2450
2486
|
"""
|
|
2451
2487
|
A crystal structure, referencing the base material schema
|
|
2452
2488
|
"""
|
|
2453
|
-
coordinate_condition:
|
|
2489
|
+
coordinate_condition: Union[
|
|
2490
|
+
BoxCoordinateConditionSchema,
|
|
2491
|
+
SphereCoordinateConditionSchema,
|
|
2492
|
+
CylinderCoordinateConditionSchema,
|
|
2493
|
+
TriangularPrismCoordinateConditionSchema,
|
|
2494
|
+
PlaneCoordinateConditionSchema,
|
|
2495
|
+
] = Field(..., title="Coordinate Conditions Schema")
|
|
2454
2496
|
"""
|
|
2455
2497
|
Combined schema for all coordinate condition types
|
|
2456
2498
|
"""
|
|
@@ -2902,7 +2944,7 @@ class IslandDefectConfigurationSchema(BaseModel):
|
|
|
2902
2944
|
"""
|
|
2903
2945
|
Enum for axis types
|
|
2904
2946
|
"""
|
|
2905
|
-
gaps: Optional[List[
|
|
2947
|
+
gaps: Optional[List[ObjectWithIdAndValueSchema]] = None
|
|
2906
2948
|
"""
|
|
2907
|
-
Gap distances between stack components as
|
|
2949
|
+
Gap distances between stack components as array of objects with id and value
|
|
2908
2950
|
"""
|
mat3ra/esse/models/materials_category/defective_structures/two_dimensional/terrace/configuration.py
CHANGED
|
@@ -1117,8 +1117,11 @@ class VacuumConfigurationSchema(BaseModel):
|
|
|
1117
1117
|
"""
|
|
1118
1118
|
|
|
1119
1119
|
|
|
1120
|
-
class
|
|
1121
|
-
value:
|
|
1120
|
+
class ObjectWithIdAndValueSchema(BaseModel):
|
|
1121
|
+
value: float
|
|
1122
|
+
"""
|
|
1123
|
+
value of this entry
|
|
1124
|
+
"""
|
|
1122
1125
|
id: int
|
|
1123
1126
|
"""
|
|
1124
1127
|
integer id of this entry
|
|
@@ -1133,9 +1136,9 @@ class SlabConfigurationSchema(BaseModel):
|
|
|
1133
1136
|
"""
|
|
1134
1137
|
Enum for axis types
|
|
1135
1138
|
"""
|
|
1136
|
-
gaps: Optional[List[
|
|
1139
|
+
gaps: Optional[List[ObjectWithIdAndValueSchema]] = None
|
|
1137
1140
|
"""
|
|
1138
|
-
Gap distances between stack components as
|
|
1141
|
+
Gap distances between stack components as array of objects with id and value
|
|
1139
1142
|
"""
|
|
1140
1143
|
|
|
1141
1144
|
|
|
@@ -2016,9 +2019,9 @@ class SlabConfigurationSchema3(BaseModel):
|
|
|
2016
2019
|
"""
|
|
2017
2020
|
Enum for axis types
|
|
2018
2021
|
"""
|
|
2019
|
-
gaps: Optional[List[
|
|
2022
|
+
gaps: Optional[List[ObjectWithIdAndValueSchema]] = None
|
|
2020
2023
|
"""
|
|
2021
|
-
Gap distances between stack components as
|
|
2024
|
+
Gap distances between stack components as array of objects with id and value
|
|
2022
2025
|
"""
|
|
2023
2026
|
|
|
2024
2027
|
|
|
@@ -2440,17 +2443,56 @@ class CoordinateShapeEnum(Enum):
|
|
|
2440
2443
|
|
|
2441
2444
|
|
|
2442
2445
|
class BoxCoordinateConditionSchema(BaseModel):
|
|
2443
|
-
shape: Literal["box"] = Field(
|
|
2446
|
+
shape: Literal["box"] = Field("box", title="Coordinate Shape Enum")
|
|
2444
2447
|
min_coordinate: List[float] = Field(..., max_length=3, min_length=3, title="coordinate 3d schema")
|
|
2445
2448
|
max_coordinate: List[float] = Field(..., max_length=3, min_length=3, title="coordinate 3d schema")
|
|
2446
2449
|
|
|
2447
2450
|
|
|
2451
|
+
class SphereCoordinateConditionSchema(BaseModel):
|
|
2452
|
+
shape: Literal["sphere"] = Field("sphere", title="Coordinate Shape Enum")
|
|
2453
|
+
radius: confloat(ge=0.0)
|
|
2454
|
+
|
|
2455
|
+
|
|
2456
|
+
class CylinderCoordinateConditionSchema(BaseModel):
|
|
2457
|
+
shape: Literal["cylinder"] = Field("cylinder", title="Coordinate Shape Enum")
|
|
2458
|
+
radius: confloat(ge=0.0)
|
|
2459
|
+
min_z: float
|
|
2460
|
+
max_z: float
|
|
2461
|
+
|
|
2462
|
+
|
|
2463
|
+
class TriangularPrismCoordinateConditionSchema(BaseModel):
|
|
2464
|
+
shape: Literal["triangular_prism"] = Field("triangular_prism", title="Coordinate Shape Enum")
|
|
2465
|
+
position_on_surface_1: List[float] = Field(
|
|
2466
|
+
..., max_length=2, min_length=2, title="array of 2 number elements schema"
|
|
2467
|
+
)
|
|
2468
|
+
position_on_surface_2: List[float] = Field(
|
|
2469
|
+
..., max_length=2, min_length=2, title="array of 2 number elements schema"
|
|
2470
|
+
)
|
|
2471
|
+
position_on_surface_3: List[float] = Field(
|
|
2472
|
+
..., max_length=2, min_length=2, title="array of 2 number elements schema"
|
|
2473
|
+
)
|
|
2474
|
+
min_z: float
|
|
2475
|
+
max_z: float
|
|
2476
|
+
|
|
2477
|
+
|
|
2478
|
+
class PlaneCoordinateConditionSchema(BaseModel):
|
|
2479
|
+
shape: Literal["plane"] = Field("plane", title="Coordinate Shape Enum")
|
|
2480
|
+
plane_normal: List[float] = Field(..., max_length=3, min_length=3, title="coordinate 3d schema")
|
|
2481
|
+
plane_point_coordinate: List[float] = Field(..., max_length=3, min_length=3, title="coordinate 3d schema")
|
|
2482
|
+
|
|
2483
|
+
|
|
2448
2484
|
class VoidRegionSchema(BaseModel):
|
|
2449
2485
|
crystal: CrystalSchema17 = Field(..., title="Crystal Schema")
|
|
2450
2486
|
"""
|
|
2451
2487
|
A crystal structure, referencing the base material schema
|
|
2452
2488
|
"""
|
|
2453
|
-
coordinate_condition:
|
|
2489
|
+
coordinate_condition: Union[
|
|
2490
|
+
BoxCoordinateConditionSchema,
|
|
2491
|
+
SphereCoordinateConditionSchema,
|
|
2492
|
+
CylinderCoordinateConditionSchema,
|
|
2493
|
+
TriangularPrismCoordinateConditionSchema,
|
|
2494
|
+
PlaneCoordinateConditionSchema,
|
|
2495
|
+
] = Field(..., title="Coordinate Conditions Schema")
|
|
2454
2496
|
"""
|
|
2455
2497
|
Combined schema for all coordinate condition types
|
|
2456
2498
|
"""
|
|
@@ -2906,7 +2948,7 @@ class TerraceDefectConfigurationSchema(BaseModel):
|
|
|
2906
2948
|
"""
|
|
2907
2949
|
Enum for axis types
|
|
2908
2950
|
"""
|
|
2909
|
-
gaps: Optional[List[
|
|
2951
|
+
gaps: Optional[List[ObjectWithIdAndValueSchema]] = None
|
|
2910
2952
|
"""
|
|
2911
|
-
Gap distances between stack components as
|
|
2953
|
+
Gap distances between stack components as array of objects with id and value
|
|
2912
2954
|
"""
|