mat3ra-esse 2025.6.5.post0__py3-none-any.whl → 2025.6.30.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.

Files changed (144) 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/materials_category/pristine_structures/two_dimensional/slab.py +428 -15
  5. mat3ra/esse/models/materials_category_components/entities/auxiliary/two_dimensional/termination.py +1 -1
  6. mat3ra/esse/models/materials_category_components/entities/core/two_dimensional/vacuum.py +526 -2
  7. mat3ra/esse/models/materials_category_components/entities/reusable/three_dimensional/strained_non_uniform.py +14 -14
  8. mat3ra/esse/models/materials_category_components/entities/reusable/three_dimensional/strained_uniform.py +14 -14
  9. mat3ra/esse/models/materials_category_components/entities/reusable/three_dimensional/supercell.py +14 -14
  10. mat3ra/esse/models/materials_category_components/entities/reusable/two_dimensional/atomic_layers.py +1 -1
  11. mat3ra/esse/models/materials_category_components/entities/reusable/two_dimensional/atomic_layers_unique.py +1 -1
  12. mat3ra/esse/models/materials_category_components/entities/reusable/two_dimensional/atomic_layers_unique_repeated.py +1 -1
  13. mat3ra/esse/models/materials_category_components/entities/reusable/two_dimensional/slab_unit_cell.py +428 -15
  14. mat3ra/esse/models/materials_category_components/operations/core/combinations/merge.py +413 -0
  15. mat3ra/esse/models/materials_category_components/operations/core/combinations/stack.py +427 -14
  16. mat3ra/esse/models/materials_category_components/operations/core/combinations/stack_component.py +427 -14
  17. mat3ra/esse/models/properties_directory/non_scalar/phonon_dispersions.py +2 -2
  18. mat3ra/esse/models/properties_directory/non_scalar/phonon_dos.py +2 -2
  19. mat3ra/esse/models/properties_directory/non_scalar/total_energy_contributions.py +50 -50
  20. mat3ra/esse/models/properties_directory/non_scalar/vibrational_spectrum.py +2 -2
  21. mat3ra/esse/models/properties_directory/scalar/reaction_energy_barrier.py +2 -2
  22. mat3ra/esse/models/properties_directory/scalar/surface_energy.py +2 -2
  23. mat3ra/esse/models/properties_directory/scalar/total_energy.py +2 -2
  24. mat3ra/esse/models/properties_directory/scalar/valence_band_offset.py +2 -2
  25. mat3ra/esse/models/properties_directory/scalar/zero_point_energy.py +2 -2
  26. mat3ra/esse/models/properties_directory/structural/molecular_pattern.py +4 -4
  27. {mat3ra_esse-2025.6.5.post0.dist-info → mat3ra_esse-2025.6.30.post0.dist-info}/METADATA +1 -1
  28. {mat3ra_esse-2025.6.5.post0.dist-info → mat3ra_esse-2025.6.30.post0.dist-info}/RECORD +31 -144
  29. mat3ra/esse/models/coordinates_shape_enum.py +0 -15
  30. mat3ra/esse/models/core/abstract/2d_data.py +0 -17
  31. mat3ra/esse/models/core/abstract/2d_plot.py +0 -34
  32. mat3ra/esse/models/core/abstract/3d_grid.py +0 -14
  33. mat3ra/esse/models/core/abstract/3d_tensor.py +0 -19
  34. mat3ra/esse/models/core/abstract/3d_vector_basis.py +0 -15
  35. mat3ra/esse/models/core/abstract/_3d_tensor.py +0 -19
  36. mat3ra/esse/models/core/abstract/_3d_vector_basis.py +0 -15
  37. mat3ra/esse/models/core/abstract/point.py +0 -13
  38. mat3ra/esse/models/core/abstract/vector.py +0 -13
  39. mat3ra/esse/models/core/primitive/1d_data_series.py +0 -13
  40. mat3ra/esse/models/core/primitive/3d_lattice.py +0 -34
  41. mat3ra/esse/models/core/primitive/_3d_lattice.py +0 -34
  42. mat3ra/esse/models/core/reusable/accuracy_level.py +0 -27
  43. mat3ra/esse/models/core/reusable/atomic_strings.py +0 -24
  44. mat3ra/esse/models/core/reusable/coordinate_conditions/cylinder.py +0 -26
  45. mat3ra/esse/models/core/reusable/coordinate_conditions/plane.py +0 -24
  46. mat3ra/esse/models/core/reusable/coordinate_conditions/sphere.py +0 -24
  47. mat3ra/esse/models/core/reusable/coordinate_conditions/triangular_prism.py +0 -27
  48. mat3ra/esse/models/core/reusable/energy_accuracy_levels/__init__.py +0 -3
  49. mat3ra/esse/models/core/reusable/energy_accuracy_levels.py +0 -31
  50. mat3ra/esse/models/enums/__init__.py +0 -3
  51. mat3ra/esse/models/enums/chemical_elements.py +0 -13
  52. mat3ra/esse/models/material/builders/base/__init__.py +0 -3
  53. mat3ra/esse/models/material/builders/base/selector_parameters.py +0 -16
  54. mat3ra/esse/models/material/builders/single_material/two_dimensional/slab/__init__.py +0 -3
  55. mat3ra/esse/models/material/builders/single_material/two_dimensional/slab/builder_parameters.py +0 -28
  56. mat3ra/esse/models/material/builders/single_material/two_dimensional/slab/selector_parameters.py +0 -151
  57. mat3ra/esse/models/material/reusable/__init__.py +0 -3
  58. mat3ra/esse/models/material/reusable/coordinate_conditions/__init__.py +0 -3
  59. mat3ra/esse/models/material/reusable/coordinate_conditions/base.py +0 -21
  60. mat3ra/esse/models/material/reusable/coordinate_conditions/box.py +0 -24
  61. mat3ra/esse/models/material/reusable/coordinate_conditions/cylinder.py +0 -26
  62. mat3ra/esse/models/material/reusable/coordinate_conditions/plane.py +0 -24
  63. mat3ra/esse/models/material/reusable/coordinate_conditions/sphere.py +0 -24
  64. mat3ra/esse/models/material/reusable/coordinate_conditions/triangular_prism.py +0 -27
  65. mat3ra/esse/models/material/reusable/repetitions.py +0 -25
  66. mat3ra/esse/models/material/reusable/slab/__init__.py +0 -3
  67. mat3ra/esse/models/material/reusable/slab/enums/__init__.py +0 -3
  68. mat3ra/esse/models/material/reusable/slab/enums/exposed_face.py +0 -13
  69. mat3ra/esse/models/material/reusable/slab/enums.py +0 -13
  70. mat3ra/esse/models/material/reusable/slab/miller_indices.py +0 -16
  71. mat3ra/esse/models/material/reusable/slab/number_of_layers.py +0 -16
  72. mat3ra/esse/models/material/reusable/slab/slab_configuration_with_termination.py +0 -589
  73. mat3ra/esse/models/material/reusable/slab/slab_with_termination.py +0 -593
  74. mat3ra/esse/models/material/reusable/slab/termination.py +0 -144
  75. mat3ra/esse/models/material/reusable/slab/two_slabs_stack.py +0 -618
  76. mat3ra/esse/models/material/reusable/slab/vacuum.py +0 -16
  77. mat3ra/esse/models/material/reusable/slab_configuration_with_termination.py +0 -712
  78. mat3ra/esse/models/material/reusable/stack/__init__.py +0 -3
  79. mat3ra/esse/models/material/reusable/stack/slab_configuration_with_termination.py +0 -593
  80. mat3ra/esse/models/material/reusable/stack/slab_in_stack.py +0 -720
  81. mat3ra/esse/models/material/reusable/stack/stack_of_slabs.py +0 -737
  82. mat3ra/esse/models/material/reusable/stack/stack_of_two_slabs.py +0 -737
  83. mat3ra/esse/models/material/reusable/supercell/__init__.py +0 -3
  84. mat3ra/esse/models/material/reusable/supercell/supercell_matrix_2d.py +0 -25
  85. mat3ra/esse/models/material/reusable/supercell/supercell_matrix_3d.py +0 -27
  86. mat3ra/esse/models/material/reusable/supercell_matrix_2d.py +0 -25
  87. mat3ra/esse/models/material/reusable/supercell_matrix_3d.py +0 -27
  88. mat3ra/esse/models/materials_category/defects/__init__.py +0 -3
  89. mat3ra/esse/models/materials_category/defects/by_host/two_dimensional/adatom/__init__.py +0 -3
  90. mat3ra/esse/models/materials_category/defects/by_host/two_dimensional/adatom/configuration.py +0 -672
  91. mat3ra/esse/models/materials_category/defects/by_host/two_dimensional/layered/__init__.py +0 -3
  92. mat3ra/esse/models/materials_category/defects/by_host/two_dimensional/layered/configuration.py +0 -549
  93. mat3ra/esse/models/materials_category/defects/by_host/two_dimensional/point/__init__.py +0 -3
  94. mat3ra/esse/models/materials_category/defects/by_host/two_dimensional/point/configuration.py +0 -550
  95. mat3ra/esse/models/materials_category/defects/configuration.py +0 -545
  96. mat3ra/esse/models/materials_category/defects/enums/__init__.py +0 -3
  97. mat3ra/esse/models/materials_category/defects/enums/point_defect_type.py +0 -13
  98. mat3ra/esse/models/materials_category/defects/one_dimensional/terrace/__init__.py +0 -3
  99. mat3ra/esse/models/materials_category/defects/one_dimensional/terrace/configuration.py +0 -563
  100. mat3ra/esse/models/materials_category/defects/two_dimensional/grain_boundary_plane/__init__.py +0 -3
  101. mat3ra/esse/models/materials_category/defects/two_dimensional/grain_boundary_plane/configuration.py +0 -1200
  102. mat3ra/esse/models/materials_category/defects/two_dimensional/island/__init__.py +0 -3
  103. mat3ra/esse/models/materials_category/defects/two_dimensional/island/condition_json.py +0 -28
  104. mat3ra/esse/models/materials_category/defects/two_dimensional/island/configuration.py +0 -564
  105. mat3ra/esse/models/materials_category/defects/zero_dimensional/complex/pair/__init__.py +0 -3
  106. mat3ra/esse/models/materials_category/defects/zero_dimensional/complex/pair/configuration.py +0 -1538
  107. mat3ra/esse/models/materials_category/defects/zero_dimensional/point/__init__.py +0 -3
  108. mat3ra/esse/models/materials_category/defects/zero_dimensional/point/configuration.py +0 -672
  109. mat3ra/esse/models/materials_category/defects/zero_dimensional/point/interstitial/__init__.py +0 -3
  110. mat3ra/esse/models/materials_category/defects/zero_dimensional/point/interstitial/configuration.py +0 -672
  111. mat3ra/esse/models/materials_category/defects/zero_dimensional/point/substitution/__init__.py +0 -3
  112. mat3ra/esse/models/materials_category/defects/zero_dimensional/point/substitution/configuration.py +0 -672
  113. mat3ra/esse/models/materials_category/defects/zero_dimensional/point/vacancy/__init__.py +0 -3
  114. mat3ra/esse/models/materials_category/defects/zero_dimensional/point/vacancy/configuration.py +0 -672
  115. mat3ra/esse/models/materials_category/multi_material/interfaces/__init__.py +0 -3
  116. mat3ra/esse/models/materials_category/multi_material/interfaces/configuration.py +0 -737
  117. mat3ra/esse/models/materials_category/single_material/two_dimensional/slab/__init__.py +0 -3
  118. mat3ra/esse/models/materials_category/single_material/two_dimensional/slab/configuration.py +0 -567
  119. mat3ra/esse/models/methods_directory/physical/psp/file/__init__.py +0 -129
  120. mat3ra/esse/models/methods_directory/physical/psp/file_data_item/__init__.py +0 -111
  121. mat3ra/esse/models/properties_directory/structural/lattice/lattice_bravais.py +0 -74
  122. mat3ra/esse/models/property/base/__init__.py +0 -200
  123. mat3ra/esse/models/property/meta/__init__.py +0 -200
  124. mat3ra/esse/models/property/raw/__init__.py +0 -200
  125. mat3ra/esse/models/property/source/__init__.py +0 -150
  126. mat3ra/esse/models/third_party/db/nist_jarvis/2024_3.13/__init__.py +0 -3
  127. mat3ra/esse/models/third_party/db/nist_jarvis/2024_3.13/atoms.py +0 -41
  128. mat3ra/esse/models/third_party/db/nist_jarvis/2024_3.13/db_entry.py +0 -55
  129. mat3ra/esse/models/third_party/file/applications/espresso/7.2/__init__.py +0 -3
  130. mat3ra/esse/models/third_party/file/applications/espresso/7.2/pw.x/__init__.py +0 -3
  131. mat3ra/esse/models/third_party/file/applications/espresso/7.2/pw.x/atomic_positions.py +0 -51
  132. mat3ra/esse/models/third_party/file/applications/espresso/7.2/pw.x/atomic_species.py +0 -34
  133. mat3ra/esse/models/third_party/file/applications/espresso/7.2/pw.x/cell.py +0 -111
  134. mat3ra/esse/models/third_party/file/applications/espresso/7.2/pw.x/cell_parameters.py +0 -36
  135. mat3ra/esse/models/third_party/file/applications/espresso/7.2/pw.x/control.py +0 -169
  136. mat3ra/esse/models/third_party/file/applications/espresso/7.2/pw.x/electrons.py +0 -139
  137. mat3ra/esse/models/third_party/file/applications/espresso/7.2/pw.x/hubbard.py +0 -194
  138. mat3ra/esse/models/third_party/file/applications/espresso/7.2/pw.x/ions.py +0 -422
  139. mat3ra/esse/models/third_party/file/applications/espresso/7.2/pw.x/k_points.py +0 -73
  140. mat3ra/esse/models/third_party/file/applications/espresso/7.2/pw.x/system.py +0 -841
  141. mat3ra/esse/models/third_party/file/applications/espresso/7.2/pw_x.py +0 -1990
  142. {mat3ra_esse-2025.6.5.post0.dist-info → mat3ra_esse-2025.6.30.post0.dist-info}/WHEEL +0 -0
  143. {mat3ra_esse-2025.6.5.post0.dist-info → mat3ra_esse-2025.6.30.post0.dist-info}/licenses/LICENSE.md +0 -0
  144. {mat3ra_esse-2025.6.5.post0.dist-info → mat3ra_esse-2025.6.30.post0.dist-info}/top_level.txt +0 -0
@@ -1,111 +0,0 @@
1
- # generated by datamodel-codegen:
2
- # filename: methods_directory/physical/psp/file_data_item.json
3
- # version: 0.25.5
4
-
5
- from __future__ import annotations
6
-
7
- from enum import Enum
8
- from typing import List, Optional
9
-
10
- from pydantic import BaseModel, ConfigDict, Field, confloat, conint, constr
11
-
12
- from ..Reusable_schema_for_energy_value_with_unit_corresponding_to_a_specific_accuracy_level__e import (
13
- g,
14
- )
15
-
16
-
17
- class Type(Enum):
18
- us = "us"
19
- nc = "nc"
20
- nc_fr = "nc-fr"
21
- paw = "paw"
22
- coulomb = "coulomb"
23
-
24
-
25
- class ExchangeCorrelation(BaseModel):
26
- approximation: Optional[str] = None
27
- """
28
- DFT approximation
29
- """
30
- functional: Optional[str] = None
31
- """
32
- Exchange correlation functional
33
- """
34
- path: Optional[str] = Field(None, title="category path schema")
35
- """
36
- TODO: Use regex once schema draft version has been updated
37
- """
38
-
39
-
40
- class AtomicOrbitalSchema(BaseModel):
41
- orbitalName: Optional[constr(pattern=r"^[1-7][sSpPdDfF]$")] = None
42
- orbitalIndex: Optional[conint(ge=1)] = None
43
- principalNumber: Optional[conint(ge=1, le=7)] = None
44
- angularMomentum: Optional[conint(ge=0, le=3)] = None
45
- occupation: Optional[confloat(ge=0.0, le=14.0)] = None
46
- """
47
- Shell occupation
48
- """
49
-
50
-
51
- class Name(Enum):
52
- pseudopotential = "pseudopotential"
53
-
54
-
55
- class Cutoffs(BaseModel):
56
- model_config = ConfigDict(
57
- extra="forbid",
58
- )
59
- wavefunction: Optional[List[g.FieldUsedForSuggestedWavefunctionAndChargeDensityCutoffs]] = None
60
- """
61
- Energy cutoff values for wavefunction plane wave expansion.
62
- """
63
- density: Optional[List[g.FieldUsedForSuggestedWavefunctionAndChargeDensityCutoffs]] = None
64
- """
65
- Energy cutoff values for charge density plane wave expansion.
66
- """
67
-
68
-
69
- class FileDataItem(BaseModel):
70
- element: str
71
- """
72
- chemical element
73
- """
74
- hash: Optional[str] = None
75
- """
76
- MD5 hash of the pseudopotential file
77
- """
78
- type: Type
79
- source: str
80
- """
81
- explains where this came from
82
- """
83
- version: Optional[str] = None
84
- """
85
- explains the version of where this came from
86
- """
87
- exchangeCorrelation: ExchangeCorrelation
88
- valenceConfiguration: Optional[List[AtomicOrbitalSchema]] = None
89
- """
90
- contains pseudo orbital information, including orbital names and occupations
91
- """
92
- path: str
93
- """
94
- location of the pseudopotential file on filesystem
95
- """
96
- apps: List[str]
97
- """
98
- The names of the simulation engines that can use this pseudopotential, e.g. espresso
99
- """
100
- filename: Optional[str] = None
101
- """
102
- filename of pseudopotential file on filesystem
103
- """
104
- name: Optional[Name] = None
105
- """
106
- name of the data category
107
- """
108
- cutoffs: Optional[Cutoffs] = None
109
- """
110
- Suggested cutoff values for wave function and charge density.
111
- """
@@ -1,74 +0,0 @@
1
- # generated by datamodel-codegen:
2
- # filename: properties_directory/structural/lattice/lattice_bravais.json
3
- # version: 0.28.5
4
-
5
- from __future__ import annotations
6
-
7
- from enum import Enum
8
- from typing import Optional
9
-
10
- from pydantic import BaseModel, Field
11
-
12
-
13
- class LatticeTypeEnum(Enum):
14
- CUB = "CUB"
15
- BCC = "BCC"
16
- FCC = "FCC"
17
- TET = "TET"
18
- MCL = "MCL"
19
- ORC = "ORC"
20
- ORCC = "ORCC"
21
- ORCF = "ORCF"
22
- ORCI = "ORCI"
23
- HEX = "HEX"
24
- BCT = "BCT"
25
- TRI = "TRI"
26
- MCLC = "MCLC"
27
- RHL = "RHL"
28
-
29
-
30
- class Length(Enum):
31
- angstrom = "angstrom"
32
- bohr = "bohr"
33
-
34
-
35
- class Angle(Enum):
36
- degree = "degree"
37
- radian = "radian"
38
-
39
-
40
- class LatticeUnitsSchema(BaseModel):
41
- length: Optional[Length] = "angstrom"
42
- angle: Optional[Angle] = "degree"
43
-
44
-
45
- class LatticeImplicitSchema(BaseModel):
46
- type: Optional[LatticeTypeEnum] = Field("TRI", title="lattice type enum")
47
- units: Optional[LatticeUnitsSchema] = Field(
48
- default_factory=lambda: LatticeUnitsSchema.model_validate({"length": "angstrom", "angle": "degree"}),
49
- title="Lattice units schema",
50
- )
51
- a: float
52
- """
53
- length of the first lattice vector
54
- """
55
- b: float
56
- """
57
- length of the second lattice vector
58
- """
59
- c: float
60
- """
61
- length of the third lattice vector
62
- """
63
- alpha: float
64
- """
65
- angle between first and second lattice vector
66
- """
67
- beta: float
68
- """
69
- angle between second and third lattice vector
70
- """
71
- gamma: float
72
- """
73
- angle between first and third lattice vector
74
- """
@@ -1,200 +0,0 @@
1
- # generated by datamodel-codegen:
2
- # filename: property/base.json
3
- # version: 0.25.5
4
-
5
- from __future__ import annotations
6
-
7
- from enum import Enum
8
- from typing import Any, Dict, List, Optional
9
-
10
- from pydantic import BaseModel, Field
11
-
12
- from ..The_source_of_a_property import (
13
- field_This_could_be_an_article__a_simulation_on_Exabyte__an_external_simulation__etc,
14
- )
15
-
16
-
17
- class Type(Enum):
18
- experiment = "experiment"
19
-
20
-
21
- class ExperimentAuthorSchema(BaseModel):
22
- first: str
23
- middle: Optional[str] = None
24
- last: str
25
- affiliation: Optional[str] = None
26
-
27
-
28
- class ScalarItem(BaseModel):
29
- value: Optional[str] = None
30
-
31
-
32
- class ConditionSchema(BaseModel):
33
- units: Optional[str] = None
34
- """
35
- condition unit
36
- """
37
- scalar: Optional[List[ScalarItem]] = None
38
- """
39
- array of condition values
40
- """
41
- name: str
42
- """
43
- human-readable name of the condition
44
- """
45
-
46
-
47
- class LocationSchema(BaseModel):
48
- latitude: float
49
- """
50
- location latitude
51
- """
52
- longitude: float
53
- """
54
- location longitude
55
- """
56
-
57
-
58
- class Type5(Enum):
59
- literature = "literature"
60
-
61
-
62
- class PagesSchema(BaseModel):
63
- start: str
64
- end: Optional[str] = None
65
-
66
-
67
- class LiteratureReferenceSchema(BaseModel):
68
- type: Optional[Type5] = None
69
- doi: Optional[str] = None
70
- """
71
- Digital Object Identifier of the reference.
72
- """
73
- isbn: Optional[str] = None
74
- """
75
- International Standard Book Number of the reference.
76
- """
77
- issn: Optional[str] = None
78
- """
79
- International Standard Serial Number of the reference.
80
- """
81
- url: Optional[str] = None
82
- """
83
- Internet address of the reference.
84
- """
85
- title: Optional[str] = None
86
- """
87
- Title of the work.
88
- """
89
- publisher: Optional[str] = None
90
- """
91
- Publisher of the work.
92
- """
93
- journal: Optional[str] = None
94
- """
95
- Journal in which the work appeared.
96
- """
97
- volume: Optional[str] = None
98
- """
99
- Volume of the series in which the work appeared.
100
- """
101
- year: Optional[str] = None
102
- """
103
- Year in which the reference was published.
104
- """
105
- issue: Optional[str] = None
106
- """
107
- Issue of the collection in which the work appeared.
108
- """
109
- pages: Optional[PagesSchema] = Field(None, title="pages schema")
110
- """
111
- Start and end pages of the work.
112
- """
113
- authors: Optional[List[ExperimentAuthorSchema]] = None
114
- """
115
- List of authors of the work.
116
- """
117
- editors: Optional[List[ExperimentAuthorSchema]] = None
118
- """
119
- List of editors of the work.
120
- """
121
- reference: Optional[List[Dict[str, Any]]] = None
122
- """
123
- References cited by the work. Reference objects can nest as deeply as needed. This is useful, for example, when tracking the history of a value referenced in a scholarly article; the top level reference would contain information about where the data was accessed while the nested reference would contain information about where it was originally published.
124
- """
125
-
126
-
127
- class InfoForCharacteristicObtainedByExperiment(BaseModel):
128
- type: Optional[Type] = None
129
- authors: List[ExperimentAuthorSchema]
130
- """
131
- experiment authors
132
- """
133
- title: str
134
- """
135
- experiment title
136
- """
137
- method: str
138
- """
139
- method used in experiment
140
- """
141
- conditions: List[ConditionSchema]
142
- location: Optional[LocationSchema] = Field(None, title="location schema")
143
- timestamp: float
144
- """
145
- epoch time.
146
- """
147
- note: Optional[str] = None
148
- """
149
- Note about experiment
150
- """
151
- references: Optional[List[LiteratureReferenceSchema]] = None
152
- """
153
- references to literature articles
154
- """
155
-
156
-
157
- class SystemTag(Enum):
158
- isRefined = "isRefined"
159
- isBest = "isBest"
160
-
161
-
162
- class SchemaOfBaseMaterialSPreliminaryProperty(BaseModel):
163
- slug: Optional[str] = None
164
- """
165
- property slug, e.g. total_energy
166
- """
167
- group: Optional[str] = None
168
- """
169
- property group, e.g. qe:dft:gga:pbe
170
- """
171
- data: Dict[str, Any]
172
- """
173
- container of the information, specific to each property
174
- """
175
- source: field_This_could_be_an_article__a_simulation_on_Exabyte__an_external_simulation__etc.Field = Field(
176
- ...,
177
- title="The source of a property. This could be an article, a simulation on Exabyte, an external simulation, etc.",
178
- )
179
- exabyteId: Optional[List[str]] = None
180
- """
181
- Id of the corresponding item in the entity bank that this property is obtained for
182
- """
183
- precision: Optional[Dict[str, Any]] = None
184
- count: Optional[float] = None
185
- """
186
- total number of properties among which this property is the best.
187
- """
188
- systemTags: Optional[List[SystemTag]] = None
189
- """
190
- property system tags, marks property system characteristics, values refined or best (could be both)
191
- """
192
- field_id: Optional[str] = Field(None, alias="_id")
193
- """
194
- entity identity
195
- """
196
- systemName: Optional[str] = None
197
- schemaVersion: Optional[str] = "2022.8.16"
198
- """
199
- entity's schema version. Used to distinct between different schemas.
200
- """
@@ -1,200 +0,0 @@
1
- # generated by datamodel-codegen:
2
- # filename: property/meta.json
3
- # version: 0.25.5
4
-
5
- from __future__ import annotations
6
-
7
- from enum import Enum
8
- from typing import Any, Dict, List, Optional
9
-
10
- from pydantic import BaseModel, Field
11
-
12
- from ..The_source_of_a_property import (
13
- field_This_could_be_an_article__a_simulation_on_Exabyte__an_external_simulation__etc,
14
- )
15
-
16
-
17
- class Type(Enum):
18
- experiment = "experiment"
19
-
20
-
21
- class ExperimentAuthorSchema(BaseModel):
22
- first: str
23
- middle: Optional[str] = None
24
- last: str
25
- affiliation: Optional[str] = None
26
-
27
-
28
- class ScalarItem(BaseModel):
29
- value: Optional[str] = None
30
-
31
-
32
- class ConditionSchema(BaseModel):
33
- units: Optional[str] = None
34
- """
35
- condition unit
36
- """
37
- scalar: Optional[List[ScalarItem]] = None
38
- """
39
- array of condition values
40
- """
41
- name: str
42
- """
43
- human-readable name of the condition
44
- """
45
-
46
-
47
- class LocationSchema(BaseModel):
48
- latitude: float
49
- """
50
- location latitude
51
- """
52
- longitude: float
53
- """
54
- location longitude
55
- """
56
-
57
-
58
- class Type56(Enum):
59
- literature = "literature"
60
-
61
-
62
- class PagesSchema(BaseModel):
63
- start: str
64
- end: Optional[str] = None
65
-
66
-
67
- class LiteratureReferenceSchema(BaseModel):
68
- type: Optional[Type56] = None
69
- doi: Optional[str] = None
70
- """
71
- Digital Object Identifier of the reference.
72
- """
73
- isbn: Optional[str] = None
74
- """
75
- International Standard Book Number of the reference.
76
- """
77
- issn: Optional[str] = None
78
- """
79
- International Standard Serial Number of the reference.
80
- """
81
- url: Optional[str] = None
82
- """
83
- Internet address of the reference.
84
- """
85
- title: Optional[str] = None
86
- """
87
- Title of the work.
88
- """
89
- publisher: Optional[str] = None
90
- """
91
- Publisher of the work.
92
- """
93
- journal: Optional[str] = None
94
- """
95
- Journal in which the work appeared.
96
- """
97
- volume: Optional[str] = None
98
- """
99
- Volume of the series in which the work appeared.
100
- """
101
- year: Optional[str] = None
102
- """
103
- Year in which the reference was published.
104
- """
105
- issue: Optional[str] = None
106
- """
107
- Issue of the collection in which the work appeared.
108
- """
109
- pages: Optional[PagesSchema] = Field(None, title="pages schema")
110
- """
111
- Start and end pages of the work.
112
- """
113
- authors: Optional[List[ExperimentAuthorSchema]] = None
114
- """
115
- List of authors of the work.
116
- """
117
- editors: Optional[List[ExperimentAuthorSchema]] = None
118
- """
119
- List of editors of the work.
120
- """
121
- reference: Optional[List[Dict[str, Any]]] = None
122
- """
123
- References cited by the work. Reference objects can nest as deeply as needed. This is useful, for example, when tracking the history of a value referenced in a scholarly article; the top level reference would contain information about where the data was accessed while the nested reference would contain information about where it was originally published.
124
- """
125
-
126
-
127
- class InfoForCharacteristicObtainedByExperiment(BaseModel):
128
- type: Optional[Type] = None
129
- authors: List[ExperimentAuthorSchema]
130
- """
131
- experiment authors
132
- """
133
- title: str
134
- """
135
- experiment title
136
- """
137
- method: str
138
- """
139
- method used in experiment
140
- """
141
- conditions: List[ConditionSchema]
142
- location: Optional[LocationSchema] = Field(None, title="location schema")
143
- timestamp: float
144
- """
145
- epoch time.
146
- """
147
- note: Optional[str] = None
148
- """
149
- Note about experiment
150
- """
151
- references: Optional[List[LiteratureReferenceSchema]] = None
152
- """
153
- references to literature articles
154
- """
155
-
156
-
157
- class SystemTag(Enum):
158
- isRefined = "isRefined"
159
- isBest = "isBest"
160
-
161
-
162
- class SchemaOfMaterialSMetaProperties(BaseModel):
163
- slug: Optional[str] = None
164
- """
165
- property slug, e.g. total_energy
166
- """
167
- group: Optional[str] = None
168
- """
169
- property group, e.g. qe:dft:gga:pbe
170
- """
171
- data: Dict[str, Any]
172
- """
173
- container of the information, specific to each property
174
- """
175
- source: field_This_could_be_an_article__a_simulation_on_Exabyte__an_external_simulation__etc.Field = Field(
176
- ...,
177
- title="The source of a property. This could be an article, a simulation on Exabyte, an external simulation, etc.",
178
- )
179
- exabyteId: Optional[List[str]] = None
180
- """
181
- Id of the corresponding item in the entity bank that this property is obtained for
182
- """
183
- precision: Optional[Dict[str, Any]] = None
184
- count: Optional[float] = None
185
- """
186
- total number of properties among which this property is the best.
187
- """
188
- systemTags: Optional[List[SystemTag]] = None
189
- """
190
- property system tags, marks property system characteristics, values refined or best (could be both)
191
- """
192
- field_id: Optional[str] = Field(None, alias="_id")
193
- """
194
- entity identity
195
- """
196
- systemName: Optional[str] = None
197
- schemaVersion: Optional[str] = "2022.8.16"
198
- """
199
- entity's schema version. Used to distinct between different schemas.
200
- """