mat3ra-esse 2025.7.15.post0__py3-none-any.whl → 2025.8.6.post0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of mat3ra-esse might be problematic. Click here for more details.
- mat3ra/esse/data/examples.py +1 -1
- mat3ra/esse/data/schemas.py +1 -1
- mat3ra/esse/models/apse/file/applications/espresso/7.2/pw_x.py +6 -6
- mat3ra/esse/models/core/abstract/vector_2d.py +13 -0
- mat3ra/esse/models/core/primitive/array_of_2_numbers.py +13 -0
- mat3ra/esse/models/core/reusable/energy.py +2 -2
- mat3ra/esse/models/element.py +6 -6
- mat3ra/esse/models/material/__init__.py +14 -14
- mat3ra/esse/models/materials_category/compound_pristine_structures/two_dimensional/interface/__init__.py +3 -0
- mat3ra/esse/models/materials_category/compound_pristine_structures/two_dimensional/interface/configuration.py +4269 -0
- mat3ra/esse/models/materials_category/defective_structures/one_dimensional/grain_boundary_linear/__init__.py +3 -0
- mat3ra/esse/models/materials_category/defective_structures/one_dimensional/grain_boundary_linear/configuration.py +4273 -0
- mat3ra/esse/models/materials_category/defective_structures/two_dimensional/__init__.py +3 -0
- mat3ra/esse/models/materials_category/defective_structures/two_dimensional/adatom/__init__.py +3 -0
- mat3ra/esse/models/materials_category/defective_structures/two_dimensional/adatom/configuration.py +2132 -0
- mat3ra/esse/models/materials_category/defective_structures/two_dimensional/base_configuration.py +1561 -0
- mat3ra/esse/models/materials_category/defective_structures/two_dimensional/grain_boundary_planar/__init__.py +3 -0
- mat3ra/esse/models/materials_category/defective_structures/two_dimensional/grain_boundary_planar/configuration.py +4269 -0
- mat3ra/esse/models/materials_category/defective_structures/two_dimensional/island/__init__.py +3 -0
- mat3ra/esse/models/materials_category/defective_structures/two_dimensional/island/configuration.py +2908 -0
- mat3ra/esse/models/materials_category/defective_structures/two_dimensional/terrace/__init__.py +3 -0
- mat3ra/esse/models/materials_category/defective_structures/two_dimensional/terrace/configuration.py +2912 -0
- mat3ra/esse/models/materials_category/defective_structures/zero_dimensional/point_defect/__init__.py +3 -0
- mat3ra/esse/models/materials_category/defective_structures/zero_dimensional/point_defect/base_configuration.py +544 -0
- mat3ra/esse/models/materials_category/defective_structures/zero_dimensional/point_defect/interstitial.py +1099 -0
- mat3ra/esse/models/materials_category/defective_structures/zero_dimensional/point_defect/substitutional.py +1099 -0
- mat3ra/esse/models/materials_category/defective_structures/zero_dimensional/point_defect/vacancy.py +556 -0
- 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 +1598 -0
- mat3ra/esse/models/materials_category/pristine_structures/two_dimensional/nanotape.py +1160 -0
- mat3ra/esse/models/materials_category/pristine_structures/two_dimensional/slab.py +88 -92
- mat3ra/esse/models/materials_category/pristine_structures/two_dimensional/slab_strained_supercell.py +1159 -0
- mat3ra/esse/models/materials_category/processed_structures/two_dimensional/passivation/__init__.py +3 -0
- mat3ra/esse/models/materials_category/processed_structures/two_dimensional/passivation/configuration.py +1232 -0
- mat3ra/esse/models/materials_category_components/entities/auxiliary/one_dimensional/__init__.py +3 -0
- mat3ra/esse/models/materials_category_components/entities/auxiliary/one_dimensional/miller_indices_2d.py +16 -0
- mat3ra/esse/models/materials_category_components/entities/auxiliary/zero_dimensional/crystal_site.py +527 -2
- mat3ra/esse/models/materials_category_components/entities/auxiliary/zero_dimensional/point_defect_site.py +676 -0
- mat3ra/esse/models/materials_category_components/entities/auxiliary/zero_dimensional/void_region.py +555 -0
- mat3ra/esse/models/materials_category_components/entities/auxiliary/zero_dimensional/void_site.py +1576 -0
- 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/core/zero_dimensional/vacancy.py +22 -0
- mat3ra/esse/models/materials_category_components/entities/reusable/one_dimensional/__init__.py +3 -0
- mat3ra/esse/models/materials_category_components/entities/reusable/one_dimensional/crystal_lattice_base.py +541 -0
- mat3ra/esse/models/materials_category_components/entities/reusable/one_dimensional/crystal_lattice_lines.py +545 -0
- mat3ra/esse/models/materials_category_components/entities/reusable/one_dimensional/crystal_lattice_lines_unique_repeated.py +708 -0
- mat3ra/esse/models/materials_category_components/entities/reusable/three_dimensional/crystal_lattice_base.py +541 -0
- 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/atomic_layers.py +4 -4
- mat3ra/esse/models/materials_category_components/entities/reusable/two_dimensional/atomic_layers_unique.py +4 -4
- mat3ra/esse/models/materials_category_components/entities/reusable/two_dimensional/atomic_layers_unique_repeated.py +4 -4
- mat3ra/esse/models/materials_category_components/entities/reusable/two_dimensional/crystal_lattice_planes.py +18 -18
- mat3ra/esse/models/materials_category_components/entities/reusable/two_dimensional/slab_stack_configuration.py +1577 -0
- mat3ra/esse/models/materials_category_components/entities/reusable/two_dimensional/slab_unit_cell.py +74 -77
- mat3ra/esse/models/materials_category_components/operations/core/combinations/enums.py +13 -0
- mat3ra/esse/models/materials_category_components/operations/core/combinations/merge.py +9 -981
- mat3ra/esse/models/materials_category_components/operations/core/combinations/stack.py +8 -940
- mat3ra/esse/models/materials_category_components/operations/core/modifications/perturb.py +538 -0
- mat3ra/esse/models/properties_directory/derived_properties.py +11 -11
- mat3ra/esse/models/properties_directory/non_scalar/density_of_states.py +2 -2
- mat3ra/esse/models/properties_directory/non_scalar/phonon_dispersions.py +2 -2
- mat3ra/esse/models/properties_directory/non_scalar/phonon_dos.py +2 -2
- mat3ra/esse/models/properties_directory/non_scalar/total_energy_contributions.py +50 -50
- mat3ra/esse/models/properties_directory/non_scalar/vibrational_spectrum.py +2 -2
- mat3ra/esse/models/properties_directory/scalar/electron_affinity.py +2 -2
- mat3ra/esse/models/properties_directory/scalar/fermi_energy.py +2 -2
- mat3ra/esse/models/properties_directory/scalar/formation_energy.py +2 -2
- mat3ra/esse/models/properties_directory/scalar/ionization_potential.py +2 -2
- mat3ra/esse/models/properties_directory/scalar/reaction_energy_barrier.py +2 -2
- mat3ra/esse/models/properties_directory/scalar/surface_energy.py +2 -2
- mat3ra/esse/models/properties_directory/scalar/total_energy.py +2 -2
- mat3ra/esse/models/properties_directory/scalar/valence_band_offset.py +2 -2
- mat3ra/esse/models/properties_directory/scalar/zero_point_energy.py +2 -2
- mat3ra/esse/models/properties_directory/structural/basis/__init__.py +2 -2
- mat3ra/esse/models/properties_directory/structural/molecular_pattern.py +4 -4
- mat3ra/esse/models/properties_directory/workflow/convergence/ionic.py +2 -2
- {mat3ra_esse-2025.7.15.post0.dist-info → mat3ra_esse-2025.8.6.post0.dist-info}/METADATA +1 -1
- {mat3ra_esse-2025.7.15.post0.dist-info → mat3ra_esse-2025.8.6.post0.dist-info}/RECORD +85 -45
- {mat3ra_esse-2025.7.15.post0.dist-info → mat3ra_esse-2025.8.6.post0.dist-info}/WHEEL +0 -0
- {mat3ra_esse-2025.7.15.post0.dist-info → mat3ra_esse-2025.8.6.post0.dist-info}/licenses/LICENSE.md +0 -0
- {mat3ra_esse-2025.7.15.post0.dist-info → mat3ra_esse-2025.8.6.post0.dist-info}/top_level.txt +0 -0
|
@@ -10,10 +10,6 @@ from typing import Any, Dict, List, Literal, Optional, Union
|
|
|
10
10
|
from pydantic import BaseModel, Field, RootModel, confloat, conint, constr
|
|
11
11
|
|
|
12
12
|
|
|
13
|
-
class SupercellMatrix2DSchemaItem(RootModel[List[int]]):
|
|
14
|
-
root: List[int]
|
|
15
|
-
|
|
16
|
-
|
|
17
13
|
class ChemicalElements(Enum):
|
|
18
14
|
H = "H"
|
|
19
15
|
He = "He"
|
|
@@ -269,13 +265,13 @@ class Value(Enum):
|
|
|
269
265
|
Og = "Og"
|
|
270
266
|
|
|
271
267
|
|
|
272
|
-
class
|
|
268
|
+
class Value147(Enum):
|
|
273
269
|
X = "X"
|
|
274
270
|
Vac = "Vac"
|
|
275
271
|
|
|
276
272
|
|
|
277
273
|
class AtomicElementSchema(BaseModel):
|
|
278
|
-
value: Union[Value,
|
|
274
|
+
value: Union[Value, Value147]
|
|
279
275
|
"""
|
|
280
276
|
All elements, including extra elements
|
|
281
277
|
"""
|
|
@@ -423,30 +419,30 @@ class VolumeSchema(BaseModel):
|
|
|
423
419
|
value: float
|
|
424
420
|
|
|
425
421
|
|
|
426
|
-
class
|
|
422
|
+
class Name589(Enum):
|
|
427
423
|
density = "density"
|
|
428
424
|
|
|
429
425
|
|
|
430
|
-
class
|
|
426
|
+
class Units243(Enum):
|
|
431
427
|
g_cm_3 = "g/cm^3"
|
|
432
428
|
|
|
433
429
|
|
|
434
430
|
class DensitySchema(BaseModel):
|
|
435
431
|
name: Literal["1#-datamodel-code-generator-#-object-#-special-#"]
|
|
436
|
-
units: Optional[
|
|
432
|
+
units: Optional[Units243] = None
|
|
437
433
|
value: float
|
|
438
434
|
|
|
439
435
|
|
|
440
|
-
class
|
|
436
|
+
class Units244(Enum):
|
|
441
437
|
angstrom = "angstrom"
|
|
442
438
|
|
|
443
439
|
|
|
444
440
|
class ScalarSchema(BaseModel):
|
|
445
|
-
units: Optional[
|
|
441
|
+
units: Optional[Units244] = None
|
|
446
442
|
value: float
|
|
447
443
|
|
|
448
444
|
|
|
449
|
-
class
|
|
445
|
+
class Name590(Enum):
|
|
450
446
|
symmetry = "symmetry"
|
|
451
447
|
|
|
452
448
|
|
|
@@ -466,7 +462,7 @@ class SymmetrySchema(BaseModel):
|
|
|
466
462
|
name: Literal["2#-datamodel-code-generator-#-object-#-special-#"]
|
|
467
463
|
|
|
468
464
|
|
|
469
|
-
class
|
|
465
|
+
class Name591(Enum):
|
|
470
466
|
elemental_ratio = "elemental_ratio"
|
|
471
467
|
|
|
472
468
|
|
|
@@ -479,7 +475,7 @@ class ElementalRatio(BaseModel):
|
|
|
479
475
|
"""
|
|
480
476
|
|
|
481
477
|
|
|
482
|
-
class
|
|
478
|
+
class Name592(Enum):
|
|
483
479
|
p_norm = "p-norm"
|
|
484
480
|
|
|
485
481
|
|
|
@@ -492,7 +488,7 @@ class PNorm(BaseModel):
|
|
|
492
488
|
value: float
|
|
493
489
|
|
|
494
490
|
|
|
495
|
-
class
|
|
491
|
+
class Name593(Enum):
|
|
496
492
|
inchi = "inchi"
|
|
497
493
|
|
|
498
494
|
|
|
@@ -501,7 +497,7 @@ class InChIRepresentationSchema(BaseModel):
|
|
|
501
497
|
value: str
|
|
502
498
|
|
|
503
499
|
|
|
504
|
-
class
|
|
500
|
+
class Name594(Enum):
|
|
505
501
|
inchi_key = "inchi_key"
|
|
506
502
|
|
|
507
503
|
|
|
@@ -580,7 +576,7 @@ class FileSourceSchema(BaseModel):
|
|
|
580
576
|
"""
|
|
581
577
|
|
|
582
578
|
|
|
583
|
-
class
|
|
579
|
+
class Name595(Enum):
|
|
584
580
|
default = "default"
|
|
585
581
|
atomsTooClose = "atomsTooClose"
|
|
586
582
|
atomsOverlap = "atomsOverlap"
|
|
@@ -593,7 +589,7 @@ class Severity(Enum):
|
|
|
593
589
|
|
|
594
590
|
|
|
595
591
|
class MaterialConsistencyCheckSchema(BaseModel):
|
|
596
|
-
name:
|
|
592
|
+
name: Name595
|
|
597
593
|
"""
|
|
598
594
|
Name of the consistency check that is performed, which is listed in an enum.
|
|
599
595
|
"""
|
|
@@ -677,14 +673,14 @@ class AtomicLayersUniqueRepeatedSchema(BaseModel):
|
|
|
677
673
|
"""
|
|
678
674
|
Number of repetitions of the unique atomic layers
|
|
679
675
|
"""
|
|
680
|
-
crystal: CrystalSchema = Field(..., title="Crystal Schema")
|
|
681
|
-
"""
|
|
682
|
-
A crystal structure, referencing the base material schema
|
|
683
|
-
"""
|
|
684
676
|
miller_indices: Optional[List[int]] = Field([0, 0, 1], max_length=3, min_length=3, title="Miller Indices Schema")
|
|
685
677
|
"""
|
|
686
678
|
Miller indices [h, k, l] defining crystallographic planes
|
|
687
679
|
"""
|
|
680
|
+
crystal: CrystalSchema = Field(..., title="Crystal Schema")
|
|
681
|
+
"""
|
|
682
|
+
A crystal structure, referencing the base material schema
|
|
683
|
+
"""
|
|
688
684
|
use_conventional_cell: Optional[bool] = True
|
|
689
685
|
"""
|
|
690
686
|
Use the conventional cell for the crystal structure
|
|
@@ -697,7 +693,7 @@ class AxisEnum(Enum):
|
|
|
697
693
|
z = "z"
|
|
698
694
|
|
|
699
695
|
|
|
700
|
-
class
|
|
696
|
+
class Value148(Enum):
|
|
701
697
|
H = "H"
|
|
702
698
|
He = "He"
|
|
703
699
|
Li = "Li"
|
|
@@ -818,13 +814,13 @@ class Value34(Enum):
|
|
|
818
814
|
Og = "Og"
|
|
819
815
|
|
|
820
816
|
|
|
821
|
-
class
|
|
817
|
+
class Value149(Enum):
|
|
822
818
|
X = "X"
|
|
823
819
|
Vac = "Vac"
|
|
824
820
|
|
|
825
821
|
|
|
826
|
-
class
|
|
827
|
-
value: Union[
|
|
822
|
+
class AtomicElementSchema70(BaseModel):
|
|
823
|
+
value: Union[Value148, Value149]
|
|
828
824
|
"""
|
|
829
825
|
All elements, including extra elements
|
|
830
826
|
"""
|
|
@@ -834,8 +830,8 @@ class AtomicElementSchema13(BaseModel):
|
|
|
834
830
|
"""
|
|
835
831
|
|
|
836
832
|
|
|
837
|
-
class
|
|
838
|
-
elements: List[
|
|
833
|
+
class BasisSchema68(BaseModel):
|
|
834
|
+
elements: List[AtomicElementSchema70] = Field(..., title="atomic elements schema")
|
|
839
835
|
"""
|
|
840
836
|
atomic elements schema
|
|
841
837
|
"""
|
|
@@ -850,7 +846,7 @@ class BasisSchema11(BaseModel):
|
|
|
850
846
|
"""
|
|
851
847
|
|
|
852
848
|
|
|
853
|
-
class
|
|
849
|
+
class LatticeVectorsSchema68(BaseModel):
|
|
854
850
|
a: List[float] = Field(..., max_length=3, min_length=3, title="vector 3d schema")
|
|
855
851
|
b: List[float] = Field(..., max_length=3, min_length=3, title="vector 3d schema")
|
|
856
852
|
c: List[float] = Field(..., max_length=3, min_length=3, title="vector 3d schema")
|
|
@@ -861,12 +857,12 @@ class LatticeVectorsSchema11(BaseModel):
|
|
|
861
857
|
units: Optional[LatticeVectorsUnitsEnum] = Field("angstrom", title="lattice vectors units enum")
|
|
862
858
|
|
|
863
859
|
|
|
864
|
-
class
|
|
860
|
+
class LatticeUnitsSchema69(BaseModel):
|
|
865
861
|
length: Optional[LatticeUnitsLengthEnum] = Field("angstrom", title="lattice units length enum")
|
|
866
862
|
angle: Optional[LatticeUnitsAngleEnum] = Field("degree", title="lattice units angle enum")
|
|
867
863
|
|
|
868
864
|
|
|
869
|
-
class
|
|
865
|
+
class LatticeSchema68(BaseModel):
|
|
870
866
|
a: float
|
|
871
867
|
"""
|
|
872
868
|
length of the first lattice vector
|
|
@@ -891,56 +887,56 @@ class LatticeSchema11(BaseModel):
|
|
|
891
887
|
"""
|
|
892
888
|
angle between first and third lattice vector
|
|
893
889
|
"""
|
|
894
|
-
vectors: Optional[
|
|
890
|
+
vectors: Optional[LatticeVectorsSchema68] = Field(None, title="lattice vectors schema")
|
|
895
891
|
type: Optional[LatticeTypeEnum] = Field("TRI", title="lattice type enum")
|
|
896
|
-
units: Optional[
|
|
897
|
-
default_factory=lambda:
|
|
892
|
+
units: Optional[LatticeUnitsSchema69] = Field(
|
|
893
|
+
default_factory=lambda: LatticeUnitsSchema69.model_validate({"length": "angstrom", "angle": "degree"}),
|
|
898
894
|
title="Lattice units schema",
|
|
899
895
|
)
|
|
900
896
|
|
|
901
897
|
|
|
902
|
-
class
|
|
898
|
+
class Name596(Enum):
|
|
903
899
|
volume = "volume"
|
|
904
900
|
|
|
905
901
|
|
|
906
|
-
class
|
|
902
|
+
class Units245(Enum):
|
|
907
903
|
angstrom_3 = "angstrom^3"
|
|
908
904
|
|
|
909
905
|
|
|
910
|
-
class
|
|
906
|
+
class VolumeSchema68(BaseModel):
|
|
911
907
|
name: Literal["0#-datamodel-code-generator-#-object-#-special-#"]
|
|
912
|
-
units: Optional[
|
|
908
|
+
units: Optional[Units245] = None
|
|
913
909
|
value: float
|
|
914
910
|
|
|
915
911
|
|
|
916
|
-
class
|
|
912
|
+
class Name597(Enum):
|
|
917
913
|
density = "density"
|
|
918
914
|
|
|
919
915
|
|
|
920
|
-
class
|
|
916
|
+
class Units246(Enum):
|
|
921
917
|
g_cm_3 = "g/cm^3"
|
|
922
918
|
|
|
923
919
|
|
|
924
|
-
class
|
|
920
|
+
class DensitySchema69(BaseModel):
|
|
925
921
|
name: Literal["1#-datamodel-code-generator-#-object-#-special-#"]
|
|
926
|
-
units: Optional[
|
|
922
|
+
units: Optional[Units246] = None
|
|
927
923
|
value: float
|
|
928
924
|
|
|
929
925
|
|
|
930
|
-
class
|
|
926
|
+
class Units247(Enum):
|
|
931
927
|
angstrom = "angstrom"
|
|
932
928
|
|
|
933
929
|
|
|
934
|
-
class
|
|
935
|
-
units: Optional[
|
|
930
|
+
class ScalarSchema70(BaseModel):
|
|
931
|
+
units: Optional[Units247] = None
|
|
936
932
|
value: float
|
|
937
933
|
|
|
938
934
|
|
|
939
|
-
class
|
|
935
|
+
class Name598(Enum):
|
|
940
936
|
symmetry = "symmetry"
|
|
941
937
|
|
|
942
938
|
|
|
943
|
-
class
|
|
939
|
+
class SymmetrySchema68(BaseModel):
|
|
944
940
|
pointGroupSymbol: Optional[str] = None
|
|
945
941
|
"""
|
|
946
942
|
point group symbol in Schoenflies notation
|
|
@@ -949,18 +945,18 @@ class SymmetrySchema11(BaseModel):
|
|
|
949
945
|
"""
|
|
950
946
|
space group symbol in Hermann–Mauguin notation
|
|
951
947
|
"""
|
|
952
|
-
tolerance: Optional[
|
|
948
|
+
tolerance: Optional[ScalarSchema70] = Field(None, title="scalar schema")
|
|
953
949
|
"""
|
|
954
950
|
tolerance used for symmetry calculation
|
|
955
951
|
"""
|
|
956
952
|
name: Literal["2#-datamodel-code-generator-#-object-#-special-#"]
|
|
957
953
|
|
|
958
954
|
|
|
959
|
-
class
|
|
955
|
+
class Name599(Enum):
|
|
960
956
|
elemental_ratio = "elemental_ratio"
|
|
961
957
|
|
|
962
958
|
|
|
963
|
-
class
|
|
959
|
+
class ElementalRatio69(BaseModel):
|
|
964
960
|
name: Literal["3#-datamodel-code-generator-#-object-#-special-#"]
|
|
965
961
|
value: confloat(ge=0.0, le=1.0)
|
|
966
962
|
element: Optional[str] = None
|
|
@@ -969,11 +965,11 @@ class ElementalRatio12(BaseModel):
|
|
|
969
965
|
"""
|
|
970
966
|
|
|
971
967
|
|
|
972
|
-
class
|
|
968
|
+
class Name600(Enum):
|
|
973
969
|
p_norm = "p-norm"
|
|
974
970
|
|
|
975
971
|
|
|
976
|
-
class
|
|
972
|
+
class PNorm69(BaseModel):
|
|
977
973
|
name: Literal["4#-datamodel-code-generator-#-object-#-special-#"]
|
|
978
974
|
degree: Optional[int] = None
|
|
979
975
|
"""
|
|
@@ -982,56 +978,56 @@ class PNorm12(BaseModel):
|
|
|
982
978
|
value: float
|
|
983
979
|
|
|
984
980
|
|
|
985
|
-
class
|
|
981
|
+
class Name601(Enum):
|
|
986
982
|
inchi = "inchi"
|
|
987
983
|
|
|
988
984
|
|
|
989
|
-
class
|
|
985
|
+
class InChIRepresentationSchema69(BaseModel):
|
|
990
986
|
name: Literal["5#-datamodel-code-generator-#-object-#-special-#"]
|
|
991
987
|
value: str
|
|
992
988
|
|
|
993
989
|
|
|
994
|
-
class
|
|
990
|
+
class Name602(Enum):
|
|
995
991
|
inchi_key = "inchi_key"
|
|
996
992
|
|
|
997
993
|
|
|
998
|
-
class
|
|
994
|
+
class InChIKeyRepresentationSchema69(BaseModel):
|
|
999
995
|
name: Literal["6#-datamodel-code-generator-#-object-#-special-#"]
|
|
1000
996
|
value: str
|
|
1001
997
|
|
|
1002
998
|
|
|
1003
|
-
class
|
|
999
|
+
class DerivedPropertiesSchema69(
|
|
1004
1000
|
RootModel[
|
|
1005
1001
|
Union[
|
|
1006
|
-
|
|
1007
|
-
|
|
1008
|
-
|
|
1009
|
-
|
|
1010
|
-
|
|
1011
|
-
|
|
1012
|
-
|
|
1002
|
+
VolumeSchema68,
|
|
1003
|
+
DensitySchema69,
|
|
1004
|
+
SymmetrySchema68,
|
|
1005
|
+
ElementalRatio69,
|
|
1006
|
+
PNorm69,
|
|
1007
|
+
InChIRepresentationSchema69,
|
|
1008
|
+
InChIKeyRepresentationSchema69,
|
|
1013
1009
|
]
|
|
1014
1010
|
]
|
|
1015
1011
|
):
|
|
1016
1012
|
root: Union[
|
|
1017
|
-
|
|
1018
|
-
|
|
1019
|
-
|
|
1020
|
-
|
|
1021
|
-
|
|
1022
|
-
|
|
1023
|
-
|
|
1013
|
+
VolumeSchema68,
|
|
1014
|
+
DensitySchema69,
|
|
1015
|
+
SymmetrySchema68,
|
|
1016
|
+
ElementalRatio69,
|
|
1017
|
+
PNorm69,
|
|
1018
|
+
InChIRepresentationSchema69,
|
|
1019
|
+
InChIKeyRepresentationSchema69,
|
|
1024
1020
|
] = Field(..., discriminator="name")
|
|
1025
1021
|
|
|
1026
1022
|
|
|
1027
|
-
class
|
|
1023
|
+
class Name603(Enum):
|
|
1028
1024
|
default = "default"
|
|
1029
1025
|
atomsTooClose = "atomsTooClose"
|
|
1030
1026
|
atomsOverlap = "atomsOverlap"
|
|
1031
1027
|
|
|
1032
1028
|
|
|
1033
|
-
class
|
|
1034
|
-
name:
|
|
1029
|
+
class MaterialConsistencyCheckSchema68(BaseModel):
|
|
1030
|
+
name: Name603
|
|
1035
1031
|
"""
|
|
1036
1032
|
Name of the consistency check that is performed, which is listed in an enum.
|
|
1037
1033
|
"""
|
|
@@ -1049,7 +1045,7 @@ class MaterialConsistencyCheckSchema11(BaseModel):
|
|
|
1049
1045
|
"""
|
|
1050
1046
|
|
|
1051
1047
|
|
|
1052
|
-
class
|
|
1048
|
+
class CrystalSchema63(BaseModel):
|
|
1053
1049
|
formula: Optional[str] = None
|
|
1054
1050
|
"""
|
|
1055
1051
|
reduced chemical formula
|
|
@@ -1058,9 +1054,9 @@ class CrystalSchema8(BaseModel):
|
|
|
1058
1054
|
"""
|
|
1059
1055
|
chemical formula based on the number of atoms of each element in the supercell
|
|
1060
1056
|
"""
|
|
1061
|
-
basis:
|
|
1062
|
-
lattice:
|
|
1063
|
-
derivedProperties: Optional[List[
|
|
1057
|
+
basis: BasisSchema68 = Field(..., title="basis schema")
|
|
1058
|
+
lattice: LatticeSchema68 = Field(..., title="lattice schema")
|
|
1059
|
+
derivedProperties: Optional[List[DerivedPropertiesSchema69]] = Field(None, title="derived properties schema")
|
|
1064
1060
|
external: Optional[DatabaseSourceSchema] = Field(None, title="database source schema")
|
|
1065
1061
|
"""
|
|
1066
1062
|
information about a database source
|
|
@@ -1081,7 +1077,7 @@ class CrystalSchema8(BaseModel):
|
|
|
1081
1077
|
"""
|
|
1082
1078
|
Whether to work in the finite molecular picture (usually with atomic orbital basis)
|
|
1083
1079
|
"""
|
|
1084
|
-
consistencyChecks: Optional[List[
|
|
1080
|
+
consistencyChecks: Optional[List[MaterialConsistencyCheckSchema68]] = None
|
|
1085
1081
|
field_id: Optional[str] = Field(None, alias="_id")
|
|
1086
1082
|
"""
|
|
1087
1083
|
entity identity
|
|
@@ -1115,29 +1111,29 @@ class VacuumConfigurationSchema(BaseModel):
|
|
|
1115
1111
|
"""
|
|
1116
1112
|
Size of the vacuum slab in angstroms
|
|
1117
1113
|
"""
|
|
1118
|
-
crystal:
|
|
1114
|
+
crystal: CrystalSchema63 = Field(..., title="Crystal Schema")
|
|
1119
1115
|
"""
|
|
1120
1116
|
A crystal structure, referencing the base material schema
|
|
1121
1117
|
"""
|
|
1122
1118
|
|
|
1123
1119
|
|
|
1124
|
-
class
|
|
1125
|
-
|
|
1126
|
-
|
|
1127
|
-
max_length=2,
|
|
1128
|
-
min_length=2,
|
|
1129
|
-
title="Supercell Matrix 2D Schema",
|
|
1130
|
-
)
|
|
1120
|
+
class ObjectWithId(BaseModel):
|
|
1121
|
+
value: Optional[confloat(ge=0.0)] = None
|
|
1122
|
+
id: int
|
|
1131
1123
|
"""
|
|
1132
|
-
|
|
1124
|
+
integer id of this entry
|
|
1133
1125
|
"""
|
|
1126
|
+
|
|
1127
|
+
|
|
1128
|
+
class SlabConfigurationSchema(BaseModel):
|
|
1134
1129
|
stack_components: List[Union[AtomicLayersUniqueRepeatedSchema, VacuumConfigurationSchema]] = Field(
|
|
1135
|
-
..., min_length=2
|
|
1130
|
+
..., max_length=2, min_length=2
|
|
1136
1131
|
)
|
|
1132
|
+
direction: Optional[AxisEnum] = Field("z", title="Axis Enum")
|
|
1137
1133
|
"""
|
|
1138
|
-
|
|
1134
|
+
Enum for axis types
|
|
1139
1135
|
"""
|
|
1140
|
-
|
|
1136
|
+
gaps: Optional[List[ObjectWithId]] = None
|
|
1141
1137
|
"""
|
|
1142
|
-
|
|
1138
|
+
Gap distances between stack components as an array of objects with id and value
|
|
1143
1139
|
"""
|