mat3ra-esse 2025.8.20.post0__py3-none-any.whl → 2025.10.8.post0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of mat3ra-esse might be problematic. Click here for more details.
- mat3ra/esse/data/examples.py +1 -1
- mat3ra/esse/data/schemas.py +1 -1
- mat3ra/esse/models/core/abstract/_2d_data.py +2 -2
- mat3ra/esse/models/core/abstract/_2d_plot.py +2 -6
- mat3ra/esse/models/core/primitive/_1d_data_series.py +3 -3
- mat3ra/esse/models/core/primitive/axis_3d_names_enum.py +13 -0
- mat3ra/esse/models/core/reference/__init__.py +8 -8
- mat3ra/esse/models/core/reference/exabyte.py +2 -8
- mat3ra/esse/models/core/reference/experiment/__init__.py +2 -2
- mat3ra/esse/models/core/reusable/coordinate_conditions/__init__.py +1 -78
- mat3ra/esse/models/core/reusable/coordinate_conditions/index.py +80 -0
- mat3ra/esse/models/core/reusable/hubbard_parameters.py +48 -0
- mat3ra/esse/models/core/reusable/kpoint.py +16 -0
- mat3ra/esse/models/core/reusable/repetition.py +14 -0
- mat3ra/esse/models/definitions/material.py +13 -0
- mat3ra/esse/models/element.py +10 -8
- mat3ra/esse/models/job/__init__.py +62 -62
- mat3ra/esse/models/material/__init__.py +12 -12
- mat3ra/esse/models/materials_category/compound_pristine_structures/two_dimensional/interface/configuration.py +80 -80
- mat3ra/esse/models/materials_category/defective_structures/one_dimensional/grain_boundary_linear/configuration.py +80 -80
- mat3ra/esse/models/materials_category/defective_structures/two_dimensional/adatom/configuration.py +35 -35
- mat3ra/esse/models/materials_category/defective_structures/two_dimensional/grain_boundary_planar/configuration.py +80 -80
- mat3ra/esse/models/materials_category/defective_structures/two_dimensional/island/configuration.py +53 -53
- mat3ra/esse/models/materials_category/defective_structures/two_dimensional/terrace/configuration.py +53 -53
- mat3ra/esse/models/materials_category/defective_structures/zero_dimensional/point_defect/interstitial.py +29 -29
- mat3ra/esse/models/materials_category/defective_structures/zero_dimensional/point_defect/substitutional.py +32 -32
- mat3ra/esse/models/materials_category/defective_structures/zero_dimensional/point_defect/vacancy.py +12 -12
- mat3ra/esse/models/materials_category/pristine_structures/three_dimensional/ideal_crystal.py +12 -12
- mat3ra/esse/models/materials_category/pristine_structures/two_dimensional/nanoribbon.py +52 -52
- mat3ra/esse/models/materials_category/pristine_structures/two_dimensional/nanotape.py +32 -32
- mat3ra/esse/models/materials_category/pristine_structures/two_dimensional/slab.py +32 -32
- mat3ra/esse/models/materials_category/pristine_structures/two_dimensional/slab_strained_supercell.py +32 -32
- mat3ra/esse/models/materials_category/pristine_structures/two_dimensional/slab_strained_supercell_with_gap.py +1151 -0
- mat3ra/esse/models/materials_category/processed_structures/two_dimensional/passivation/configuration.py +17 -17
- mat3ra/esse/models/materials_category_components/entities/auxiliary/zero_dimensional/crystal_site.py +8 -8
- mat3ra/esse/models/materials_category_components/entities/auxiliary/zero_dimensional/point_defect_site.py +12 -12
- mat3ra/esse/models/materials_category_components/entities/auxiliary/zero_dimensional/void_region.py +12 -12
- mat3ra/esse/models/materials_category_components/entities/core/three_dimensional/crystal.py +8 -8
- mat3ra/esse/models/materials_category_components/entities/core/two_dimensional/vacuum.py +12 -12
- mat3ra/esse/models/materials_category_components/entities/reusable/one_dimensional/crystal_lattice_lines.py +8 -8
- mat3ra/esse/models/materials_category_components/entities/reusable/one_dimensional/crystal_lattice_lines_unique_repeated.py +8 -8
- mat3ra/esse/models/materials_category_components/entities/reusable/three_dimensional/crystal_lattice_base.py +8 -8
- mat3ra/esse/models/materials_category_components/entities/reusable/three_dimensional/strained_non_uniform.py +12 -12
- mat3ra/esse/models/materials_category_components/entities/reusable/three_dimensional/strained_uniform.py +12 -12
- mat3ra/esse/models/materials_category_components/entities/reusable/three_dimensional/supercell.py +12 -12
- mat3ra/esse/models/materials_category_components/entities/reusable/two_dimensional/crystal_lattice_planes.py +8 -8
- mat3ra/esse/models/materials_category_components/entities/reusable/two_dimensional/slab_stack_configuration.py +52 -52
- mat3ra/esse/models/materials_category_components/operations/core/modifications/perturb.py +12 -12
- mat3ra/esse/models/methods_directory/physical/psp/__init__.py +2 -2
- mat3ra/esse/models/methods_directory/physical/psp/file.py +2 -2
- mat3ra/esse/models/methods_directory/physical/psp/file_data_item.py +2 -2
- mat3ra/esse/models/properties_directory/derived_properties.py +6 -6
- mat3ra/esse/models/properties_directory/elemental/atomic_radius.py +1 -1
- mat3ra/esse/models/properties_directory/elemental/electronegativity.py +1 -2
- mat3ra/esse/models/properties_directory/elemental/ionization_potential.py +3 -4
- mat3ra/esse/models/properties_directory/jupyter_notebook_endpoint.py +20 -0
- mat3ra/esse/models/properties_directory/non_scalar/average_potential_profile.py +4 -8
- mat3ra/esse/models/properties_directory/non_scalar/band_gaps.py +2 -2
- mat3ra/esse/models/properties_directory/non_scalar/band_structure.py +5 -9
- mat3ra/esse/models/properties_directory/non_scalar/charge_density_profile.py +4 -8
- mat3ra/esse/models/properties_directory/non_scalar/density_of_states.py +5 -8
- mat3ra/esse/models/properties_directory/non_scalar/dielectric_tensor.py +2 -2
- mat3ra/esse/models/properties_directory/non_scalar/file_content.py +2 -2
- mat3ra/esse/models/properties_directory/non_scalar/final_structure.py +22 -0
- mat3ra/esse/models/properties_directory/non_scalar/hubbard_u.py +4 -4
- mat3ra/esse/models/properties_directory/non_scalar/hubbard_v.py +3 -4
- mat3ra/esse/models/properties_directory/non_scalar/hubbard_v_nn.py +3 -4
- mat3ra/esse/models/properties_directory/non_scalar/is_relaxed.py +22 -0
- mat3ra/esse/models/properties_directory/non_scalar/phonon_dispersions.py +10 -14
- mat3ra/esse/models/properties_directory/non_scalar/phonon_dos.py +10 -14
- mat3ra/esse/models/properties_directory/non_scalar/potential_profile.py +8 -12
- mat3ra/esse/models/properties_directory/non_scalar/reaction_energy_profile.py +8 -12
- mat3ra/esse/models/properties_directory/non_scalar/stress_tensor.py +5 -7
- mat3ra/esse/models/properties_directory/non_scalar/total_energy_contributions.py +64 -51
- mat3ra/esse/models/properties_directory/non_scalar/vibrational_spectrum.py +10 -14
- mat3ra/esse/models/properties_directory/non_scalar/workflow.py +2234 -0
- mat3ra/esse/models/properties_directory/reusable/__init__.py +3 -0
- mat3ra/esse/models/properties_directory/reusable/hubbard_parameters.py +48 -0
- mat3ra/esse/models/properties_directory/scalar/electron_affinity.py +1 -1
- mat3ra/esse/models/properties_directory/scalar/fermi_energy.py +1 -1
- mat3ra/esse/models/properties_directory/scalar/formation_energy.py +1 -1
- mat3ra/esse/models/properties_directory/scalar/ionization_potential.py +3 -3
- mat3ra/esse/models/properties_directory/scalar/pressure.py +3 -4
- mat3ra/esse/models/properties_directory/scalar/reaction_energy_barrier.py +3 -3
- mat3ra/esse/models/properties_directory/scalar/surface_energy.py +3 -3
- mat3ra/esse/models/properties_directory/scalar/total_energy.py +3 -3
- mat3ra/esse/models/properties_directory/scalar/total_force.py +3 -4
- mat3ra/esse/models/properties_directory/scalar/valence_band_offset.py +3 -3
- mat3ra/esse/models/properties_directory/scalar/zero_point_energy.py +3 -3
- mat3ra/esse/models/properties_directory/structural/atomic_forces.py +5 -5
- mat3ra/esse/models/properties_directory/structural/basis/atomic_constraints_property.py +3 -3
- mat3ra/esse/models/properties_directory/structural/basis/boundary_conditions.py +30 -0
- mat3ra/esse/models/properties_directory/structural/basis/predicted_properties.py +82 -0
- mat3ra/esse/models/properties_directory/structural/lattice/units/__init__.py +23 -1
- mat3ra/esse/models/properties_directory/structural/magnetic_moments.py +5 -5
- mat3ra/esse/models/properties_directory/structural/molecular_pattern.py +5 -5
- mat3ra/esse/models/properties_directory/structural/patterns/functional_group.py +1 -1
- mat3ra/esse/models/properties_directory/structural/patterns/ring.py +1 -1
- mat3ra/esse/models/properties_directory/structural/patterns/special_bond.py +1 -1
- mat3ra/esse/models/properties_directory/workflow/convergence/electronic.py +4 -4
- mat3ra/esse/models/properties_directory/workflow/convergence/ionic.py +6 -6
- mat3ra/esse/models/property/base.py +1492 -14
- mat3ra/esse/models/property/holder.py +3568 -0
- mat3ra/esse/models/property/meta_holder/Reusable_schema_for_energy_value_with_unit_corresponding_to_a_specific_accuracy_level__e/__init__.py +3 -0
- mat3ra/esse/models/property/meta_holder/Reusable_schema_for_energy_value_with_unit_corresponding_to_a_specific_accuracy_level__e/g.py +31 -0
- mat3ra/esse/models/property/meta_holder.py +140 -0
- mat3ra/esse/models/property/proto_holder.py +86 -0
- mat3ra/esse/models/property/raw.py +27 -11
- mat3ra/esse/models/property/source.py +26 -3
- mat3ra/esse/models/workflow/__init__.py +54 -54
- mat3ra/esse/models/workflow/base_flow.py +4 -4
- mat3ra/esse/models/workflow/subworkflow/__init__.py +13 -13
- mat3ra/esse/models/workflow/subworkflow/unit.py +10 -10
- mat3ra/esse/models/workflow/unit/__init__.py +12 -12
- mat3ra/esse/models/workflow/unit/io/__init__.py +4 -4
- mat3ra/esse/models/workflow/unit/io/db.py +2 -2
- mat3ra/esse/models/workflow/unit/io/object_storage.py +1 -1
- {mat3ra_esse-2025.8.20.post0.dist-info → mat3ra_esse-2025.10.8.post0.dist-info}/METADATA +1 -1
- {mat3ra_esse-2025.8.20.post0.dist-info → mat3ra_esse-2025.10.8.post0.dist-info}/RECORD +122 -103
- mat3ra/esse/models/property/meta.py +0 -200
- {mat3ra_esse-2025.8.20.post0.dist-info → mat3ra_esse-2025.10.8.post0.dist-info}/WHEEL +0 -0
- {mat3ra_esse-2025.8.20.post0.dist-info → mat3ra_esse-2025.10.8.post0.dist-info}/licenses/LICENSE.md +0 -0
- {mat3ra_esse-2025.8.20.post0.dist-info → mat3ra_esse-2025.10.8.post0.dist-info}/top_level.txt +0 -0
|
@@ -0,0 +1,3568 @@
|
|
|
1
|
+
# generated by datamodel-codegen:
|
|
2
|
+
# filename: property/holder.json
|
|
3
|
+
# version: 0.28.5
|
|
4
|
+
|
|
5
|
+
from __future__ import annotations
|
|
6
|
+
|
|
7
|
+
from enum import Enum
|
|
8
|
+
from typing import Any, Dict, List, Literal, Optional, Union
|
|
9
|
+
|
|
10
|
+
from pydantic import BaseModel, ConfigDict, Field, RootModel, conint, constr
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
class Name(Enum):
|
|
14
|
+
valence_band_offset = "valence_band_offset"
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
class Units(Enum):
|
|
18
|
+
kJ_mol = "kJ/mol"
|
|
19
|
+
eV = "eV"
|
|
20
|
+
J_mol = "J/mol"
|
|
21
|
+
hartree = "hartree"
|
|
22
|
+
cm_1 = "cm-1"
|
|
23
|
+
Ry = "Ry"
|
|
24
|
+
eV_atom = "eV/atom"
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
class Units192(Enum):
|
|
28
|
+
eV_A_2 = "eV/A^2"
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
class ValenceBandOffsetPropertySchema(BaseModel):
|
|
32
|
+
name: Literal["0#-datamodel-code-generator-#-object-#-special-#"]
|
|
33
|
+
units: Union[Units, Units192]
|
|
34
|
+
value: float
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
class Name476(Enum):
|
|
38
|
+
zero_point_energy = "zero_point_energy"
|
|
39
|
+
|
|
40
|
+
|
|
41
|
+
class Units193(Enum):
|
|
42
|
+
kJ_mol = "kJ/mol"
|
|
43
|
+
eV = "eV"
|
|
44
|
+
J_mol = "J/mol"
|
|
45
|
+
hartree = "hartree"
|
|
46
|
+
cm_1 = "cm-1"
|
|
47
|
+
Ry = "Ry"
|
|
48
|
+
eV_atom = "eV/atom"
|
|
49
|
+
|
|
50
|
+
|
|
51
|
+
class Units194(Enum):
|
|
52
|
+
eV_A_2 = "eV/A^2"
|
|
53
|
+
|
|
54
|
+
|
|
55
|
+
class ZeroPointEnergyPropertySchema(BaseModel):
|
|
56
|
+
name: Literal["1#-datamodel-code-generator-#-object-#-special-#"]
|
|
57
|
+
units: Union[Units193, Units194]
|
|
58
|
+
value: float
|
|
59
|
+
|
|
60
|
+
|
|
61
|
+
class Name477(Enum):
|
|
62
|
+
pressure = "pressure"
|
|
63
|
+
|
|
64
|
+
|
|
65
|
+
class Units195(Enum):
|
|
66
|
+
kbar = "kbar"
|
|
67
|
+
pa = "pa"
|
|
68
|
+
|
|
69
|
+
|
|
70
|
+
class PressurePropertySchema(BaseModel):
|
|
71
|
+
name: Literal["2#-datamodel-code-generator-#-object-#-special-#"]
|
|
72
|
+
units: Units195
|
|
73
|
+
value: float
|
|
74
|
+
|
|
75
|
+
|
|
76
|
+
class Name478(Enum):
|
|
77
|
+
reaction_energy_barrier = "reaction_energy_barrier"
|
|
78
|
+
|
|
79
|
+
|
|
80
|
+
class Units196(Enum):
|
|
81
|
+
kJ_mol = "kJ/mol"
|
|
82
|
+
eV = "eV"
|
|
83
|
+
J_mol = "J/mol"
|
|
84
|
+
hartree = "hartree"
|
|
85
|
+
cm_1 = "cm-1"
|
|
86
|
+
Ry = "Ry"
|
|
87
|
+
eV_atom = "eV/atom"
|
|
88
|
+
|
|
89
|
+
|
|
90
|
+
class Units197(Enum):
|
|
91
|
+
eV_A_2 = "eV/A^2"
|
|
92
|
+
|
|
93
|
+
|
|
94
|
+
class ReactionEnergyBarrierPropertySchema(BaseModel):
|
|
95
|
+
name: Literal["3#-datamodel-code-generator-#-object-#-special-#"]
|
|
96
|
+
units: Union[Units196, Units197]
|
|
97
|
+
value: float
|
|
98
|
+
|
|
99
|
+
|
|
100
|
+
class Name479(Enum):
|
|
101
|
+
surface_energy = "surface_energy"
|
|
102
|
+
|
|
103
|
+
|
|
104
|
+
class Units198(Enum):
|
|
105
|
+
kJ_mol = "kJ/mol"
|
|
106
|
+
eV = "eV"
|
|
107
|
+
J_mol = "J/mol"
|
|
108
|
+
hartree = "hartree"
|
|
109
|
+
cm_1 = "cm-1"
|
|
110
|
+
Ry = "Ry"
|
|
111
|
+
eV_atom = "eV/atom"
|
|
112
|
+
|
|
113
|
+
|
|
114
|
+
class Units199(Enum):
|
|
115
|
+
eV_A_2 = "eV/A^2"
|
|
116
|
+
|
|
117
|
+
|
|
118
|
+
class SurfaceEnergyPropertySchema(BaseModel):
|
|
119
|
+
name: Literal["4#-datamodel-code-generator-#-object-#-special-#"]
|
|
120
|
+
units: Union[Units198, Units199]
|
|
121
|
+
value: float
|
|
122
|
+
|
|
123
|
+
|
|
124
|
+
class Name480(Enum):
|
|
125
|
+
total_energy = "total_energy"
|
|
126
|
+
|
|
127
|
+
|
|
128
|
+
class Units200(Enum):
|
|
129
|
+
kJ_mol = "kJ/mol"
|
|
130
|
+
eV = "eV"
|
|
131
|
+
J_mol = "J/mol"
|
|
132
|
+
hartree = "hartree"
|
|
133
|
+
cm_1 = "cm-1"
|
|
134
|
+
Ry = "Ry"
|
|
135
|
+
eV_atom = "eV/atom"
|
|
136
|
+
|
|
137
|
+
|
|
138
|
+
class Units201(Enum):
|
|
139
|
+
eV_A_2 = "eV/A^2"
|
|
140
|
+
|
|
141
|
+
|
|
142
|
+
class TotalEnergyPropertySchema(BaseModel):
|
|
143
|
+
name: Literal["5#-datamodel-code-generator-#-object-#-special-#"]
|
|
144
|
+
units: Union[Units200, Units201]
|
|
145
|
+
value: float
|
|
146
|
+
|
|
147
|
+
|
|
148
|
+
class Name481(Enum):
|
|
149
|
+
total_force = "total_force"
|
|
150
|
+
|
|
151
|
+
|
|
152
|
+
class Units202(Enum):
|
|
153
|
+
eV_bohr = "eV/bohr"
|
|
154
|
+
eV_angstrom = "eV/angstrom"
|
|
155
|
+
Ry_a_u_ = "Ry/a.u."
|
|
156
|
+
newton = "newton"
|
|
157
|
+
kg_m_s_2 = "kg*m/s^2"
|
|
158
|
+
eV_a_u_ = "eV/a.u."
|
|
159
|
+
|
|
160
|
+
|
|
161
|
+
class TotalForcesPropertySchema(BaseModel):
|
|
162
|
+
name: Literal["6#-datamodel-code-generator-#-object-#-special-#"]
|
|
163
|
+
units: Units202
|
|
164
|
+
value: float
|
|
165
|
+
|
|
166
|
+
|
|
167
|
+
class Name482(Enum):
|
|
168
|
+
fermi_energy = "fermi_energy"
|
|
169
|
+
|
|
170
|
+
|
|
171
|
+
class Units203(Enum):
|
|
172
|
+
kJ_mol = "kJ/mol"
|
|
173
|
+
eV = "eV"
|
|
174
|
+
J_mol = "J/mol"
|
|
175
|
+
hartree = "hartree"
|
|
176
|
+
cm_1 = "cm-1"
|
|
177
|
+
Ry = "Ry"
|
|
178
|
+
eV_atom = "eV/atom"
|
|
179
|
+
|
|
180
|
+
|
|
181
|
+
class Units204(Enum):
|
|
182
|
+
eV_A_2 = "eV/A^2"
|
|
183
|
+
|
|
184
|
+
|
|
185
|
+
class FermiEnergyPropertySchema(BaseModel):
|
|
186
|
+
name: Literal["7#-datamodel-code-generator-#-object-#-special-#"]
|
|
187
|
+
units: Union[Units203, Units204]
|
|
188
|
+
value: float
|
|
189
|
+
|
|
190
|
+
|
|
191
|
+
class Name483(Enum):
|
|
192
|
+
ionization_potential = "ionization_potential"
|
|
193
|
+
|
|
194
|
+
|
|
195
|
+
class Units205(Enum):
|
|
196
|
+
kJ_mol = "kJ/mol"
|
|
197
|
+
eV = "eV"
|
|
198
|
+
J_mol = "J/mol"
|
|
199
|
+
hartree = "hartree"
|
|
200
|
+
cm_1 = "cm-1"
|
|
201
|
+
Ry = "Ry"
|
|
202
|
+
eV_atom = "eV/atom"
|
|
203
|
+
|
|
204
|
+
|
|
205
|
+
class Units206(Enum):
|
|
206
|
+
eV_A_2 = "eV/A^2"
|
|
207
|
+
|
|
208
|
+
|
|
209
|
+
class IonizationPotentialScalarPropertySchema(BaseModel):
|
|
210
|
+
name: Literal["8#-datamodel-code-generator-#-object-#-special-#"]
|
|
211
|
+
units: Union[Units205, Units206]
|
|
212
|
+
value: float
|
|
213
|
+
|
|
214
|
+
|
|
215
|
+
class ArrayOf3NumberElementsSchema(RootModel[List[float]]):
|
|
216
|
+
root: List[float] = Field(..., title="array of 3 number elements schema")
|
|
217
|
+
|
|
218
|
+
|
|
219
|
+
class Name484(Enum):
|
|
220
|
+
stress_tensor = "stress_tensor"
|
|
221
|
+
|
|
222
|
+
|
|
223
|
+
class Units207(Enum):
|
|
224
|
+
kbar = "kbar"
|
|
225
|
+
pa = "pa"
|
|
226
|
+
|
|
227
|
+
|
|
228
|
+
class StressTensorPropertySchema(BaseModel):
|
|
229
|
+
value: List[ArrayOf3NumberElementsSchema] = Field(..., max_length=3, min_length=3, title="matrix 3x3 schema")
|
|
230
|
+
name: Literal["9#-datamodel-code-generator-#-object-#-special-#"]
|
|
231
|
+
units: Units207
|
|
232
|
+
|
|
233
|
+
|
|
234
|
+
class Name485(Enum):
|
|
235
|
+
band_gaps = "band_gaps"
|
|
236
|
+
|
|
237
|
+
|
|
238
|
+
class Type(Enum):
|
|
239
|
+
direct = "direct"
|
|
240
|
+
indirect = "indirect"
|
|
241
|
+
|
|
242
|
+
|
|
243
|
+
class Units208(Enum):
|
|
244
|
+
kJ_mol = "kJ/mol"
|
|
245
|
+
eV = "eV"
|
|
246
|
+
J_mol = "J/mol"
|
|
247
|
+
hartree = "hartree"
|
|
248
|
+
cm_1 = "cm-1"
|
|
249
|
+
Ry = "Ry"
|
|
250
|
+
eV_atom = "eV/atom"
|
|
251
|
+
|
|
252
|
+
|
|
253
|
+
class BandGapSchema(BaseModel):
|
|
254
|
+
kpointConduction: Optional[List[float]] = Field(None, max_length=3, min_length=3, title="kpoint schema")
|
|
255
|
+
"""
|
|
256
|
+
A k-point is a point in reciprocal space of a crystal.
|
|
257
|
+
"""
|
|
258
|
+
kpointValence: Optional[List[float]] = Field(None, max_length=3, min_length=3, title="kpoint schema")
|
|
259
|
+
"""
|
|
260
|
+
A k-point is a point in reciprocal space of a crystal.
|
|
261
|
+
"""
|
|
262
|
+
eigenvalueConduction: Optional[float] = None
|
|
263
|
+
"""
|
|
264
|
+
eigenvalue at k-point in conduction band
|
|
265
|
+
"""
|
|
266
|
+
eigenvalueValence: Optional[float] = None
|
|
267
|
+
"""
|
|
268
|
+
eigenvalue at k-point in valence band
|
|
269
|
+
"""
|
|
270
|
+
spin: Optional[float] = None
|
|
271
|
+
type: Type
|
|
272
|
+
units: Optional[Units208] = None
|
|
273
|
+
value: float
|
|
274
|
+
|
|
275
|
+
|
|
276
|
+
class Eigenvalue(BaseModel):
|
|
277
|
+
spin: Optional[float] = None
|
|
278
|
+
energies: Optional[List] = None
|
|
279
|
+
occupations: Optional[List] = None
|
|
280
|
+
|
|
281
|
+
|
|
282
|
+
class Eigenvalue2(BaseModel):
|
|
283
|
+
kpoint: Optional[List[float]] = Field(None, max_length=3, min_length=3, title="kpoint schema")
|
|
284
|
+
"""
|
|
285
|
+
A k-point is a point in reciprocal space of a crystal.
|
|
286
|
+
"""
|
|
287
|
+
weight: Optional[float] = None
|
|
288
|
+
eigenvalues: Optional[List[Eigenvalue]] = None
|
|
289
|
+
|
|
290
|
+
|
|
291
|
+
class BandGapsPropertySchema(BaseModel):
|
|
292
|
+
name: Literal["10#-datamodel-code-generator-#-object-#-special-#"]
|
|
293
|
+
values: List[BandGapSchema]
|
|
294
|
+
eigenvalues: Optional[List[Eigenvalue2]] = None
|
|
295
|
+
|
|
296
|
+
|
|
297
|
+
class Label(Enum):
|
|
298
|
+
kpoints = "kpoints"
|
|
299
|
+
|
|
300
|
+
|
|
301
|
+
class Units209(Enum):
|
|
302
|
+
crystal = "crystal"
|
|
303
|
+
cartesian = "cartesian"
|
|
304
|
+
|
|
305
|
+
|
|
306
|
+
class AxisSchema(BaseModel):
|
|
307
|
+
label: Label
|
|
308
|
+
"""
|
|
309
|
+
label of an axis object
|
|
310
|
+
"""
|
|
311
|
+
units: Optional[Units209] = "crystal"
|
|
312
|
+
"""
|
|
313
|
+
units for an axis
|
|
314
|
+
"""
|
|
315
|
+
|
|
316
|
+
|
|
317
|
+
class Label9(Enum):
|
|
318
|
+
energy = "energy"
|
|
319
|
+
|
|
320
|
+
|
|
321
|
+
class Units210(Enum):
|
|
322
|
+
kJ_mol = "kJ/mol"
|
|
323
|
+
eV = "eV"
|
|
324
|
+
J_mol = "J/mol"
|
|
325
|
+
hartree = "hartree"
|
|
326
|
+
cm_1 = "cm-1"
|
|
327
|
+
Ry = "Ry"
|
|
328
|
+
eV_atom = "eV/atom"
|
|
329
|
+
|
|
330
|
+
|
|
331
|
+
class AxisSchema12(BaseModel):
|
|
332
|
+
label: Label9
|
|
333
|
+
"""
|
|
334
|
+
label of an axis object
|
|
335
|
+
"""
|
|
336
|
+
units: Optional[Units210] = None
|
|
337
|
+
"""
|
|
338
|
+
units for an axis
|
|
339
|
+
"""
|
|
340
|
+
|
|
341
|
+
|
|
342
|
+
class Name486(Enum):
|
|
343
|
+
band_structure = "band_structure"
|
|
344
|
+
|
|
345
|
+
|
|
346
|
+
class SpinEnum(Enum):
|
|
347
|
+
number_0_5 = 0.5
|
|
348
|
+
number__0_5 = -0.5
|
|
349
|
+
|
|
350
|
+
|
|
351
|
+
class BandStructurePropertySchema(BaseModel):
|
|
352
|
+
xAxis: AxisSchema = Field(..., title="axis schema")
|
|
353
|
+
yAxis: AxisSchema12 = Field(..., title="axis schema")
|
|
354
|
+
name: Literal["11#-datamodel-code-generator-#-object-#-special-#"]
|
|
355
|
+
spin: List[SpinEnum]
|
|
356
|
+
"""
|
|
357
|
+
spin of each band
|
|
358
|
+
"""
|
|
359
|
+
xDataArray: List[Union[float, List[float]]]
|
|
360
|
+
"""
|
|
361
|
+
array containing values of x Axis
|
|
362
|
+
"""
|
|
363
|
+
yDataSeries: List[List[float]] = Field(..., title="1 dimension data series schema")
|
|
364
|
+
|
|
365
|
+
|
|
366
|
+
class Label10(Enum):
|
|
367
|
+
qpoints = "qpoints"
|
|
368
|
+
|
|
369
|
+
|
|
370
|
+
class Units211(Enum):
|
|
371
|
+
crystal = "crystal"
|
|
372
|
+
cartesian = "cartesian"
|
|
373
|
+
|
|
374
|
+
|
|
375
|
+
class AxisSchema13(BaseModel):
|
|
376
|
+
label: Label10
|
|
377
|
+
"""
|
|
378
|
+
label of an axis object
|
|
379
|
+
"""
|
|
380
|
+
units: Optional[Units211] = "crystal"
|
|
381
|
+
"""
|
|
382
|
+
units for an axis
|
|
383
|
+
"""
|
|
384
|
+
|
|
385
|
+
|
|
386
|
+
class Label11(Enum):
|
|
387
|
+
frequency = "frequency"
|
|
388
|
+
|
|
389
|
+
|
|
390
|
+
class Units212(Enum):
|
|
391
|
+
cm_1 = "cm-1"
|
|
392
|
+
THz = "THz"
|
|
393
|
+
meV = "meV"
|
|
394
|
+
|
|
395
|
+
|
|
396
|
+
class AxisSchema14(BaseModel):
|
|
397
|
+
label: Label11
|
|
398
|
+
"""
|
|
399
|
+
label of an axis object
|
|
400
|
+
"""
|
|
401
|
+
units: Optional[Units212] = None
|
|
402
|
+
"""
|
|
403
|
+
units for an axis
|
|
404
|
+
"""
|
|
405
|
+
|
|
406
|
+
|
|
407
|
+
class Name487(Enum):
|
|
408
|
+
phonon_dispersions = "phonon_dispersions"
|
|
409
|
+
|
|
410
|
+
|
|
411
|
+
class PhononBandStructurePropertySchema(BaseModel):
|
|
412
|
+
xAxis: AxisSchema13 = Field(..., title="axis schema")
|
|
413
|
+
yAxis: AxisSchema14 = Field(..., title="axis schema")
|
|
414
|
+
name: Literal["12#-datamodel-code-generator-#-object-#-special-#"]
|
|
415
|
+
xDataArray: List[Union[float, List[float]]]
|
|
416
|
+
"""
|
|
417
|
+
array containing values of x Axis
|
|
418
|
+
"""
|
|
419
|
+
yDataSeries: List[List[float]] = Field(..., title="1 dimension data series schema")
|
|
420
|
+
|
|
421
|
+
|
|
422
|
+
class Name488(Enum):
|
|
423
|
+
temperature_entropy = "temperature_entropy"
|
|
424
|
+
|
|
425
|
+
|
|
426
|
+
class ScalarSchema(BaseModel):
|
|
427
|
+
name: Optional[Name488] = None
|
|
428
|
+
value: float
|
|
429
|
+
|
|
430
|
+
|
|
431
|
+
class Name489(Enum):
|
|
432
|
+
harris_foulkes = "harris_foulkes"
|
|
433
|
+
|
|
434
|
+
|
|
435
|
+
class ScalarSchema58(BaseModel):
|
|
436
|
+
name: Optional[Name489] = None
|
|
437
|
+
value: float
|
|
438
|
+
|
|
439
|
+
|
|
440
|
+
class Name490(Enum):
|
|
441
|
+
smearing = "smearing"
|
|
442
|
+
|
|
443
|
+
|
|
444
|
+
class ScalarSchema59(BaseModel):
|
|
445
|
+
name: Optional[Name490] = None
|
|
446
|
+
value: float
|
|
447
|
+
|
|
448
|
+
|
|
449
|
+
class Name491(Enum):
|
|
450
|
+
one_electron = "one_electron"
|
|
451
|
+
|
|
452
|
+
|
|
453
|
+
class ScalarSchema60(BaseModel):
|
|
454
|
+
name: Optional[Name491] = None
|
|
455
|
+
value: float
|
|
456
|
+
|
|
457
|
+
|
|
458
|
+
class Name492(Enum):
|
|
459
|
+
hartree = "hartree"
|
|
460
|
+
|
|
461
|
+
|
|
462
|
+
class ScalarSchema61(BaseModel):
|
|
463
|
+
name: Optional[Name492] = None
|
|
464
|
+
value: float
|
|
465
|
+
|
|
466
|
+
|
|
467
|
+
class Name493(Enum):
|
|
468
|
+
exchange = "exchange"
|
|
469
|
+
|
|
470
|
+
|
|
471
|
+
class ScalarSchema62(BaseModel):
|
|
472
|
+
name: Optional[Name493] = None
|
|
473
|
+
value: float
|
|
474
|
+
|
|
475
|
+
|
|
476
|
+
class Name494(Enum):
|
|
477
|
+
exchange_correlation = "exchange_correlation"
|
|
478
|
+
|
|
479
|
+
|
|
480
|
+
class ScalarSchema63(BaseModel):
|
|
481
|
+
name: Optional[Name494] = None
|
|
482
|
+
value: float
|
|
483
|
+
|
|
484
|
+
|
|
485
|
+
class Name495(Enum):
|
|
486
|
+
ewald = "ewald"
|
|
487
|
+
|
|
488
|
+
|
|
489
|
+
class ScalarSchema64(BaseModel):
|
|
490
|
+
name: Optional[Name495] = None
|
|
491
|
+
value: float
|
|
492
|
+
|
|
493
|
+
|
|
494
|
+
class Name496(Enum):
|
|
495
|
+
alphaZ = "alphaZ"
|
|
496
|
+
|
|
497
|
+
|
|
498
|
+
class ScalarSchema65(BaseModel):
|
|
499
|
+
name: Optional[Name496] = None
|
|
500
|
+
value: float
|
|
501
|
+
|
|
502
|
+
|
|
503
|
+
class Name497(Enum):
|
|
504
|
+
atomic_energy = "atomic_energy"
|
|
505
|
+
|
|
506
|
+
|
|
507
|
+
class ScalarSchema66(BaseModel):
|
|
508
|
+
name: Optional[Name497] = None
|
|
509
|
+
value: float
|
|
510
|
+
|
|
511
|
+
|
|
512
|
+
class Name498(Enum):
|
|
513
|
+
eigenvalues = "eigenvalues"
|
|
514
|
+
|
|
515
|
+
|
|
516
|
+
class ScalarSchema67(BaseModel):
|
|
517
|
+
name: Optional[Name498] = None
|
|
518
|
+
value: float
|
|
519
|
+
|
|
520
|
+
|
|
521
|
+
class Name499(Enum):
|
|
522
|
+
PAW_double_counting_correction_2 = "PAW_double-counting_correction_2"
|
|
523
|
+
|
|
524
|
+
|
|
525
|
+
class ScalarSchema68(BaseModel):
|
|
526
|
+
name: Optional[Name499] = None
|
|
527
|
+
value: float
|
|
528
|
+
|
|
529
|
+
|
|
530
|
+
class Name500(Enum):
|
|
531
|
+
PAW_double_counting_correction_3 = "PAW_double-counting_correction_3"
|
|
532
|
+
|
|
533
|
+
|
|
534
|
+
class ScalarSchema69(BaseModel):
|
|
535
|
+
name: Optional[Name500] = None
|
|
536
|
+
value: float
|
|
537
|
+
|
|
538
|
+
|
|
539
|
+
class Name501(Enum):
|
|
540
|
+
hartree_fock = "hartree_fock"
|
|
541
|
+
|
|
542
|
+
|
|
543
|
+
class ScalarSchema70(BaseModel):
|
|
544
|
+
name: Optional[Name501] = None
|
|
545
|
+
value: float
|
|
546
|
+
|
|
547
|
+
|
|
548
|
+
class Name502(Enum):
|
|
549
|
+
total_energy_contributions = "total_energy_contributions"
|
|
550
|
+
|
|
551
|
+
|
|
552
|
+
class Units213(Enum):
|
|
553
|
+
kJ_mol = "kJ/mol"
|
|
554
|
+
eV = "eV"
|
|
555
|
+
J_mol = "J/mol"
|
|
556
|
+
hartree = "hartree"
|
|
557
|
+
cm_1 = "cm-1"
|
|
558
|
+
Ry = "Ry"
|
|
559
|
+
eV_atom = "eV/atom"
|
|
560
|
+
|
|
561
|
+
|
|
562
|
+
class TotalEnergyContributionsPropertySchema(BaseModel):
|
|
563
|
+
temperatureEntropy: Optional[ScalarSchema] = Field(None, title="scalar schema")
|
|
564
|
+
"""
|
|
565
|
+
product of temperature and configurational entropy
|
|
566
|
+
"""
|
|
567
|
+
harris_foulkes: Optional[ScalarSchema58] = Field(None, title="scalar schema")
|
|
568
|
+
"""
|
|
569
|
+
non self-consitent energy based on an input charge density
|
|
570
|
+
"""
|
|
571
|
+
smearing: Optional[ScalarSchema59] = Field(None, title="scalar schema")
|
|
572
|
+
"""
|
|
573
|
+
smearing energy
|
|
574
|
+
"""
|
|
575
|
+
one_electron: Optional[ScalarSchema60] = Field(None, title="scalar schema")
|
|
576
|
+
"""
|
|
577
|
+
kinetic + pseudopotential energy
|
|
578
|
+
"""
|
|
579
|
+
hartree: Optional[ScalarSchema61] = Field(None, title="scalar schema")
|
|
580
|
+
"""
|
|
581
|
+
energy due to coulomb potential
|
|
582
|
+
"""
|
|
583
|
+
exchange: Optional[ScalarSchema62] = Field(None, title="scalar schema")
|
|
584
|
+
"""
|
|
585
|
+
exchange energy
|
|
586
|
+
"""
|
|
587
|
+
exchange_correlation: Optional[ScalarSchema63] = Field(None, title="scalar schema")
|
|
588
|
+
"""
|
|
589
|
+
exchange and correlation energy per particle
|
|
590
|
+
"""
|
|
591
|
+
ewald: Optional[ScalarSchema64] = Field(None, title="scalar schema")
|
|
592
|
+
"""
|
|
593
|
+
summation of interaction energies at long length scales due to coloumbic interactions
|
|
594
|
+
"""
|
|
595
|
+
alphaZ: Optional[ScalarSchema65] = Field(None, title="scalar schema")
|
|
596
|
+
"""
|
|
597
|
+
divergent electrostatic ion interaction in compensating electron gas
|
|
598
|
+
"""
|
|
599
|
+
atomicEnergy: Optional[ScalarSchema66] = Field(None, title="scalar schema")
|
|
600
|
+
"""
|
|
601
|
+
kinetic energy of wavefunctions in the atomic limit
|
|
602
|
+
"""
|
|
603
|
+
eigenvalues: Optional[ScalarSchema67] = Field(None, title="scalar schema")
|
|
604
|
+
"""
|
|
605
|
+
sum of one electron energies of kinetic, electrostatic, and exchange correlation
|
|
606
|
+
"""
|
|
607
|
+
PAWDoubleCounting2: Optional[ScalarSchema68] = Field(None, title="scalar schema")
|
|
608
|
+
"""
|
|
609
|
+
double counting correction 2
|
|
610
|
+
"""
|
|
611
|
+
PAWDoubleCounting3: Optional[ScalarSchema69] = Field(None, title="scalar schema")
|
|
612
|
+
"""
|
|
613
|
+
double counting correction 3
|
|
614
|
+
"""
|
|
615
|
+
hartreeFock: Optional[ScalarSchema70] = Field(None, title="scalar schema")
|
|
616
|
+
"""
|
|
617
|
+
hartree-fock contribution
|
|
618
|
+
"""
|
|
619
|
+
name: Literal["13#-datamodel-code-generator-#-object-#-special-#"]
|
|
620
|
+
units: Optional[Units213] = None
|
|
621
|
+
|
|
622
|
+
|
|
623
|
+
class Units214(Enum):
|
|
624
|
+
cm_1 = "cm-1"
|
|
625
|
+
THz = "THz"
|
|
626
|
+
meV = "meV"
|
|
627
|
+
|
|
628
|
+
|
|
629
|
+
class AxisSchema15(BaseModel):
|
|
630
|
+
label: Label11
|
|
631
|
+
"""
|
|
632
|
+
label of an axis object
|
|
633
|
+
"""
|
|
634
|
+
units: Optional[Units214] = None
|
|
635
|
+
"""
|
|
636
|
+
units for an axis
|
|
637
|
+
"""
|
|
638
|
+
|
|
639
|
+
|
|
640
|
+
class Label13(Enum):
|
|
641
|
+
Phonon_DOS = "Phonon DOS"
|
|
642
|
+
|
|
643
|
+
|
|
644
|
+
class Units215(Enum):
|
|
645
|
+
states_cm_1 = "states/cm-1"
|
|
646
|
+
states_THz = "states/THz"
|
|
647
|
+
states_meV = "states/meV"
|
|
648
|
+
|
|
649
|
+
|
|
650
|
+
class AxisSchema16(BaseModel):
|
|
651
|
+
label: Label13
|
|
652
|
+
"""
|
|
653
|
+
label of an axis object
|
|
654
|
+
"""
|
|
655
|
+
units: Optional[Units215] = None
|
|
656
|
+
"""
|
|
657
|
+
units for an axis
|
|
658
|
+
"""
|
|
659
|
+
|
|
660
|
+
|
|
661
|
+
class Name503(Enum):
|
|
662
|
+
phonon_dos = "phonon_dos"
|
|
663
|
+
|
|
664
|
+
|
|
665
|
+
class PhononDensityOfStatesPropertySchema(BaseModel):
|
|
666
|
+
xAxis: AxisSchema15 = Field(..., title="axis schema")
|
|
667
|
+
yAxis: AxisSchema16 = Field(..., title="axis schema")
|
|
668
|
+
name: Literal["14#-datamodel-code-generator-#-object-#-special-#"]
|
|
669
|
+
xDataArray: List[Union[float, List[float]]]
|
|
670
|
+
"""
|
|
671
|
+
array containing values of x Axis
|
|
672
|
+
"""
|
|
673
|
+
yDataSeries: List[List[float]] = Field(..., title="1 dimension data series schema")
|
|
674
|
+
|
|
675
|
+
|
|
676
|
+
class Label14(Enum):
|
|
677
|
+
z_coordinate = "z coordinate"
|
|
678
|
+
|
|
679
|
+
|
|
680
|
+
class AxisSchema17(BaseModel):
|
|
681
|
+
label: Label14
|
|
682
|
+
"""
|
|
683
|
+
label of an axis object
|
|
684
|
+
"""
|
|
685
|
+
units: Optional[str] = None
|
|
686
|
+
"""
|
|
687
|
+
units for an axis
|
|
688
|
+
"""
|
|
689
|
+
|
|
690
|
+
|
|
691
|
+
class Label15(Enum):
|
|
692
|
+
energy = "energy"
|
|
693
|
+
|
|
694
|
+
|
|
695
|
+
class Units216(Enum):
|
|
696
|
+
kJ_mol = "kJ/mol"
|
|
697
|
+
eV = "eV"
|
|
698
|
+
J_mol = "J/mol"
|
|
699
|
+
hartree = "hartree"
|
|
700
|
+
cm_1 = "cm-1"
|
|
701
|
+
Ry = "Ry"
|
|
702
|
+
eV_atom = "eV/atom"
|
|
703
|
+
|
|
704
|
+
|
|
705
|
+
class AxisSchema18(BaseModel):
|
|
706
|
+
label: Label15
|
|
707
|
+
"""
|
|
708
|
+
label of an axis object
|
|
709
|
+
"""
|
|
710
|
+
units: Optional[Units216] = None
|
|
711
|
+
"""
|
|
712
|
+
units for an axis
|
|
713
|
+
"""
|
|
714
|
+
|
|
715
|
+
|
|
716
|
+
class Name504(Enum):
|
|
717
|
+
potential_profile = "potential_profile"
|
|
718
|
+
|
|
719
|
+
|
|
720
|
+
class PotentialProfilePropertySchema(BaseModel):
|
|
721
|
+
xAxis: AxisSchema17 = Field(..., title="axis schema")
|
|
722
|
+
yAxis: AxisSchema18 = Field(..., title="axis schema")
|
|
723
|
+
name: Literal["15#-datamodel-code-generator-#-object-#-special-#"]
|
|
724
|
+
xDataArray: List[Union[float, List[float]]]
|
|
725
|
+
"""
|
|
726
|
+
array containing values of x Axis
|
|
727
|
+
"""
|
|
728
|
+
yDataSeries: List[List[float]] = Field(..., title="1 dimension data series schema")
|
|
729
|
+
|
|
730
|
+
|
|
731
|
+
class Label16(Enum):
|
|
732
|
+
reaction_coordinate = "reaction coordinate"
|
|
733
|
+
|
|
734
|
+
|
|
735
|
+
class AxisSchema19(BaseModel):
|
|
736
|
+
label: Label16
|
|
737
|
+
"""
|
|
738
|
+
label of an axis object
|
|
739
|
+
"""
|
|
740
|
+
units: Optional[str] = None
|
|
741
|
+
"""
|
|
742
|
+
units for an axis
|
|
743
|
+
"""
|
|
744
|
+
|
|
745
|
+
|
|
746
|
+
class Label17(Enum):
|
|
747
|
+
energy = "energy"
|
|
748
|
+
|
|
749
|
+
|
|
750
|
+
class AxisSchema20(BaseModel):
|
|
751
|
+
label: Label17
|
|
752
|
+
"""
|
|
753
|
+
label of an axis object
|
|
754
|
+
"""
|
|
755
|
+
units: Optional[Units216] = None
|
|
756
|
+
"""
|
|
757
|
+
units for an axis
|
|
758
|
+
"""
|
|
759
|
+
|
|
760
|
+
|
|
761
|
+
class Name505(Enum):
|
|
762
|
+
reaction_energy_profile = "reaction_energy_profile"
|
|
763
|
+
|
|
764
|
+
|
|
765
|
+
class ReactionEnergyProfilePropertySchema(BaseModel):
|
|
766
|
+
xAxis: AxisSchema19 = Field(..., title="axis schema")
|
|
767
|
+
yAxis: AxisSchema20 = Field(..., title="axis schema")
|
|
768
|
+
name: Literal["16#-datamodel-code-generator-#-object-#-special-#"]
|
|
769
|
+
xDataArray: List[Union[float, List[float]]]
|
|
770
|
+
"""
|
|
771
|
+
array containing values of x Axis
|
|
772
|
+
"""
|
|
773
|
+
yDataSeries: List[List[float]] = Field(..., title="1 dimension data series schema")
|
|
774
|
+
|
|
775
|
+
|
|
776
|
+
class AxisSchema21(BaseModel):
|
|
777
|
+
label: Label17
|
|
778
|
+
"""
|
|
779
|
+
label of an axis object
|
|
780
|
+
"""
|
|
781
|
+
units: Optional[Units216] = None
|
|
782
|
+
"""
|
|
783
|
+
units for an axis
|
|
784
|
+
"""
|
|
785
|
+
|
|
786
|
+
|
|
787
|
+
class Label19(Enum):
|
|
788
|
+
density_of_states = "density of states"
|
|
789
|
+
|
|
790
|
+
|
|
791
|
+
class Units219(Enum):
|
|
792
|
+
states_unitcell = "states/unitcell"
|
|
793
|
+
|
|
794
|
+
|
|
795
|
+
class AxisSchema22(BaseModel):
|
|
796
|
+
label: Label19
|
|
797
|
+
"""
|
|
798
|
+
label of an axis object
|
|
799
|
+
"""
|
|
800
|
+
units: Optional[Units219] = None
|
|
801
|
+
"""
|
|
802
|
+
units for an axis
|
|
803
|
+
"""
|
|
804
|
+
|
|
805
|
+
|
|
806
|
+
class Name506(Enum):
|
|
807
|
+
density_of_states = "density_of_states"
|
|
808
|
+
|
|
809
|
+
|
|
810
|
+
class Spin(Enum):
|
|
811
|
+
number_0_5 = 0.5
|
|
812
|
+
number__0_5 = -0.5
|
|
813
|
+
|
|
814
|
+
|
|
815
|
+
class LegendItem(BaseModel):
|
|
816
|
+
element: Optional[str] = None
|
|
817
|
+
"""
|
|
818
|
+
chemical element
|
|
819
|
+
"""
|
|
820
|
+
index: Optional[int] = None
|
|
821
|
+
"""
|
|
822
|
+
index inside sub-array of atoms of the same element type
|
|
823
|
+
"""
|
|
824
|
+
electronicState: Optional[constr(pattern=r"^([1-5]{1})?(s|p|d|f|g).*$")] = None
|
|
825
|
+
"""
|
|
826
|
+
electronic character and shell of PDOS, such as `1s` or `s`, or `total`
|
|
827
|
+
"""
|
|
828
|
+
spin: Optional[Spin] = None
|
|
829
|
+
"""
|
|
830
|
+
spin of the electronic state
|
|
831
|
+
"""
|
|
832
|
+
|
|
833
|
+
|
|
834
|
+
class DensityOfStatesPropertySchema(BaseModel):
|
|
835
|
+
xAxis: AxisSchema21 = Field(..., title="axis schema")
|
|
836
|
+
yAxis: AxisSchema22 = Field(..., title="axis schema")
|
|
837
|
+
name: Literal["17#-datamodel-code-generator-#-object-#-special-#"]
|
|
838
|
+
legend: List[LegendItem]
|
|
839
|
+
xDataArray: List[Union[float, List[float]]]
|
|
840
|
+
"""
|
|
841
|
+
array containing values of x Axis
|
|
842
|
+
"""
|
|
843
|
+
yDataSeries: List[List[float]] = Field(..., title="1 dimension data series schema")
|
|
844
|
+
|
|
845
|
+
|
|
846
|
+
class Name507(Enum):
|
|
847
|
+
dielectric_tensor = "dielectric_tensor"
|
|
848
|
+
|
|
849
|
+
|
|
850
|
+
class Part(Enum):
|
|
851
|
+
real = "real"
|
|
852
|
+
imaginary = "imaginary"
|
|
853
|
+
|
|
854
|
+
|
|
855
|
+
class DielectricTensor(BaseModel):
|
|
856
|
+
part: Part
|
|
857
|
+
"""
|
|
858
|
+
Real or imaginary part of the dielectric tensor component
|
|
859
|
+
"""
|
|
860
|
+
spin: Optional[float] = None
|
|
861
|
+
frequencies: List[float]
|
|
862
|
+
"""
|
|
863
|
+
Frequencies
|
|
864
|
+
"""
|
|
865
|
+
components: List[List[float]]
|
|
866
|
+
"""
|
|
867
|
+
Matrix with 3 columns, e.g. x, y, z
|
|
868
|
+
"""
|
|
869
|
+
|
|
870
|
+
|
|
871
|
+
class DielectricTensorPropertySchema(BaseModel):
|
|
872
|
+
name: Literal["18#-datamodel-code-generator-#-object-#-special-#"]
|
|
873
|
+
values: List[DielectricTensor]
|
|
874
|
+
|
|
875
|
+
|
|
876
|
+
class Name508(Enum):
|
|
877
|
+
file_content = "file_content"
|
|
878
|
+
|
|
879
|
+
|
|
880
|
+
class Filetype(Enum):
|
|
881
|
+
image = "image"
|
|
882
|
+
text = "text"
|
|
883
|
+
csv = "csv"
|
|
884
|
+
|
|
885
|
+
|
|
886
|
+
class ObjectStorageContainerData(BaseModel):
|
|
887
|
+
CONTAINER: Optional[str] = None
|
|
888
|
+
"""
|
|
889
|
+
Object storage container for the file
|
|
890
|
+
"""
|
|
891
|
+
NAME: Optional[str] = None
|
|
892
|
+
"""
|
|
893
|
+
Name of the file inside the object storage bucket
|
|
894
|
+
"""
|
|
895
|
+
PROVIDER: Optional[str] = None
|
|
896
|
+
"""
|
|
897
|
+
Object storage provider
|
|
898
|
+
"""
|
|
899
|
+
REGION: Optional[str] = None
|
|
900
|
+
"""
|
|
901
|
+
Region for the object container specified in Container
|
|
902
|
+
"""
|
|
903
|
+
SIZE: Optional[int] = None
|
|
904
|
+
"""
|
|
905
|
+
Size of the file in bytes
|
|
906
|
+
"""
|
|
907
|
+
TIMESTAMP: Optional[str] = None
|
|
908
|
+
"""
|
|
909
|
+
Unix timestamp showing when the file was last modified
|
|
910
|
+
"""
|
|
911
|
+
|
|
912
|
+
|
|
913
|
+
class FileContentPropertySchema(BaseModel):
|
|
914
|
+
name: Literal["19#-datamodel-code-generator-#-object-#-special-#"]
|
|
915
|
+
filetype: Filetype
|
|
916
|
+
"""
|
|
917
|
+
What kind of file this is, e.g. image / text
|
|
918
|
+
"""
|
|
919
|
+
objectData: ObjectStorageContainerData = Field(..., title="Object Storage Container Data")
|
|
920
|
+
pathname: Optional[str] = None
|
|
921
|
+
"""
|
|
922
|
+
Relative path to the directory that contains the file.
|
|
923
|
+
"""
|
|
924
|
+
basename: Optional[str] = None
|
|
925
|
+
"""
|
|
926
|
+
Basename of the file
|
|
927
|
+
"""
|
|
928
|
+
|
|
929
|
+
|
|
930
|
+
class Name509(Enum):
|
|
931
|
+
hubbard_u = "hubbard_u"
|
|
932
|
+
|
|
933
|
+
|
|
934
|
+
class Units220(Enum):
|
|
935
|
+
eV = "eV"
|
|
936
|
+
|
|
937
|
+
|
|
938
|
+
class AtomicDataPerOrbitalNumeric(BaseModel):
|
|
939
|
+
id: int
|
|
940
|
+
"""
|
|
941
|
+
Site number or index in the lattice
|
|
942
|
+
"""
|
|
943
|
+
atomicSpecies: constr(pattern=r"^[a-zA-Z]{1,2}[\d+]?$")
|
|
944
|
+
"""
|
|
945
|
+
Example: Co1, Mn
|
|
946
|
+
"""
|
|
947
|
+
orbitalName: constr(pattern=r"^[1-7][sSpPdDfF]$")
|
|
948
|
+
value: float
|
|
949
|
+
"""
|
|
950
|
+
Value related to a specific property, e.g., Hubbard U, V etc.
|
|
951
|
+
"""
|
|
952
|
+
|
|
953
|
+
|
|
954
|
+
class HubbardUParametersPropertySchema(BaseModel):
|
|
955
|
+
name: Literal["20#-datamodel-code-generator-#-object-#-special-#"]
|
|
956
|
+
units: Units220
|
|
957
|
+
values: List[AtomicDataPerOrbitalNumeric]
|
|
958
|
+
|
|
959
|
+
|
|
960
|
+
class Name510(Enum):
|
|
961
|
+
hubbard_v = "hubbard_v"
|
|
962
|
+
|
|
963
|
+
|
|
964
|
+
class AtomicDataPerOrbitalPairNumeric(BaseModel):
|
|
965
|
+
id: int
|
|
966
|
+
"""
|
|
967
|
+
Site number or index in the lattice
|
|
968
|
+
"""
|
|
969
|
+
id2: int
|
|
970
|
+
"""
|
|
971
|
+
Site number or index in the lattice of second site
|
|
972
|
+
"""
|
|
973
|
+
atomicSpecies: constr(pattern=r"^[a-zA-Z]{1,2}[\d+]?$")
|
|
974
|
+
"""
|
|
975
|
+
Example: Co1, Mn
|
|
976
|
+
"""
|
|
977
|
+
atomicSpecies2: constr(pattern=r"^[a-zA-Z]{1,2}[\d+]?$")
|
|
978
|
+
"""
|
|
979
|
+
Example: Co2, O
|
|
980
|
+
"""
|
|
981
|
+
orbitalName: Optional[constr(pattern=r"^[1-7][sSpPdDfF]$")] = None
|
|
982
|
+
orbitalName2: Optional[constr(pattern=r"^[1-7][sSpPdDfF]$")] = None
|
|
983
|
+
distance: Optional[float] = None
|
|
984
|
+
"""
|
|
985
|
+
Distance between two sites in Bohr.
|
|
986
|
+
"""
|
|
987
|
+
value: float
|
|
988
|
+
"""
|
|
989
|
+
Value related to a specific property, e.g., Hubbard U, V etc.
|
|
990
|
+
"""
|
|
991
|
+
|
|
992
|
+
|
|
993
|
+
class HubbardVParametersPropertySchema(BaseModel):
|
|
994
|
+
name: Literal["21#-datamodel-code-generator-#-object-#-special-#"]
|
|
995
|
+
units: Units220
|
|
996
|
+
values: List[AtomicDataPerOrbitalPairNumeric]
|
|
997
|
+
|
|
998
|
+
|
|
999
|
+
class Name511(Enum):
|
|
1000
|
+
hubbard_v_nn = "hubbard_v_nn"
|
|
1001
|
+
|
|
1002
|
+
|
|
1003
|
+
class HubbardVNNParametersPropertySchema(BaseModel):
|
|
1004
|
+
name: Literal["22#-datamodel-code-generator-#-object-#-special-#"]
|
|
1005
|
+
units: Units220
|
|
1006
|
+
values: List[AtomicDataPerOrbitalPairNumeric]
|
|
1007
|
+
|
|
1008
|
+
|
|
1009
|
+
class Label20(Enum):
|
|
1010
|
+
z_coordinate = "z coordinate"
|
|
1011
|
+
|
|
1012
|
+
|
|
1013
|
+
class Units223(Enum):
|
|
1014
|
+
km = "km"
|
|
1015
|
+
m = "m"
|
|
1016
|
+
cm = "cm"
|
|
1017
|
+
mm = "mm"
|
|
1018
|
+
um = "um"
|
|
1019
|
+
nm = "nm"
|
|
1020
|
+
angstrom = "angstrom"
|
|
1021
|
+
a_u_ = "a.u."
|
|
1022
|
+
bohr = "bohr"
|
|
1023
|
+
pm = "pm"
|
|
1024
|
+
|
|
1025
|
+
|
|
1026
|
+
class AxisSchema23(BaseModel):
|
|
1027
|
+
label: Label20
|
|
1028
|
+
"""
|
|
1029
|
+
label of an axis object
|
|
1030
|
+
"""
|
|
1031
|
+
units: Optional[Units223] = None
|
|
1032
|
+
"""
|
|
1033
|
+
units for an axis
|
|
1034
|
+
"""
|
|
1035
|
+
|
|
1036
|
+
|
|
1037
|
+
class Label21(Enum):
|
|
1038
|
+
energy = "energy"
|
|
1039
|
+
|
|
1040
|
+
|
|
1041
|
+
class Units224(Enum):
|
|
1042
|
+
kJ_mol = "kJ/mol"
|
|
1043
|
+
eV = "eV"
|
|
1044
|
+
J_mol = "J/mol"
|
|
1045
|
+
hartree = "hartree"
|
|
1046
|
+
cm_1 = "cm-1"
|
|
1047
|
+
Ry = "Ry"
|
|
1048
|
+
eV_atom = "eV/atom"
|
|
1049
|
+
|
|
1050
|
+
|
|
1051
|
+
class AxisSchema24(BaseModel):
|
|
1052
|
+
label: Label21
|
|
1053
|
+
"""
|
|
1054
|
+
label of an axis object
|
|
1055
|
+
"""
|
|
1056
|
+
units: Optional[Units224] = None
|
|
1057
|
+
"""
|
|
1058
|
+
units for an axis
|
|
1059
|
+
"""
|
|
1060
|
+
|
|
1061
|
+
|
|
1062
|
+
class Name512(Enum):
|
|
1063
|
+
average_potential_profile = "average_potential_profile"
|
|
1064
|
+
|
|
1065
|
+
|
|
1066
|
+
class AveragePotentialProfilePropertySchema(BaseModel):
|
|
1067
|
+
xAxis: AxisSchema23 = Field(..., title="axis schema")
|
|
1068
|
+
yAxis: AxisSchema24 = Field(..., title="axis schema")
|
|
1069
|
+
name: Literal["23#-datamodel-code-generator-#-object-#-special-#"]
|
|
1070
|
+
xDataArray: List[Union[float, List[float]]]
|
|
1071
|
+
"""
|
|
1072
|
+
array containing values of x Axis
|
|
1073
|
+
"""
|
|
1074
|
+
yDataSeries: List[List[float]] = Field(..., title="1 dimension data series schema")
|
|
1075
|
+
|
|
1076
|
+
|
|
1077
|
+
class Label22(Enum):
|
|
1078
|
+
z_coordinate = "z coordinate"
|
|
1079
|
+
|
|
1080
|
+
|
|
1081
|
+
class AxisSchema25(BaseModel):
|
|
1082
|
+
label: Label22
|
|
1083
|
+
"""
|
|
1084
|
+
label of an axis object
|
|
1085
|
+
"""
|
|
1086
|
+
units: Optional[str] = None
|
|
1087
|
+
"""
|
|
1088
|
+
units for an axis
|
|
1089
|
+
"""
|
|
1090
|
+
|
|
1091
|
+
|
|
1092
|
+
class Label23(Enum):
|
|
1093
|
+
charge_density = "charge density"
|
|
1094
|
+
|
|
1095
|
+
|
|
1096
|
+
class Units225(Enum):
|
|
1097
|
+
e_A = "e/A"
|
|
1098
|
+
|
|
1099
|
+
|
|
1100
|
+
class AxisSchema26(BaseModel):
|
|
1101
|
+
label: Label23
|
|
1102
|
+
"""
|
|
1103
|
+
label of an axis object
|
|
1104
|
+
"""
|
|
1105
|
+
units: Optional[Units225] = None
|
|
1106
|
+
"""
|
|
1107
|
+
units for an axis
|
|
1108
|
+
"""
|
|
1109
|
+
|
|
1110
|
+
|
|
1111
|
+
class Name513(Enum):
|
|
1112
|
+
charge_density_profile = "charge_density_profile"
|
|
1113
|
+
|
|
1114
|
+
|
|
1115
|
+
class ChargeDensityProfilePropertySchema(BaseModel):
|
|
1116
|
+
xAxis: AxisSchema25 = Field(..., title="axis schema")
|
|
1117
|
+
yAxis: AxisSchema26 = Field(..., title="axis schema")
|
|
1118
|
+
name: Literal["24#-datamodel-code-generator-#-object-#-special-#"]
|
|
1119
|
+
xDataArray: List[Union[float, List[float]]]
|
|
1120
|
+
"""
|
|
1121
|
+
array containing values of x Axis
|
|
1122
|
+
"""
|
|
1123
|
+
yDataSeries: List[List[float]] = Field(..., title="1 dimension data series schema")
|
|
1124
|
+
|
|
1125
|
+
|
|
1126
|
+
class Name514(Enum):
|
|
1127
|
+
workflow_pyml_predict = "workflow:pyml_predict"
|
|
1128
|
+
|
|
1129
|
+
|
|
1130
|
+
class Type22(Enum):
|
|
1131
|
+
io = "io"
|
|
1132
|
+
|
|
1133
|
+
|
|
1134
|
+
class Subtype(Enum):
|
|
1135
|
+
input = "input"
|
|
1136
|
+
output = "output"
|
|
1137
|
+
dataFrame = "dataFrame"
|
|
1138
|
+
|
|
1139
|
+
|
|
1140
|
+
class Source(Enum):
|
|
1141
|
+
api = "api"
|
|
1142
|
+
db = "db"
|
|
1143
|
+
object_storage = "object_storage"
|
|
1144
|
+
|
|
1145
|
+
|
|
1146
|
+
class DataIORestAPIInputSchema(BaseModel):
|
|
1147
|
+
model_config = ConfigDict(
|
|
1148
|
+
extra="allow",
|
|
1149
|
+
)
|
|
1150
|
+
endpoint: str
|
|
1151
|
+
"""
|
|
1152
|
+
rest API endpoint
|
|
1153
|
+
"""
|
|
1154
|
+
endpoint_options: Dict[str, Any]
|
|
1155
|
+
"""
|
|
1156
|
+
rest API endpoint options
|
|
1157
|
+
"""
|
|
1158
|
+
name: Optional[str] = None
|
|
1159
|
+
"""
|
|
1160
|
+
the name of the variable in local scope to save the data under
|
|
1161
|
+
"""
|
|
1162
|
+
|
|
1163
|
+
|
|
1164
|
+
class DataIODatabaseInputOutputSchema(BaseModel):
|
|
1165
|
+
model_config = ConfigDict(
|
|
1166
|
+
extra="allow",
|
|
1167
|
+
)
|
|
1168
|
+
ids: List[str]
|
|
1169
|
+
"""
|
|
1170
|
+
IDs of item to retrieve from db
|
|
1171
|
+
"""
|
|
1172
|
+
|
|
1173
|
+
|
|
1174
|
+
class DataIODatabaseInputOutputSchema3(BaseModel):
|
|
1175
|
+
model_config = ConfigDict(
|
|
1176
|
+
extra="allow",
|
|
1177
|
+
)
|
|
1178
|
+
collection: str
|
|
1179
|
+
"""
|
|
1180
|
+
db collection name
|
|
1181
|
+
"""
|
|
1182
|
+
draft: bool
|
|
1183
|
+
"""
|
|
1184
|
+
whether the result should be saved as draft
|
|
1185
|
+
"""
|
|
1186
|
+
|
|
1187
|
+
|
|
1188
|
+
class ObjectStorageIoSchema(BaseModel):
|
|
1189
|
+
model_config = ConfigDict(
|
|
1190
|
+
extra="allow",
|
|
1191
|
+
)
|
|
1192
|
+
objectData: ObjectStorageContainerData = Field(..., title="Object Storage Container Data")
|
|
1193
|
+
overwrite: Optional[bool] = None
|
|
1194
|
+
"""
|
|
1195
|
+
if a file with the same filename already exists, whether to overwrite the old file
|
|
1196
|
+
"""
|
|
1197
|
+
pathname: Optional[str] = None
|
|
1198
|
+
"""
|
|
1199
|
+
Relative path to the directory that contains the file.
|
|
1200
|
+
"""
|
|
1201
|
+
basename: Optional[str] = None
|
|
1202
|
+
"""
|
|
1203
|
+
Basename of the file
|
|
1204
|
+
"""
|
|
1205
|
+
filetype: Optional[str] = None
|
|
1206
|
+
"""
|
|
1207
|
+
What kind of file this is, e.g. image / text
|
|
1208
|
+
"""
|
|
1209
|
+
|
|
1210
|
+
|
|
1211
|
+
class Status(Enum):
|
|
1212
|
+
idle = "idle"
|
|
1213
|
+
active = "active"
|
|
1214
|
+
warning = "warning"
|
|
1215
|
+
error = "error"
|
|
1216
|
+
finished = "finished"
|
|
1217
|
+
|
|
1218
|
+
|
|
1219
|
+
class NameResultSchema(BaseModel):
|
|
1220
|
+
name: str
|
|
1221
|
+
"""
|
|
1222
|
+
The name of this item. e.g. scf_accuracy
|
|
1223
|
+
"""
|
|
1224
|
+
|
|
1225
|
+
|
|
1226
|
+
class StatusTrackItem(BaseModel):
|
|
1227
|
+
trackedAt: float
|
|
1228
|
+
status: str
|
|
1229
|
+
repetition: Optional[float] = None
|
|
1230
|
+
|
|
1231
|
+
|
|
1232
|
+
class DataIOUnitSchema(BaseModel):
|
|
1233
|
+
model_config = ConfigDict(
|
|
1234
|
+
extra="allow",
|
|
1235
|
+
)
|
|
1236
|
+
type: Literal["0#-datamodel-code-generator-#-object-#-special-#"]
|
|
1237
|
+
"""
|
|
1238
|
+
type of the unit
|
|
1239
|
+
"""
|
|
1240
|
+
subtype: Subtype
|
|
1241
|
+
source: Source
|
|
1242
|
+
input: List[
|
|
1243
|
+
Union[
|
|
1244
|
+
DataIORestAPIInputSchema,
|
|
1245
|
+
Union[DataIODatabaseInputOutputSchema, DataIODatabaseInputOutputSchema3],
|
|
1246
|
+
ObjectStorageIoSchema,
|
|
1247
|
+
]
|
|
1248
|
+
]
|
|
1249
|
+
field_id: Optional[str] = Field(None, alias="_id")
|
|
1250
|
+
"""
|
|
1251
|
+
entity identity
|
|
1252
|
+
"""
|
|
1253
|
+
isDraft: Optional[bool] = None
|
|
1254
|
+
name: Optional[str] = None
|
|
1255
|
+
"""
|
|
1256
|
+
name of the unit. e.g. pw_scf
|
|
1257
|
+
"""
|
|
1258
|
+
status: Optional[Status] = None
|
|
1259
|
+
"""
|
|
1260
|
+
Status of the unit.
|
|
1261
|
+
"""
|
|
1262
|
+
head: Optional[bool] = None
|
|
1263
|
+
"""
|
|
1264
|
+
Whether this unit is the first one to be executed.
|
|
1265
|
+
"""
|
|
1266
|
+
flowchartId: str
|
|
1267
|
+
"""
|
|
1268
|
+
Identity of the unit in the workflow. Used to trace the execution flow of the workflow.
|
|
1269
|
+
"""
|
|
1270
|
+
next: Optional[str] = None
|
|
1271
|
+
"""
|
|
1272
|
+
Next unit's flowchartId. If empty, the current unit is the last.
|
|
1273
|
+
"""
|
|
1274
|
+
enableRender: Optional[bool] = None
|
|
1275
|
+
"""
|
|
1276
|
+
Whether Rupy should attempt to use Jinja templating to add context variables into the unit
|
|
1277
|
+
"""
|
|
1278
|
+
context: Optional[Dict[str, Any]] = None
|
|
1279
|
+
slug: Optional[str] = None
|
|
1280
|
+
"""
|
|
1281
|
+
entity slug
|
|
1282
|
+
"""
|
|
1283
|
+
systemName: Optional[str] = None
|
|
1284
|
+
schemaVersion: Optional[str] = "2022.8.16"
|
|
1285
|
+
"""
|
|
1286
|
+
entity's schema version. Used to distinct between different schemas.
|
|
1287
|
+
"""
|
|
1288
|
+
isDefault: Optional[bool] = False
|
|
1289
|
+
"""
|
|
1290
|
+
Identifies that entity is defaultable
|
|
1291
|
+
"""
|
|
1292
|
+
preProcessors: Optional[List[Union[NameResultSchema, str]]] = None
|
|
1293
|
+
"""
|
|
1294
|
+
names of the pre-processors for this calculation
|
|
1295
|
+
"""
|
|
1296
|
+
postProcessors: Optional[List[Union[NameResultSchema, str]]] = None
|
|
1297
|
+
"""
|
|
1298
|
+
names of the post-processors for this calculation
|
|
1299
|
+
"""
|
|
1300
|
+
monitors: Optional[List[Union[NameResultSchema, str]]] = None
|
|
1301
|
+
"""
|
|
1302
|
+
names of the monitors for this calculation
|
|
1303
|
+
"""
|
|
1304
|
+
results: Optional[List[Union[NameResultSchema, str]]] = None
|
|
1305
|
+
"""
|
|
1306
|
+
names of the results for this calculation
|
|
1307
|
+
"""
|
|
1308
|
+
tags: Optional[List[str]] = None
|
|
1309
|
+
"""
|
|
1310
|
+
entity tags
|
|
1311
|
+
"""
|
|
1312
|
+
statusTrack: Optional[List[StatusTrackItem]] = None
|
|
1313
|
+
|
|
1314
|
+
|
|
1315
|
+
class Type23(Enum):
|
|
1316
|
+
reduce = "reduce"
|
|
1317
|
+
|
|
1318
|
+
|
|
1319
|
+
class InputItem(BaseModel):
|
|
1320
|
+
operation: str
|
|
1321
|
+
"""
|
|
1322
|
+
reduce operation, e.g. aggregate
|
|
1323
|
+
"""
|
|
1324
|
+
arguments: List[str]
|
|
1325
|
+
"""
|
|
1326
|
+
arguments which are passed to reduce operation function
|
|
1327
|
+
"""
|
|
1328
|
+
|
|
1329
|
+
|
|
1330
|
+
class ReduceUnitSchema(BaseModel):
|
|
1331
|
+
model_config = ConfigDict(
|
|
1332
|
+
extra="allow",
|
|
1333
|
+
)
|
|
1334
|
+
type: Literal["1#-datamodel-code-generator-#-object-#-special-#"]
|
|
1335
|
+
"""
|
|
1336
|
+
type of the unit
|
|
1337
|
+
"""
|
|
1338
|
+
mapFlowchartId: str
|
|
1339
|
+
"""
|
|
1340
|
+
corresponding map unit flowchart ID
|
|
1341
|
+
"""
|
|
1342
|
+
input: List[InputItem]
|
|
1343
|
+
"""
|
|
1344
|
+
input information for reduce unit
|
|
1345
|
+
"""
|
|
1346
|
+
field_id: Optional[str] = Field(None, alias="_id")
|
|
1347
|
+
"""
|
|
1348
|
+
entity identity
|
|
1349
|
+
"""
|
|
1350
|
+
isDraft: Optional[bool] = None
|
|
1351
|
+
name: Optional[str] = None
|
|
1352
|
+
"""
|
|
1353
|
+
name of the unit. e.g. pw_scf
|
|
1354
|
+
"""
|
|
1355
|
+
status: Optional[Status] = None
|
|
1356
|
+
"""
|
|
1357
|
+
Status of the unit.
|
|
1358
|
+
"""
|
|
1359
|
+
head: Optional[bool] = None
|
|
1360
|
+
"""
|
|
1361
|
+
Whether this unit is the first one to be executed.
|
|
1362
|
+
"""
|
|
1363
|
+
flowchartId: str
|
|
1364
|
+
"""
|
|
1365
|
+
Identity of the unit in the workflow. Used to trace the execution flow of the workflow.
|
|
1366
|
+
"""
|
|
1367
|
+
next: Optional[str] = None
|
|
1368
|
+
"""
|
|
1369
|
+
Next unit's flowchartId. If empty, the current unit is the last.
|
|
1370
|
+
"""
|
|
1371
|
+
enableRender: Optional[bool] = None
|
|
1372
|
+
"""
|
|
1373
|
+
Whether Rupy should attempt to use Jinja templating to add context variables into the unit
|
|
1374
|
+
"""
|
|
1375
|
+
context: Optional[Dict[str, Any]] = None
|
|
1376
|
+
slug: Optional[str] = None
|
|
1377
|
+
"""
|
|
1378
|
+
entity slug
|
|
1379
|
+
"""
|
|
1380
|
+
systemName: Optional[str] = None
|
|
1381
|
+
schemaVersion: Optional[str] = "2022.8.16"
|
|
1382
|
+
"""
|
|
1383
|
+
entity's schema version. Used to distinct between different schemas.
|
|
1384
|
+
"""
|
|
1385
|
+
isDefault: Optional[bool] = False
|
|
1386
|
+
"""
|
|
1387
|
+
Identifies that entity is defaultable
|
|
1388
|
+
"""
|
|
1389
|
+
preProcessors: Optional[List[Union[NameResultSchema, str]]] = None
|
|
1390
|
+
"""
|
|
1391
|
+
names of the pre-processors for this calculation
|
|
1392
|
+
"""
|
|
1393
|
+
postProcessors: Optional[List[Union[NameResultSchema, str]]] = None
|
|
1394
|
+
"""
|
|
1395
|
+
names of the post-processors for this calculation
|
|
1396
|
+
"""
|
|
1397
|
+
monitors: Optional[List[Union[NameResultSchema, str]]] = None
|
|
1398
|
+
"""
|
|
1399
|
+
names of the monitors for this calculation
|
|
1400
|
+
"""
|
|
1401
|
+
results: Optional[List[Union[NameResultSchema, str]]] = None
|
|
1402
|
+
"""
|
|
1403
|
+
names of the results for this calculation
|
|
1404
|
+
"""
|
|
1405
|
+
tags: Optional[List[str]] = None
|
|
1406
|
+
"""
|
|
1407
|
+
entity tags
|
|
1408
|
+
"""
|
|
1409
|
+
statusTrack: Optional[List[StatusTrackItem]] = None
|
|
1410
|
+
|
|
1411
|
+
|
|
1412
|
+
class Type24(Enum):
|
|
1413
|
+
condition = "condition"
|
|
1414
|
+
|
|
1415
|
+
|
|
1416
|
+
class WorkflowUnitInputSchema(BaseModel):
|
|
1417
|
+
scope: str
|
|
1418
|
+
"""
|
|
1419
|
+
Scope of the variable. e.g. 'global' or 'flowchart_id_2'
|
|
1420
|
+
"""
|
|
1421
|
+
name: str
|
|
1422
|
+
"""
|
|
1423
|
+
Name of the input data. e.g. total_energy
|
|
1424
|
+
"""
|
|
1425
|
+
|
|
1426
|
+
|
|
1427
|
+
class ConditionUnitSchema(BaseModel):
|
|
1428
|
+
model_config = ConfigDict(
|
|
1429
|
+
extra="allow",
|
|
1430
|
+
)
|
|
1431
|
+
type: Literal["2#-datamodel-code-generator-#-object-#-special-#"]
|
|
1432
|
+
"""
|
|
1433
|
+
type of the unit
|
|
1434
|
+
"""
|
|
1435
|
+
input: List[WorkflowUnitInputSchema]
|
|
1436
|
+
"""
|
|
1437
|
+
Input information for condition.
|
|
1438
|
+
"""
|
|
1439
|
+
statement: str
|
|
1440
|
+
"""
|
|
1441
|
+
Condition statement. e.g. 'abs(x-total_energy) < 1e-5'
|
|
1442
|
+
"""
|
|
1443
|
+
then: str
|
|
1444
|
+
"""
|
|
1445
|
+
Flowchart ID reference for `then` part of the condition.
|
|
1446
|
+
"""
|
|
1447
|
+
else_: str = Field(..., alias="else")
|
|
1448
|
+
"""
|
|
1449
|
+
Flowchart ID reference for `else` part of the condition.
|
|
1450
|
+
"""
|
|
1451
|
+
maxOccurrences: int
|
|
1452
|
+
"""
|
|
1453
|
+
Maximum occurrence of the condition, usable for loops.
|
|
1454
|
+
"""
|
|
1455
|
+
throwException: Optional[bool] = None
|
|
1456
|
+
"""
|
|
1457
|
+
Throw exception on reaching to maximum occurence.
|
|
1458
|
+
"""
|
|
1459
|
+
field_id: Optional[str] = Field(None, alias="_id")
|
|
1460
|
+
"""
|
|
1461
|
+
entity identity
|
|
1462
|
+
"""
|
|
1463
|
+
isDraft: Optional[bool] = None
|
|
1464
|
+
name: Optional[str] = None
|
|
1465
|
+
"""
|
|
1466
|
+
name of the unit. e.g. pw_scf
|
|
1467
|
+
"""
|
|
1468
|
+
status: Optional[Status] = None
|
|
1469
|
+
"""
|
|
1470
|
+
Status of the unit.
|
|
1471
|
+
"""
|
|
1472
|
+
head: Optional[bool] = None
|
|
1473
|
+
"""
|
|
1474
|
+
Whether this unit is the first one to be executed.
|
|
1475
|
+
"""
|
|
1476
|
+
flowchartId: str
|
|
1477
|
+
"""
|
|
1478
|
+
Identity of the unit in the workflow. Used to trace the execution flow of the workflow.
|
|
1479
|
+
"""
|
|
1480
|
+
next: Optional[str] = None
|
|
1481
|
+
"""
|
|
1482
|
+
Next unit's flowchartId. If empty, the current unit is the last.
|
|
1483
|
+
"""
|
|
1484
|
+
enableRender: Optional[bool] = None
|
|
1485
|
+
"""
|
|
1486
|
+
Whether Rupy should attempt to use Jinja templating to add context variables into the unit
|
|
1487
|
+
"""
|
|
1488
|
+
context: Optional[Dict[str, Any]] = None
|
|
1489
|
+
slug: Optional[str] = None
|
|
1490
|
+
"""
|
|
1491
|
+
entity slug
|
|
1492
|
+
"""
|
|
1493
|
+
systemName: Optional[str] = None
|
|
1494
|
+
schemaVersion: Optional[str] = "2022.8.16"
|
|
1495
|
+
"""
|
|
1496
|
+
entity's schema version. Used to distinct between different schemas.
|
|
1497
|
+
"""
|
|
1498
|
+
isDefault: Optional[bool] = False
|
|
1499
|
+
"""
|
|
1500
|
+
Identifies that entity is defaultable
|
|
1501
|
+
"""
|
|
1502
|
+
preProcessors: Optional[List[Union[NameResultSchema, str]]] = None
|
|
1503
|
+
"""
|
|
1504
|
+
names of the pre-processors for this calculation
|
|
1505
|
+
"""
|
|
1506
|
+
postProcessors: Optional[List[Union[NameResultSchema, str]]] = None
|
|
1507
|
+
"""
|
|
1508
|
+
names of the post-processors for this calculation
|
|
1509
|
+
"""
|
|
1510
|
+
monitors: Optional[List[Union[NameResultSchema, str]]] = None
|
|
1511
|
+
"""
|
|
1512
|
+
names of the monitors for this calculation
|
|
1513
|
+
"""
|
|
1514
|
+
results: Optional[List[Union[NameResultSchema, str]]] = None
|
|
1515
|
+
"""
|
|
1516
|
+
names of the results for this calculation
|
|
1517
|
+
"""
|
|
1518
|
+
tags: Optional[List[str]] = None
|
|
1519
|
+
"""
|
|
1520
|
+
entity tags
|
|
1521
|
+
"""
|
|
1522
|
+
statusTrack: Optional[List[StatusTrackItem]] = None
|
|
1523
|
+
|
|
1524
|
+
|
|
1525
|
+
class Type25(Enum):
|
|
1526
|
+
assertion = "assertion"
|
|
1527
|
+
|
|
1528
|
+
|
|
1529
|
+
class AssertionUnitSchema(BaseModel):
|
|
1530
|
+
model_config = ConfigDict(
|
|
1531
|
+
extra="allow",
|
|
1532
|
+
)
|
|
1533
|
+
type: Literal["3#-datamodel-code-generator-#-object-#-special-#"]
|
|
1534
|
+
"""
|
|
1535
|
+
type of the unit
|
|
1536
|
+
"""
|
|
1537
|
+
statement: str
|
|
1538
|
+
"""
|
|
1539
|
+
The statement to be evaluated
|
|
1540
|
+
"""
|
|
1541
|
+
errorMessage: Optional[str] = None
|
|
1542
|
+
"""
|
|
1543
|
+
The error message to be displayed if the assertion fails
|
|
1544
|
+
"""
|
|
1545
|
+
field_id: Optional[str] = Field(None, alias="_id")
|
|
1546
|
+
"""
|
|
1547
|
+
entity identity
|
|
1548
|
+
"""
|
|
1549
|
+
isDraft: Optional[bool] = None
|
|
1550
|
+
name: str
|
|
1551
|
+
"""
|
|
1552
|
+
name of the unit. e.g. pw_scf
|
|
1553
|
+
"""
|
|
1554
|
+
status: Optional[Status] = None
|
|
1555
|
+
"""
|
|
1556
|
+
Status of the unit.
|
|
1557
|
+
"""
|
|
1558
|
+
head: Optional[bool] = None
|
|
1559
|
+
"""
|
|
1560
|
+
Whether this unit is the first one to be executed.
|
|
1561
|
+
"""
|
|
1562
|
+
flowchartId: str
|
|
1563
|
+
"""
|
|
1564
|
+
Identity of the unit in the workflow. Used to trace the execution flow of the workflow.
|
|
1565
|
+
"""
|
|
1566
|
+
next: Optional[str] = None
|
|
1567
|
+
"""
|
|
1568
|
+
Next unit's flowchartId. If empty, the current unit is the last.
|
|
1569
|
+
"""
|
|
1570
|
+
enableRender: Optional[bool] = None
|
|
1571
|
+
"""
|
|
1572
|
+
Whether Rupy should attempt to use Jinja templating to add context variables into the unit
|
|
1573
|
+
"""
|
|
1574
|
+
context: Optional[Dict[str, Any]] = None
|
|
1575
|
+
slug: Optional[str] = None
|
|
1576
|
+
"""
|
|
1577
|
+
entity slug
|
|
1578
|
+
"""
|
|
1579
|
+
systemName: Optional[str] = None
|
|
1580
|
+
schemaVersion: Optional[str] = "2022.8.16"
|
|
1581
|
+
"""
|
|
1582
|
+
entity's schema version. Used to distinct between different schemas.
|
|
1583
|
+
"""
|
|
1584
|
+
isDefault: Optional[bool] = False
|
|
1585
|
+
"""
|
|
1586
|
+
Identifies that entity is defaultable
|
|
1587
|
+
"""
|
|
1588
|
+
preProcessors: Optional[List[Union[NameResultSchema, str]]] = None
|
|
1589
|
+
"""
|
|
1590
|
+
names of the pre-processors for this calculation
|
|
1591
|
+
"""
|
|
1592
|
+
postProcessors: Optional[List[Union[NameResultSchema, str]]] = None
|
|
1593
|
+
"""
|
|
1594
|
+
names of the post-processors for this calculation
|
|
1595
|
+
"""
|
|
1596
|
+
monitors: Optional[List[Union[NameResultSchema, str]]] = None
|
|
1597
|
+
"""
|
|
1598
|
+
names of the monitors for this calculation
|
|
1599
|
+
"""
|
|
1600
|
+
results: Optional[List[Union[NameResultSchema, str]]] = None
|
|
1601
|
+
"""
|
|
1602
|
+
names of the results for this calculation
|
|
1603
|
+
"""
|
|
1604
|
+
tags: Optional[List[str]] = None
|
|
1605
|
+
"""
|
|
1606
|
+
entity tags
|
|
1607
|
+
"""
|
|
1608
|
+
statusTrack: Optional[List[StatusTrackItem]] = None
|
|
1609
|
+
|
|
1610
|
+
|
|
1611
|
+
class Type26(Enum):
|
|
1612
|
+
execution = "execution"
|
|
1613
|
+
|
|
1614
|
+
|
|
1615
|
+
class ApplicationSchemaBase(BaseModel):
|
|
1616
|
+
model_config = ConfigDict(
|
|
1617
|
+
extra="allow",
|
|
1618
|
+
)
|
|
1619
|
+
shortName: Optional[str] = None
|
|
1620
|
+
"""
|
|
1621
|
+
The short name of the application. e.g. qe
|
|
1622
|
+
"""
|
|
1623
|
+
summary: Optional[str] = None
|
|
1624
|
+
"""
|
|
1625
|
+
Application's short description.
|
|
1626
|
+
"""
|
|
1627
|
+
version: Optional[str] = None
|
|
1628
|
+
"""
|
|
1629
|
+
Application version. e.g. 5.3.5
|
|
1630
|
+
"""
|
|
1631
|
+
build: Optional[str] = None
|
|
1632
|
+
"""
|
|
1633
|
+
Application build. e.g. VTST
|
|
1634
|
+
"""
|
|
1635
|
+
hasAdvancedComputeOptions: Optional[bool] = None
|
|
1636
|
+
"""
|
|
1637
|
+
Whether advanced compute options are present
|
|
1638
|
+
"""
|
|
1639
|
+
isLicensed: Optional[bool] = None
|
|
1640
|
+
"""
|
|
1641
|
+
Whether licensing is present
|
|
1642
|
+
"""
|
|
1643
|
+
field_id: Optional[str] = Field(None, alias="_id")
|
|
1644
|
+
"""
|
|
1645
|
+
entity identity
|
|
1646
|
+
"""
|
|
1647
|
+
slug: Optional[str] = None
|
|
1648
|
+
"""
|
|
1649
|
+
entity slug
|
|
1650
|
+
"""
|
|
1651
|
+
systemName: Optional[str] = None
|
|
1652
|
+
schemaVersion: Optional[str] = "2022.8.16"
|
|
1653
|
+
"""
|
|
1654
|
+
entity's schema version. Used to distinct between different schemas.
|
|
1655
|
+
"""
|
|
1656
|
+
name: Optional[str] = None
|
|
1657
|
+
"""
|
|
1658
|
+
entity name
|
|
1659
|
+
"""
|
|
1660
|
+
isDefault: Optional[bool] = False
|
|
1661
|
+
"""
|
|
1662
|
+
Identifies that entity is defaultable
|
|
1663
|
+
"""
|
|
1664
|
+
|
|
1665
|
+
|
|
1666
|
+
class ExecutableSchema(BaseModel):
|
|
1667
|
+
name: str
|
|
1668
|
+
"""
|
|
1669
|
+
The name of the executable. e.g. pw.x
|
|
1670
|
+
"""
|
|
1671
|
+
applicationId: Optional[List[str]] = None
|
|
1672
|
+
"""
|
|
1673
|
+
_ids of the application this executable belongs to
|
|
1674
|
+
"""
|
|
1675
|
+
hasAdvancedComputeOptions: Optional[bool] = None
|
|
1676
|
+
"""
|
|
1677
|
+
Whether advanced compute options are present
|
|
1678
|
+
"""
|
|
1679
|
+
field_id: Optional[str] = Field(None, alias="_id")
|
|
1680
|
+
"""
|
|
1681
|
+
entity identity
|
|
1682
|
+
"""
|
|
1683
|
+
slug: Optional[str] = None
|
|
1684
|
+
"""
|
|
1685
|
+
entity slug
|
|
1686
|
+
"""
|
|
1687
|
+
systemName: Optional[str] = None
|
|
1688
|
+
schemaVersion: Optional[str] = "2022.8.16"
|
|
1689
|
+
"""
|
|
1690
|
+
entity's schema version. Used to distinct between different schemas.
|
|
1691
|
+
"""
|
|
1692
|
+
isDefault: Optional[bool] = False
|
|
1693
|
+
"""
|
|
1694
|
+
Identifies that entity is defaultable
|
|
1695
|
+
"""
|
|
1696
|
+
preProcessors: Optional[List[Union[NameResultSchema, str]]] = None
|
|
1697
|
+
"""
|
|
1698
|
+
names of the pre-processors for this calculation
|
|
1699
|
+
"""
|
|
1700
|
+
postProcessors: Optional[List[Union[NameResultSchema, str]]] = None
|
|
1701
|
+
"""
|
|
1702
|
+
names of the post-processors for this calculation
|
|
1703
|
+
"""
|
|
1704
|
+
monitors: Optional[List[Union[NameResultSchema, str]]] = None
|
|
1705
|
+
"""
|
|
1706
|
+
names of the monitors for this calculation
|
|
1707
|
+
"""
|
|
1708
|
+
results: Optional[List[Union[NameResultSchema, str]]] = None
|
|
1709
|
+
"""
|
|
1710
|
+
names of the results for this calculation
|
|
1711
|
+
"""
|
|
1712
|
+
|
|
1713
|
+
|
|
1714
|
+
class ExecutionUnitInputIdItemSchemaForPhysicsBasedSimulationEngines(BaseModel):
|
|
1715
|
+
model_config = ConfigDict(
|
|
1716
|
+
extra="forbid",
|
|
1717
|
+
)
|
|
1718
|
+
templateId: Optional[str] = None
|
|
1719
|
+
templateName: Optional[str] = None
|
|
1720
|
+
name: Optional[str] = None
|
|
1721
|
+
"""
|
|
1722
|
+
name of the resulting input file, if different than template name
|
|
1723
|
+
"""
|
|
1724
|
+
|
|
1725
|
+
|
|
1726
|
+
class FlavorSchema(BaseModel):
|
|
1727
|
+
executableId: Optional[str] = None
|
|
1728
|
+
"""
|
|
1729
|
+
_id of the executable this flavor belongs to
|
|
1730
|
+
"""
|
|
1731
|
+
executableName: Optional[str] = None
|
|
1732
|
+
"""
|
|
1733
|
+
name of the executable this flavor belongs to
|
|
1734
|
+
"""
|
|
1735
|
+
applicationName: Optional[str] = None
|
|
1736
|
+
"""
|
|
1737
|
+
name of the application this flavor belongs to
|
|
1738
|
+
"""
|
|
1739
|
+
input: Optional[List[ExecutionUnitInputIdItemSchemaForPhysicsBasedSimulationEngines]] = Field(
|
|
1740
|
+
None, title="execution unit input schema"
|
|
1741
|
+
)
|
|
1742
|
+
supportedApplicationVersions: Optional[List[str]] = None
|
|
1743
|
+
"""
|
|
1744
|
+
list of application versions this flavor supports
|
|
1745
|
+
"""
|
|
1746
|
+
field_id: Optional[str] = Field(None, alias="_id")
|
|
1747
|
+
"""
|
|
1748
|
+
entity identity
|
|
1749
|
+
"""
|
|
1750
|
+
slug: Optional[str] = None
|
|
1751
|
+
"""
|
|
1752
|
+
entity slug
|
|
1753
|
+
"""
|
|
1754
|
+
systemName: Optional[str] = None
|
|
1755
|
+
schemaVersion: Optional[str] = "2022.8.16"
|
|
1756
|
+
"""
|
|
1757
|
+
entity's schema version. Used to distinct between different schemas.
|
|
1758
|
+
"""
|
|
1759
|
+
name: Optional[str] = None
|
|
1760
|
+
"""
|
|
1761
|
+
entity name
|
|
1762
|
+
"""
|
|
1763
|
+
isDefault: Optional[bool] = False
|
|
1764
|
+
"""
|
|
1765
|
+
Identifies that entity is defaultable
|
|
1766
|
+
"""
|
|
1767
|
+
preProcessors: Optional[List[Union[NameResultSchema, str]]] = None
|
|
1768
|
+
"""
|
|
1769
|
+
names of the pre-processors for this calculation
|
|
1770
|
+
"""
|
|
1771
|
+
postProcessors: Optional[List[Union[NameResultSchema, str]]] = None
|
|
1772
|
+
"""
|
|
1773
|
+
names of the post-processors for this calculation
|
|
1774
|
+
"""
|
|
1775
|
+
monitors: Optional[List[Union[NameResultSchema, str]]] = None
|
|
1776
|
+
"""
|
|
1777
|
+
names of the monitors for this calculation
|
|
1778
|
+
"""
|
|
1779
|
+
results: Optional[List[Union[NameResultSchema, str]]] = None
|
|
1780
|
+
"""
|
|
1781
|
+
names of the results for this calculation
|
|
1782
|
+
"""
|
|
1783
|
+
|
|
1784
|
+
|
|
1785
|
+
class ExecutionUnitSchemaBase(BaseModel):
|
|
1786
|
+
model_config = ConfigDict(
|
|
1787
|
+
extra="allow",
|
|
1788
|
+
)
|
|
1789
|
+
type: Literal["4#-datamodel-code-generator-#-object-#-special-#"]
|
|
1790
|
+
"""
|
|
1791
|
+
type of the unit
|
|
1792
|
+
"""
|
|
1793
|
+
application: ApplicationSchemaBase = Field(..., title="application schema (base)")
|
|
1794
|
+
executable: Optional[ExecutableSchema] = Field(None, title="executable schema")
|
|
1795
|
+
flavor: Optional[FlavorSchema] = Field(None, title="flavor schema")
|
|
1796
|
+
input: Any
|
|
1797
|
+
"""
|
|
1798
|
+
unit input (type to be specified by the application's execution unit)
|
|
1799
|
+
"""
|
|
1800
|
+
field_id: Optional[str] = Field(None, alias="_id")
|
|
1801
|
+
"""
|
|
1802
|
+
entity identity
|
|
1803
|
+
"""
|
|
1804
|
+
isDraft: Optional[bool] = None
|
|
1805
|
+
name: str
|
|
1806
|
+
"""
|
|
1807
|
+
name of the unit. e.g. pw_scf
|
|
1808
|
+
"""
|
|
1809
|
+
status: Optional[Status] = None
|
|
1810
|
+
"""
|
|
1811
|
+
Status of the unit.
|
|
1812
|
+
"""
|
|
1813
|
+
head: Optional[bool] = None
|
|
1814
|
+
"""
|
|
1815
|
+
Whether this unit is the first one to be executed.
|
|
1816
|
+
"""
|
|
1817
|
+
flowchartId: str
|
|
1818
|
+
"""
|
|
1819
|
+
Identity of the unit in the workflow. Used to trace the execution flow of the workflow.
|
|
1820
|
+
"""
|
|
1821
|
+
next: Optional[str] = None
|
|
1822
|
+
"""
|
|
1823
|
+
Next unit's flowchartId. If empty, the current unit is the last.
|
|
1824
|
+
"""
|
|
1825
|
+
enableRender: Optional[bool] = None
|
|
1826
|
+
"""
|
|
1827
|
+
Whether Rupy should attempt to use Jinja templating to add context variables into the unit
|
|
1828
|
+
"""
|
|
1829
|
+
context: Optional[Dict[str, Any]] = None
|
|
1830
|
+
slug: Optional[str] = None
|
|
1831
|
+
"""
|
|
1832
|
+
entity slug
|
|
1833
|
+
"""
|
|
1834
|
+
systemName: Optional[str] = None
|
|
1835
|
+
schemaVersion: Optional[str] = "2022.8.16"
|
|
1836
|
+
"""
|
|
1837
|
+
entity's schema version. Used to distinct between different schemas.
|
|
1838
|
+
"""
|
|
1839
|
+
isDefault: Optional[bool] = False
|
|
1840
|
+
"""
|
|
1841
|
+
Identifies that entity is defaultable
|
|
1842
|
+
"""
|
|
1843
|
+
preProcessors: Optional[List[Union[NameResultSchema, str]]] = None
|
|
1844
|
+
"""
|
|
1845
|
+
names of the pre-processors for this calculation
|
|
1846
|
+
"""
|
|
1847
|
+
postProcessors: Optional[List[Union[NameResultSchema, str]]] = None
|
|
1848
|
+
"""
|
|
1849
|
+
names of the post-processors for this calculation
|
|
1850
|
+
"""
|
|
1851
|
+
monitors: Optional[List[Union[NameResultSchema, str]]] = None
|
|
1852
|
+
"""
|
|
1853
|
+
names of the monitors for this calculation
|
|
1854
|
+
"""
|
|
1855
|
+
results: Optional[List[Union[NameResultSchema, str]]] = None
|
|
1856
|
+
"""
|
|
1857
|
+
names of the results for this calculation
|
|
1858
|
+
"""
|
|
1859
|
+
tags: Optional[List[str]] = None
|
|
1860
|
+
"""
|
|
1861
|
+
entity tags
|
|
1862
|
+
"""
|
|
1863
|
+
statusTrack: Optional[List[StatusTrackItem]] = None
|
|
1864
|
+
|
|
1865
|
+
|
|
1866
|
+
class Type27(Enum):
|
|
1867
|
+
assignment = "assignment"
|
|
1868
|
+
|
|
1869
|
+
|
|
1870
|
+
class AssignmentUnitSchema(BaseModel):
|
|
1871
|
+
model_config = ConfigDict(
|
|
1872
|
+
extra="allow",
|
|
1873
|
+
)
|
|
1874
|
+
type: Literal["5#-datamodel-code-generator-#-object-#-special-#"]
|
|
1875
|
+
"""
|
|
1876
|
+
type of the unit
|
|
1877
|
+
"""
|
|
1878
|
+
input: List[WorkflowUnitInputSchema]
|
|
1879
|
+
"""
|
|
1880
|
+
Input information for assignment. if omitted, means that it is an initialization unit, otherwise it is an assignment.
|
|
1881
|
+
"""
|
|
1882
|
+
operand: str
|
|
1883
|
+
"""
|
|
1884
|
+
Name of the global variable. e.g. 'x'
|
|
1885
|
+
"""
|
|
1886
|
+
value: Union[str, bool, float]
|
|
1887
|
+
"""
|
|
1888
|
+
Value of the variable. The value content could be a simple integer, string or a python expression. e.g. '0' (initialization), 'sin(x)+1' (expression)
|
|
1889
|
+
"""
|
|
1890
|
+
field_id: Optional[str] = Field(None, alias="_id")
|
|
1891
|
+
"""
|
|
1892
|
+
entity identity
|
|
1893
|
+
"""
|
|
1894
|
+
isDraft: Optional[bool] = None
|
|
1895
|
+
name: str
|
|
1896
|
+
"""
|
|
1897
|
+
name of the unit. e.g. pw_scf
|
|
1898
|
+
"""
|
|
1899
|
+
status: Optional[Status] = None
|
|
1900
|
+
"""
|
|
1901
|
+
Status of the unit.
|
|
1902
|
+
"""
|
|
1903
|
+
head: Optional[bool] = None
|
|
1904
|
+
"""
|
|
1905
|
+
Whether this unit is the first one to be executed.
|
|
1906
|
+
"""
|
|
1907
|
+
flowchartId: str
|
|
1908
|
+
"""
|
|
1909
|
+
Identity of the unit in the workflow. Used to trace the execution flow of the workflow.
|
|
1910
|
+
"""
|
|
1911
|
+
next: Optional[str] = None
|
|
1912
|
+
"""
|
|
1913
|
+
Next unit's flowchartId. If empty, the current unit is the last.
|
|
1914
|
+
"""
|
|
1915
|
+
enableRender: Optional[bool] = None
|
|
1916
|
+
"""
|
|
1917
|
+
Whether Rupy should attempt to use Jinja templating to add context variables into the unit
|
|
1918
|
+
"""
|
|
1919
|
+
context: Optional[Dict[str, Any]] = None
|
|
1920
|
+
slug: Optional[str] = None
|
|
1921
|
+
"""
|
|
1922
|
+
entity slug
|
|
1923
|
+
"""
|
|
1924
|
+
systemName: Optional[str] = None
|
|
1925
|
+
schemaVersion: Optional[str] = "2022.8.16"
|
|
1926
|
+
"""
|
|
1927
|
+
entity's schema version. Used to distinct between different schemas.
|
|
1928
|
+
"""
|
|
1929
|
+
isDefault: Optional[bool] = False
|
|
1930
|
+
"""
|
|
1931
|
+
Identifies that entity is defaultable
|
|
1932
|
+
"""
|
|
1933
|
+
preProcessors: Optional[List[Union[NameResultSchema, str]]] = None
|
|
1934
|
+
"""
|
|
1935
|
+
names of the pre-processors for this calculation
|
|
1936
|
+
"""
|
|
1937
|
+
postProcessors: Optional[List[Union[NameResultSchema, str]]] = None
|
|
1938
|
+
"""
|
|
1939
|
+
names of the post-processors for this calculation
|
|
1940
|
+
"""
|
|
1941
|
+
monitors: Optional[List[Union[NameResultSchema, str]]] = None
|
|
1942
|
+
"""
|
|
1943
|
+
names of the monitors for this calculation
|
|
1944
|
+
"""
|
|
1945
|
+
results: Optional[List[Union[NameResultSchema, str]]] = None
|
|
1946
|
+
"""
|
|
1947
|
+
names of the results for this calculation
|
|
1948
|
+
"""
|
|
1949
|
+
tags: Optional[List[str]] = None
|
|
1950
|
+
"""
|
|
1951
|
+
entity tags
|
|
1952
|
+
"""
|
|
1953
|
+
statusTrack: Optional[List[StatusTrackItem]] = None
|
|
1954
|
+
scope: Optional[str] = None
|
|
1955
|
+
|
|
1956
|
+
|
|
1957
|
+
class Type28(Enum):
|
|
1958
|
+
processing = "processing"
|
|
1959
|
+
|
|
1960
|
+
|
|
1961
|
+
class ProcessingUnitSchema(BaseModel):
|
|
1962
|
+
model_config = ConfigDict(
|
|
1963
|
+
extra="allow",
|
|
1964
|
+
)
|
|
1965
|
+
type: Literal["6#-datamodel-code-generator-#-object-#-special-#"]
|
|
1966
|
+
"""
|
|
1967
|
+
type of the unit
|
|
1968
|
+
"""
|
|
1969
|
+
operation: str
|
|
1970
|
+
"""
|
|
1971
|
+
Contains information about the operation used.
|
|
1972
|
+
"""
|
|
1973
|
+
operationType: str
|
|
1974
|
+
"""
|
|
1975
|
+
Contains information about the specific type of the operation used.
|
|
1976
|
+
"""
|
|
1977
|
+
inputData: Any
|
|
1978
|
+
"""
|
|
1979
|
+
unit input (type to be specified by the child units)
|
|
1980
|
+
"""
|
|
1981
|
+
field_id: Optional[str] = Field(None, alias="_id")
|
|
1982
|
+
"""
|
|
1983
|
+
entity identity
|
|
1984
|
+
"""
|
|
1985
|
+
isDraft: Optional[bool] = None
|
|
1986
|
+
name: str
|
|
1987
|
+
"""
|
|
1988
|
+
name of the unit. e.g. pw_scf
|
|
1989
|
+
"""
|
|
1990
|
+
status: Optional[Status] = None
|
|
1991
|
+
"""
|
|
1992
|
+
Status of the unit.
|
|
1993
|
+
"""
|
|
1994
|
+
head: Optional[bool] = None
|
|
1995
|
+
"""
|
|
1996
|
+
Whether this unit is the first one to be executed.
|
|
1997
|
+
"""
|
|
1998
|
+
flowchartId: str
|
|
1999
|
+
"""
|
|
2000
|
+
Identity of the unit in the workflow. Used to trace the execution flow of the workflow.
|
|
2001
|
+
"""
|
|
2002
|
+
next: Optional[str] = None
|
|
2003
|
+
"""
|
|
2004
|
+
Next unit's flowchartId. If empty, the current unit is the last.
|
|
2005
|
+
"""
|
|
2006
|
+
enableRender: Optional[bool] = None
|
|
2007
|
+
"""
|
|
2008
|
+
Whether Rupy should attempt to use Jinja templating to add context variables into the unit
|
|
2009
|
+
"""
|
|
2010
|
+
context: Optional[Dict[str, Any]] = None
|
|
2011
|
+
slug: Optional[str] = None
|
|
2012
|
+
"""
|
|
2013
|
+
entity slug
|
|
2014
|
+
"""
|
|
2015
|
+
systemName: Optional[str] = None
|
|
2016
|
+
schemaVersion: Optional[str] = "2022.8.16"
|
|
2017
|
+
"""
|
|
2018
|
+
entity's schema version. Used to distinct between different schemas.
|
|
2019
|
+
"""
|
|
2020
|
+
isDefault: Optional[bool] = False
|
|
2021
|
+
"""
|
|
2022
|
+
Identifies that entity is defaultable
|
|
2023
|
+
"""
|
|
2024
|
+
preProcessors: Optional[List[Union[NameResultSchema, str]]] = None
|
|
2025
|
+
"""
|
|
2026
|
+
names of the pre-processors for this calculation
|
|
2027
|
+
"""
|
|
2028
|
+
postProcessors: Optional[List[Union[NameResultSchema, str]]] = None
|
|
2029
|
+
"""
|
|
2030
|
+
names of the post-processors for this calculation
|
|
2031
|
+
"""
|
|
2032
|
+
monitors: Optional[List[Union[NameResultSchema, str]]] = None
|
|
2033
|
+
"""
|
|
2034
|
+
names of the monitors for this calculation
|
|
2035
|
+
"""
|
|
2036
|
+
results: Optional[List[Union[NameResultSchema, str]]] = None
|
|
2037
|
+
"""
|
|
2038
|
+
names of the results for this calculation
|
|
2039
|
+
"""
|
|
2040
|
+
tags: Optional[List[str]] = None
|
|
2041
|
+
"""
|
|
2042
|
+
entity tags
|
|
2043
|
+
"""
|
|
2044
|
+
statusTrack: Optional[List[StatusTrackItem]] = None
|
|
2045
|
+
|
|
2046
|
+
|
|
2047
|
+
class WorkflowSubworkflowUnitSchema(
|
|
2048
|
+
RootModel[
|
|
2049
|
+
Union[
|
|
2050
|
+
DataIOUnitSchema,
|
|
2051
|
+
ReduceUnitSchema,
|
|
2052
|
+
ConditionUnitSchema,
|
|
2053
|
+
AssertionUnitSchema,
|
|
2054
|
+
ExecutionUnitSchemaBase,
|
|
2055
|
+
AssignmentUnitSchema,
|
|
2056
|
+
ProcessingUnitSchema,
|
|
2057
|
+
]
|
|
2058
|
+
]
|
|
2059
|
+
):
|
|
2060
|
+
root: Union[
|
|
2061
|
+
DataIOUnitSchema,
|
|
2062
|
+
ReduceUnitSchema,
|
|
2063
|
+
ConditionUnitSchema,
|
|
2064
|
+
AssertionUnitSchema,
|
|
2065
|
+
ExecutionUnitSchemaBase,
|
|
2066
|
+
AssignmentUnitSchema,
|
|
2067
|
+
ProcessingUnitSchema,
|
|
2068
|
+
] = Field(..., discriminator="type", title="workflow subworkflow unit schema")
|
|
2069
|
+
|
|
2070
|
+
|
|
2071
|
+
class BaseMethod(BaseModel):
|
|
2072
|
+
type: str
|
|
2073
|
+
"""
|
|
2074
|
+
general type of this method, eg. `pseudopotential`
|
|
2075
|
+
"""
|
|
2076
|
+
subtype: str
|
|
2077
|
+
"""
|
|
2078
|
+
general subtype of this method, eg. `ultra-soft`
|
|
2079
|
+
"""
|
|
2080
|
+
precision: Optional[Dict[str, Any]] = None
|
|
2081
|
+
"""
|
|
2082
|
+
Object showing the actual possible precision based on theory and implementation
|
|
2083
|
+
"""
|
|
2084
|
+
data: Optional[Dict[str, Any]] = None
|
|
2085
|
+
"""
|
|
2086
|
+
additional data specific to method, eg. array of pseudopotentials
|
|
2087
|
+
"""
|
|
2088
|
+
|
|
2089
|
+
|
|
2090
|
+
class BaseModelModel(BaseModel):
|
|
2091
|
+
model_config = ConfigDict(
|
|
2092
|
+
extra="allow",
|
|
2093
|
+
)
|
|
2094
|
+
type: str
|
|
2095
|
+
"""
|
|
2096
|
+
general type of the model, eg. `dft`
|
|
2097
|
+
"""
|
|
2098
|
+
subtype: str
|
|
2099
|
+
"""
|
|
2100
|
+
general subtype of the model, eg. `lda`
|
|
2101
|
+
"""
|
|
2102
|
+
method: BaseMethod = Field(..., title="base method")
|
|
2103
|
+
|
|
2104
|
+
|
|
2105
|
+
class Queue(Enum):
|
|
2106
|
+
D = "D"
|
|
2107
|
+
OR = "OR"
|
|
2108
|
+
OF = "OF"
|
|
2109
|
+
OFplus = "OFplus"
|
|
2110
|
+
SR = "SR"
|
|
2111
|
+
SF = "SF"
|
|
2112
|
+
SFplus = "SFplus"
|
|
2113
|
+
GPOF = "GPOF"
|
|
2114
|
+
GP2OF = "GP2OF"
|
|
2115
|
+
GP4OF = "GP4OF"
|
|
2116
|
+
GPSF = "GPSF"
|
|
2117
|
+
GP2SF = "GP2SF"
|
|
2118
|
+
GP4SF = "GP4SF"
|
|
2119
|
+
OR4 = "OR4"
|
|
2120
|
+
OR8 = "OR8"
|
|
2121
|
+
OR16 = "OR16"
|
|
2122
|
+
SR4 = "SR4"
|
|
2123
|
+
SR8 = "SR8"
|
|
2124
|
+
SR16 = "SR16"
|
|
2125
|
+
GOF = "GOF"
|
|
2126
|
+
G4OF = "G4OF"
|
|
2127
|
+
G8OF = "G8OF"
|
|
2128
|
+
GSF = "GSF"
|
|
2129
|
+
G4SF = "G4SF"
|
|
2130
|
+
G8SF = "G8SF"
|
|
2131
|
+
|
|
2132
|
+
|
|
2133
|
+
class TimeLimitType(Enum):
|
|
2134
|
+
per_single_attempt = "per single attempt"
|
|
2135
|
+
compound = "compound"
|
|
2136
|
+
|
|
2137
|
+
|
|
2138
|
+
class QuantumEspressoArgumentsSchema(BaseModel):
|
|
2139
|
+
model_config = ConfigDict(
|
|
2140
|
+
extra="forbid",
|
|
2141
|
+
)
|
|
2142
|
+
nimage: Optional[conint(ge=1, le=100)] = 1
|
|
2143
|
+
"""
|
|
2144
|
+
Processors can be divided into different `images`, each corresponding to a different self-consistent or linear-response calculation, loosely coupled to others.
|
|
2145
|
+
"""
|
|
2146
|
+
npools: Optional[conint(ge=1, le=100)] = 1
|
|
2147
|
+
"""
|
|
2148
|
+
Each image can be subpartitioned into `pools`, each taking care of a group of k-points.
|
|
2149
|
+
"""
|
|
2150
|
+
nband: Optional[conint(ge=1, le=100)] = 1
|
|
2151
|
+
"""
|
|
2152
|
+
Each pool is subpartitioned into `band groups`, each taking care of a group of Kohn-Sham orbitals (also called bands, or wavefunctions).
|
|
2153
|
+
"""
|
|
2154
|
+
ntg: Optional[conint(ge=1, le=100)] = 1
|
|
2155
|
+
"""
|
|
2156
|
+
In order to allow good parallelization of the 3D FFT when the number of processors exceeds the number of FFT planes, FFTs on Kohn-Sham states are redistributed to `task` groups so that each group can process several wavefunctions at the same time.
|
|
2157
|
+
"""
|
|
2158
|
+
ndiag: Optional[conint(ge=1, le=100)] = 1
|
|
2159
|
+
"""
|
|
2160
|
+
A further level of parallelization, independent on PW or k-point parallelization, is the parallelization of subspace diagonalization / iterative orthonormalization. Both operations required the diagonalization of arrays whose dimension is the number of Kohn-Sham states (or a small multiple of it). All such arrays are distributed block-like across the `linear-algebra group`, a subgroup of the pool of processors, organized in a square 2D grid. As a consequence the number of processors in the linear-algebra group is given by n2, where n is an integer; n2 must be smaller than the number of processors in the PW group. The diagonalization is then performed in parallel using standard linear algebra operations.
|
|
2161
|
+
"""
|
|
2162
|
+
|
|
2163
|
+
|
|
2164
|
+
class Cluster(BaseModel):
|
|
2165
|
+
fqdn: Optional[str] = None
|
|
2166
|
+
"""
|
|
2167
|
+
FQDN of the cluster. e.g. master-1-staging.exabyte.io
|
|
2168
|
+
"""
|
|
2169
|
+
jid: Optional[str] = None
|
|
2170
|
+
"""
|
|
2171
|
+
Job's identity in RMS. e.g. 1234.master-1-staging.exabyte.io
|
|
2172
|
+
"""
|
|
2173
|
+
|
|
2174
|
+
|
|
2175
|
+
class Domain(Enum):
|
|
2176
|
+
rupy = "rupy"
|
|
2177
|
+
alfred = "alfred"
|
|
2178
|
+
celim = "celim"
|
|
2179
|
+
webapp = "webapp"
|
|
2180
|
+
|
|
2181
|
+
|
|
2182
|
+
class Error(BaseModel):
|
|
2183
|
+
domain: Optional[Domain] = None
|
|
2184
|
+
"""
|
|
2185
|
+
Domain of the error appearance (internal).
|
|
2186
|
+
"""
|
|
2187
|
+
reason: Optional[str] = None
|
|
2188
|
+
"""
|
|
2189
|
+
Should be a short, unique, machine-readable error code string. e.g. FileNotFound
|
|
2190
|
+
"""
|
|
2191
|
+
message: Optional[str] = None
|
|
2192
|
+
"""
|
|
2193
|
+
Human-readable error message. e.g. 'File Not Found: /home/demo/data/project1/job-123/job-config.json'
|
|
2194
|
+
"""
|
|
2195
|
+
traceback: Optional[str] = None
|
|
2196
|
+
"""
|
|
2197
|
+
Full machine-readable error traceback. e.g. FileNotFound
|
|
2198
|
+
"""
|
|
2199
|
+
|
|
2200
|
+
|
|
2201
|
+
class ComputeArgumentsSchema(BaseModel):
|
|
2202
|
+
queue: Queue
|
|
2203
|
+
"""
|
|
2204
|
+
Name of the submission queues: https://docs.mat3ra.com/infrastructure/resource/queues/. Below enums are for Azure, then AWS circa 2022-08, hence the duplication.
|
|
2205
|
+
"""
|
|
2206
|
+
nodes: int
|
|
2207
|
+
"""
|
|
2208
|
+
number of nodes used for the job inside the RMS.
|
|
2209
|
+
"""
|
|
2210
|
+
ppn: int
|
|
2211
|
+
"""
|
|
2212
|
+
number of CPUs used for the job inside the RMS.
|
|
2213
|
+
"""
|
|
2214
|
+
timeLimit: str
|
|
2215
|
+
"""
|
|
2216
|
+
Wallclock time limit for computing a job. Clock format: 'hh:mm:ss'
|
|
2217
|
+
"""
|
|
2218
|
+
timeLimitType: Optional[TimeLimitType] = "per single attempt"
|
|
2219
|
+
"""
|
|
2220
|
+
Convention to use when reasoning about time limits
|
|
2221
|
+
"""
|
|
2222
|
+
isRestartable: Optional[bool] = True
|
|
2223
|
+
"""
|
|
2224
|
+
Job is allowed to restart on termination.
|
|
2225
|
+
"""
|
|
2226
|
+
notify: Optional[str] = None
|
|
2227
|
+
"""
|
|
2228
|
+
Email notification for the job: n - never, a - job aborted, b - job begins, e - job ends. Last three could be combined.
|
|
2229
|
+
"""
|
|
2230
|
+
email: Optional[str] = None
|
|
2231
|
+
"""
|
|
2232
|
+
Email address to notify about job execution.
|
|
2233
|
+
"""
|
|
2234
|
+
maxCPU: Optional[int] = None
|
|
2235
|
+
"""
|
|
2236
|
+
Maximum CPU count per node. This parameter is used to let backend job submission infrastructure know that this job is to be charged for the maximum CPU per node instead of the actual ppn. For premium/fast queues where resources are provisioned on-demand and exclusively per user.
|
|
2237
|
+
"""
|
|
2238
|
+
arguments: Optional[QuantumEspressoArgumentsSchema] = Field({}, title="quantum espresso arguments schema")
|
|
2239
|
+
"""
|
|
2240
|
+
Optional arguments specific to using application - VASP, Quantum Espresso, etc. Specified elsewhere
|
|
2241
|
+
"""
|
|
2242
|
+
cluster: Optional[Cluster] = None
|
|
2243
|
+
"""
|
|
2244
|
+
Cluster where the job is executed. Optional on create. Required on job submission.
|
|
2245
|
+
"""
|
|
2246
|
+
errors: Optional[List[Error]] = None
|
|
2247
|
+
"""
|
|
2248
|
+
Computation error. Optional. Appears only if something happens on jobs execution.
|
|
2249
|
+
"""
|
|
2250
|
+
excludeFilesPattern: Optional[str] = None
|
|
2251
|
+
"""
|
|
2252
|
+
A Python compatible regex to exclude files from upload. e.g. ^.*.txt& excludes all files with .txt suffix
|
|
2253
|
+
"""
|
|
2254
|
+
|
|
2255
|
+
|
|
2256
|
+
class Subworkflow(BaseModel):
|
|
2257
|
+
units: List[WorkflowSubworkflowUnitSchema]
|
|
2258
|
+
"""
|
|
2259
|
+
Contains the Units of the subworkflow
|
|
2260
|
+
"""
|
|
2261
|
+
model: BaseModelModel = Field(..., title="base model")
|
|
2262
|
+
application: ApplicationSchemaBase = Field(..., title="application schema (base)")
|
|
2263
|
+
isDraft: Optional[bool] = False
|
|
2264
|
+
"""
|
|
2265
|
+
Defines whether to store the results/properties extracted in this unit to properties collection
|
|
2266
|
+
"""
|
|
2267
|
+
field_id: Optional[str] = Field(None, alias="_id")
|
|
2268
|
+
"""
|
|
2269
|
+
subworkflow identity
|
|
2270
|
+
"""
|
|
2271
|
+
name: str
|
|
2272
|
+
"""
|
|
2273
|
+
Human-readable name of the subworkflow. e.g. Total-energy
|
|
2274
|
+
"""
|
|
2275
|
+
properties: Optional[List[str]] = None
|
|
2276
|
+
"""
|
|
2277
|
+
Array of characteristic properties calculated by this subworkflow
|
|
2278
|
+
"""
|
|
2279
|
+
compute: Optional[ComputeArgumentsSchema] = Field(None, title="compute arguments schema")
|
|
2280
|
+
"""
|
|
2281
|
+
Custom keywords prefixed with validate correspond to custom validation methods implemented downstream
|
|
2282
|
+
"""
|
|
2283
|
+
|
|
2284
|
+
|
|
2285
|
+
class Type29(Enum):
|
|
2286
|
+
io = "io"
|
|
2287
|
+
|
|
2288
|
+
|
|
2289
|
+
class DataIODatabaseInputOutputSchema4(BaseModel):
|
|
2290
|
+
model_config = ConfigDict(
|
|
2291
|
+
extra="allow",
|
|
2292
|
+
)
|
|
2293
|
+
ids: List[str]
|
|
2294
|
+
"""
|
|
2295
|
+
IDs of item to retrieve from db
|
|
2296
|
+
"""
|
|
2297
|
+
|
|
2298
|
+
|
|
2299
|
+
class DataIODatabaseInputOutputSchema5(BaseModel):
|
|
2300
|
+
model_config = ConfigDict(
|
|
2301
|
+
extra="allow",
|
|
2302
|
+
)
|
|
2303
|
+
collection: str
|
|
2304
|
+
"""
|
|
2305
|
+
db collection name
|
|
2306
|
+
"""
|
|
2307
|
+
draft: bool
|
|
2308
|
+
"""
|
|
2309
|
+
whether the result should be saved as draft
|
|
2310
|
+
"""
|
|
2311
|
+
|
|
2312
|
+
|
|
2313
|
+
class ObjectStorageIoSchema1(BaseModel):
|
|
2314
|
+
model_config = ConfigDict(
|
|
2315
|
+
extra="allow",
|
|
2316
|
+
)
|
|
2317
|
+
objectData: ObjectStorageContainerData = Field(..., title="Object Storage Container Data")
|
|
2318
|
+
overwrite: Optional[bool] = None
|
|
2319
|
+
"""
|
|
2320
|
+
if a file with the same filename already exists, whether to overwrite the old file
|
|
2321
|
+
"""
|
|
2322
|
+
pathname: Optional[str] = None
|
|
2323
|
+
"""
|
|
2324
|
+
Relative path to the directory that contains the file.
|
|
2325
|
+
"""
|
|
2326
|
+
basename: Optional[str] = None
|
|
2327
|
+
"""
|
|
2328
|
+
Basename of the file
|
|
2329
|
+
"""
|
|
2330
|
+
filetype: Optional[str] = None
|
|
2331
|
+
"""
|
|
2332
|
+
What kind of file this is, e.g. image / text
|
|
2333
|
+
"""
|
|
2334
|
+
|
|
2335
|
+
|
|
2336
|
+
class DataIOUnitSchema1(BaseModel):
|
|
2337
|
+
model_config = ConfigDict(
|
|
2338
|
+
extra="allow",
|
|
2339
|
+
)
|
|
2340
|
+
type: Literal["0#-datamodel-code-generator-#-object-#-special-#"]
|
|
2341
|
+
"""
|
|
2342
|
+
type of the unit
|
|
2343
|
+
"""
|
|
2344
|
+
subtype: Subtype
|
|
2345
|
+
source: Source
|
|
2346
|
+
input: List[
|
|
2347
|
+
Union[
|
|
2348
|
+
DataIORestAPIInputSchema,
|
|
2349
|
+
Union[DataIODatabaseInputOutputSchema4, DataIODatabaseInputOutputSchema5],
|
|
2350
|
+
ObjectStorageIoSchema1,
|
|
2351
|
+
]
|
|
2352
|
+
]
|
|
2353
|
+
field_id: Optional[str] = Field(None, alias="_id")
|
|
2354
|
+
"""
|
|
2355
|
+
entity identity
|
|
2356
|
+
"""
|
|
2357
|
+
isDraft: Optional[bool] = None
|
|
2358
|
+
name: Optional[str] = None
|
|
2359
|
+
"""
|
|
2360
|
+
name of the unit. e.g. pw_scf
|
|
2361
|
+
"""
|
|
2362
|
+
status: Optional[Status] = None
|
|
2363
|
+
"""
|
|
2364
|
+
Status of the unit.
|
|
2365
|
+
"""
|
|
2366
|
+
head: Optional[bool] = None
|
|
2367
|
+
"""
|
|
2368
|
+
Whether this unit is the first one to be executed.
|
|
2369
|
+
"""
|
|
2370
|
+
flowchartId: str
|
|
2371
|
+
"""
|
|
2372
|
+
Identity of the unit in the workflow. Used to trace the execution flow of the workflow.
|
|
2373
|
+
"""
|
|
2374
|
+
next: Optional[str] = None
|
|
2375
|
+
"""
|
|
2376
|
+
Next unit's flowchartId. If empty, the current unit is the last.
|
|
2377
|
+
"""
|
|
2378
|
+
enableRender: Optional[bool] = None
|
|
2379
|
+
"""
|
|
2380
|
+
Whether Rupy should attempt to use Jinja templating to add context variables into the unit
|
|
2381
|
+
"""
|
|
2382
|
+
context: Optional[Dict[str, Any]] = None
|
|
2383
|
+
slug: Optional[str] = None
|
|
2384
|
+
"""
|
|
2385
|
+
entity slug
|
|
2386
|
+
"""
|
|
2387
|
+
systemName: Optional[str] = None
|
|
2388
|
+
schemaVersion: Optional[str] = "2022.8.16"
|
|
2389
|
+
"""
|
|
2390
|
+
entity's schema version. Used to distinct between different schemas.
|
|
2391
|
+
"""
|
|
2392
|
+
isDefault: Optional[bool] = False
|
|
2393
|
+
"""
|
|
2394
|
+
Identifies that entity is defaultable
|
|
2395
|
+
"""
|
|
2396
|
+
preProcessors: Optional[List[Union[NameResultSchema, str]]] = None
|
|
2397
|
+
"""
|
|
2398
|
+
names of the pre-processors for this calculation
|
|
2399
|
+
"""
|
|
2400
|
+
postProcessors: Optional[List[Union[NameResultSchema, str]]] = None
|
|
2401
|
+
"""
|
|
2402
|
+
names of the post-processors for this calculation
|
|
2403
|
+
"""
|
|
2404
|
+
monitors: Optional[List[Union[NameResultSchema, str]]] = None
|
|
2405
|
+
"""
|
|
2406
|
+
names of the monitors for this calculation
|
|
2407
|
+
"""
|
|
2408
|
+
results: Optional[List[Union[NameResultSchema, str]]] = None
|
|
2409
|
+
"""
|
|
2410
|
+
names of the results for this calculation
|
|
2411
|
+
"""
|
|
2412
|
+
tags: Optional[List[str]] = None
|
|
2413
|
+
"""
|
|
2414
|
+
entity tags
|
|
2415
|
+
"""
|
|
2416
|
+
statusTrack: Optional[List[StatusTrackItem]] = None
|
|
2417
|
+
|
|
2418
|
+
|
|
2419
|
+
class Type30(Enum):
|
|
2420
|
+
reduce = "reduce"
|
|
2421
|
+
|
|
2422
|
+
|
|
2423
|
+
class ReduceUnitSchema1(BaseModel):
|
|
2424
|
+
model_config = ConfigDict(
|
|
2425
|
+
extra="allow",
|
|
2426
|
+
)
|
|
2427
|
+
type: Literal["1#-datamodel-code-generator-#-object-#-special-#"]
|
|
2428
|
+
"""
|
|
2429
|
+
type of the unit
|
|
2430
|
+
"""
|
|
2431
|
+
mapFlowchartId: str
|
|
2432
|
+
"""
|
|
2433
|
+
corresponding map unit flowchart ID
|
|
2434
|
+
"""
|
|
2435
|
+
input: List[InputItem]
|
|
2436
|
+
"""
|
|
2437
|
+
input information for reduce unit
|
|
2438
|
+
"""
|
|
2439
|
+
field_id: Optional[str] = Field(None, alias="_id")
|
|
2440
|
+
"""
|
|
2441
|
+
entity identity
|
|
2442
|
+
"""
|
|
2443
|
+
isDraft: Optional[bool] = None
|
|
2444
|
+
name: Optional[str] = None
|
|
2445
|
+
"""
|
|
2446
|
+
name of the unit. e.g. pw_scf
|
|
2447
|
+
"""
|
|
2448
|
+
status: Optional[Status] = None
|
|
2449
|
+
"""
|
|
2450
|
+
Status of the unit.
|
|
2451
|
+
"""
|
|
2452
|
+
head: Optional[bool] = None
|
|
2453
|
+
"""
|
|
2454
|
+
Whether this unit is the first one to be executed.
|
|
2455
|
+
"""
|
|
2456
|
+
flowchartId: str
|
|
2457
|
+
"""
|
|
2458
|
+
Identity of the unit in the workflow. Used to trace the execution flow of the workflow.
|
|
2459
|
+
"""
|
|
2460
|
+
next: Optional[str] = None
|
|
2461
|
+
"""
|
|
2462
|
+
Next unit's flowchartId. If empty, the current unit is the last.
|
|
2463
|
+
"""
|
|
2464
|
+
enableRender: Optional[bool] = None
|
|
2465
|
+
"""
|
|
2466
|
+
Whether Rupy should attempt to use Jinja templating to add context variables into the unit
|
|
2467
|
+
"""
|
|
2468
|
+
context: Optional[Dict[str, Any]] = None
|
|
2469
|
+
slug: Optional[str] = None
|
|
2470
|
+
"""
|
|
2471
|
+
entity slug
|
|
2472
|
+
"""
|
|
2473
|
+
systemName: Optional[str] = None
|
|
2474
|
+
schemaVersion: Optional[str] = "2022.8.16"
|
|
2475
|
+
"""
|
|
2476
|
+
entity's schema version. Used to distinct between different schemas.
|
|
2477
|
+
"""
|
|
2478
|
+
isDefault: Optional[bool] = False
|
|
2479
|
+
"""
|
|
2480
|
+
Identifies that entity is defaultable
|
|
2481
|
+
"""
|
|
2482
|
+
preProcessors: Optional[List[Union[NameResultSchema, str]]] = None
|
|
2483
|
+
"""
|
|
2484
|
+
names of the pre-processors for this calculation
|
|
2485
|
+
"""
|
|
2486
|
+
postProcessors: Optional[List[Union[NameResultSchema, str]]] = None
|
|
2487
|
+
"""
|
|
2488
|
+
names of the post-processors for this calculation
|
|
2489
|
+
"""
|
|
2490
|
+
monitors: Optional[List[Union[NameResultSchema, str]]] = None
|
|
2491
|
+
"""
|
|
2492
|
+
names of the monitors for this calculation
|
|
2493
|
+
"""
|
|
2494
|
+
results: Optional[List[Union[NameResultSchema, str]]] = None
|
|
2495
|
+
"""
|
|
2496
|
+
names of the results for this calculation
|
|
2497
|
+
"""
|
|
2498
|
+
tags: Optional[List[str]] = None
|
|
2499
|
+
"""
|
|
2500
|
+
entity tags
|
|
2501
|
+
"""
|
|
2502
|
+
statusTrack: Optional[List[StatusTrackItem]] = None
|
|
2503
|
+
|
|
2504
|
+
|
|
2505
|
+
class Type31(Enum):
|
|
2506
|
+
condition = "condition"
|
|
2507
|
+
|
|
2508
|
+
|
|
2509
|
+
class ConditionUnitSchema2(BaseModel):
|
|
2510
|
+
model_config = ConfigDict(
|
|
2511
|
+
extra="allow",
|
|
2512
|
+
)
|
|
2513
|
+
type: Literal["2#-datamodel-code-generator-#-object-#-special-#"]
|
|
2514
|
+
"""
|
|
2515
|
+
type of the unit
|
|
2516
|
+
"""
|
|
2517
|
+
input: List[WorkflowUnitInputSchema]
|
|
2518
|
+
"""
|
|
2519
|
+
Input information for condition.
|
|
2520
|
+
"""
|
|
2521
|
+
statement: str
|
|
2522
|
+
"""
|
|
2523
|
+
Condition statement. e.g. 'abs(x-total_energy) < 1e-5'
|
|
2524
|
+
"""
|
|
2525
|
+
then: str
|
|
2526
|
+
"""
|
|
2527
|
+
Flowchart ID reference for `then` part of the condition.
|
|
2528
|
+
"""
|
|
2529
|
+
else_: str = Field(..., alias="else")
|
|
2530
|
+
"""
|
|
2531
|
+
Flowchart ID reference for `else` part of the condition.
|
|
2532
|
+
"""
|
|
2533
|
+
maxOccurrences: int
|
|
2534
|
+
"""
|
|
2535
|
+
Maximum occurrence of the condition, usable for loops.
|
|
2536
|
+
"""
|
|
2537
|
+
throwException: Optional[bool] = None
|
|
2538
|
+
"""
|
|
2539
|
+
Throw exception on reaching to maximum occurence.
|
|
2540
|
+
"""
|
|
2541
|
+
field_id: Optional[str] = Field(None, alias="_id")
|
|
2542
|
+
"""
|
|
2543
|
+
entity identity
|
|
2544
|
+
"""
|
|
2545
|
+
isDraft: Optional[bool] = None
|
|
2546
|
+
name: Optional[str] = None
|
|
2547
|
+
"""
|
|
2548
|
+
name of the unit. e.g. pw_scf
|
|
2549
|
+
"""
|
|
2550
|
+
status: Optional[Status] = None
|
|
2551
|
+
"""
|
|
2552
|
+
Status of the unit.
|
|
2553
|
+
"""
|
|
2554
|
+
head: Optional[bool] = None
|
|
2555
|
+
"""
|
|
2556
|
+
Whether this unit is the first one to be executed.
|
|
2557
|
+
"""
|
|
2558
|
+
flowchartId: str
|
|
2559
|
+
"""
|
|
2560
|
+
Identity of the unit in the workflow. Used to trace the execution flow of the workflow.
|
|
2561
|
+
"""
|
|
2562
|
+
next: Optional[str] = None
|
|
2563
|
+
"""
|
|
2564
|
+
Next unit's flowchartId. If empty, the current unit is the last.
|
|
2565
|
+
"""
|
|
2566
|
+
enableRender: Optional[bool] = None
|
|
2567
|
+
"""
|
|
2568
|
+
Whether Rupy should attempt to use Jinja templating to add context variables into the unit
|
|
2569
|
+
"""
|
|
2570
|
+
context: Optional[Dict[str, Any]] = None
|
|
2571
|
+
slug: Optional[str] = None
|
|
2572
|
+
"""
|
|
2573
|
+
entity slug
|
|
2574
|
+
"""
|
|
2575
|
+
systemName: Optional[str] = None
|
|
2576
|
+
schemaVersion: Optional[str] = "2022.8.16"
|
|
2577
|
+
"""
|
|
2578
|
+
entity's schema version. Used to distinct between different schemas.
|
|
2579
|
+
"""
|
|
2580
|
+
isDefault: Optional[bool] = False
|
|
2581
|
+
"""
|
|
2582
|
+
Identifies that entity is defaultable
|
|
2583
|
+
"""
|
|
2584
|
+
preProcessors: Optional[List[Union[NameResultSchema, str]]] = None
|
|
2585
|
+
"""
|
|
2586
|
+
names of the pre-processors for this calculation
|
|
2587
|
+
"""
|
|
2588
|
+
postProcessors: Optional[List[Union[NameResultSchema, str]]] = None
|
|
2589
|
+
"""
|
|
2590
|
+
names of the post-processors for this calculation
|
|
2591
|
+
"""
|
|
2592
|
+
monitors: Optional[List[Union[NameResultSchema, str]]] = None
|
|
2593
|
+
"""
|
|
2594
|
+
names of the monitors for this calculation
|
|
2595
|
+
"""
|
|
2596
|
+
results: Optional[List[Union[NameResultSchema, str]]] = None
|
|
2597
|
+
"""
|
|
2598
|
+
names of the results for this calculation
|
|
2599
|
+
"""
|
|
2600
|
+
tags: Optional[List[str]] = None
|
|
2601
|
+
"""
|
|
2602
|
+
entity tags
|
|
2603
|
+
"""
|
|
2604
|
+
statusTrack: Optional[List[StatusTrackItem]] = None
|
|
2605
|
+
|
|
2606
|
+
|
|
2607
|
+
class Type32(Enum):
|
|
2608
|
+
assertion = "assertion"
|
|
2609
|
+
|
|
2610
|
+
|
|
2611
|
+
class AssertionUnitSchema2(BaseModel):
|
|
2612
|
+
model_config = ConfigDict(
|
|
2613
|
+
extra="allow",
|
|
2614
|
+
)
|
|
2615
|
+
type: Literal["3#-datamodel-code-generator-#-object-#-special-#"]
|
|
2616
|
+
"""
|
|
2617
|
+
type of the unit
|
|
2618
|
+
"""
|
|
2619
|
+
statement: str
|
|
2620
|
+
"""
|
|
2621
|
+
The statement to be evaluated
|
|
2622
|
+
"""
|
|
2623
|
+
errorMessage: Optional[str] = None
|
|
2624
|
+
"""
|
|
2625
|
+
The error message to be displayed if the assertion fails
|
|
2626
|
+
"""
|
|
2627
|
+
field_id: Optional[str] = Field(None, alias="_id")
|
|
2628
|
+
"""
|
|
2629
|
+
entity identity
|
|
2630
|
+
"""
|
|
2631
|
+
isDraft: Optional[bool] = None
|
|
2632
|
+
name: str
|
|
2633
|
+
"""
|
|
2634
|
+
name of the unit. e.g. pw_scf
|
|
2635
|
+
"""
|
|
2636
|
+
status: Optional[Status] = None
|
|
2637
|
+
"""
|
|
2638
|
+
Status of the unit.
|
|
2639
|
+
"""
|
|
2640
|
+
head: Optional[bool] = None
|
|
2641
|
+
"""
|
|
2642
|
+
Whether this unit is the first one to be executed.
|
|
2643
|
+
"""
|
|
2644
|
+
flowchartId: str
|
|
2645
|
+
"""
|
|
2646
|
+
Identity of the unit in the workflow. Used to trace the execution flow of the workflow.
|
|
2647
|
+
"""
|
|
2648
|
+
next: Optional[str] = None
|
|
2649
|
+
"""
|
|
2650
|
+
Next unit's flowchartId. If empty, the current unit is the last.
|
|
2651
|
+
"""
|
|
2652
|
+
enableRender: Optional[bool] = None
|
|
2653
|
+
"""
|
|
2654
|
+
Whether Rupy should attempt to use Jinja templating to add context variables into the unit
|
|
2655
|
+
"""
|
|
2656
|
+
context: Optional[Dict[str, Any]] = None
|
|
2657
|
+
slug: Optional[str] = None
|
|
2658
|
+
"""
|
|
2659
|
+
entity slug
|
|
2660
|
+
"""
|
|
2661
|
+
systemName: Optional[str] = None
|
|
2662
|
+
schemaVersion: Optional[str] = "2022.8.16"
|
|
2663
|
+
"""
|
|
2664
|
+
entity's schema version. Used to distinct between different schemas.
|
|
2665
|
+
"""
|
|
2666
|
+
isDefault: Optional[bool] = False
|
|
2667
|
+
"""
|
|
2668
|
+
Identifies that entity is defaultable
|
|
2669
|
+
"""
|
|
2670
|
+
preProcessors: Optional[List[Union[NameResultSchema, str]]] = None
|
|
2671
|
+
"""
|
|
2672
|
+
names of the pre-processors for this calculation
|
|
2673
|
+
"""
|
|
2674
|
+
postProcessors: Optional[List[Union[NameResultSchema, str]]] = None
|
|
2675
|
+
"""
|
|
2676
|
+
names of the post-processors for this calculation
|
|
2677
|
+
"""
|
|
2678
|
+
monitors: Optional[List[Union[NameResultSchema, str]]] = None
|
|
2679
|
+
"""
|
|
2680
|
+
names of the monitors for this calculation
|
|
2681
|
+
"""
|
|
2682
|
+
results: Optional[List[Union[NameResultSchema, str]]] = None
|
|
2683
|
+
"""
|
|
2684
|
+
names of the results for this calculation
|
|
2685
|
+
"""
|
|
2686
|
+
tags: Optional[List[str]] = None
|
|
2687
|
+
"""
|
|
2688
|
+
entity tags
|
|
2689
|
+
"""
|
|
2690
|
+
statusTrack: Optional[List[StatusTrackItem]] = None
|
|
2691
|
+
|
|
2692
|
+
|
|
2693
|
+
class Type33(Enum):
|
|
2694
|
+
execution = "execution"
|
|
2695
|
+
|
|
2696
|
+
|
|
2697
|
+
class ExecutableSchema5(BaseModel):
|
|
2698
|
+
name: str
|
|
2699
|
+
"""
|
|
2700
|
+
The name of the executable. e.g. pw.x
|
|
2701
|
+
"""
|
|
2702
|
+
applicationId: Optional[List[str]] = None
|
|
2703
|
+
"""
|
|
2704
|
+
_ids of the application this executable belongs to
|
|
2705
|
+
"""
|
|
2706
|
+
hasAdvancedComputeOptions: Optional[bool] = None
|
|
2707
|
+
"""
|
|
2708
|
+
Whether advanced compute options are present
|
|
2709
|
+
"""
|
|
2710
|
+
field_id: Optional[str] = Field(None, alias="_id")
|
|
2711
|
+
"""
|
|
2712
|
+
entity identity
|
|
2713
|
+
"""
|
|
2714
|
+
slug: Optional[str] = None
|
|
2715
|
+
"""
|
|
2716
|
+
entity slug
|
|
2717
|
+
"""
|
|
2718
|
+
systemName: Optional[str] = None
|
|
2719
|
+
schemaVersion: Optional[str] = "2022.8.16"
|
|
2720
|
+
"""
|
|
2721
|
+
entity's schema version. Used to distinct between different schemas.
|
|
2722
|
+
"""
|
|
2723
|
+
isDefault: Optional[bool] = False
|
|
2724
|
+
"""
|
|
2725
|
+
Identifies that entity is defaultable
|
|
2726
|
+
"""
|
|
2727
|
+
preProcessors: Optional[List[Union[NameResultSchema, str]]] = None
|
|
2728
|
+
"""
|
|
2729
|
+
names of the pre-processors for this calculation
|
|
2730
|
+
"""
|
|
2731
|
+
postProcessors: Optional[List[Union[NameResultSchema, str]]] = None
|
|
2732
|
+
"""
|
|
2733
|
+
names of the post-processors for this calculation
|
|
2734
|
+
"""
|
|
2735
|
+
monitors: Optional[List[Union[NameResultSchema, str]]] = None
|
|
2736
|
+
"""
|
|
2737
|
+
names of the monitors for this calculation
|
|
2738
|
+
"""
|
|
2739
|
+
results: Optional[List[Union[NameResultSchema, str]]] = None
|
|
2740
|
+
"""
|
|
2741
|
+
names of the results for this calculation
|
|
2742
|
+
"""
|
|
2743
|
+
|
|
2744
|
+
|
|
2745
|
+
class FlavorSchema5(BaseModel):
|
|
2746
|
+
executableId: Optional[str] = None
|
|
2747
|
+
"""
|
|
2748
|
+
_id of the executable this flavor belongs to
|
|
2749
|
+
"""
|
|
2750
|
+
executableName: Optional[str] = None
|
|
2751
|
+
"""
|
|
2752
|
+
name of the executable this flavor belongs to
|
|
2753
|
+
"""
|
|
2754
|
+
applicationName: Optional[str] = None
|
|
2755
|
+
"""
|
|
2756
|
+
name of the application this flavor belongs to
|
|
2757
|
+
"""
|
|
2758
|
+
input: Optional[List[ExecutionUnitInputIdItemSchemaForPhysicsBasedSimulationEngines]] = Field(
|
|
2759
|
+
None, title="execution unit input schema"
|
|
2760
|
+
)
|
|
2761
|
+
supportedApplicationVersions: Optional[List[str]] = None
|
|
2762
|
+
"""
|
|
2763
|
+
list of application versions this flavor supports
|
|
2764
|
+
"""
|
|
2765
|
+
field_id: Optional[str] = Field(None, alias="_id")
|
|
2766
|
+
"""
|
|
2767
|
+
entity identity
|
|
2768
|
+
"""
|
|
2769
|
+
slug: Optional[str] = None
|
|
2770
|
+
"""
|
|
2771
|
+
entity slug
|
|
2772
|
+
"""
|
|
2773
|
+
systemName: Optional[str] = None
|
|
2774
|
+
schemaVersion: Optional[str] = "2022.8.16"
|
|
2775
|
+
"""
|
|
2776
|
+
entity's schema version. Used to distinct between different schemas.
|
|
2777
|
+
"""
|
|
2778
|
+
name: Optional[str] = None
|
|
2779
|
+
"""
|
|
2780
|
+
entity name
|
|
2781
|
+
"""
|
|
2782
|
+
isDefault: Optional[bool] = False
|
|
2783
|
+
"""
|
|
2784
|
+
Identifies that entity is defaultable
|
|
2785
|
+
"""
|
|
2786
|
+
preProcessors: Optional[List[Union[NameResultSchema, str]]] = None
|
|
2787
|
+
"""
|
|
2788
|
+
names of the pre-processors for this calculation
|
|
2789
|
+
"""
|
|
2790
|
+
postProcessors: Optional[List[Union[NameResultSchema, str]]] = None
|
|
2791
|
+
"""
|
|
2792
|
+
names of the post-processors for this calculation
|
|
2793
|
+
"""
|
|
2794
|
+
monitors: Optional[List[Union[NameResultSchema, str]]] = None
|
|
2795
|
+
"""
|
|
2796
|
+
names of the monitors for this calculation
|
|
2797
|
+
"""
|
|
2798
|
+
results: Optional[List[Union[NameResultSchema, str]]] = None
|
|
2799
|
+
"""
|
|
2800
|
+
names of the results for this calculation
|
|
2801
|
+
"""
|
|
2802
|
+
|
|
2803
|
+
|
|
2804
|
+
class ExecutionUnitSchemaBase2(BaseModel):
|
|
2805
|
+
model_config = ConfigDict(
|
|
2806
|
+
extra="allow",
|
|
2807
|
+
)
|
|
2808
|
+
type: Literal["4#-datamodel-code-generator-#-object-#-special-#"]
|
|
2809
|
+
"""
|
|
2810
|
+
type of the unit
|
|
2811
|
+
"""
|
|
2812
|
+
application: ApplicationSchemaBase = Field(..., title="application schema (base)")
|
|
2813
|
+
executable: Optional[ExecutableSchema5] = Field(None, title="executable schema")
|
|
2814
|
+
flavor: Optional[FlavorSchema5] = Field(None, title="flavor schema")
|
|
2815
|
+
input: Any
|
|
2816
|
+
"""
|
|
2817
|
+
unit input (type to be specified by the application's execution unit)
|
|
2818
|
+
"""
|
|
2819
|
+
field_id: Optional[str] = Field(None, alias="_id")
|
|
2820
|
+
"""
|
|
2821
|
+
entity identity
|
|
2822
|
+
"""
|
|
2823
|
+
isDraft: Optional[bool] = None
|
|
2824
|
+
name: str
|
|
2825
|
+
"""
|
|
2826
|
+
name of the unit. e.g. pw_scf
|
|
2827
|
+
"""
|
|
2828
|
+
status: Optional[Status] = None
|
|
2829
|
+
"""
|
|
2830
|
+
Status of the unit.
|
|
2831
|
+
"""
|
|
2832
|
+
head: Optional[bool] = None
|
|
2833
|
+
"""
|
|
2834
|
+
Whether this unit is the first one to be executed.
|
|
2835
|
+
"""
|
|
2836
|
+
flowchartId: str
|
|
2837
|
+
"""
|
|
2838
|
+
Identity of the unit in the workflow. Used to trace the execution flow of the workflow.
|
|
2839
|
+
"""
|
|
2840
|
+
next: Optional[str] = None
|
|
2841
|
+
"""
|
|
2842
|
+
Next unit's flowchartId. If empty, the current unit is the last.
|
|
2843
|
+
"""
|
|
2844
|
+
enableRender: Optional[bool] = None
|
|
2845
|
+
"""
|
|
2846
|
+
Whether Rupy should attempt to use Jinja templating to add context variables into the unit
|
|
2847
|
+
"""
|
|
2848
|
+
context: Optional[Dict[str, Any]] = None
|
|
2849
|
+
slug: Optional[str] = None
|
|
2850
|
+
"""
|
|
2851
|
+
entity slug
|
|
2852
|
+
"""
|
|
2853
|
+
systemName: Optional[str] = None
|
|
2854
|
+
schemaVersion: Optional[str] = "2022.8.16"
|
|
2855
|
+
"""
|
|
2856
|
+
entity's schema version. Used to distinct between different schemas.
|
|
2857
|
+
"""
|
|
2858
|
+
isDefault: Optional[bool] = False
|
|
2859
|
+
"""
|
|
2860
|
+
Identifies that entity is defaultable
|
|
2861
|
+
"""
|
|
2862
|
+
preProcessors: Optional[List[Union[NameResultSchema, str]]] = None
|
|
2863
|
+
"""
|
|
2864
|
+
names of the pre-processors for this calculation
|
|
2865
|
+
"""
|
|
2866
|
+
postProcessors: Optional[List[Union[NameResultSchema, str]]] = None
|
|
2867
|
+
"""
|
|
2868
|
+
names of the post-processors for this calculation
|
|
2869
|
+
"""
|
|
2870
|
+
monitors: Optional[List[Union[NameResultSchema, str]]] = None
|
|
2871
|
+
"""
|
|
2872
|
+
names of the monitors for this calculation
|
|
2873
|
+
"""
|
|
2874
|
+
results: Optional[List[Union[NameResultSchema, str]]] = None
|
|
2875
|
+
"""
|
|
2876
|
+
names of the results for this calculation
|
|
2877
|
+
"""
|
|
2878
|
+
tags: Optional[List[str]] = None
|
|
2879
|
+
"""
|
|
2880
|
+
entity tags
|
|
2881
|
+
"""
|
|
2882
|
+
statusTrack: Optional[List[StatusTrackItem]] = None
|
|
2883
|
+
|
|
2884
|
+
|
|
2885
|
+
class Type34(Enum):
|
|
2886
|
+
assignment = "assignment"
|
|
2887
|
+
|
|
2888
|
+
|
|
2889
|
+
class AssignmentUnitSchema2(BaseModel):
|
|
2890
|
+
model_config = ConfigDict(
|
|
2891
|
+
extra="allow",
|
|
2892
|
+
)
|
|
2893
|
+
type: Literal["5#-datamodel-code-generator-#-object-#-special-#"]
|
|
2894
|
+
"""
|
|
2895
|
+
type of the unit
|
|
2896
|
+
"""
|
|
2897
|
+
input: List[WorkflowUnitInputSchema]
|
|
2898
|
+
"""
|
|
2899
|
+
Input information for assignment. if omitted, means that it is an initialization unit, otherwise it is an assignment.
|
|
2900
|
+
"""
|
|
2901
|
+
operand: str
|
|
2902
|
+
"""
|
|
2903
|
+
Name of the global variable. e.g. 'x'
|
|
2904
|
+
"""
|
|
2905
|
+
value: Union[str, bool, float]
|
|
2906
|
+
"""
|
|
2907
|
+
Value of the variable. The value content could be a simple integer, string or a python expression. e.g. '0' (initialization), 'sin(x)+1' (expression)
|
|
2908
|
+
"""
|
|
2909
|
+
field_id: Optional[str] = Field(None, alias="_id")
|
|
2910
|
+
"""
|
|
2911
|
+
entity identity
|
|
2912
|
+
"""
|
|
2913
|
+
isDraft: Optional[bool] = None
|
|
2914
|
+
name: str
|
|
2915
|
+
"""
|
|
2916
|
+
name of the unit. e.g. pw_scf
|
|
2917
|
+
"""
|
|
2918
|
+
status: Optional[Status] = None
|
|
2919
|
+
"""
|
|
2920
|
+
Status of the unit.
|
|
2921
|
+
"""
|
|
2922
|
+
head: Optional[bool] = None
|
|
2923
|
+
"""
|
|
2924
|
+
Whether this unit is the first one to be executed.
|
|
2925
|
+
"""
|
|
2926
|
+
flowchartId: str
|
|
2927
|
+
"""
|
|
2928
|
+
Identity of the unit in the workflow. Used to trace the execution flow of the workflow.
|
|
2929
|
+
"""
|
|
2930
|
+
next: Optional[str] = None
|
|
2931
|
+
"""
|
|
2932
|
+
Next unit's flowchartId. If empty, the current unit is the last.
|
|
2933
|
+
"""
|
|
2934
|
+
enableRender: Optional[bool] = None
|
|
2935
|
+
"""
|
|
2936
|
+
Whether Rupy should attempt to use Jinja templating to add context variables into the unit
|
|
2937
|
+
"""
|
|
2938
|
+
context: Optional[Dict[str, Any]] = None
|
|
2939
|
+
slug: Optional[str] = None
|
|
2940
|
+
"""
|
|
2941
|
+
entity slug
|
|
2942
|
+
"""
|
|
2943
|
+
systemName: Optional[str] = None
|
|
2944
|
+
schemaVersion: Optional[str] = "2022.8.16"
|
|
2945
|
+
"""
|
|
2946
|
+
entity's schema version. Used to distinct between different schemas.
|
|
2947
|
+
"""
|
|
2948
|
+
isDefault: Optional[bool] = False
|
|
2949
|
+
"""
|
|
2950
|
+
Identifies that entity is defaultable
|
|
2951
|
+
"""
|
|
2952
|
+
preProcessors: Optional[List[Union[NameResultSchema, str]]] = None
|
|
2953
|
+
"""
|
|
2954
|
+
names of the pre-processors for this calculation
|
|
2955
|
+
"""
|
|
2956
|
+
postProcessors: Optional[List[Union[NameResultSchema, str]]] = None
|
|
2957
|
+
"""
|
|
2958
|
+
names of the post-processors for this calculation
|
|
2959
|
+
"""
|
|
2960
|
+
monitors: Optional[List[Union[NameResultSchema, str]]] = None
|
|
2961
|
+
"""
|
|
2962
|
+
names of the monitors for this calculation
|
|
2963
|
+
"""
|
|
2964
|
+
results: Optional[List[Union[NameResultSchema, str]]] = None
|
|
2965
|
+
"""
|
|
2966
|
+
names of the results for this calculation
|
|
2967
|
+
"""
|
|
2968
|
+
tags: Optional[List[str]] = None
|
|
2969
|
+
"""
|
|
2970
|
+
entity tags
|
|
2971
|
+
"""
|
|
2972
|
+
statusTrack: Optional[List[StatusTrackItem]] = None
|
|
2973
|
+
scope: Optional[str] = None
|
|
2974
|
+
|
|
2975
|
+
|
|
2976
|
+
class Type35(Enum):
|
|
2977
|
+
processing = "processing"
|
|
2978
|
+
|
|
2979
|
+
|
|
2980
|
+
class ProcessingUnitSchema1(BaseModel):
|
|
2981
|
+
model_config = ConfigDict(
|
|
2982
|
+
extra="allow",
|
|
2983
|
+
)
|
|
2984
|
+
type: Literal["6#-datamodel-code-generator-#-object-#-special-#"]
|
|
2985
|
+
"""
|
|
2986
|
+
type of the unit
|
|
2987
|
+
"""
|
|
2988
|
+
operation: str
|
|
2989
|
+
"""
|
|
2990
|
+
Contains information about the operation used.
|
|
2991
|
+
"""
|
|
2992
|
+
operationType: str
|
|
2993
|
+
"""
|
|
2994
|
+
Contains information about the specific type of the operation used.
|
|
2995
|
+
"""
|
|
2996
|
+
inputData: Any
|
|
2997
|
+
"""
|
|
2998
|
+
unit input (type to be specified by the child units)
|
|
2999
|
+
"""
|
|
3000
|
+
field_id: Optional[str] = Field(None, alias="_id")
|
|
3001
|
+
"""
|
|
3002
|
+
entity identity
|
|
3003
|
+
"""
|
|
3004
|
+
isDraft: Optional[bool] = None
|
|
3005
|
+
name: str
|
|
3006
|
+
"""
|
|
3007
|
+
name of the unit. e.g. pw_scf
|
|
3008
|
+
"""
|
|
3009
|
+
status: Optional[Status] = None
|
|
3010
|
+
"""
|
|
3011
|
+
Status of the unit.
|
|
3012
|
+
"""
|
|
3013
|
+
head: Optional[bool] = None
|
|
3014
|
+
"""
|
|
3015
|
+
Whether this unit is the first one to be executed.
|
|
3016
|
+
"""
|
|
3017
|
+
flowchartId: str
|
|
3018
|
+
"""
|
|
3019
|
+
Identity of the unit in the workflow. Used to trace the execution flow of the workflow.
|
|
3020
|
+
"""
|
|
3021
|
+
next: Optional[str] = None
|
|
3022
|
+
"""
|
|
3023
|
+
Next unit's flowchartId. If empty, the current unit is the last.
|
|
3024
|
+
"""
|
|
3025
|
+
enableRender: Optional[bool] = None
|
|
3026
|
+
"""
|
|
3027
|
+
Whether Rupy should attempt to use Jinja templating to add context variables into the unit
|
|
3028
|
+
"""
|
|
3029
|
+
context: Optional[Dict[str, Any]] = None
|
|
3030
|
+
slug: Optional[str] = None
|
|
3031
|
+
"""
|
|
3032
|
+
entity slug
|
|
3033
|
+
"""
|
|
3034
|
+
systemName: Optional[str] = None
|
|
3035
|
+
schemaVersion: Optional[str] = "2022.8.16"
|
|
3036
|
+
"""
|
|
3037
|
+
entity's schema version. Used to distinct between different schemas.
|
|
3038
|
+
"""
|
|
3039
|
+
isDefault: Optional[bool] = False
|
|
3040
|
+
"""
|
|
3041
|
+
Identifies that entity is defaultable
|
|
3042
|
+
"""
|
|
3043
|
+
preProcessors: Optional[List[Union[NameResultSchema, str]]] = None
|
|
3044
|
+
"""
|
|
3045
|
+
names of the pre-processors for this calculation
|
|
3046
|
+
"""
|
|
3047
|
+
postProcessors: Optional[List[Union[NameResultSchema, str]]] = None
|
|
3048
|
+
"""
|
|
3049
|
+
names of the post-processors for this calculation
|
|
3050
|
+
"""
|
|
3051
|
+
monitors: Optional[List[Union[NameResultSchema, str]]] = None
|
|
3052
|
+
"""
|
|
3053
|
+
names of the monitors for this calculation
|
|
3054
|
+
"""
|
|
3055
|
+
results: Optional[List[Union[NameResultSchema, str]]] = None
|
|
3056
|
+
"""
|
|
3057
|
+
names of the results for this calculation
|
|
3058
|
+
"""
|
|
3059
|
+
tags: Optional[List[str]] = None
|
|
3060
|
+
"""
|
|
3061
|
+
entity tags
|
|
3062
|
+
"""
|
|
3063
|
+
statusTrack: Optional[List[StatusTrackItem]] = None
|
|
3064
|
+
|
|
3065
|
+
|
|
3066
|
+
class Type36(Enum):
|
|
3067
|
+
map = "map"
|
|
3068
|
+
|
|
3069
|
+
|
|
3070
|
+
class Input(BaseModel):
|
|
3071
|
+
target: str
|
|
3072
|
+
"""
|
|
3073
|
+
Name of the target variable to substitute using the values below. e.g. K_POINTS
|
|
3074
|
+
"""
|
|
3075
|
+
scope: Optional[str] = None
|
|
3076
|
+
"""
|
|
3077
|
+
Scope to retrieve `values` from, global or flowchartId. Optional if `values` is given.
|
|
3078
|
+
"""
|
|
3079
|
+
name: Optional[str] = None
|
|
3080
|
+
"""
|
|
3081
|
+
Name of the variable inside the scope to retrieve `values` from. Optional if `values` is given.
|
|
3082
|
+
"""
|
|
3083
|
+
values: Optional[List[Union[str, float, Dict[str, Any]]]] = None
|
|
3084
|
+
"""
|
|
3085
|
+
Sequence of values for the target Jinja variable. Optional if `scope` and `name` are given. This can be used for map-reduce type parallel execution
|
|
3086
|
+
"""
|
|
3087
|
+
useValues: Optional[bool] = None
|
|
3088
|
+
|
|
3089
|
+
|
|
3090
|
+
class MapUnitSchema(BaseModel):
|
|
3091
|
+
model_config = ConfigDict(
|
|
3092
|
+
extra="allow",
|
|
3093
|
+
)
|
|
3094
|
+
type: Literal["7#-datamodel-code-generator-#-object-#-special-#"]
|
|
3095
|
+
"""
|
|
3096
|
+
type of the unit
|
|
3097
|
+
"""
|
|
3098
|
+
workflowId: str
|
|
3099
|
+
"""
|
|
3100
|
+
Id of workflow to run inside map
|
|
3101
|
+
"""
|
|
3102
|
+
input: Input
|
|
3103
|
+
"""
|
|
3104
|
+
Input information for map.
|
|
3105
|
+
"""
|
|
3106
|
+
field_id: Optional[str] = Field(None, alias="_id")
|
|
3107
|
+
"""
|
|
3108
|
+
entity identity
|
|
3109
|
+
"""
|
|
3110
|
+
isDraft: Optional[bool] = None
|
|
3111
|
+
name: str
|
|
3112
|
+
"""
|
|
3113
|
+
name of the unit. e.g. pw_scf
|
|
3114
|
+
"""
|
|
3115
|
+
status: Optional[Status] = None
|
|
3116
|
+
"""
|
|
3117
|
+
Status of the unit.
|
|
3118
|
+
"""
|
|
3119
|
+
head: Optional[bool] = None
|
|
3120
|
+
"""
|
|
3121
|
+
Whether this unit is the first one to be executed.
|
|
3122
|
+
"""
|
|
3123
|
+
flowchartId: str
|
|
3124
|
+
"""
|
|
3125
|
+
Identity of the unit in the workflow. Used to trace the execution flow of the workflow.
|
|
3126
|
+
"""
|
|
3127
|
+
next: Optional[str] = None
|
|
3128
|
+
"""
|
|
3129
|
+
Next unit's flowchartId. If empty, the current unit is the last.
|
|
3130
|
+
"""
|
|
3131
|
+
enableRender: Optional[bool] = None
|
|
3132
|
+
"""
|
|
3133
|
+
Whether Rupy should attempt to use Jinja templating to add context variables into the unit
|
|
3134
|
+
"""
|
|
3135
|
+
context: Optional[Dict[str, Any]] = None
|
|
3136
|
+
slug: Optional[str] = None
|
|
3137
|
+
"""
|
|
3138
|
+
entity slug
|
|
3139
|
+
"""
|
|
3140
|
+
systemName: Optional[str] = None
|
|
3141
|
+
schemaVersion: Optional[str] = "2022.8.16"
|
|
3142
|
+
"""
|
|
3143
|
+
entity's schema version. Used to distinct between different schemas.
|
|
3144
|
+
"""
|
|
3145
|
+
isDefault: Optional[bool] = False
|
|
3146
|
+
"""
|
|
3147
|
+
Identifies that entity is defaultable
|
|
3148
|
+
"""
|
|
3149
|
+
preProcessors: Optional[List[Union[NameResultSchema, str]]] = None
|
|
3150
|
+
"""
|
|
3151
|
+
names of the pre-processors for this calculation
|
|
3152
|
+
"""
|
|
3153
|
+
postProcessors: Optional[List[Union[NameResultSchema, str]]] = None
|
|
3154
|
+
"""
|
|
3155
|
+
names of the post-processors for this calculation
|
|
3156
|
+
"""
|
|
3157
|
+
monitors: Optional[List[Union[NameResultSchema, str]]] = None
|
|
3158
|
+
"""
|
|
3159
|
+
names of the monitors for this calculation
|
|
3160
|
+
"""
|
|
3161
|
+
results: Optional[List[Union[NameResultSchema, str]]] = None
|
|
3162
|
+
"""
|
|
3163
|
+
names of the results for this calculation
|
|
3164
|
+
"""
|
|
3165
|
+
tags: Optional[List[str]] = None
|
|
3166
|
+
"""
|
|
3167
|
+
entity tags
|
|
3168
|
+
"""
|
|
3169
|
+
statusTrack: Optional[List[StatusTrackItem]] = None
|
|
3170
|
+
|
|
3171
|
+
|
|
3172
|
+
class Type37(Enum):
|
|
3173
|
+
subworkflow = "subworkflow"
|
|
3174
|
+
|
|
3175
|
+
|
|
3176
|
+
class SubworkflowUnitSchema(BaseModel):
|
|
3177
|
+
model_config = ConfigDict(
|
|
3178
|
+
extra="allow",
|
|
3179
|
+
)
|
|
3180
|
+
type: Literal["8#-datamodel-code-generator-#-object-#-special-#"]
|
|
3181
|
+
"""
|
|
3182
|
+
type of the unit
|
|
3183
|
+
"""
|
|
3184
|
+
field_id: Optional[str] = Field(None, alias="_id")
|
|
3185
|
+
"""
|
|
3186
|
+
entity identity
|
|
3187
|
+
"""
|
|
3188
|
+
isDraft: Optional[bool] = None
|
|
3189
|
+
name: str
|
|
3190
|
+
"""
|
|
3191
|
+
name of the unit. e.g. pw_scf
|
|
3192
|
+
"""
|
|
3193
|
+
status: Optional[Status] = None
|
|
3194
|
+
"""
|
|
3195
|
+
Status of the unit.
|
|
3196
|
+
"""
|
|
3197
|
+
head: Optional[bool] = None
|
|
3198
|
+
"""
|
|
3199
|
+
Whether this unit is the first one to be executed.
|
|
3200
|
+
"""
|
|
3201
|
+
flowchartId: str
|
|
3202
|
+
"""
|
|
3203
|
+
Identity of the unit in the workflow. Used to trace the execution flow of the workflow.
|
|
3204
|
+
"""
|
|
3205
|
+
next: Optional[str] = None
|
|
3206
|
+
"""
|
|
3207
|
+
Next unit's flowchartId. If empty, the current unit is the last.
|
|
3208
|
+
"""
|
|
3209
|
+
enableRender: Optional[bool] = None
|
|
3210
|
+
"""
|
|
3211
|
+
Whether Rupy should attempt to use Jinja templating to add context variables into the unit
|
|
3212
|
+
"""
|
|
3213
|
+
context: Optional[Dict[str, Any]] = None
|
|
3214
|
+
slug: Optional[str] = None
|
|
3215
|
+
"""
|
|
3216
|
+
entity slug
|
|
3217
|
+
"""
|
|
3218
|
+
systemName: Optional[str] = None
|
|
3219
|
+
schemaVersion: Optional[str] = "2022.8.16"
|
|
3220
|
+
"""
|
|
3221
|
+
entity's schema version. Used to distinct between different schemas.
|
|
3222
|
+
"""
|
|
3223
|
+
isDefault: Optional[bool] = False
|
|
3224
|
+
"""
|
|
3225
|
+
Identifies that entity is defaultable
|
|
3226
|
+
"""
|
|
3227
|
+
preProcessors: Optional[List[Union[NameResultSchema, str]]] = None
|
|
3228
|
+
"""
|
|
3229
|
+
names of the pre-processors for this calculation
|
|
3230
|
+
"""
|
|
3231
|
+
postProcessors: Optional[List[Union[NameResultSchema, str]]] = None
|
|
3232
|
+
"""
|
|
3233
|
+
names of the post-processors for this calculation
|
|
3234
|
+
"""
|
|
3235
|
+
monitors: Optional[List[Union[NameResultSchema, str]]] = None
|
|
3236
|
+
"""
|
|
3237
|
+
names of the monitors for this calculation
|
|
3238
|
+
"""
|
|
3239
|
+
results: Optional[List[Union[NameResultSchema, str]]] = None
|
|
3240
|
+
"""
|
|
3241
|
+
names of the results for this calculation
|
|
3242
|
+
"""
|
|
3243
|
+
tags: Optional[List[str]] = None
|
|
3244
|
+
"""
|
|
3245
|
+
entity tags
|
|
3246
|
+
"""
|
|
3247
|
+
statusTrack: Optional[List[StatusTrackItem]] = None
|
|
3248
|
+
|
|
3249
|
+
|
|
3250
|
+
class WorkflowUnitSchema(
|
|
3251
|
+
RootModel[
|
|
3252
|
+
Union[
|
|
3253
|
+
DataIOUnitSchema1,
|
|
3254
|
+
ReduceUnitSchema1,
|
|
3255
|
+
ConditionUnitSchema2,
|
|
3256
|
+
AssertionUnitSchema2,
|
|
3257
|
+
ExecutionUnitSchemaBase2,
|
|
3258
|
+
AssignmentUnitSchema2,
|
|
3259
|
+
ProcessingUnitSchema1,
|
|
3260
|
+
MapUnitSchema,
|
|
3261
|
+
SubworkflowUnitSchema,
|
|
3262
|
+
]
|
|
3263
|
+
]
|
|
3264
|
+
):
|
|
3265
|
+
root: Union[
|
|
3266
|
+
DataIOUnitSchema1,
|
|
3267
|
+
ReduceUnitSchema1,
|
|
3268
|
+
ConditionUnitSchema2,
|
|
3269
|
+
AssertionUnitSchema2,
|
|
3270
|
+
ExecutionUnitSchemaBase2,
|
|
3271
|
+
AssignmentUnitSchema2,
|
|
3272
|
+
ProcessingUnitSchema1,
|
|
3273
|
+
MapUnitSchema,
|
|
3274
|
+
SubworkflowUnitSchema,
|
|
3275
|
+
] = Field(..., discriminator="type", title="workflow unit schema")
|
|
3276
|
+
|
|
3277
|
+
|
|
3278
|
+
class WorkflowPropertySchema(BaseModel):
|
|
3279
|
+
name: Literal["25#-datamodel-code-generator-#-object-#-special-#"]
|
|
3280
|
+
"""
|
|
3281
|
+
entity name
|
|
3282
|
+
"""
|
|
3283
|
+
subworkflows: List[Subworkflow]
|
|
3284
|
+
"""
|
|
3285
|
+
Array of subworkflows. Subworkflow can be an instance of workflow to allow for nesting
|
|
3286
|
+
"""
|
|
3287
|
+
units: List[WorkflowUnitSchema]
|
|
3288
|
+
"""
|
|
3289
|
+
Contains the Units of the Workflow
|
|
3290
|
+
"""
|
|
3291
|
+
properties: Optional[List[Union[str, Dict[str, Any]]]] = None
|
|
3292
|
+
"""
|
|
3293
|
+
Array of characteristic properties calculated by this workflow (TODO: add enums)
|
|
3294
|
+
"""
|
|
3295
|
+
isUsingDataset: Optional[bool] = None
|
|
3296
|
+
"""
|
|
3297
|
+
Whether to use the dataset tab in the job designer. Mutually exclusive with using the materials tab.
|
|
3298
|
+
"""
|
|
3299
|
+
workflows: Optional[List[Dict[str, Any]]] = None
|
|
3300
|
+
"""
|
|
3301
|
+
Array of workflows with the same schema as the current one.
|
|
3302
|
+
"""
|
|
3303
|
+
field_id: Optional[str] = Field(None, alias="_id")
|
|
3304
|
+
"""
|
|
3305
|
+
entity identity
|
|
3306
|
+
"""
|
|
3307
|
+
slug: Optional[str] = None
|
|
3308
|
+
"""
|
|
3309
|
+
entity slug
|
|
3310
|
+
"""
|
|
3311
|
+
systemName: Optional[str] = None
|
|
3312
|
+
schemaVersion: Optional[str] = "2022.8.16"
|
|
3313
|
+
"""
|
|
3314
|
+
entity's schema version. Used to distinct between different schemas.
|
|
3315
|
+
"""
|
|
3316
|
+
isDefault: Optional[bool] = False
|
|
3317
|
+
"""
|
|
3318
|
+
Identifies that entity is defaultable
|
|
3319
|
+
"""
|
|
3320
|
+
metadata: Optional[Dict[str, Any]] = None
|
|
3321
|
+
|
|
3322
|
+
|
|
3323
|
+
class Name515(Enum):
|
|
3324
|
+
magnetic_moments = "magnetic_moments"
|
|
3325
|
+
|
|
3326
|
+
|
|
3327
|
+
class AtomicVectorSchema(BaseModel):
|
|
3328
|
+
value: List[float] = Field(..., max_length=3, min_length=3, title="vector 3d schema")
|
|
3329
|
+
"""
|
|
3330
|
+
value of this entry
|
|
3331
|
+
"""
|
|
3332
|
+
id: int
|
|
3333
|
+
"""
|
|
3334
|
+
integer id of this entry
|
|
3335
|
+
"""
|
|
3336
|
+
|
|
3337
|
+
|
|
3338
|
+
class Units226(Enum):
|
|
3339
|
+
uB = "uB"
|
|
3340
|
+
|
|
3341
|
+
|
|
3342
|
+
class MagneticMomentsPropertySchema(BaseModel):
|
|
3343
|
+
name: Literal["26#-datamodel-code-generator-#-object-#-special-#"]
|
|
3344
|
+
values: List[AtomicVectorSchema] = Field(..., title="atomic vectors schema")
|
|
3345
|
+
units: Units226
|
|
3346
|
+
|
|
3347
|
+
|
|
3348
|
+
class Name516(Enum):
|
|
3349
|
+
atomic_forces = "atomic_forces"
|
|
3350
|
+
|
|
3351
|
+
|
|
3352
|
+
class Units227(Enum):
|
|
3353
|
+
eV_bohr = "eV/bohr"
|
|
3354
|
+
eV_angstrom = "eV/angstrom"
|
|
3355
|
+
Ry_a_u_ = "Ry/a.u."
|
|
3356
|
+
newton = "newton"
|
|
3357
|
+
kg_m_s_2 = "kg*m/s^2"
|
|
3358
|
+
eV_a_u_ = "eV/a.u."
|
|
3359
|
+
|
|
3360
|
+
|
|
3361
|
+
class AtomicForcesPropertySchema(BaseModel):
|
|
3362
|
+
name: Literal["27#-datamodel-code-generator-#-object-#-special-#"]
|
|
3363
|
+
values: List[AtomicVectorSchema] = Field(..., title="atomic vectors schema")
|
|
3364
|
+
units: Units227
|
|
3365
|
+
|
|
3366
|
+
|
|
3367
|
+
class Name517(Enum):
|
|
3368
|
+
convergence_electronic = "convergence_electronic"
|
|
3369
|
+
|
|
3370
|
+
|
|
3371
|
+
class Units228(Enum):
|
|
3372
|
+
eV = "eV"
|
|
3373
|
+
Ry = "Ry"
|
|
3374
|
+
hartree = "hartree"
|
|
3375
|
+
|
|
3376
|
+
|
|
3377
|
+
class ConvergenceElectronicPropertySchema(BaseModel):
|
|
3378
|
+
name: Literal["28#-datamodel-code-generator-#-object-#-special-#"]
|
|
3379
|
+
units: Units228
|
|
3380
|
+
data: List[List[float]]
|
|
3381
|
+
|
|
3382
|
+
|
|
3383
|
+
class Name518(Enum):
|
|
3384
|
+
convergence_ionic = "convergence_ionic"
|
|
3385
|
+
|
|
3386
|
+
|
|
3387
|
+
class Units229(Enum):
|
|
3388
|
+
eV = "eV"
|
|
3389
|
+
|
|
3390
|
+
|
|
3391
|
+
class Units230(Enum):
|
|
3392
|
+
eV = "eV"
|
|
3393
|
+
Ry = "Ry"
|
|
3394
|
+
hartree = "hartree"
|
|
3395
|
+
|
|
3396
|
+
|
|
3397
|
+
class Electronic(BaseModel):
|
|
3398
|
+
units: Optional[Units230] = None
|
|
3399
|
+
"""
|
|
3400
|
+
units for force tolerance
|
|
3401
|
+
"""
|
|
3402
|
+
data: Optional[List[float]] = None
|
|
3403
|
+
|
|
3404
|
+
|
|
3405
|
+
class Datum(BaseModel):
|
|
3406
|
+
energy: float
|
|
3407
|
+
"""
|
|
3408
|
+
converged electronic energy for this structure (last in `electronic`)
|
|
3409
|
+
"""
|
|
3410
|
+
structure: Optional[Dict[str, Any]] = None
|
|
3411
|
+
"""
|
|
3412
|
+
TODO: structural information at each step to be here
|
|
3413
|
+
"""
|
|
3414
|
+
electronic: Optional[Electronic] = None
|
|
3415
|
+
"""
|
|
3416
|
+
data about electronic at this ionic step
|
|
3417
|
+
"""
|
|
3418
|
+
|
|
3419
|
+
|
|
3420
|
+
class ConvergenceIonicPropertySchema(BaseModel):
|
|
3421
|
+
name: Literal["29#-datamodel-code-generator-#-object-#-special-#"]
|
|
3422
|
+
tolerance: Optional[Any] = None
|
|
3423
|
+
"""
|
|
3424
|
+
for ionic convergence tolerance shows force tolerance
|
|
3425
|
+
"""
|
|
3426
|
+
units: Units229
|
|
3427
|
+
"""
|
|
3428
|
+
units for force tolerance
|
|
3429
|
+
"""
|
|
3430
|
+
data: List[Datum]
|
|
3431
|
+
"""
|
|
3432
|
+
energetic and structural information
|
|
3433
|
+
"""
|
|
3434
|
+
|
|
3435
|
+
|
|
3436
|
+
class Name519(Enum):
|
|
3437
|
+
is_relaxed = "is_relaxed"
|
|
3438
|
+
|
|
3439
|
+
|
|
3440
|
+
class IsRelaxedPropertySchema(BaseModel):
|
|
3441
|
+
name: Literal["30#-datamodel-code-generator-#-object-#-special-#"]
|
|
3442
|
+
value: bool
|
|
3443
|
+
materialId: str
|
|
3444
|
+
"""
|
|
3445
|
+
Material's identity
|
|
3446
|
+
"""
|
|
3447
|
+
|
|
3448
|
+
|
|
3449
|
+
class Name520(Enum):
|
|
3450
|
+
final_structure = "final_structure"
|
|
3451
|
+
|
|
3452
|
+
|
|
3453
|
+
class FinalStructurePropertySchema(BaseModel):
|
|
3454
|
+
name: Literal["31#-datamodel-code-generator-#-object-#-special-#"]
|
|
3455
|
+
isRelaxed: bool
|
|
3456
|
+
materialId: str
|
|
3457
|
+
"""
|
|
3458
|
+
Material's identity
|
|
3459
|
+
"""
|
|
3460
|
+
|
|
3461
|
+
|
|
3462
|
+
class Name521(Enum):
|
|
3463
|
+
jupyter_notebook_endpoint = "jupyter_notebook_endpoint"
|
|
3464
|
+
|
|
3465
|
+
|
|
3466
|
+
class JupyterNotebookEndpointPropertySchema(BaseModel):
|
|
3467
|
+
name: Literal["32#-datamodel-code-generator-#-object-#-special-#"]
|
|
3468
|
+
host: str
|
|
3469
|
+
port: float
|
|
3470
|
+
token: str
|
|
3471
|
+
|
|
3472
|
+
|
|
3473
|
+
class Info(BaseModel):
|
|
3474
|
+
jobId: str
|
|
3475
|
+
"""
|
|
3476
|
+
Job's identity
|
|
3477
|
+
"""
|
|
3478
|
+
unitId: str
|
|
3479
|
+
"""
|
|
3480
|
+
Id of the unit that extracted the result
|
|
3481
|
+
"""
|
|
3482
|
+
|
|
3483
|
+
|
|
3484
|
+
class Source3(BaseModel):
|
|
3485
|
+
type: str
|
|
3486
|
+
"""
|
|
3487
|
+
Type of the material property's source.
|
|
3488
|
+
"""
|
|
3489
|
+
info: Info
|
|
3490
|
+
|
|
3491
|
+
|
|
3492
|
+
class Precision(BaseModel):
|
|
3493
|
+
value: Optional[float] = None
|
|
3494
|
+
metric: Optional[str] = None
|
|
3495
|
+
|
|
3496
|
+
|
|
3497
|
+
class SystemTag(Enum):
|
|
3498
|
+
isRefined = "isRefined"
|
|
3499
|
+
isBest = "isBest"
|
|
3500
|
+
|
|
3501
|
+
|
|
3502
|
+
class PropertyHolderSchema(BaseModel):
|
|
3503
|
+
group: Optional[str] = None
|
|
3504
|
+
"""
|
|
3505
|
+
property group, e.g. qe:dft:gga:pbe
|
|
3506
|
+
"""
|
|
3507
|
+
data: Union[
|
|
3508
|
+
ValenceBandOffsetPropertySchema,
|
|
3509
|
+
ZeroPointEnergyPropertySchema,
|
|
3510
|
+
PressurePropertySchema,
|
|
3511
|
+
ReactionEnergyBarrierPropertySchema,
|
|
3512
|
+
SurfaceEnergyPropertySchema,
|
|
3513
|
+
TotalEnergyPropertySchema,
|
|
3514
|
+
TotalForcesPropertySchema,
|
|
3515
|
+
FermiEnergyPropertySchema,
|
|
3516
|
+
IonizationPotentialScalarPropertySchema,
|
|
3517
|
+
StressTensorPropertySchema,
|
|
3518
|
+
BandGapsPropertySchema,
|
|
3519
|
+
BandStructurePropertySchema,
|
|
3520
|
+
PhononBandStructurePropertySchema,
|
|
3521
|
+
TotalEnergyContributionsPropertySchema,
|
|
3522
|
+
PhononDensityOfStatesPropertySchema,
|
|
3523
|
+
PotentialProfilePropertySchema,
|
|
3524
|
+
ReactionEnergyProfilePropertySchema,
|
|
3525
|
+
DensityOfStatesPropertySchema,
|
|
3526
|
+
DielectricTensorPropertySchema,
|
|
3527
|
+
FileContentPropertySchema,
|
|
3528
|
+
HubbardUParametersPropertySchema,
|
|
3529
|
+
HubbardVParametersPropertySchema,
|
|
3530
|
+
HubbardVNNParametersPropertySchema,
|
|
3531
|
+
AveragePotentialProfilePropertySchema,
|
|
3532
|
+
ChargeDensityProfilePropertySchema,
|
|
3533
|
+
WorkflowPropertySchema,
|
|
3534
|
+
MagneticMomentsPropertySchema,
|
|
3535
|
+
AtomicForcesPropertySchema,
|
|
3536
|
+
ConvergenceElectronicPropertySchema,
|
|
3537
|
+
ConvergenceIonicPropertySchema,
|
|
3538
|
+
IsRelaxedPropertySchema,
|
|
3539
|
+
FinalStructurePropertySchema,
|
|
3540
|
+
JupyterNotebookEndpointPropertySchema,
|
|
3541
|
+
] = Field(..., discriminator="name")
|
|
3542
|
+
"""
|
|
3543
|
+
container of the information, specific to each property
|
|
3544
|
+
"""
|
|
3545
|
+
source: Source3
|
|
3546
|
+
exabyteId: List[str]
|
|
3547
|
+
"""
|
|
3548
|
+
Id of the corresponding item in the entity bank that this property is obtained for
|
|
3549
|
+
"""
|
|
3550
|
+
precision: Optional[Precision] = None
|
|
3551
|
+
systemTags: Optional[List[SystemTag]] = None
|
|
3552
|
+
"""
|
|
3553
|
+
property system tags, marks property system characteristics, values refined or best (could be both)
|
|
3554
|
+
"""
|
|
3555
|
+
repetition: float
|
|
3556
|
+
field_id: Optional[str] = Field(None, alias="_id")
|
|
3557
|
+
"""
|
|
3558
|
+
entity identity
|
|
3559
|
+
"""
|
|
3560
|
+
slug: Optional[str] = None
|
|
3561
|
+
"""
|
|
3562
|
+
entity slug
|
|
3563
|
+
"""
|
|
3564
|
+
systemName: Optional[str] = None
|
|
3565
|
+
schemaVersion: Optional[str] = "2022.8.16"
|
|
3566
|
+
"""
|
|
3567
|
+
entity's schema version. Used to distinct between different schemas.
|
|
3568
|
+
"""
|