mat3ra-esse 2025.7.29.post0__py3-none-any.whl → 2025.8.6.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 +6 -6
- 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/materials_category/compound_pristine_structures/two_dimensional/interface/configuration.py +549 -2319
- mat3ra/esse/models/materials_category/defective_structures/one_dimensional/grain_boundary_linear/configuration.py +537 -2307
- mat3ra/esse/models/materials_category/defective_structures/two_dimensional/adatom/configuration.py +206 -190
- mat3ra/esse/models/materials_category/defective_structures/two_dimensional/grain_boundary_planar/configuration.py +56 -1826
- mat3ra/esse/models/materials_category/defective_structures/two_dimensional/island/configuration.py +331 -311
- mat3ra/esse/models/materials_category/defective_structures/two_dimensional/terrace/configuration.py +331 -311
- mat3ra/esse/models/materials_category/defective_structures/zero_dimensional/point_defect/interstitial.py +72 -72
- mat3ra/esse/models/materials_category/defective_structures/zero_dimensional/point_defect/substitutional.py +72 -72
- mat3ra/esse/models/materials_category/defective_structures/zero_dimensional/point_defect/vacancy.py +14 -14
- mat3ra/esse/models/materials_category/pristine_structures/three_dimensional/ideal_crystal.py +14 -14
- mat3ra/esse/models/materials_category/pristine_structures/two_dimensional/nanoribbon.py +150 -134
- mat3ra/esse/models/materials_category/pristine_structures/two_dimensional/nanotape.py +86 -74
- mat3ra/esse/models/materials_category/pristine_structures/two_dimensional/slab.py +84 -72
- mat3ra/esse/models/materials_category/pristine_structures/two_dimensional/slab_strained_supercell.py +84 -72
- mat3ra/esse/models/materials_category/processed_structures/two_dimensional/passivation/configuration.py +70 -70
- mat3ra/esse/models/materials_category_components/entities/auxiliary/zero_dimensional/crystal_site.py +14 -14
- mat3ra/esse/models/materials_category_components/entities/auxiliary/zero_dimensional/point_defect_site.py +14 -14
- mat3ra/esse/models/materials_category_components/entities/auxiliary/zero_dimensional/void_region.py +14 -14
- mat3ra/esse/models/materials_category_components/entities/core/three_dimensional/crystal.py +14 -14
- mat3ra/esse/models/materials_category_components/entities/core/two_dimensional/vacuum.py +14 -14
- mat3ra/esse/models/materials_category_components/entities/reusable/one_dimensional/crystal_lattice_lines.py +14 -14
- mat3ra/esse/models/materials_category_components/entities/reusable/one_dimensional/crystal_lattice_lines_unique_repeated.py +16 -16
- mat3ra/esse/models/materials_category_components/entities/reusable/three_dimensional/crystal_lattice_base.py +14 -14
- mat3ra/esse/models/materials_category_components/entities/reusable/{repetitions.py → three_dimensional/repetitions.py} +1 -1
- mat3ra/esse/models/materials_category_components/entities/reusable/three_dimensional/strained_non_uniform.py +14 -14
- mat3ra/esse/models/materials_category_components/entities/reusable/three_dimensional/strained_uniform.py +14 -14
- mat3ra/esse/models/materials_category_components/entities/reusable/three_dimensional/supercell.py +14 -14
- mat3ra/esse/models/materials_category_components/entities/reusable/two_dimensional/crystal_lattice_planes.py +14 -14
- mat3ra/esse/models/materials_category_components/entities/reusable/two_dimensional/slab_stack_configuration.py +148 -132
- mat3ra/esse/models/materials_category_components/operations/core/combinations/stack.py +14 -2
- mat3ra/esse/models/materials_category_components/operations/core/modifications/perturb.py +14 -14
- 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/molecular_pattern.py +4 -4
- mat3ra/esse/models/properties_directory/workflow/convergence/ionic.py +2 -2
- mat3ra/esse/models/software/template.py +4 -0
- mat3ra/esse/models/software_directory/modeling/unit/execution.py +4 -0
- mat3ra/esse/models/software_directory/scripting/unit/execution.py +4 -0
- mat3ra/esse/models/workflow/unit/input/_input.py +4 -0
- mat3ra/esse/models/workflow/unit/input/_inputItem.py +4 -0
- {mat3ra_esse-2025.7.29.post0.dist-info → mat3ra_esse-2025.8.6.post1.dist-info}/METADATA +1 -1
- {mat3ra_esse-2025.7.29.post0.dist-info → mat3ra_esse-2025.8.6.post1.dist-info}/RECORD +64 -65
- mat3ra/esse/models/materials_category/pristine_structures/two_dimensional/slab_strained_supercell_with_gap.py +0 -1151
- {mat3ra_esse-2025.7.29.post0.dist-info → mat3ra_esse-2025.8.6.post1.dist-info}/WHEEL +0 -0
- {mat3ra_esse-2025.7.29.post0.dist-info → mat3ra_esse-2025.8.6.post1.dist-info}/licenses/LICENSE.md +0 -0
- {mat3ra_esse-2025.7.29.post0.dist-info → mat3ra_esse-2025.8.6.post1.dist-info}/top_level.txt +0 -0
mat3ra/esse/models/materials_category/pristine_structures/two_dimensional/slab_strained_supercell.py
CHANGED
|
@@ -273,13 +273,13 @@ class Value(Enum):
|
|
|
273
273
|
Og = "Og"
|
|
274
274
|
|
|
275
275
|
|
|
276
|
-
class
|
|
276
|
+
class Value157(Enum):
|
|
277
277
|
X = "X"
|
|
278
278
|
Vac = "Vac"
|
|
279
279
|
|
|
280
280
|
|
|
281
281
|
class AtomicElementSchema(BaseModel):
|
|
282
|
-
value: Union[Value,
|
|
282
|
+
value: Union[Value, Value157]
|
|
283
283
|
"""
|
|
284
284
|
All elements, including extra elements
|
|
285
285
|
"""
|
|
@@ -427,30 +427,30 @@ class VolumeSchema(BaseModel):
|
|
|
427
427
|
value: float
|
|
428
428
|
|
|
429
429
|
|
|
430
|
-
class
|
|
430
|
+
class Name629(Enum):
|
|
431
431
|
density = "density"
|
|
432
432
|
|
|
433
433
|
|
|
434
|
-
class
|
|
434
|
+
class Units258(Enum):
|
|
435
435
|
g_cm_3 = "g/cm^3"
|
|
436
436
|
|
|
437
437
|
|
|
438
438
|
class DensitySchema(BaseModel):
|
|
439
439
|
name: Literal["1#-datamodel-code-generator-#-object-#-special-#"]
|
|
440
|
-
units: Optional[
|
|
440
|
+
units: Optional[Units258] = None
|
|
441
441
|
value: float
|
|
442
442
|
|
|
443
443
|
|
|
444
|
-
class
|
|
444
|
+
class Units259(Enum):
|
|
445
445
|
angstrom = "angstrom"
|
|
446
446
|
|
|
447
447
|
|
|
448
448
|
class ScalarSchema(BaseModel):
|
|
449
|
-
units: Optional[
|
|
449
|
+
units: Optional[Units259] = None
|
|
450
450
|
value: float
|
|
451
451
|
|
|
452
452
|
|
|
453
|
-
class
|
|
453
|
+
class Name630(Enum):
|
|
454
454
|
symmetry = "symmetry"
|
|
455
455
|
|
|
456
456
|
|
|
@@ -470,7 +470,7 @@ class SymmetrySchema(BaseModel):
|
|
|
470
470
|
name: Literal["2#-datamodel-code-generator-#-object-#-special-#"]
|
|
471
471
|
|
|
472
472
|
|
|
473
|
-
class
|
|
473
|
+
class Name631(Enum):
|
|
474
474
|
elemental_ratio = "elemental_ratio"
|
|
475
475
|
|
|
476
476
|
|
|
@@ -483,7 +483,7 @@ class ElementalRatio(BaseModel):
|
|
|
483
483
|
"""
|
|
484
484
|
|
|
485
485
|
|
|
486
|
-
class
|
|
486
|
+
class Name632(Enum):
|
|
487
487
|
p_norm = "p-norm"
|
|
488
488
|
|
|
489
489
|
|
|
@@ -496,7 +496,7 @@ class PNorm(BaseModel):
|
|
|
496
496
|
value: float
|
|
497
497
|
|
|
498
498
|
|
|
499
|
-
class
|
|
499
|
+
class Name633(Enum):
|
|
500
500
|
inchi = "inchi"
|
|
501
501
|
|
|
502
502
|
|
|
@@ -505,7 +505,7 @@ class InChIRepresentationSchema(BaseModel):
|
|
|
505
505
|
value: str
|
|
506
506
|
|
|
507
507
|
|
|
508
|
-
class
|
|
508
|
+
class Name634(Enum):
|
|
509
509
|
inchi_key = "inchi_key"
|
|
510
510
|
|
|
511
511
|
|
|
@@ -584,7 +584,7 @@ class FileSourceSchema(BaseModel):
|
|
|
584
584
|
"""
|
|
585
585
|
|
|
586
586
|
|
|
587
|
-
class
|
|
587
|
+
class Name635(Enum):
|
|
588
588
|
default = "default"
|
|
589
589
|
atomsTooClose = "atomsTooClose"
|
|
590
590
|
atomsOverlap = "atomsOverlap"
|
|
@@ -597,7 +597,7 @@ class Severity(Enum):
|
|
|
597
597
|
|
|
598
598
|
|
|
599
599
|
class MaterialConsistencyCheckSchema(BaseModel):
|
|
600
|
-
name:
|
|
600
|
+
name: Name635
|
|
601
601
|
"""
|
|
602
602
|
Name of the consistency check that is performed, which is listed in an enum.
|
|
603
603
|
"""
|
|
@@ -701,7 +701,7 @@ class AxisEnum(Enum):
|
|
|
701
701
|
z = "z"
|
|
702
702
|
|
|
703
703
|
|
|
704
|
-
class
|
|
704
|
+
class Value158(Enum):
|
|
705
705
|
H = "H"
|
|
706
706
|
He = "He"
|
|
707
707
|
Li = "Li"
|
|
@@ -822,13 +822,13 @@ class Value182(Enum):
|
|
|
822
822
|
Og = "Og"
|
|
823
823
|
|
|
824
824
|
|
|
825
|
-
class
|
|
825
|
+
class Value159(Enum):
|
|
826
826
|
X = "X"
|
|
827
827
|
Vac = "Vac"
|
|
828
828
|
|
|
829
829
|
|
|
830
|
-
class
|
|
831
|
-
value: Union[
|
|
830
|
+
class AtomicElementSchema75(BaseModel):
|
|
831
|
+
value: Union[Value158, Value159]
|
|
832
832
|
"""
|
|
833
833
|
All elements, including extra elements
|
|
834
834
|
"""
|
|
@@ -838,8 +838,8 @@ class AtomicElementSchema87(BaseModel):
|
|
|
838
838
|
"""
|
|
839
839
|
|
|
840
840
|
|
|
841
|
-
class
|
|
842
|
-
elements: List[
|
|
841
|
+
class BasisSchema73(BaseModel):
|
|
842
|
+
elements: List[AtomicElementSchema75] = Field(..., title="atomic elements schema")
|
|
843
843
|
"""
|
|
844
844
|
atomic elements schema
|
|
845
845
|
"""
|
|
@@ -854,7 +854,7 @@ class BasisSchema85(BaseModel):
|
|
|
854
854
|
"""
|
|
855
855
|
|
|
856
856
|
|
|
857
|
-
class
|
|
857
|
+
class LatticeVectorsSchema73(BaseModel):
|
|
858
858
|
a: List[float] = Field(..., max_length=3, min_length=3, title="vector 3d schema")
|
|
859
859
|
b: List[float] = Field(..., max_length=3, min_length=3, title="vector 3d schema")
|
|
860
860
|
c: List[float] = Field(..., max_length=3, min_length=3, title="vector 3d schema")
|
|
@@ -865,12 +865,12 @@ class LatticeVectorsSchema85(BaseModel):
|
|
|
865
865
|
units: Optional[LatticeVectorsUnitsEnum] = Field("angstrom", title="lattice vectors units enum")
|
|
866
866
|
|
|
867
867
|
|
|
868
|
-
class
|
|
868
|
+
class LatticeUnitsSchema74(BaseModel):
|
|
869
869
|
length: Optional[LatticeUnitsLengthEnum] = Field("angstrom", title="lattice units length enum")
|
|
870
870
|
angle: Optional[LatticeUnitsAngleEnum] = Field("degree", title="lattice units angle enum")
|
|
871
871
|
|
|
872
872
|
|
|
873
|
-
class
|
|
873
|
+
class LatticeSchema73(BaseModel):
|
|
874
874
|
a: float
|
|
875
875
|
"""
|
|
876
876
|
length of the first lattice vector
|
|
@@ -895,56 +895,56 @@ class LatticeSchema85(BaseModel):
|
|
|
895
895
|
"""
|
|
896
896
|
angle between first and third lattice vector
|
|
897
897
|
"""
|
|
898
|
-
vectors: Optional[
|
|
898
|
+
vectors: Optional[LatticeVectorsSchema73] = Field(None, title="lattice vectors schema")
|
|
899
899
|
type: Optional[LatticeTypeEnum] = Field("TRI", title="lattice type enum")
|
|
900
|
-
units: Optional[
|
|
901
|
-
default_factory=lambda:
|
|
900
|
+
units: Optional[LatticeUnitsSchema74] = Field(
|
|
901
|
+
default_factory=lambda: LatticeUnitsSchema74.model_validate({"length": "angstrom", "angle": "degree"}),
|
|
902
902
|
title="Lattice units schema",
|
|
903
903
|
)
|
|
904
904
|
|
|
905
905
|
|
|
906
|
-
class
|
|
906
|
+
class Name636(Enum):
|
|
907
907
|
volume = "volume"
|
|
908
908
|
|
|
909
909
|
|
|
910
|
-
class
|
|
910
|
+
class Units260(Enum):
|
|
911
911
|
angstrom_3 = "angstrom^3"
|
|
912
912
|
|
|
913
913
|
|
|
914
|
-
class
|
|
914
|
+
class VolumeSchema73(BaseModel):
|
|
915
915
|
name: Literal["0#-datamodel-code-generator-#-object-#-special-#"]
|
|
916
|
-
units: Optional[
|
|
916
|
+
units: Optional[Units260] = None
|
|
917
917
|
value: float
|
|
918
918
|
|
|
919
919
|
|
|
920
|
-
class
|
|
920
|
+
class Name637(Enum):
|
|
921
921
|
density = "density"
|
|
922
922
|
|
|
923
923
|
|
|
924
|
-
class
|
|
924
|
+
class Units261(Enum):
|
|
925
925
|
g_cm_3 = "g/cm^3"
|
|
926
926
|
|
|
927
927
|
|
|
928
|
-
class
|
|
928
|
+
class DensitySchema74(BaseModel):
|
|
929
929
|
name: Literal["1#-datamodel-code-generator-#-object-#-special-#"]
|
|
930
|
-
units: Optional[
|
|
930
|
+
units: Optional[Units261] = None
|
|
931
931
|
value: float
|
|
932
932
|
|
|
933
933
|
|
|
934
|
-
class
|
|
934
|
+
class Units262(Enum):
|
|
935
935
|
angstrom = "angstrom"
|
|
936
936
|
|
|
937
937
|
|
|
938
|
-
class
|
|
939
|
-
units: Optional[
|
|
938
|
+
class ScalarSchema75(BaseModel):
|
|
939
|
+
units: Optional[Units262] = None
|
|
940
940
|
value: float
|
|
941
941
|
|
|
942
942
|
|
|
943
|
-
class
|
|
943
|
+
class Name638(Enum):
|
|
944
944
|
symmetry = "symmetry"
|
|
945
945
|
|
|
946
946
|
|
|
947
|
-
class
|
|
947
|
+
class SymmetrySchema73(BaseModel):
|
|
948
948
|
pointGroupSymbol: Optional[str] = None
|
|
949
949
|
"""
|
|
950
950
|
point group symbol in Schoenflies notation
|
|
@@ -953,18 +953,18 @@ class SymmetrySchema85(BaseModel):
|
|
|
953
953
|
"""
|
|
954
954
|
space group symbol in Hermann–Mauguin notation
|
|
955
955
|
"""
|
|
956
|
-
tolerance: Optional[
|
|
956
|
+
tolerance: Optional[ScalarSchema75] = Field(None, title="scalar schema")
|
|
957
957
|
"""
|
|
958
958
|
tolerance used for symmetry calculation
|
|
959
959
|
"""
|
|
960
960
|
name: Literal["2#-datamodel-code-generator-#-object-#-special-#"]
|
|
961
961
|
|
|
962
962
|
|
|
963
|
-
class
|
|
963
|
+
class Name639(Enum):
|
|
964
964
|
elemental_ratio = "elemental_ratio"
|
|
965
965
|
|
|
966
966
|
|
|
967
|
-
class
|
|
967
|
+
class ElementalRatio74(BaseModel):
|
|
968
968
|
name: Literal["3#-datamodel-code-generator-#-object-#-special-#"]
|
|
969
969
|
value: confloat(ge=0.0, le=1.0)
|
|
970
970
|
element: Optional[str] = None
|
|
@@ -973,11 +973,11 @@ class ElementalRatio86(BaseModel):
|
|
|
973
973
|
"""
|
|
974
974
|
|
|
975
975
|
|
|
976
|
-
class
|
|
976
|
+
class Name640(Enum):
|
|
977
977
|
p_norm = "p-norm"
|
|
978
978
|
|
|
979
979
|
|
|
980
|
-
class
|
|
980
|
+
class PNorm74(BaseModel):
|
|
981
981
|
name: Literal["4#-datamodel-code-generator-#-object-#-special-#"]
|
|
982
982
|
degree: Optional[int] = None
|
|
983
983
|
"""
|
|
@@ -986,56 +986,56 @@ class PNorm86(BaseModel):
|
|
|
986
986
|
value: float
|
|
987
987
|
|
|
988
988
|
|
|
989
|
-
class
|
|
989
|
+
class Name641(Enum):
|
|
990
990
|
inchi = "inchi"
|
|
991
991
|
|
|
992
992
|
|
|
993
|
-
class
|
|
993
|
+
class InChIRepresentationSchema74(BaseModel):
|
|
994
994
|
name: Literal["5#-datamodel-code-generator-#-object-#-special-#"]
|
|
995
995
|
value: str
|
|
996
996
|
|
|
997
997
|
|
|
998
|
-
class
|
|
998
|
+
class Name642(Enum):
|
|
999
999
|
inchi_key = "inchi_key"
|
|
1000
1000
|
|
|
1001
1001
|
|
|
1002
|
-
class
|
|
1002
|
+
class InChIKeyRepresentationSchema74(BaseModel):
|
|
1003
1003
|
name: Literal["6#-datamodel-code-generator-#-object-#-special-#"]
|
|
1004
1004
|
value: str
|
|
1005
1005
|
|
|
1006
1006
|
|
|
1007
|
-
class
|
|
1007
|
+
class DerivedPropertiesSchema74(
|
|
1008
1008
|
RootModel[
|
|
1009
1009
|
Union[
|
|
1010
|
-
|
|
1011
|
-
|
|
1012
|
-
|
|
1013
|
-
|
|
1014
|
-
|
|
1015
|
-
|
|
1016
|
-
|
|
1010
|
+
VolumeSchema73,
|
|
1011
|
+
DensitySchema74,
|
|
1012
|
+
SymmetrySchema73,
|
|
1013
|
+
ElementalRatio74,
|
|
1014
|
+
PNorm74,
|
|
1015
|
+
InChIRepresentationSchema74,
|
|
1016
|
+
InChIKeyRepresentationSchema74,
|
|
1017
1017
|
]
|
|
1018
1018
|
]
|
|
1019
1019
|
):
|
|
1020
1020
|
root: Union[
|
|
1021
|
-
|
|
1022
|
-
|
|
1023
|
-
|
|
1024
|
-
|
|
1025
|
-
|
|
1026
|
-
|
|
1027
|
-
|
|
1021
|
+
VolumeSchema73,
|
|
1022
|
+
DensitySchema74,
|
|
1023
|
+
SymmetrySchema73,
|
|
1024
|
+
ElementalRatio74,
|
|
1025
|
+
PNorm74,
|
|
1026
|
+
InChIRepresentationSchema74,
|
|
1027
|
+
InChIKeyRepresentationSchema74,
|
|
1028
1028
|
] = Field(..., discriminator="name")
|
|
1029
1029
|
|
|
1030
1030
|
|
|
1031
|
-
class
|
|
1031
|
+
class Name643(Enum):
|
|
1032
1032
|
default = "default"
|
|
1033
1033
|
atomsTooClose = "atomsTooClose"
|
|
1034
1034
|
atomsOverlap = "atomsOverlap"
|
|
1035
1035
|
|
|
1036
1036
|
|
|
1037
|
-
class
|
|
1038
|
-
name:
|
|
1037
|
+
class MaterialConsistencyCheckSchema73(BaseModel):
|
|
1038
|
+
name: Name643
|
|
1039
1039
|
"""
|
|
1040
1040
|
Name of the consistency check that is performed, which is listed in an enum.
|
|
1041
1041
|
"""
|
|
@@ -1053,7 +1053,7 @@ class MaterialConsistencyCheckSchema85(BaseModel):
|
|
|
1053
1053
|
"""
|
|
1054
1054
|
|
|
1055
1055
|
|
|
1056
|
-
class
|
|
1056
|
+
class CrystalSchema68(BaseModel):
|
|
1057
1057
|
formula: Optional[str] = None
|
|
1058
1058
|
"""
|
|
1059
1059
|
reduced chemical formula
|
|
@@ -1062,9 +1062,9 @@ class CrystalSchema80(BaseModel):
|
|
|
1062
1062
|
"""
|
|
1063
1063
|
chemical formula based on the number of atoms of each element in the supercell
|
|
1064
1064
|
"""
|
|
1065
|
-
basis:
|
|
1066
|
-
lattice:
|
|
1067
|
-
derivedProperties: Optional[List[
|
|
1065
|
+
basis: BasisSchema73 = Field(..., title="basis schema")
|
|
1066
|
+
lattice: LatticeSchema73 = Field(..., title="lattice schema")
|
|
1067
|
+
derivedProperties: Optional[List[DerivedPropertiesSchema74]] = Field(None, title="derived properties schema")
|
|
1068
1068
|
external: Optional[DatabaseSourceSchema] = Field(None, title="database source schema")
|
|
1069
1069
|
"""
|
|
1070
1070
|
information about a database source
|
|
@@ -1085,7 +1085,7 @@ class CrystalSchema80(BaseModel):
|
|
|
1085
1085
|
"""
|
|
1086
1086
|
Whether to work in the finite molecular picture (usually with atomic orbital basis)
|
|
1087
1087
|
"""
|
|
1088
|
-
consistencyChecks: Optional[List[
|
|
1088
|
+
consistencyChecks: Optional[List[MaterialConsistencyCheckSchema73]] = None
|
|
1089
1089
|
field_id: Optional[str] = Field(None, alias="_id")
|
|
1090
1090
|
"""
|
|
1091
1091
|
entity identity
|
|
@@ -1119,12 +1119,20 @@ class VacuumConfigurationSchema(BaseModel):
|
|
|
1119
1119
|
"""
|
|
1120
1120
|
Size of the vacuum slab in angstroms
|
|
1121
1121
|
"""
|
|
1122
|
-
crystal:
|
|
1122
|
+
crystal: CrystalSchema68 = Field(..., title="Crystal Schema")
|
|
1123
1123
|
"""
|
|
1124
1124
|
A crystal structure, referencing the base material schema
|
|
1125
1125
|
"""
|
|
1126
1126
|
|
|
1127
1127
|
|
|
1128
|
+
class ObjectWithId(BaseModel):
|
|
1129
|
+
value: Optional[confloat(ge=0.0)] = None
|
|
1130
|
+
id: int
|
|
1131
|
+
"""
|
|
1132
|
+
integer id of this entry
|
|
1133
|
+
"""
|
|
1134
|
+
|
|
1135
|
+
|
|
1128
1136
|
class SlabStrainedSupercellConfigurationSchema(BaseModel):
|
|
1129
1137
|
xy_supercell_matrix: Optional[List[SupercellMatrix2DSchemaItem]] = Field(
|
|
1130
1138
|
default_factory=lambda: [SupercellMatrix2DSchemaItem.model_validate(v) for v in [[1, 0], [0, 1]]],
|
|
@@ -1145,3 +1153,7 @@ class SlabStrainedSupercellConfigurationSchema(BaseModel):
|
|
|
1145
1153
|
"""
|
|
1146
1154
|
Enum for axis types
|
|
1147
1155
|
"""
|
|
1156
|
+
gaps: Optional[List[ObjectWithId]] = None
|
|
1157
|
+
"""
|
|
1158
|
+
Gap distances between stack components as an array of objects with id and value
|
|
1159
|
+
"""
|