@mat3ra/esse 2025.5.17-2 → 2025.6.14-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.
Files changed (177) hide show
  1. package/dist/js/example/apse/materials/builders/slab/pymatgen/parameters.json +1 -1
  2. package/dist/js/example/materials_category/pristine_structures/two_dimensional/slab.json +288 -0
  3. package/dist/js/example/{material/reusable/supercell → materials_category_components/entities/auxiliary/three_dimensional}/supercell_matrix_3d.json +2 -2
  4. package/dist/js/example/materials_category_components/entities/auxiliary/zero_dimensional/crystal_site.json +7 -0
  5. package/dist/js/example/materials_category_components/entities/core/three_dimensional/crystal.json +128 -0
  6. package/dist/js/example/materials_category_components/entities/core/three_dimensional/void.json +20 -0
  7. package/dist/js/example/{materials_category/defects/configuration.json → materials_category_components/entities/core/two_dimensional/vacuum.json} +3 -1
  8. package/dist/js/example/materials_category_components/entities/core/zero_dimensional/atom.json +3 -0
  9. package/dist/js/example/materials_category_components/entities/reusable/repetitions.json +5 -0
  10. package/dist/js/example/materials_category_components/operations/core/combinations/merge.json +265 -0
  11. package/dist/js/example/materials_category_components/operations/core/combinations/stack.json +265 -0
  12. package/dist/js/example/materials_category_components/operations/core/combinations/stack_component.json +128 -0
  13. package/dist/js/example/materials_category_components/operations/core/modifications/repeat.json +19 -0
  14. package/dist/js/example/materials_category_components/operations/core/modifications/strain.json +19 -0
  15. package/dist/js/schema/apse/materials/builders/slab/pymatgen/parameters.json +3 -3
  16. package/dist/js/schema/core/primitive/array_of_3_integers.json +11 -0
  17. package/dist/js/schema/{materials_category/defects/two_dimensional/island/condition.json.json → core/reusable/coordinate_conditions.json} +4 -2
  18. package/dist/js/schema/materials_category/pristine_structures/three_dimensional/ideal_crystal.json +757 -0
  19. package/dist/js/schema/materials_category/pristine_structures/two_dimensional/slab.json +1792 -0
  20. package/dist/js/schema/{material/reusable/supercell → materials_category_components/entities/auxiliary/three_dimensional}/supercell_matrix_3d.json +3 -1
  21. package/dist/js/schema/{material/reusable/slab → materials_category_components/entities/auxiliary/two_dimensional}/miller_indices.json +5 -5
  22. package/dist/js/schema/{material/reusable/supercell → materials_category_components/entities/auxiliary/two_dimensional}/supercell_matrix_2d.json +1 -1
  23. package/dist/js/schema/{material/reusable/slab → materials_category_components/entities/auxiliary/two_dimensional}/termination.json +2 -2
  24. package/dist/js/schema/materials_category_components/entities/auxiliary/zero_dimensional/crystal_site.json +22 -0
  25. package/dist/js/schema/materials_category_components/entities/core/three_dimensional/crystal.json +757 -0
  26. package/dist/js/schema/materials_category_components/entities/core/three_dimensional/void.json +76 -0
  27. package/dist/js/schema/materials_category_components/entities/core/two_dimensional/vacuum.json +787 -0
  28. package/dist/js/schema/materials_category_components/entities/core/zero_dimensional/atom.json +134 -0
  29. package/dist/js/schema/{material → materials_category_components/entities}/reusable/repetitions.json +1 -1
  30. package/dist/js/schema/materials_category_components/entities/reusable/three_dimensional/strained_non_uniform.json +786 -0
  31. package/dist/js/schema/materials_category_components/entities/reusable/three_dimensional/strained_uniform.json +773 -0
  32. package/dist/js/schema/materials_category_components/entities/reusable/three_dimensional/supercell.json +786 -0
  33. package/dist/js/schema/materials_category_components/entities/reusable/two_dimensional/atomic_layers.json +947 -0
  34. package/dist/js/schema/materials_category_components/entities/reusable/two_dimensional/atomic_layers_unique.json +947 -0
  35. package/dist/js/schema/materials_category_components/entities/reusable/two_dimensional/atomic_layers_unique_repeated.json +948 -0
  36. package/dist/js/schema/{materials_category/single_material/two_dimensional/slab/configuration.json → materials_category_components/entities/reusable/two_dimensional/crystal_lattice_planes.json} +16 -59
  37. package/dist/js/schema/{materials_category/defects/two_dimensional/grain_boundary_plane/configuration.json → materials_category_components/entities/reusable/two_dimensional/slab_unit_cell.json} +921 -1174
  38. package/dist/js/schema/{materials_category/multi_material/interfaces/configuration.json → materials_category_components/operations/core/combinations/merge.json} +859 -252
  39. package/dist/js/schema/{material/reusable/stack/stack_of_slabs.json → materials_category_components/operations/core/combinations/stack.json} +796 -253
  40. package/dist/js/schema/{material/reusable/slab_configuration_with_termination.json → materials_category_components/operations/core/combinations/stack_component.json} +789 -235
  41. package/dist/js/schema/materials_category_components/operations/core/modifications/repeat.json +42 -0
  42. package/dist/js/schema/materials_category_components/operations/core/modifications/strain.json +24 -0
  43. package/dist/js/schemas.json +1 -1
  44. package/dist/js/types.d.ts +4698 -4703
  45. package/example/apse/materials/builders/slab/pymatgen/parameters.json +1 -1
  46. package/example/materials_category/pristine_structures/two-dimensional/slab.json +38 -0
  47. package/example/materials_category_components/entities/auxiliary/three-dimensional/supercell_matrix_3d.json +5 -0
  48. package/example/materials_category_components/entities/auxiliary/two-dimensional/miller_indices.json +1 -0
  49. package/example/materials_category_components/entities/auxiliary/two-dimensional/supercell_matrix_2d.json +4 -0
  50. package/example/{material/reusable/slab → materials_category_components/entities/auxiliary/two-dimensional}/termination.json +1 -1
  51. package/example/materials_category_components/entities/auxiliary/zero-dimensional/crystal_site.json +3 -0
  52. package/example/materials_category_components/entities/core/three-dimensional/crystal.json +3 -0
  53. package/example/materials_category_components/entities/core/three-dimensional/void.json +8 -0
  54. package/example/materials_category_components/entities/core/two-dimensional/vacuum.json +7 -0
  55. package/example/materials_category_components/entities/core/zero-dimensional/atom.json +3 -0
  56. package/example/materials_category_components/entities/reusable/repetitions.json +1 -0
  57. package/example/materials_category_components/operations/core/combinations/merge.json +11 -0
  58. package/example/materials_category_components/operations/core/combinations/stack.json +11 -0
  59. package/example/materials_category_components/operations/core/combinations/stack_component.json +3 -0
  60. package/example/materials_category_components/operations/core/modifications/repeat.json +13 -0
  61. package/example/materials_category_components/operations/core/modifications/strain.json +7 -0
  62. package/package.json +1 -1
  63. package/schema/apse/materials/builders/slab/pymatgen/parameters.json +3 -3
  64. package/schema/core/primitive/array_of_3_integers.json +11 -0
  65. package/schema/core/reusable/coordinate_conditions/index.json +11 -0
  66. package/schema/materials_category/manifest.yaml +268 -0
  67. package/schema/materials_category/pristine_structures/three-dimensional/ideal_crystal.json +11 -0
  68. package/schema/materials_category/pristine_structures/two-dimensional/slab.json +17 -0
  69. package/schema/{material/reusable/supercell → materials_category_components/entities/auxiliary/three-dimensional}/supercell_matrix_3d.json +2 -7
  70. package/schema/materials_category_components/entities/auxiliary/two-dimensional/miller_indices.json +16 -0
  71. package/schema/{material/reusable/supercell → materials_category_components/entities/auxiliary/two-dimensional}/supercell_matrix_2d.json +1 -1
  72. package/schema/{material/reusable/slab → materials_category_components/entities/auxiliary/two-dimensional}/termination.json +3 -3
  73. package/schema/materials_category_components/entities/auxiliary/zero-dimensional/crystal_site.json +15 -0
  74. package/schema/materials_category_components/entities/core/three-dimensional/crystal.json +11 -0
  75. package/schema/materials_category_components/entities/core/three-dimensional/void.json +19 -0
  76. package/schema/materials_category_components/entities/core/two-dimensional/vacuum.json +27 -0
  77. package/schema/materials_category_components/entities/core/zero-dimensional/atom.json +15 -0
  78. package/schema/{material → materials_category_components/entities}/reusable/repetitions.json +1 -1
  79. package/schema/materials_category_components/entities/reusable/three-dimensional/strained_non_uniform.json +20 -0
  80. package/schema/materials_category_components/entities/reusable/three-dimensional/strained_uniform.json +20 -0
  81. package/schema/materials_category_components/entities/reusable/three-dimensional/supercell.json +20 -0
  82. package/schema/materials_category_components/entities/reusable/two-dimensional/atomic_layers.json +12 -0
  83. package/schema/materials_category_components/entities/reusable/two-dimensional/atomic_layers_unique.json +25 -0
  84. package/schema/materials_category_components/entities/reusable/two-dimensional/atomic_layers_unique_repeated.json +27 -0
  85. package/schema/materials_category_components/entities/reusable/two-dimensional/crystal_lattice_planes.json +25 -0
  86. package/schema/materials_category_components/entities/reusable/two-dimensional/slab_unit_cell.json +33 -0
  87. package/schema/materials_category_components/operations/core/combinations/merge.json +33 -0
  88. package/schema/materials_category_components/operations/core/combinations/stack.json +21 -0
  89. package/schema/materials_category_components/operations/core/combinations/stack_component.json +14 -0
  90. package/schema/materials_category_components/operations/core/modifications/repeat.json +10 -0
  91. package/schema/materials_category_components/operations/core/modifications/strain.json +10 -0
  92. package/dist/js/example/material/builders/base/selector_parameters.json +0 -3
  93. package/dist/js/example/material/builders/single_material/two_dimensional/slab/selector_parameters.json +0 -6
  94. package/dist/js/example/material/reusable/repetitions.json +0 -5
  95. package/dist/js/example/material/reusable/slab/number_of_layers.json +0 -1
  96. package/dist/js/example/material/reusable/slab/vacuum.json +0 -1
  97. package/dist/js/example/material/reusable/slab_configuration_with_termination.json +0 -156
  98. package/dist/js/example/materials_category/defects/by_host/two_dimensional/adatom/configuration.json +0 -138
  99. package/dist/js/example/materials_category/defects/by_host/two_dimensional/point/configuration.json +0 -135
  100. package/dist/js/example/materials_category/defects/one_dimensional/terrace/configuration.json +0 -144
  101. package/dist/js/example/materials_category/defects/two_dimensional/grain_boundary_plane/configuration.json +0 -475
  102. package/dist/js/example/materials_category/defects/zero_dimensional/complex/pair/configuration.json +0 -406
  103. package/dist/js/example/materials_category/defects/zero_dimensional/point/configuration.json +0 -138
  104. package/dist/js/example/materials_category/defects/zero_dimensional/point/interstitial/configuration.json +0 -139
  105. package/dist/js/example/materials_category/defects/zero_dimensional/point/substitution/configuration.json +0 -138
  106. package/dist/js/example/materials_category/defects/zero_dimensional/point/vacancy/configuration.json +0 -137
  107. package/dist/js/example/materials_category/single_material/two_dimensional/slab/configuration.json +0 -150
  108. package/dist/js/schema/material/builders/base/selector_parameters.json +0 -15
  109. package/dist/js/schema/material/builders/single_material/two_dimensional/slab/builder_parameters.json +0 -33
  110. package/dist/js/schema/material/builders/single_material/two_dimensional/slab/selector_parameters.json +0 -159
  111. package/dist/js/schema/material/reusable/slab/enums/exposed_face.json +0 -11
  112. package/dist/js/schema/material/reusable/slab/number_of_layers.json +0 -9
  113. package/dist/js/schema/material/reusable/slab/vacuum.json +0 -9
  114. package/dist/js/schema/material/reusable/stack/slab_in_stack.json +0 -1005
  115. package/dist/js/schema/material/reusable/stack/stack_of_two_slabs.json +0 -1033
  116. package/dist/js/schema/materials_category/defects/by_host/two_dimensional/adatom/configuration.json +0 -926
  117. package/dist/js/schema/materials_category/defects/by_host/two_dimensional/layered/configuration.json +0 -794
  118. package/dist/js/schema/materials_category/defects/by_host/two_dimensional/point/configuration.json +0 -803
  119. package/dist/js/schema/materials_category/defects/configuration.json +0 -786
  120. package/dist/js/schema/materials_category/defects/enums/point_defect_type.json +0 -11
  121. package/dist/js/schema/materials_category/defects/one_dimensional/terrace/configuration.json +0 -831
  122. package/dist/js/schema/materials_category/defects/two_dimensional/island/configuration.json +0 -845
  123. package/dist/js/schema/materials_category/defects/zero_dimensional/complex/pair/configuration.json +0 -2634
  124. package/dist/js/schema/materials_category/defects/zero_dimensional/point/configuration.json +0 -925
  125. package/dist/js/schema/materials_category/defects/zero_dimensional/point/interstitial/configuration.json +0 -926
  126. package/dist/js/schema/materials_category/defects/zero_dimensional/point/substitution/configuration.json +0 -926
  127. package/dist/js/schema/materials_category/defects/zero_dimensional/point/vacancy/configuration.json +0 -926
  128. package/example/material/builders/base/selector_parameters.json +0 -3
  129. package/example/material/builders/single_material/two_dimensional/slab/selector_parameters.json +0 -6
  130. package/example/material/reusable/repetitions.json +0 -1
  131. package/example/material/reusable/slab/miller_indices.json +0 -5
  132. package/example/material/reusable/slab/number_of_layers.json +0 -1
  133. package/example/material/reusable/slab/vacuum.json +0 -1
  134. package/example/material/reusable/slab_configuration_with_termination.json +0 -8
  135. package/example/material/reusable/supercell/supercell_matrix_2d.json +0 -10
  136. package/example/material/reusable/supercell/supercell_matrix_3d.json +0 -11
  137. package/example/materials_category/defects/by_host/two-dimensional/adatom/configuration.json +0 -11
  138. package/example/materials_category/defects/by_host/two-dimensional/point/configuration.json +0 -8
  139. package/example/materials_category/defects/configuration.json +0 -5
  140. package/example/materials_category/defects/one-dimensional/terrace/configuration.json +0 -19
  141. package/example/materials_category/defects/two-dimensional/grain_boundary_plane/configuration.json +0 -21
  142. package/example/materials_category/defects/zero-dimensional/complex/pair/configuration.json +0 -9
  143. package/example/materials_category/defects/zero-dimensional/point/configuration.json +0 -11
  144. package/example/materials_category/defects/zero-dimensional/point/interstitial/configuration.json +0 -14
  145. package/example/materials_category/defects/zero-dimensional/point/substitution/configuration.json +0 -13
  146. package/example/materials_category/defects/zero-dimensional/point/vacancy/configuration.json +0 -12
  147. package/example/materials_category/single_material/two_dimensional/slab/configuration.json +0 -25
  148. package/schema/material/builders/base/selector_parameters.json +0 -15
  149. package/schema/material/builders/single_material/two_dimensional/slab/builder_parameters.json +0 -12
  150. package/schema/material/builders/single_material/two_dimensional/slab/selector_parameters.json +0 -12
  151. package/schema/material/reusable/slab/enums/exposed_face.json +0 -11
  152. package/schema/material/reusable/slab/miller_indices.json +0 -17
  153. package/schema/material/reusable/slab/number_of_layers.json +0 -9
  154. package/schema/material/reusable/slab/vacuum.json +0 -9
  155. package/schema/material/reusable/slab_configuration_with_termination.json +0 -19
  156. package/schema/material/reusable/stack/slab_in_stack.json +0 -26
  157. package/schema/material/reusable/stack/stack_of_slabs.json +0 -31
  158. package/schema/material/reusable/stack/stack_of_two_slabs.json +0 -17
  159. package/schema/materials_category/defects/by_host/two-dimensional/adatom/configuration.json +0 -16
  160. package/schema/materials_category/defects/by_host/two-dimensional/layered/configuration.json +0 -16
  161. package/schema/materials_category/defects/by_host/two-dimensional/point/configuration.json +0 -26
  162. package/schema/materials_category/defects/configuration.json +0 -34
  163. package/schema/materials_category/defects/one-dimensional/terrace/configuration.json +0 -44
  164. package/schema/materials_category/defects/two-dimensional/grain_boundary_plane/configuration.json +0 -20
  165. package/schema/materials_category/defects/two-dimensional/island/condition.json +0 -9
  166. package/schema/materials_category/defects/two-dimensional/island/configuration.json +0 -18
  167. package/schema/materials_category/defects/zero-dimensional/complex/pair/configuration.json +0 -20
  168. package/schema/materials_category/defects/zero-dimensional/point/configuration.json +0 -34
  169. package/schema/materials_category/defects/zero-dimensional/point/enums/type.json +0 -11
  170. package/schema/materials_category/defects/zero-dimensional/point/interstitial/configuration.json +0 -16
  171. package/schema/materials_category/defects/zero-dimensional/point/substitution/configuration.json +0 -16
  172. package/schema/materials_category/defects/zero-dimensional/point/vacancy/configuration.json +0 -16
  173. package/schema/materials_category/multi-material/interfaces/configuration.json +0 -12
  174. package/schema/materials_category/single_material/two_dimensional/slab/configuration.json +0 -36
  175. /package/dist/js/example/{material/reusable/slab → materials_category_components/entities/auxiliary/two_dimensional}/miller_indices.json +0 -0
  176. /package/dist/js/example/{material/reusable/supercell → materials_category_components/entities/auxiliary/two_dimensional}/supercell_matrix_2d.json +0 -0
  177. /package/dist/js/example/{material/reusable/slab → materials_category_components/entities/auxiliary/two_dimensional}/termination.json +0 -0
@@ -0,0 +1,27 @@
1
+ {
2
+ "$id": "materials-category-components/entities/core/two-dimensional/vacuum",
3
+ "$schema": "http://json-schema.org/draft-07/schema#",
4
+ "title": "Vacuum Configuration Schema",
5
+ "description": "A vacuum slab that breaks periodicity in a specified direction",
6
+ "type": "object",
7
+ "properties": {
8
+ "direction": {
9
+ "$ref": "../../../../core/primitive/axis_3d_names_enum.json"
10
+ },
11
+ "size": {
12
+ "type": "number",
13
+ "description": "Size of the vacuum slab in angstroms",
14
+ "minimum": 0,
15
+ "default": 10
16
+ },
17
+ "crystal": {
18
+ "$ref": "../three-dimensional/crystal.json",
19
+ "description": "Crystal structure that the vacuum slab is associated with, to use as a reference for lattice vectors"
20
+ }
21
+ },
22
+ "required": [
23
+ "direction",
24
+ "size",
25
+ "crystal"
26
+ ]
27
+ }
@@ -0,0 +1,15 @@
1
+ {
2
+ "$id": "materials-category-components/entities/core/zero-dimensional/atom",
3
+ "$schema": "http://json-schema.org/draft-07/schema#",
4
+ "title": "Atom Schema",
5
+ "description": "A chemical element that can be placed at a crystal site",
6
+ "type": "object",
7
+ "properties": {
8
+ "chemical_element": {
9
+ "$ref": "../../../../definitions/chemical_elements.json#periodic_table"
10
+ }
11
+ },
12
+ "required": [
13
+ "chemical_element"
14
+ ]
15
+ }
@@ -1,5 +1,5 @@
1
1
  {
2
- "$id": "material/reusable/repetitions",
2
+ "$id": "materials-category-components/entities/reusable/repetitions",
3
3
  "$schema": "http://json-schema.org/draft-07/schema#",
4
4
  "title": "Crystal Repetitions Schema",
5
5
  "description": "Number of unit cells to repeat in each direction for a crystal structure.",
@@ -0,0 +1,20 @@
1
+ {
2
+ "$id": "materials-category-components/entities/reusable/three-dimensional/strained-non-uniform",
3
+ "$schema": "http://json-schema.org/draft-07/schema#",
4
+ "title": "Non-Uniformly Strained Crystal Configuration Schema",
5
+ "description": "A crystal structure with non-uniform strain applied using a strain matrix",
6
+ "type": "object",
7
+ "properties": {
8
+ "crystal": {
9
+ "$ref": "../../core/three-dimensional/crystal.json"
10
+ },
11
+ "strain_matrix": {
12
+ "$ref": "../../../../core/abstract/matrix_3x3.json",
13
+ "description": "3x3 strain matrix defining non-uniform strain components"
14
+ }
15
+ },
16
+ "required": [
17
+ "crystal",
18
+ "strain_matrix"
19
+ ]
20
+ }
@@ -0,0 +1,20 @@
1
+ {
2
+ "$id": "materials-category-components/entities/reusable/three-dimensional/strained-uniform",
3
+ "$schema": "http://json-schema.org/draft-07/schema#",
4
+ "title": "Uniformly Strained Crystal Configuration Schema",
5
+ "description": "A crystal structure with uniform strain applied",
6
+ "type": "object",
7
+ "properties": {
8
+ "crystal": {
9
+ "$ref": "../../core/three-dimensional/crystal.json"
10
+ },
11
+ "strain_percentage": {
12
+ "type": "number",
13
+ "description": "Percentage of uniform strain to apply to the crystal structure"
14
+ }
15
+ },
16
+ "required": [
17
+ "crystal",
18
+ "strain_percentage"
19
+ ]
20
+ }
@@ -0,0 +1,20 @@
1
+ {
2
+ "$id": "materials-category-components/entities/reusable/three-dimensional/supercell",
3
+ "$schema": "http://json-schema.org/draft-07/schema#",
4
+ "title": "Supercell Configuration Schema",
5
+ "description": "A repeated crystal structure defined by a transformation matrix",
6
+ "type": "object",
7
+ "properties": {
8
+ "crystal": {
9
+ "$ref": "../../core/three-dimensional/crystal.json"
10
+ },
11
+ "matrix": {
12
+ "$ref": "../../../../core/abstract/matrix_3x3.json",
13
+ "description": "3x3 transformation matrix for creating the supercell"
14
+ }
15
+ },
16
+ "required": [
17
+ "crystal",
18
+ "matrix"
19
+ ]
20
+ }
@@ -0,0 +1,12 @@
1
+ {
2
+ "$id": "materials-category-components/entities/reusable/two-dimensional/atomic-layers",
3
+ "$schema": "http://json-schema.org/draft-07/schema#",
4
+ "title": "Atomic Layers Schema",
5
+ "description": "A set of atomic layers defined by a plane in a crystal structure with specific terminations",
6
+ "type": "object",
7
+ "allOf": [
8
+ {
9
+ "$ref": "atomic_layers_unique.json"
10
+ }
11
+ ]
12
+ }
@@ -0,0 +1,25 @@
1
+ {
2
+ "$id": "materials-category-components/entities/reusable/two-dimensional/atomic-layers-unique",
3
+ "$schema": "http://json-schema.org/draft-07/schema#",
4
+ "title": "Atomic Layers Unique Schema",
5
+ "description": "A set of unique atomic layers defined by a plane in a crystal structure, including all possible terminations",
6
+ "type": "object",
7
+ "allOf": [
8
+ {
9
+ "$ref": "crystal_lattice_planes.json"
10
+ }
11
+ ],
12
+ "properties": {
13
+ "terminations": {
14
+ "type": "array",
15
+ "items": {
16
+ "$ref": "../../../entities/auxiliary/two-dimensional/termination.json"
17
+ },
18
+ "minItems": 1,
19
+ "description": "All possible terminations for this orientation."
20
+ }
21
+ },
22
+ "required": [
23
+ "terminations"
24
+ ]
25
+ }
@@ -0,0 +1,27 @@
1
+ {
2
+ "$id": "materials-category-components/entities/reusable/two-dimensional/atomic-layers-unique-repeated",
3
+ "$schema": "http://json-schema.org/draft-07/schema#",
4
+ "title": "Atomic Layers Unique Repeated Schema",
5
+ "description": "Atomic layers unique with an integer number of repetitions, forming a full periodic structure with top layer specified by the termination",
6
+ "type": "object",
7
+ "allOf": [
8
+ {
9
+ "$ref": "crystal_lattice_planes.json"
10
+ }
11
+ ],
12
+ "properties": {
13
+ "termination_top": {
14
+ "$ref": "../../../entities/auxiliary/two-dimensional/termination.json",
15
+ "description": "Termination of the top layer, facing the vacuum"
16
+ },
17
+ "number_of_repetitions": {
18
+ "type": "integer",
19
+ "minimum": 1,
20
+ "description": "Number of repetitions of the unique atomic layers"
21
+ }
22
+ },
23
+ "required": [
24
+ "termination_top",
25
+ "number_of_repetitions"
26
+ ]
27
+ }
@@ -0,0 +1,25 @@
1
+ {
2
+ "$id": "materials-category-components/entities/reusable/two-dimensional/crystal-lattice-planes",
3
+ "$schema": "http://json-schema.org/draft-07/schema#",
4
+ "title": "Crystal Lattice Planes Schema",
5
+ "description": "A set of all possible planes in a crystal defined by Miller indices",
6
+ "type": "object",
7
+ "properties": {
8
+ "crystal": {
9
+ "$ref": "../../../entities/core/three-dimensional/crystal.json"
10
+ },
11
+ "miller_indices": {
12
+ "$ref": "../../../entities/auxiliary/two-dimensional/miller_indices.json"
13
+ },
14
+ "use_conventional_cell": {
15
+ "type": "boolean",
16
+ "description": "Use the conventional cell for the crystal structure",
17
+ "default": true
18
+ }
19
+ },
20
+ "required": [
21
+ "crystal",
22
+ "miller_indices",
23
+ "use_conventional_cell"
24
+ ]
25
+ }
@@ -0,0 +1,33 @@
1
+ {
2
+ "$id": "materials-category-components/entities/reusable/two-dimensional/slab-unit-cell",
3
+ "$schema": "http://json-schema.org/draft-07/schema#",
4
+ "title": "Slab Unit Cell Schema",
5
+ "description": "A slab unit cell consisting of repeated unique atomic layers and vacuum",
6
+ "type": "object",
7
+ "properties": {
8
+ "stack_components": {
9
+ "type": "array",
10
+ "items": {
11
+ "oneOf": [
12
+ {
13
+ "$ref": "atomic_layers_unique_repeated.json"
14
+ },
15
+ {
16
+ "$ref": "../../../entities/core/two-dimensional/vacuum.json"
17
+ }
18
+ ]
19
+ },
20
+ "minItems": 2,
21
+ "description": "Components of the slab unit cell: repeated unique atomic layers and vacuum"
22
+ },
23
+ "direction": {
24
+ "$ref": "../../../../core/primitive/axis_3d_names_enum.json",
25
+ "default": "z",
26
+ "description": "Direction along which the components are stacked"
27
+ }
28
+ },
29
+ "required": [
30
+ "stack_components",
31
+ "direction"
32
+ ]
33
+ }
@@ -0,0 +1,33 @@
1
+ {
2
+ "$id": "materials-category-components/operations/core/combinations/merge",
3
+ "$schema": "http://json-schema.org/draft-07/schema#",
4
+ "title": "Merge Schema",
5
+ "description": "A component of a stack, which can be a crystal or a vacuum",
6
+ "properties": {
7
+ "merge_components": {
8
+ "type": "array",
9
+ "items": {
10
+ "anyOf": [
11
+ {
12
+ "$ref": "../../../entities/core/three-dimensional/crystal.json"
13
+ },
14
+ {
15
+ "$ref": "../../../entities/core/two-dimensional/vacuum.json"
16
+ },
17
+ {
18
+ "$ref": "../../../entities/core/three-dimensional/void.json"
19
+ }
20
+ ]
21
+ }
22
+ },
23
+ "method": {
24
+ "type": "string",
25
+ "description": "Method to merge components: add, subtract (when merging with void), replace (overwrite upon collision), or yield (keep previous upon collision)",
26
+ "enum": [
27
+ "add",
28
+ "replace",
29
+ "yield"
30
+ ]
31
+ }
32
+ }
33
+ }
@@ -0,0 +1,21 @@
1
+ {
2
+ "$id": "materials-category-components/operations/core/combinations/stack",
3
+ "$schema": "http://json-schema.org/draft-07/schema#",
4
+ "title": "Stack Schema",
5
+ "description": "A stack of components, which can be crystals or vacuums, arranged in a specified direction",
6
+ "properties": {
7
+ "stack_components": {
8
+ "type": "array",
9
+ "items": {
10
+ "$ref": "./stack_component.json"
11
+ }
12
+ },
13
+ "direction": {
14
+ "$ref": "../../../../core/primitive/axis_3d_names_enum.json"
15
+ }
16
+ },
17
+ "required": [
18
+ "stack_components",
19
+ "direction"
20
+ ]
21
+ }
@@ -0,0 +1,14 @@
1
+ {
2
+ "$id": "materials-category-components/operations/core/combinations/stack-component",
3
+ "$schema": "http://json-schema.org/draft-07/schema#",
4
+ "title": "Stack Component Schema",
5
+ "description": "A component of a stack, which can be a crystal or a vacuum",
6
+ "oneOf": [
7
+ {
8
+ "$ref": "../../../entities/core/three-dimensional/crystal.json"
9
+ },
10
+ {
11
+ "$ref": "../../../entities/core/two-dimensional/vacuum.json"
12
+ }
13
+ ]
14
+ }
@@ -0,0 +1,10 @@
1
+ {
2
+ "$id": "materials-category-components/operations/core/modifications/repeat",
3
+ "$schema": "http://json-schema.org/draft-07/schema#",
4
+ "title": "Repeat Schema",
5
+ "properties": {
6
+ "matrix": {
7
+ "$ref": "../../../entities/auxiliary/three-dimensional/supercell_matrix_3d.json"
8
+ }
9
+ }
10
+ }
@@ -0,0 +1,10 @@
1
+ {
2
+ "$id": "materials-category-components/operations/core/modifications/strain",
3
+ "$schema": "http://json-schema.org/draft-07/schema#",
4
+ "title": "Strain Schema",
5
+ "properties": {
6
+ "matrix": {
7
+ "$ref": "../../../../core/abstract/matrix_3x3.json"
8
+ }
9
+ }
10
+ }
@@ -1,3 +0,0 @@
1
- {
2
- "default_index": 0
3
- }
@@ -1,6 +0,0 @@
1
- {
2
- "termination": {
3
- "chemical_elements": "C",
4
- "space_group_symmetry_label": "P6/mmm"
5
- }
6
- }
@@ -1,5 +0,0 @@
1
- [
2
- 1,
3
- 2,
4
- 3
5
- ]
@@ -1,156 +0,0 @@
1
- {
2
- "slab_configuration": {
3
- "bulk": {
4
- "_id": "LCthJ6E2QabYCZqf3",
5
- "basis": {
6
- "coordinates": [
7
- {
8
- "id": 1,
9
- "value": [
10
- 0,
11
- 0,
12
- 0
13
- ]
14
- },
15
- {
16
- "id": 2,
17
- "value": [
18
- 0.25,
19
- 0.25,
20
- 0.25
21
- ]
22
- }
23
- ],
24
- "elements": [
25
- {
26
- "id": 1,
27
- "value": "Si"
28
- },
29
- {
30
- "id": 2,
31
- "value": "Si"
32
- }
33
- ],
34
- "name": "basis",
35
- "units": "crystal"
36
- },
37
- "createdAt": "2016-04-03T05:25:37.430Z",
38
- "creator": {
39
- "_id": "HtxACY2wX4b2hS8Rv",
40
- "cls": "User",
41
- "slug": "exadmin"
42
- },
43
- "derivedProperties": [
44
- {
45
- "name": "volume",
46
- "units": "angstrom^3",
47
- "value": 131.1
48
- },
49
- {
50
- "name": "density",
51
- "units": "g/cm^3",
52
- "value": 2.33
53
- },
54
- {
55
- "name": "symmetry",
56
- "spaceGroupSymbol": "Fd-3m",
57
- "tolerance": {
58
- "units": "angstrom",
59
- "value": 0.3
60
- }
61
- },
62
- {
63
- "degree": 10,
64
- "name": "p-norm",
65
- "value": 0.71
66
- },
67
- {
68
- "element": "Si",
69
- "name": "elemental_ratio",
70
- "value": 0.71
71
- },
72
- {
73
- "name": "inchi",
74
- "value": ""
75
- },
76
- {
77
- "name": "inchi_key",
78
- "value": ""
79
- }
80
- ],
81
- "exabyteId": "RKiswuxHKkF3uvLyA",
82
- "formula": "Si",
83
- "hash": "4ac3fa057e3530628eb1295c77110eaa",
84
- "isDefault": false,
85
- "isNonPeriodic": false,
86
- "lattice": {
87
- "name": "lattice",
88
- "a": 5.14,
89
- "alpha": 90,
90
- "b": 5.14,
91
- "beta": 90,
92
- "c": 5.14,
93
- "gamma": 90,
94
- "type": "CUB",
95
- "units": {
96
- "angle": "degree",
97
- "length": "angstrom"
98
- },
99
- "vectors": {
100
- "a": [
101
- 5,
102
- 0.000121312,
103
- 0.000131415
104
- ],
105
- "alat": 1,
106
- "b": [
107
- 0.000121312,
108
- 5,
109
- 0.000121314
110
- ],
111
- "c": [
112
- 0.000121313,
113
- 0.000121312,
114
- 5
115
- ],
116
- "units": "angstrom"
117
- }
118
- },
119
- "name": "Silicon FCC",
120
- "owner": {
121
- "_id": "HtxACY2wX4b2hS8Rv",
122
- "cls": "Account",
123
- "slug": "exabyte"
124
- },
125
- "scaledHash": "5bd4eb168e3530628eb1295d88221cbb",
126
- "schemaVersion": "0.2.0",
127
- "slug": "silicon-fcc",
128
- "unitCellFormula": "Si2",
129
- "updatedAt": "2016-04-04T17:58:42.867Z"
130
- },
131
- "miller_indices": [
132
- 0,
133
- 0,
134
- 1
135
- ],
136
- "number_of_layers": 3,
137
- "vacuum": 15,
138
- "xy_supercell_matrix": [
139
- [
140
- 1,
141
- 0
142
- ],
143
- [
144
- 0,
145
- 1
146
- ]
147
- ],
148
- "use_conventional_cell": true,
149
- "use_orthogonal_z": true,
150
- "make_primitive": true
151
- },
152
- "termination": {
153
- "chemical_elements": "Si",
154
- "space_group_symmetry_label": "P4/mmm_2"
155
- }
156
- }
@@ -1,138 +0,0 @@
1
- {
2
- "isExternal": false,
3
- "type": "adatom",
4
- "coordinate": [
5
- 0.25,
6
- 0.25,
7
- 0.25
8
- ],
9
- "use_cartesian_coordinates": false,
10
- "host": {
11
- "_id": "LCthJ6E2QabYCZqf3",
12
- "basis": {
13
- "coordinates": [
14
- {
15
- "id": 1,
16
- "value": [
17
- 0,
18
- 0,
19
- 0
20
- ]
21
- },
22
- {
23
- "id": 2,
24
- "value": [
25
- 0.25,
26
- 0.25,
27
- 0.25
28
- ]
29
- }
30
- ],
31
- "elements": [
32
- {
33
- "id": 1,
34
- "value": "Si"
35
- },
36
- {
37
- "id": 2,
38
- "value": "Si"
39
- }
40
- ],
41
- "name": "basis",
42
- "units": "crystal"
43
- },
44
- "createdAt": "2016-04-03T05:25:37.430Z",
45
- "creator": {
46
- "_id": "HtxACY2wX4b2hS8Rv",
47
- "cls": "User",
48
- "slug": "exadmin"
49
- },
50
- "derivedProperties": [
51
- {
52
- "name": "volume",
53
- "units": "angstrom^3",
54
- "value": 131.1
55
- },
56
- {
57
- "name": "density",
58
- "units": "g/cm^3",
59
- "value": 2.33
60
- },
61
- {
62
- "name": "symmetry",
63
- "spaceGroupSymbol": "Fd-3m",
64
- "tolerance": {
65
- "units": "angstrom",
66
- "value": 0.3
67
- }
68
- },
69
- {
70
- "degree": 10,
71
- "name": "p-norm",
72
- "value": 0.71
73
- },
74
- {
75
- "element": "Si",
76
- "name": "elemental_ratio",
77
- "value": 0.71
78
- },
79
- {
80
- "name": "inchi",
81
- "value": ""
82
- },
83
- {
84
- "name": "inchi_key",
85
- "value": ""
86
- }
87
- ],
88
- "exabyteId": "RKiswuxHKkF3uvLyA",
89
- "formula": "Si",
90
- "hash": "4ac3fa057e3530628eb1295c77110eaa",
91
- "isDefault": false,
92
- "isNonPeriodic": false,
93
- "lattice": {
94
- "name": "lattice",
95
- "a": 5.14,
96
- "alpha": 90,
97
- "b": 5.14,
98
- "beta": 90,
99
- "c": 5.14,
100
- "gamma": 90,
101
- "type": "CUB",
102
- "units": {
103
- "angle": "degree",
104
- "length": "angstrom"
105
- },
106
- "vectors": {
107
- "a": [
108
- 5,
109
- 0.000121312,
110
- 0.000131415
111
- ],
112
- "alat": 1,
113
- "b": [
114
- 0.000121312,
115
- 5,
116
- 0.000121314
117
- ],
118
- "c": [
119
- 0.000121313,
120
- 0.000121312,
121
- 5
122
- ],
123
- "units": "angstrom"
124
- }
125
- },
126
- "name": "Silicon FCC",
127
- "owner": {
128
- "_id": "HtxACY2wX4b2hS8Rv",
129
- "cls": "Account",
130
- "slug": "exabyte"
131
- },
132
- "scaledHash": "5bd4eb168e3530628eb1295d88221cbb",
133
- "schemaVersion": "0.2.0",
134
- "slug": "silicon-fcc",
135
- "unitCellFormula": "Si2",
136
- "updatedAt": "2016-04-04T17:58:42.867Z"
137
- }
138
- }