mat3ra-esse 2025.7.29.post0__py3-none-any.whl → 2025.8.6.post1__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of mat3ra-esse might be problematic. Click here for more details.
- mat3ra/esse/data/examples.py +1 -1
- mat3ra/esse/data/schemas.py +1 -1
- mat3ra/esse/models/apse/file/applications/espresso/7.2/pw_x.py +6 -6
- mat3ra/esse/models/core/reusable/energy.py +2 -2
- mat3ra/esse/models/element.py +6 -6
- mat3ra/esse/models/material/__init__.py +14 -14
- mat3ra/esse/models/materials_category/compound_pristine_structures/two_dimensional/interface/configuration.py +549 -2319
- mat3ra/esse/models/materials_category/defective_structures/one_dimensional/grain_boundary_linear/configuration.py +537 -2307
- mat3ra/esse/models/materials_category/defective_structures/two_dimensional/adatom/configuration.py +206 -190
- mat3ra/esse/models/materials_category/defective_structures/two_dimensional/grain_boundary_planar/configuration.py +56 -1826
- mat3ra/esse/models/materials_category/defective_structures/two_dimensional/island/configuration.py +331 -311
- mat3ra/esse/models/materials_category/defective_structures/two_dimensional/terrace/configuration.py +331 -311
- mat3ra/esse/models/materials_category/defective_structures/zero_dimensional/point_defect/interstitial.py +72 -72
- mat3ra/esse/models/materials_category/defective_structures/zero_dimensional/point_defect/substitutional.py +72 -72
- mat3ra/esse/models/materials_category/defective_structures/zero_dimensional/point_defect/vacancy.py +14 -14
- mat3ra/esse/models/materials_category/pristine_structures/three_dimensional/ideal_crystal.py +14 -14
- mat3ra/esse/models/materials_category/pristine_structures/two_dimensional/nanoribbon.py +150 -134
- mat3ra/esse/models/materials_category/pristine_structures/two_dimensional/nanotape.py +86 -74
- mat3ra/esse/models/materials_category/pristine_structures/two_dimensional/slab.py +84 -72
- mat3ra/esse/models/materials_category/pristine_structures/two_dimensional/slab_strained_supercell.py +84 -72
- mat3ra/esse/models/materials_category/processed_structures/two_dimensional/passivation/configuration.py +70 -70
- mat3ra/esse/models/materials_category_components/entities/auxiliary/zero_dimensional/crystal_site.py +14 -14
- mat3ra/esse/models/materials_category_components/entities/auxiliary/zero_dimensional/point_defect_site.py +14 -14
- mat3ra/esse/models/materials_category_components/entities/auxiliary/zero_dimensional/void_region.py +14 -14
- mat3ra/esse/models/materials_category_components/entities/core/three_dimensional/crystal.py +14 -14
- mat3ra/esse/models/materials_category_components/entities/core/two_dimensional/vacuum.py +14 -14
- mat3ra/esse/models/materials_category_components/entities/reusable/one_dimensional/crystal_lattice_lines.py +14 -14
- mat3ra/esse/models/materials_category_components/entities/reusable/one_dimensional/crystal_lattice_lines_unique_repeated.py +16 -16
- mat3ra/esse/models/materials_category_components/entities/reusable/three_dimensional/crystal_lattice_base.py +14 -14
- mat3ra/esse/models/materials_category_components/entities/reusable/{repetitions.py → three_dimensional/repetitions.py} +1 -1
- mat3ra/esse/models/materials_category_components/entities/reusable/three_dimensional/strained_non_uniform.py +14 -14
- mat3ra/esse/models/materials_category_components/entities/reusable/three_dimensional/strained_uniform.py +14 -14
- mat3ra/esse/models/materials_category_components/entities/reusable/three_dimensional/supercell.py +14 -14
- mat3ra/esse/models/materials_category_components/entities/reusable/two_dimensional/crystal_lattice_planes.py +14 -14
- mat3ra/esse/models/materials_category_components/entities/reusable/two_dimensional/slab_stack_configuration.py +148 -132
- mat3ra/esse/models/materials_category_components/operations/core/combinations/stack.py +14 -2
- mat3ra/esse/models/materials_category_components/operations/core/modifications/perturb.py +14 -14
- mat3ra/esse/models/properties_directory/derived_properties.py +11 -11
- mat3ra/esse/models/properties_directory/non_scalar/density_of_states.py +2 -2
- mat3ra/esse/models/properties_directory/non_scalar/phonon_dispersions.py +2 -2
- mat3ra/esse/models/properties_directory/non_scalar/phonon_dos.py +2 -2
- mat3ra/esse/models/properties_directory/non_scalar/total_energy_contributions.py +50 -50
- mat3ra/esse/models/properties_directory/non_scalar/vibrational_spectrum.py +2 -2
- mat3ra/esse/models/properties_directory/scalar/electron_affinity.py +2 -2
- mat3ra/esse/models/properties_directory/scalar/fermi_energy.py +2 -2
- mat3ra/esse/models/properties_directory/scalar/formation_energy.py +2 -2
- mat3ra/esse/models/properties_directory/scalar/ionization_potential.py +2 -2
- mat3ra/esse/models/properties_directory/scalar/reaction_energy_barrier.py +2 -2
- mat3ra/esse/models/properties_directory/scalar/surface_energy.py +2 -2
- mat3ra/esse/models/properties_directory/scalar/total_energy.py +2 -2
- mat3ra/esse/models/properties_directory/scalar/valence_band_offset.py +2 -2
- mat3ra/esse/models/properties_directory/scalar/zero_point_energy.py +2 -2
- mat3ra/esse/models/properties_directory/structural/molecular_pattern.py +4 -4
- mat3ra/esse/models/properties_directory/workflow/convergence/ionic.py +2 -2
- mat3ra/esse/models/software/template.py +4 -0
- mat3ra/esse/models/software_directory/modeling/unit/execution.py +4 -0
- mat3ra/esse/models/software_directory/scripting/unit/execution.py +4 -0
- mat3ra/esse/models/workflow/unit/input/_input.py +4 -0
- mat3ra/esse/models/workflow/unit/input/_inputItem.py +4 -0
- {mat3ra_esse-2025.7.29.post0.dist-info → mat3ra_esse-2025.8.6.post1.dist-info}/METADATA +1 -1
- {mat3ra_esse-2025.7.29.post0.dist-info → mat3ra_esse-2025.8.6.post1.dist-info}/RECORD +64 -65
- mat3ra/esse/models/materials_category/pristine_structures/two_dimensional/slab_strained_supercell_with_gap.py +0 -1151
- {mat3ra_esse-2025.7.29.post0.dist-info → mat3ra_esse-2025.8.6.post1.dist-info}/WHEEL +0 -0
- {mat3ra_esse-2025.7.29.post0.dist-info → mat3ra_esse-2025.8.6.post1.dist-info}/licenses/LICENSE.md +0 -0
- {mat3ra_esse-2025.7.29.post0.dist-info → mat3ra_esse-2025.8.6.post1.dist-info}/top_level.txt +0 -0
|
@@ -1117,6 +1117,14 @@ class VacuumConfigurationSchema(BaseModel):
|
|
|
1117
1117
|
"""
|
|
1118
1118
|
|
|
1119
1119
|
|
|
1120
|
+
class ObjectWithId(BaseModel):
|
|
1121
|
+
value: Optional[confloat(ge=0.0)] = None
|
|
1122
|
+
id: int
|
|
1123
|
+
"""
|
|
1124
|
+
integer id of this entry
|
|
1125
|
+
"""
|
|
1126
|
+
|
|
1127
|
+
|
|
1120
1128
|
class SlabConfigurationSchema(BaseModel):
|
|
1121
1129
|
stack_components: List[Union[AtomicLayersUniqueRepeatedSchema, VacuumConfigurationSchema]] = Field(
|
|
1122
1130
|
..., max_length=2, min_length=2
|
|
@@ -1125,6 +1133,10 @@ class SlabConfigurationSchema(BaseModel):
|
|
|
1125
1133
|
"""
|
|
1126
1134
|
Enum for axis types
|
|
1127
1135
|
"""
|
|
1136
|
+
gaps: Optional[List[ObjectWithId]] = None
|
|
1137
|
+
"""
|
|
1138
|
+
Gap distances between stack components as an array of objects with id and value
|
|
1139
|
+
"""
|
|
1128
1140
|
|
|
1129
1141
|
|
|
1130
1142
|
class SupercellMatrix2DSchemaItem(RootModel[List[int]]):
|
|
@@ -2024,6 +2036,10 @@ class SlabStrainedSupercellConfigurationSchema(BaseModel):
|
|
|
2024
2036
|
"""
|
|
2025
2037
|
Enum for axis types
|
|
2026
2038
|
"""
|
|
2039
|
+
gaps: Optional[List[ObjectWithId]] = None
|
|
2040
|
+
"""
|
|
2041
|
+
Gap distances between stack components as an array of objects with id and value
|
|
2042
|
+
"""
|
|
2027
2043
|
|
|
2028
2044
|
|
|
2029
2045
|
class TerminationSchema5(BaseModel):
|
|
@@ -2895,23 +2911,7 @@ class VacuumConfigurationSchema2(BaseModel):
|
|
|
2895
2911
|
"""
|
|
2896
2912
|
|
|
2897
2913
|
|
|
2898
|
-
class
|
|
2899
|
-
gap: Optional[confloat(ge=0.0)] = None
|
|
2900
|
-
"""
|
|
2901
|
-
If provided, the film is shifted to have it as smallest distance to the substrate
|
|
2902
|
-
"""
|
|
2903
|
-
xy_supercell_matrix: Optional[List[SupercellMatrix2DSchemaItem]] = Field(
|
|
2904
|
-
default_factory=lambda: [SupercellMatrix2DSchemaItem.model_validate(v) for v in [[1, 0], [0, 1]]],
|
|
2905
|
-
max_length=2,
|
|
2906
|
-
min_length=2,
|
|
2907
|
-
title="Supercell Matrix 2D Schema",
|
|
2908
|
-
)
|
|
2909
|
-
"""
|
|
2910
|
-
Supercell matrix for xy plane transformations
|
|
2911
|
-
"""
|
|
2912
|
-
strain_matrix: List[ArrayOf3NumberElementsSchema] = Field(
|
|
2913
|
-
..., max_length=3, min_length=3, title="matrix 3x3 schema"
|
|
2914
|
-
)
|
|
2914
|
+
class SlabConfigurationSchema1(BaseModel):
|
|
2915
2915
|
stack_components: List[Union[AtomicLayersUniqueRepeatedSchema3, VacuumConfigurationSchema2]] = Field(
|
|
2916
2916
|
..., max_length=2, min_length=2
|
|
2917
2917
|
)
|
|
@@ -2919,6 +2919,10 @@ class SlabStrainedSupercellWithGapConfigurationSchema(BaseModel):
|
|
|
2919
2919
|
"""
|
|
2920
2920
|
Enum for axis types
|
|
2921
2921
|
"""
|
|
2922
|
+
gaps: Optional[List[ObjectWithId]] = None
|
|
2923
|
+
"""
|
|
2924
|
+
Gap distances between stack components as an array of objects with id and value
|
|
2925
|
+
"""
|
|
2922
2926
|
|
|
2923
2927
|
|
|
2924
2928
|
class TerminationSchema6(BaseModel):
|
|
@@ -3790,7 +3794,19 @@ class VacuumConfigurationSchema3(BaseModel):
|
|
|
3790
3794
|
"""
|
|
3791
3795
|
|
|
3792
3796
|
|
|
3793
|
-
class
|
|
3797
|
+
class SlabStrainedSupercellConfigurationSchema1(BaseModel):
|
|
3798
|
+
xy_supercell_matrix: Optional[List[SupercellMatrix2DSchemaItem]] = Field(
|
|
3799
|
+
default_factory=lambda: [SupercellMatrix2DSchemaItem.model_validate(v) for v in [[1, 0], [0, 1]]],
|
|
3800
|
+
max_length=2,
|
|
3801
|
+
min_length=2,
|
|
3802
|
+
title="Supercell Matrix 2D Schema",
|
|
3803
|
+
)
|
|
3804
|
+
"""
|
|
3805
|
+
Supercell matrix for xy plane transformations
|
|
3806
|
+
"""
|
|
3807
|
+
strain_matrix: List[ArrayOf3NumberElementsSchema] = Field(
|
|
3808
|
+
..., max_length=3, min_length=3, title="matrix 3x3 schema"
|
|
3809
|
+
)
|
|
3794
3810
|
stack_components: List[Union[AtomicLayersUniqueRepeatedSchema4, VacuumConfigurationSchema3]] = Field(
|
|
3795
3811
|
..., max_length=2, min_length=2
|
|
3796
3812
|
)
|
|
@@ -3798,18 +3814,9 @@ class SlabConfigurationSchema1(BaseModel):
|
|
|
3798
3814
|
"""
|
|
3799
3815
|
Enum for axis types
|
|
3800
3816
|
"""
|
|
3801
|
-
|
|
3802
|
-
|
|
3803
|
-
class TerminationSchema7(BaseModel):
|
|
3804
|
-
chemical_elements: Union[ChemicalElements, constr(pattern=r"^([A-Z][a-z]?[0-9]*)+$")] = Field(
|
|
3805
|
-
..., title="Chemical Elements"
|
|
3806
|
-
)
|
|
3807
|
-
"""
|
|
3808
|
-
Chemical elements at the termination. Can be a single element (e.g. 'Si') or a compound (e.g. 'SiO')
|
|
3809
|
-
"""
|
|
3810
|
-
space_group_symmetry_label: str = Field(..., title="Space Group Symmetry Label")
|
|
3817
|
+
gaps: Optional[List[ObjectWithId]] = None
|
|
3811
3818
|
"""
|
|
3812
|
-
|
|
3819
|
+
Gap distances between stack components as an array of objects with id and value
|
|
3813
3820
|
"""
|
|
3814
3821
|
|
|
3815
3822
|
|
|
@@ -4222,1818 +4229,41 @@ class CrystalSchema12(BaseModel):
|
|
|
4222
4229
|
metadata: Optional[Dict[str, Any]] = None
|
|
4223
4230
|
|
|
4224
4231
|
|
|
4225
|
-
class
|
|
4226
|
-
|
|
4227
|
-
"""
|
|
4228
|
-
Defines a specific termination of a slab
|
|
4229
|
-
"""
|
|
4230
|
-
number_of_repetitions: conint(ge=1)
|
|
4232
|
+
class VacuumConfigurationSchema4(BaseModel):
|
|
4233
|
+
direction: AxisEnum = Field(..., title="Axis Enum")
|
|
4231
4234
|
"""
|
|
4232
|
-
|
|
4235
|
+
Enum for axis types
|
|
4233
4236
|
"""
|
|
4234
|
-
|
|
4237
|
+
size: Optional[confloat(ge=0.0)] = 10
|
|
4235
4238
|
"""
|
|
4236
|
-
|
|
4239
|
+
Size of the vacuum slab in angstroms
|
|
4237
4240
|
"""
|
|
4238
4241
|
crystal: CrystalSchema12 = Field(..., title="Crystal Schema")
|
|
4239
4242
|
"""
|
|
4240
4243
|
A crystal structure, referencing the base material schema
|
|
4241
4244
|
"""
|
|
4242
|
-
use_conventional_cell: Optional[bool] = True
|
|
4243
|
-
"""
|
|
4244
|
-
Use the conventional cell for the crystal structure
|
|
4245
|
-
"""
|
|
4246
|
-
|
|
4247
|
-
|
|
4248
|
-
class Value34(Enum):
|
|
4249
|
-
H = "H"
|
|
4250
|
-
He = "He"
|
|
4251
|
-
Li = "Li"
|
|
4252
|
-
Be = "Be"
|
|
4253
|
-
B = "B"
|
|
4254
|
-
C = "C"
|
|
4255
|
-
N = "N"
|
|
4256
|
-
O = "O"
|
|
4257
|
-
F = "F"
|
|
4258
|
-
Ne = "Ne"
|
|
4259
|
-
Na = "Na"
|
|
4260
|
-
Mg = "Mg"
|
|
4261
|
-
Al = "Al"
|
|
4262
|
-
Si = "Si"
|
|
4263
|
-
P = "P"
|
|
4264
|
-
S = "S"
|
|
4265
|
-
Cl = "Cl"
|
|
4266
|
-
Ar = "Ar"
|
|
4267
|
-
K = "K"
|
|
4268
|
-
Ca = "Ca"
|
|
4269
|
-
Sc = "Sc"
|
|
4270
|
-
Ti = "Ti"
|
|
4271
|
-
V = "V"
|
|
4272
|
-
Cr = "Cr"
|
|
4273
|
-
Mn = "Mn"
|
|
4274
|
-
Fe = "Fe"
|
|
4275
|
-
Co = "Co"
|
|
4276
|
-
Ni = "Ni"
|
|
4277
|
-
Cu = "Cu"
|
|
4278
|
-
Zn = "Zn"
|
|
4279
|
-
Ga = "Ga"
|
|
4280
|
-
Ge = "Ge"
|
|
4281
|
-
As = "As"
|
|
4282
|
-
Se = "Se"
|
|
4283
|
-
Br = "Br"
|
|
4284
|
-
Kr = "Kr"
|
|
4285
|
-
Rb = "Rb"
|
|
4286
|
-
Sr = "Sr"
|
|
4287
|
-
Y = "Y"
|
|
4288
|
-
Zr = "Zr"
|
|
4289
|
-
Nb = "Nb"
|
|
4290
|
-
Mo = "Mo"
|
|
4291
|
-
Tc = "Tc"
|
|
4292
|
-
Ru = "Ru"
|
|
4293
|
-
Rh = "Rh"
|
|
4294
|
-
Pd = "Pd"
|
|
4295
|
-
Ag = "Ag"
|
|
4296
|
-
Cd = "Cd"
|
|
4297
|
-
In = "In"
|
|
4298
|
-
Sn = "Sn"
|
|
4299
|
-
Sb = "Sb"
|
|
4300
|
-
Te = "Te"
|
|
4301
|
-
I = "I"
|
|
4302
|
-
Xe = "Xe"
|
|
4303
|
-
Cs = "Cs"
|
|
4304
|
-
Ba = "Ba"
|
|
4305
|
-
La = "La"
|
|
4306
|
-
Ce = "Ce"
|
|
4307
|
-
Pr = "Pr"
|
|
4308
|
-
Nd = "Nd"
|
|
4309
|
-
Pm = "Pm"
|
|
4310
|
-
Sm = "Sm"
|
|
4311
|
-
Eu = "Eu"
|
|
4312
|
-
Gd = "Gd"
|
|
4313
|
-
Tb = "Tb"
|
|
4314
|
-
Dy = "Dy"
|
|
4315
|
-
Ho = "Ho"
|
|
4316
|
-
Er = "Er"
|
|
4317
|
-
Tm = "Tm"
|
|
4318
|
-
Yb = "Yb"
|
|
4319
|
-
Lu = "Lu"
|
|
4320
|
-
Hf = "Hf"
|
|
4321
|
-
Ta = "Ta"
|
|
4322
|
-
W = "W"
|
|
4323
|
-
Re = "Re"
|
|
4324
|
-
Os = "Os"
|
|
4325
|
-
Ir = "Ir"
|
|
4326
|
-
Pt = "Pt"
|
|
4327
|
-
Au = "Au"
|
|
4328
|
-
Hg = "Hg"
|
|
4329
|
-
Tl = "Tl"
|
|
4330
|
-
Pb = "Pb"
|
|
4331
|
-
Bi = "Bi"
|
|
4332
|
-
Po = "Po"
|
|
4333
|
-
At = "At"
|
|
4334
|
-
Rn = "Rn"
|
|
4335
|
-
Fr = "Fr"
|
|
4336
|
-
Ra = "Ra"
|
|
4337
|
-
Ac = "Ac"
|
|
4338
|
-
Th = "Th"
|
|
4339
|
-
Pa = "Pa"
|
|
4340
|
-
U = "U"
|
|
4341
|
-
Np = "Np"
|
|
4342
|
-
Pu = "Pu"
|
|
4343
|
-
Am = "Am"
|
|
4344
|
-
Cm = "Cm"
|
|
4345
|
-
Bk = "Bk"
|
|
4346
|
-
Cf = "Cf"
|
|
4347
|
-
Es = "Es"
|
|
4348
|
-
Fm = "Fm"
|
|
4349
|
-
Md = "Md"
|
|
4350
|
-
No = "No"
|
|
4351
|
-
Lr = "Lr"
|
|
4352
|
-
Rf = "Rf"
|
|
4353
|
-
Db = "Db"
|
|
4354
|
-
Sg = "Sg"
|
|
4355
|
-
Bh = "Bh"
|
|
4356
|
-
Hs = "Hs"
|
|
4357
|
-
Mt = "Mt"
|
|
4358
|
-
Ds = "Ds"
|
|
4359
|
-
Rg = "Rg"
|
|
4360
|
-
Cn = "Cn"
|
|
4361
|
-
Nh = "Nh"
|
|
4362
|
-
Fl = "Fl"
|
|
4363
|
-
Mc = "Mc"
|
|
4364
|
-
Lv = "Lv"
|
|
4365
|
-
Ts = "Ts"
|
|
4366
|
-
Og = "Og"
|
|
4367
|
-
|
|
4368
|
-
|
|
4369
|
-
class Value35(Enum):
|
|
4370
|
-
X = "X"
|
|
4371
|
-
Vac = "Vac"
|
|
4372
|
-
|
|
4373
|
-
|
|
4374
|
-
class AtomicElementSchema16(BaseModel):
|
|
4375
|
-
value: Union[Value34, Value35]
|
|
4376
|
-
"""
|
|
4377
|
-
All elements, including extra elements
|
|
4378
|
-
"""
|
|
4379
|
-
id: int
|
|
4380
|
-
"""
|
|
4381
|
-
integer id of this entry
|
|
4382
|
-
"""
|
|
4383
|
-
|
|
4384
|
-
|
|
4385
|
-
class BasisSchema14(BaseModel):
|
|
4386
|
-
elements: List[AtomicElementSchema16] = Field(..., title="atomic elements schema")
|
|
4387
|
-
"""
|
|
4388
|
-
atomic elements schema
|
|
4389
|
-
"""
|
|
4390
|
-
coordinates: List[AtomicCoordinateSchema] = Field(..., title="atomic coordinates schema")
|
|
4391
|
-
"""
|
|
4392
|
-
atomic coordinates schema
|
|
4393
|
-
"""
|
|
4394
|
-
units: Optional[BasisUnitsEnum] = Field("crystal", title="basis units enum")
|
|
4395
|
-
labels: Optional[List[AtomicLabelSchema]] = Field(None, title="atomic labels schema")
|
|
4396
|
-
"""
|
|
4397
|
-
atomic labels schema
|
|
4398
|
-
"""
|
|
4399
|
-
|
|
4400
|
-
|
|
4401
|
-
class LatticeVectorsSchema13(BaseModel):
|
|
4402
|
-
a: List[float] = Field(..., max_length=3, min_length=3, title="vector 3d schema")
|
|
4403
|
-
b: List[float] = Field(..., max_length=3, min_length=3, title="vector 3d schema")
|
|
4404
|
-
c: List[float] = Field(..., max_length=3, min_length=3, title="vector 3d schema")
|
|
4405
|
-
alat: Optional[float] = 1
|
|
4406
|
-
"""
|
|
4407
|
-
lattice parameter for fractional coordinates
|
|
4408
|
-
"""
|
|
4409
|
-
units: Optional[LatticeVectorsUnitsEnum] = Field("angstrom", title="lattice vectors units enum")
|
|
4410
4245
|
|
|
4411
4246
|
|
|
4412
|
-
class
|
|
4413
|
-
|
|
4414
|
-
angle: Optional[LatticeUnitsAngleEnum] = Field("degree", title="lattice units angle enum")
|
|
4415
|
-
|
|
4416
|
-
|
|
4417
|
-
class LatticeSchema13(BaseModel):
|
|
4418
|
-
a: float
|
|
4419
|
-
"""
|
|
4420
|
-
length of the first lattice vector
|
|
4421
|
-
"""
|
|
4422
|
-
b: float
|
|
4423
|
-
"""
|
|
4424
|
-
length of the second lattice vector
|
|
4425
|
-
"""
|
|
4426
|
-
c: float
|
|
4427
|
-
"""
|
|
4428
|
-
length of the third lattice vector
|
|
4247
|
+
class GrainBoundaryPlanarConfigurationSchema(BaseModel):
|
|
4248
|
+
direction: Optional[AxisEnum] = Field("z", title="Axis Enum")
|
|
4429
4249
|
"""
|
|
4430
|
-
|
|
4250
|
+
Enum for axis types
|
|
4431
4251
|
"""
|
|
4432
|
-
|
|
4252
|
+
stack_components: List[
|
|
4253
|
+
Union[
|
|
4254
|
+
Union[SlabConfigurationSchema, SlabStrainedSupercellConfigurationSchema],
|
|
4255
|
+
Union[SlabConfigurationSchema1, SlabStrainedSupercellConfigurationSchema1],
|
|
4256
|
+
VacuumConfigurationSchema4,
|
|
4257
|
+
]
|
|
4258
|
+
] = Field(..., max_length=3, min_length=2)
|
|
4433
4259
|
"""
|
|
4434
|
-
|
|
4260
|
+
Components of the interface: slab, slab and vacuum
|
|
4435
4261
|
"""
|
|
4436
|
-
|
|
4262
|
+
xy_shift: Optional[List[float]] = Field([0, 0], max_length=2, min_length=2, title="vector 2d schema")
|
|
4437
4263
|
"""
|
|
4438
|
-
|
|
4264
|
+
xy shift for the film as cartesian 2D vector on the xy plane.
|
|
4439
4265
|
"""
|
|
4440
|
-
|
|
4266
|
+
gaps: Optional[List[ObjectWithId]] = None
|
|
4441
4267
|
"""
|
|
4442
|
-
|
|
4443
|
-
type: Optional[LatticeTypeEnum] = Field("TRI", title="lattice type enum")
|
|
4444
|
-
units: Optional[LatticeUnitsSchema13] = Field(
|
|
4445
|
-
default_factory=lambda: LatticeUnitsSchema13.model_validate({"length": "angstrom", "angle": "degree"}),
|
|
4446
|
-
title="Lattice units schema",
|
|
4447
|
-
)
|
|
4448
|
-
|
|
4449
|
-
|
|
4450
|
-
class Name111(Enum):
|
|
4451
|
-
volume = "volume"
|
|
4452
|
-
|
|
4453
|
-
|
|
4454
|
-
class Units48(Enum):
|
|
4455
|
-
angstrom_3 = "angstrom^3"
|
|
4456
|
-
|
|
4457
|
-
|
|
4458
|
-
class VolumeSchema13(BaseModel):
|
|
4459
|
-
name: Literal["0#-datamodel-code-generator-#-object-#-special-#"]
|
|
4460
|
-
units: Optional[Units48] = None
|
|
4461
|
-
value: float
|
|
4462
|
-
|
|
4463
|
-
|
|
4464
|
-
class Name112(Enum):
|
|
4465
|
-
density = "density"
|
|
4466
|
-
|
|
4467
|
-
|
|
4468
|
-
class Units49(Enum):
|
|
4469
|
-
g_cm_3 = "g/cm^3"
|
|
4470
|
-
|
|
4471
|
-
|
|
4472
|
-
class DensitySchema13(BaseModel):
|
|
4473
|
-
name: Literal["1#-datamodel-code-generator-#-object-#-special-#"]
|
|
4474
|
-
units: Optional[Units49] = None
|
|
4475
|
-
value: float
|
|
4476
|
-
|
|
4477
|
-
|
|
4478
|
-
class Units50(Enum):
|
|
4479
|
-
angstrom = "angstrom"
|
|
4480
|
-
|
|
4481
|
-
|
|
4482
|
-
class ScalarSchema14(BaseModel):
|
|
4483
|
-
units: Optional[Units50] = None
|
|
4484
|
-
value: float
|
|
4485
|
-
|
|
4486
|
-
|
|
4487
|
-
class Name113(Enum):
|
|
4488
|
-
symmetry = "symmetry"
|
|
4489
|
-
|
|
4490
|
-
|
|
4491
|
-
class SymmetrySchema13(BaseModel):
|
|
4492
|
-
pointGroupSymbol: Optional[str] = None
|
|
4493
|
-
"""
|
|
4494
|
-
point group symbol in Schoenflies notation
|
|
4495
|
-
"""
|
|
4496
|
-
spaceGroupSymbol: Optional[str] = None
|
|
4497
|
-
"""
|
|
4498
|
-
space group symbol in Hermann–Mauguin notation
|
|
4499
|
-
"""
|
|
4500
|
-
tolerance: Optional[ScalarSchema14] = Field(None, title="scalar schema")
|
|
4501
|
-
"""
|
|
4502
|
-
tolerance used for symmetry calculation
|
|
4503
|
-
"""
|
|
4504
|
-
name: Literal["2#-datamodel-code-generator-#-object-#-special-#"]
|
|
4505
|
-
|
|
4506
|
-
|
|
4507
|
-
class Name114(Enum):
|
|
4508
|
-
elemental_ratio = "elemental_ratio"
|
|
4509
|
-
|
|
4510
|
-
|
|
4511
|
-
class ElementalRatio13(BaseModel):
|
|
4512
|
-
name: Literal["3#-datamodel-code-generator-#-object-#-special-#"]
|
|
4513
|
-
value: confloat(ge=0.0, le=1.0)
|
|
4514
|
-
element: Optional[str] = None
|
|
4515
|
-
"""
|
|
4516
|
-
the element this ratio is for
|
|
4517
|
-
"""
|
|
4518
|
-
|
|
4519
|
-
|
|
4520
|
-
class Name115(Enum):
|
|
4521
|
-
p_norm = "p-norm"
|
|
4522
|
-
|
|
4523
|
-
|
|
4524
|
-
class PNorm13(BaseModel):
|
|
4525
|
-
name: Literal["4#-datamodel-code-generator-#-object-#-special-#"]
|
|
4526
|
-
degree: Optional[int] = None
|
|
4527
|
-
"""
|
|
4528
|
-
degree of the dimensionality of the norm
|
|
4529
|
-
"""
|
|
4530
|
-
value: float
|
|
4531
|
-
|
|
4532
|
-
|
|
4533
|
-
class Name116(Enum):
|
|
4534
|
-
inchi = "inchi"
|
|
4535
|
-
|
|
4536
|
-
|
|
4537
|
-
class InChIRepresentationSchema13(BaseModel):
|
|
4538
|
-
name: Literal["5#-datamodel-code-generator-#-object-#-special-#"]
|
|
4539
|
-
value: str
|
|
4540
|
-
|
|
4541
|
-
|
|
4542
|
-
class Name117(Enum):
|
|
4543
|
-
inchi_key = "inchi_key"
|
|
4544
|
-
|
|
4545
|
-
|
|
4546
|
-
class InChIKeyRepresentationSchema13(BaseModel):
|
|
4547
|
-
name: Literal["6#-datamodel-code-generator-#-object-#-special-#"]
|
|
4548
|
-
value: str
|
|
4549
|
-
|
|
4550
|
-
|
|
4551
|
-
class DerivedPropertiesSchema13(
|
|
4552
|
-
RootModel[
|
|
4553
|
-
Union[
|
|
4554
|
-
VolumeSchema13,
|
|
4555
|
-
DensitySchema13,
|
|
4556
|
-
SymmetrySchema13,
|
|
4557
|
-
ElementalRatio13,
|
|
4558
|
-
PNorm13,
|
|
4559
|
-
InChIRepresentationSchema13,
|
|
4560
|
-
InChIKeyRepresentationSchema13,
|
|
4561
|
-
]
|
|
4562
|
-
]
|
|
4563
|
-
):
|
|
4564
|
-
root: Union[
|
|
4565
|
-
VolumeSchema13,
|
|
4566
|
-
DensitySchema13,
|
|
4567
|
-
SymmetrySchema13,
|
|
4568
|
-
ElementalRatio13,
|
|
4569
|
-
PNorm13,
|
|
4570
|
-
InChIRepresentationSchema13,
|
|
4571
|
-
InChIKeyRepresentationSchema13,
|
|
4572
|
-
] = Field(..., discriminator="name")
|
|
4573
|
-
|
|
4574
|
-
|
|
4575
|
-
class Name118(Enum):
|
|
4576
|
-
default = "default"
|
|
4577
|
-
atomsTooClose = "atomsTooClose"
|
|
4578
|
-
atomsOverlap = "atomsOverlap"
|
|
4579
|
-
|
|
4580
|
-
|
|
4581
|
-
class MaterialConsistencyCheckSchema13(BaseModel):
|
|
4582
|
-
name: Name118
|
|
4583
|
-
"""
|
|
4584
|
-
Name of the consistency check that is performed, which is listed in an enum.
|
|
4585
|
-
"""
|
|
4586
|
-
key: str
|
|
4587
|
-
"""
|
|
4588
|
-
Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'
|
|
4589
|
-
"""
|
|
4590
|
-
severity: Severity
|
|
4591
|
-
"""
|
|
4592
|
-
Severity level of the problem, which is used in UI to differentiate.
|
|
4593
|
-
"""
|
|
4594
|
-
message: str
|
|
4595
|
-
"""
|
|
4596
|
-
Message generated by the consistency check describing the problem.
|
|
4597
|
-
"""
|
|
4598
|
-
|
|
4599
|
-
|
|
4600
|
-
class CrystalSchema13(BaseModel):
|
|
4601
|
-
formula: Optional[str] = None
|
|
4602
|
-
"""
|
|
4603
|
-
reduced chemical formula
|
|
4604
|
-
"""
|
|
4605
|
-
unitCellFormula: Optional[str] = None
|
|
4606
|
-
"""
|
|
4607
|
-
chemical formula based on the number of atoms of each element in the supercell
|
|
4608
|
-
"""
|
|
4609
|
-
basis: BasisSchema14 = Field(..., title="basis schema")
|
|
4610
|
-
lattice: LatticeSchema13 = Field(..., title="lattice schema")
|
|
4611
|
-
derivedProperties: Optional[List[DerivedPropertiesSchema13]] = Field(None, title="derived properties schema")
|
|
4612
|
-
external: Optional[DatabaseSourceSchema] = Field(None, title="database source schema")
|
|
4613
|
-
"""
|
|
4614
|
-
information about a database source
|
|
4615
|
-
"""
|
|
4616
|
-
src: Optional[FileSourceSchema] = Field(None, title="file source schema")
|
|
4617
|
-
"""
|
|
4618
|
-
file source with the information inside
|
|
4619
|
-
"""
|
|
4620
|
-
scaledHash: Optional[str] = None
|
|
4621
|
-
"""
|
|
4622
|
-
Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).
|
|
4623
|
-
"""
|
|
4624
|
-
icsdId: Optional[int] = None
|
|
4625
|
-
"""
|
|
4626
|
-
Corresponding ICSD id of the material
|
|
4627
|
-
"""
|
|
4628
|
-
isNonPeriodic: Optional[bool] = None
|
|
4629
|
-
"""
|
|
4630
|
-
Whether to work in the finite molecular picture (usually with atomic orbital basis)
|
|
4631
|
-
"""
|
|
4632
|
-
consistencyChecks: Optional[List[MaterialConsistencyCheckSchema13]] = None
|
|
4633
|
-
field_id: Optional[str] = Field(None, alias="_id")
|
|
4634
|
-
"""
|
|
4635
|
-
entity identity
|
|
4636
|
-
"""
|
|
4637
|
-
slug: Optional[str] = None
|
|
4638
|
-
"""
|
|
4639
|
-
entity slug
|
|
4640
|
-
"""
|
|
4641
|
-
systemName: Optional[str] = None
|
|
4642
|
-
schemaVersion: Optional[str] = "2022.8.16"
|
|
4643
|
-
"""
|
|
4644
|
-
entity's schema version. Used to distinct between different schemas.
|
|
4645
|
-
"""
|
|
4646
|
-
name: Optional[str] = None
|
|
4647
|
-
"""
|
|
4648
|
-
entity name
|
|
4649
|
-
"""
|
|
4650
|
-
isDefault: Optional[bool] = False
|
|
4651
|
-
"""
|
|
4652
|
-
Identifies that entity is defaultable
|
|
4653
|
-
"""
|
|
4654
|
-
metadata: Optional[Dict[str, Any]] = None
|
|
4655
|
-
|
|
4656
|
-
|
|
4657
|
-
class VacuumConfigurationSchema4(BaseModel):
|
|
4658
|
-
direction: AxisEnum = Field(..., title="Axis Enum")
|
|
4659
|
-
"""
|
|
4660
|
-
Enum for axis types
|
|
4661
|
-
"""
|
|
4662
|
-
size: Optional[confloat(ge=0.0)] = 10
|
|
4663
|
-
"""
|
|
4664
|
-
Size of the vacuum slab in angstroms
|
|
4665
|
-
"""
|
|
4666
|
-
crystal: CrystalSchema13 = Field(..., title="Crystal Schema")
|
|
4667
|
-
"""
|
|
4668
|
-
A crystal structure, referencing the base material schema
|
|
4669
|
-
"""
|
|
4670
|
-
|
|
4671
|
-
|
|
4672
|
-
class SlabStrainedSupercellConfigurationSchema1(BaseModel):
|
|
4673
|
-
xy_supercell_matrix: Optional[List[SupercellMatrix2DSchemaItem]] = Field(
|
|
4674
|
-
default_factory=lambda: [SupercellMatrix2DSchemaItem.model_validate(v) for v in [[1, 0], [0, 1]]],
|
|
4675
|
-
max_length=2,
|
|
4676
|
-
min_length=2,
|
|
4677
|
-
title="Supercell Matrix 2D Schema",
|
|
4678
|
-
)
|
|
4679
|
-
"""
|
|
4680
|
-
Supercell matrix for xy plane transformations
|
|
4681
|
-
"""
|
|
4682
|
-
strain_matrix: List[ArrayOf3NumberElementsSchema] = Field(
|
|
4683
|
-
..., max_length=3, min_length=3, title="matrix 3x3 schema"
|
|
4684
|
-
)
|
|
4685
|
-
stack_components: List[Union[AtomicLayersUniqueRepeatedSchema5, VacuumConfigurationSchema4]] = Field(
|
|
4686
|
-
..., max_length=2, min_length=2
|
|
4687
|
-
)
|
|
4688
|
-
direction: Optional[AxisEnum] = Field("z", title="Axis Enum")
|
|
4689
|
-
"""
|
|
4690
|
-
Enum for axis types
|
|
4691
|
-
"""
|
|
4692
|
-
|
|
4693
|
-
|
|
4694
|
-
class TerminationSchema8(BaseModel):
|
|
4695
|
-
chemical_elements: Union[ChemicalElements, constr(pattern=r"^([A-Z][a-z]?[0-9]*)+$")] = Field(
|
|
4696
|
-
..., title="Chemical Elements"
|
|
4697
|
-
)
|
|
4698
|
-
"""
|
|
4699
|
-
Chemical elements at the termination. Can be a single element (e.g. 'Si') or a compound (e.g. 'SiO')
|
|
4700
|
-
"""
|
|
4701
|
-
space_group_symmetry_label: str = Field(..., title="Space Group Symmetry Label")
|
|
4702
|
-
"""
|
|
4703
|
-
Space group symmetry designation for the termination
|
|
4704
|
-
"""
|
|
4705
|
-
|
|
4706
|
-
|
|
4707
|
-
class Value36(Enum):
|
|
4708
|
-
H = "H"
|
|
4709
|
-
He = "He"
|
|
4710
|
-
Li = "Li"
|
|
4711
|
-
Be = "Be"
|
|
4712
|
-
B = "B"
|
|
4713
|
-
C = "C"
|
|
4714
|
-
N = "N"
|
|
4715
|
-
O = "O"
|
|
4716
|
-
F = "F"
|
|
4717
|
-
Ne = "Ne"
|
|
4718
|
-
Na = "Na"
|
|
4719
|
-
Mg = "Mg"
|
|
4720
|
-
Al = "Al"
|
|
4721
|
-
Si = "Si"
|
|
4722
|
-
P = "P"
|
|
4723
|
-
S = "S"
|
|
4724
|
-
Cl = "Cl"
|
|
4725
|
-
Ar = "Ar"
|
|
4726
|
-
K = "K"
|
|
4727
|
-
Ca = "Ca"
|
|
4728
|
-
Sc = "Sc"
|
|
4729
|
-
Ti = "Ti"
|
|
4730
|
-
V = "V"
|
|
4731
|
-
Cr = "Cr"
|
|
4732
|
-
Mn = "Mn"
|
|
4733
|
-
Fe = "Fe"
|
|
4734
|
-
Co = "Co"
|
|
4735
|
-
Ni = "Ni"
|
|
4736
|
-
Cu = "Cu"
|
|
4737
|
-
Zn = "Zn"
|
|
4738
|
-
Ga = "Ga"
|
|
4739
|
-
Ge = "Ge"
|
|
4740
|
-
As = "As"
|
|
4741
|
-
Se = "Se"
|
|
4742
|
-
Br = "Br"
|
|
4743
|
-
Kr = "Kr"
|
|
4744
|
-
Rb = "Rb"
|
|
4745
|
-
Sr = "Sr"
|
|
4746
|
-
Y = "Y"
|
|
4747
|
-
Zr = "Zr"
|
|
4748
|
-
Nb = "Nb"
|
|
4749
|
-
Mo = "Mo"
|
|
4750
|
-
Tc = "Tc"
|
|
4751
|
-
Ru = "Ru"
|
|
4752
|
-
Rh = "Rh"
|
|
4753
|
-
Pd = "Pd"
|
|
4754
|
-
Ag = "Ag"
|
|
4755
|
-
Cd = "Cd"
|
|
4756
|
-
In = "In"
|
|
4757
|
-
Sn = "Sn"
|
|
4758
|
-
Sb = "Sb"
|
|
4759
|
-
Te = "Te"
|
|
4760
|
-
I = "I"
|
|
4761
|
-
Xe = "Xe"
|
|
4762
|
-
Cs = "Cs"
|
|
4763
|
-
Ba = "Ba"
|
|
4764
|
-
La = "La"
|
|
4765
|
-
Ce = "Ce"
|
|
4766
|
-
Pr = "Pr"
|
|
4767
|
-
Nd = "Nd"
|
|
4768
|
-
Pm = "Pm"
|
|
4769
|
-
Sm = "Sm"
|
|
4770
|
-
Eu = "Eu"
|
|
4771
|
-
Gd = "Gd"
|
|
4772
|
-
Tb = "Tb"
|
|
4773
|
-
Dy = "Dy"
|
|
4774
|
-
Ho = "Ho"
|
|
4775
|
-
Er = "Er"
|
|
4776
|
-
Tm = "Tm"
|
|
4777
|
-
Yb = "Yb"
|
|
4778
|
-
Lu = "Lu"
|
|
4779
|
-
Hf = "Hf"
|
|
4780
|
-
Ta = "Ta"
|
|
4781
|
-
W = "W"
|
|
4782
|
-
Re = "Re"
|
|
4783
|
-
Os = "Os"
|
|
4784
|
-
Ir = "Ir"
|
|
4785
|
-
Pt = "Pt"
|
|
4786
|
-
Au = "Au"
|
|
4787
|
-
Hg = "Hg"
|
|
4788
|
-
Tl = "Tl"
|
|
4789
|
-
Pb = "Pb"
|
|
4790
|
-
Bi = "Bi"
|
|
4791
|
-
Po = "Po"
|
|
4792
|
-
At = "At"
|
|
4793
|
-
Rn = "Rn"
|
|
4794
|
-
Fr = "Fr"
|
|
4795
|
-
Ra = "Ra"
|
|
4796
|
-
Ac = "Ac"
|
|
4797
|
-
Th = "Th"
|
|
4798
|
-
Pa = "Pa"
|
|
4799
|
-
U = "U"
|
|
4800
|
-
Np = "Np"
|
|
4801
|
-
Pu = "Pu"
|
|
4802
|
-
Am = "Am"
|
|
4803
|
-
Cm = "Cm"
|
|
4804
|
-
Bk = "Bk"
|
|
4805
|
-
Cf = "Cf"
|
|
4806
|
-
Es = "Es"
|
|
4807
|
-
Fm = "Fm"
|
|
4808
|
-
Md = "Md"
|
|
4809
|
-
No = "No"
|
|
4810
|
-
Lr = "Lr"
|
|
4811
|
-
Rf = "Rf"
|
|
4812
|
-
Db = "Db"
|
|
4813
|
-
Sg = "Sg"
|
|
4814
|
-
Bh = "Bh"
|
|
4815
|
-
Hs = "Hs"
|
|
4816
|
-
Mt = "Mt"
|
|
4817
|
-
Ds = "Ds"
|
|
4818
|
-
Rg = "Rg"
|
|
4819
|
-
Cn = "Cn"
|
|
4820
|
-
Nh = "Nh"
|
|
4821
|
-
Fl = "Fl"
|
|
4822
|
-
Mc = "Mc"
|
|
4823
|
-
Lv = "Lv"
|
|
4824
|
-
Ts = "Ts"
|
|
4825
|
-
Og = "Og"
|
|
4826
|
-
|
|
4827
|
-
|
|
4828
|
-
class Value37(Enum):
|
|
4829
|
-
X = "X"
|
|
4830
|
-
Vac = "Vac"
|
|
4831
|
-
|
|
4832
|
-
|
|
4833
|
-
class AtomicElementSchema17(BaseModel):
|
|
4834
|
-
value: Union[Value36, Value37]
|
|
4835
|
-
"""
|
|
4836
|
-
All elements, including extra elements
|
|
4837
|
-
"""
|
|
4838
|
-
id: int
|
|
4839
|
-
"""
|
|
4840
|
-
integer id of this entry
|
|
4841
|
-
"""
|
|
4842
|
-
|
|
4843
|
-
|
|
4844
|
-
class BasisSchema15(BaseModel):
|
|
4845
|
-
elements: List[AtomicElementSchema17] = Field(..., title="atomic elements schema")
|
|
4846
|
-
"""
|
|
4847
|
-
atomic elements schema
|
|
4848
|
-
"""
|
|
4849
|
-
coordinates: List[AtomicCoordinateSchema] = Field(..., title="atomic coordinates schema")
|
|
4850
|
-
"""
|
|
4851
|
-
atomic coordinates schema
|
|
4852
|
-
"""
|
|
4853
|
-
units: Optional[BasisUnitsEnum] = Field("crystal", title="basis units enum")
|
|
4854
|
-
labels: Optional[List[AtomicLabelSchema]] = Field(None, title="atomic labels schema")
|
|
4855
|
-
"""
|
|
4856
|
-
atomic labels schema
|
|
4857
|
-
"""
|
|
4858
|
-
|
|
4859
|
-
|
|
4860
|
-
class LatticeVectorsSchema14(BaseModel):
|
|
4861
|
-
a: List[float] = Field(..., max_length=3, min_length=3, title="vector 3d schema")
|
|
4862
|
-
b: List[float] = Field(..., max_length=3, min_length=3, title="vector 3d schema")
|
|
4863
|
-
c: List[float] = Field(..., max_length=3, min_length=3, title="vector 3d schema")
|
|
4864
|
-
alat: Optional[float] = 1
|
|
4865
|
-
"""
|
|
4866
|
-
lattice parameter for fractional coordinates
|
|
4867
|
-
"""
|
|
4868
|
-
units: Optional[LatticeVectorsUnitsEnum] = Field("angstrom", title="lattice vectors units enum")
|
|
4869
|
-
|
|
4870
|
-
|
|
4871
|
-
class LatticeUnitsSchema14(BaseModel):
|
|
4872
|
-
length: Optional[LatticeUnitsLengthEnum] = Field("angstrom", title="lattice units length enum")
|
|
4873
|
-
angle: Optional[LatticeUnitsAngleEnum] = Field("degree", title="lattice units angle enum")
|
|
4874
|
-
|
|
4875
|
-
|
|
4876
|
-
class LatticeSchema14(BaseModel):
|
|
4877
|
-
a: float
|
|
4878
|
-
"""
|
|
4879
|
-
length of the first lattice vector
|
|
4880
|
-
"""
|
|
4881
|
-
b: float
|
|
4882
|
-
"""
|
|
4883
|
-
length of the second lattice vector
|
|
4884
|
-
"""
|
|
4885
|
-
c: float
|
|
4886
|
-
"""
|
|
4887
|
-
length of the third lattice vector
|
|
4888
|
-
"""
|
|
4889
|
-
alpha: float
|
|
4890
|
-
"""
|
|
4891
|
-
angle between first and second lattice vector
|
|
4892
|
-
"""
|
|
4893
|
-
beta: float
|
|
4894
|
-
"""
|
|
4895
|
-
angle between second and third lattice vector
|
|
4896
|
-
"""
|
|
4897
|
-
gamma: float
|
|
4898
|
-
"""
|
|
4899
|
-
angle between first and third lattice vector
|
|
4900
|
-
"""
|
|
4901
|
-
vectors: Optional[LatticeVectorsSchema14] = Field(None, title="lattice vectors schema")
|
|
4902
|
-
type: Optional[LatticeTypeEnum] = Field("TRI", title="lattice type enum")
|
|
4903
|
-
units: Optional[LatticeUnitsSchema14] = Field(
|
|
4904
|
-
default_factory=lambda: LatticeUnitsSchema14.model_validate({"length": "angstrom", "angle": "degree"}),
|
|
4905
|
-
title="Lattice units schema",
|
|
4906
|
-
)
|
|
4907
|
-
|
|
4908
|
-
|
|
4909
|
-
class Name119(Enum):
|
|
4910
|
-
volume = "volume"
|
|
4911
|
-
|
|
4912
|
-
|
|
4913
|
-
class Units51(Enum):
|
|
4914
|
-
angstrom_3 = "angstrom^3"
|
|
4915
|
-
|
|
4916
|
-
|
|
4917
|
-
class VolumeSchema14(BaseModel):
|
|
4918
|
-
name: Literal["0#-datamodel-code-generator-#-object-#-special-#"]
|
|
4919
|
-
units: Optional[Units51] = None
|
|
4920
|
-
value: float
|
|
4921
|
-
|
|
4922
|
-
|
|
4923
|
-
class Name120(Enum):
|
|
4924
|
-
density = "density"
|
|
4925
|
-
|
|
4926
|
-
|
|
4927
|
-
class Units52(Enum):
|
|
4928
|
-
g_cm_3 = "g/cm^3"
|
|
4929
|
-
|
|
4930
|
-
|
|
4931
|
-
class DensitySchema14(BaseModel):
|
|
4932
|
-
name: Literal["1#-datamodel-code-generator-#-object-#-special-#"]
|
|
4933
|
-
units: Optional[Units52] = None
|
|
4934
|
-
value: float
|
|
4935
|
-
|
|
4936
|
-
|
|
4937
|
-
class Units53(Enum):
|
|
4938
|
-
angstrom = "angstrom"
|
|
4939
|
-
|
|
4940
|
-
|
|
4941
|
-
class ScalarSchema15(BaseModel):
|
|
4942
|
-
units: Optional[Units53] = None
|
|
4943
|
-
value: float
|
|
4944
|
-
|
|
4945
|
-
|
|
4946
|
-
class Name121(Enum):
|
|
4947
|
-
symmetry = "symmetry"
|
|
4948
|
-
|
|
4949
|
-
|
|
4950
|
-
class SymmetrySchema14(BaseModel):
|
|
4951
|
-
pointGroupSymbol: Optional[str] = None
|
|
4952
|
-
"""
|
|
4953
|
-
point group symbol in Schoenflies notation
|
|
4954
|
-
"""
|
|
4955
|
-
spaceGroupSymbol: Optional[str] = None
|
|
4956
|
-
"""
|
|
4957
|
-
space group symbol in Hermann–Mauguin notation
|
|
4958
|
-
"""
|
|
4959
|
-
tolerance: Optional[ScalarSchema15] = Field(None, title="scalar schema")
|
|
4960
|
-
"""
|
|
4961
|
-
tolerance used for symmetry calculation
|
|
4962
|
-
"""
|
|
4963
|
-
name: Literal["2#-datamodel-code-generator-#-object-#-special-#"]
|
|
4964
|
-
|
|
4965
|
-
|
|
4966
|
-
class Name122(Enum):
|
|
4967
|
-
elemental_ratio = "elemental_ratio"
|
|
4968
|
-
|
|
4969
|
-
|
|
4970
|
-
class ElementalRatio14(BaseModel):
|
|
4971
|
-
name: Literal["3#-datamodel-code-generator-#-object-#-special-#"]
|
|
4972
|
-
value: confloat(ge=0.0, le=1.0)
|
|
4973
|
-
element: Optional[str] = None
|
|
4974
|
-
"""
|
|
4975
|
-
the element this ratio is for
|
|
4976
|
-
"""
|
|
4977
|
-
|
|
4978
|
-
|
|
4979
|
-
class Name123(Enum):
|
|
4980
|
-
p_norm = "p-norm"
|
|
4981
|
-
|
|
4982
|
-
|
|
4983
|
-
class PNorm14(BaseModel):
|
|
4984
|
-
name: Literal["4#-datamodel-code-generator-#-object-#-special-#"]
|
|
4985
|
-
degree: Optional[int] = None
|
|
4986
|
-
"""
|
|
4987
|
-
degree of the dimensionality of the norm
|
|
4988
|
-
"""
|
|
4989
|
-
value: float
|
|
4990
|
-
|
|
4991
|
-
|
|
4992
|
-
class Name124(Enum):
|
|
4993
|
-
inchi = "inchi"
|
|
4994
|
-
|
|
4995
|
-
|
|
4996
|
-
class InChIRepresentationSchema14(BaseModel):
|
|
4997
|
-
name: Literal["5#-datamodel-code-generator-#-object-#-special-#"]
|
|
4998
|
-
value: str
|
|
4999
|
-
|
|
5000
|
-
|
|
5001
|
-
class Name125(Enum):
|
|
5002
|
-
inchi_key = "inchi_key"
|
|
5003
|
-
|
|
5004
|
-
|
|
5005
|
-
class InChIKeyRepresentationSchema14(BaseModel):
|
|
5006
|
-
name: Literal["6#-datamodel-code-generator-#-object-#-special-#"]
|
|
5007
|
-
value: str
|
|
5008
|
-
|
|
5009
|
-
|
|
5010
|
-
class DerivedPropertiesSchema14(
|
|
5011
|
-
RootModel[
|
|
5012
|
-
Union[
|
|
5013
|
-
VolumeSchema14,
|
|
5014
|
-
DensitySchema14,
|
|
5015
|
-
SymmetrySchema14,
|
|
5016
|
-
ElementalRatio14,
|
|
5017
|
-
PNorm14,
|
|
5018
|
-
InChIRepresentationSchema14,
|
|
5019
|
-
InChIKeyRepresentationSchema14,
|
|
5020
|
-
]
|
|
5021
|
-
]
|
|
5022
|
-
):
|
|
5023
|
-
root: Union[
|
|
5024
|
-
VolumeSchema14,
|
|
5025
|
-
DensitySchema14,
|
|
5026
|
-
SymmetrySchema14,
|
|
5027
|
-
ElementalRatio14,
|
|
5028
|
-
PNorm14,
|
|
5029
|
-
InChIRepresentationSchema14,
|
|
5030
|
-
InChIKeyRepresentationSchema14,
|
|
5031
|
-
] = Field(..., discriminator="name")
|
|
5032
|
-
|
|
5033
|
-
|
|
5034
|
-
class Name126(Enum):
|
|
5035
|
-
default = "default"
|
|
5036
|
-
atomsTooClose = "atomsTooClose"
|
|
5037
|
-
atomsOverlap = "atomsOverlap"
|
|
5038
|
-
|
|
5039
|
-
|
|
5040
|
-
class MaterialConsistencyCheckSchema14(BaseModel):
|
|
5041
|
-
name: Name126
|
|
5042
|
-
"""
|
|
5043
|
-
Name of the consistency check that is performed, which is listed in an enum.
|
|
5044
|
-
"""
|
|
5045
|
-
key: str
|
|
5046
|
-
"""
|
|
5047
|
-
Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'
|
|
5048
|
-
"""
|
|
5049
|
-
severity: Severity
|
|
5050
|
-
"""
|
|
5051
|
-
Severity level of the problem, which is used in UI to differentiate.
|
|
5052
|
-
"""
|
|
5053
|
-
message: str
|
|
5054
|
-
"""
|
|
5055
|
-
Message generated by the consistency check describing the problem.
|
|
5056
|
-
"""
|
|
5057
|
-
|
|
5058
|
-
|
|
5059
|
-
class CrystalSchema14(BaseModel):
|
|
5060
|
-
formula: Optional[str] = None
|
|
5061
|
-
"""
|
|
5062
|
-
reduced chemical formula
|
|
5063
|
-
"""
|
|
5064
|
-
unitCellFormula: Optional[str] = None
|
|
5065
|
-
"""
|
|
5066
|
-
chemical formula based on the number of atoms of each element in the supercell
|
|
5067
|
-
"""
|
|
5068
|
-
basis: BasisSchema15 = Field(..., title="basis schema")
|
|
5069
|
-
lattice: LatticeSchema14 = Field(..., title="lattice schema")
|
|
5070
|
-
derivedProperties: Optional[List[DerivedPropertiesSchema14]] = Field(None, title="derived properties schema")
|
|
5071
|
-
external: Optional[DatabaseSourceSchema] = Field(None, title="database source schema")
|
|
5072
|
-
"""
|
|
5073
|
-
information about a database source
|
|
5074
|
-
"""
|
|
5075
|
-
src: Optional[FileSourceSchema] = Field(None, title="file source schema")
|
|
5076
|
-
"""
|
|
5077
|
-
file source with the information inside
|
|
5078
|
-
"""
|
|
5079
|
-
scaledHash: Optional[str] = None
|
|
5080
|
-
"""
|
|
5081
|
-
Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).
|
|
5082
|
-
"""
|
|
5083
|
-
icsdId: Optional[int] = None
|
|
5084
|
-
"""
|
|
5085
|
-
Corresponding ICSD id of the material
|
|
5086
|
-
"""
|
|
5087
|
-
isNonPeriodic: Optional[bool] = None
|
|
5088
|
-
"""
|
|
5089
|
-
Whether to work in the finite molecular picture (usually with atomic orbital basis)
|
|
5090
|
-
"""
|
|
5091
|
-
consistencyChecks: Optional[List[MaterialConsistencyCheckSchema14]] = None
|
|
5092
|
-
field_id: Optional[str] = Field(None, alias="_id")
|
|
5093
|
-
"""
|
|
5094
|
-
entity identity
|
|
5095
|
-
"""
|
|
5096
|
-
slug: Optional[str] = None
|
|
5097
|
-
"""
|
|
5098
|
-
entity slug
|
|
5099
|
-
"""
|
|
5100
|
-
systemName: Optional[str] = None
|
|
5101
|
-
schemaVersion: Optional[str] = "2022.8.16"
|
|
5102
|
-
"""
|
|
5103
|
-
entity's schema version. Used to distinct between different schemas.
|
|
5104
|
-
"""
|
|
5105
|
-
name: Optional[str] = None
|
|
5106
|
-
"""
|
|
5107
|
-
entity name
|
|
5108
|
-
"""
|
|
5109
|
-
isDefault: Optional[bool] = False
|
|
5110
|
-
"""
|
|
5111
|
-
Identifies that entity is defaultable
|
|
5112
|
-
"""
|
|
5113
|
-
metadata: Optional[Dict[str, Any]] = None
|
|
5114
|
-
|
|
5115
|
-
|
|
5116
|
-
class AtomicLayersUniqueRepeatedSchema6(BaseModel):
|
|
5117
|
-
termination_top: TerminationSchema8 = Field(..., title="Termination Schema")
|
|
5118
|
-
"""
|
|
5119
|
-
Defines a specific termination of a slab
|
|
5120
|
-
"""
|
|
5121
|
-
number_of_repetitions: conint(ge=1)
|
|
5122
|
-
"""
|
|
5123
|
-
Number of repetitions of the unique atomic layers
|
|
5124
|
-
"""
|
|
5125
|
-
miller_indices: Optional[List[int]] = Field([0, 0, 1], max_length=3, min_length=3, title="Miller Indices Schema")
|
|
5126
|
-
"""
|
|
5127
|
-
Miller indices [h, k, l] defining crystallographic planes
|
|
5128
|
-
"""
|
|
5129
|
-
crystal: CrystalSchema14 = Field(..., title="Crystal Schema")
|
|
5130
|
-
"""
|
|
5131
|
-
A crystal structure, referencing the base material schema
|
|
5132
|
-
"""
|
|
5133
|
-
use_conventional_cell: Optional[bool] = True
|
|
5134
|
-
"""
|
|
5135
|
-
Use the conventional cell for the crystal structure
|
|
5136
|
-
"""
|
|
5137
|
-
|
|
5138
|
-
|
|
5139
|
-
class Value38(Enum):
|
|
5140
|
-
H = "H"
|
|
5141
|
-
He = "He"
|
|
5142
|
-
Li = "Li"
|
|
5143
|
-
Be = "Be"
|
|
5144
|
-
B = "B"
|
|
5145
|
-
C = "C"
|
|
5146
|
-
N = "N"
|
|
5147
|
-
O = "O"
|
|
5148
|
-
F = "F"
|
|
5149
|
-
Ne = "Ne"
|
|
5150
|
-
Na = "Na"
|
|
5151
|
-
Mg = "Mg"
|
|
5152
|
-
Al = "Al"
|
|
5153
|
-
Si = "Si"
|
|
5154
|
-
P = "P"
|
|
5155
|
-
S = "S"
|
|
5156
|
-
Cl = "Cl"
|
|
5157
|
-
Ar = "Ar"
|
|
5158
|
-
K = "K"
|
|
5159
|
-
Ca = "Ca"
|
|
5160
|
-
Sc = "Sc"
|
|
5161
|
-
Ti = "Ti"
|
|
5162
|
-
V = "V"
|
|
5163
|
-
Cr = "Cr"
|
|
5164
|
-
Mn = "Mn"
|
|
5165
|
-
Fe = "Fe"
|
|
5166
|
-
Co = "Co"
|
|
5167
|
-
Ni = "Ni"
|
|
5168
|
-
Cu = "Cu"
|
|
5169
|
-
Zn = "Zn"
|
|
5170
|
-
Ga = "Ga"
|
|
5171
|
-
Ge = "Ge"
|
|
5172
|
-
As = "As"
|
|
5173
|
-
Se = "Se"
|
|
5174
|
-
Br = "Br"
|
|
5175
|
-
Kr = "Kr"
|
|
5176
|
-
Rb = "Rb"
|
|
5177
|
-
Sr = "Sr"
|
|
5178
|
-
Y = "Y"
|
|
5179
|
-
Zr = "Zr"
|
|
5180
|
-
Nb = "Nb"
|
|
5181
|
-
Mo = "Mo"
|
|
5182
|
-
Tc = "Tc"
|
|
5183
|
-
Ru = "Ru"
|
|
5184
|
-
Rh = "Rh"
|
|
5185
|
-
Pd = "Pd"
|
|
5186
|
-
Ag = "Ag"
|
|
5187
|
-
Cd = "Cd"
|
|
5188
|
-
In = "In"
|
|
5189
|
-
Sn = "Sn"
|
|
5190
|
-
Sb = "Sb"
|
|
5191
|
-
Te = "Te"
|
|
5192
|
-
I = "I"
|
|
5193
|
-
Xe = "Xe"
|
|
5194
|
-
Cs = "Cs"
|
|
5195
|
-
Ba = "Ba"
|
|
5196
|
-
La = "La"
|
|
5197
|
-
Ce = "Ce"
|
|
5198
|
-
Pr = "Pr"
|
|
5199
|
-
Nd = "Nd"
|
|
5200
|
-
Pm = "Pm"
|
|
5201
|
-
Sm = "Sm"
|
|
5202
|
-
Eu = "Eu"
|
|
5203
|
-
Gd = "Gd"
|
|
5204
|
-
Tb = "Tb"
|
|
5205
|
-
Dy = "Dy"
|
|
5206
|
-
Ho = "Ho"
|
|
5207
|
-
Er = "Er"
|
|
5208
|
-
Tm = "Tm"
|
|
5209
|
-
Yb = "Yb"
|
|
5210
|
-
Lu = "Lu"
|
|
5211
|
-
Hf = "Hf"
|
|
5212
|
-
Ta = "Ta"
|
|
5213
|
-
W = "W"
|
|
5214
|
-
Re = "Re"
|
|
5215
|
-
Os = "Os"
|
|
5216
|
-
Ir = "Ir"
|
|
5217
|
-
Pt = "Pt"
|
|
5218
|
-
Au = "Au"
|
|
5219
|
-
Hg = "Hg"
|
|
5220
|
-
Tl = "Tl"
|
|
5221
|
-
Pb = "Pb"
|
|
5222
|
-
Bi = "Bi"
|
|
5223
|
-
Po = "Po"
|
|
5224
|
-
At = "At"
|
|
5225
|
-
Rn = "Rn"
|
|
5226
|
-
Fr = "Fr"
|
|
5227
|
-
Ra = "Ra"
|
|
5228
|
-
Ac = "Ac"
|
|
5229
|
-
Th = "Th"
|
|
5230
|
-
Pa = "Pa"
|
|
5231
|
-
U = "U"
|
|
5232
|
-
Np = "Np"
|
|
5233
|
-
Pu = "Pu"
|
|
5234
|
-
Am = "Am"
|
|
5235
|
-
Cm = "Cm"
|
|
5236
|
-
Bk = "Bk"
|
|
5237
|
-
Cf = "Cf"
|
|
5238
|
-
Es = "Es"
|
|
5239
|
-
Fm = "Fm"
|
|
5240
|
-
Md = "Md"
|
|
5241
|
-
No = "No"
|
|
5242
|
-
Lr = "Lr"
|
|
5243
|
-
Rf = "Rf"
|
|
5244
|
-
Db = "Db"
|
|
5245
|
-
Sg = "Sg"
|
|
5246
|
-
Bh = "Bh"
|
|
5247
|
-
Hs = "Hs"
|
|
5248
|
-
Mt = "Mt"
|
|
5249
|
-
Ds = "Ds"
|
|
5250
|
-
Rg = "Rg"
|
|
5251
|
-
Cn = "Cn"
|
|
5252
|
-
Nh = "Nh"
|
|
5253
|
-
Fl = "Fl"
|
|
5254
|
-
Mc = "Mc"
|
|
5255
|
-
Lv = "Lv"
|
|
5256
|
-
Ts = "Ts"
|
|
5257
|
-
Og = "Og"
|
|
5258
|
-
|
|
5259
|
-
|
|
5260
|
-
class Value39(Enum):
|
|
5261
|
-
X = "X"
|
|
5262
|
-
Vac = "Vac"
|
|
5263
|
-
|
|
5264
|
-
|
|
5265
|
-
class AtomicElementSchema18(BaseModel):
|
|
5266
|
-
value: Union[Value38, Value39]
|
|
5267
|
-
"""
|
|
5268
|
-
All elements, including extra elements
|
|
5269
|
-
"""
|
|
5270
|
-
id: int
|
|
5271
|
-
"""
|
|
5272
|
-
integer id of this entry
|
|
5273
|
-
"""
|
|
5274
|
-
|
|
5275
|
-
|
|
5276
|
-
class BasisSchema16(BaseModel):
|
|
5277
|
-
elements: List[AtomicElementSchema18] = Field(..., title="atomic elements schema")
|
|
5278
|
-
"""
|
|
5279
|
-
atomic elements schema
|
|
5280
|
-
"""
|
|
5281
|
-
coordinates: List[AtomicCoordinateSchema] = Field(..., title="atomic coordinates schema")
|
|
5282
|
-
"""
|
|
5283
|
-
atomic coordinates schema
|
|
5284
|
-
"""
|
|
5285
|
-
units: Optional[BasisUnitsEnum] = Field("crystal", title="basis units enum")
|
|
5286
|
-
labels: Optional[List[AtomicLabelSchema]] = Field(None, title="atomic labels schema")
|
|
5287
|
-
"""
|
|
5288
|
-
atomic labels schema
|
|
5289
|
-
"""
|
|
5290
|
-
|
|
5291
|
-
|
|
5292
|
-
class LatticeVectorsSchema15(BaseModel):
|
|
5293
|
-
a: List[float] = Field(..., max_length=3, min_length=3, title="vector 3d schema")
|
|
5294
|
-
b: List[float] = Field(..., max_length=3, min_length=3, title="vector 3d schema")
|
|
5295
|
-
c: List[float] = Field(..., max_length=3, min_length=3, title="vector 3d schema")
|
|
5296
|
-
alat: Optional[float] = 1
|
|
5297
|
-
"""
|
|
5298
|
-
lattice parameter for fractional coordinates
|
|
5299
|
-
"""
|
|
5300
|
-
units: Optional[LatticeVectorsUnitsEnum] = Field("angstrom", title="lattice vectors units enum")
|
|
5301
|
-
|
|
5302
|
-
|
|
5303
|
-
class LatticeUnitsSchema15(BaseModel):
|
|
5304
|
-
length: Optional[LatticeUnitsLengthEnum] = Field("angstrom", title="lattice units length enum")
|
|
5305
|
-
angle: Optional[LatticeUnitsAngleEnum] = Field("degree", title="lattice units angle enum")
|
|
5306
|
-
|
|
5307
|
-
|
|
5308
|
-
class LatticeSchema15(BaseModel):
|
|
5309
|
-
a: float
|
|
5310
|
-
"""
|
|
5311
|
-
length of the first lattice vector
|
|
5312
|
-
"""
|
|
5313
|
-
b: float
|
|
5314
|
-
"""
|
|
5315
|
-
length of the second lattice vector
|
|
5316
|
-
"""
|
|
5317
|
-
c: float
|
|
5318
|
-
"""
|
|
5319
|
-
length of the third lattice vector
|
|
5320
|
-
"""
|
|
5321
|
-
alpha: float
|
|
5322
|
-
"""
|
|
5323
|
-
angle between first and second lattice vector
|
|
5324
|
-
"""
|
|
5325
|
-
beta: float
|
|
5326
|
-
"""
|
|
5327
|
-
angle between second and third lattice vector
|
|
5328
|
-
"""
|
|
5329
|
-
gamma: float
|
|
5330
|
-
"""
|
|
5331
|
-
angle between first and third lattice vector
|
|
5332
|
-
"""
|
|
5333
|
-
vectors: Optional[LatticeVectorsSchema15] = Field(None, title="lattice vectors schema")
|
|
5334
|
-
type: Optional[LatticeTypeEnum] = Field("TRI", title="lattice type enum")
|
|
5335
|
-
units: Optional[LatticeUnitsSchema15] = Field(
|
|
5336
|
-
default_factory=lambda: LatticeUnitsSchema15.model_validate({"length": "angstrom", "angle": "degree"}),
|
|
5337
|
-
title="Lattice units schema",
|
|
5338
|
-
)
|
|
5339
|
-
|
|
5340
|
-
|
|
5341
|
-
class Name127(Enum):
|
|
5342
|
-
volume = "volume"
|
|
5343
|
-
|
|
5344
|
-
|
|
5345
|
-
class Units54(Enum):
|
|
5346
|
-
angstrom_3 = "angstrom^3"
|
|
5347
|
-
|
|
5348
|
-
|
|
5349
|
-
class VolumeSchema15(BaseModel):
|
|
5350
|
-
name: Literal["0#-datamodel-code-generator-#-object-#-special-#"]
|
|
5351
|
-
units: Optional[Units54] = None
|
|
5352
|
-
value: float
|
|
5353
|
-
|
|
5354
|
-
|
|
5355
|
-
class Name128(Enum):
|
|
5356
|
-
density = "density"
|
|
5357
|
-
|
|
5358
|
-
|
|
5359
|
-
class Units55(Enum):
|
|
5360
|
-
g_cm_3 = "g/cm^3"
|
|
5361
|
-
|
|
5362
|
-
|
|
5363
|
-
class DensitySchema15(BaseModel):
|
|
5364
|
-
name: Literal["1#-datamodel-code-generator-#-object-#-special-#"]
|
|
5365
|
-
units: Optional[Units55] = None
|
|
5366
|
-
value: float
|
|
5367
|
-
|
|
5368
|
-
|
|
5369
|
-
class Units56(Enum):
|
|
5370
|
-
angstrom = "angstrom"
|
|
5371
|
-
|
|
5372
|
-
|
|
5373
|
-
class ScalarSchema16(BaseModel):
|
|
5374
|
-
units: Optional[Units56] = None
|
|
5375
|
-
value: float
|
|
5376
|
-
|
|
5377
|
-
|
|
5378
|
-
class Name129(Enum):
|
|
5379
|
-
symmetry = "symmetry"
|
|
5380
|
-
|
|
5381
|
-
|
|
5382
|
-
class SymmetrySchema15(BaseModel):
|
|
5383
|
-
pointGroupSymbol: Optional[str] = None
|
|
5384
|
-
"""
|
|
5385
|
-
point group symbol in Schoenflies notation
|
|
5386
|
-
"""
|
|
5387
|
-
spaceGroupSymbol: Optional[str] = None
|
|
5388
|
-
"""
|
|
5389
|
-
space group symbol in Hermann–Mauguin notation
|
|
5390
|
-
"""
|
|
5391
|
-
tolerance: Optional[ScalarSchema16] = Field(None, title="scalar schema")
|
|
5392
|
-
"""
|
|
5393
|
-
tolerance used for symmetry calculation
|
|
5394
|
-
"""
|
|
5395
|
-
name: Literal["2#-datamodel-code-generator-#-object-#-special-#"]
|
|
5396
|
-
|
|
5397
|
-
|
|
5398
|
-
class Name130(Enum):
|
|
5399
|
-
elemental_ratio = "elemental_ratio"
|
|
5400
|
-
|
|
5401
|
-
|
|
5402
|
-
class ElementalRatio15(BaseModel):
|
|
5403
|
-
name: Literal["3#-datamodel-code-generator-#-object-#-special-#"]
|
|
5404
|
-
value: confloat(ge=0.0, le=1.0)
|
|
5405
|
-
element: Optional[str] = None
|
|
5406
|
-
"""
|
|
5407
|
-
the element this ratio is for
|
|
5408
|
-
"""
|
|
5409
|
-
|
|
5410
|
-
|
|
5411
|
-
class Name131(Enum):
|
|
5412
|
-
p_norm = "p-norm"
|
|
5413
|
-
|
|
5414
|
-
|
|
5415
|
-
class PNorm15(BaseModel):
|
|
5416
|
-
name: Literal["4#-datamodel-code-generator-#-object-#-special-#"]
|
|
5417
|
-
degree: Optional[int] = None
|
|
5418
|
-
"""
|
|
5419
|
-
degree of the dimensionality of the norm
|
|
5420
|
-
"""
|
|
5421
|
-
value: float
|
|
5422
|
-
|
|
5423
|
-
|
|
5424
|
-
class Name132(Enum):
|
|
5425
|
-
inchi = "inchi"
|
|
5426
|
-
|
|
5427
|
-
|
|
5428
|
-
class InChIRepresentationSchema15(BaseModel):
|
|
5429
|
-
name: Literal["5#-datamodel-code-generator-#-object-#-special-#"]
|
|
5430
|
-
value: str
|
|
5431
|
-
|
|
5432
|
-
|
|
5433
|
-
class Name133(Enum):
|
|
5434
|
-
inchi_key = "inchi_key"
|
|
5435
|
-
|
|
5436
|
-
|
|
5437
|
-
class InChIKeyRepresentationSchema15(BaseModel):
|
|
5438
|
-
name: Literal["6#-datamodel-code-generator-#-object-#-special-#"]
|
|
5439
|
-
value: str
|
|
5440
|
-
|
|
5441
|
-
|
|
5442
|
-
class DerivedPropertiesSchema15(
|
|
5443
|
-
RootModel[
|
|
5444
|
-
Union[
|
|
5445
|
-
VolumeSchema15,
|
|
5446
|
-
DensitySchema15,
|
|
5447
|
-
SymmetrySchema15,
|
|
5448
|
-
ElementalRatio15,
|
|
5449
|
-
PNorm15,
|
|
5450
|
-
InChIRepresentationSchema15,
|
|
5451
|
-
InChIKeyRepresentationSchema15,
|
|
5452
|
-
]
|
|
5453
|
-
]
|
|
5454
|
-
):
|
|
5455
|
-
root: Union[
|
|
5456
|
-
VolumeSchema15,
|
|
5457
|
-
DensitySchema15,
|
|
5458
|
-
SymmetrySchema15,
|
|
5459
|
-
ElementalRatio15,
|
|
5460
|
-
PNorm15,
|
|
5461
|
-
InChIRepresentationSchema15,
|
|
5462
|
-
InChIKeyRepresentationSchema15,
|
|
5463
|
-
] = Field(..., discriminator="name")
|
|
5464
|
-
|
|
5465
|
-
|
|
5466
|
-
class Name134(Enum):
|
|
5467
|
-
default = "default"
|
|
5468
|
-
atomsTooClose = "atomsTooClose"
|
|
5469
|
-
atomsOverlap = "atomsOverlap"
|
|
5470
|
-
|
|
5471
|
-
|
|
5472
|
-
class MaterialConsistencyCheckSchema15(BaseModel):
|
|
5473
|
-
name: Name134
|
|
5474
|
-
"""
|
|
5475
|
-
Name of the consistency check that is performed, which is listed in an enum.
|
|
5476
|
-
"""
|
|
5477
|
-
key: str
|
|
5478
|
-
"""
|
|
5479
|
-
Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'
|
|
5480
|
-
"""
|
|
5481
|
-
severity: Severity
|
|
5482
|
-
"""
|
|
5483
|
-
Severity level of the problem, which is used in UI to differentiate.
|
|
5484
|
-
"""
|
|
5485
|
-
message: str
|
|
5486
|
-
"""
|
|
5487
|
-
Message generated by the consistency check describing the problem.
|
|
5488
|
-
"""
|
|
5489
|
-
|
|
5490
|
-
|
|
5491
|
-
class CrystalSchema15(BaseModel):
|
|
5492
|
-
formula: Optional[str] = None
|
|
5493
|
-
"""
|
|
5494
|
-
reduced chemical formula
|
|
5495
|
-
"""
|
|
5496
|
-
unitCellFormula: Optional[str] = None
|
|
5497
|
-
"""
|
|
5498
|
-
chemical formula based on the number of atoms of each element in the supercell
|
|
5499
|
-
"""
|
|
5500
|
-
basis: BasisSchema16 = Field(..., title="basis schema")
|
|
5501
|
-
lattice: LatticeSchema15 = Field(..., title="lattice schema")
|
|
5502
|
-
derivedProperties: Optional[List[DerivedPropertiesSchema15]] = Field(None, title="derived properties schema")
|
|
5503
|
-
external: Optional[DatabaseSourceSchema] = Field(None, title="database source schema")
|
|
5504
|
-
"""
|
|
5505
|
-
information about a database source
|
|
5506
|
-
"""
|
|
5507
|
-
src: Optional[FileSourceSchema] = Field(None, title="file source schema")
|
|
5508
|
-
"""
|
|
5509
|
-
file source with the information inside
|
|
5510
|
-
"""
|
|
5511
|
-
scaledHash: Optional[str] = None
|
|
5512
|
-
"""
|
|
5513
|
-
Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).
|
|
5514
|
-
"""
|
|
5515
|
-
icsdId: Optional[int] = None
|
|
5516
|
-
"""
|
|
5517
|
-
Corresponding ICSD id of the material
|
|
5518
|
-
"""
|
|
5519
|
-
isNonPeriodic: Optional[bool] = None
|
|
5520
|
-
"""
|
|
5521
|
-
Whether to work in the finite molecular picture (usually with atomic orbital basis)
|
|
5522
|
-
"""
|
|
5523
|
-
consistencyChecks: Optional[List[MaterialConsistencyCheckSchema15]] = None
|
|
5524
|
-
field_id: Optional[str] = Field(None, alias="_id")
|
|
5525
|
-
"""
|
|
5526
|
-
entity identity
|
|
5527
|
-
"""
|
|
5528
|
-
slug: Optional[str] = None
|
|
5529
|
-
"""
|
|
5530
|
-
entity slug
|
|
5531
|
-
"""
|
|
5532
|
-
systemName: Optional[str] = None
|
|
5533
|
-
schemaVersion: Optional[str] = "2022.8.16"
|
|
5534
|
-
"""
|
|
5535
|
-
entity's schema version. Used to distinct between different schemas.
|
|
5536
|
-
"""
|
|
5537
|
-
name: Optional[str] = None
|
|
5538
|
-
"""
|
|
5539
|
-
entity name
|
|
5540
|
-
"""
|
|
5541
|
-
isDefault: Optional[bool] = False
|
|
5542
|
-
"""
|
|
5543
|
-
Identifies that entity is defaultable
|
|
5544
|
-
"""
|
|
5545
|
-
metadata: Optional[Dict[str, Any]] = None
|
|
5546
|
-
|
|
5547
|
-
|
|
5548
|
-
class VacuumConfigurationSchema5(BaseModel):
|
|
5549
|
-
direction: AxisEnum = Field(..., title="Axis Enum")
|
|
5550
|
-
"""
|
|
5551
|
-
Enum for axis types
|
|
5552
|
-
"""
|
|
5553
|
-
size: Optional[confloat(ge=0.0)] = 10
|
|
5554
|
-
"""
|
|
5555
|
-
Size of the vacuum slab in angstroms
|
|
5556
|
-
"""
|
|
5557
|
-
crystal: CrystalSchema15 = Field(..., title="Crystal Schema")
|
|
5558
|
-
"""
|
|
5559
|
-
A crystal structure, referencing the base material schema
|
|
5560
|
-
"""
|
|
5561
|
-
|
|
5562
|
-
|
|
5563
|
-
class SlabStrainedSupercellWithGapConfigurationSchema1(BaseModel):
|
|
5564
|
-
gap: Optional[confloat(ge=0.0)] = None
|
|
5565
|
-
"""
|
|
5566
|
-
If provided, the film is shifted to have it as smallest distance to the substrate
|
|
5567
|
-
"""
|
|
5568
|
-
xy_supercell_matrix: Optional[List[SupercellMatrix2DSchemaItem]] = Field(
|
|
5569
|
-
default_factory=lambda: [SupercellMatrix2DSchemaItem.model_validate(v) for v in [[1, 0], [0, 1]]],
|
|
5570
|
-
max_length=2,
|
|
5571
|
-
min_length=2,
|
|
5572
|
-
title="Supercell Matrix 2D Schema",
|
|
5573
|
-
)
|
|
5574
|
-
"""
|
|
5575
|
-
Supercell matrix for xy plane transformations
|
|
5576
|
-
"""
|
|
5577
|
-
strain_matrix: List[ArrayOf3NumberElementsSchema] = Field(
|
|
5578
|
-
..., max_length=3, min_length=3, title="matrix 3x3 schema"
|
|
5579
|
-
)
|
|
5580
|
-
stack_components: List[Union[AtomicLayersUniqueRepeatedSchema6, VacuumConfigurationSchema5]] = Field(
|
|
5581
|
-
..., max_length=2, min_length=2
|
|
5582
|
-
)
|
|
5583
|
-
direction: Optional[AxisEnum] = Field("z", title="Axis Enum")
|
|
5584
|
-
"""
|
|
5585
|
-
Enum for axis types
|
|
5586
|
-
"""
|
|
5587
|
-
|
|
5588
|
-
|
|
5589
|
-
class Value40(Enum):
|
|
5590
|
-
H = "H"
|
|
5591
|
-
He = "He"
|
|
5592
|
-
Li = "Li"
|
|
5593
|
-
Be = "Be"
|
|
5594
|
-
B = "B"
|
|
5595
|
-
C = "C"
|
|
5596
|
-
N = "N"
|
|
5597
|
-
O = "O"
|
|
5598
|
-
F = "F"
|
|
5599
|
-
Ne = "Ne"
|
|
5600
|
-
Na = "Na"
|
|
5601
|
-
Mg = "Mg"
|
|
5602
|
-
Al = "Al"
|
|
5603
|
-
Si = "Si"
|
|
5604
|
-
P = "P"
|
|
5605
|
-
S = "S"
|
|
5606
|
-
Cl = "Cl"
|
|
5607
|
-
Ar = "Ar"
|
|
5608
|
-
K = "K"
|
|
5609
|
-
Ca = "Ca"
|
|
5610
|
-
Sc = "Sc"
|
|
5611
|
-
Ti = "Ti"
|
|
5612
|
-
V = "V"
|
|
5613
|
-
Cr = "Cr"
|
|
5614
|
-
Mn = "Mn"
|
|
5615
|
-
Fe = "Fe"
|
|
5616
|
-
Co = "Co"
|
|
5617
|
-
Ni = "Ni"
|
|
5618
|
-
Cu = "Cu"
|
|
5619
|
-
Zn = "Zn"
|
|
5620
|
-
Ga = "Ga"
|
|
5621
|
-
Ge = "Ge"
|
|
5622
|
-
As = "As"
|
|
5623
|
-
Se = "Se"
|
|
5624
|
-
Br = "Br"
|
|
5625
|
-
Kr = "Kr"
|
|
5626
|
-
Rb = "Rb"
|
|
5627
|
-
Sr = "Sr"
|
|
5628
|
-
Y = "Y"
|
|
5629
|
-
Zr = "Zr"
|
|
5630
|
-
Nb = "Nb"
|
|
5631
|
-
Mo = "Mo"
|
|
5632
|
-
Tc = "Tc"
|
|
5633
|
-
Ru = "Ru"
|
|
5634
|
-
Rh = "Rh"
|
|
5635
|
-
Pd = "Pd"
|
|
5636
|
-
Ag = "Ag"
|
|
5637
|
-
Cd = "Cd"
|
|
5638
|
-
In = "In"
|
|
5639
|
-
Sn = "Sn"
|
|
5640
|
-
Sb = "Sb"
|
|
5641
|
-
Te = "Te"
|
|
5642
|
-
I = "I"
|
|
5643
|
-
Xe = "Xe"
|
|
5644
|
-
Cs = "Cs"
|
|
5645
|
-
Ba = "Ba"
|
|
5646
|
-
La = "La"
|
|
5647
|
-
Ce = "Ce"
|
|
5648
|
-
Pr = "Pr"
|
|
5649
|
-
Nd = "Nd"
|
|
5650
|
-
Pm = "Pm"
|
|
5651
|
-
Sm = "Sm"
|
|
5652
|
-
Eu = "Eu"
|
|
5653
|
-
Gd = "Gd"
|
|
5654
|
-
Tb = "Tb"
|
|
5655
|
-
Dy = "Dy"
|
|
5656
|
-
Ho = "Ho"
|
|
5657
|
-
Er = "Er"
|
|
5658
|
-
Tm = "Tm"
|
|
5659
|
-
Yb = "Yb"
|
|
5660
|
-
Lu = "Lu"
|
|
5661
|
-
Hf = "Hf"
|
|
5662
|
-
Ta = "Ta"
|
|
5663
|
-
W = "W"
|
|
5664
|
-
Re = "Re"
|
|
5665
|
-
Os = "Os"
|
|
5666
|
-
Ir = "Ir"
|
|
5667
|
-
Pt = "Pt"
|
|
5668
|
-
Au = "Au"
|
|
5669
|
-
Hg = "Hg"
|
|
5670
|
-
Tl = "Tl"
|
|
5671
|
-
Pb = "Pb"
|
|
5672
|
-
Bi = "Bi"
|
|
5673
|
-
Po = "Po"
|
|
5674
|
-
At = "At"
|
|
5675
|
-
Rn = "Rn"
|
|
5676
|
-
Fr = "Fr"
|
|
5677
|
-
Ra = "Ra"
|
|
5678
|
-
Ac = "Ac"
|
|
5679
|
-
Th = "Th"
|
|
5680
|
-
Pa = "Pa"
|
|
5681
|
-
U = "U"
|
|
5682
|
-
Np = "Np"
|
|
5683
|
-
Pu = "Pu"
|
|
5684
|
-
Am = "Am"
|
|
5685
|
-
Cm = "Cm"
|
|
5686
|
-
Bk = "Bk"
|
|
5687
|
-
Cf = "Cf"
|
|
5688
|
-
Es = "Es"
|
|
5689
|
-
Fm = "Fm"
|
|
5690
|
-
Md = "Md"
|
|
5691
|
-
No = "No"
|
|
5692
|
-
Lr = "Lr"
|
|
5693
|
-
Rf = "Rf"
|
|
5694
|
-
Db = "Db"
|
|
5695
|
-
Sg = "Sg"
|
|
5696
|
-
Bh = "Bh"
|
|
5697
|
-
Hs = "Hs"
|
|
5698
|
-
Mt = "Mt"
|
|
5699
|
-
Ds = "Ds"
|
|
5700
|
-
Rg = "Rg"
|
|
5701
|
-
Cn = "Cn"
|
|
5702
|
-
Nh = "Nh"
|
|
5703
|
-
Fl = "Fl"
|
|
5704
|
-
Mc = "Mc"
|
|
5705
|
-
Lv = "Lv"
|
|
5706
|
-
Ts = "Ts"
|
|
5707
|
-
Og = "Og"
|
|
5708
|
-
|
|
5709
|
-
|
|
5710
|
-
class Value41(Enum):
|
|
5711
|
-
X = "X"
|
|
5712
|
-
Vac = "Vac"
|
|
5713
|
-
|
|
5714
|
-
|
|
5715
|
-
class AtomicElementSchema19(BaseModel):
|
|
5716
|
-
value: Union[Value40, Value41]
|
|
5717
|
-
"""
|
|
5718
|
-
All elements, including extra elements
|
|
5719
|
-
"""
|
|
5720
|
-
id: int
|
|
5721
|
-
"""
|
|
5722
|
-
integer id of this entry
|
|
5723
|
-
"""
|
|
5724
|
-
|
|
5725
|
-
|
|
5726
|
-
class BasisSchema17(BaseModel):
|
|
5727
|
-
elements: List[AtomicElementSchema19] = Field(..., title="atomic elements schema")
|
|
5728
|
-
"""
|
|
5729
|
-
atomic elements schema
|
|
5730
|
-
"""
|
|
5731
|
-
coordinates: List[AtomicCoordinateSchema] = Field(..., title="atomic coordinates schema")
|
|
5732
|
-
"""
|
|
5733
|
-
atomic coordinates schema
|
|
5734
|
-
"""
|
|
5735
|
-
units: Optional[BasisUnitsEnum] = Field("crystal", title="basis units enum")
|
|
5736
|
-
labels: Optional[List[AtomicLabelSchema]] = Field(None, title="atomic labels schema")
|
|
5737
|
-
"""
|
|
5738
|
-
atomic labels schema
|
|
5739
|
-
"""
|
|
5740
|
-
|
|
5741
|
-
|
|
5742
|
-
class LatticeVectorsSchema16(BaseModel):
|
|
5743
|
-
a: List[float] = Field(..., max_length=3, min_length=3, title="vector 3d schema")
|
|
5744
|
-
b: List[float] = Field(..., max_length=3, min_length=3, title="vector 3d schema")
|
|
5745
|
-
c: List[float] = Field(..., max_length=3, min_length=3, title="vector 3d schema")
|
|
5746
|
-
alat: Optional[float] = 1
|
|
5747
|
-
"""
|
|
5748
|
-
lattice parameter for fractional coordinates
|
|
5749
|
-
"""
|
|
5750
|
-
units: Optional[LatticeVectorsUnitsEnum] = Field("angstrom", title="lattice vectors units enum")
|
|
5751
|
-
|
|
5752
|
-
|
|
5753
|
-
class LatticeUnitsSchema16(BaseModel):
|
|
5754
|
-
length: Optional[LatticeUnitsLengthEnum] = Field("angstrom", title="lattice units length enum")
|
|
5755
|
-
angle: Optional[LatticeUnitsAngleEnum] = Field("degree", title="lattice units angle enum")
|
|
5756
|
-
|
|
5757
|
-
|
|
5758
|
-
class LatticeSchema16(BaseModel):
|
|
5759
|
-
a: float
|
|
5760
|
-
"""
|
|
5761
|
-
length of the first lattice vector
|
|
5762
|
-
"""
|
|
5763
|
-
b: float
|
|
5764
|
-
"""
|
|
5765
|
-
length of the second lattice vector
|
|
5766
|
-
"""
|
|
5767
|
-
c: float
|
|
5768
|
-
"""
|
|
5769
|
-
length of the third lattice vector
|
|
5770
|
-
"""
|
|
5771
|
-
alpha: float
|
|
5772
|
-
"""
|
|
5773
|
-
angle between first and second lattice vector
|
|
5774
|
-
"""
|
|
5775
|
-
beta: float
|
|
5776
|
-
"""
|
|
5777
|
-
angle between second and third lattice vector
|
|
5778
|
-
"""
|
|
5779
|
-
gamma: float
|
|
5780
|
-
"""
|
|
5781
|
-
angle between first and third lattice vector
|
|
5782
|
-
"""
|
|
5783
|
-
vectors: Optional[LatticeVectorsSchema16] = Field(None, title="lattice vectors schema")
|
|
5784
|
-
type: Optional[LatticeTypeEnum] = Field("TRI", title="lattice type enum")
|
|
5785
|
-
units: Optional[LatticeUnitsSchema16] = Field(
|
|
5786
|
-
default_factory=lambda: LatticeUnitsSchema16.model_validate({"length": "angstrom", "angle": "degree"}),
|
|
5787
|
-
title="Lattice units schema",
|
|
5788
|
-
)
|
|
5789
|
-
|
|
5790
|
-
|
|
5791
|
-
class Name135(Enum):
|
|
5792
|
-
volume = "volume"
|
|
5793
|
-
|
|
5794
|
-
|
|
5795
|
-
class Units57(Enum):
|
|
5796
|
-
angstrom_3 = "angstrom^3"
|
|
5797
|
-
|
|
5798
|
-
|
|
5799
|
-
class VolumeSchema16(BaseModel):
|
|
5800
|
-
name: Literal["0#-datamodel-code-generator-#-object-#-special-#"]
|
|
5801
|
-
units: Optional[Units57] = None
|
|
5802
|
-
value: float
|
|
5803
|
-
|
|
5804
|
-
|
|
5805
|
-
class Name136(Enum):
|
|
5806
|
-
density = "density"
|
|
5807
|
-
|
|
5808
|
-
|
|
5809
|
-
class Units58(Enum):
|
|
5810
|
-
g_cm_3 = "g/cm^3"
|
|
5811
|
-
|
|
5812
|
-
|
|
5813
|
-
class DensitySchema16(BaseModel):
|
|
5814
|
-
name: Literal["1#-datamodel-code-generator-#-object-#-special-#"]
|
|
5815
|
-
units: Optional[Units58] = None
|
|
5816
|
-
value: float
|
|
5817
|
-
|
|
5818
|
-
|
|
5819
|
-
class Units59(Enum):
|
|
5820
|
-
angstrom = "angstrom"
|
|
5821
|
-
|
|
5822
|
-
|
|
5823
|
-
class ScalarSchema17(BaseModel):
|
|
5824
|
-
units: Optional[Units59] = None
|
|
5825
|
-
value: float
|
|
5826
|
-
|
|
5827
|
-
|
|
5828
|
-
class Name137(Enum):
|
|
5829
|
-
symmetry = "symmetry"
|
|
5830
|
-
|
|
5831
|
-
|
|
5832
|
-
class SymmetrySchema16(BaseModel):
|
|
5833
|
-
pointGroupSymbol: Optional[str] = None
|
|
5834
|
-
"""
|
|
5835
|
-
point group symbol in Schoenflies notation
|
|
5836
|
-
"""
|
|
5837
|
-
spaceGroupSymbol: Optional[str] = None
|
|
5838
|
-
"""
|
|
5839
|
-
space group symbol in Hermann–Mauguin notation
|
|
5840
|
-
"""
|
|
5841
|
-
tolerance: Optional[ScalarSchema17] = Field(None, title="scalar schema")
|
|
5842
|
-
"""
|
|
5843
|
-
tolerance used for symmetry calculation
|
|
5844
|
-
"""
|
|
5845
|
-
name: Literal["2#-datamodel-code-generator-#-object-#-special-#"]
|
|
5846
|
-
|
|
5847
|
-
|
|
5848
|
-
class Name138(Enum):
|
|
5849
|
-
elemental_ratio = "elemental_ratio"
|
|
5850
|
-
|
|
5851
|
-
|
|
5852
|
-
class ElementalRatio16(BaseModel):
|
|
5853
|
-
name: Literal["3#-datamodel-code-generator-#-object-#-special-#"]
|
|
5854
|
-
value: confloat(ge=0.0, le=1.0)
|
|
5855
|
-
element: Optional[str] = None
|
|
5856
|
-
"""
|
|
5857
|
-
the element this ratio is for
|
|
5858
|
-
"""
|
|
5859
|
-
|
|
5860
|
-
|
|
5861
|
-
class Name139(Enum):
|
|
5862
|
-
p_norm = "p-norm"
|
|
5863
|
-
|
|
5864
|
-
|
|
5865
|
-
class PNorm16(BaseModel):
|
|
5866
|
-
name: Literal["4#-datamodel-code-generator-#-object-#-special-#"]
|
|
5867
|
-
degree: Optional[int] = None
|
|
5868
|
-
"""
|
|
5869
|
-
degree of the dimensionality of the norm
|
|
5870
|
-
"""
|
|
5871
|
-
value: float
|
|
5872
|
-
|
|
5873
|
-
|
|
5874
|
-
class Name140(Enum):
|
|
5875
|
-
inchi = "inchi"
|
|
5876
|
-
|
|
5877
|
-
|
|
5878
|
-
class InChIRepresentationSchema16(BaseModel):
|
|
5879
|
-
name: Literal["5#-datamodel-code-generator-#-object-#-special-#"]
|
|
5880
|
-
value: str
|
|
5881
|
-
|
|
5882
|
-
|
|
5883
|
-
class Name141(Enum):
|
|
5884
|
-
inchi_key = "inchi_key"
|
|
5885
|
-
|
|
5886
|
-
|
|
5887
|
-
class InChIKeyRepresentationSchema16(BaseModel):
|
|
5888
|
-
name: Literal["6#-datamodel-code-generator-#-object-#-special-#"]
|
|
5889
|
-
value: str
|
|
5890
|
-
|
|
5891
|
-
|
|
5892
|
-
class DerivedPropertiesSchema16(
|
|
5893
|
-
RootModel[
|
|
5894
|
-
Union[
|
|
5895
|
-
VolumeSchema16,
|
|
5896
|
-
DensitySchema16,
|
|
5897
|
-
SymmetrySchema16,
|
|
5898
|
-
ElementalRatio16,
|
|
5899
|
-
PNorm16,
|
|
5900
|
-
InChIRepresentationSchema16,
|
|
5901
|
-
InChIKeyRepresentationSchema16,
|
|
5902
|
-
]
|
|
5903
|
-
]
|
|
5904
|
-
):
|
|
5905
|
-
root: Union[
|
|
5906
|
-
VolumeSchema16,
|
|
5907
|
-
DensitySchema16,
|
|
5908
|
-
SymmetrySchema16,
|
|
5909
|
-
ElementalRatio16,
|
|
5910
|
-
PNorm16,
|
|
5911
|
-
InChIRepresentationSchema16,
|
|
5912
|
-
InChIKeyRepresentationSchema16,
|
|
5913
|
-
] = Field(..., discriminator="name")
|
|
5914
|
-
|
|
5915
|
-
|
|
5916
|
-
class Name142(Enum):
|
|
5917
|
-
default = "default"
|
|
5918
|
-
atomsTooClose = "atomsTooClose"
|
|
5919
|
-
atomsOverlap = "atomsOverlap"
|
|
5920
|
-
|
|
5921
|
-
|
|
5922
|
-
class MaterialConsistencyCheckSchema16(BaseModel):
|
|
5923
|
-
name: Name142
|
|
5924
|
-
"""
|
|
5925
|
-
Name of the consistency check that is performed, which is listed in an enum.
|
|
5926
|
-
"""
|
|
5927
|
-
key: str
|
|
5928
|
-
"""
|
|
5929
|
-
Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'
|
|
5930
|
-
"""
|
|
5931
|
-
severity: Severity
|
|
5932
|
-
"""
|
|
5933
|
-
Severity level of the problem, which is used in UI to differentiate.
|
|
5934
|
-
"""
|
|
5935
|
-
message: str
|
|
5936
|
-
"""
|
|
5937
|
-
Message generated by the consistency check describing the problem.
|
|
5938
|
-
"""
|
|
5939
|
-
|
|
5940
|
-
|
|
5941
|
-
class CrystalSchema16(BaseModel):
|
|
5942
|
-
formula: Optional[str] = None
|
|
5943
|
-
"""
|
|
5944
|
-
reduced chemical formula
|
|
5945
|
-
"""
|
|
5946
|
-
unitCellFormula: Optional[str] = None
|
|
5947
|
-
"""
|
|
5948
|
-
chemical formula based on the number of atoms of each element in the supercell
|
|
5949
|
-
"""
|
|
5950
|
-
basis: BasisSchema17 = Field(..., title="basis schema")
|
|
5951
|
-
lattice: LatticeSchema16 = Field(..., title="lattice schema")
|
|
5952
|
-
derivedProperties: Optional[List[DerivedPropertiesSchema16]] = Field(None, title="derived properties schema")
|
|
5953
|
-
external: Optional[DatabaseSourceSchema] = Field(None, title="database source schema")
|
|
5954
|
-
"""
|
|
5955
|
-
information about a database source
|
|
5956
|
-
"""
|
|
5957
|
-
src: Optional[FileSourceSchema] = Field(None, title="file source schema")
|
|
5958
|
-
"""
|
|
5959
|
-
file source with the information inside
|
|
5960
|
-
"""
|
|
5961
|
-
scaledHash: Optional[str] = None
|
|
5962
|
-
"""
|
|
5963
|
-
Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).
|
|
5964
|
-
"""
|
|
5965
|
-
icsdId: Optional[int] = None
|
|
5966
|
-
"""
|
|
5967
|
-
Corresponding ICSD id of the material
|
|
5968
|
-
"""
|
|
5969
|
-
isNonPeriodic: Optional[bool] = None
|
|
5970
|
-
"""
|
|
5971
|
-
Whether to work in the finite molecular picture (usually with atomic orbital basis)
|
|
5972
|
-
"""
|
|
5973
|
-
consistencyChecks: Optional[List[MaterialConsistencyCheckSchema16]] = None
|
|
5974
|
-
field_id: Optional[str] = Field(None, alias="_id")
|
|
5975
|
-
"""
|
|
5976
|
-
entity identity
|
|
5977
|
-
"""
|
|
5978
|
-
slug: Optional[str] = None
|
|
5979
|
-
"""
|
|
5980
|
-
entity slug
|
|
5981
|
-
"""
|
|
5982
|
-
systemName: Optional[str] = None
|
|
5983
|
-
schemaVersion: Optional[str] = "2022.8.16"
|
|
5984
|
-
"""
|
|
5985
|
-
entity's schema version. Used to distinct between different schemas.
|
|
5986
|
-
"""
|
|
5987
|
-
name: Optional[str] = None
|
|
5988
|
-
"""
|
|
5989
|
-
entity name
|
|
5990
|
-
"""
|
|
5991
|
-
isDefault: Optional[bool] = False
|
|
5992
|
-
"""
|
|
5993
|
-
Identifies that entity is defaultable
|
|
5994
|
-
"""
|
|
5995
|
-
metadata: Optional[Dict[str, Any]] = None
|
|
5996
|
-
|
|
5997
|
-
|
|
5998
|
-
class VacuumConfigurationSchema6(BaseModel):
|
|
5999
|
-
direction: AxisEnum = Field(..., title="Axis Enum")
|
|
6000
|
-
"""
|
|
6001
|
-
Enum for axis types
|
|
6002
|
-
"""
|
|
6003
|
-
size: Optional[confloat(ge=0.0)] = 10
|
|
6004
|
-
"""
|
|
6005
|
-
Size of the vacuum slab in angstroms
|
|
6006
|
-
"""
|
|
6007
|
-
crystal: CrystalSchema16 = Field(..., title="Crystal Schema")
|
|
6008
|
-
"""
|
|
6009
|
-
A crystal structure, referencing the base material schema
|
|
6010
|
-
"""
|
|
6011
|
-
|
|
6012
|
-
|
|
6013
|
-
class GrainBoundaryPlanarConfigurationSchema(BaseModel):
|
|
6014
|
-
direction: Optional[AxisEnum] = Field("z", title="Axis Enum")
|
|
6015
|
-
"""
|
|
6016
|
-
Enum for axis types
|
|
6017
|
-
"""
|
|
6018
|
-
stack_components: List[
|
|
6019
|
-
Union[
|
|
6020
|
-
Union[
|
|
6021
|
-
SlabConfigurationSchema,
|
|
6022
|
-
SlabStrainedSupercellConfigurationSchema,
|
|
6023
|
-
SlabStrainedSupercellWithGapConfigurationSchema,
|
|
6024
|
-
],
|
|
6025
|
-
Union[
|
|
6026
|
-
SlabConfigurationSchema1,
|
|
6027
|
-
SlabStrainedSupercellConfigurationSchema1,
|
|
6028
|
-
SlabStrainedSupercellWithGapConfigurationSchema1,
|
|
6029
|
-
],
|
|
6030
|
-
VacuumConfigurationSchema6,
|
|
6031
|
-
]
|
|
6032
|
-
] = Field(..., max_length=3, min_length=2)
|
|
6033
|
-
"""
|
|
6034
|
-
Components of the interface: slab, slab and vacuum
|
|
6035
|
-
"""
|
|
6036
|
-
xy_shift: Optional[List[float]] = Field([0, 0], max_length=2, min_length=2, title="vector 2d schema")
|
|
6037
|
-
"""
|
|
6038
|
-
xy shift for the film as cartesian 2D vector on the xy plane.
|
|
4268
|
+
Gap distances between stack components as an array of objects with id and value
|
|
6039
4269
|
"""
|