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/defective_structures/two_dimensional/island/configuration.py
CHANGED
|
@@ -265,13 +265,13 @@ class Value(Enum):
|
|
|
265
265
|
Og = "Og"
|
|
266
266
|
|
|
267
267
|
|
|
268
|
-
class
|
|
268
|
+
class Value55(Enum):
|
|
269
269
|
X = "X"
|
|
270
270
|
Vac = "Vac"
|
|
271
271
|
|
|
272
272
|
|
|
273
273
|
class AtomicElementSchema(BaseModel):
|
|
274
|
-
value: Union[Value,
|
|
274
|
+
value: Union[Value, Value55]
|
|
275
275
|
"""
|
|
276
276
|
All elements, including extra elements
|
|
277
277
|
"""
|
|
@@ -419,30 +419,30 @@ class VolumeSchema(BaseModel):
|
|
|
419
419
|
value: float
|
|
420
420
|
|
|
421
421
|
|
|
422
|
-
class
|
|
422
|
+
class Name192(Enum):
|
|
423
423
|
density = "density"
|
|
424
424
|
|
|
425
425
|
|
|
426
|
-
class
|
|
426
|
+
class Units79(Enum):
|
|
427
427
|
g_cm_3 = "g/cm^3"
|
|
428
428
|
|
|
429
429
|
|
|
430
430
|
class DensitySchema(BaseModel):
|
|
431
431
|
name: Literal["1#-datamodel-code-generator-#-object-#-special-#"]
|
|
432
|
-
units: Optional[
|
|
432
|
+
units: Optional[Units79] = None
|
|
433
433
|
value: float
|
|
434
434
|
|
|
435
435
|
|
|
436
|
-
class
|
|
436
|
+
class Units80(Enum):
|
|
437
437
|
angstrom = "angstrom"
|
|
438
438
|
|
|
439
439
|
|
|
440
440
|
class ScalarSchema(BaseModel):
|
|
441
|
-
units: Optional[
|
|
441
|
+
units: Optional[Units80] = None
|
|
442
442
|
value: float
|
|
443
443
|
|
|
444
444
|
|
|
445
|
-
class
|
|
445
|
+
class Name193(Enum):
|
|
446
446
|
symmetry = "symmetry"
|
|
447
447
|
|
|
448
448
|
|
|
@@ -462,7 +462,7 @@ class SymmetrySchema(BaseModel):
|
|
|
462
462
|
name: Literal["2#-datamodel-code-generator-#-object-#-special-#"]
|
|
463
463
|
|
|
464
464
|
|
|
465
|
-
class
|
|
465
|
+
class Name194(Enum):
|
|
466
466
|
elemental_ratio = "elemental_ratio"
|
|
467
467
|
|
|
468
468
|
|
|
@@ -475,7 +475,7 @@ class ElementalRatio(BaseModel):
|
|
|
475
475
|
"""
|
|
476
476
|
|
|
477
477
|
|
|
478
|
-
class
|
|
478
|
+
class Name195(Enum):
|
|
479
479
|
p_norm = "p-norm"
|
|
480
480
|
|
|
481
481
|
|
|
@@ -488,7 +488,7 @@ class PNorm(BaseModel):
|
|
|
488
488
|
value: float
|
|
489
489
|
|
|
490
490
|
|
|
491
|
-
class
|
|
491
|
+
class Name196(Enum):
|
|
492
492
|
inchi = "inchi"
|
|
493
493
|
|
|
494
494
|
|
|
@@ -497,7 +497,7 @@ class InChIRepresentationSchema(BaseModel):
|
|
|
497
497
|
value: str
|
|
498
498
|
|
|
499
499
|
|
|
500
|
-
class
|
|
500
|
+
class Name197(Enum):
|
|
501
501
|
inchi_key = "inchi_key"
|
|
502
502
|
|
|
503
503
|
|
|
@@ -576,7 +576,7 @@ class FileSourceSchema(BaseModel):
|
|
|
576
576
|
"""
|
|
577
577
|
|
|
578
578
|
|
|
579
|
-
class
|
|
579
|
+
class Name198(Enum):
|
|
580
580
|
default = "default"
|
|
581
581
|
atomsTooClose = "atomsTooClose"
|
|
582
582
|
atomsOverlap = "atomsOverlap"
|
|
@@ -589,7 +589,7 @@ class Severity(Enum):
|
|
|
589
589
|
|
|
590
590
|
|
|
591
591
|
class MaterialConsistencyCheckSchema(BaseModel):
|
|
592
|
-
name:
|
|
592
|
+
name: Name198
|
|
593
593
|
"""
|
|
594
594
|
Name of the consistency check that is performed, which is listed in an enum.
|
|
595
595
|
"""
|
|
@@ -693,7 +693,7 @@ class AxisEnum(Enum):
|
|
|
693
693
|
z = "z"
|
|
694
694
|
|
|
695
695
|
|
|
696
|
-
class
|
|
696
|
+
class Value56(Enum):
|
|
697
697
|
H = "H"
|
|
698
698
|
He = "He"
|
|
699
699
|
Li = "Li"
|
|
@@ -814,13 +814,13 @@ class Value64(Enum):
|
|
|
814
814
|
Og = "Og"
|
|
815
815
|
|
|
816
816
|
|
|
817
|
-
class
|
|
817
|
+
class Value57(Enum):
|
|
818
818
|
X = "X"
|
|
819
819
|
Vac = "Vac"
|
|
820
820
|
|
|
821
821
|
|
|
822
|
-
class
|
|
823
|
-
value: Union[
|
|
822
|
+
class AtomicElementSchema27(BaseModel):
|
|
823
|
+
value: Union[Value56, Value57]
|
|
824
824
|
"""
|
|
825
825
|
All elements, including extra elements
|
|
826
826
|
"""
|
|
@@ -830,8 +830,8 @@ class AtomicElementSchema31(BaseModel):
|
|
|
830
830
|
"""
|
|
831
831
|
|
|
832
832
|
|
|
833
|
-
class
|
|
834
|
-
elements: List[
|
|
833
|
+
class BasisSchema25(BaseModel):
|
|
834
|
+
elements: List[AtomicElementSchema27] = Field(..., title="atomic elements schema")
|
|
835
835
|
"""
|
|
836
836
|
atomic elements schema
|
|
837
837
|
"""
|
|
@@ -846,7 +846,7 @@ class BasisSchema29(BaseModel):
|
|
|
846
846
|
"""
|
|
847
847
|
|
|
848
848
|
|
|
849
|
-
class
|
|
849
|
+
class LatticeVectorsSchema24(BaseModel):
|
|
850
850
|
a: List[float] = Field(..., max_length=3, min_length=3, title="vector 3d schema")
|
|
851
851
|
b: List[float] = Field(..., max_length=3, min_length=3, title="vector 3d schema")
|
|
852
852
|
c: List[float] = Field(..., max_length=3, min_length=3, title="vector 3d schema")
|
|
@@ -857,12 +857,12 @@ class LatticeVectorsSchema28(BaseModel):
|
|
|
857
857
|
units: Optional[LatticeVectorsUnitsEnum] = Field("angstrom", title="lattice vectors units enum")
|
|
858
858
|
|
|
859
859
|
|
|
860
|
-
class
|
|
860
|
+
class LatticeUnitsSchema24(BaseModel):
|
|
861
861
|
length: Optional[LatticeUnitsLengthEnum] = Field("angstrom", title="lattice units length enum")
|
|
862
862
|
angle: Optional[LatticeUnitsAngleEnum] = Field("degree", title="lattice units angle enum")
|
|
863
863
|
|
|
864
864
|
|
|
865
|
-
class
|
|
865
|
+
class LatticeSchema24(BaseModel):
|
|
866
866
|
a: float
|
|
867
867
|
"""
|
|
868
868
|
length of the first lattice vector
|
|
@@ -887,56 +887,56 @@ class LatticeSchema28(BaseModel):
|
|
|
887
887
|
"""
|
|
888
888
|
angle between first and third lattice vector
|
|
889
889
|
"""
|
|
890
|
-
vectors: Optional[
|
|
890
|
+
vectors: Optional[LatticeVectorsSchema24] = Field(None, title="lattice vectors schema")
|
|
891
891
|
type: Optional[LatticeTypeEnum] = Field("TRI", title="lattice type enum")
|
|
892
|
-
units: Optional[
|
|
893
|
-
default_factory=lambda:
|
|
892
|
+
units: Optional[LatticeUnitsSchema24] = Field(
|
|
893
|
+
default_factory=lambda: LatticeUnitsSchema24.model_validate({"length": "angstrom", "angle": "degree"}),
|
|
894
894
|
title="Lattice units schema",
|
|
895
895
|
)
|
|
896
896
|
|
|
897
897
|
|
|
898
|
-
class
|
|
898
|
+
class Name199(Enum):
|
|
899
899
|
volume = "volume"
|
|
900
900
|
|
|
901
901
|
|
|
902
|
-
class
|
|
902
|
+
class Units81(Enum):
|
|
903
903
|
angstrom_3 = "angstrom^3"
|
|
904
904
|
|
|
905
905
|
|
|
906
|
-
class
|
|
906
|
+
class VolumeSchema24(BaseModel):
|
|
907
907
|
name: Literal["0#-datamodel-code-generator-#-object-#-special-#"]
|
|
908
|
-
units: Optional[
|
|
908
|
+
units: Optional[Units81] = None
|
|
909
909
|
value: float
|
|
910
910
|
|
|
911
911
|
|
|
912
|
-
class
|
|
912
|
+
class Name200(Enum):
|
|
913
913
|
density = "density"
|
|
914
914
|
|
|
915
915
|
|
|
916
|
-
class
|
|
916
|
+
class Units82(Enum):
|
|
917
917
|
g_cm_3 = "g/cm^3"
|
|
918
918
|
|
|
919
919
|
|
|
920
|
-
class
|
|
920
|
+
class DensitySchema24(BaseModel):
|
|
921
921
|
name: Literal["1#-datamodel-code-generator-#-object-#-special-#"]
|
|
922
|
-
units: Optional[
|
|
922
|
+
units: Optional[Units82] = None
|
|
923
923
|
value: float
|
|
924
924
|
|
|
925
925
|
|
|
926
|
-
class
|
|
926
|
+
class Units83(Enum):
|
|
927
927
|
angstrom = "angstrom"
|
|
928
928
|
|
|
929
929
|
|
|
930
|
-
class
|
|
931
|
-
units: Optional[
|
|
930
|
+
class ScalarSchema25(BaseModel):
|
|
931
|
+
units: Optional[Units83] = None
|
|
932
932
|
value: float
|
|
933
933
|
|
|
934
934
|
|
|
935
|
-
class
|
|
935
|
+
class Name201(Enum):
|
|
936
936
|
symmetry = "symmetry"
|
|
937
937
|
|
|
938
938
|
|
|
939
|
-
class
|
|
939
|
+
class SymmetrySchema24(BaseModel):
|
|
940
940
|
pointGroupSymbol: Optional[str] = None
|
|
941
941
|
"""
|
|
942
942
|
point group symbol in Schoenflies notation
|
|
@@ -945,18 +945,18 @@ class SymmetrySchema28(BaseModel):
|
|
|
945
945
|
"""
|
|
946
946
|
space group symbol in Hermann–Mauguin notation
|
|
947
947
|
"""
|
|
948
|
-
tolerance: Optional[
|
|
948
|
+
tolerance: Optional[ScalarSchema25] = Field(None, title="scalar schema")
|
|
949
949
|
"""
|
|
950
950
|
tolerance used for symmetry calculation
|
|
951
951
|
"""
|
|
952
952
|
name: Literal["2#-datamodel-code-generator-#-object-#-special-#"]
|
|
953
953
|
|
|
954
954
|
|
|
955
|
-
class
|
|
955
|
+
class Name202(Enum):
|
|
956
956
|
elemental_ratio = "elemental_ratio"
|
|
957
957
|
|
|
958
958
|
|
|
959
|
-
class
|
|
959
|
+
class ElementalRatio24(BaseModel):
|
|
960
960
|
name: Literal["3#-datamodel-code-generator-#-object-#-special-#"]
|
|
961
961
|
value: confloat(ge=0.0, le=1.0)
|
|
962
962
|
element: Optional[str] = None
|
|
@@ -965,11 +965,11 @@ class ElementalRatio28(BaseModel):
|
|
|
965
965
|
"""
|
|
966
966
|
|
|
967
967
|
|
|
968
|
-
class
|
|
968
|
+
class Name203(Enum):
|
|
969
969
|
p_norm = "p-norm"
|
|
970
970
|
|
|
971
971
|
|
|
972
|
-
class
|
|
972
|
+
class PNorm24(BaseModel):
|
|
973
973
|
name: Literal["4#-datamodel-code-generator-#-object-#-special-#"]
|
|
974
974
|
degree: Optional[int] = None
|
|
975
975
|
"""
|
|
@@ -978,56 +978,56 @@ class PNorm28(BaseModel):
|
|
|
978
978
|
value: float
|
|
979
979
|
|
|
980
980
|
|
|
981
|
-
class
|
|
981
|
+
class Name204(Enum):
|
|
982
982
|
inchi = "inchi"
|
|
983
983
|
|
|
984
984
|
|
|
985
|
-
class
|
|
985
|
+
class InChIRepresentationSchema24(BaseModel):
|
|
986
986
|
name: Literal["5#-datamodel-code-generator-#-object-#-special-#"]
|
|
987
987
|
value: str
|
|
988
988
|
|
|
989
989
|
|
|
990
|
-
class
|
|
990
|
+
class Name205(Enum):
|
|
991
991
|
inchi_key = "inchi_key"
|
|
992
992
|
|
|
993
993
|
|
|
994
|
-
class
|
|
994
|
+
class InChIKeyRepresentationSchema24(BaseModel):
|
|
995
995
|
name: Literal["6#-datamodel-code-generator-#-object-#-special-#"]
|
|
996
996
|
value: str
|
|
997
997
|
|
|
998
998
|
|
|
999
|
-
class
|
|
999
|
+
class DerivedPropertiesSchema24(
|
|
1000
1000
|
RootModel[
|
|
1001
1001
|
Union[
|
|
1002
|
-
|
|
1003
|
-
|
|
1004
|
-
|
|
1005
|
-
|
|
1006
|
-
|
|
1007
|
-
|
|
1008
|
-
|
|
1002
|
+
VolumeSchema24,
|
|
1003
|
+
DensitySchema24,
|
|
1004
|
+
SymmetrySchema24,
|
|
1005
|
+
ElementalRatio24,
|
|
1006
|
+
PNorm24,
|
|
1007
|
+
InChIRepresentationSchema24,
|
|
1008
|
+
InChIKeyRepresentationSchema24,
|
|
1009
1009
|
]
|
|
1010
1010
|
]
|
|
1011
1011
|
):
|
|
1012
1012
|
root: Union[
|
|
1013
|
-
|
|
1014
|
-
|
|
1015
|
-
|
|
1016
|
-
|
|
1017
|
-
|
|
1018
|
-
|
|
1019
|
-
|
|
1013
|
+
VolumeSchema24,
|
|
1014
|
+
DensitySchema24,
|
|
1015
|
+
SymmetrySchema24,
|
|
1016
|
+
ElementalRatio24,
|
|
1017
|
+
PNorm24,
|
|
1018
|
+
InChIRepresentationSchema24,
|
|
1019
|
+
InChIKeyRepresentationSchema24,
|
|
1020
1020
|
] = Field(..., discriminator="name")
|
|
1021
1021
|
|
|
1022
1022
|
|
|
1023
|
-
class
|
|
1023
|
+
class Name206(Enum):
|
|
1024
1024
|
default = "default"
|
|
1025
1025
|
atomsTooClose = "atomsTooClose"
|
|
1026
1026
|
atomsOverlap = "atomsOverlap"
|
|
1027
1027
|
|
|
1028
1028
|
|
|
1029
|
-
class
|
|
1030
|
-
name:
|
|
1029
|
+
class MaterialConsistencyCheckSchema24(BaseModel):
|
|
1030
|
+
name: Name206
|
|
1031
1031
|
"""
|
|
1032
1032
|
Name of the consistency check that is performed, which is listed in an enum.
|
|
1033
1033
|
"""
|
|
@@ -1045,7 +1045,7 @@ class MaterialConsistencyCheckSchema28(BaseModel):
|
|
|
1045
1045
|
"""
|
|
1046
1046
|
|
|
1047
1047
|
|
|
1048
|
-
class
|
|
1048
|
+
class CrystalSchema24(BaseModel):
|
|
1049
1049
|
formula: Optional[str] = None
|
|
1050
1050
|
"""
|
|
1051
1051
|
reduced chemical formula
|
|
@@ -1054,9 +1054,9 @@ class CrystalSchema28(BaseModel):
|
|
|
1054
1054
|
"""
|
|
1055
1055
|
chemical formula based on the number of atoms of each element in the supercell
|
|
1056
1056
|
"""
|
|
1057
|
-
basis:
|
|
1058
|
-
lattice:
|
|
1059
|
-
derivedProperties: Optional[List[
|
|
1057
|
+
basis: BasisSchema25 = Field(..., title="basis schema")
|
|
1058
|
+
lattice: LatticeSchema24 = Field(..., title="lattice schema")
|
|
1059
|
+
derivedProperties: Optional[List[DerivedPropertiesSchema24]] = Field(None, title="derived properties schema")
|
|
1060
1060
|
external: Optional[DatabaseSourceSchema] = Field(None, title="database source schema")
|
|
1061
1061
|
"""
|
|
1062
1062
|
information about a database source
|
|
@@ -1077,7 +1077,7 @@ class CrystalSchema28(BaseModel):
|
|
|
1077
1077
|
"""
|
|
1078
1078
|
Whether to work in the finite molecular picture (usually with atomic orbital basis)
|
|
1079
1079
|
"""
|
|
1080
|
-
consistencyChecks: Optional[List[
|
|
1080
|
+
consistencyChecks: Optional[List[MaterialConsistencyCheckSchema24]] = None
|
|
1081
1081
|
field_id: Optional[str] = Field(None, alias="_id")
|
|
1082
1082
|
"""
|
|
1083
1083
|
entity identity
|
|
@@ -1111,12 +1111,20 @@ class VacuumConfigurationSchema(BaseModel):
|
|
|
1111
1111
|
"""
|
|
1112
1112
|
Size of the vacuum slab in angstroms
|
|
1113
1113
|
"""
|
|
1114
|
-
crystal:
|
|
1114
|
+
crystal: CrystalSchema24 = Field(..., title="Crystal Schema")
|
|
1115
1115
|
"""
|
|
1116
1116
|
A crystal structure, referencing the base material schema
|
|
1117
1117
|
"""
|
|
1118
1118
|
|
|
1119
1119
|
|
|
1120
|
+
class ObjectWithId(BaseModel):
|
|
1121
|
+
value: Optional[confloat(ge=0.0)] = None
|
|
1122
|
+
id: int
|
|
1123
|
+
"""
|
|
1124
|
+
integer id of this entry
|
|
1125
|
+
"""
|
|
1126
|
+
|
|
1127
|
+
|
|
1120
1128
|
class SlabConfigurationSchema(BaseModel):
|
|
1121
1129
|
stack_components: List[Union[AtomicLayersUniqueRepeatedSchema, VacuumConfigurationSchema]] = Field(
|
|
1122
1130
|
..., max_length=2, min_length=2
|
|
@@ -1125,9 +1133,13 @@ class SlabConfigurationSchema(BaseModel):
|
|
|
1125
1133
|
"""
|
|
1126
1134
|
Enum for axis types
|
|
1127
1135
|
"""
|
|
1136
|
+
gaps: Optional[List[ObjectWithId]] = None
|
|
1137
|
+
"""
|
|
1138
|
+
Gap distances between stack components as an array of objects with id and value
|
|
1139
|
+
"""
|
|
1128
1140
|
|
|
1129
1141
|
|
|
1130
|
-
class
|
|
1142
|
+
class TerminationSchema11(BaseModel):
|
|
1131
1143
|
chemical_elements: Union[ChemicalElements, constr(pattern=r"^([A-Z][a-z]?[0-9]*)+$")] = Field(
|
|
1132
1144
|
..., title="Chemical Elements"
|
|
1133
1145
|
)
|
|
@@ -1140,7 +1152,7 @@ class TerminationSchema13(BaseModel):
|
|
|
1140
1152
|
"""
|
|
1141
1153
|
|
|
1142
1154
|
|
|
1143
|
-
class
|
|
1155
|
+
class Value58(Enum):
|
|
1144
1156
|
H = "H"
|
|
1145
1157
|
He = "He"
|
|
1146
1158
|
Li = "Li"
|
|
@@ -1261,13 +1273,13 @@ class Value66(Enum):
|
|
|
1261
1273
|
Og = "Og"
|
|
1262
1274
|
|
|
1263
1275
|
|
|
1264
|
-
class
|
|
1276
|
+
class Value59(Enum):
|
|
1265
1277
|
X = "X"
|
|
1266
1278
|
Vac = "Vac"
|
|
1267
1279
|
|
|
1268
1280
|
|
|
1269
|
-
class
|
|
1270
|
-
value: Union[
|
|
1281
|
+
class AtomicElementSchema28(BaseModel):
|
|
1282
|
+
value: Union[Value58, Value59]
|
|
1271
1283
|
"""
|
|
1272
1284
|
All elements, including extra elements
|
|
1273
1285
|
"""
|
|
@@ -1277,8 +1289,8 @@ class AtomicElementSchema32(BaseModel):
|
|
|
1277
1289
|
"""
|
|
1278
1290
|
|
|
1279
1291
|
|
|
1280
|
-
class
|
|
1281
|
-
elements: List[
|
|
1292
|
+
class BasisSchema26(BaseModel):
|
|
1293
|
+
elements: List[AtomicElementSchema28] = Field(..., title="atomic elements schema")
|
|
1282
1294
|
"""
|
|
1283
1295
|
atomic elements schema
|
|
1284
1296
|
"""
|
|
@@ -1293,7 +1305,7 @@ class BasisSchema30(BaseModel):
|
|
|
1293
1305
|
"""
|
|
1294
1306
|
|
|
1295
1307
|
|
|
1296
|
-
class
|
|
1308
|
+
class LatticeVectorsSchema25(BaseModel):
|
|
1297
1309
|
a: List[float] = Field(..., max_length=3, min_length=3, title="vector 3d schema")
|
|
1298
1310
|
b: List[float] = Field(..., max_length=3, min_length=3, title="vector 3d schema")
|
|
1299
1311
|
c: List[float] = Field(..., max_length=3, min_length=3, title="vector 3d schema")
|
|
@@ -1304,12 +1316,12 @@ class LatticeVectorsSchema29(BaseModel):
|
|
|
1304
1316
|
units: Optional[LatticeVectorsUnitsEnum] = Field("angstrom", title="lattice vectors units enum")
|
|
1305
1317
|
|
|
1306
1318
|
|
|
1307
|
-
class
|
|
1319
|
+
class LatticeUnitsSchema25(BaseModel):
|
|
1308
1320
|
length: Optional[LatticeUnitsLengthEnum] = Field("angstrom", title="lattice units length enum")
|
|
1309
1321
|
angle: Optional[LatticeUnitsAngleEnum] = Field("degree", title="lattice units angle enum")
|
|
1310
1322
|
|
|
1311
1323
|
|
|
1312
|
-
class
|
|
1324
|
+
class LatticeSchema25(BaseModel):
|
|
1313
1325
|
a: float
|
|
1314
1326
|
"""
|
|
1315
1327
|
length of the first lattice vector
|
|
@@ -1334,56 +1346,56 @@ class LatticeSchema29(BaseModel):
|
|
|
1334
1346
|
"""
|
|
1335
1347
|
angle between first and third lattice vector
|
|
1336
1348
|
"""
|
|
1337
|
-
vectors: Optional[
|
|
1349
|
+
vectors: Optional[LatticeVectorsSchema25] = Field(None, title="lattice vectors schema")
|
|
1338
1350
|
type: Optional[LatticeTypeEnum] = Field("TRI", title="lattice type enum")
|
|
1339
|
-
units: Optional[
|
|
1340
|
-
default_factory=lambda:
|
|
1351
|
+
units: Optional[LatticeUnitsSchema25] = Field(
|
|
1352
|
+
default_factory=lambda: LatticeUnitsSchema25.model_validate({"length": "angstrom", "angle": "degree"}),
|
|
1341
1353
|
title="Lattice units schema",
|
|
1342
1354
|
)
|
|
1343
1355
|
|
|
1344
1356
|
|
|
1345
|
-
class
|
|
1357
|
+
class Name207(Enum):
|
|
1346
1358
|
volume = "volume"
|
|
1347
1359
|
|
|
1348
1360
|
|
|
1349
|
-
class
|
|
1361
|
+
class Units84(Enum):
|
|
1350
1362
|
angstrom_3 = "angstrom^3"
|
|
1351
1363
|
|
|
1352
1364
|
|
|
1353
|
-
class
|
|
1365
|
+
class VolumeSchema25(BaseModel):
|
|
1354
1366
|
name: Literal["0#-datamodel-code-generator-#-object-#-special-#"]
|
|
1355
|
-
units: Optional[
|
|
1367
|
+
units: Optional[Units84] = None
|
|
1356
1368
|
value: float
|
|
1357
1369
|
|
|
1358
1370
|
|
|
1359
|
-
class
|
|
1371
|
+
class Name208(Enum):
|
|
1360
1372
|
density = "density"
|
|
1361
1373
|
|
|
1362
1374
|
|
|
1363
|
-
class
|
|
1375
|
+
class Units85(Enum):
|
|
1364
1376
|
g_cm_3 = "g/cm^3"
|
|
1365
1377
|
|
|
1366
1378
|
|
|
1367
|
-
class
|
|
1379
|
+
class DensitySchema25(BaseModel):
|
|
1368
1380
|
name: Literal["1#-datamodel-code-generator-#-object-#-special-#"]
|
|
1369
|
-
units: Optional[
|
|
1381
|
+
units: Optional[Units85] = None
|
|
1370
1382
|
value: float
|
|
1371
1383
|
|
|
1372
1384
|
|
|
1373
|
-
class
|
|
1385
|
+
class Units86(Enum):
|
|
1374
1386
|
angstrom = "angstrom"
|
|
1375
1387
|
|
|
1376
1388
|
|
|
1377
|
-
class
|
|
1378
|
-
units: Optional[
|
|
1389
|
+
class ScalarSchema26(BaseModel):
|
|
1390
|
+
units: Optional[Units86] = None
|
|
1379
1391
|
value: float
|
|
1380
1392
|
|
|
1381
1393
|
|
|
1382
|
-
class
|
|
1394
|
+
class Name209(Enum):
|
|
1383
1395
|
symmetry = "symmetry"
|
|
1384
1396
|
|
|
1385
1397
|
|
|
1386
|
-
class
|
|
1398
|
+
class SymmetrySchema25(BaseModel):
|
|
1387
1399
|
pointGroupSymbol: Optional[str] = None
|
|
1388
1400
|
"""
|
|
1389
1401
|
point group symbol in Schoenflies notation
|
|
@@ -1392,18 +1404,18 @@ class SymmetrySchema29(BaseModel):
|
|
|
1392
1404
|
"""
|
|
1393
1405
|
space group symbol in Hermann–Mauguin notation
|
|
1394
1406
|
"""
|
|
1395
|
-
tolerance: Optional[
|
|
1407
|
+
tolerance: Optional[ScalarSchema26] = Field(None, title="scalar schema")
|
|
1396
1408
|
"""
|
|
1397
1409
|
tolerance used for symmetry calculation
|
|
1398
1410
|
"""
|
|
1399
1411
|
name: Literal["2#-datamodel-code-generator-#-object-#-special-#"]
|
|
1400
1412
|
|
|
1401
1413
|
|
|
1402
|
-
class
|
|
1414
|
+
class Name210(Enum):
|
|
1403
1415
|
elemental_ratio = "elemental_ratio"
|
|
1404
1416
|
|
|
1405
1417
|
|
|
1406
|
-
class
|
|
1418
|
+
class ElementalRatio25(BaseModel):
|
|
1407
1419
|
name: Literal["3#-datamodel-code-generator-#-object-#-special-#"]
|
|
1408
1420
|
value: confloat(ge=0.0, le=1.0)
|
|
1409
1421
|
element: Optional[str] = None
|
|
@@ -1412,11 +1424,11 @@ class ElementalRatio29(BaseModel):
|
|
|
1412
1424
|
"""
|
|
1413
1425
|
|
|
1414
1426
|
|
|
1415
|
-
class
|
|
1427
|
+
class Name211(Enum):
|
|
1416
1428
|
p_norm = "p-norm"
|
|
1417
1429
|
|
|
1418
1430
|
|
|
1419
|
-
class
|
|
1431
|
+
class PNorm25(BaseModel):
|
|
1420
1432
|
name: Literal["4#-datamodel-code-generator-#-object-#-special-#"]
|
|
1421
1433
|
degree: Optional[int] = None
|
|
1422
1434
|
"""
|
|
@@ -1425,56 +1437,56 @@ class PNorm29(BaseModel):
|
|
|
1425
1437
|
value: float
|
|
1426
1438
|
|
|
1427
1439
|
|
|
1428
|
-
class
|
|
1440
|
+
class Name212(Enum):
|
|
1429
1441
|
inchi = "inchi"
|
|
1430
1442
|
|
|
1431
1443
|
|
|
1432
|
-
class
|
|
1444
|
+
class InChIRepresentationSchema25(BaseModel):
|
|
1433
1445
|
name: Literal["5#-datamodel-code-generator-#-object-#-special-#"]
|
|
1434
1446
|
value: str
|
|
1435
1447
|
|
|
1436
1448
|
|
|
1437
|
-
class
|
|
1449
|
+
class Name213(Enum):
|
|
1438
1450
|
inchi_key = "inchi_key"
|
|
1439
1451
|
|
|
1440
1452
|
|
|
1441
|
-
class
|
|
1453
|
+
class InChIKeyRepresentationSchema25(BaseModel):
|
|
1442
1454
|
name: Literal["6#-datamodel-code-generator-#-object-#-special-#"]
|
|
1443
1455
|
value: str
|
|
1444
1456
|
|
|
1445
1457
|
|
|
1446
|
-
class
|
|
1458
|
+
class DerivedPropertiesSchema25(
|
|
1447
1459
|
RootModel[
|
|
1448
1460
|
Union[
|
|
1449
|
-
|
|
1450
|
-
|
|
1451
|
-
|
|
1452
|
-
|
|
1453
|
-
|
|
1454
|
-
|
|
1455
|
-
|
|
1461
|
+
VolumeSchema25,
|
|
1462
|
+
DensitySchema25,
|
|
1463
|
+
SymmetrySchema25,
|
|
1464
|
+
ElementalRatio25,
|
|
1465
|
+
PNorm25,
|
|
1466
|
+
InChIRepresentationSchema25,
|
|
1467
|
+
InChIKeyRepresentationSchema25,
|
|
1456
1468
|
]
|
|
1457
1469
|
]
|
|
1458
1470
|
):
|
|
1459
1471
|
root: Union[
|
|
1460
|
-
|
|
1461
|
-
|
|
1462
|
-
|
|
1463
|
-
|
|
1464
|
-
|
|
1465
|
-
|
|
1466
|
-
|
|
1472
|
+
VolumeSchema25,
|
|
1473
|
+
DensitySchema25,
|
|
1474
|
+
SymmetrySchema25,
|
|
1475
|
+
ElementalRatio25,
|
|
1476
|
+
PNorm25,
|
|
1477
|
+
InChIRepresentationSchema25,
|
|
1478
|
+
InChIKeyRepresentationSchema25,
|
|
1467
1479
|
] = Field(..., discriminator="name")
|
|
1468
1480
|
|
|
1469
1481
|
|
|
1470
|
-
class
|
|
1482
|
+
class Name214(Enum):
|
|
1471
1483
|
default = "default"
|
|
1472
1484
|
atomsTooClose = "atomsTooClose"
|
|
1473
1485
|
atomsOverlap = "atomsOverlap"
|
|
1474
1486
|
|
|
1475
1487
|
|
|
1476
|
-
class
|
|
1477
|
-
name:
|
|
1488
|
+
class MaterialConsistencyCheckSchema25(BaseModel):
|
|
1489
|
+
name: Name214
|
|
1478
1490
|
"""
|
|
1479
1491
|
Name of the consistency check that is performed, which is listed in an enum.
|
|
1480
1492
|
"""
|
|
@@ -1492,7 +1504,7 @@ class MaterialConsistencyCheckSchema29(BaseModel):
|
|
|
1492
1504
|
"""
|
|
1493
1505
|
|
|
1494
1506
|
|
|
1495
|
-
class
|
|
1507
|
+
class CrystalSchema25(BaseModel):
|
|
1496
1508
|
formula: Optional[str] = None
|
|
1497
1509
|
"""
|
|
1498
1510
|
reduced chemical formula
|
|
@@ -1501,9 +1513,9 @@ class CrystalSchema29(BaseModel):
|
|
|
1501
1513
|
"""
|
|
1502
1514
|
chemical formula based on the number of atoms of each element in the supercell
|
|
1503
1515
|
"""
|
|
1504
|
-
basis:
|
|
1505
|
-
lattice:
|
|
1506
|
-
derivedProperties: Optional[List[
|
|
1516
|
+
basis: BasisSchema26 = Field(..., title="basis schema")
|
|
1517
|
+
lattice: LatticeSchema25 = Field(..., title="lattice schema")
|
|
1518
|
+
derivedProperties: Optional[List[DerivedPropertiesSchema25]] = Field(None, title="derived properties schema")
|
|
1507
1519
|
external: Optional[DatabaseSourceSchema] = Field(None, title="database source schema")
|
|
1508
1520
|
"""
|
|
1509
1521
|
information about a database source
|
|
@@ -1524,7 +1536,7 @@ class CrystalSchema29(BaseModel):
|
|
|
1524
1536
|
"""
|
|
1525
1537
|
Whether to work in the finite molecular picture (usually with atomic orbital basis)
|
|
1526
1538
|
"""
|
|
1527
|
-
consistencyChecks: Optional[List[
|
|
1539
|
+
consistencyChecks: Optional[List[MaterialConsistencyCheckSchema25]] = None
|
|
1528
1540
|
field_id: Optional[str] = Field(None, alias="_id")
|
|
1529
1541
|
"""
|
|
1530
1542
|
entity identity
|
|
@@ -1549,8 +1561,8 @@ class CrystalSchema29(BaseModel):
|
|
|
1549
1561
|
metadata: Optional[Dict[str, Any]] = None
|
|
1550
1562
|
|
|
1551
1563
|
|
|
1552
|
-
class
|
|
1553
|
-
termination_top:
|
|
1564
|
+
class AtomicLayersUniqueRepeatedSchema9(BaseModel):
|
|
1565
|
+
termination_top: TerminationSchema11 = Field(..., title="Termination Schema")
|
|
1554
1566
|
"""
|
|
1555
1567
|
Defines a specific termination of a slab
|
|
1556
1568
|
"""
|
|
@@ -1562,7 +1574,7 @@ class AtomicLayersUniqueRepeatedSchema11(BaseModel):
|
|
|
1562
1574
|
"""
|
|
1563
1575
|
Miller indices [h, k, l] defining crystallographic planes
|
|
1564
1576
|
"""
|
|
1565
|
-
crystal:
|
|
1577
|
+
crystal: CrystalSchema25 = Field(..., title="Crystal Schema")
|
|
1566
1578
|
"""
|
|
1567
1579
|
A crystal structure, referencing the base material schema
|
|
1568
1580
|
"""
|
|
@@ -1572,7 +1584,7 @@ class AtomicLayersUniqueRepeatedSchema11(BaseModel):
|
|
|
1572
1584
|
"""
|
|
1573
1585
|
|
|
1574
1586
|
|
|
1575
|
-
class
|
|
1587
|
+
class Value60(Enum):
|
|
1576
1588
|
H = "H"
|
|
1577
1589
|
He = "He"
|
|
1578
1590
|
Li = "Li"
|
|
@@ -1693,13 +1705,13 @@ class Value68(Enum):
|
|
|
1693
1705
|
Og = "Og"
|
|
1694
1706
|
|
|
1695
1707
|
|
|
1696
|
-
class
|
|
1708
|
+
class Value61(Enum):
|
|
1697
1709
|
X = "X"
|
|
1698
1710
|
Vac = "Vac"
|
|
1699
1711
|
|
|
1700
1712
|
|
|
1701
|
-
class
|
|
1702
|
-
value: Union[
|
|
1713
|
+
class AtomicElementSchema29(BaseModel):
|
|
1714
|
+
value: Union[Value60, Value61]
|
|
1703
1715
|
"""
|
|
1704
1716
|
All elements, including extra elements
|
|
1705
1717
|
"""
|
|
@@ -1709,8 +1721,8 @@ class AtomicElementSchema33(BaseModel):
|
|
|
1709
1721
|
"""
|
|
1710
1722
|
|
|
1711
1723
|
|
|
1712
|
-
class
|
|
1713
|
-
elements: List[
|
|
1724
|
+
class BasisSchema27(BaseModel):
|
|
1725
|
+
elements: List[AtomicElementSchema29] = Field(..., title="atomic elements schema")
|
|
1714
1726
|
"""
|
|
1715
1727
|
atomic elements schema
|
|
1716
1728
|
"""
|
|
@@ -1725,7 +1737,7 @@ class BasisSchema31(BaseModel):
|
|
|
1725
1737
|
"""
|
|
1726
1738
|
|
|
1727
1739
|
|
|
1728
|
-
class
|
|
1740
|
+
class LatticeVectorsSchema26(BaseModel):
|
|
1729
1741
|
a: List[float] = Field(..., max_length=3, min_length=3, title="vector 3d schema")
|
|
1730
1742
|
b: List[float] = Field(..., max_length=3, min_length=3, title="vector 3d schema")
|
|
1731
1743
|
c: List[float] = Field(..., max_length=3, min_length=3, title="vector 3d schema")
|
|
@@ -1736,12 +1748,12 @@ class LatticeVectorsSchema30(BaseModel):
|
|
|
1736
1748
|
units: Optional[LatticeVectorsUnitsEnum] = Field("angstrom", title="lattice vectors units enum")
|
|
1737
1749
|
|
|
1738
1750
|
|
|
1739
|
-
class
|
|
1751
|
+
class LatticeUnitsSchema26(BaseModel):
|
|
1740
1752
|
length: Optional[LatticeUnitsLengthEnum] = Field("angstrom", title="lattice units length enum")
|
|
1741
1753
|
angle: Optional[LatticeUnitsAngleEnum] = Field("degree", title="lattice units angle enum")
|
|
1742
1754
|
|
|
1743
1755
|
|
|
1744
|
-
class
|
|
1756
|
+
class LatticeSchema26(BaseModel):
|
|
1745
1757
|
a: float
|
|
1746
1758
|
"""
|
|
1747
1759
|
length of the first lattice vector
|
|
@@ -1766,56 +1778,56 @@ class LatticeSchema30(BaseModel):
|
|
|
1766
1778
|
"""
|
|
1767
1779
|
angle between first and third lattice vector
|
|
1768
1780
|
"""
|
|
1769
|
-
vectors: Optional[
|
|
1781
|
+
vectors: Optional[LatticeVectorsSchema26] = Field(None, title="lattice vectors schema")
|
|
1770
1782
|
type: Optional[LatticeTypeEnum] = Field("TRI", title="lattice type enum")
|
|
1771
|
-
units: Optional[
|
|
1772
|
-
default_factory=lambda:
|
|
1783
|
+
units: Optional[LatticeUnitsSchema26] = Field(
|
|
1784
|
+
default_factory=lambda: LatticeUnitsSchema26.model_validate({"length": "angstrom", "angle": "degree"}),
|
|
1773
1785
|
title="Lattice units schema",
|
|
1774
1786
|
)
|
|
1775
1787
|
|
|
1776
1788
|
|
|
1777
|
-
class
|
|
1789
|
+
class Name215(Enum):
|
|
1778
1790
|
volume = "volume"
|
|
1779
1791
|
|
|
1780
1792
|
|
|
1781
|
-
class
|
|
1793
|
+
class Units87(Enum):
|
|
1782
1794
|
angstrom_3 = "angstrom^3"
|
|
1783
1795
|
|
|
1784
1796
|
|
|
1785
|
-
class
|
|
1797
|
+
class VolumeSchema26(BaseModel):
|
|
1786
1798
|
name: Literal["0#-datamodel-code-generator-#-object-#-special-#"]
|
|
1787
|
-
units: Optional[
|
|
1799
|
+
units: Optional[Units87] = None
|
|
1788
1800
|
value: float
|
|
1789
1801
|
|
|
1790
1802
|
|
|
1791
|
-
class
|
|
1803
|
+
class Name216(Enum):
|
|
1792
1804
|
density = "density"
|
|
1793
1805
|
|
|
1794
1806
|
|
|
1795
|
-
class
|
|
1807
|
+
class Units88(Enum):
|
|
1796
1808
|
g_cm_3 = "g/cm^3"
|
|
1797
1809
|
|
|
1798
1810
|
|
|
1799
|
-
class
|
|
1811
|
+
class DensitySchema26(BaseModel):
|
|
1800
1812
|
name: Literal["1#-datamodel-code-generator-#-object-#-special-#"]
|
|
1801
|
-
units: Optional[
|
|
1813
|
+
units: Optional[Units88] = None
|
|
1802
1814
|
value: float
|
|
1803
1815
|
|
|
1804
1816
|
|
|
1805
|
-
class
|
|
1817
|
+
class Units89(Enum):
|
|
1806
1818
|
angstrom = "angstrom"
|
|
1807
1819
|
|
|
1808
1820
|
|
|
1809
|
-
class
|
|
1810
|
-
units: Optional[
|
|
1821
|
+
class ScalarSchema27(BaseModel):
|
|
1822
|
+
units: Optional[Units89] = None
|
|
1811
1823
|
value: float
|
|
1812
1824
|
|
|
1813
1825
|
|
|
1814
|
-
class
|
|
1826
|
+
class Name217(Enum):
|
|
1815
1827
|
symmetry = "symmetry"
|
|
1816
1828
|
|
|
1817
1829
|
|
|
1818
|
-
class
|
|
1830
|
+
class SymmetrySchema26(BaseModel):
|
|
1819
1831
|
pointGroupSymbol: Optional[str] = None
|
|
1820
1832
|
"""
|
|
1821
1833
|
point group symbol in Schoenflies notation
|
|
@@ -1824,18 +1836,18 @@ class SymmetrySchema30(BaseModel):
|
|
|
1824
1836
|
"""
|
|
1825
1837
|
space group symbol in Hermann–Mauguin notation
|
|
1826
1838
|
"""
|
|
1827
|
-
tolerance: Optional[
|
|
1839
|
+
tolerance: Optional[ScalarSchema27] = Field(None, title="scalar schema")
|
|
1828
1840
|
"""
|
|
1829
1841
|
tolerance used for symmetry calculation
|
|
1830
1842
|
"""
|
|
1831
1843
|
name: Literal["2#-datamodel-code-generator-#-object-#-special-#"]
|
|
1832
1844
|
|
|
1833
1845
|
|
|
1834
|
-
class
|
|
1846
|
+
class Name218(Enum):
|
|
1835
1847
|
elemental_ratio = "elemental_ratio"
|
|
1836
1848
|
|
|
1837
1849
|
|
|
1838
|
-
class
|
|
1850
|
+
class ElementalRatio26(BaseModel):
|
|
1839
1851
|
name: Literal["3#-datamodel-code-generator-#-object-#-special-#"]
|
|
1840
1852
|
value: confloat(ge=0.0, le=1.0)
|
|
1841
1853
|
element: Optional[str] = None
|
|
@@ -1844,11 +1856,11 @@ class ElementalRatio30(BaseModel):
|
|
|
1844
1856
|
"""
|
|
1845
1857
|
|
|
1846
1858
|
|
|
1847
|
-
class
|
|
1859
|
+
class Name219(Enum):
|
|
1848
1860
|
p_norm = "p-norm"
|
|
1849
1861
|
|
|
1850
1862
|
|
|
1851
|
-
class
|
|
1863
|
+
class PNorm26(BaseModel):
|
|
1852
1864
|
name: Literal["4#-datamodel-code-generator-#-object-#-special-#"]
|
|
1853
1865
|
degree: Optional[int] = None
|
|
1854
1866
|
"""
|
|
@@ -1857,56 +1869,56 @@ class PNorm30(BaseModel):
|
|
|
1857
1869
|
value: float
|
|
1858
1870
|
|
|
1859
1871
|
|
|
1860
|
-
class
|
|
1872
|
+
class Name220(Enum):
|
|
1861
1873
|
inchi = "inchi"
|
|
1862
1874
|
|
|
1863
1875
|
|
|
1864
|
-
class
|
|
1876
|
+
class InChIRepresentationSchema26(BaseModel):
|
|
1865
1877
|
name: Literal["5#-datamodel-code-generator-#-object-#-special-#"]
|
|
1866
1878
|
value: str
|
|
1867
1879
|
|
|
1868
1880
|
|
|
1869
|
-
class
|
|
1881
|
+
class Name221(Enum):
|
|
1870
1882
|
inchi_key = "inchi_key"
|
|
1871
1883
|
|
|
1872
1884
|
|
|
1873
|
-
class
|
|
1885
|
+
class InChIKeyRepresentationSchema26(BaseModel):
|
|
1874
1886
|
name: Literal["6#-datamodel-code-generator-#-object-#-special-#"]
|
|
1875
1887
|
value: str
|
|
1876
1888
|
|
|
1877
1889
|
|
|
1878
|
-
class
|
|
1890
|
+
class DerivedPropertiesSchema26(
|
|
1879
1891
|
RootModel[
|
|
1880
1892
|
Union[
|
|
1881
|
-
|
|
1882
|
-
|
|
1883
|
-
|
|
1884
|
-
|
|
1885
|
-
|
|
1886
|
-
|
|
1887
|
-
|
|
1893
|
+
VolumeSchema26,
|
|
1894
|
+
DensitySchema26,
|
|
1895
|
+
SymmetrySchema26,
|
|
1896
|
+
ElementalRatio26,
|
|
1897
|
+
PNorm26,
|
|
1898
|
+
InChIRepresentationSchema26,
|
|
1899
|
+
InChIKeyRepresentationSchema26,
|
|
1888
1900
|
]
|
|
1889
1901
|
]
|
|
1890
1902
|
):
|
|
1891
1903
|
root: Union[
|
|
1892
|
-
|
|
1893
|
-
|
|
1894
|
-
|
|
1895
|
-
|
|
1896
|
-
|
|
1897
|
-
|
|
1898
|
-
|
|
1904
|
+
VolumeSchema26,
|
|
1905
|
+
DensitySchema26,
|
|
1906
|
+
SymmetrySchema26,
|
|
1907
|
+
ElementalRatio26,
|
|
1908
|
+
PNorm26,
|
|
1909
|
+
InChIRepresentationSchema26,
|
|
1910
|
+
InChIKeyRepresentationSchema26,
|
|
1899
1911
|
] = Field(..., discriminator="name")
|
|
1900
1912
|
|
|
1901
1913
|
|
|
1902
|
-
class
|
|
1914
|
+
class Name222(Enum):
|
|
1903
1915
|
default = "default"
|
|
1904
1916
|
atomsTooClose = "atomsTooClose"
|
|
1905
1917
|
atomsOverlap = "atomsOverlap"
|
|
1906
1918
|
|
|
1907
1919
|
|
|
1908
|
-
class
|
|
1909
|
-
name:
|
|
1920
|
+
class MaterialConsistencyCheckSchema26(BaseModel):
|
|
1921
|
+
name: Name222
|
|
1910
1922
|
"""
|
|
1911
1923
|
Name of the consistency check that is performed, which is listed in an enum.
|
|
1912
1924
|
"""
|
|
@@ -1924,7 +1936,7 @@ class MaterialConsistencyCheckSchema30(BaseModel):
|
|
|
1924
1936
|
"""
|
|
1925
1937
|
|
|
1926
1938
|
|
|
1927
|
-
class
|
|
1939
|
+
class CrystalSchema26(BaseModel):
|
|
1928
1940
|
formula: Optional[str] = None
|
|
1929
1941
|
"""
|
|
1930
1942
|
reduced chemical formula
|
|
@@ -1933,9 +1945,9 @@ class CrystalSchema30(BaseModel):
|
|
|
1933
1945
|
"""
|
|
1934
1946
|
chemical formula based on the number of atoms of each element in the supercell
|
|
1935
1947
|
"""
|
|
1936
|
-
basis:
|
|
1937
|
-
lattice:
|
|
1938
|
-
derivedProperties: Optional[List[
|
|
1948
|
+
basis: BasisSchema27 = Field(..., title="basis schema")
|
|
1949
|
+
lattice: LatticeSchema26 = Field(..., title="lattice schema")
|
|
1950
|
+
derivedProperties: Optional[List[DerivedPropertiesSchema26]] = Field(None, title="derived properties schema")
|
|
1939
1951
|
external: Optional[DatabaseSourceSchema] = Field(None, title="database source schema")
|
|
1940
1952
|
"""
|
|
1941
1953
|
information about a database source
|
|
@@ -1956,7 +1968,7 @@ class CrystalSchema30(BaseModel):
|
|
|
1956
1968
|
"""
|
|
1957
1969
|
Whether to work in the finite molecular picture (usually with atomic orbital basis)
|
|
1958
1970
|
"""
|
|
1959
|
-
consistencyChecks: Optional[List[
|
|
1971
|
+
consistencyChecks: Optional[List[MaterialConsistencyCheckSchema26]] = None
|
|
1960
1972
|
field_id: Optional[str] = Field(None, alias="_id")
|
|
1961
1973
|
"""
|
|
1962
1974
|
entity identity
|
|
@@ -1981,7 +1993,7 @@ class CrystalSchema30(BaseModel):
|
|
|
1981
1993
|
metadata: Optional[Dict[str, Any]] = None
|
|
1982
1994
|
|
|
1983
1995
|
|
|
1984
|
-
class
|
|
1996
|
+
class VacuumConfigurationSchema11(BaseModel):
|
|
1985
1997
|
direction: AxisEnum = Field(..., title="Axis Enum")
|
|
1986
1998
|
"""
|
|
1987
1999
|
Enum for axis types
|
|
@@ -1990,23 +2002,27 @@ class VacuumConfigurationSchema13(BaseModel):
|
|
|
1990
2002
|
"""
|
|
1991
2003
|
Size of the vacuum slab in angstroms
|
|
1992
2004
|
"""
|
|
1993
|
-
crystal:
|
|
2005
|
+
crystal: CrystalSchema26 = Field(..., title="Crystal Schema")
|
|
1994
2006
|
"""
|
|
1995
2007
|
A crystal structure, referencing the base material schema
|
|
1996
2008
|
"""
|
|
1997
2009
|
|
|
1998
2010
|
|
|
1999
2011
|
class SlabConfigurationSchema6(BaseModel):
|
|
2000
|
-
stack_components: List[Union[
|
|
2012
|
+
stack_components: List[Union[AtomicLayersUniqueRepeatedSchema9, VacuumConfigurationSchema11]] = Field(
|
|
2001
2013
|
..., max_length=2, min_length=2
|
|
2002
2014
|
)
|
|
2003
2015
|
direction: Optional[AxisEnum] = Field("z", title="Axis Enum")
|
|
2004
2016
|
"""
|
|
2005
2017
|
Enum for axis types
|
|
2006
2018
|
"""
|
|
2019
|
+
gaps: Optional[List[ObjectWithId]] = None
|
|
2020
|
+
"""
|
|
2021
|
+
Gap distances between stack components as an array of objects with id and value
|
|
2022
|
+
"""
|
|
2007
2023
|
|
|
2008
2024
|
|
|
2009
|
-
class
|
|
2025
|
+
class Value62(Enum):
|
|
2010
2026
|
H = "H"
|
|
2011
2027
|
He = "He"
|
|
2012
2028
|
Li = "Li"
|
|
@@ -2127,13 +2143,13 @@ class Value70(Enum):
|
|
|
2127
2143
|
Og = "Og"
|
|
2128
2144
|
|
|
2129
2145
|
|
|
2130
|
-
class
|
|
2146
|
+
class Value63(Enum):
|
|
2131
2147
|
X = "X"
|
|
2132
2148
|
Vac = "Vac"
|
|
2133
2149
|
|
|
2134
2150
|
|
|
2135
|
-
class
|
|
2136
|
-
value: Union[
|
|
2151
|
+
class AtomicElementSchema30(BaseModel):
|
|
2152
|
+
value: Union[Value62, Value63]
|
|
2137
2153
|
"""
|
|
2138
2154
|
All elements, including extra elements
|
|
2139
2155
|
"""
|
|
@@ -2143,8 +2159,8 @@ class AtomicElementSchema34(BaseModel):
|
|
|
2143
2159
|
"""
|
|
2144
2160
|
|
|
2145
2161
|
|
|
2146
|
-
class
|
|
2147
|
-
elements: List[
|
|
2162
|
+
class BasisSchema28(BaseModel):
|
|
2163
|
+
elements: List[AtomicElementSchema30] = Field(..., title="atomic elements schema")
|
|
2148
2164
|
"""
|
|
2149
2165
|
atomic elements schema
|
|
2150
2166
|
"""
|
|
@@ -2159,7 +2175,7 @@ class BasisSchema32(BaseModel):
|
|
|
2159
2175
|
"""
|
|
2160
2176
|
|
|
2161
2177
|
|
|
2162
|
-
class
|
|
2178
|
+
class LatticeVectorsSchema27(BaseModel):
|
|
2163
2179
|
a: List[float] = Field(..., max_length=3, min_length=3, title="vector 3d schema")
|
|
2164
2180
|
b: List[float] = Field(..., max_length=3, min_length=3, title="vector 3d schema")
|
|
2165
2181
|
c: List[float] = Field(..., max_length=3, min_length=3, title="vector 3d schema")
|
|
@@ -2170,12 +2186,12 @@ class LatticeVectorsSchema31(BaseModel):
|
|
|
2170
2186
|
units: Optional[LatticeVectorsUnitsEnum] = Field("angstrom", title="lattice vectors units enum")
|
|
2171
2187
|
|
|
2172
2188
|
|
|
2173
|
-
class
|
|
2189
|
+
class LatticeUnitsSchema27(BaseModel):
|
|
2174
2190
|
length: Optional[LatticeUnitsLengthEnum] = Field("angstrom", title="lattice units length enum")
|
|
2175
2191
|
angle: Optional[LatticeUnitsAngleEnum] = Field("degree", title="lattice units angle enum")
|
|
2176
2192
|
|
|
2177
2193
|
|
|
2178
|
-
class
|
|
2194
|
+
class LatticeSchema27(BaseModel):
|
|
2179
2195
|
a: float
|
|
2180
2196
|
"""
|
|
2181
2197
|
length of the first lattice vector
|
|
@@ -2200,56 +2216,56 @@ class LatticeSchema31(BaseModel):
|
|
|
2200
2216
|
"""
|
|
2201
2217
|
angle between first and third lattice vector
|
|
2202
2218
|
"""
|
|
2203
|
-
vectors: Optional[
|
|
2219
|
+
vectors: Optional[LatticeVectorsSchema27] = Field(None, title="lattice vectors schema")
|
|
2204
2220
|
type: Optional[LatticeTypeEnum] = Field("TRI", title="lattice type enum")
|
|
2205
|
-
units: Optional[
|
|
2206
|
-
default_factory=lambda:
|
|
2221
|
+
units: Optional[LatticeUnitsSchema27] = Field(
|
|
2222
|
+
default_factory=lambda: LatticeUnitsSchema27.model_validate({"length": "angstrom", "angle": "degree"}),
|
|
2207
2223
|
title="Lattice units schema",
|
|
2208
2224
|
)
|
|
2209
2225
|
|
|
2210
2226
|
|
|
2211
|
-
class
|
|
2227
|
+
class Name223(Enum):
|
|
2212
2228
|
volume = "volume"
|
|
2213
2229
|
|
|
2214
2230
|
|
|
2215
|
-
class
|
|
2231
|
+
class Units90(Enum):
|
|
2216
2232
|
angstrom_3 = "angstrom^3"
|
|
2217
2233
|
|
|
2218
2234
|
|
|
2219
|
-
class
|
|
2235
|
+
class VolumeSchema27(BaseModel):
|
|
2220
2236
|
name: Literal["0#-datamodel-code-generator-#-object-#-special-#"]
|
|
2221
|
-
units: Optional[
|
|
2237
|
+
units: Optional[Units90] = None
|
|
2222
2238
|
value: float
|
|
2223
2239
|
|
|
2224
2240
|
|
|
2225
|
-
class
|
|
2241
|
+
class Name224(Enum):
|
|
2226
2242
|
density = "density"
|
|
2227
2243
|
|
|
2228
2244
|
|
|
2229
|
-
class
|
|
2245
|
+
class Units91(Enum):
|
|
2230
2246
|
g_cm_3 = "g/cm^3"
|
|
2231
2247
|
|
|
2232
2248
|
|
|
2233
|
-
class
|
|
2249
|
+
class DensitySchema27(BaseModel):
|
|
2234
2250
|
name: Literal["1#-datamodel-code-generator-#-object-#-special-#"]
|
|
2235
|
-
units: Optional[
|
|
2251
|
+
units: Optional[Units91] = None
|
|
2236
2252
|
value: float
|
|
2237
2253
|
|
|
2238
2254
|
|
|
2239
|
-
class
|
|
2255
|
+
class Units92(Enum):
|
|
2240
2256
|
angstrom = "angstrom"
|
|
2241
2257
|
|
|
2242
2258
|
|
|
2243
|
-
class
|
|
2244
|
-
units: Optional[
|
|
2259
|
+
class ScalarSchema28(BaseModel):
|
|
2260
|
+
units: Optional[Units92] = None
|
|
2245
2261
|
value: float
|
|
2246
2262
|
|
|
2247
2263
|
|
|
2248
|
-
class
|
|
2264
|
+
class Name225(Enum):
|
|
2249
2265
|
symmetry = "symmetry"
|
|
2250
2266
|
|
|
2251
2267
|
|
|
2252
|
-
class
|
|
2268
|
+
class SymmetrySchema27(BaseModel):
|
|
2253
2269
|
pointGroupSymbol: Optional[str] = None
|
|
2254
2270
|
"""
|
|
2255
2271
|
point group symbol in Schoenflies notation
|
|
@@ -2258,18 +2274,18 @@ class SymmetrySchema31(BaseModel):
|
|
|
2258
2274
|
"""
|
|
2259
2275
|
space group symbol in Hermann–Mauguin notation
|
|
2260
2276
|
"""
|
|
2261
|
-
tolerance: Optional[
|
|
2277
|
+
tolerance: Optional[ScalarSchema28] = Field(None, title="scalar schema")
|
|
2262
2278
|
"""
|
|
2263
2279
|
tolerance used for symmetry calculation
|
|
2264
2280
|
"""
|
|
2265
2281
|
name: Literal["2#-datamodel-code-generator-#-object-#-special-#"]
|
|
2266
2282
|
|
|
2267
2283
|
|
|
2268
|
-
class
|
|
2284
|
+
class Name226(Enum):
|
|
2269
2285
|
elemental_ratio = "elemental_ratio"
|
|
2270
2286
|
|
|
2271
2287
|
|
|
2272
|
-
class
|
|
2288
|
+
class ElementalRatio27(BaseModel):
|
|
2273
2289
|
name: Literal["3#-datamodel-code-generator-#-object-#-special-#"]
|
|
2274
2290
|
value: confloat(ge=0.0, le=1.0)
|
|
2275
2291
|
element: Optional[str] = None
|
|
@@ -2278,11 +2294,11 @@ class ElementalRatio31(BaseModel):
|
|
|
2278
2294
|
"""
|
|
2279
2295
|
|
|
2280
2296
|
|
|
2281
|
-
class
|
|
2297
|
+
class Name227(Enum):
|
|
2282
2298
|
p_norm = "p-norm"
|
|
2283
2299
|
|
|
2284
2300
|
|
|
2285
|
-
class
|
|
2301
|
+
class PNorm27(BaseModel):
|
|
2286
2302
|
name: Literal["4#-datamodel-code-generator-#-object-#-special-#"]
|
|
2287
2303
|
degree: Optional[int] = None
|
|
2288
2304
|
"""
|
|
@@ -2291,56 +2307,56 @@ class PNorm31(BaseModel):
|
|
|
2291
2307
|
value: float
|
|
2292
2308
|
|
|
2293
2309
|
|
|
2294
|
-
class
|
|
2310
|
+
class Name228(Enum):
|
|
2295
2311
|
inchi = "inchi"
|
|
2296
2312
|
|
|
2297
2313
|
|
|
2298
|
-
class
|
|
2314
|
+
class InChIRepresentationSchema27(BaseModel):
|
|
2299
2315
|
name: Literal["5#-datamodel-code-generator-#-object-#-special-#"]
|
|
2300
2316
|
value: str
|
|
2301
2317
|
|
|
2302
2318
|
|
|
2303
|
-
class
|
|
2319
|
+
class Name229(Enum):
|
|
2304
2320
|
inchi_key = "inchi_key"
|
|
2305
2321
|
|
|
2306
2322
|
|
|
2307
|
-
class
|
|
2323
|
+
class InChIKeyRepresentationSchema27(BaseModel):
|
|
2308
2324
|
name: Literal["6#-datamodel-code-generator-#-object-#-special-#"]
|
|
2309
2325
|
value: str
|
|
2310
2326
|
|
|
2311
2327
|
|
|
2312
|
-
class
|
|
2328
|
+
class DerivedPropertiesSchema27(
|
|
2313
2329
|
RootModel[
|
|
2314
2330
|
Union[
|
|
2315
|
-
|
|
2316
|
-
|
|
2317
|
-
|
|
2318
|
-
|
|
2319
|
-
|
|
2320
|
-
|
|
2321
|
-
|
|
2331
|
+
VolumeSchema27,
|
|
2332
|
+
DensitySchema27,
|
|
2333
|
+
SymmetrySchema27,
|
|
2334
|
+
ElementalRatio27,
|
|
2335
|
+
PNorm27,
|
|
2336
|
+
InChIRepresentationSchema27,
|
|
2337
|
+
InChIKeyRepresentationSchema27,
|
|
2322
2338
|
]
|
|
2323
2339
|
]
|
|
2324
2340
|
):
|
|
2325
2341
|
root: Union[
|
|
2326
|
-
|
|
2327
|
-
|
|
2328
|
-
|
|
2329
|
-
|
|
2330
|
-
|
|
2331
|
-
|
|
2332
|
-
|
|
2342
|
+
VolumeSchema27,
|
|
2343
|
+
DensitySchema27,
|
|
2344
|
+
SymmetrySchema27,
|
|
2345
|
+
ElementalRatio27,
|
|
2346
|
+
PNorm27,
|
|
2347
|
+
InChIRepresentationSchema27,
|
|
2348
|
+
InChIKeyRepresentationSchema27,
|
|
2333
2349
|
] = Field(..., discriminator="name")
|
|
2334
2350
|
|
|
2335
2351
|
|
|
2336
|
-
class
|
|
2352
|
+
class Name230(Enum):
|
|
2337
2353
|
default = "default"
|
|
2338
2354
|
atomsTooClose = "atomsTooClose"
|
|
2339
2355
|
atomsOverlap = "atomsOverlap"
|
|
2340
2356
|
|
|
2341
2357
|
|
|
2342
|
-
class
|
|
2343
|
-
name:
|
|
2358
|
+
class MaterialConsistencyCheckSchema27(BaseModel):
|
|
2359
|
+
name: Name230
|
|
2344
2360
|
"""
|
|
2345
2361
|
Name of the consistency check that is performed, which is listed in an enum.
|
|
2346
2362
|
"""
|
|
@@ -2358,7 +2374,7 @@ class MaterialConsistencyCheckSchema31(BaseModel):
|
|
|
2358
2374
|
"""
|
|
2359
2375
|
|
|
2360
2376
|
|
|
2361
|
-
class
|
|
2377
|
+
class CrystalSchema27(BaseModel):
|
|
2362
2378
|
formula: Optional[str] = None
|
|
2363
2379
|
"""
|
|
2364
2380
|
reduced chemical formula
|
|
@@ -2367,9 +2383,9 @@ class CrystalSchema31(BaseModel):
|
|
|
2367
2383
|
"""
|
|
2368
2384
|
chemical formula based on the number of atoms of each element in the supercell
|
|
2369
2385
|
"""
|
|
2370
|
-
basis:
|
|
2371
|
-
lattice:
|
|
2372
|
-
derivedProperties: Optional[List[
|
|
2386
|
+
basis: BasisSchema28 = Field(..., title="basis schema")
|
|
2387
|
+
lattice: LatticeSchema27 = Field(..., title="lattice schema")
|
|
2388
|
+
derivedProperties: Optional[List[DerivedPropertiesSchema27]] = Field(None, title="derived properties schema")
|
|
2373
2389
|
external: Optional[DatabaseSourceSchema] = Field(None, title="database source schema")
|
|
2374
2390
|
"""
|
|
2375
2391
|
information about a database source
|
|
@@ -2390,7 +2406,7 @@ class CrystalSchema31(BaseModel):
|
|
|
2390
2406
|
"""
|
|
2391
2407
|
Whether to work in the finite molecular picture (usually with atomic orbital basis)
|
|
2392
2408
|
"""
|
|
2393
|
-
consistencyChecks: Optional[List[
|
|
2409
|
+
consistencyChecks: Optional[List[MaterialConsistencyCheckSchema27]] = None
|
|
2394
2410
|
field_id: Optional[str] = Field(None, alias="_id")
|
|
2395
2411
|
"""
|
|
2396
2412
|
entity identity
|
|
@@ -2430,7 +2446,7 @@ class BoxCoordinateConditionSchema(BaseModel):
|
|
|
2430
2446
|
|
|
2431
2447
|
|
|
2432
2448
|
class VoidRegionSchema(BaseModel):
|
|
2433
|
-
crystal:
|
|
2449
|
+
crystal: CrystalSchema27 = Field(..., title="Crystal Schema")
|
|
2434
2450
|
"""
|
|
2435
2451
|
A crystal structure, referencing the base material schema
|
|
2436
2452
|
"""
|
|
@@ -2454,7 +2470,7 @@ class MergeSchema(BaseModel):
|
|
|
2454
2470
|
"""
|
|
2455
2471
|
|
|
2456
2472
|
|
|
2457
|
-
class
|
|
2473
|
+
class Value64(Enum):
|
|
2458
2474
|
H = "H"
|
|
2459
2475
|
He = "He"
|
|
2460
2476
|
Li = "Li"
|
|
@@ -2575,13 +2591,13 @@ class Value72(Enum):
|
|
|
2575
2591
|
Og = "Og"
|
|
2576
2592
|
|
|
2577
2593
|
|
|
2578
|
-
class
|
|
2594
|
+
class Value65(Enum):
|
|
2579
2595
|
X = "X"
|
|
2580
2596
|
Vac = "Vac"
|
|
2581
2597
|
|
|
2582
2598
|
|
|
2583
|
-
class
|
|
2584
|
-
value: Union[
|
|
2599
|
+
class AtomicElementSchema31(BaseModel):
|
|
2600
|
+
value: Union[Value64, Value65]
|
|
2585
2601
|
"""
|
|
2586
2602
|
All elements, including extra elements
|
|
2587
2603
|
"""
|
|
@@ -2591,8 +2607,8 @@ class AtomicElementSchema35(BaseModel):
|
|
|
2591
2607
|
"""
|
|
2592
2608
|
|
|
2593
2609
|
|
|
2594
|
-
class
|
|
2595
|
-
elements: List[
|
|
2610
|
+
class BasisSchema29(BaseModel):
|
|
2611
|
+
elements: List[AtomicElementSchema31] = Field(..., title="atomic elements schema")
|
|
2596
2612
|
"""
|
|
2597
2613
|
atomic elements schema
|
|
2598
2614
|
"""
|
|
@@ -2607,7 +2623,7 @@ class BasisSchema33(BaseModel):
|
|
|
2607
2623
|
"""
|
|
2608
2624
|
|
|
2609
2625
|
|
|
2610
|
-
class
|
|
2626
|
+
class LatticeVectorsSchema28(BaseModel):
|
|
2611
2627
|
a: List[float] = Field(..., max_length=3, min_length=3, title="vector 3d schema")
|
|
2612
2628
|
b: List[float] = Field(..., max_length=3, min_length=3, title="vector 3d schema")
|
|
2613
2629
|
c: List[float] = Field(..., max_length=3, min_length=3, title="vector 3d schema")
|
|
@@ -2618,12 +2634,12 @@ class LatticeVectorsSchema32(BaseModel):
|
|
|
2618
2634
|
units: Optional[LatticeVectorsUnitsEnum] = Field("angstrom", title="lattice vectors units enum")
|
|
2619
2635
|
|
|
2620
2636
|
|
|
2621
|
-
class
|
|
2637
|
+
class LatticeUnitsSchema28(BaseModel):
|
|
2622
2638
|
length: Optional[LatticeUnitsLengthEnum] = Field("angstrom", title="lattice units length enum")
|
|
2623
2639
|
angle: Optional[LatticeUnitsAngleEnum] = Field("degree", title="lattice units angle enum")
|
|
2624
2640
|
|
|
2625
2641
|
|
|
2626
|
-
class
|
|
2642
|
+
class LatticeSchema28(BaseModel):
|
|
2627
2643
|
a: float
|
|
2628
2644
|
"""
|
|
2629
2645
|
length of the first lattice vector
|
|
@@ -2648,56 +2664,56 @@ class LatticeSchema32(BaseModel):
|
|
|
2648
2664
|
"""
|
|
2649
2665
|
angle between first and third lattice vector
|
|
2650
2666
|
"""
|
|
2651
|
-
vectors: Optional[
|
|
2667
|
+
vectors: Optional[LatticeVectorsSchema28] = Field(None, title="lattice vectors schema")
|
|
2652
2668
|
type: Optional[LatticeTypeEnum] = Field("TRI", title="lattice type enum")
|
|
2653
|
-
units: Optional[
|
|
2654
|
-
default_factory=lambda:
|
|
2669
|
+
units: Optional[LatticeUnitsSchema28] = Field(
|
|
2670
|
+
default_factory=lambda: LatticeUnitsSchema28.model_validate({"length": "angstrom", "angle": "degree"}),
|
|
2655
2671
|
title="Lattice units schema",
|
|
2656
2672
|
)
|
|
2657
2673
|
|
|
2658
2674
|
|
|
2659
|
-
class
|
|
2675
|
+
class Name231(Enum):
|
|
2660
2676
|
volume = "volume"
|
|
2661
2677
|
|
|
2662
2678
|
|
|
2663
|
-
class
|
|
2679
|
+
class Units93(Enum):
|
|
2664
2680
|
angstrom_3 = "angstrom^3"
|
|
2665
2681
|
|
|
2666
2682
|
|
|
2667
|
-
class
|
|
2683
|
+
class VolumeSchema28(BaseModel):
|
|
2668
2684
|
name: Literal["0#-datamodel-code-generator-#-object-#-special-#"]
|
|
2669
|
-
units: Optional[
|
|
2685
|
+
units: Optional[Units93] = None
|
|
2670
2686
|
value: float
|
|
2671
2687
|
|
|
2672
2688
|
|
|
2673
|
-
class
|
|
2689
|
+
class Name232(Enum):
|
|
2674
2690
|
density = "density"
|
|
2675
2691
|
|
|
2676
2692
|
|
|
2677
|
-
class
|
|
2693
|
+
class Units94(Enum):
|
|
2678
2694
|
g_cm_3 = "g/cm^3"
|
|
2679
2695
|
|
|
2680
2696
|
|
|
2681
|
-
class
|
|
2697
|
+
class DensitySchema28(BaseModel):
|
|
2682
2698
|
name: Literal["1#-datamodel-code-generator-#-object-#-special-#"]
|
|
2683
|
-
units: Optional[
|
|
2699
|
+
units: Optional[Units94] = None
|
|
2684
2700
|
value: float
|
|
2685
2701
|
|
|
2686
2702
|
|
|
2687
|
-
class
|
|
2703
|
+
class Units95(Enum):
|
|
2688
2704
|
angstrom = "angstrom"
|
|
2689
2705
|
|
|
2690
2706
|
|
|
2691
|
-
class
|
|
2692
|
-
units: Optional[
|
|
2707
|
+
class ScalarSchema29(BaseModel):
|
|
2708
|
+
units: Optional[Units95] = None
|
|
2693
2709
|
value: float
|
|
2694
2710
|
|
|
2695
2711
|
|
|
2696
|
-
class
|
|
2712
|
+
class Name233(Enum):
|
|
2697
2713
|
symmetry = "symmetry"
|
|
2698
2714
|
|
|
2699
2715
|
|
|
2700
|
-
class
|
|
2716
|
+
class SymmetrySchema28(BaseModel):
|
|
2701
2717
|
pointGroupSymbol: Optional[str] = None
|
|
2702
2718
|
"""
|
|
2703
2719
|
point group symbol in Schoenflies notation
|
|
@@ -2706,18 +2722,18 @@ class SymmetrySchema32(BaseModel):
|
|
|
2706
2722
|
"""
|
|
2707
2723
|
space group symbol in Hermann–Mauguin notation
|
|
2708
2724
|
"""
|
|
2709
|
-
tolerance: Optional[
|
|
2725
|
+
tolerance: Optional[ScalarSchema29] = Field(None, title="scalar schema")
|
|
2710
2726
|
"""
|
|
2711
2727
|
tolerance used for symmetry calculation
|
|
2712
2728
|
"""
|
|
2713
2729
|
name: Literal["2#-datamodel-code-generator-#-object-#-special-#"]
|
|
2714
2730
|
|
|
2715
2731
|
|
|
2716
|
-
class
|
|
2732
|
+
class Name234(Enum):
|
|
2717
2733
|
elemental_ratio = "elemental_ratio"
|
|
2718
2734
|
|
|
2719
2735
|
|
|
2720
|
-
class
|
|
2736
|
+
class ElementalRatio28(BaseModel):
|
|
2721
2737
|
name: Literal["3#-datamodel-code-generator-#-object-#-special-#"]
|
|
2722
2738
|
value: confloat(ge=0.0, le=1.0)
|
|
2723
2739
|
element: Optional[str] = None
|
|
@@ -2726,11 +2742,11 @@ class ElementalRatio32(BaseModel):
|
|
|
2726
2742
|
"""
|
|
2727
2743
|
|
|
2728
2744
|
|
|
2729
|
-
class
|
|
2745
|
+
class Name235(Enum):
|
|
2730
2746
|
p_norm = "p-norm"
|
|
2731
2747
|
|
|
2732
2748
|
|
|
2733
|
-
class
|
|
2749
|
+
class PNorm28(BaseModel):
|
|
2734
2750
|
name: Literal["4#-datamodel-code-generator-#-object-#-special-#"]
|
|
2735
2751
|
degree: Optional[int] = None
|
|
2736
2752
|
"""
|
|
@@ -2739,56 +2755,56 @@ class PNorm32(BaseModel):
|
|
|
2739
2755
|
value: float
|
|
2740
2756
|
|
|
2741
2757
|
|
|
2742
|
-
class
|
|
2758
|
+
class Name236(Enum):
|
|
2743
2759
|
inchi = "inchi"
|
|
2744
2760
|
|
|
2745
2761
|
|
|
2746
|
-
class
|
|
2762
|
+
class InChIRepresentationSchema28(BaseModel):
|
|
2747
2763
|
name: Literal["5#-datamodel-code-generator-#-object-#-special-#"]
|
|
2748
2764
|
value: str
|
|
2749
2765
|
|
|
2750
2766
|
|
|
2751
|
-
class
|
|
2767
|
+
class Name237(Enum):
|
|
2752
2768
|
inchi_key = "inchi_key"
|
|
2753
2769
|
|
|
2754
2770
|
|
|
2755
|
-
class
|
|
2771
|
+
class InChIKeyRepresentationSchema28(BaseModel):
|
|
2756
2772
|
name: Literal["6#-datamodel-code-generator-#-object-#-special-#"]
|
|
2757
2773
|
value: str
|
|
2758
2774
|
|
|
2759
2775
|
|
|
2760
|
-
class
|
|
2776
|
+
class DerivedPropertiesSchema28(
|
|
2761
2777
|
RootModel[
|
|
2762
2778
|
Union[
|
|
2763
|
-
|
|
2764
|
-
|
|
2765
|
-
|
|
2766
|
-
|
|
2767
|
-
|
|
2768
|
-
|
|
2769
|
-
|
|
2779
|
+
VolumeSchema28,
|
|
2780
|
+
DensitySchema28,
|
|
2781
|
+
SymmetrySchema28,
|
|
2782
|
+
ElementalRatio28,
|
|
2783
|
+
PNorm28,
|
|
2784
|
+
InChIRepresentationSchema28,
|
|
2785
|
+
InChIKeyRepresentationSchema28,
|
|
2770
2786
|
]
|
|
2771
2787
|
]
|
|
2772
2788
|
):
|
|
2773
2789
|
root: Union[
|
|
2774
|
-
|
|
2775
|
-
|
|
2776
|
-
|
|
2777
|
-
|
|
2778
|
-
|
|
2779
|
-
|
|
2780
|
-
|
|
2790
|
+
VolumeSchema28,
|
|
2791
|
+
DensitySchema28,
|
|
2792
|
+
SymmetrySchema28,
|
|
2793
|
+
ElementalRatio28,
|
|
2794
|
+
PNorm28,
|
|
2795
|
+
InChIRepresentationSchema28,
|
|
2796
|
+
InChIKeyRepresentationSchema28,
|
|
2781
2797
|
] = Field(..., discriminator="name")
|
|
2782
2798
|
|
|
2783
2799
|
|
|
2784
|
-
class
|
|
2800
|
+
class Name238(Enum):
|
|
2785
2801
|
default = "default"
|
|
2786
2802
|
atomsTooClose = "atomsTooClose"
|
|
2787
2803
|
atomsOverlap = "atomsOverlap"
|
|
2788
2804
|
|
|
2789
2805
|
|
|
2790
|
-
class
|
|
2791
|
-
name:
|
|
2806
|
+
class MaterialConsistencyCheckSchema28(BaseModel):
|
|
2807
|
+
name: Name238
|
|
2792
2808
|
"""
|
|
2793
2809
|
Name of the consistency check that is performed, which is listed in an enum.
|
|
2794
2810
|
"""
|
|
@@ -2806,7 +2822,7 @@ class MaterialConsistencyCheckSchema32(BaseModel):
|
|
|
2806
2822
|
"""
|
|
2807
2823
|
|
|
2808
2824
|
|
|
2809
|
-
class
|
|
2825
|
+
class CrystalSchema28(BaseModel):
|
|
2810
2826
|
formula: Optional[str] = None
|
|
2811
2827
|
"""
|
|
2812
2828
|
reduced chemical formula
|
|
@@ -2815,9 +2831,9 @@ class CrystalSchema32(BaseModel):
|
|
|
2815
2831
|
"""
|
|
2816
2832
|
chemical formula based on the number of atoms of each element in the supercell
|
|
2817
2833
|
"""
|
|
2818
|
-
basis:
|
|
2819
|
-
lattice:
|
|
2820
|
-
derivedProperties: Optional[List[
|
|
2834
|
+
basis: BasisSchema29 = Field(..., title="basis schema")
|
|
2835
|
+
lattice: LatticeSchema28 = Field(..., title="lattice schema")
|
|
2836
|
+
derivedProperties: Optional[List[DerivedPropertiesSchema28]] = Field(None, title="derived properties schema")
|
|
2821
2837
|
external: Optional[DatabaseSourceSchema] = Field(None, title="database source schema")
|
|
2822
2838
|
"""
|
|
2823
2839
|
information about a database source
|
|
@@ -2838,7 +2854,7 @@ class CrystalSchema32(BaseModel):
|
|
|
2838
2854
|
"""
|
|
2839
2855
|
Whether to work in the finite molecular picture (usually with atomic orbital basis)
|
|
2840
2856
|
"""
|
|
2841
|
-
consistencyChecks: Optional[List[
|
|
2857
|
+
consistencyChecks: Optional[List[MaterialConsistencyCheckSchema28]] = None
|
|
2842
2858
|
field_id: Optional[str] = Field(None, alias="_id")
|
|
2843
2859
|
"""
|
|
2844
2860
|
entity identity
|
|
@@ -2863,7 +2879,7 @@ class CrystalSchema32(BaseModel):
|
|
|
2863
2879
|
metadata: Optional[Dict[str, Any]] = None
|
|
2864
2880
|
|
|
2865
2881
|
|
|
2866
|
-
class
|
|
2882
|
+
class VacuumConfigurationSchema12(BaseModel):
|
|
2867
2883
|
direction: AxisEnum = Field(..., title="Axis Enum")
|
|
2868
2884
|
"""
|
|
2869
2885
|
Enum for axis types
|
|
@@ -2872,17 +2888,21 @@ class VacuumConfigurationSchema14(BaseModel):
|
|
|
2872
2888
|
"""
|
|
2873
2889
|
Size of the vacuum slab in angstroms
|
|
2874
2890
|
"""
|
|
2875
|
-
crystal:
|
|
2891
|
+
crystal: CrystalSchema28 = Field(..., title="Crystal Schema")
|
|
2876
2892
|
"""
|
|
2877
2893
|
A crystal structure, referencing the base material schema
|
|
2878
2894
|
"""
|
|
2879
2895
|
|
|
2880
2896
|
|
|
2881
2897
|
class IslandDefectConfigurationSchema(BaseModel):
|
|
2882
|
-
stack_components: List[Union[SlabConfigurationSchema, MergeSchema,
|
|
2898
|
+
stack_components: List[Union[SlabConfigurationSchema, MergeSchema, VacuumConfigurationSchema12]] = Field(
|
|
2883
2899
|
..., max_length=3, min_length=3
|
|
2884
2900
|
)
|
|
2885
2901
|
direction: Optional[AxisEnum] = Field("z", title="Axis Enum")
|
|
2886
2902
|
"""
|
|
2887
2903
|
Enum for axis types
|
|
2888
2904
|
"""
|
|
2905
|
+
gaps: Optional[List[ObjectWithId]] = None
|
|
2906
|
+
"""
|
|
2907
|
+
Gap distances between stack components as an array of objects with id and value
|
|
2908
|
+
"""
|