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.

Files changed (65) hide show
  1. mat3ra/esse/data/examples.py +1 -1
  2. mat3ra/esse/data/schemas.py +1 -1
  3. mat3ra/esse/models/apse/file/applications/espresso/7.2/pw_x.py +6 -6
  4. mat3ra/esse/models/core/reusable/energy.py +2 -2
  5. mat3ra/esse/models/element.py +6 -6
  6. mat3ra/esse/models/material/__init__.py +14 -14
  7. mat3ra/esse/models/materials_category/compound_pristine_structures/two_dimensional/interface/configuration.py +549 -2319
  8. mat3ra/esse/models/materials_category/defective_structures/one_dimensional/grain_boundary_linear/configuration.py +537 -2307
  9. mat3ra/esse/models/materials_category/defective_structures/two_dimensional/adatom/configuration.py +206 -190
  10. mat3ra/esse/models/materials_category/defective_structures/two_dimensional/grain_boundary_planar/configuration.py +56 -1826
  11. mat3ra/esse/models/materials_category/defective_structures/two_dimensional/island/configuration.py +331 -311
  12. mat3ra/esse/models/materials_category/defective_structures/two_dimensional/terrace/configuration.py +331 -311
  13. mat3ra/esse/models/materials_category/defective_structures/zero_dimensional/point_defect/interstitial.py +72 -72
  14. mat3ra/esse/models/materials_category/defective_structures/zero_dimensional/point_defect/substitutional.py +72 -72
  15. mat3ra/esse/models/materials_category/defective_structures/zero_dimensional/point_defect/vacancy.py +14 -14
  16. mat3ra/esse/models/materials_category/pristine_structures/three_dimensional/ideal_crystal.py +14 -14
  17. mat3ra/esse/models/materials_category/pristine_structures/two_dimensional/nanoribbon.py +150 -134
  18. mat3ra/esse/models/materials_category/pristine_structures/two_dimensional/nanotape.py +86 -74
  19. mat3ra/esse/models/materials_category/pristine_structures/two_dimensional/slab.py +84 -72
  20. mat3ra/esse/models/materials_category/pristine_structures/two_dimensional/slab_strained_supercell.py +84 -72
  21. mat3ra/esse/models/materials_category/processed_structures/two_dimensional/passivation/configuration.py +70 -70
  22. mat3ra/esse/models/materials_category_components/entities/auxiliary/zero_dimensional/crystal_site.py +14 -14
  23. mat3ra/esse/models/materials_category_components/entities/auxiliary/zero_dimensional/point_defect_site.py +14 -14
  24. mat3ra/esse/models/materials_category_components/entities/auxiliary/zero_dimensional/void_region.py +14 -14
  25. mat3ra/esse/models/materials_category_components/entities/core/three_dimensional/crystal.py +14 -14
  26. mat3ra/esse/models/materials_category_components/entities/core/two_dimensional/vacuum.py +14 -14
  27. mat3ra/esse/models/materials_category_components/entities/reusable/one_dimensional/crystal_lattice_lines.py +14 -14
  28. mat3ra/esse/models/materials_category_components/entities/reusable/one_dimensional/crystal_lattice_lines_unique_repeated.py +16 -16
  29. mat3ra/esse/models/materials_category_components/entities/reusable/three_dimensional/crystal_lattice_base.py +14 -14
  30. mat3ra/esse/models/materials_category_components/entities/reusable/{repetitions.py → three_dimensional/repetitions.py} +1 -1
  31. mat3ra/esse/models/materials_category_components/entities/reusable/three_dimensional/strained_non_uniform.py +14 -14
  32. mat3ra/esse/models/materials_category_components/entities/reusable/three_dimensional/strained_uniform.py +14 -14
  33. mat3ra/esse/models/materials_category_components/entities/reusable/three_dimensional/supercell.py +14 -14
  34. mat3ra/esse/models/materials_category_components/entities/reusable/two_dimensional/crystal_lattice_planes.py +14 -14
  35. mat3ra/esse/models/materials_category_components/entities/reusable/two_dimensional/slab_stack_configuration.py +148 -132
  36. mat3ra/esse/models/materials_category_components/operations/core/combinations/stack.py +14 -2
  37. mat3ra/esse/models/materials_category_components/operations/core/modifications/perturb.py +14 -14
  38. mat3ra/esse/models/properties_directory/derived_properties.py +11 -11
  39. mat3ra/esse/models/properties_directory/non_scalar/density_of_states.py +2 -2
  40. mat3ra/esse/models/properties_directory/non_scalar/phonon_dispersions.py +2 -2
  41. mat3ra/esse/models/properties_directory/non_scalar/phonon_dos.py +2 -2
  42. mat3ra/esse/models/properties_directory/non_scalar/total_energy_contributions.py +50 -50
  43. mat3ra/esse/models/properties_directory/non_scalar/vibrational_spectrum.py +2 -2
  44. mat3ra/esse/models/properties_directory/scalar/electron_affinity.py +2 -2
  45. mat3ra/esse/models/properties_directory/scalar/fermi_energy.py +2 -2
  46. mat3ra/esse/models/properties_directory/scalar/formation_energy.py +2 -2
  47. mat3ra/esse/models/properties_directory/scalar/ionization_potential.py +2 -2
  48. mat3ra/esse/models/properties_directory/scalar/reaction_energy_barrier.py +2 -2
  49. mat3ra/esse/models/properties_directory/scalar/surface_energy.py +2 -2
  50. mat3ra/esse/models/properties_directory/scalar/total_energy.py +2 -2
  51. mat3ra/esse/models/properties_directory/scalar/valence_band_offset.py +2 -2
  52. mat3ra/esse/models/properties_directory/scalar/zero_point_energy.py +2 -2
  53. mat3ra/esse/models/properties_directory/structural/molecular_pattern.py +4 -4
  54. mat3ra/esse/models/properties_directory/workflow/convergence/ionic.py +2 -2
  55. mat3ra/esse/models/software/template.py +4 -0
  56. mat3ra/esse/models/software_directory/modeling/unit/execution.py +4 -0
  57. mat3ra/esse/models/software_directory/scripting/unit/execution.py +4 -0
  58. mat3ra/esse/models/workflow/unit/input/_input.py +4 -0
  59. mat3ra/esse/models/workflow/unit/input/_inputItem.py +4 -0
  60. {mat3ra_esse-2025.7.29.post0.dist-info → mat3ra_esse-2025.8.6.post1.dist-info}/METADATA +1 -1
  61. {mat3ra_esse-2025.7.29.post0.dist-info → mat3ra_esse-2025.8.6.post1.dist-info}/RECORD +64 -65
  62. mat3ra/esse/models/materials_category/pristine_structures/two_dimensional/slab_strained_supercell_with_gap.py +0 -1151
  63. {mat3ra_esse-2025.7.29.post0.dist-info → mat3ra_esse-2025.8.6.post1.dist-info}/WHEEL +0 -0
  64. {mat3ra_esse-2025.7.29.post0.dist-info → mat3ra_esse-2025.8.6.post1.dist-info}/licenses/LICENSE.md +0 -0
  65. {mat3ra_esse-2025.7.29.post0.dist-info → mat3ra_esse-2025.8.6.post1.dist-info}/top_level.txt +0 -0
@@ -265,13 +265,13 @@ class Value(Enum):
265
265
  Og = "Og"
266
266
 
267
267
 
268
- class Value171(Enum):
268
+ class Value147(Enum):
269
269
  X = "X"
270
270
  Vac = "Vac"
271
271
 
272
272
 
273
273
  class AtomicElementSchema(BaseModel):
274
- value: Union[Value, Value171]
274
+ value: Union[Value, Value147]
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 Name685(Enum):
422
+ class Name589(Enum):
423
423
  density = "density"
424
424
 
425
425
 
426
- class Units279(Enum):
426
+ class Units243(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[Units279] = None
432
+ units: Optional[Units243] = None
433
433
  value: float
434
434
 
435
435
 
436
- class Units280(Enum):
436
+ class Units244(Enum):
437
437
  angstrom = "angstrom"
438
438
 
439
439
 
440
440
  class ScalarSchema(BaseModel):
441
- units: Optional[Units280] = None
441
+ units: Optional[Units244] = None
442
442
  value: float
443
443
 
444
444
 
445
- class Name686(Enum):
445
+ class Name590(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 Name687(Enum):
465
+ class Name591(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 Name688(Enum):
478
+ class Name592(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 Name689(Enum):
491
+ class Name593(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 Name690(Enum):
500
+ class Name594(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 Name691(Enum):
579
+ class Name595(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: Name691
592
+ name: Name595
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 Value172(Enum):
696
+ class Value148(Enum):
697
697
  H = "H"
698
698
  He = "He"
699
699
  Li = "Li"
@@ -814,13 +814,13 @@ class Value172(Enum):
814
814
  Og = "Og"
815
815
 
816
816
 
817
- class Value173(Enum):
817
+ class Value149(Enum):
818
818
  X = "X"
819
819
  Vac = "Vac"
820
820
 
821
821
 
822
- class AtomicElementSchema82(BaseModel):
823
- value: Union[Value172, Value173]
822
+ class AtomicElementSchema70(BaseModel):
823
+ value: Union[Value148, Value149]
824
824
  """
825
825
  All elements, including extra elements
826
826
  """
@@ -830,8 +830,8 @@ class AtomicElementSchema82(BaseModel):
830
830
  """
831
831
 
832
832
 
833
- class BasisSchema80(BaseModel):
834
- elements: List[AtomicElementSchema82] = Field(..., title="atomic elements schema")
833
+ class BasisSchema68(BaseModel):
834
+ elements: List[AtomicElementSchema70] = Field(..., title="atomic elements schema")
835
835
  """
836
836
  atomic elements schema
837
837
  """
@@ -846,7 +846,7 @@ class BasisSchema80(BaseModel):
846
846
  """
847
847
 
848
848
 
849
- class LatticeVectorsSchema80(BaseModel):
849
+ class LatticeVectorsSchema68(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 LatticeVectorsSchema80(BaseModel):
857
857
  units: Optional[LatticeVectorsUnitsEnum] = Field("angstrom", title="lattice vectors units enum")
858
858
 
859
859
 
860
- class LatticeUnitsSchema81(BaseModel):
860
+ class LatticeUnitsSchema69(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 LatticeSchema80(BaseModel):
865
+ class LatticeSchema68(BaseModel):
866
866
  a: float
867
867
  """
868
868
  length of the first lattice vector
@@ -887,56 +887,56 @@ class LatticeSchema80(BaseModel):
887
887
  """
888
888
  angle between first and third lattice vector
889
889
  """
890
- vectors: Optional[LatticeVectorsSchema80] = Field(None, title="lattice vectors schema")
890
+ vectors: Optional[LatticeVectorsSchema68] = Field(None, title="lattice vectors schema")
891
891
  type: Optional[LatticeTypeEnum] = Field("TRI", title="lattice type enum")
892
- units: Optional[LatticeUnitsSchema81] = Field(
893
- default_factory=lambda: LatticeUnitsSchema81.model_validate({"length": "angstrom", "angle": "degree"}),
892
+ units: Optional[LatticeUnitsSchema69] = Field(
893
+ default_factory=lambda: LatticeUnitsSchema69.model_validate({"length": "angstrom", "angle": "degree"}),
894
894
  title="Lattice units schema",
895
895
  )
896
896
 
897
897
 
898
- class Name692(Enum):
898
+ class Name596(Enum):
899
899
  volume = "volume"
900
900
 
901
901
 
902
- class Units281(Enum):
902
+ class Units245(Enum):
903
903
  angstrom_3 = "angstrom^3"
904
904
 
905
905
 
906
- class VolumeSchema80(BaseModel):
906
+ class VolumeSchema68(BaseModel):
907
907
  name: Literal["0#-datamodel-code-generator-#-object-#-special-#"]
908
- units: Optional[Units281] = None
908
+ units: Optional[Units245] = None
909
909
  value: float
910
910
 
911
911
 
912
- class Name693(Enum):
912
+ class Name597(Enum):
913
913
  density = "density"
914
914
 
915
915
 
916
- class Units282(Enum):
916
+ class Units246(Enum):
917
917
  g_cm_3 = "g/cm^3"
918
918
 
919
919
 
920
- class DensitySchema81(BaseModel):
920
+ class DensitySchema69(BaseModel):
921
921
  name: Literal["1#-datamodel-code-generator-#-object-#-special-#"]
922
- units: Optional[Units282] = None
922
+ units: Optional[Units246] = None
923
923
  value: float
924
924
 
925
925
 
926
- class Units283(Enum):
926
+ class Units247(Enum):
927
927
  angstrom = "angstrom"
928
928
 
929
929
 
930
- class ScalarSchema82(BaseModel):
931
- units: Optional[Units283] = None
930
+ class ScalarSchema70(BaseModel):
931
+ units: Optional[Units247] = None
932
932
  value: float
933
933
 
934
934
 
935
- class Name694(Enum):
935
+ class Name598(Enum):
936
936
  symmetry = "symmetry"
937
937
 
938
938
 
939
- class SymmetrySchema80(BaseModel):
939
+ class SymmetrySchema68(BaseModel):
940
940
  pointGroupSymbol: Optional[str] = None
941
941
  """
942
942
  point group symbol in Schoenflies notation
@@ -945,18 +945,18 @@ class SymmetrySchema80(BaseModel):
945
945
  """
946
946
  space group symbol in Hermann–Mauguin notation
947
947
  """
948
- tolerance: Optional[ScalarSchema82] = Field(None, title="scalar schema")
948
+ tolerance: Optional[ScalarSchema70] = 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 Name695(Enum):
955
+ class Name599(Enum):
956
956
  elemental_ratio = "elemental_ratio"
957
957
 
958
958
 
959
- class ElementalRatio81(BaseModel):
959
+ class ElementalRatio69(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 ElementalRatio81(BaseModel):
965
965
  """
966
966
 
967
967
 
968
- class Name696(Enum):
968
+ class Name600(Enum):
969
969
  p_norm = "p-norm"
970
970
 
971
971
 
972
- class PNorm81(BaseModel):
972
+ class PNorm69(BaseModel):
973
973
  name: Literal["4#-datamodel-code-generator-#-object-#-special-#"]
974
974
  degree: Optional[int] = None
975
975
  """
@@ -978,56 +978,56 @@ class PNorm81(BaseModel):
978
978
  value: float
979
979
 
980
980
 
981
- class Name697(Enum):
981
+ class Name601(Enum):
982
982
  inchi = "inchi"
983
983
 
984
984
 
985
- class InChIRepresentationSchema81(BaseModel):
985
+ class InChIRepresentationSchema69(BaseModel):
986
986
  name: Literal["5#-datamodel-code-generator-#-object-#-special-#"]
987
987
  value: str
988
988
 
989
989
 
990
- class Name698(Enum):
990
+ class Name602(Enum):
991
991
  inchi_key = "inchi_key"
992
992
 
993
993
 
994
- class InChIKeyRepresentationSchema81(BaseModel):
994
+ class InChIKeyRepresentationSchema69(BaseModel):
995
995
  name: Literal["6#-datamodel-code-generator-#-object-#-special-#"]
996
996
  value: str
997
997
 
998
998
 
999
- class DerivedPropertiesSchema81(
999
+ class DerivedPropertiesSchema69(
1000
1000
  RootModel[
1001
1001
  Union[
1002
- VolumeSchema80,
1003
- DensitySchema81,
1004
- SymmetrySchema80,
1005
- ElementalRatio81,
1006
- PNorm81,
1007
- InChIRepresentationSchema81,
1008
- InChIKeyRepresentationSchema81,
1002
+ VolumeSchema68,
1003
+ DensitySchema69,
1004
+ SymmetrySchema68,
1005
+ ElementalRatio69,
1006
+ PNorm69,
1007
+ InChIRepresentationSchema69,
1008
+ InChIKeyRepresentationSchema69,
1009
1009
  ]
1010
1010
  ]
1011
1011
  ):
1012
1012
  root: Union[
1013
- VolumeSchema80,
1014
- DensitySchema81,
1015
- SymmetrySchema80,
1016
- ElementalRatio81,
1017
- PNorm81,
1018
- InChIRepresentationSchema81,
1019
- InChIKeyRepresentationSchema81,
1013
+ VolumeSchema68,
1014
+ DensitySchema69,
1015
+ SymmetrySchema68,
1016
+ ElementalRatio69,
1017
+ PNorm69,
1018
+ InChIRepresentationSchema69,
1019
+ InChIKeyRepresentationSchema69,
1020
1020
  ] = Field(..., discriminator="name")
1021
1021
 
1022
1022
 
1023
- class Name699(Enum):
1023
+ class Name603(Enum):
1024
1024
  default = "default"
1025
1025
  atomsTooClose = "atomsTooClose"
1026
1026
  atomsOverlap = "atomsOverlap"
1027
1027
 
1028
1028
 
1029
- class MaterialConsistencyCheckSchema80(BaseModel):
1030
- name: Name699
1029
+ class MaterialConsistencyCheckSchema68(BaseModel):
1030
+ name: Name603
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 MaterialConsistencyCheckSchema80(BaseModel):
1045
1045
  """
1046
1046
 
1047
1047
 
1048
- class CrystalSchema75(BaseModel):
1048
+ class CrystalSchema63(BaseModel):
1049
1049
  formula: Optional[str] = None
1050
1050
  """
1051
1051
  reduced chemical formula
@@ -1054,9 +1054,9 @@ class CrystalSchema75(BaseModel):
1054
1054
  """
1055
1055
  chemical formula based on the number of atoms of each element in the supercell
1056
1056
  """
1057
- basis: BasisSchema80 = Field(..., title="basis schema")
1058
- lattice: LatticeSchema80 = Field(..., title="lattice schema")
1059
- derivedProperties: Optional[List[DerivedPropertiesSchema81]] = Field(None, title="derived properties schema")
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")
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 CrystalSchema75(BaseModel):
1077
1077
  """
1078
1078
  Whether to work in the finite molecular picture (usually with atomic orbital basis)
1079
1079
  """
1080
- consistencyChecks: Optional[List[MaterialConsistencyCheckSchema80]] = None
1080
+ consistencyChecks: Optional[List[MaterialConsistencyCheckSchema68]] = 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: CrystalSchema75 = Field(..., title="Crystal Schema")
1114
+ crystal: CrystalSchema63 = 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,3 +1133,7 @@ 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
+ """