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,422 +0,0 @@
1
- # generated by datamodel-codegen:
2
- # filename: 3pse/file/applications/espresso/7.2/pw.x/ions.json
3
- # version: 0.28.5
4
-
5
- from __future__ import annotations
6
-
7
- from enum import Enum
8
- from typing import Optional, Union
9
-
10
- from pydantic import BaseModel, ConfigDict, Field, RootModel
11
-
12
-
13
- class IonPositions(Enum):
14
- default = "default"
15
- from_input = "from_input"
16
-
17
-
18
- class IonVelocities(Enum):
19
- default = "default"
20
- from_input = "from_input"
21
-
22
-
23
- class PotExtrapolation(Enum):
24
- none = "none"
25
- atomic = "atomic"
26
- first_order = "first_order"
27
- second_order = "second_order"
28
-
29
-
30
- class WfcExtrapolation(Enum):
31
- none = "none"
32
- first_order = "first_order"
33
- second_order = "second_order"
34
-
35
-
36
- class IonTemperature(Enum):
37
- rescaling = "rescaling"
38
- rescale_v = "rescale-v"
39
- rescale_T = "rescale-T"
40
- reduce_T = "reduce-T"
41
- berendsen = "berendsen"
42
- andersen = "andersen"
43
- svr = "svr"
44
- initial = "initial"
45
- not_controlled = "not_controlled"
46
-
47
-
48
- class IonDynamics(Enum):
49
- bfgs = "bfgs"
50
- damp = "damp"
51
- fire = "fire"
52
-
53
-
54
- class IonsSchema(BaseModel):
55
- model_config = ConfigDict(
56
- extra="forbid",
57
- )
58
- ion_positions: Optional[IonPositions] = "default"
59
- ion_velocities: Optional[IonVelocities] = "default"
60
- pot_extrapolation: Optional[PotExtrapolation] = "atomic"
61
- """
62
- Used to extrapolate the potential from preceding ionic steps.
63
- """
64
- wfc_extrapolation: Optional[WfcExtrapolation] = "none"
65
- """
66
- Used to extrapolate the wavefunctions from preceding ionic steps.
67
- """
68
- remove_rigid_rot: Optional[bool] = False
69
- """
70
- This keyword is useful when simulating the dynamics and/or the thermodynamics of an isolated system. If set to true the total torque of the internal forces is set to zero by adding new forces that compensate the spurious interaction with the periodic images. This allows for the use of smaller supercells.
71
- """
72
- ion_temperature: Optional[IonTemperature] = "not_controlled"
73
- tempw: Optional[float] = 300
74
- """
75
- Starting temperature (Kelvin) in MD runs target temperature for most thermostats.
76
- """
77
- tolp: Optional[float] = 100
78
- """
79
- Tolerance for velocity rescaling. Velocities are rescaled if the run-averaged and target temperature differ more than tolp.
80
- """
81
- delta_t: Optional[float] = 1
82
- nraise: Optional[int] = 1
83
- refold_pos: Optional[bool] = False
84
- """
85
- This keyword applies only in the case of molecular dynamics or damped dynamics. If true the ions are refolded at each step into the supercell.
86
- """
87
- upscale: Optional[float] = 100
88
- """
89
- Max reduction factor for conv_thr during structural optimization conv_thr is automatically reduced when the relaxation approaches convergence so that forces are still accurate, but conv_thr will not be reduced to less that conv_thr / upscale.
90
- """
91
- bfgs_ndim: Optional[int] = 1
92
- """
93
- Number of old forces and displacements vectors used in the PULAY mixing of the residual vectors obtained on the basis of the inverse hessian matrix given by the BFGS algorithm.
94
- """
95
- trust_radius_max: Optional[float] = 0.8
96
- """
97
- Maximum ionic displacement in the structural relaxation. (bfgs only)
98
- """
99
- trust_radius_min: Optional[float] = 0.001
100
- """
101
- Minimum ionic displacement in the structural relaxation BFGS is reset when trust_radius < trust_radius_min. (bfgs only)
102
- """
103
- trust_radius_ini: Optional[float] = 0.5
104
- """
105
- Initial ionic displacement in the structural relaxation. (bfgs only)
106
- """
107
- w_1: Optional[float] = 0.01
108
- w_2: Optional[float] = 0.5
109
- """
110
- Parameters used in line search based on the Wolfe conditions. (bfgs only)
111
- """
112
- fire_alpha_init: Optional[float] = 0.2
113
- """
114
- Initial value of the alpha mixing factor in the FIRE minimization scheme; recommended values are between 0.1 and 0.3
115
- """
116
- fire_falpha: Optional[float] = 0.99
117
- """
118
- Scaling of the alpha mixing parameter for steps with P > 0;
119
- """
120
- fire_nmin: Optional[int] = 5
121
- """
122
- Minimum number of steps with P > 0 before increase of dt
123
- """
124
- fire_f_inc: Optional[float] = 1.1
125
- """
126
- Factor for increasing dt
127
- """
128
- fire_f_dec: Optional[float] = 0.5
129
- """
130
- Factor for decreasing dt
131
- """
132
- fire_dtmax: Optional[float] = 10
133
- """
134
- Determines the maximum value of dt in the FIRE minimization; dtmax = fire_dtmax*dt
135
- """
136
- ion_dynamics: Optional[IonDynamics] = "bfgs"
137
- """
138
- CASE: calculation == 'relax'
139
- """
140
-
141
-
142
- class IonDynamics1(Enum):
143
- verlet = "verlet"
144
- langevin = "langevin"
145
- langevin_smc = "langevin-smc"
146
-
147
-
148
- class IonsSchema1(BaseModel):
149
- model_config = ConfigDict(
150
- extra="forbid",
151
- )
152
- ion_positions: Optional[IonPositions] = "default"
153
- ion_velocities: Optional[IonVelocities] = "default"
154
- pot_extrapolation: Optional[PotExtrapolation] = "atomic"
155
- """
156
- Used to extrapolate the potential from preceding ionic steps.
157
- """
158
- wfc_extrapolation: Optional[WfcExtrapolation] = "none"
159
- """
160
- Used to extrapolate the wavefunctions from preceding ionic steps.
161
- """
162
- remove_rigid_rot: Optional[bool] = False
163
- """
164
- This keyword is useful when simulating the dynamics and/or the thermodynamics of an isolated system. If set to true the total torque of the internal forces is set to zero by adding new forces that compensate the spurious interaction with the periodic images. This allows for the use of smaller supercells.
165
- """
166
- ion_temperature: Optional[IonTemperature] = "not_controlled"
167
- tempw: Optional[float] = 300
168
- """
169
- Starting temperature (Kelvin) in MD runs target temperature for most thermostats.
170
- """
171
- tolp: Optional[float] = 100
172
- """
173
- Tolerance for velocity rescaling. Velocities are rescaled if the run-averaged and target temperature differ more than tolp.
174
- """
175
- delta_t: Optional[float] = 1
176
- nraise: Optional[int] = 1
177
- refold_pos: Optional[bool] = False
178
- """
179
- This keyword applies only in the case of molecular dynamics or damped dynamics. If true the ions are refolded at each step into the supercell.
180
- """
181
- upscale: Optional[float] = 100
182
- """
183
- Max reduction factor for conv_thr during structural optimization conv_thr is automatically reduced when the relaxation approaches convergence so that forces are still accurate, but conv_thr will not be reduced to less that conv_thr / upscale.
184
- """
185
- bfgs_ndim: Optional[int] = 1
186
- """
187
- Number of old forces and displacements vectors used in the PULAY mixing of the residual vectors obtained on the basis of the inverse hessian matrix given by the BFGS algorithm.
188
- """
189
- trust_radius_max: Optional[float] = 0.8
190
- """
191
- Maximum ionic displacement in the structural relaxation. (bfgs only)
192
- """
193
- trust_radius_min: Optional[float] = 0.001
194
- """
195
- Minimum ionic displacement in the structural relaxation BFGS is reset when trust_radius < trust_radius_min. (bfgs only)
196
- """
197
- trust_radius_ini: Optional[float] = 0.5
198
- """
199
- Initial ionic displacement in the structural relaxation. (bfgs only)
200
- """
201
- w_1: Optional[float] = 0.01
202
- w_2: Optional[float] = 0.5
203
- """
204
- Parameters used in line search based on the Wolfe conditions. (bfgs only)
205
- """
206
- fire_alpha_init: Optional[float] = 0.2
207
- """
208
- Initial value of the alpha mixing factor in the FIRE minimization scheme; recommended values are between 0.1 and 0.3
209
- """
210
- fire_falpha: Optional[float] = 0.99
211
- """
212
- Scaling of the alpha mixing parameter for steps with P > 0;
213
- """
214
- fire_nmin: Optional[int] = 5
215
- """
216
- Minimum number of steps with P > 0 before increase of dt
217
- """
218
- fire_f_inc: Optional[float] = 1.1
219
- """
220
- Factor for increasing dt
221
- """
222
- fire_f_dec: Optional[float] = 0.5
223
- """
224
- Factor for decreasing dt
225
- """
226
- fire_dtmax: Optional[float] = 10
227
- """
228
- Determines the maximum value of dt in the FIRE minimization; dtmax = fire_dtmax*dt
229
- """
230
- ion_dynamics: Optional[IonDynamics1] = "verlet"
231
- """
232
- CASE: calculation == 'md'
233
- """
234
-
235
-
236
- class IonDynamics2(Enum):
237
- bfgs = "bfgs"
238
- damp = "damp"
239
-
240
-
241
- class IonsSchema2(BaseModel):
242
- model_config = ConfigDict(
243
- extra="forbid",
244
- )
245
- ion_positions: Optional[IonPositions] = "default"
246
- ion_velocities: Optional[IonVelocities] = "default"
247
- pot_extrapolation: Optional[PotExtrapolation] = "atomic"
248
- """
249
- Used to extrapolate the potential from preceding ionic steps.
250
- """
251
- wfc_extrapolation: Optional[WfcExtrapolation] = "none"
252
- """
253
- Used to extrapolate the wavefunctions from preceding ionic steps.
254
- """
255
- remove_rigid_rot: Optional[bool] = False
256
- """
257
- This keyword is useful when simulating the dynamics and/or the thermodynamics of an isolated system. If set to true the total torque of the internal forces is set to zero by adding new forces that compensate the spurious interaction with the periodic images. This allows for the use of smaller supercells.
258
- """
259
- ion_temperature: Optional[IonTemperature] = "not_controlled"
260
- tempw: Optional[float] = 300
261
- """
262
- Starting temperature (Kelvin) in MD runs target temperature for most thermostats.
263
- """
264
- tolp: Optional[float] = 100
265
- """
266
- Tolerance for velocity rescaling. Velocities are rescaled if the run-averaged and target temperature differ more than tolp.
267
- """
268
- delta_t: Optional[float] = 1
269
- nraise: Optional[int] = 1
270
- refold_pos: Optional[bool] = False
271
- """
272
- This keyword applies only in the case of molecular dynamics or damped dynamics. If true the ions are refolded at each step into the supercell.
273
- """
274
- upscale: Optional[float] = 100
275
- """
276
- Max reduction factor for conv_thr during structural optimization conv_thr is automatically reduced when the relaxation approaches convergence so that forces are still accurate, but conv_thr will not be reduced to less that conv_thr / upscale.
277
- """
278
- bfgs_ndim: Optional[int] = 1
279
- """
280
- Number of old forces and displacements vectors used in the PULAY mixing of the residual vectors obtained on the basis of the inverse hessian matrix given by the BFGS algorithm.
281
- """
282
- trust_radius_max: Optional[float] = 0.8
283
- """
284
- Maximum ionic displacement in the structural relaxation. (bfgs only)
285
- """
286
- trust_radius_min: Optional[float] = 0.001
287
- """
288
- Minimum ionic displacement in the structural relaxation BFGS is reset when trust_radius < trust_radius_min. (bfgs only)
289
- """
290
- trust_radius_ini: Optional[float] = 0.5
291
- """
292
- Initial ionic displacement in the structural relaxation. (bfgs only)
293
- """
294
- w_1: Optional[float] = 0.01
295
- w_2: Optional[float] = 0.5
296
- """
297
- Parameters used in line search based on the Wolfe conditions. (bfgs only)
298
- """
299
- fire_alpha_init: Optional[float] = 0.2
300
- """
301
- Initial value of the alpha mixing factor in the FIRE minimization scheme; recommended values are between 0.1 and 0.3
302
- """
303
- fire_falpha: Optional[float] = 0.99
304
- """
305
- Scaling of the alpha mixing parameter for steps with P > 0;
306
- """
307
- fire_nmin: Optional[int] = 5
308
- """
309
- Minimum number of steps with P > 0 before increase of dt
310
- """
311
- fire_f_inc: Optional[float] = 1.1
312
- """
313
- Factor for increasing dt
314
- """
315
- fire_f_dec: Optional[float] = 0.5
316
- """
317
- Factor for decreasing dt
318
- """
319
- fire_dtmax: Optional[float] = 10
320
- """
321
- Determines the maximum value of dt in the FIRE minimization; dtmax = fire_dtmax*dt
322
- """
323
- ion_dynamics: Optional[IonDynamics2] = "bfgs"
324
- """
325
- CASE: calculation == 'vc-relax'
326
- """
327
-
328
-
329
- class IonDynamics3(Enum):
330
- beeman = "beeman"
331
-
332
-
333
- class IonsSchema3(BaseModel):
334
- model_config = ConfigDict(
335
- extra="forbid",
336
- )
337
- ion_positions: Optional[IonPositions] = "default"
338
- ion_velocities: Optional[IonVelocities] = "default"
339
- pot_extrapolation: Optional[PotExtrapolation] = "atomic"
340
- """
341
- Used to extrapolate the potential from preceding ionic steps.
342
- """
343
- wfc_extrapolation: Optional[WfcExtrapolation] = "none"
344
- """
345
- Used to extrapolate the wavefunctions from preceding ionic steps.
346
- """
347
- remove_rigid_rot: Optional[bool] = False
348
- """
349
- This keyword is useful when simulating the dynamics and/or the thermodynamics of an isolated system. If set to true the total torque of the internal forces is set to zero by adding new forces that compensate the spurious interaction with the periodic images. This allows for the use of smaller supercells.
350
- """
351
- ion_temperature: Optional[IonTemperature] = "not_controlled"
352
- tempw: Optional[float] = 300
353
- """
354
- Starting temperature (Kelvin) in MD runs target temperature for most thermostats.
355
- """
356
- tolp: Optional[float] = 100
357
- """
358
- Tolerance for velocity rescaling. Velocities are rescaled if the run-averaged and target temperature differ more than tolp.
359
- """
360
- delta_t: Optional[float] = 1
361
- nraise: Optional[int] = 1
362
- refold_pos: Optional[bool] = False
363
- """
364
- This keyword applies only in the case of molecular dynamics or damped dynamics. If true the ions are refolded at each step into the supercell.
365
- """
366
- upscale: Optional[float] = 100
367
- """
368
- Max reduction factor for conv_thr during structural optimization conv_thr is automatically reduced when the relaxation approaches convergence so that forces are still accurate, but conv_thr will not be reduced to less that conv_thr / upscale.
369
- """
370
- bfgs_ndim: Optional[int] = 1
371
- """
372
- Number of old forces and displacements vectors used in the PULAY mixing of the residual vectors obtained on the basis of the inverse hessian matrix given by the BFGS algorithm.
373
- """
374
- trust_radius_max: Optional[float] = 0.8
375
- """
376
- Maximum ionic displacement in the structural relaxation. (bfgs only)
377
- """
378
- trust_radius_min: Optional[float] = 0.001
379
- """
380
- Minimum ionic displacement in the structural relaxation BFGS is reset when trust_radius < trust_radius_min. (bfgs only)
381
- """
382
- trust_radius_ini: Optional[float] = 0.5
383
- """
384
- Initial ionic displacement in the structural relaxation. (bfgs only)
385
- """
386
- w_1: Optional[float] = 0.01
387
- w_2: Optional[float] = 0.5
388
- """
389
- Parameters used in line search based on the Wolfe conditions. (bfgs only)
390
- """
391
- fire_alpha_init: Optional[float] = 0.2
392
- """
393
- Initial value of the alpha mixing factor in the FIRE minimization scheme; recommended values are between 0.1 and 0.3
394
- """
395
- fire_falpha: Optional[float] = 0.99
396
- """
397
- Scaling of the alpha mixing parameter for steps with P > 0;
398
- """
399
- fire_nmin: Optional[int] = 5
400
- """
401
- Minimum number of steps with P > 0 before increase of dt
402
- """
403
- fire_f_inc: Optional[float] = 1.1
404
- """
405
- Factor for increasing dt
406
- """
407
- fire_f_dec: Optional[float] = 0.5
408
- """
409
- Factor for decreasing dt
410
- """
411
- fire_dtmax: Optional[float] = 10
412
- """
413
- Determines the maximum value of dt in the FIRE minimization; dtmax = fire_dtmax*dt
414
- """
415
- ion_dynamics: Optional[IonDynamics3] = "beeman"
416
- """
417
- CASE: calculation == 'vc-md'
418
- """
419
-
420
-
421
- class ESSE(RootModel[Union[IonsSchema, IonsSchema1, IonsSchema2, IonsSchema3]]):
422
- root: Union[IonsSchema, IonsSchema1, IonsSchema2, IonsSchema3] = Field(..., title="ions schema")
@@ -1,73 +0,0 @@
1
- # generated by datamodel-codegen:
2
- # filename: 3pse/file/applications/espresso/7.2/pw.x/k_points.json
3
- # version: 0.28.5
4
-
5
- from __future__ import annotations
6
-
7
- from enum import Enum
8
- from typing import List, Optional, Union
9
-
10
- from pydantic import BaseModel, ConfigDict
11
-
12
-
13
- class CardOption(Enum):
14
- tpiba = "tpiba"
15
- automatic = "automatic"
16
- crystal = "crystal"
17
- gamma = "gamma"
18
- tpiba_b = "tpiba_b"
19
- crystal_b = "crystal_b"
20
- tpiba_c = "tpiba_c"
21
- crystal_c = "crystal_c"
22
-
23
-
24
- class Value(BaseModel):
25
- model_config = ConfigDict(
26
- extra="forbid",
27
- )
28
- nks: Optional[int] = None
29
- """
30
- Number of supplied special k-points.
31
- """
32
- xk_x: Optional[float] = None
33
- xk_y: Optional[float] = None
34
- xk_z: Optional[float] = None
35
- wk: Optional[float] = None
36
-
37
-
38
- class Values(BaseModel):
39
- model_config = ConfigDict(
40
- extra="forbid",
41
- )
42
- nk1: Optional[int] = None
43
- """
44
- Number of supplied special k-points.
45
- """
46
- nk2: Optional[int] = None
47
- """
48
- Number of supplied special k-points.
49
- """
50
- nk3: Optional[int] = None
51
- """
52
- Number of supplied special k-points.
53
- """
54
- sk1: Optional[int] = None
55
- """
56
- Number of supplied special k-points.
57
- """
58
- sk2: Optional[int] = None
59
- """
60
- Number of supplied special k-points.
61
- """
62
- sk3: Optional[int] = None
63
- """
64
- Number of supplied special k-points.
65
- """
66
-
67
-
68
- class KPointsSchema(BaseModel):
69
- model_config = ConfigDict(
70
- extra="forbid",
71
- )
72
- card_option: Optional[CardOption] = None
73
- values: Optional[Union[List[Value], Values]] = None