@mat3ra/esse 2026.6.16-0 → 2026.7.13-0
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.
- package/.pre-commit-config.yaml +1 -1
- package/README.md +1 -1
- package/dist/js/esse/JSONSchemasInterface.js +1 -1
- package/dist/js/esse/JSONSchemasInterfaceServer.js +2 -3
- package/dist/js/esse/schemaUtils.js +1 -2
- package/dist/js/esse/server/utils.js +2 -3
- package/dist/js/esse/utils.js +2 -3
- package/dist/js/example/apse/file/applications/espresso/7.2/pw.x.json +5 -5
- package/dist/js/schema/apse/file/applications/espresso/7.2/pw.x.json +5 -5
- package/dist/js/schema/materials_category/defective_structures/three_dimensional/solid_solution/configuration.json +2789 -0
- package/dist/js/schemas.json +1 -1
- package/dist/js/scripts/compileTs.js +1 -1
- package/dist/js/scripts/setSchemaIds.js +1 -1
- package/dist/js/types.d.ts +1275 -5
- package/dist/js/types.js +5 -5
- package/dist/js/utils/ajv.js +4 -5
- package/dist/js/utils/common.js +2 -3
- package/dist/js/utils/filesystem.js +2 -3
- package/example/apse/file/applications/espresso/7.2/pw.x.json +5 -5
- package/package.json +14 -14
- package/schema/apse/file/applications/espresso/7.2/pw.x.json +5 -5
- package/schema/materials_category/defective_structures/three-dimensional/solid_solution/configuration.json +59 -0
- package/schema/materials_category/manifest.yaml +3 -1
package/dist/js/types.d.ts
CHANGED
|
@@ -2326,7 +2326,7 @@ export type SystemSchema = ({
|
|
|
2326
2326
|
};
|
|
2327
2327
|
/** Schema dist/js/schema/apse/file/applications/espresso/7.2/pw.x.json */
|
|
2328
2328
|
export interface PwxMainSchema {
|
|
2329
|
-
|
|
2329
|
+
CONTROL?: {
|
|
2330
2330
|
/**
|
|
2331
2331
|
* A string describing the task to be performed
|
|
2332
2332
|
*/
|
|
@@ -2445,7 +2445,7 @@ export interface PwxMainSchema {
|
|
|
2445
2445
|
*/
|
|
2446
2446
|
trism?: boolean;
|
|
2447
2447
|
};
|
|
2448
|
-
|
|
2448
|
+
SYSTEM?: {
|
|
2449
2449
|
/**
|
|
2450
2450
|
* @minItems 6
|
|
2451
2451
|
* @maxItems 6
|
|
@@ -2459,7 +2459,7 @@ export interface PwxMainSchema {
|
|
|
2459
2459
|
cosAC?: number;
|
|
2460
2460
|
cosBC?: number;
|
|
2461
2461
|
};
|
|
2462
|
-
|
|
2462
|
+
ELECTRONS?: {
|
|
2463
2463
|
/**
|
|
2464
2464
|
* maximum number of iterations in a scf step. If exact exchange is active, this will affect the inner loops.
|
|
2465
2465
|
*/
|
|
@@ -2552,7 +2552,7 @@ export interface PwxMainSchema {
|
|
|
2552
2552
|
*/
|
|
2553
2553
|
real_space?: boolean;
|
|
2554
2554
|
};
|
|
2555
|
-
|
|
2555
|
+
IONS?: ({
|
|
2556
2556
|
/**
|
|
2557
2557
|
* CASE: calculation == 'relax'
|
|
2558
2558
|
*/
|
|
@@ -2573,7 +2573,7 @@ export interface PwxMainSchema {
|
|
|
2573
2573
|
*/
|
|
2574
2574
|
ion_dynamics?: "beeman";
|
|
2575
2575
|
}) | null;
|
|
2576
|
-
|
|
2576
|
+
CELL?: ({
|
|
2577
2577
|
/**
|
|
2578
2578
|
* CASE ( calculation == 'vc-relax' )
|
|
2579
2579
|
*/
|
|
@@ -17858,6 +17858,1276 @@ export interface GrainBoundaryLinearConfigurationSchema {
|
|
|
17858
17858
|
id: number;
|
|
17859
17859
|
}[];
|
|
17860
17860
|
}
|
|
17861
|
+
/** Schema dist/js/schema/materials_category/defective_structures/three_dimensional/solid_solution/configuration.json */
|
|
17862
|
+
/**
|
|
17863
|
+
* Configuration for a solid solution: a crystal with partial element substitution, using merge operation.
|
|
17864
|
+
*/
|
|
17865
|
+
export interface SolidSolutionConfigurationSchema {
|
|
17866
|
+
/**
|
|
17867
|
+
* A crystal structure, referencing the base material schema
|
|
17868
|
+
*/
|
|
17869
|
+
crystal: {
|
|
17870
|
+
/**
|
|
17871
|
+
* entity identity
|
|
17872
|
+
*/
|
|
17873
|
+
_id?: string;
|
|
17874
|
+
/**
|
|
17875
|
+
* entity slug
|
|
17876
|
+
*/
|
|
17877
|
+
slug?: string;
|
|
17878
|
+
systemName?: string;
|
|
17879
|
+
/**
|
|
17880
|
+
* entity's schema version. Used to distinct between different schemas.
|
|
17881
|
+
*/
|
|
17882
|
+
schemaVersion?: string;
|
|
17883
|
+
/**
|
|
17884
|
+
* entity name
|
|
17885
|
+
*/
|
|
17886
|
+
name: string;
|
|
17887
|
+
/**
|
|
17888
|
+
* Identifies that entity is defaultable
|
|
17889
|
+
*/
|
|
17890
|
+
isDefault?: boolean;
|
|
17891
|
+
/**
|
|
17892
|
+
* reduced chemical formula
|
|
17893
|
+
*/
|
|
17894
|
+
formula?: string;
|
|
17895
|
+
/**
|
|
17896
|
+
* chemical formula based on the number of atoms of each element in the supercell
|
|
17897
|
+
*/
|
|
17898
|
+
unitCellFormula?: string;
|
|
17899
|
+
basis: {
|
|
17900
|
+
/**
|
|
17901
|
+
* atomic elements schema
|
|
17902
|
+
*/
|
|
17903
|
+
elements: {
|
|
17904
|
+
/**
|
|
17905
|
+
* All elements, including extra elements
|
|
17906
|
+
*/
|
|
17907
|
+
value: (("H" | "He" | "Li" | "Be" | "B" | "C" | "N" | "O" | "F" | "Ne" | "Na" | "Mg" | "Al" | "Si" | "P" | "S" | "Cl" | "Ar" | "K" | "Ca" | "Sc" | "Ti" | "V" | "Cr" | "Mn" | "Fe" | "Co" | "Ni" | "Cu" | "Zn" | "Ga" | "Ge" | "As" | "Se" | "Br" | "Kr" | "Rb" | "Sr" | "Y" | "Zr" | "Nb" | "Mo" | "Tc" | "Ru" | "Rh" | "Pd" | "Ag" | "Cd" | "In" | "Sn" | "Sb" | "Te" | "I" | "Xe" | "Cs" | "Ba" | "La" | "Ce" | "Pr" | "Nd" | "Pm" | "Sm" | "Eu" | "Gd" | "Tb" | "Dy" | "Ho" | "Er" | "Tm" | "Yb" | "Lu" | "Hf" | "Ta" | "W" | "Re" | "Os" | "Ir" | "Pt" | "Au" | "Hg" | "Tl" | "Pb" | "Bi" | "Po" | "At" | "Rn" | "Fr" | "Ra" | "Ac" | "Th" | "Pa" | "U" | "Np" | "Pu" | "Am" | "Cm" | "Bk" | "Cf" | "Es" | "Fm" | "Md" | "No" | "Lr" | "Rf" | "Db" | "Sg" | "Bh" | "Hs" | "Mt" | "Ds" | "Rg" | "Cn" | "Nh" | "Fl" | "Mc" | "Lv" | "Ts" | "Og") | ("X" | "Vac")) & string;
|
|
17908
|
+
/**
|
|
17909
|
+
* integer id of this entry
|
|
17910
|
+
*/
|
|
17911
|
+
id: number;
|
|
17912
|
+
}[];
|
|
17913
|
+
/**
|
|
17914
|
+
* atomic coordinates schema
|
|
17915
|
+
*/
|
|
17916
|
+
coordinates: {
|
|
17917
|
+
/**
|
|
17918
|
+
* value of this entry
|
|
17919
|
+
*
|
|
17920
|
+
* @minItems 3
|
|
17921
|
+
* @maxItems 3
|
|
17922
|
+
*/
|
|
17923
|
+
value: [number, number, number];
|
|
17924
|
+
/**
|
|
17925
|
+
* integer id of this entry
|
|
17926
|
+
*/
|
|
17927
|
+
id: number;
|
|
17928
|
+
}[];
|
|
17929
|
+
units?: "crystal" | "cartesian";
|
|
17930
|
+
/**
|
|
17931
|
+
* atomic labels schema
|
|
17932
|
+
*/
|
|
17933
|
+
labels?: {
|
|
17934
|
+
/**
|
|
17935
|
+
* value of this entry
|
|
17936
|
+
*/
|
|
17937
|
+
value: (number | string) | number;
|
|
17938
|
+
/**
|
|
17939
|
+
* integer id of this entry
|
|
17940
|
+
*/
|
|
17941
|
+
id: number;
|
|
17942
|
+
}[];
|
|
17943
|
+
};
|
|
17944
|
+
lattice: {
|
|
17945
|
+
/**
|
|
17946
|
+
* length of the first lattice vector
|
|
17947
|
+
*/
|
|
17948
|
+
a: number;
|
|
17949
|
+
/**
|
|
17950
|
+
* length of the second lattice vector
|
|
17951
|
+
*/
|
|
17952
|
+
b: number;
|
|
17953
|
+
/**
|
|
17954
|
+
* length of the third lattice vector
|
|
17955
|
+
*/
|
|
17956
|
+
c: number;
|
|
17957
|
+
/**
|
|
17958
|
+
* angle between first and second lattice vector
|
|
17959
|
+
*/
|
|
17960
|
+
alpha: number;
|
|
17961
|
+
/**
|
|
17962
|
+
* angle between second and third lattice vector
|
|
17963
|
+
*/
|
|
17964
|
+
beta: number;
|
|
17965
|
+
/**
|
|
17966
|
+
* angle between first and third lattice vector
|
|
17967
|
+
*/
|
|
17968
|
+
gamma: number;
|
|
17969
|
+
vectors?: {
|
|
17970
|
+
/**
|
|
17971
|
+
* @minItems 3
|
|
17972
|
+
* @maxItems 3
|
|
17973
|
+
*/
|
|
17974
|
+
a: [number, number, number];
|
|
17975
|
+
/**
|
|
17976
|
+
* @minItems 3
|
|
17977
|
+
* @maxItems 3
|
|
17978
|
+
*/
|
|
17979
|
+
b: [number, number, number];
|
|
17980
|
+
/**
|
|
17981
|
+
* @minItems 3
|
|
17982
|
+
* @maxItems 3
|
|
17983
|
+
*/
|
|
17984
|
+
c: [number, number, number];
|
|
17985
|
+
/**
|
|
17986
|
+
* lattice parameter for fractional coordinates
|
|
17987
|
+
*/
|
|
17988
|
+
alat?: number;
|
|
17989
|
+
units?: "angstrom" | "bohr";
|
|
17990
|
+
};
|
|
17991
|
+
type?: "CUB" | "BCC" | "FCC" | "TET" | "MCL" | "ORC" | "ORCC" | "ORCF" | "ORCI" | "HEX" | "BCT" | "TRI" | "MCLC" | "RHL";
|
|
17992
|
+
units?: {
|
|
17993
|
+
length?: "angstrom" | "bohr";
|
|
17994
|
+
angle?: "degree" | "radian";
|
|
17995
|
+
};
|
|
17996
|
+
};
|
|
17997
|
+
derivedProperties?: ({
|
|
17998
|
+
name?: "volume";
|
|
17999
|
+
units?: "angstrom^3";
|
|
18000
|
+
value: number;
|
|
18001
|
+
} | {
|
|
18002
|
+
name?: "density";
|
|
18003
|
+
units?: "g/cm^3";
|
|
18004
|
+
value: number;
|
|
18005
|
+
} | {
|
|
18006
|
+
/**
|
|
18007
|
+
* point group symbol in Schoenflies notation
|
|
18008
|
+
*/
|
|
18009
|
+
pointGroupSymbol?: string;
|
|
18010
|
+
/**
|
|
18011
|
+
* space group symbol in Hermann–Mauguin notation
|
|
18012
|
+
*/
|
|
18013
|
+
spaceGroupSymbol?: string;
|
|
18014
|
+
/**
|
|
18015
|
+
* tolerance used for symmetry calculation
|
|
18016
|
+
*/
|
|
18017
|
+
tolerance?: {
|
|
18018
|
+
units?: "angstrom";
|
|
18019
|
+
value: number;
|
|
18020
|
+
};
|
|
18021
|
+
name?: "symmetry";
|
|
18022
|
+
} | {
|
|
18023
|
+
name?: "elemental_ratio";
|
|
18024
|
+
value: number;
|
|
18025
|
+
/**
|
|
18026
|
+
* the element this ratio is for
|
|
18027
|
+
*/
|
|
18028
|
+
element?: string;
|
|
18029
|
+
} | {
|
|
18030
|
+
name?: "p-norm";
|
|
18031
|
+
/**
|
|
18032
|
+
* degree of the dimensionality of the norm
|
|
18033
|
+
*/
|
|
18034
|
+
degree?: number;
|
|
18035
|
+
value: number;
|
|
18036
|
+
} | {
|
|
18037
|
+
name?: "inchi";
|
|
18038
|
+
value: string;
|
|
18039
|
+
} | {
|
|
18040
|
+
name?: "inchi_key";
|
|
18041
|
+
value: string;
|
|
18042
|
+
})[];
|
|
18043
|
+
/**
|
|
18044
|
+
* information about a database source
|
|
18045
|
+
*/
|
|
18046
|
+
external?: {
|
|
18047
|
+
/**
|
|
18048
|
+
* ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32
|
|
18049
|
+
*/
|
|
18050
|
+
id: string | number;
|
|
18051
|
+
/**
|
|
18052
|
+
* Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.
|
|
18053
|
+
*/
|
|
18054
|
+
source: "MaterialsProject" | "MaterialsProjectLegacy" | "ICSD" | "2dmatpedia" | "MaterialsVirtualLab";
|
|
18055
|
+
/**
|
|
18056
|
+
* Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).
|
|
18057
|
+
*/
|
|
18058
|
+
origin: boolean;
|
|
18059
|
+
/**
|
|
18060
|
+
* Original response from external source.
|
|
18061
|
+
*/
|
|
18062
|
+
data?: {};
|
|
18063
|
+
/**
|
|
18064
|
+
* Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506
|
|
18065
|
+
*/
|
|
18066
|
+
doi?: string;
|
|
18067
|
+
/**
|
|
18068
|
+
* The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers
|
|
18069
|
+
*/
|
|
18070
|
+
url?: string;
|
|
18071
|
+
};
|
|
18072
|
+
/**
|
|
18073
|
+
* file source with the information inside
|
|
18074
|
+
*/
|
|
18075
|
+
src?: {
|
|
18076
|
+
/**
|
|
18077
|
+
* file extension
|
|
18078
|
+
*/
|
|
18079
|
+
extension?: string;
|
|
18080
|
+
/**
|
|
18081
|
+
* file name without extension
|
|
18082
|
+
*/
|
|
18083
|
+
filename: string;
|
|
18084
|
+
/**
|
|
18085
|
+
* file content as raw text
|
|
18086
|
+
*/
|
|
18087
|
+
text: string;
|
|
18088
|
+
/**
|
|
18089
|
+
* MD5 hash based on file content
|
|
18090
|
+
*/
|
|
18091
|
+
hash: string;
|
|
18092
|
+
};
|
|
18093
|
+
/**
|
|
18094
|
+
* Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).
|
|
18095
|
+
*/
|
|
18096
|
+
scaledHash?: string;
|
|
18097
|
+
/**
|
|
18098
|
+
* Corresponding ICSD id of the material
|
|
18099
|
+
*/
|
|
18100
|
+
icsdId?: number;
|
|
18101
|
+
/**
|
|
18102
|
+
* Whether to work in the finite molecular picture (usually with atomic orbital basis)
|
|
18103
|
+
*/
|
|
18104
|
+
isNonPeriodic?: boolean;
|
|
18105
|
+
consistencyChecks?: {
|
|
18106
|
+
/**
|
|
18107
|
+
* Name of the consistency check that is performed, which is listed in an enum.
|
|
18108
|
+
*/
|
|
18109
|
+
name: "default" | "atomsTooClose" | "atomsOverlap";
|
|
18110
|
+
/**
|
|
18111
|
+
* Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'
|
|
18112
|
+
*/
|
|
18113
|
+
key: string;
|
|
18114
|
+
/**
|
|
18115
|
+
* Severity level of the problem, which is used in UI to differentiate.
|
|
18116
|
+
*/
|
|
18117
|
+
severity: "info" | "warning" | "error";
|
|
18118
|
+
/**
|
|
18119
|
+
* Message generated by the consistency check describing the problem.
|
|
18120
|
+
*/
|
|
18121
|
+
message: string;
|
|
18122
|
+
}[];
|
|
18123
|
+
metadata: {
|
|
18124
|
+
boundaryConditions?: {
|
|
18125
|
+
/**
|
|
18126
|
+
* If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab.
|
|
18127
|
+
*/
|
|
18128
|
+
type: "pbc" | "bc1" | "bc2" | "bc3";
|
|
18129
|
+
offset: number;
|
|
18130
|
+
};
|
|
18131
|
+
[k: string]: unknown;
|
|
18132
|
+
} | {
|
|
18133
|
+
/**
|
|
18134
|
+
* Whether the material was created as a surface slab
|
|
18135
|
+
*/
|
|
18136
|
+
isSlab?: boolean;
|
|
18137
|
+
/**
|
|
18138
|
+
* Miller index h used to generate the slab
|
|
18139
|
+
*/
|
|
18140
|
+
h?: number;
|
|
18141
|
+
/**
|
|
18142
|
+
* Miller index k used to generate the slab
|
|
18143
|
+
*/
|
|
18144
|
+
k?: number;
|
|
18145
|
+
/**
|
|
18146
|
+
* Miller index l used to generate the slab
|
|
18147
|
+
*/
|
|
18148
|
+
l?: number;
|
|
18149
|
+
/**
|
|
18150
|
+
* Slab thickness in number of layers
|
|
18151
|
+
*/
|
|
18152
|
+
thickness?: number;
|
|
18153
|
+
/**
|
|
18154
|
+
* Vacuum fraction used when scaling the out-of-plane lattice vector
|
|
18155
|
+
*/
|
|
18156
|
+
vacuumRatio?: number;
|
|
18157
|
+
/**
|
|
18158
|
+
* Termination vector component along a
|
|
18159
|
+
*/
|
|
18160
|
+
vx?: number;
|
|
18161
|
+
/**
|
|
18162
|
+
* Termination vector component along b
|
|
18163
|
+
*/
|
|
18164
|
+
vy?: number;
|
|
18165
|
+
[k: string]: unknown;
|
|
18166
|
+
} | {
|
|
18167
|
+
/**
|
|
18168
|
+
* Source bulk material id used to generate the slab
|
|
18169
|
+
*/
|
|
18170
|
+
bulkId?: string;
|
|
18171
|
+
[k: string]: unknown;
|
|
18172
|
+
};
|
|
18173
|
+
};
|
|
18174
|
+
/**
|
|
18175
|
+
* Element to partially replace (e.g. Hf).
|
|
18176
|
+
*/
|
|
18177
|
+
source_element: string;
|
|
18178
|
+
/**
|
|
18179
|
+
* Replacement element (e.g. Zr).
|
|
18180
|
+
*/
|
|
18181
|
+
target_element: string;
|
|
18182
|
+
/**
|
|
18183
|
+
* Requested fraction of source element sites to replace (0.0-1.0).
|
|
18184
|
+
*/
|
|
18185
|
+
target_concentration: number;
|
|
18186
|
+
/**
|
|
18187
|
+
* Achievable fraction after supercell discretization and site rounding (0.0-1.0).
|
|
18188
|
+
*/
|
|
18189
|
+
actual_concentration: number;
|
|
18190
|
+
merge_components: [] | [
|
|
18191
|
+
{
|
|
18192
|
+
/**
|
|
18193
|
+
* entity identity
|
|
18194
|
+
*/
|
|
18195
|
+
_id?: string;
|
|
18196
|
+
/**
|
|
18197
|
+
* entity slug
|
|
18198
|
+
*/
|
|
18199
|
+
slug?: string;
|
|
18200
|
+
systemName?: string;
|
|
18201
|
+
/**
|
|
18202
|
+
* entity's schema version. Used to distinct between different schemas.
|
|
18203
|
+
*/
|
|
18204
|
+
schemaVersion?: string;
|
|
18205
|
+
/**
|
|
18206
|
+
* entity name
|
|
18207
|
+
*/
|
|
18208
|
+
name: string;
|
|
18209
|
+
/**
|
|
18210
|
+
* Identifies that entity is defaultable
|
|
18211
|
+
*/
|
|
18212
|
+
isDefault?: boolean;
|
|
18213
|
+
/**
|
|
18214
|
+
* reduced chemical formula
|
|
18215
|
+
*/
|
|
18216
|
+
formula?: string;
|
|
18217
|
+
/**
|
|
18218
|
+
* chemical formula based on the number of atoms of each element in the supercell
|
|
18219
|
+
*/
|
|
18220
|
+
unitCellFormula?: string;
|
|
18221
|
+
basis: {
|
|
18222
|
+
/**
|
|
18223
|
+
* atomic elements schema
|
|
18224
|
+
*/
|
|
18225
|
+
elements: {
|
|
18226
|
+
/**
|
|
18227
|
+
* All elements, including extra elements
|
|
18228
|
+
*/
|
|
18229
|
+
value: (("H" | "He" | "Li" | "Be" | "B" | "C" | "N" | "O" | "F" | "Ne" | "Na" | "Mg" | "Al" | "Si" | "P" | "S" | "Cl" | "Ar" | "K" | "Ca" | "Sc" | "Ti" | "V" | "Cr" | "Mn" | "Fe" | "Co" | "Ni" | "Cu" | "Zn" | "Ga" | "Ge" | "As" | "Se" | "Br" | "Kr" | "Rb" | "Sr" | "Y" | "Zr" | "Nb" | "Mo" | "Tc" | "Ru" | "Rh" | "Pd" | "Ag" | "Cd" | "In" | "Sn" | "Sb" | "Te" | "I" | "Xe" | "Cs" | "Ba" | "La" | "Ce" | "Pr" | "Nd" | "Pm" | "Sm" | "Eu" | "Gd" | "Tb" | "Dy" | "Ho" | "Er" | "Tm" | "Yb" | "Lu" | "Hf" | "Ta" | "W" | "Re" | "Os" | "Ir" | "Pt" | "Au" | "Hg" | "Tl" | "Pb" | "Bi" | "Po" | "At" | "Rn" | "Fr" | "Ra" | "Ac" | "Th" | "Pa" | "U" | "Np" | "Pu" | "Am" | "Cm" | "Bk" | "Cf" | "Es" | "Fm" | "Md" | "No" | "Lr" | "Rf" | "Db" | "Sg" | "Bh" | "Hs" | "Mt" | "Ds" | "Rg" | "Cn" | "Nh" | "Fl" | "Mc" | "Lv" | "Ts" | "Og") | ("X" | "Vac")) & string;
|
|
18230
|
+
/**
|
|
18231
|
+
* integer id of this entry
|
|
18232
|
+
*/
|
|
18233
|
+
id: number;
|
|
18234
|
+
}[];
|
|
18235
|
+
/**
|
|
18236
|
+
* atomic coordinates schema
|
|
18237
|
+
*/
|
|
18238
|
+
coordinates: {
|
|
18239
|
+
/**
|
|
18240
|
+
* value of this entry
|
|
18241
|
+
*
|
|
18242
|
+
* @minItems 3
|
|
18243
|
+
* @maxItems 3
|
|
18244
|
+
*/
|
|
18245
|
+
value: [number, number, number];
|
|
18246
|
+
/**
|
|
18247
|
+
* integer id of this entry
|
|
18248
|
+
*/
|
|
18249
|
+
id: number;
|
|
18250
|
+
}[];
|
|
18251
|
+
units?: "crystal" | "cartesian";
|
|
18252
|
+
/**
|
|
18253
|
+
* atomic labels schema
|
|
18254
|
+
*/
|
|
18255
|
+
labels?: {
|
|
18256
|
+
/**
|
|
18257
|
+
* value of this entry
|
|
18258
|
+
*/
|
|
18259
|
+
value: (number | string | number) | number;
|
|
18260
|
+
/**
|
|
18261
|
+
* integer id of this entry
|
|
18262
|
+
*/
|
|
18263
|
+
id: number;
|
|
18264
|
+
}[];
|
|
18265
|
+
};
|
|
18266
|
+
lattice: {
|
|
18267
|
+
/**
|
|
18268
|
+
* length of the first lattice vector
|
|
18269
|
+
*/
|
|
18270
|
+
a: number;
|
|
18271
|
+
/**
|
|
18272
|
+
* length of the second lattice vector
|
|
18273
|
+
*/
|
|
18274
|
+
b: number;
|
|
18275
|
+
/**
|
|
18276
|
+
* length of the third lattice vector
|
|
18277
|
+
*/
|
|
18278
|
+
c: number;
|
|
18279
|
+
/**
|
|
18280
|
+
* angle between first and second lattice vector
|
|
18281
|
+
*/
|
|
18282
|
+
alpha: number;
|
|
18283
|
+
/**
|
|
18284
|
+
* angle between second and third lattice vector
|
|
18285
|
+
*/
|
|
18286
|
+
beta: number;
|
|
18287
|
+
/**
|
|
18288
|
+
* angle between first and third lattice vector
|
|
18289
|
+
*/
|
|
18290
|
+
gamma: number;
|
|
18291
|
+
vectors?: {
|
|
18292
|
+
/**
|
|
18293
|
+
* @minItems 3
|
|
18294
|
+
* @maxItems 3
|
|
18295
|
+
*/
|
|
18296
|
+
a: [number, number, number];
|
|
18297
|
+
/**
|
|
18298
|
+
* @minItems 3
|
|
18299
|
+
* @maxItems 3
|
|
18300
|
+
*/
|
|
18301
|
+
b: [number, number, number];
|
|
18302
|
+
/**
|
|
18303
|
+
* @minItems 3
|
|
18304
|
+
* @maxItems 3
|
|
18305
|
+
*/
|
|
18306
|
+
c: [number, number, number];
|
|
18307
|
+
/**
|
|
18308
|
+
* lattice parameter for fractional coordinates
|
|
18309
|
+
*/
|
|
18310
|
+
alat?: number;
|
|
18311
|
+
units?: "angstrom" | "bohr";
|
|
18312
|
+
};
|
|
18313
|
+
type?: "CUB" | "BCC" | "FCC" | "TET" | "MCL" | "ORC" | "ORCC" | "ORCF" | "ORCI" | "HEX" | "BCT" | "TRI" | "MCLC" | "RHL";
|
|
18314
|
+
units?: {
|
|
18315
|
+
length?: "angstrom" | "bohr";
|
|
18316
|
+
angle?: "degree" | "radian";
|
|
18317
|
+
};
|
|
18318
|
+
};
|
|
18319
|
+
derivedProperties?: ({
|
|
18320
|
+
name?: "volume";
|
|
18321
|
+
units?: "angstrom^3";
|
|
18322
|
+
value: number;
|
|
18323
|
+
} | {
|
|
18324
|
+
name?: "density";
|
|
18325
|
+
units?: "g/cm^3";
|
|
18326
|
+
value: number;
|
|
18327
|
+
} | {
|
|
18328
|
+
/**
|
|
18329
|
+
* point group symbol in Schoenflies notation
|
|
18330
|
+
*/
|
|
18331
|
+
pointGroupSymbol?: string;
|
|
18332
|
+
/**
|
|
18333
|
+
* space group symbol in Hermann–Mauguin notation
|
|
18334
|
+
*/
|
|
18335
|
+
spaceGroupSymbol?: string;
|
|
18336
|
+
/**
|
|
18337
|
+
* tolerance used for symmetry calculation
|
|
18338
|
+
*/
|
|
18339
|
+
tolerance?: {
|
|
18340
|
+
units?: "angstrom";
|
|
18341
|
+
value: number;
|
|
18342
|
+
};
|
|
18343
|
+
name?: "symmetry";
|
|
18344
|
+
} | {
|
|
18345
|
+
name?: "elemental_ratio";
|
|
18346
|
+
value: number;
|
|
18347
|
+
/**
|
|
18348
|
+
* the element this ratio is for
|
|
18349
|
+
*/
|
|
18350
|
+
element?: string;
|
|
18351
|
+
} | {
|
|
18352
|
+
name?: "p-norm";
|
|
18353
|
+
/**
|
|
18354
|
+
* degree of the dimensionality of the norm
|
|
18355
|
+
*/
|
|
18356
|
+
degree?: number;
|
|
18357
|
+
value: number;
|
|
18358
|
+
} | {
|
|
18359
|
+
name?: "inchi";
|
|
18360
|
+
value: string;
|
|
18361
|
+
} | {
|
|
18362
|
+
name?: "inchi_key";
|
|
18363
|
+
value: string;
|
|
18364
|
+
})[];
|
|
18365
|
+
/**
|
|
18366
|
+
* information about a database source
|
|
18367
|
+
*/
|
|
18368
|
+
external?: {
|
|
18369
|
+
/**
|
|
18370
|
+
* ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32
|
|
18371
|
+
*/
|
|
18372
|
+
id: string | number;
|
|
18373
|
+
/**
|
|
18374
|
+
* Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.
|
|
18375
|
+
*/
|
|
18376
|
+
source: "MaterialsProject" | "MaterialsProjectLegacy" | "ICSD" | "2dmatpedia" | "MaterialsVirtualLab";
|
|
18377
|
+
/**
|
|
18378
|
+
* Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).
|
|
18379
|
+
*/
|
|
18380
|
+
origin: boolean;
|
|
18381
|
+
/**
|
|
18382
|
+
* Original response from external source.
|
|
18383
|
+
*/
|
|
18384
|
+
data?: {};
|
|
18385
|
+
/**
|
|
18386
|
+
* Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506
|
|
18387
|
+
*/
|
|
18388
|
+
doi?: string;
|
|
18389
|
+
/**
|
|
18390
|
+
* The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers
|
|
18391
|
+
*/
|
|
18392
|
+
url?: string;
|
|
18393
|
+
};
|
|
18394
|
+
/**
|
|
18395
|
+
* file source with the information inside
|
|
18396
|
+
*/
|
|
18397
|
+
src?: {
|
|
18398
|
+
/**
|
|
18399
|
+
* file extension
|
|
18400
|
+
*/
|
|
18401
|
+
extension?: string;
|
|
18402
|
+
/**
|
|
18403
|
+
* file name without extension
|
|
18404
|
+
*/
|
|
18405
|
+
filename: string;
|
|
18406
|
+
/**
|
|
18407
|
+
* file content as raw text
|
|
18408
|
+
*/
|
|
18409
|
+
text: string;
|
|
18410
|
+
/**
|
|
18411
|
+
* MD5 hash based on file content
|
|
18412
|
+
*/
|
|
18413
|
+
hash: string;
|
|
18414
|
+
};
|
|
18415
|
+
/**
|
|
18416
|
+
* Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).
|
|
18417
|
+
*/
|
|
18418
|
+
scaledHash?: string;
|
|
18419
|
+
/**
|
|
18420
|
+
* Corresponding ICSD id of the material
|
|
18421
|
+
*/
|
|
18422
|
+
icsdId?: number;
|
|
18423
|
+
/**
|
|
18424
|
+
* Whether to work in the finite molecular picture (usually with atomic orbital basis)
|
|
18425
|
+
*/
|
|
18426
|
+
isNonPeriodic?: boolean;
|
|
18427
|
+
consistencyChecks?: {
|
|
18428
|
+
/**
|
|
18429
|
+
* Name of the consistency check that is performed, which is listed in an enum.
|
|
18430
|
+
*/
|
|
18431
|
+
name: "default" | "atomsTooClose" | "atomsOverlap";
|
|
18432
|
+
/**
|
|
18433
|
+
* Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'
|
|
18434
|
+
*/
|
|
18435
|
+
key: string;
|
|
18436
|
+
/**
|
|
18437
|
+
* Severity level of the problem, which is used in UI to differentiate.
|
|
18438
|
+
*/
|
|
18439
|
+
severity: "info" | "warning" | "error";
|
|
18440
|
+
/**
|
|
18441
|
+
* Message generated by the consistency check describing the problem.
|
|
18442
|
+
*/
|
|
18443
|
+
message: string;
|
|
18444
|
+
}[];
|
|
18445
|
+
metadata: {
|
|
18446
|
+
boundaryConditions?: {
|
|
18447
|
+
/**
|
|
18448
|
+
* If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab.
|
|
18449
|
+
*/
|
|
18450
|
+
type: "pbc" | "bc1" | "bc2" | "bc3";
|
|
18451
|
+
offset: number;
|
|
18452
|
+
};
|
|
18453
|
+
[k: string]: unknown;
|
|
18454
|
+
} | {
|
|
18455
|
+
/**
|
|
18456
|
+
* Whether the material was created as a surface slab
|
|
18457
|
+
*/
|
|
18458
|
+
isSlab?: boolean;
|
|
18459
|
+
/**
|
|
18460
|
+
* Miller index h used to generate the slab
|
|
18461
|
+
*/
|
|
18462
|
+
h?: number;
|
|
18463
|
+
/**
|
|
18464
|
+
* Miller index k used to generate the slab
|
|
18465
|
+
*/
|
|
18466
|
+
k?: number;
|
|
18467
|
+
/**
|
|
18468
|
+
* Miller index l used to generate the slab
|
|
18469
|
+
*/
|
|
18470
|
+
l?: number;
|
|
18471
|
+
/**
|
|
18472
|
+
* Slab thickness in number of layers
|
|
18473
|
+
*/
|
|
18474
|
+
thickness?: number;
|
|
18475
|
+
/**
|
|
18476
|
+
* Vacuum fraction used when scaling the out-of-plane lattice vector
|
|
18477
|
+
*/
|
|
18478
|
+
vacuumRatio?: number;
|
|
18479
|
+
/**
|
|
18480
|
+
* Termination vector component along a
|
|
18481
|
+
*/
|
|
18482
|
+
vx?: number;
|
|
18483
|
+
/**
|
|
18484
|
+
* Termination vector component along b
|
|
18485
|
+
*/
|
|
18486
|
+
vy?: number;
|
|
18487
|
+
[k: string]: unknown;
|
|
18488
|
+
} | {
|
|
18489
|
+
/**
|
|
18490
|
+
* Source bulk material id used to generate the slab
|
|
18491
|
+
*/
|
|
18492
|
+
bulkId?: string;
|
|
18493
|
+
[k: string]: unknown;
|
|
18494
|
+
};
|
|
18495
|
+
}
|
|
18496
|
+
] | [
|
|
18497
|
+
{
|
|
18498
|
+
/**
|
|
18499
|
+
* entity identity
|
|
18500
|
+
*/
|
|
18501
|
+
_id?: string;
|
|
18502
|
+
/**
|
|
18503
|
+
* entity slug
|
|
18504
|
+
*/
|
|
18505
|
+
slug?: string;
|
|
18506
|
+
systemName?: string;
|
|
18507
|
+
/**
|
|
18508
|
+
* entity's schema version. Used to distinct between different schemas.
|
|
18509
|
+
*/
|
|
18510
|
+
schemaVersion?: string;
|
|
18511
|
+
/**
|
|
18512
|
+
* entity name
|
|
18513
|
+
*/
|
|
18514
|
+
name: string;
|
|
18515
|
+
/**
|
|
18516
|
+
* Identifies that entity is defaultable
|
|
18517
|
+
*/
|
|
18518
|
+
isDefault?: boolean;
|
|
18519
|
+
/**
|
|
18520
|
+
* reduced chemical formula
|
|
18521
|
+
*/
|
|
18522
|
+
formula?: string;
|
|
18523
|
+
/**
|
|
18524
|
+
* chemical formula based on the number of atoms of each element in the supercell
|
|
18525
|
+
*/
|
|
18526
|
+
unitCellFormula?: string;
|
|
18527
|
+
basis: {
|
|
18528
|
+
/**
|
|
18529
|
+
* atomic elements schema
|
|
18530
|
+
*/
|
|
18531
|
+
elements: {
|
|
18532
|
+
/**
|
|
18533
|
+
* All elements, including extra elements
|
|
18534
|
+
*/
|
|
18535
|
+
value: (("H" | "He" | "Li" | "Be" | "B" | "C" | "N" | "O" | "F" | "Ne" | "Na" | "Mg" | "Al" | "Si" | "P" | "S" | "Cl" | "Ar" | "K" | "Ca" | "Sc" | "Ti" | "V" | "Cr" | "Mn" | "Fe" | "Co" | "Ni" | "Cu" | "Zn" | "Ga" | "Ge" | "As" | "Se" | "Br" | "Kr" | "Rb" | "Sr" | "Y" | "Zr" | "Nb" | "Mo" | "Tc" | "Ru" | "Rh" | "Pd" | "Ag" | "Cd" | "In" | "Sn" | "Sb" | "Te" | "I" | "Xe" | "Cs" | "Ba" | "La" | "Ce" | "Pr" | "Nd" | "Pm" | "Sm" | "Eu" | "Gd" | "Tb" | "Dy" | "Ho" | "Er" | "Tm" | "Yb" | "Lu" | "Hf" | "Ta" | "W" | "Re" | "Os" | "Ir" | "Pt" | "Au" | "Hg" | "Tl" | "Pb" | "Bi" | "Po" | "At" | "Rn" | "Fr" | "Ra" | "Ac" | "Th" | "Pa" | "U" | "Np" | "Pu" | "Am" | "Cm" | "Bk" | "Cf" | "Es" | "Fm" | "Md" | "No" | "Lr" | "Rf" | "Db" | "Sg" | "Bh" | "Hs" | "Mt" | "Ds" | "Rg" | "Cn" | "Nh" | "Fl" | "Mc" | "Lv" | "Ts" | "Og") | ("X" | "Vac")) & string;
|
|
18536
|
+
/**
|
|
18537
|
+
* integer id of this entry
|
|
18538
|
+
*/
|
|
18539
|
+
id: number;
|
|
18540
|
+
}[];
|
|
18541
|
+
/**
|
|
18542
|
+
* atomic coordinates schema
|
|
18543
|
+
*/
|
|
18544
|
+
coordinates: {
|
|
18545
|
+
/**
|
|
18546
|
+
* value of this entry
|
|
18547
|
+
*
|
|
18548
|
+
* @minItems 3
|
|
18549
|
+
* @maxItems 3
|
|
18550
|
+
*/
|
|
18551
|
+
value: [number, number, number];
|
|
18552
|
+
/**
|
|
18553
|
+
* integer id of this entry
|
|
18554
|
+
*/
|
|
18555
|
+
id: number;
|
|
18556
|
+
}[];
|
|
18557
|
+
units?: "crystal" | "cartesian";
|
|
18558
|
+
/**
|
|
18559
|
+
* atomic labels schema
|
|
18560
|
+
*/
|
|
18561
|
+
labels?: {
|
|
18562
|
+
/**
|
|
18563
|
+
* value of this entry
|
|
18564
|
+
*/
|
|
18565
|
+
value: (number | string | number) | number;
|
|
18566
|
+
/**
|
|
18567
|
+
* integer id of this entry
|
|
18568
|
+
*/
|
|
18569
|
+
id: number;
|
|
18570
|
+
}[];
|
|
18571
|
+
};
|
|
18572
|
+
lattice: {
|
|
18573
|
+
/**
|
|
18574
|
+
* length of the first lattice vector
|
|
18575
|
+
*/
|
|
18576
|
+
a: number;
|
|
18577
|
+
/**
|
|
18578
|
+
* length of the second lattice vector
|
|
18579
|
+
*/
|
|
18580
|
+
b: number;
|
|
18581
|
+
/**
|
|
18582
|
+
* length of the third lattice vector
|
|
18583
|
+
*/
|
|
18584
|
+
c: number;
|
|
18585
|
+
/**
|
|
18586
|
+
* angle between first and second lattice vector
|
|
18587
|
+
*/
|
|
18588
|
+
alpha: number;
|
|
18589
|
+
/**
|
|
18590
|
+
* angle between second and third lattice vector
|
|
18591
|
+
*/
|
|
18592
|
+
beta: number;
|
|
18593
|
+
/**
|
|
18594
|
+
* angle between first and third lattice vector
|
|
18595
|
+
*/
|
|
18596
|
+
gamma: number;
|
|
18597
|
+
vectors?: {
|
|
18598
|
+
/**
|
|
18599
|
+
* @minItems 3
|
|
18600
|
+
* @maxItems 3
|
|
18601
|
+
*/
|
|
18602
|
+
a: [number, number, number];
|
|
18603
|
+
/**
|
|
18604
|
+
* @minItems 3
|
|
18605
|
+
* @maxItems 3
|
|
18606
|
+
*/
|
|
18607
|
+
b: [number, number, number];
|
|
18608
|
+
/**
|
|
18609
|
+
* @minItems 3
|
|
18610
|
+
* @maxItems 3
|
|
18611
|
+
*/
|
|
18612
|
+
c: [number, number, number];
|
|
18613
|
+
/**
|
|
18614
|
+
* lattice parameter for fractional coordinates
|
|
18615
|
+
*/
|
|
18616
|
+
alat?: number;
|
|
18617
|
+
units?: "angstrom" | "bohr";
|
|
18618
|
+
};
|
|
18619
|
+
type?: "CUB" | "BCC" | "FCC" | "TET" | "MCL" | "ORC" | "ORCC" | "ORCF" | "ORCI" | "HEX" | "BCT" | "TRI" | "MCLC" | "RHL";
|
|
18620
|
+
units?: {
|
|
18621
|
+
length?: "angstrom" | "bohr";
|
|
18622
|
+
angle?: "degree" | "radian";
|
|
18623
|
+
};
|
|
18624
|
+
};
|
|
18625
|
+
derivedProperties?: ({
|
|
18626
|
+
name?: "volume";
|
|
18627
|
+
units?: "angstrom^3";
|
|
18628
|
+
value: number;
|
|
18629
|
+
} | {
|
|
18630
|
+
name?: "density";
|
|
18631
|
+
units?: "g/cm^3";
|
|
18632
|
+
value: number;
|
|
18633
|
+
} | {
|
|
18634
|
+
/**
|
|
18635
|
+
* point group symbol in Schoenflies notation
|
|
18636
|
+
*/
|
|
18637
|
+
pointGroupSymbol?: string;
|
|
18638
|
+
/**
|
|
18639
|
+
* space group symbol in Hermann–Mauguin notation
|
|
18640
|
+
*/
|
|
18641
|
+
spaceGroupSymbol?: string;
|
|
18642
|
+
/**
|
|
18643
|
+
* tolerance used for symmetry calculation
|
|
18644
|
+
*/
|
|
18645
|
+
tolerance?: {
|
|
18646
|
+
units?: "angstrom";
|
|
18647
|
+
value: number;
|
|
18648
|
+
};
|
|
18649
|
+
name?: "symmetry";
|
|
18650
|
+
} | {
|
|
18651
|
+
name?: "elemental_ratio";
|
|
18652
|
+
value: number;
|
|
18653
|
+
/**
|
|
18654
|
+
* the element this ratio is for
|
|
18655
|
+
*/
|
|
18656
|
+
element?: string;
|
|
18657
|
+
} | {
|
|
18658
|
+
name?: "p-norm";
|
|
18659
|
+
/**
|
|
18660
|
+
* degree of the dimensionality of the norm
|
|
18661
|
+
*/
|
|
18662
|
+
degree?: number;
|
|
18663
|
+
value: number;
|
|
18664
|
+
} | {
|
|
18665
|
+
name?: "inchi";
|
|
18666
|
+
value: string;
|
|
18667
|
+
} | {
|
|
18668
|
+
name?: "inchi_key";
|
|
18669
|
+
value: string;
|
|
18670
|
+
})[];
|
|
18671
|
+
/**
|
|
18672
|
+
* information about a database source
|
|
18673
|
+
*/
|
|
18674
|
+
external?: {
|
|
18675
|
+
/**
|
|
18676
|
+
* ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32
|
|
18677
|
+
*/
|
|
18678
|
+
id: string | number;
|
|
18679
|
+
/**
|
|
18680
|
+
* Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.
|
|
18681
|
+
*/
|
|
18682
|
+
source: "MaterialsProject" | "MaterialsProjectLegacy" | "ICSD" | "2dmatpedia" | "MaterialsVirtualLab";
|
|
18683
|
+
/**
|
|
18684
|
+
* Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).
|
|
18685
|
+
*/
|
|
18686
|
+
origin: boolean;
|
|
18687
|
+
/**
|
|
18688
|
+
* Original response from external source.
|
|
18689
|
+
*/
|
|
18690
|
+
data?: {};
|
|
18691
|
+
/**
|
|
18692
|
+
* Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506
|
|
18693
|
+
*/
|
|
18694
|
+
doi?: string;
|
|
18695
|
+
/**
|
|
18696
|
+
* The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers
|
|
18697
|
+
*/
|
|
18698
|
+
url?: string;
|
|
18699
|
+
};
|
|
18700
|
+
/**
|
|
18701
|
+
* file source with the information inside
|
|
18702
|
+
*/
|
|
18703
|
+
src?: {
|
|
18704
|
+
/**
|
|
18705
|
+
* file extension
|
|
18706
|
+
*/
|
|
18707
|
+
extension?: string;
|
|
18708
|
+
/**
|
|
18709
|
+
* file name without extension
|
|
18710
|
+
*/
|
|
18711
|
+
filename: string;
|
|
18712
|
+
/**
|
|
18713
|
+
* file content as raw text
|
|
18714
|
+
*/
|
|
18715
|
+
text: string;
|
|
18716
|
+
/**
|
|
18717
|
+
* MD5 hash based on file content
|
|
18718
|
+
*/
|
|
18719
|
+
hash: string;
|
|
18720
|
+
};
|
|
18721
|
+
/**
|
|
18722
|
+
* Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).
|
|
18723
|
+
*/
|
|
18724
|
+
scaledHash?: string;
|
|
18725
|
+
/**
|
|
18726
|
+
* Corresponding ICSD id of the material
|
|
18727
|
+
*/
|
|
18728
|
+
icsdId?: number;
|
|
18729
|
+
/**
|
|
18730
|
+
* Whether to work in the finite molecular picture (usually with atomic orbital basis)
|
|
18731
|
+
*/
|
|
18732
|
+
isNonPeriodic?: boolean;
|
|
18733
|
+
consistencyChecks?: {
|
|
18734
|
+
/**
|
|
18735
|
+
* Name of the consistency check that is performed, which is listed in an enum.
|
|
18736
|
+
*/
|
|
18737
|
+
name: "default" | "atomsTooClose" | "atomsOverlap";
|
|
18738
|
+
/**
|
|
18739
|
+
* Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'
|
|
18740
|
+
*/
|
|
18741
|
+
key: string;
|
|
18742
|
+
/**
|
|
18743
|
+
* Severity level of the problem, which is used in UI to differentiate.
|
|
18744
|
+
*/
|
|
18745
|
+
severity: "info" | "warning" | "error";
|
|
18746
|
+
/**
|
|
18747
|
+
* Message generated by the consistency check describing the problem.
|
|
18748
|
+
*/
|
|
18749
|
+
message: string;
|
|
18750
|
+
}[];
|
|
18751
|
+
metadata: {
|
|
18752
|
+
boundaryConditions?: {
|
|
18753
|
+
/**
|
|
18754
|
+
* If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab.
|
|
18755
|
+
*/
|
|
18756
|
+
type: "pbc" | "bc1" | "bc2" | "bc3";
|
|
18757
|
+
offset: number;
|
|
18758
|
+
};
|
|
18759
|
+
[k: string]: unknown;
|
|
18760
|
+
} | {
|
|
18761
|
+
/**
|
|
18762
|
+
* Whether the material was created as a surface slab
|
|
18763
|
+
*/
|
|
18764
|
+
isSlab?: boolean;
|
|
18765
|
+
/**
|
|
18766
|
+
* Miller index h used to generate the slab
|
|
18767
|
+
*/
|
|
18768
|
+
h?: number;
|
|
18769
|
+
/**
|
|
18770
|
+
* Miller index k used to generate the slab
|
|
18771
|
+
*/
|
|
18772
|
+
k?: number;
|
|
18773
|
+
/**
|
|
18774
|
+
* Miller index l used to generate the slab
|
|
18775
|
+
*/
|
|
18776
|
+
l?: number;
|
|
18777
|
+
/**
|
|
18778
|
+
* Slab thickness in number of layers
|
|
18779
|
+
*/
|
|
18780
|
+
thickness?: number;
|
|
18781
|
+
/**
|
|
18782
|
+
* Vacuum fraction used when scaling the out-of-plane lattice vector
|
|
18783
|
+
*/
|
|
18784
|
+
vacuumRatio?: number;
|
|
18785
|
+
/**
|
|
18786
|
+
* Termination vector component along a
|
|
18787
|
+
*/
|
|
18788
|
+
vx?: number;
|
|
18789
|
+
/**
|
|
18790
|
+
* Termination vector component along b
|
|
18791
|
+
*/
|
|
18792
|
+
vy?: number;
|
|
18793
|
+
[k: string]: unknown;
|
|
18794
|
+
} | {
|
|
18795
|
+
/**
|
|
18796
|
+
* Source bulk material id used to generate the slab
|
|
18797
|
+
*/
|
|
18798
|
+
bulkId?: string;
|
|
18799
|
+
[k: string]: unknown;
|
|
18800
|
+
};
|
|
18801
|
+
},
|
|
18802
|
+
{
|
|
18803
|
+
/**
|
|
18804
|
+
* A crystal structure, referencing the base material schema
|
|
18805
|
+
*/
|
|
18806
|
+
crystal: {
|
|
18807
|
+
/**
|
|
18808
|
+
* entity identity
|
|
18809
|
+
*/
|
|
18810
|
+
_id?: string;
|
|
18811
|
+
/**
|
|
18812
|
+
* entity slug
|
|
18813
|
+
*/
|
|
18814
|
+
slug?: string;
|
|
18815
|
+
systemName?: string;
|
|
18816
|
+
/**
|
|
18817
|
+
* entity's schema version. Used to distinct between different schemas.
|
|
18818
|
+
*/
|
|
18819
|
+
schemaVersion?: string;
|
|
18820
|
+
/**
|
|
18821
|
+
* entity name
|
|
18822
|
+
*/
|
|
18823
|
+
name: string;
|
|
18824
|
+
/**
|
|
18825
|
+
* Identifies that entity is defaultable
|
|
18826
|
+
*/
|
|
18827
|
+
isDefault?: boolean;
|
|
18828
|
+
/**
|
|
18829
|
+
* reduced chemical formula
|
|
18830
|
+
*/
|
|
18831
|
+
formula?: string;
|
|
18832
|
+
/**
|
|
18833
|
+
* chemical formula based on the number of atoms of each element in the supercell
|
|
18834
|
+
*/
|
|
18835
|
+
unitCellFormula?: string;
|
|
18836
|
+
basis: {
|
|
18837
|
+
/**
|
|
18838
|
+
* atomic elements schema
|
|
18839
|
+
*/
|
|
18840
|
+
elements: {
|
|
18841
|
+
/**
|
|
18842
|
+
* All elements, including extra elements
|
|
18843
|
+
*/
|
|
18844
|
+
value: (("H" | "He" | "Li" | "Be" | "B" | "C" | "N" | "O" | "F" | "Ne" | "Na" | "Mg" | "Al" | "Si" | "P" | "S" | "Cl" | "Ar" | "K" | "Ca" | "Sc" | "Ti" | "V" | "Cr" | "Mn" | "Fe" | "Co" | "Ni" | "Cu" | "Zn" | "Ga" | "Ge" | "As" | "Se" | "Br" | "Kr" | "Rb" | "Sr" | "Y" | "Zr" | "Nb" | "Mo" | "Tc" | "Ru" | "Rh" | "Pd" | "Ag" | "Cd" | "In" | "Sn" | "Sb" | "Te" | "I" | "Xe" | "Cs" | "Ba" | "La" | "Ce" | "Pr" | "Nd" | "Pm" | "Sm" | "Eu" | "Gd" | "Tb" | "Dy" | "Ho" | "Er" | "Tm" | "Yb" | "Lu" | "Hf" | "Ta" | "W" | "Re" | "Os" | "Ir" | "Pt" | "Au" | "Hg" | "Tl" | "Pb" | "Bi" | "Po" | "At" | "Rn" | "Fr" | "Ra" | "Ac" | "Th" | "Pa" | "U" | "Np" | "Pu" | "Am" | "Cm" | "Bk" | "Cf" | "Es" | "Fm" | "Md" | "No" | "Lr" | "Rf" | "Db" | "Sg" | "Bh" | "Hs" | "Mt" | "Ds" | "Rg" | "Cn" | "Nh" | "Fl" | "Mc" | "Lv" | "Ts" | "Og") | ("X" | "Vac")) & string;
|
|
18845
|
+
/**
|
|
18846
|
+
* integer id of this entry
|
|
18847
|
+
*/
|
|
18848
|
+
id: number;
|
|
18849
|
+
}[];
|
|
18850
|
+
/**
|
|
18851
|
+
* atomic coordinates schema
|
|
18852
|
+
*/
|
|
18853
|
+
coordinates: {
|
|
18854
|
+
/**
|
|
18855
|
+
* value of this entry
|
|
18856
|
+
*
|
|
18857
|
+
* @minItems 3
|
|
18858
|
+
* @maxItems 3
|
|
18859
|
+
*/
|
|
18860
|
+
value: [number, number, number];
|
|
18861
|
+
/**
|
|
18862
|
+
* integer id of this entry
|
|
18863
|
+
*/
|
|
18864
|
+
id: number;
|
|
18865
|
+
}[];
|
|
18866
|
+
units?: "crystal" | "cartesian";
|
|
18867
|
+
/**
|
|
18868
|
+
* atomic labels schema
|
|
18869
|
+
*/
|
|
18870
|
+
labels?: {
|
|
18871
|
+
/**
|
|
18872
|
+
* value of this entry
|
|
18873
|
+
*/
|
|
18874
|
+
value: (number | string | number) | number;
|
|
18875
|
+
/**
|
|
18876
|
+
* integer id of this entry
|
|
18877
|
+
*/
|
|
18878
|
+
id: number;
|
|
18879
|
+
}[];
|
|
18880
|
+
};
|
|
18881
|
+
lattice: {
|
|
18882
|
+
/**
|
|
18883
|
+
* length of the first lattice vector
|
|
18884
|
+
*/
|
|
18885
|
+
a: number;
|
|
18886
|
+
/**
|
|
18887
|
+
* length of the second lattice vector
|
|
18888
|
+
*/
|
|
18889
|
+
b: number;
|
|
18890
|
+
/**
|
|
18891
|
+
* length of the third lattice vector
|
|
18892
|
+
*/
|
|
18893
|
+
c: number;
|
|
18894
|
+
/**
|
|
18895
|
+
* angle between first and second lattice vector
|
|
18896
|
+
*/
|
|
18897
|
+
alpha: number;
|
|
18898
|
+
/**
|
|
18899
|
+
* angle between second and third lattice vector
|
|
18900
|
+
*/
|
|
18901
|
+
beta: number;
|
|
18902
|
+
/**
|
|
18903
|
+
* angle between first and third lattice vector
|
|
18904
|
+
*/
|
|
18905
|
+
gamma: number;
|
|
18906
|
+
vectors?: {
|
|
18907
|
+
/**
|
|
18908
|
+
* @minItems 3
|
|
18909
|
+
* @maxItems 3
|
|
18910
|
+
*/
|
|
18911
|
+
a: [number, number, number];
|
|
18912
|
+
/**
|
|
18913
|
+
* @minItems 3
|
|
18914
|
+
* @maxItems 3
|
|
18915
|
+
*/
|
|
18916
|
+
b: [number, number, number];
|
|
18917
|
+
/**
|
|
18918
|
+
* @minItems 3
|
|
18919
|
+
* @maxItems 3
|
|
18920
|
+
*/
|
|
18921
|
+
c: [number, number, number];
|
|
18922
|
+
/**
|
|
18923
|
+
* lattice parameter for fractional coordinates
|
|
18924
|
+
*/
|
|
18925
|
+
alat?: number;
|
|
18926
|
+
units?: "angstrom" | "bohr";
|
|
18927
|
+
};
|
|
18928
|
+
type?: "CUB" | "BCC" | "FCC" | "TET" | "MCL" | "ORC" | "ORCC" | "ORCF" | "ORCI" | "HEX" | "BCT" | "TRI" | "MCLC" | "RHL";
|
|
18929
|
+
units?: {
|
|
18930
|
+
length?: "angstrom" | "bohr";
|
|
18931
|
+
angle?: "degree" | "radian";
|
|
18932
|
+
};
|
|
18933
|
+
};
|
|
18934
|
+
derivedProperties?: ({
|
|
18935
|
+
name?: "volume";
|
|
18936
|
+
units?: "angstrom^3";
|
|
18937
|
+
value: number;
|
|
18938
|
+
} | {
|
|
18939
|
+
name?: "density";
|
|
18940
|
+
units?: "g/cm^3";
|
|
18941
|
+
value: number;
|
|
18942
|
+
} | {
|
|
18943
|
+
/**
|
|
18944
|
+
* point group symbol in Schoenflies notation
|
|
18945
|
+
*/
|
|
18946
|
+
pointGroupSymbol?: string;
|
|
18947
|
+
/**
|
|
18948
|
+
* space group symbol in Hermann–Mauguin notation
|
|
18949
|
+
*/
|
|
18950
|
+
spaceGroupSymbol?: string;
|
|
18951
|
+
/**
|
|
18952
|
+
* tolerance used for symmetry calculation
|
|
18953
|
+
*/
|
|
18954
|
+
tolerance?: {
|
|
18955
|
+
units?: "angstrom";
|
|
18956
|
+
value: number;
|
|
18957
|
+
};
|
|
18958
|
+
name?: "symmetry";
|
|
18959
|
+
} | {
|
|
18960
|
+
name?: "elemental_ratio";
|
|
18961
|
+
value: number;
|
|
18962
|
+
/**
|
|
18963
|
+
* the element this ratio is for
|
|
18964
|
+
*/
|
|
18965
|
+
element?: string;
|
|
18966
|
+
} | {
|
|
18967
|
+
name?: "p-norm";
|
|
18968
|
+
/**
|
|
18969
|
+
* degree of the dimensionality of the norm
|
|
18970
|
+
*/
|
|
18971
|
+
degree?: number;
|
|
18972
|
+
value: number;
|
|
18973
|
+
} | {
|
|
18974
|
+
name?: "inchi";
|
|
18975
|
+
value: string;
|
|
18976
|
+
} | {
|
|
18977
|
+
name?: "inchi_key";
|
|
18978
|
+
value: string;
|
|
18979
|
+
})[];
|
|
18980
|
+
/**
|
|
18981
|
+
* information about a database source
|
|
18982
|
+
*/
|
|
18983
|
+
external?: {
|
|
18984
|
+
/**
|
|
18985
|
+
* ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32
|
|
18986
|
+
*/
|
|
18987
|
+
id: string | number;
|
|
18988
|
+
/**
|
|
18989
|
+
* Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.
|
|
18990
|
+
*/
|
|
18991
|
+
source: "MaterialsProject" | "MaterialsProjectLegacy" | "ICSD" | "2dmatpedia" | "MaterialsVirtualLab";
|
|
18992
|
+
/**
|
|
18993
|
+
* Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).
|
|
18994
|
+
*/
|
|
18995
|
+
origin: boolean;
|
|
18996
|
+
/**
|
|
18997
|
+
* Original response from external source.
|
|
18998
|
+
*/
|
|
18999
|
+
data?: {};
|
|
19000
|
+
/**
|
|
19001
|
+
* Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506
|
|
19002
|
+
*/
|
|
19003
|
+
doi?: string;
|
|
19004
|
+
/**
|
|
19005
|
+
* The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers
|
|
19006
|
+
*/
|
|
19007
|
+
url?: string;
|
|
19008
|
+
};
|
|
19009
|
+
/**
|
|
19010
|
+
* file source with the information inside
|
|
19011
|
+
*/
|
|
19012
|
+
src?: {
|
|
19013
|
+
/**
|
|
19014
|
+
* file extension
|
|
19015
|
+
*/
|
|
19016
|
+
extension?: string;
|
|
19017
|
+
/**
|
|
19018
|
+
* file name without extension
|
|
19019
|
+
*/
|
|
19020
|
+
filename: string;
|
|
19021
|
+
/**
|
|
19022
|
+
* file content as raw text
|
|
19023
|
+
*/
|
|
19024
|
+
text: string;
|
|
19025
|
+
/**
|
|
19026
|
+
* MD5 hash based on file content
|
|
19027
|
+
*/
|
|
19028
|
+
hash: string;
|
|
19029
|
+
};
|
|
19030
|
+
/**
|
|
19031
|
+
* Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).
|
|
19032
|
+
*/
|
|
19033
|
+
scaledHash?: string;
|
|
19034
|
+
/**
|
|
19035
|
+
* Corresponding ICSD id of the material
|
|
19036
|
+
*/
|
|
19037
|
+
icsdId?: number;
|
|
19038
|
+
/**
|
|
19039
|
+
* Whether to work in the finite molecular picture (usually with atomic orbital basis)
|
|
19040
|
+
*/
|
|
19041
|
+
isNonPeriodic?: boolean;
|
|
19042
|
+
consistencyChecks?: {
|
|
19043
|
+
/**
|
|
19044
|
+
* Name of the consistency check that is performed, which is listed in an enum.
|
|
19045
|
+
*/
|
|
19046
|
+
name: "default" | "atomsTooClose" | "atomsOverlap";
|
|
19047
|
+
/**
|
|
19048
|
+
* Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'
|
|
19049
|
+
*/
|
|
19050
|
+
key: string;
|
|
19051
|
+
/**
|
|
19052
|
+
* Severity level of the problem, which is used in UI to differentiate.
|
|
19053
|
+
*/
|
|
19054
|
+
severity: "info" | "warning" | "error";
|
|
19055
|
+
/**
|
|
19056
|
+
* Message generated by the consistency check describing the problem.
|
|
19057
|
+
*/
|
|
19058
|
+
message: string;
|
|
19059
|
+
}[];
|
|
19060
|
+
metadata: {
|
|
19061
|
+
boundaryConditions?: {
|
|
19062
|
+
/**
|
|
19063
|
+
* If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab.
|
|
19064
|
+
*/
|
|
19065
|
+
type: "pbc" | "bc1" | "bc2" | "bc3";
|
|
19066
|
+
offset: number;
|
|
19067
|
+
};
|
|
19068
|
+
[k: string]: unknown;
|
|
19069
|
+
} | {
|
|
19070
|
+
/**
|
|
19071
|
+
* Whether the material was created as a surface slab
|
|
19072
|
+
*/
|
|
19073
|
+
isSlab?: boolean;
|
|
19074
|
+
/**
|
|
19075
|
+
* Miller index h used to generate the slab
|
|
19076
|
+
*/
|
|
19077
|
+
h?: number;
|
|
19078
|
+
/**
|
|
19079
|
+
* Miller index k used to generate the slab
|
|
19080
|
+
*/
|
|
19081
|
+
k?: number;
|
|
19082
|
+
/**
|
|
19083
|
+
* Miller index l used to generate the slab
|
|
19084
|
+
*/
|
|
19085
|
+
l?: number;
|
|
19086
|
+
/**
|
|
19087
|
+
* Slab thickness in number of layers
|
|
19088
|
+
*/
|
|
19089
|
+
thickness?: number;
|
|
19090
|
+
/**
|
|
19091
|
+
* Vacuum fraction used when scaling the out-of-plane lattice vector
|
|
19092
|
+
*/
|
|
19093
|
+
vacuumRatio?: number;
|
|
19094
|
+
/**
|
|
19095
|
+
* Termination vector component along a
|
|
19096
|
+
*/
|
|
19097
|
+
vx?: number;
|
|
19098
|
+
/**
|
|
19099
|
+
* Termination vector component along b
|
|
19100
|
+
*/
|
|
19101
|
+
vy?: number;
|
|
19102
|
+
[k: string]: unknown;
|
|
19103
|
+
} | {
|
|
19104
|
+
/**
|
|
19105
|
+
* Source bulk material id used to generate the slab
|
|
19106
|
+
*/
|
|
19107
|
+
bulkId?: string;
|
|
19108
|
+
[k: string]: unknown;
|
|
19109
|
+
};
|
|
19110
|
+
};
|
|
19111
|
+
/**
|
|
19112
|
+
* @minItems 3
|
|
19113
|
+
* @maxItems 3
|
|
19114
|
+
*/
|
|
19115
|
+
coordinate: [number, number, number];
|
|
19116
|
+
element: {
|
|
19117
|
+
chemical_element: "H" | "He" | "Li" | "Be" | "B" | "C" | "N" | "O" | "F" | "Ne" | "Na" | "Mg" | "Al" | "Si" | "P" | "S" | "Cl" | "Ar" | "K" | "Ca" | "Sc" | "Ti" | "V" | "Cr" | "Mn" | "Fe" | "Co" | "Ni" | "Cu" | "Zn" | "Ga" | "Ge" | "As" | "Se" | "Br" | "Kr" | "Rb" | "Sr" | "Y" | "Zr" | "Nb" | "Mo" | "Tc" | "Ru" | "Rh" | "Pd" | "Ag" | "Cd" | "In" | "Sn" | "Sb" | "Te" | "I" | "Xe" | "Cs" | "Ba" | "La" | "Ce" | "Pr" | "Nd" | "Pm" | "Sm" | "Eu" | "Gd" | "Tb" | "Dy" | "Ho" | "Er" | "Tm" | "Yb" | "Lu" | "Hf" | "Ta" | "W" | "Re" | "Os" | "Ir" | "Pt" | "Au" | "Hg" | "Tl" | "Pb" | "Bi" | "Po" | "At" | "Rn" | "Fr" | "Ra" | "Ac" | "Th" | "Pa" | "U" | "Np" | "Pu" | "Am" | "Cm" | "Bk" | "Cf" | "Es" | "Fm" | "Md" | "No" | "Lr" | "Rf" | "Db" | "Sg" | "Bh" | "Hs" | "Mt" | "Ds" | "Rg" | "Cn" | "Nh" | "Fl" | "Mc" | "Lv" | "Ts" | "Og";
|
|
19118
|
+
} | {
|
|
19119
|
+
/**
|
|
19120
|
+
* Extra elements, used for convenience purposed
|
|
19121
|
+
*/
|
|
19122
|
+
chemical_element: "X" | "Vac";
|
|
19123
|
+
};
|
|
19124
|
+
}
|
|
19125
|
+
];
|
|
19126
|
+
/**
|
|
19127
|
+
* Available methods for merging components
|
|
19128
|
+
*/
|
|
19129
|
+
merge_method: "ADD" | "REPLACE" | "YIELD";
|
|
19130
|
+
}
|
|
17861
19131
|
/** Schema dist/js/schema/materials_category/defective_structures/two_dimensional/adatom/configuration.json */
|
|
17862
19132
|
/**
|
|
17863
19133
|
* An adatom point defect configuration where an atom is added to a surface site on a slab.
|