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
@@ -144,7 +144,7 @@ class TerminationSchema(BaseModel):
144
144
  """
145
145
 
146
146
 
147
- class TerminationSchema31(BaseModel):
147
+ class TerminationSchema25(BaseModel):
148
148
  chemical_elements: Union[ChemicalElements, constr(pattern=r"^([A-Z][a-z]?[0-9]*)+$")] = Field(
149
149
  ..., title="Chemical Elements"
150
150
  )
@@ -278,13 +278,13 @@ class Value(Enum):
278
278
  Og = "Og"
279
279
 
280
280
 
281
- class Value159(Enum):
281
+ class Value135(Enum):
282
282
  X = "X"
283
283
  Vac = "Vac"
284
284
 
285
285
 
286
286
  class AtomicElementSchema(BaseModel):
287
- value: Union[Value, Value159]
287
+ value: Union[Value, Value135]
288
288
  """
289
289
  All elements, including extra elements
290
290
  """
@@ -432,30 +432,30 @@ class VolumeSchema(BaseModel):
432
432
  value: float
433
433
 
434
434
 
435
- class Name641(Enum):
435
+ class Name545(Enum):
436
436
  density = "density"
437
437
 
438
438
 
439
- class Units258(Enum):
439
+ class Units222(Enum):
440
440
  g_cm_3 = "g/cm^3"
441
441
 
442
442
 
443
443
  class DensitySchema(BaseModel):
444
444
  name: Literal["1#-datamodel-code-generator-#-object-#-special-#"]
445
- units: Optional[Units258] = None
445
+ units: Optional[Units222] = None
446
446
  value: float
447
447
 
448
448
 
449
- class Units259(Enum):
449
+ class Units223(Enum):
450
450
  angstrom = "angstrom"
451
451
 
452
452
 
453
453
  class ScalarSchema(BaseModel):
454
- units: Optional[Units259] = None
454
+ units: Optional[Units223] = None
455
455
  value: float
456
456
 
457
457
 
458
- class Name642(Enum):
458
+ class Name546(Enum):
459
459
  symmetry = "symmetry"
460
460
 
461
461
 
@@ -475,7 +475,7 @@ class SymmetrySchema(BaseModel):
475
475
  name: Literal["2#-datamodel-code-generator-#-object-#-special-#"]
476
476
 
477
477
 
478
- class Name643(Enum):
478
+ class Name547(Enum):
479
479
  elemental_ratio = "elemental_ratio"
480
480
 
481
481
 
@@ -488,7 +488,7 @@ class ElementalRatio(BaseModel):
488
488
  """
489
489
 
490
490
 
491
- class Name644(Enum):
491
+ class Name548(Enum):
492
492
  p_norm = "p-norm"
493
493
 
494
494
 
@@ -501,7 +501,7 @@ class PNorm(BaseModel):
501
501
  value: float
502
502
 
503
503
 
504
- class Name645(Enum):
504
+ class Name549(Enum):
505
505
  inchi = "inchi"
506
506
 
507
507
 
@@ -510,7 +510,7 @@ class InChIRepresentationSchema(BaseModel):
510
510
  value: str
511
511
 
512
512
 
513
- class Name646(Enum):
513
+ class Name550(Enum):
514
514
  inchi_key = "inchi_key"
515
515
 
516
516
 
@@ -589,7 +589,7 @@ class FileSourceSchema(BaseModel):
589
589
  """
590
590
 
591
591
 
592
- class Name647(Enum):
592
+ class Name551(Enum):
593
593
  default = "default"
594
594
  atomsTooClose = "atomsTooClose"
595
595
  atomsOverlap = "atomsOverlap"
@@ -602,7 +602,7 @@ class Severity(Enum):
602
602
 
603
603
 
604
604
  class MaterialConsistencyCheckSchema(BaseModel):
605
- name: Name647
605
+ name: Name551
606
606
  """
607
607
  Name of the consistency check that is performed, which is listed in an enum.
608
608
  """
@@ -682,7 +682,7 @@ class CrystalLatticeLinesUniqueRepeatedSchema(BaseModel):
682
682
  """
683
683
  Defines a specific termination of a slab
684
684
  """
685
- termination_bottom: Optional[TerminationSchema31] = Field(None, title="Termination Schema")
685
+ termination_bottom: Optional[TerminationSchema25] = Field(None, title="Termination Schema")
686
686
  """
687
687
  Defines a specific termination of a slab
688
688
  """
@@ -714,7 +714,7 @@ class AxisEnum(Enum):
714
714
  z = "z"
715
715
 
716
716
 
717
- class Value160(Enum):
717
+ class Value136(Enum):
718
718
  H = "H"
719
719
  He = "He"
720
720
  Li = "Li"
@@ -835,13 +835,13 @@ class Value160(Enum):
835
835
  Og = "Og"
836
836
 
837
837
 
838
- class Value161(Enum):
838
+ class Value137(Enum):
839
839
  X = "X"
840
840
  Vac = "Vac"
841
841
 
842
842
 
843
- class AtomicElementSchema78(BaseModel):
844
- value: Union[Value160, Value161]
843
+ class AtomicElementSchema66(BaseModel):
844
+ value: Union[Value136, Value137]
845
845
  """
846
846
  All elements, including extra elements
847
847
  """
@@ -851,8 +851,8 @@ class AtomicElementSchema78(BaseModel):
851
851
  """
852
852
 
853
853
 
854
- class BasisSchema76(BaseModel):
855
- elements: List[AtomicElementSchema78] = Field(..., title="atomic elements schema")
854
+ class BasisSchema64(BaseModel):
855
+ elements: List[AtomicElementSchema66] = Field(..., title="atomic elements schema")
856
856
  """
857
857
  atomic elements schema
858
858
  """
@@ -867,7 +867,7 @@ class BasisSchema76(BaseModel):
867
867
  """
868
868
 
869
869
 
870
- class LatticeVectorsSchema76(BaseModel):
870
+ class LatticeVectorsSchema64(BaseModel):
871
871
  a: List[float] = Field(..., max_length=3, min_length=3, title="vector 3d schema")
872
872
  b: List[float] = Field(..., max_length=3, min_length=3, title="vector 3d schema")
873
873
  c: List[float] = Field(..., max_length=3, min_length=3, title="vector 3d schema")
@@ -878,12 +878,12 @@ class LatticeVectorsSchema76(BaseModel):
878
878
  units: Optional[LatticeVectorsUnitsEnum] = Field("angstrom", title="lattice vectors units enum")
879
879
 
880
880
 
881
- class LatticeUnitsSchema77(BaseModel):
881
+ class LatticeUnitsSchema65(BaseModel):
882
882
  length: Optional[LatticeUnitsLengthEnum] = Field("angstrom", title="lattice units length enum")
883
883
  angle: Optional[LatticeUnitsAngleEnum] = Field("degree", title="lattice units angle enum")
884
884
 
885
885
 
886
- class LatticeSchema76(BaseModel):
886
+ class LatticeSchema64(BaseModel):
887
887
  a: float
888
888
  """
889
889
  length of the first lattice vector
@@ -908,56 +908,56 @@ class LatticeSchema76(BaseModel):
908
908
  """
909
909
  angle between first and third lattice vector
910
910
  """
911
- vectors: Optional[LatticeVectorsSchema76] = Field(None, title="lattice vectors schema")
911
+ vectors: Optional[LatticeVectorsSchema64] = Field(None, title="lattice vectors schema")
912
912
  type: Optional[LatticeTypeEnum] = Field("TRI", title="lattice type enum")
913
- units: Optional[LatticeUnitsSchema77] = Field(
914
- default_factory=lambda: LatticeUnitsSchema77.model_validate({"length": "angstrom", "angle": "degree"}),
913
+ units: Optional[LatticeUnitsSchema65] = Field(
914
+ default_factory=lambda: LatticeUnitsSchema65.model_validate({"length": "angstrom", "angle": "degree"}),
915
915
  title="Lattice units schema",
916
916
  )
917
917
 
918
918
 
919
- class Name648(Enum):
919
+ class Name552(Enum):
920
920
  volume = "volume"
921
921
 
922
922
 
923
- class Units260(Enum):
923
+ class Units224(Enum):
924
924
  angstrom_3 = "angstrom^3"
925
925
 
926
926
 
927
- class VolumeSchema76(BaseModel):
927
+ class VolumeSchema64(BaseModel):
928
928
  name: Literal["0#-datamodel-code-generator-#-object-#-special-#"]
929
- units: Optional[Units260] = None
929
+ units: Optional[Units224] = None
930
930
  value: float
931
931
 
932
932
 
933
- class Name649(Enum):
933
+ class Name553(Enum):
934
934
  density = "density"
935
935
 
936
936
 
937
- class Units261(Enum):
937
+ class Units225(Enum):
938
938
  g_cm_3 = "g/cm^3"
939
939
 
940
940
 
941
- class DensitySchema77(BaseModel):
941
+ class DensitySchema65(BaseModel):
942
942
  name: Literal["1#-datamodel-code-generator-#-object-#-special-#"]
943
- units: Optional[Units261] = None
943
+ units: Optional[Units225] = None
944
944
  value: float
945
945
 
946
946
 
947
- class Units262(Enum):
947
+ class Units226(Enum):
948
948
  angstrom = "angstrom"
949
949
 
950
950
 
951
- class ScalarSchema77(BaseModel):
952
- units: Optional[Units262] = None
951
+ class ScalarSchema65(BaseModel):
952
+ units: Optional[Units226] = None
953
953
  value: float
954
954
 
955
955
 
956
- class Name650(Enum):
956
+ class Name554(Enum):
957
957
  symmetry = "symmetry"
958
958
 
959
959
 
960
- class SymmetrySchema76(BaseModel):
960
+ class SymmetrySchema64(BaseModel):
961
961
  pointGroupSymbol: Optional[str] = None
962
962
  """
963
963
  point group symbol in Schoenflies notation
@@ -966,18 +966,18 @@ class SymmetrySchema76(BaseModel):
966
966
  """
967
967
  space group symbol in Hermann–Mauguin notation
968
968
  """
969
- tolerance: Optional[ScalarSchema77] = Field(None, title="scalar schema")
969
+ tolerance: Optional[ScalarSchema65] = Field(None, title="scalar schema")
970
970
  """
971
971
  tolerance used for symmetry calculation
972
972
  """
973
973
  name: Literal["2#-datamodel-code-generator-#-object-#-special-#"]
974
974
 
975
975
 
976
- class Name651(Enum):
976
+ class Name555(Enum):
977
977
  elemental_ratio = "elemental_ratio"
978
978
 
979
979
 
980
- class ElementalRatio77(BaseModel):
980
+ class ElementalRatio65(BaseModel):
981
981
  name: Literal["3#-datamodel-code-generator-#-object-#-special-#"]
982
982
  value: confloat(ge=0.0, le=1.0)
983
983
  element: Optional[str] = None
@@ -986,11 +986,11 @@ class ElementalRatio77(BaseModel):
986
986
  """
987
987
 
988
988
 
989
- class Name652(Enum):
989
+ class Name556(Enum):
990
990
  p_norm = "p-norm"
991
991
 
992
992
 
993
- class PNorm76(BaseModel):
993
+ class PNorm64(BaseModel):
994
994
  name: Literal["4#-datamodel-code-generator-#-object-#-special-#"]
995
995
  degree: Optional[int] = None
996
996
  """
@@ -999,56 +999,56 @@ class PNorm76(BaseModel):
999
999
  value: float
1000
1000
 
1001
1001
 
1002
- class Name653(Enum):
1002
+ class Name557(Enum):
1003
1003
  inchi = "inchi"
1004
1004
 
1005
1005
 
1006
- class InChIRepresentationSchema77(BaseModel):
1006
+ class InChIRepresentationSchema65(BaseModel):
1007
1007
  name: Literal["5#-datamodel-code-generator-#-object-#-special-#"]
1008
1008
  value: str
1009
1009
 
1010
1010
 
1011
- class Name654(Enum):
1011
+ class Name558(Enum):
1012
1012
  inchi_key = "inchi_key"
1013
1013
 
1014
1014
 
1015
- class InChIKeyRepresentationSchema77(BaseModel):
1015
+ class InChIKeyRepresentationSchema65(BaseModel):
1016
1016
  name: Literal["6#-datamodel-code-generator-#-object-#-special-#"]
1017
1017
  value: str
1018
1018
 
1019
1019
 
1020
- class DerivedPropertiesSchema77(
1020
+ class DerivedPropertiesSchema65(
1021
1021
  RootModel[
1022
1022
  Union[
1023
- VolumeSchema76,
1024
- DensitySchema77,
1025
- SymmetrySchema76,
1026
- ElementalRatio77,
1027
- PNorm76,
1028
- InChIRepresentationSchema77,
1029
- InChIKeyRepresentationSchema77,
1023
+ VolumeSchema64,
1024
+ DensitySchema65,
1025
+ SymmetrySchema64,
1026
+ ElementalRatio65,
1027
+ PNorm64,
1028
+ InChIRepresentationSchema65,
1029
+ InChIKeyRepresentationSchema65,
1030
1030
  ]
1031
1031
  ]
1032
1032
  ):
1033
1033
  root: Union[
1034
- VolumeSchema76,
1035
- DensitySchema77,
1036
- SymmetrySchema76,
1037
- ElementalRatio77,
1038
- PNorm76,
1039
- InChIRepresentationSchema77,
1040
- InChIKeyRepresentationSchema77,
1034
+ VolumeSchema64,
1035
+ DensitySchema65,
1036
+ SymmetrySchema64,
1037
+ ElementalRatio65,
1038
+ PNorm64,
1039
+ InChIRepresentationSchema65,
1040
+ InChIKeyRepresentationSchema65,
1041
1041
  ] = Field(..., discriminator="name")
1042
1042
 
1043
1043
 
1044
- class Name655(Enum):
1044
+ class Name559(Enum):
1045
1045
  default = "default"
1046
1046
  atomsTooClose = "atomsTooClose"
1047
1047
  atomsOverlap = "atomsOverlap"
1048
1048
 
1049
1049
 
1050
- class MaterialConsistencyCheckSchema76(BaseModel):
1051
- name: Name655
1050
+ class MaterialConsistencyCheckSchema64(BaseModel):
1051
+ name: Name559
1052
1052
  """
1053
1053
  Name of the consistency check that is performed, which is listed in an enum.
1054
1054
  """
@@ -1066,7 +1066,7 @@ class MaterialConsistencyCheckSchema76(BaseModel):
1066
1066
  """
1067
1067
 
1068
1068
 
1069
- class CrystalSchema72(BaseModel):
1069
+ class CrystalSchema60(BaseModel):
1070
1070
  formula: Optional[str] = None
1071
1071
  """
1072
1072
  reduced chemical formula
@@ -1075,9 +1075,9 @@ class CrystalSchema72(BaseModel):
1075
1075
  """
1076
1076
  chemical formula based on the number of atoms of each element in the supercell
1077
1077
  """
1078
- basis: BasisSchema76 = Field(..., title="basis schema")
1079
- lattice: LatticeSchema76 = Field(..., title="lattice schema")
1080
- derivedProperties: Optional[List[DerivedPropertiesSchema77]] = Field(None, title="derived properties schema")
1078
+ basis: BasisSchema64 = Field(..., title="basis schema")
1079
+ lattice: LatticeSchema64 = Field(..., title="lattice schema")
1080
+ derivedProperties: Optional[List[DerivedPropertiesSchema65]] = Field(None, title="derived properties schema")
1081
1081
  external: Optional[DatabaseSourceSchema] = Field(None, title="database source schema")
1082
1082
  """
1083
1083
  information about a database source
@@ -1098,7 +1098,7 @@ class CrystalSchema72(BaseModel):
1098
1098
  """
1099
1099
  Whether to work in the finite molecular picture (usually with atomic orbital basis)
1100
1100
  """
1101
- consistencyChecks: Optional[List[MaterialConsistencyCheckSchema76]] = None
1101
+ consistencyChecks: Optional[List[MaterialConsistencyCheckSchema64]] = None
1102
1102
  field_id: Optional[str] = Field(None, alias="_id")
1103
1103
  """
1104
1104
  entity identity
@@ -1132,12 +1132,20 @@ class VacuumConfigurationSchema(BaseModel):
1132
1132
  """
1133
1133
  Size of the vacuum slab in angstroms
1134
1134
  """
1135
- crystal: CrystalSchema72 = Field(..., title="Crystal Schema")
1135
+ crystal: CrystalSchema60 = Field(..., title="Crystal Schema")
1136
1136
  """
1137
1137
  A crystal structure, referencing the base material schema
1138
1138
  """
1139
1139
 
1140
1140
 
1141
+ class ObjectWithId(BaseModel):
1142
+ value: Optional[confloat(ge=0.0)] = None
1143
+ id: int
1144
+ """
1145
+ integer id of this entry
1146
+ """
1147
+
1148
+
1141
1149
  class NanoTapeConfigurationSchema(BaseModel):
1142
1150
  stack_components: List[Union[CrystalLatticeLinesUniqueRepeatedSchema, VacuumConfigurationSchema]] = Field(
1143
1151
  ..., max_length=2, min_length=2
@@ -1146,3 +1154,7 @@ class NanoTapeConfigurationSchema(BaseModel):
1146
1154
  """
1147
1155
  Enum for axis types
1148
1156
  """
1157
+ gaps: Optional[List[ObjectWithId]] = None
1158
+ """
1159
+ Gap distances between stack components as an array of objects with id and value
1160
+ """