mat3ra-esse 2024.4.8.post0__py3-none-any.whl → 2024.4.8.post2__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of mat3ra-esse might be problematic. Click here for more details.

Files changed (447) hide show
  1. mat3ra/esse/models/__init__.py +3 -0
  2. mat3ra/esse/models/core/__init__.py +3 -0
  3. mat3ra/esse/models/core/abstract/2d_data.py +17 -0
  4. mat3ra/esse/models/core/abstract/2d_plot.py +34 -0
  5. mat3ra/esse/models/core/abstract/3d_grid.py +14 -0
  6. mat3ra/esse/models/core/abstract/3d_tensor.py +19 -0
  7. mat3ra/esse/models/core/abstract/3d_vector_basis.py +15 -0
  8. mat3ra/esse/models/core/abstract/__init__.py +3 -0
  9. mat3ra/esse/models/core/abstract/point.py +13 -0
  10. mat3ra/esse/models/core/abstract/vector.py +13 -0
  11. mat3ra/esse/models/core/primitive/1d_data_series.py +13 -0
  12. mat3ra/esse/models/core/primitive/3d_lattice.py +34 -0
  13. mat3ra/esse/models/core/primitive/__init__.py +3 -0
  14. mat3ra/esse/models/core/primitive/array_of_3_booleans.py +13 -0
  15. mat3ra/esse/models/core/primitive/array_of_3_numbers.py +13 -0
  16. mat3ra/esse/models/core/primitive/array_of_ids.py +23 -0
  17. mat3ra/esse/models/core/primitive/array_of_strings.py +16 -0
  18. mat3ra/esse/models/core/primitive/axis.py +20 -0
  19. mat3ra/esse/models/core/primitive/group_info.py +20 -0
  20. mat3ra/esse/models/core/primitive/integer_one_or_zero.py +11 -0
  21. mat3ra/esse/models/core/primitive/linked_list/__init__.py +33 -0
  22. mat3ra/esse/models/core/primitive/linked_list/base_node.py +31 -0
  23. mat3ra/esse/models/core/primitive/linked_list/named_node.py +35 -0
  24. mat3ra/esse/models/core/primitive/linked_list/named_node_in_group.py +43 -0
  25. mat3ra/esse/models/core/primitive/linked_list/node_with_type.py +32 -0
  26. mat3ra/esse/models/core/primitive/scalar.py +11 -0
  27. mat3ra/esse/models/core/primitive/slugified_entry.py +18 -0
  28. mat3ra/esse/models/core/primitive/slugified_entry_or_slug.py +27 -0
  29. mat3ra/esse/models/core/primitive/string.py +11 -0
  30. mat3ra/esse/models/core/reference/__init__.py +260 -0
  31. mat3ra/esse/models/core/reference/exabyte.py +24 -0
  32. mat3ra/esse/models/core/reference/experiment/__init__.py +150 -0
  33. mat3ra/esse/models/core/reference/experiment/condition.py +28 -0
  34. mat3ra/esse/models/core/reference/experiment/location.py +18 -0
  35. mat3ra/esse/models/core/reference/literature/__init__.py +86 -0
  36. mat3ra/esse/models/core/reference/literature/name.py +16 -0
  37. mat3ra/esse/models/core/reference/literature/pages.py +14 -0
  38. mat3ra/esse/models/core/reference/modeling/__init__.py +49 -0
  39. mat3ra/esse/models/core/reference/modeling/exabyte.py +42 -0
  40. mat3ra/esse/models/core/reusable/__init__.py +3 -0
  41. mat3ra/esse/models/core/reusable/atomic_data/__init__.py +3 -0
  42. mat3ra/esse/models/core/reusable/atomic_data/per_orbital.py +21 -0
  43. mat3ra/esse/models/core/reusable/atomic_data/per_orbital_pair.py +34 -0
  44. mat3ra/esse/models/core/reusable/atomic_data/value_number.py +16 -0
  45. mat3ra/esse/models/core/reusable/atomic_data/value_string.py +16 -0
  46. mat3ra/esse/models/core/reusable/atomic_data_per_orbital_numeric.py +25 -0
  47. mat3ra/esse/models/core/reusable/atomic_data_per_orbital_pair_numeric.py +38 -0
  48. mat3ra/esse/models/core/reusable/atomic_orbital.py +20 -0
  49. mat3ra/esse/models/core/reusable/atomic_scalars.py +28 -0
  50. mat3ra/esse/models/core/reusable/atomic_strings.py +24 -0
  51. mat3ra/esse/models/core/reusable/atomic_vectors.py +24 -0
  52. mat3ra/esse/models/core/reusable/band_gap.py +42 -0
  53. mat3ra/esse/models/core/reusable/categories.py +43 -0
  54. mat3ra/esse/models/core/reusable/category_path.py +14 -0
  55. mat3ra/esse/models/core/reusable/dielectric_tensor_component.py +31 -0
  56. mat3ra/esse/models/core/reusable/energy.py +30 -0
  57. mat3ra/esse/models/core/reusable/file_metadata.py +24 -0
  58. mat3ra/esse/models/core/reusable/frequency_function_matrix.py +20 -0
  59. mat3ra/esse/models/core/reusable/object_storage_container_data.py +36 -0
  60. mat3ra/esse/models/definitions/__init__.py +3 -0
  61. mat3ra/esse/models/definitions/units.py +13 -0
  62. mat3ra/esse/models/element.py +74 -0
  63. mat3ra/esse/models/in_memory_entity/__init__.py +3 -0
  64. mat3ra/esse/models/in_memory_entity/base.py +58 -0
  65. mat3ra/esse/models/in_memory_entity/defaultable.py +62 -0
  66. mat3ra/esse/models/in_memory_entity/named.py +62 -0
  67. mat3ra/esse/models/in_memory_entity/named_defaultable.py +66 -0
  68. mat3ra/esse/models/in_memory_entity/named_defaultable_has_metadata.py +67 -0
  69. mat3ra/esse/models/in_memory_entity/named_defaultable_runtime_items.py +89 -0
  70. mat3ra/esse/models/job/__init__.py +3006 -0
  71. mat3ra/esse/models/job/base.py +287 -0
  72. mat3ra/esse/models/job/compute.py +161 -0
  73. mat3ra/esse/models/material/__init__.py +420 -0
  74. mat3ra/esse/models/material/conventional.py +13 -0
  75. mat3ra/esse/models/method/__init__.py +28 -0
  76. mat3ra/esse/models/method/categorized_method.py +86 -0
  77. mat3ra/esse/models/method/method_parameters.py +48 -0
  78. mat3ra/esse/models/method/unit_method.py +70 -0
  79. mat3ra/esse/models/methods_category/mathematical/__init__.py +3 -0
  80. mat3ra/esse/models/methods_category/mathematical/diff/__init__.py +48 -0
  81. mat3ra/esse/models/methods_category/mathematical/diff/enum_options.py +13 -0
  82. mat3ra/esse/models/methods_category/mathematical/diff/fd.py +52 -0
  83. mat3ra/esse/models/methods_category/mathematical/discr/__init__.py +48 -0
  84. mat3ra/esse/models/methods_category/mathematical/discr/enum_options.py +13 -0
  85. mat3ra/esse/models/methods_category/mathematical/discr/mesh/__init__.py +52 -0
  86. mat3ra/esse/models/methods_category/mathematical/discr/mesh/enum_options.py +13 -0
  87. mat3ra/esse/models/methods_category/mathematical/discr/mesh/hybrid.py +56 -0
  88. mat3ra/esse/models/methods_category/mathematical/discr/mesh/nstruct.py +56 -0
  89. mat3ra/esse/models/methods_category/mathematical/discr/mesh/struct/__init__.py +56 -0
  90. mat3ra/esse/models/methods_category/mathematical/discr/mesh/struct/cartesian.py +60 -0
  91. mat3ra/esse/models/methods_category/mathematical/discr/mesh/struct/enum_options.py +13 -0
  92. mat3ra/esse/models/methods_category/mathematical/enum_options.py +13 -0
  93. mat3ra/esse/models/methods_category/mathematical/fapprx/__init__.py +48 -0
  94. mat3ra/esse/models/methods_category/mathematical/fapprx/basisexp.py +52 -0
  95. mat3ra/esse/models/methods_category/mathematical/fapprx/enum_options.py +13 -0
  96. mat3ra/esse/models/methods_category/mathematical/fapprx/ipol/__init__.py +52 -0
  97. mat3ra/esse/models/methods_category/mathematical/fapprx/ipol/enum_options.py +13 -0
  98. mat3ra/esse/models/methods_category/mathematical/fapprx/ipol/lin.py +56 -0
  99. mat3ra/esse/models/methods_category/mathematical/fapprx/ipol/poly.py +56 -0
  100. mat3ra/esse/models/methods_category/mathematical/fapprx/ipol/spline.py +56 -0
  101. mat3ra/esse/models/methods_category/mathematical/intgr/__init__.py +48 -0
  102. mat3ra/esse/models/methods_category/mathematical/intgr/analytic/__init__.py +52 -0
  103. mat3ra/esse/models/methods_category/mathematical/intgr/analytic/enum_options.py +13 -0
  104. mat3ra/esse/models/methods_category/mathematical/intgr/analytic/volume.py +67 -0
  105. mat3ra/esse/models/methods_category/mathematical/intgr/diffeq/__init__.py +52 -0
  106. mat3ra/esse/models/methods_category/mathematical/intgr/diffeq/enum_options.py +13 -0
  107. mat3ra/esse/models/methods_category/mathematical/intgr/diffeq/order1.py +56 -0
  108. mat3ra/esse/models/methods_category/mathematical/intgr/diffeq/order2.py +56 -0
  109. mat3ra/esse/models/methods_category/mathematical/intgr/enum_options.py +13 -0
  110. mat3ra/esse/models/methods_category/mathematical/intgr/numquad/__init__.py +52 -0
  111. mat3ra/esse/models/methods_category/mathematical/intgr/numquad/enum_options.py +13 -0
  112. mat3ra/esse/models/methods_category/mathematical/intgr/numquad/gauss.py +56 -0
  113. mat3ra/esse/models/methods_category/mathematical/intgr/numquad/newcot.py +56 -0
  114. mat3ra/esse/models/methods_category/mathematical/intgr/transf/__init__.py +52 -0
  115. mat3ra/esse/models/methods_category/mathematical/intgr/transf/enum_options.py +13 -0
  116. mat3ra/esse/models/methods_category/mathematical/intgr/transf/fourier.py +56 -0
  117. mat3ra/esse/models/methods_category/mathematical/linalg/__init__.py +48 -0
  118. mat3ra/esse/models/methods_category/mathematical/linalg/dcomp.py +52 -0
  119. mat3ra/esse/models/methods_category/mathematical/linalg/diag/__init__.py +52 -0
  120. mat3ra/esse/models/methods_category/mathematical/linalg/diag/davidson.py +56 -0
  121. mat3ra/esse/models/methods_category/mathematical/linalg/diag/enum_options.py +13 -0
  122. mat3ra/esse/models/methods_category/mathematical/linalg/enum_options.py +13 -0
  123. mat3ra/esse/models/methods_category/mathematical/linalg/lintra.py +52 -0
  124. mat3ra/esse/models/methods_category/mathematical/linalg/matf.py +52 -0
  125. mat3ra/esse/models/methods_category/mathematical/opt/__init__.py +48 -0
  126. mat3ra/esse/models/methods_category/mathematical/opt/diff/__init__.py +52 -0
  127. mat3ra/esse/models/methods_category/mathematical/opt/diff/bracket.py +56 -0
  128. mat3ra/esse/models/methods_category/mathematical/opt/diff/enum_options.py +13 -0
  129. mat3ra/esse/models/methods_category/mathematical/opt/diff/local.py +56 -0
  130. mat3ra/esse/models/methods_category/mathematical/opt/diff/order1.py +56 -0
  131. mat3ra/esse/models/methods_category/mathematical/opt/diff/order2.py +56 -0
  132. mat3ra/esse/models/methods_category/mathematical/opt/diff/ordern/__init__.py +56 -0
  133. mat3ra/esse/models/methods_category/mathematical/opt/diff/ordern/cg.py +60 -0
  134. mat3ra/esse/models/methods_category/mathematical/opt/diff/ordern/enum_options.py +13 -0
  135. mat3ra/esse/models/methods_category/mathematical/opt/enum_options.py +13 -0
  136. mat3ra/esse/models/methods_category/mathematical/opt/ndiff/__init__.py +52 -0
  137. mat3ra/esse/models/methods_category/mathematical/opt/ndiff/direct.py +56 -0
  138. mat3ra/esse/models/methods_category/mathematical/opt/ndiff/enum_options.py +13 -0
  139. mat3ra/esse/models/methods_category/mathematical/opt/ndiff/pop.py +56 -0
  140. mat3ra/esse/models/methods_category/mathematical/opt/ndiff/stoch.py +56 -0
  141. mat3ra/esse/models/methods_category/mathematical/opt/root/__init__.py +52 -0
  142. mat3ra/esse/models/methods_category/mathematical/opt/root/bracket.py +56 -0
  143. mat3ra/esse/models/methods_category/mathematical/opt/root/enum_options.py +13 -0
  144. mat3ra/esse/models/methods_category/mathematical/opt/root/iter.py +56 -0
  145. mat3ra/esse/models/methods_category/mathematical/regression.py +54 -0
  146. mat3ra/esse/models/methods_category/physical/__init__.py +3 -0
  147. mat3ra/esse/models/methods_category/physical/enum_options.py +13 -0
  148. mat3ra/esse/models/methods_category/physical/qm/__init__.py +48 -0
  149. mat3ra/esse/models/methods_category/physical/qm/enum_options.py +13 -0
  150. mat3ra/esse/models/methods_category/physical/qm/wf/__init__.py +52 -0
  151. mat3ra/esse/models/methods_category/physical/qm/wf/ao/__init__.py +62 -0
  152. mat3ra/esse/models/methods_category/physical/qm/wf/ao/dunning.py +60 -0
  153. mat3ra/esse/models/methods_category/physical/qm/wf/ao/other.py +60 -0
  154. mat3ra/esse/models/methods_category/physical/qm/wf/ao/pople.py +60 -0
  155. mat3ra/esse/models/methods_category/physical/qm/wf/enum_options.py +13 -0
  156. mat3ra/esse/models/methods_category/physical/qm/wf/psp.py +63 -0
  157. mat3ra/esse/models/methods_category/physical/qm/wf/pw.py +56 -0
  158. mat3ra/esse/models/methods_category/physical/qm/wf/smearing.py +63 -0
  159. mat3ra/esse/models/methods_category/physical/qm/wf/tetrahedron.py +62 -0
  160. mat3ra/esse/models/methods_directory/legacy/__init__.py +3 -0
  161. mat3ra/esse/models/methods_directory/legacy/localorbital.py +37 -0
  162. mat3ra/esse/models/methods_directory/legacy/pseudopotential.py +40 -0
  163. mat3ra/esse/models/methods_directory/legacy/regression.py +118 -0
  164. mat3ra/esse/models/methods_directory/legacy/unknown.py +37 -0
  165. mat3ra/esse/models/methods_directory/mathematical/__init__.py +3 -0
  166. mat3ra/esse/models/methods_directory/mathematical/cg.py +87 -0
  167. mat3ra/esse/models/methods_directory/mathematical/davidson.py +83 -0
  168. mat3ra/esse/models/methods_directory/mathematical/regression/__init__.py +161 -0
  169. mat3ra/esse/models/methods_directory/mathematical/regression/data.py +69 -0
  170. mat3ra/esse/models/methods_directory/mathematical/regression/dataset.py +20 -0
  171. mat3ra/esse/models/methods_directory/mathematical/regression/kernel_ridge/__init__.py +3 -0
  172. mat3ra/esse/models/methods_directory/mathematical/regression/kernel_ridge/data_per_property.py +39 -0
  173. mat3ra/esse/models/methods_directory/mathematical/regression/linear/__init__.py +3 -0
  174. mat3ra/esse/models/methods_directory/mathematical/regression/linear/data_per_property.py +35 -0
  175. mat3ra/esse/models/methods_directory/mathematical/regression/per_feature_item.py +24 -0
  176. mat3ra/esse/models/methods_directory/mathematical/regression/precision.py +28 -0
  177. mat3ra/esse/models/methods_directory/mathematical/regression/precision_per_property.py +24 -0
  178. mat3ra/esse/models/methods_directory/physical/__init__.py +3 -0
  179. mat3ra/esse/models/methods_directory/physical/ao/__init__.py +3 -0
  180. mat3ra/esse/models/methods_directory/physical/ao/dunning.py +103 -0
  181. mat3ra/esse/models/methods_directory/physical/ao/enum_options.py +13 -0
  182. mat3ra/esse/models/methods_directory/physical/ao/other.py +107 -0
  183. mat3ra/esse/models/methods_directory/physical/ao/pople.py +101 -0
  184. mat3ra/esse/models/methods_directory/physical/psp/__init__.py +187 -0
  185. mat3ra/esse/models/methods_directory/physical/psp/file.py +106 -0
  186. mat3ra/esse/models/methods_directory/physical/psp/file_data_item.py +88 -0
  187. mat3ra/esse/models/methods_directory/physical/pw.py +83 -0
  188. mat3ra/esse/models/methods_directory/physical/smearing.py +90 -0
  189. mat3ra/esse/models/methods_directory/physical/tetrahedron.py +91 -0
  190. mat3ra/esse/models/model/__init__.py +43 -0
  191. mat3ra/esse/models/model/categorized_model.py +211 -0
  192. mat3ra/esse/models/model/mixins/__init__.py +3 -0
  193. mat3ra/esse/models/model/mixins/dft/__init__.py +5 -0
  194. mat3ra/esse/models/model/mixins/dft/double_hybrid_functional.py +18 -0
  195. mat3ra/esse/models/model/mixins/dft/enum_options.py +13 -0
  196. mat3ra/esse/models/model/mixins/dft/gga_functional.py +22 -0
  197. mat3ra/esse/models/model/mixins/dft/hybrid_functional.py +19 -0
  198. mat3ra/esse/models/model/mixins/dft/lda_functional.py +21 -0
  199. mat3ra/esse/models/model/mixins/dft/mgga_functional.py +21 -0
  200. mat3ra/esse/models/model/mixins/dispersion_correction.py +21 -0
  201. mat3ra/esse/models/model/mixins/enum_options.py +13 -0
  202. mat3ra/esse/models/model/mixins/hubbard.py +18 -0
  203. mat3ra/esse/models/model/mixins/spin_orbit_coupling.py +16 -0
  204. mat3ra/esse/models/model/mixins/spin_polarization.py +22 -0
  205. mat3ra/esse/models/model/model_parameters.py +123 -0
  206. mat3ra/esse/models/model/model_without_method.py +144 -0
  207. mat3ra/esse/models/models_category/__init__.py +3 -0
  208. mat3ra/esse/models/models_category/enum_options.py +13 -0
  209. mat3ra/esse/models/models_category/pb/__init__.py +48 -0
  210. mat3ra/esse/models/models_category/pb/enum_options.py +13 -0
  211. mat3ra/esse/models/models_category/pb/qm/__init__.py +52 -0
  212. mat3ra/esse/models/models_category/pb/qm/abin/__init__.py +56 -0
  213. mat3ra/esse/models/models_category/pb/qm/abin/enum_options.py +13 -0
  214. mat3ra/esse/models/models_category/pb/qm/abin/gw.py +66 -0
  215. mat3ra/esse/models/models_category/pb/qm/dft/__init__.py +56 -0
  216. mat3ra/esse/models/models_category/pb/qm/dft/enum_options.py +13 -0
  217. mat3ra/esse/models/models_category/pb/qm/dft/ksdft/__init__.py +60 -0
  218. mat3ra/esse/models/models_category/pb/qm/dft/ksdft/double_hybrid.py +64 -0
  219. mat3ra/esse/models/models_category/pb/qm/dft/ksdft/enum_options.py +13 -0
  220. mat3ra/esse/models/models_category/pb/qm/dft/ksdft/gga.py +64 -0
  221. mat3ra/esse/models/models_category/pb/qm/dft/ksdft/hybrid.py +64 -0
  222. mat3ra/esse/models/models_category/pb/qm/dft/ksdft/lda.py +64 -0
  223. mat3ra/esse/models/models_category/pb/qm/dft/ksdft/mgga.py +64 -0
  224. mat3ra/esse/models/models_category/pb/qm/enum_options.py +13 -0
  225. mat3ra/esse/models/models_category/pb/qm/semp.py +56 -0
  226. mat3ra/esse/models/models_category/st/__init__.py +48 -0
  227. mat3ra/esse/models/models_category/st/det/__init__.py +52 -0
  228. mat3ra/esse/models/models_category/st/det/enum_options.py +13 -0
  229. mat3ra/esse/models/models_category/st/det/ml/__init__.py +56 -0
  230. mat3ra/esse/models/models_category/st/det/ml/enum_options.py +13 -0
  231. mat3ra/esse/models/models_category/st/det/ml/re.py +60 -0
  232. mat3ra/esse/models/models_category/st/enum_options.py +13 -0
  233. mat3ra/esse/models/models_directory/__init__.py +3 -0
  234. mat3ra/esse/models/models_directory/double_hybrid.py +205 -0
  235. mat3ra/esse/models/models_directory/gga.py +219 -0
  236. mat3ra/esse/models/models_directory/gw.py +272 -0
  237. mat3ra/esse/models/models_directory/hybrid.py +213 -0
  238. mat3ra/esse/models/models_directory/lda.py +218 -0
  239. mat3ra/esse/models/models_directory/legacy/__init__.py +3 -0
  240. mat3ra/esse/models/models_directory/legacy/dft.py +170 -0
  241. mat3ra/esse/models/models_directory/legacy/ml.py +52 -0
  242. mat3ra/esse/models/models_directory/legacy/unknown.py +52 -0
  243. mat3ra/esse/models/models_directory/mgga.py +218 -0
  244. mat3ra/esse/models/models_directory/re.py +160 -0
  245. mat3ra/esse/models/project.py +82 -0
  246. mat3ra/esse/models/properties_directory/__init__.py +3 -0
  247. mat3ra/esse/models/properties_directory/derived_properties.py +140 -0
  248. mat3ra/esse/models/properties_directory/electronic_configuration.py +20 -0
  249. mat3ra/esse/models/properties_directory/elemental/__init__.py +3 -0
  250. mat3ra/esse/models/properties_directory/elemental/atomic_radius.py +34 -0
  251. mat3ra/esse/models/properties_directory/elemental/electronegativity.py +19 -0
  252. mat3ra/esse/models/properties_directory/elemental/ionization_potential.py +30 -0
  253. mat3ra/esse/models/properties_directory/non_scalar/__init__.py +3 -0
  254. mat3ra/esse/models/properties_directory/non_scalar/average_potential_profile.py +83 -0
  255. mat3ra/esse/models/properties_directory/non_scalar/band_gaps.py +64 -0
  256. mat3ra/esse/models/properties_directory/non_scalar/band_structure.py +92 -0
  257. mat3ra/esse/models/properties_directory/non_scalar/charge_density_profile.py +63 -0
  258. mat3ra/esse/models/properties_directory/non_scalar/density_of_states.py +97 -0
  259. mat3ra/esse/models/properties_directory/non_scalar/dielectric_tensor.py +40 -0
  260. mat3ra/esse/models/properties_directory/non_scalar/file_content.py +64 -0
  261. mat3ra/esse/models/properties_directory/non_scalar/hubbard_u.py +40 -0
  262. mat3ra/esse/models/properties_directory/non_scalar/hubbard_v.py +54 -0
  263. mat3ra/esse/models/properties_directory/non_scalar/hubbard_v_nn.py +54 -0
  264. mat3ra/esse/models/properties_directory/non_scalar/phonon_dispersions.py +79 -0
  265. mat3ra/esse/models/properties_directory/non_scalar/phonon_dos.py +71 -0
  266. mat3ra/esse/models/properties_directory/non_scalar/potential_profile.py +69 -0
  267. mat3ra/esse/models/properties_directory/non_scalar/reaction_energy_profile.py +69 -0
  268. mat3ra/esse/models/properties_directory/non_scalar/stress_tensor.py +31 -0
  269. mat3ra/esse/models/properties_directory/non_scalar/total_energy_contributions.py +198 -0
  270. mat3ra/esse/models/properties_directory/non_scalar/vibrational_spectrum.py +75 -0
  271. mat3ra/esse/models/properties_directory/scalar/__init__.py +3 -0
  272. mat3ra/esse/models/properties_directory/scalar/electron_affinity.py +34 -0
  273. mat3ra/esse/models/properties_directory/scalar/fermi_energy.py +34 -0
  274. mat3ra/esse/models/properties_directory/scalar/formation_energy.py +34 -0
  275. mat3ra/esse/models/properties_directory/scalar/ionization_potential.py +34 -0
  276. mat3ra/esse/models/properties_directory/scalar/pressure.py +25 -0
  277. mat3ra/esse/models/properties_directory/scalar/reaction_energy_barrier.py +34 -0
  278. mat3ra/esse/models/properties_directory/scalar/surface_energy.py +34 -0
  279. mat3ra/esse/models/properties_directory/scalar/total_energy.py +34 -0
  280. mat3ra/esse/models/properties_directory/scalar/total_force.py +29 -0
  281. mat3ra/esse/models/properties_directory/scalar/valence_band_offset.py +34 -0
  282. mat3ra/esse/models/properties_directory/scalar/zero_point_energy.py +34 -0
  283. mat3ra/esse/models/properties_directory/structural/__init__.py +3 -0
  284. mat3ra/esse/models/properties_directory/structural/atomic_forces.py +40 -0
  285. mat3ra/esse/models/properties_directory/structural/basis/__init__.py +68 -0
  286. mat3ra/esse/models/properties_directory/structural/basis/atomic_constraints.py +30 -0
  287. mat3ra/esse/models/properties_directory/structural/basis/atomic_coordinate.py +14 -0
  288. mat3ra/esse/models/properties_directory/structural/basis/atomic_coordinates.py +39 -0
  289. mat3ra/esse/models/properties_directory/structural/basis/atomic_element.py +19 -0
  290. mat3ra/esse/models/properties_directory/structural/basis/bonds.py +40 -0
  291. mat3ra/esse/models/properties_directory/structural/density.py +24 -0
  292. mat3ra/esse/models/properties_directory/structural/elemental_ratio.py +23 -0
  293. mat3ra/esse/models/properties_directory/structural/inchi.py +19 -0
  294. mat3ra/esse/models/properties_directory/structural/inchi_key.py +19 -0
  295. mat3ra/esse/models/properties_directory/structural/lattice/__init__.py +102 -0
  296. mat3ra/esse/models/properties_directory/structural/lattice/lattice_bravais.py +71 -0
  297. mat3ra/esse/models/properties_directory/structural/lattice/lattice_vectors.py +35 -0
  298. mat3ra/esse/models/properties_directory/structural/lattice/type_enum.py +24 -0
  299. mat3ra/esse/models/properties_directory/structural/lattice/type_extended_enum.py +34 -0
  300. mat3ra/esse/models/properties_directory/structural/magnetic_moments.py +35 -0
  301. mat3ra/esse/models/properties_directory/structural/molecular_pattern.py +70 -0
  302. mat3ra/esse/models/properties_directory/structural/p_norm.py +23 -0
  303. mat3ra/esse/models/properties_directory/structural/patterns/__init__.py +3 -0
  304. mat3ra/esse/models/properties_directory/structural/patterns/functional_group.py +37 -0
  305. mat3ra/esse/models/properties_directory/structural/patterns/ring.py +34 -0
  306. mat3ra/esse/models/properties_directory/structural/patterns/special_bond.py +33 -0
  307. mat3ra/esse/models/properties_directory/structural/symmetry.py +39 -0
  308. mat3ra/esse/models/properties_directory/structural/volume.py +24 -0
  309. mat3ra/esse/models/properties_directory/workflow/convergence/__init__.py +3 -0
  310. mat3ra/esse/models/properties_directory/workflow/convergence/electronic.py +26 -0
  311. mat3ra/esse/models/properties_directory/workflow/convergence/ionic.py +63 -0
  312. mat3ra/esse/models/properties_directory/workflow/convergence/kpoint.py +43 -0
  313. mat3ra/esse/models/property/__init__.py +3 -0
  314. mat3ra/esse/models/property/base/The_source_of_a_property/__init__.py +5 -0
  315. mat3ra/esse/models/property/base/The_source_of_a_property/field_This_could_be_an_article__a_simulation_on_Exabyte__an_external_simulation__etc.py +38 -0
  316. mat3ra/esse/models/property/base/__init__.py +232 -0
  317. mat3ra/esse/models/property/meta/The_source_of_a_property/__init__.py +5 -0
  318. mat3ra/esse/models/property/meta/The_source_of_a_property/field_This_could_be_an_article__a_simulation_on_Exabyte__an_external_simulation__etc.py +38 -0
  319. mat3ra/esse/models/property/meta/__init__.py +232 -0
  320. mat3ra/esse/models/property/raw/The_source_of_a_property/__init__.py +5 -0
  321. mat3ra/esse/models/property/raw/The_source_of_a_property/field_This_could_be_an_article__a_simulation_on_Exabyte__an_external_simulation__etc.py +38 -0
  322. mat3ra/esse/models/property/raw/__init__.py +232 -0
  323. mat3ra/esse/models/property/source/The_source_of_a_property/__init__.py +5 -0
  324. mat3ra/esse/models/property/source/The_source_of_a_property/field_This_could_be_an_article__a_simulation_on_Exabyte__an_external_simulation__etc.py +38 -0
  325. mat3ra/esse/models/property/source/__init__.py +150 -0
  326. mat3ra/esse/models/software/__init__.py +3 -0
  327. mat3ra/esse/models/software/application.py +93 -0
  328. mat3ra/esse/models/software/executable.py +97 -0
  329. mat3ra/esse/models/software/flavor.py +116 -0
  330. mat3ra/esse/models/software/template.py +77 -0
  331. mat3ra/esse/models/software_directory/ml/__init__.py +3 -0
  332. mat3ra/esse/models/software_directory/ml/exabyteml.py +28 -0
  333. mat3ra/esse/models/software_directory/ml/unit/__init__.py +3 -0
  334. mat3ra/esse/models/software_directory/ml/unit/execution/__init__.py +1348 -0
  335. mat3ra/esse/models/software_directory/ml/unit/execution/evaluate/__init__.py +5 -0
  336. mat3ra/esse/models/software_directory/ml/unit/execution/evaluate/cross_validate.py +381 -0
  337. mat3ra/esse/models/software_directory/ml/unit/execution/initialize.py +381 -0
  338. mat3ra/esse/models/software_directory/ml/unit/execution/score.py +374 -0
  339. mat3ra/esse/models/software_directory/ml/unit/execution/train.py +385 -0
  340. mat3ra/esse/models/software_directory/ml/unit/processing/__init__.py +328 -0
  341. mat3ra/esse/models/software_directory/ml/unit/processing/data_transformation/__init__.py +199 -0
  342. mat3ra/esse/models/software_directory/ml/unit/processing/data_transformation/manipulation.py +176 -0
  343. mat3ra/esse/models/software_directory/ml/unit/processing/data_transformation/scale_and_reduce.py +195 -0
  344. mat3ra/esse/models/software_directory/ml/unit/processing/feature_selection/__init__.py +180 -0
  345. mat3ra/esse/models/software_directory/ml/unit/processing/feature_selection/filter_based.py +176 -0
  346. mat3ra/esse/models/software_directory/modeling/__init__.py +3 -0
  347. mat3ra/esse/models/software_directory/modeling/deepmd.py +112 -0
  348. mat3ra/esse/models/software_directory/modeling/espresso/__init__.py +39 -0
  349. mat3ra/esse/models/software_directory/modeling/espresso/arguments.py +35 -0
  350. mat3ra/esse/models/software_directory/modeling/nwchem.py +113 -0
  351. mat3ra/esse/models/software_directory/modeling/unit/__init__.py +3 -0
  352. mat3ra/esse/models/software_directory/modeling/unit/execution.py +390 -0
  353. mat3ra/esse/models/software_directory/modeling/vasp.py +117 -0
  354. mat3ra/esse/models/software_directory/scripting/__init__.py +3 -0
  355. mat3ra/esse/models/software_directory/scripting/jupyter_lab.py +115 -0
  356. mat3ra/esse/models/software_directory/scripting/python.py +129 -0
  357. mat3ra/esse/models/software_directory/scripting/shell.py +129 -0
  358. mat3ra/esse/models/software_directory/scripting/unit/__init__.py +3 -0
  359. mat3ra/esse/models/software_directory/scripting/unit/execution.py +390 -0
  360. mat3ra/esse/models/system/__init__.py +3 -0
  361. mat3ra/esse/models/system/_material.py +29 -0
  362. mat3ra/esse/models/system/_parent_job.py +29 -0
  363. mat3ra/esse/models/system/_project.py +29 -0
  364. mat3ra/esse/models/system/bankable.py +20 -0
  365. mat3ra/esse/models/system/consistency_check.py +40 -0
  366. mat3ra/esse/models/system/creator.py +29 -0
  367. mat3ra/esse/models/system/creator_account.py +28 -0
  368. mat3ra/esse/models/system/database_source.py +36 -0
  369. mat3ra/esse/models/system/defaultable.py +16 -0
  370. mat3ra/esse/models/system/description.py +17 -0
  371. mat3ra/esse/models/system/entity_reference.py +24 -0
  372. mat3ra/esse/models/system/file_source.py +28 -0
  373. mat3ra/esse/models/system/history.py +18 -0
  374. mat3ra/esse/models/system/iframe_message.py +36 -0
  375. mat3ra/esse/models/system/in_set.py +30 -0
  376. mat3ra/esse/models/system/is_multi_material.py +13 -0
  377. mat3ra/esse/models/system/is_outdated.py +13 -0
  378. mat3ra/esse/models/system/job_extended.py +36 -0
  379. mat3ra/esse/models/system/message.py +59 -0
  380. mat3ra/esse/models/system/metadata.py +13 -0
  381. mat3ra/esse/models/system/name.py +16 -0
  382. mat3ra/esse/models/system/owner.py +29 -0
  383. mat3ra/esse/models/system/path.py +16 -0
  384. mat3ra/esse/models/system/path_entity.py +20 -0
  385. mat3ra/esse/models/system/schema_version.py +16 -0
  386. mat3ra/esse/models/system/scope.py +13 -0
  387. mat3ra/esse/models/system/set.py +15 -0
  388. mat3ra/esse/models/system/sharing.py +13 -0
  389. mat3ra/esse/models/system/soft_removable.py +20 -0
  390. mat3ra/esse/models/system/status.py +20 -0
  391. mat3ra/esse/models/system/tags.py +16 -0
  392. mat3ra/esse/models/system/timestampable.py +22 -0
  393. mat3ra/esse/models/system/use_values.py +13 -0
  394. mat3ra/esse/models/third_party/db/nist_jarvis/2024.3.13/__init__.py +3 -0
  395. mat3ra/esse/models/third_party/db/nist_jarvis/2024.3.13/atoms.py +41 -0
  396. mat3ra/esse/models/third_party/db/nist_jarvis/2024.3.13/db_entry.py +55 -0
  397. mat3ra/esse/models/third_party/file/applications/espresso/7.2/__init__.py +3 -0
  398. mat3ra/esse/models/third_party/file/applications/espresso/7.2/pw.x/__init__.py +1990 -0
  399. mat3ra/esse/models/third_party/file/applications/espresso/7.2/pw.x/atomic_positions.py +51 -0
  400. mat3ra/esse/models/third_party/file/applications/espresso/7.2/pw.x/atomic_species.py +34 -0
  401. mat3ra/esse/models/third_party/file/applications/espresso/7.2/pw.x/cell.py +111 -0
  402. mat3ra/esse/models/third_party/file/applications/espresso/7.2/pw.x/cell_parameters.py +36 -0
  403. mat3ra/esse/models/third_party/file/applications/espresso/7.2/pw.x/control.py +169 -0
  404. mat3ra/esse/models/third_party/file/applications/espresso/7.2/pw.x/electrons.py +139 -0
  405. mat3ra/esse/models/third_party/file/applications/espresso/7.2/pw.x/hubbard.py +194 -0
  406. mat3ra/esse/models/third_party/file/applications/espresso/7.2/pw.x/ions.py +422 -0
  407. mat3ra/esse/models/third_party/file/applications/espresso/7.2/pw.x/k_points.py +73 -0
  408. mat3ra/esse/models/third_party/file/applications/espresso/7.2/pw.x/system.py +841 -0
  409. mat3ra/esse/models/workflow/__init__.py +2817 -0
  410. mat3ra/esse/models/workflow/base.py +79 -0
  411. mat3ra/esse/models/workflow/base_flow.py +180 -0
  412. mat3ra/esse/models/workflow/scope.py +14 -0
  413. mat3ra/esse/models/workflow/subworkflow/__init__.py +1472 -0
  414. mat3ra/esse/models/workflow/subworkflow/unit.py +1187 -0
  415. mat3ra/esse/models/workflow/unit/__init__.py +1415 -0
  416. mat3ra/esse/models/workflow/unit/assertion.py +149 -0
  417. mat3ra/esse/models/workflow/unit/assignment.py +165 -0
  418. mat3ra/esse/models/workflow/unit/base.py +137 -0
  419. mat3ra/esse/models/workflow/unit/condition.py +176 -0
  420. mat3ra/esse/models/workflow/unit/execution.py +374 -0
  421. mat3ra/esse/models/workflow/unit/input/__init__.py +3 -0
  422. mat3ra/esse/models/workflow/unit/input/_input.py +43 -0
  423. mat3ra/esse/models/workflow/unit/input/_inputItem.py +18 -0
  424. mat3ra/esse/models/workflow/unit/input/_inputItemId.py +21 -0
  425. mat3ra/esse/models/workflow/unit/input/_inputItemScope.py +18 -0
  426. mat3ra/esse/models/workflow/unit/input/_map_input/__init__.py +17 -0
  427. mat3ra/esse/models/workflow/unit/input/_map_input/values.py +13 -0
  428. mat3ra/esse/models/workflow/unit/io/__init__.py +254 -0
  429. mat3ra/esse/models/workflow/unit/io/api.py +27 -0
  430. mat3ra/esse/models/workflow/unit/io/db.py +39 -0
  431. mat3ra/esse/models/workflow/unit/io/object_storage.py +59 -0
  432. mat3ra/esse/models/workflow/unit/map.py +169 -0
  433. mat3ra/esse/models/workflow/unit/processing.py +153 -0
  434. mat3ra/esse/models/workflow/unit/reduce.py +160 -0
  435. mat3ra/esse/models/workflow/unit/runtime/__init__.py +3 -0
  436. mat3ra/esse/models/workflow/unit/runtime/_runtime_item_full_object.py +14 -0
  437. mat3ra/esse/models/workflow/unit/runtime/_runtime_item_name_object.py +14 -0
  438. mat3ra/esse/models/workflow/unit/runtime/_runtime_item_string.py +14 -0
  439. mat3ra/esse/models/workflow/unit/runtime/runtime_item.py +20 -0
  440. mat3ra/esse/models/workflow/unit/runtime/runtime_items.py +35 -0
  441. mat3ra/esse/models/workflow/unit/subworkflow.py +141 -0
  442. {mat3ra_esse-2024.4.8.post0.dist-info → mat3ra_esse-2024.4.8.post2.dist-info}/METADATA +1 -1
  443. mat3ra_esse-2024.4.8.post2.dist-info/RECORD +453 -0
  444. mat3ra_esse-2024.4.8.post0.dist-info/RECORD +0 -12
  445. {mat3ra_esse-2024.4.8.post0.dist-info → mat3ra_esse-2024.4.8.post2.dist-info}/LICENSE.md +0 -0
  446. {mat3ra_esse-2024.4.8.post0.dist-info → mat3ra_esse-2024.4.8.post2.dist-info}/WHEEL +0 -0
  447. {mat3ra_esse-2024.4.8.post0.dist-info → mat3ra_esse-2024.4.8.post2.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,21 @@
1
+ # generated by datamodel-codegen:
2
+ # filename: core/reusable/atomic_data/per_orbital.json
3
+ # version: 0.25.5
4
+
5
+ from __future__ import annotations
6
+
7
+ from typing import Optional
8
+
9
+ from pydantic import BaseModel, constr
10
+
11
+
12
+ class AtomicDataPerOrbital(BaseModel):
13
+ id: Optional[int] = None
14
+ """
15
+ Site number or index in the lattice
16
+ """
17
+ atomicSpecies: Optional[constr(pattern=r"^[a-zA-Z]{1,2}[\d+]?$")] = None
18
+ """
19
+ Example: Co1, Mn
20
+ """
21
+ orbitalName: Optional[constr(pattern=r"^[1-7][sSpPdDfF]$")] = None
@@ -0,0 +1,34 @@
1
+ # generated by datamodel-codegen:
2
+ # filename: core/reusable/atomic_data/per_orbital_pair.json
3
+ # version: 0.25.5
4
+
5
+ from __future__ import annotations
6
+
7
+ from typing import Optional
8
+
9
+ from pydantic import BaseModel, constr
10
+
11
+
12
+ class AtomicDataPerOrbitalPair(BaseModel):
13
+ id: Optional[int] = None
14
+ """
15
+ Site number or index in the lattice
16
+ """
17
+ id2: Optional[int] = None
18
+ """
19
+ Site number or index in the lattice of second site
20
+ """
21
+ atomicSpecies: Optional[constr(pattern=r"^[a-zA-Z]{1,2}[\d+]?$")] = None
22
+ """
23
+ Example: Co1, Mn
24
+ """
25
+ atomicSpecies2: Optional[constr(pattern=r"^[a-zA-Z]{1,2}[\d+]?$")] = None
26
+ """
27
+ Example: Co2, O
28
+ """
29
+ orbitalName: Optional[constr(pattern=r"^[1-7][sSpPdDfF]$")] = None
30
+ orbitalName2: Optional[constr(pattern=r"^[1-7][sSpPdDfF]$")] = None
31
+ distance: Optional[float] = None
32
+ """
33
+ Distance between two sites in Bohr.
34
+ """
@@ -0,0 +1,16 @@
1
+ # generated by datamodel-codegen:
2
+ # filename: core/reusable/atomic_data/value_number.json
3
+ # version: 0.25.5
4
+
5
+ from __future__ import annotations
6
+
7
+ from typing import Optional
8
+
9
+ from pydantic import BaseModel
10
+
11
+
12
+ class AtomicDataNumericProperties(BaseModel):
13
+ value: Optional[float] = None
14
+ """
15
+ Value related to a specific property, e.g., Hubbard U, V etc.
16
+ """
@@ -0,0 +1,16 @@
1
+ # generated by datamodel-codegen:
2
+ # filename: core/reusable/atomic_data/value_string.json
3
+ # version: 0.25.5
4
+
5
+ from __future__ import annotations
6
+
7
+ from typing import Optional
8
+
9
+ from pydantic import BaseModel
10
+
11
+
12
+ class AtomicDataStringProperties(BaseModel):
13
+ value: Optional[str] = None
14
+ """
15
+ String value specific to atomic data
16
+ """
@@ -0,0 +1,25 @@
1
+ # generated by datamodel-codegen:
2
+ # filename: core/reusable/atomic_data_per_orbital_numeric.json
3
+ # version: 0.25.5
4
+
5
+ from __future__ import annotations
6
+
7
+ from typing import Optional
8
+
9
+ from pydantic import BaseModel, constr
10
+
11
+
12
+ class AtomicDataPerOrbitalNumeric(BaseModel):
13
+ id: Optional[int] = None
14
+ """
15
+ Site number or index in the lattice
16
+ """
17
+ atomicSpecies: Optional[constr(pattern=r"^[a-zA-Z]{1,2}[\d+]?$")] = None
18
+ """
19
+ Example: Co1, Mn
20
+ """
21
+ orbitalName: Optional[constr(pattern=r"^[1-7][sSpPdDfF]$")] = None
22
+ value: Optional[float] = None
23
+ """
24
+ Value related to a specific property, e.g., Hubbard U, V etc.
25
+ """
@@ -0,0 +1,38 @@
1
+ # generated by datamodel-codegen:
2
+ # filename: core/reusable/atomic_data_per_orbital_pair_numeric.json
3
+ # version: 0.25.5
4
+
5
+ from __future__ import annotations
6
+
7
+ from typing import Optional
8
+
9
+ from pydantic import BaseModel, constr
10
+
11
+
12
+ class AtomicDataPerOrbitalPairNumeric(BaseModel):
13
+ id: Optional[int] = None
14
+ """
15
+ Site number or index in the lattice
16
+ """
17
+ id2: Optional[int] = None
18
+ """
19
+ Site number or index in the lattice of second site
20
+ """
21
+ atomicSpecies: Optional[constr(pattern=r"^[a-zA-Z]{1,2}[\d+]?$")] = None
22
+ """
23
+ Example: Co1, Mn
24
+ """
25
+ atomicSpecies2: Optional[constr(pattern=r"^[a-zA-Z]{1,2}[\d+]?$")] = None
26
+ """
27
+ Example: Co2, O
28
+ """
29
+ orbitalName: Optional[constr(pattern=r"^[1-7][sSpPdDfF]$")] = None
30
+ orbitalName2: Optional[constr(pattern=r"^[1-7][sSpPdDfF]$")] = None
31
+ distance: Optional[float] = None
32
+ """
33
+ Distance between two sites in Bohr.
34
+ """
35
+ value: Optional[float] = None
36
+ """
37
+ Value related to a specific property, e.g., Hubbard U, V etc.
38
+ """
@@ -0,0 +1,20 @@
1
+ # generated by datamodel-codegen:
2
+ # filename: core/reusable/atomic_orbital.json
3
+ # version: 0.25.5
4
+
5
+ from __future__ import annotations
6
+
7
+ from typing import Optional
8
+
9
+ from pydantic import BaseModel, confloat, conint, constr
10
+
11
+
12
+ class AtomicOrbitalSchema(BaseModel):
13
+ orbitalName: Optional[constr(pattern=r"^[1-7][sSpPdDfF]$")] = None
14
+ orbitalIndex: Optional[conint(ge=1)] = None
15
+ principalNumber: Optional[conint(ge=1, le=7)] = None
16
+ angularMomentum: Optional[conint(ge=0, le=3)] = None
17
+ occupation: Optional[confloat(ge=0.0, le=14.0)] = None
18
+ """
19
+ Shell occupation
20
+ """
@@ -0,0 +1,28 @@
1
+ # generated by datamodel-codegen:
2
+ # filename: core/reusable/atomic_scalars.json
3
+ # version: 0.25.5
4
+
5
+ from __future__ import annotations
6
+
7
+ from typing import List, Optional
8
+
9
+ from pydantic import BaseModel, Field, RootModel
10
+
11
+
12
+ class ScalarSchema(BaseModel):
13
+ value: float
14
+
15
+
16
+ class AtomicScalarsVectorsSchemaItem(BaseModel):
17
+ value: Optional[ScalarSchema] = Field(None, title="scalar schema")
18
+ id: Optional[int] = None
19
+ """
20
+ integer id of this entry
21
+ """
22
+
23
+
24
+ class AtomicScalarsVectorsSchema(RootModel[List[AtomicScalarsVectorsSchemaItem]]):
25
+ root: List[AtomicScalarsVectorsSchemaItem] = Field(..., title="atomic scalars vectors schema")
26
+ """
27
+ array of objects containing integer id each
28
+ """
@@ -0,0 +1,24 @@
1
+ # generated by datamodel-codegen:
2
+ # filename: core/reusable/atomic_strings.json
3
+ # version: 0.25.5
4
+
5
+ from __future__ import annotations
6
+
7
+ from typing import List, Optional
8
+
9
+ from pydantic import BaseModel, Field, RootModel
10
+
11
+
12
+ class AtomicStringsVectorsSchemaItem(BaseModel):
13
+ value: Optional[str] = None
14
+ id: Optional[int] = None
15
+ """
16
+ integer id of this entry
17
+ """
18
+
19
+
20
+ class AtomicStringsVectorsSchema(RootModel[List[AtomicStringsVectorsSchemaItem]]):
21
+ root: List[AtomicStringsVectorsSchemaItem] = Field(..., title="atomic strings vectors schema")
22
+ """
23
+ array of objects containing integer id each
24
+ """
@@ -0,0 +1,24 @@
1
+ # generated by datamodel-codegen:
2
+ # filename: core/reusable/atomic_vectors.json
3
+ # version: 0.25.5
4
+
5
+ from __future__ import annotations
6
+
7
+ from typing import List, Optional, Union
8
+
9
+ from pydantic import BaseModel, Field, RootModel
10
+
11
+
12
+ class AtomicVectorsSchemaItem(BaseModel):
13
+ value: Optional[Union[List[float], List[bool]]] = Field(None, title="vector schema")
14
+ id: Optional[int] = None
15
+ """
16
+ integer id of this entry
17
+ """
18
+
19
+
20
+ class AtomicVectorsSchema(RootModel[List[AtomicVectorsSchemaItem]]):
21
+ root: List[AtomicVectorsSchemaItem] = Field(..., title="atomic vectors schema")
22
+ """
23
+ array of objects containing integer id each
24
+ """
@@ -0,0 +1,42 @@
1
+ # generated by datamodel-codegen:
2
+ # filename: core/reusable/band_gap.json
3
+ # version: 0.25.5
4
+
5
+ from __future__ import annotations
6
+
7
+ from enum import Enum
8
+ from typing import List, Optional
9
+
10
+ from pydantic import BaseModel, Field
11
+
12
+
13
+ class Type(Enum):
14
+ direct = "direct"
15
+ indirect = "indirect"
16
+
17
+
18
+ class Units(Enum):
19
+ kJ_mol = "kJ/mol"
20
+ eV = "eV"
21
+ J_mol = "J/mol"
22
+ hartree = "hartree"
23
+ cm_1 = "cm-1"
24
+ rydberg = "rydberg"
25
+ eV_atom = "eV/atom"
26
+
27
+
28
+ class BandGapSchema(BaseModel):
29
+ kpointConduction: Optional[List[float]] = Field(None, max_length=3, min_length=3, title="point schema")
30
+ kpointValence: Optional[List[float]] = Field(None, max_length=3, min_length=3, title="point schema")
31
+ eigenvalueConduction: Optional[float] = None
32
+ """
33
+ eigenvalue at k-point in conduction band
34
+ """
35
+ eigenvalueValence: Optional[float] = None
36
+ """
37
+ eigenvalue at k-point in valence band
38
+ """
39
+ spin: Optional[float] = None
40
+ type: Type
41
+ units: Optional[Units] = None
42
+ value: float
@@ -0,0 +1,43 @@
1
+ # generated by datamodel-codegen:
2
+ # filename: core/reusable/categories.json
3
+ # version: 0.25.5
4
+
5
+ from __future__ import annotations
6
+
7
+ from typing import Optional, Union
8
+
9
+ from pydantic import BaseModel, Field
10
+
11
+
12
+ class SlugifiedEntry(BaseModel):
13
+ name: str
14
+ """
15
+ descriptive human-readable name of entry
16
+ """
17
+ slug: str
18
+ """
19
+ machine-readable identifier
20
+ """
21
+
22
+
23
+ class ReusableCategoriesSchema(BaseModel):
24
+ tier1: Optional[Union[SlugifiedEntry, str]] = Field(None, title="slugified entry or slug")
25
+ """
26
+ contains either object with slugified entry or slug only as a string
27
+ """
28
+ tier2: Optional[Union[SlugifiedEntry, str]] = Field(None, title="slugified entry or slug")
29
+ """
30
+ contains either object with slugified entry or slug only as a string
31
+ """
32
+ tier3: Optional[Union[SlugifiedEntry, str]] = Field(None, title="slugified entry or slug")
33
+ """
34
+ contains either object with slugified entry or slug only as a string
35
+ """
36
+ type: Optional[Union[SlugifiedEntry, str]] = Field(None, title="slugified entry or slug")
37
+ """
38
+ contains either object with slugified entry or slug only as a string
39
+ """
40
+ subtype: Optional[Union[SlugifiedEntry, str]] = Field(None, title="slugified entry or slug")
41
+ """
42
+ contains either object with slugified entry or slug only as a string
43
+ """
@@ -0,0 +1,14 @@
1
+ # generated by datamodel-codegen:
2
+ # filename: core/reusable/category_path.json
3
+ # version: 0.25.5
4
+
5
+ from __future__ import annotations
6
+
7
+ from pydantic import Field, RootModel
8
+
9
+
10
+ class CategoryPathSchema(RootModel[str]):
11
+ root: str = Field(..., title="category path schema")
12
+ """
13
+ TODO: Use regex once schema draft version has been updated
14
+ """
@@ -0,0 +1,31 @@
1
+ # generated by datamodel-codegen:
2
+ # filename: core/reusable/dielectric_tensor_component.json
3
+ # version: 0.25.5
4
+
5
+ from __future__ import annotations
6
+
7
+ from enum import Enum
8
+ from typing import List, Optional
9
+
10
+ from pydantic import BaseModel
11
+
12
+
13
+ class Part(Enum):
14
+ real = "real"
15
+ imaginary = "imaginary"
16
+
17
+
18
+ class DielectricTensor(BaseModel):
19
+ part: Part
20
+ """
21
+ Real or imaginary part of the dielectric tensor component
22
+ """
23
+ spin: Optional[float] = None
24
+ frequencies: List[float]
25
+ """
26
+ Frequencies
27
+ """
28
+ components: List[List[float]]
29
+ """
30
+ Matrix with 3 columns, e.g. x, y, z
31
+ """
@@ -0,0 +1,30 @@
1
+ # generated by datamodel-codegen:
2
+ # filename: core/reusable/energy.json
3
+ # version: 0.25.5
4
+
5
+ from __future__ import annotations
6
+
7
+ from enum import Enum
8
+ from typing import Union
9
+
10
+ from pydantic import BaseModel
11
+
12
+
13
+ class Units(Enum):
14
+ kJ_mol = "kJ/mol"
15
+ eV = "eV"
16
+ J_mol = "J/mol"
17
+ hartree = "hartree"
18
+ cm_1 = "cm-1"
19
+ rydberg = "rydberg"
20
+ eV_atom = "eV/atom"
21
+
22
+
23
+ class Units22(Enum):
24
+ eV_A_2 = "eV/A^2"
25
+
26
+
27
+ class EnergySchema(BaseModel):
28
+ name: str
29
+ units: Union[Units, Units22]
30
+ value: float
@@ -0,0 +1,24 @@
1
+ # generated by datamodel-codegen:
2
+ # filename: core/reusable/file_metadata.json
3
+ # version: 0.25.5
4
+
5
+ from __future__ import annotations
6
+
7
+ from typing import Optional
8
+
9
+ from pydantic import BaseModel
10
+
11
+
12
+ class FileMetadata(BaseModel):
13
+ pathname: Optional[str] = None
14
+ """
15
+ Relative path to the directory that contains the file.
16
+ """
17
+ basename: Optional[str] = None
18
+ """
19
+ Basename of the file
20
+ """
21
+ filetype: Optional[str] = None
22
+ """
23
+ What kind of file this is, e.g. image / text
24
+ """
@@ -0,0 +1,20 @@
1
+ # generated by datamodel-codegen:
2
+ # filename: core/reusable/frequency_function_matrix.json
3
+ # version: 0.25.5
4
+
5
+ from __future__ import annotations
6
+
7
+ from typing import List, Optional
8
+
9
+ from pydantic import BaseModel
10
+
11
+
12
+ class ESSE(BaseModel):
13
+ frequencies: Optional[List[float]] = None
14
+ """
15
+ Frequencies
16
+ """
17
+ components: Optional[List[List[float]]] = None
18
+ """
19
+ Matrix with 3 columns, e.g. x, y, z
20
+ """
@@ -0,0 +1,36 @@
1
+ # generated by datamodel-codegen:
2
+ # filename: core/reusable/object_storage_container_data.json
3
+ # version: 0.25.5
4
+
5
+ from __future__ import annotations
6
+
7
+ from typing import Optional
8
+
9
+ from pydantic import BaseModel
10
+
11
+
12
+ class ObjectStorageContainerData(BaseModel):
13
+ CONTAINER: Optional[str] = None
14
+ """
15
+ Object storage container for the file
16
+ """
17
+ NAME: Optional[str] = None
18
+ """
19
+ Name of the file inside the object storage bucket
20
+ """
21
+ PROVIDER: Optional[str] = None
22
+ """
23
+ Object storage provider
24
+ """
25
+ REGION: Optional[str] = None
26
+ """
27
+ Region for the object container specified in Container
28
+ """
29
+ SIZE: Optional[int] = None
30
+ """
31
+ Size of the file in bytes
32
+ """
33
+ TIMESTAMP: Optional[str] = None
34
+ """
35
+ Unix timestamp showing when the file was last modified
36
+ """
@@ -0,0 +1,3 @@
1
+ # generated by datamodel-codegen:
2
+ # filename: schema
3
+ # version: 0.25.5
@@ -0,0 +1,13 @@
1
+ # generated by datamodel-codegen:
2
+ # filename: definitions/units.json
3
+ # version: 0.25.5
4
+
5
+ from __future__ import annotations
6
+
7
+ from typing import Any
8
+
9
+ from pydantic import RootModel
10
+
11
+
12
+ class ESSE(RootModel[Any]):
13
+ root: Any
@@ -0,0 +1,74 @@
1
+ # generated by datamodel-codegen:
2
+ # filename: element.json
3
+ # version: 0.25.5
4
+
5
+ from __future__ import annotations
6
+
7
+ from enum import Enum
8
+ from typing import List, Optional, Union
9
+
10
+ from pydantic import BaseModel
11
+
12
+
13
+ class Name(Enum):
14
+ atomic_radius = "atomic_radius"
15
+
16
+
17
+ class Units(Enum):
18
+ km = "km"
19
+ m = "m"
20
+ pm = "pm"
21
+ nm = "nm"
22
+ angstrom = "angstrom"
23
+ a_u_ = "a.u."
24
+ bohr = "bohr"
25
+ fractional = "fractional"
26
+ crystal = "crystal"
27
+ cartesian = "cartesian"
28
+ alat = "alat"
29
+
30
+
31
+ class AtomicRadius(BaseModel):
32
+ name: Optional[Name] = None
33
+ units: Optional[Units] = None
34
+ value: float
35
+
36
+
37
+ class Name40(Enum):
38
+ electronegativity = "electronegativity"
39
+
40
+
41
+ class Electronegativity(BaseModel):
42
+ name: Optional[Name40] = None
43
+ value: float
44
+
45
+
46
+ class Name41(Enum):
47
+ ionization_potential = "ionization_potential"
48
+
49
+
50
+ class Units20(Enum):
51
+ kJ_mol = "kJ/mol"
52
+ eV = "eV"
53
+ J_mol = "J/mol"
54
+ hartree = "hartree"
55
+ cm_1 = "cm-1"
56
+ rydberg = "rydberg"
57
+ eV_atom = "eV/atom"
58
+
59
+
60
+ class IonizationPotential(BaseModel):
61
+ name: Optional[Name41] = None
62
+ units: Optional[Units20] = None
63
+ value: float
64
+
65
+
66
+ class ElementSchema(BaseModel):
67
+ symbol: Optional[str] = None
68
+ """
69
+ Element symbol.
70
+ """
71
+ properties: Optional[List[Union[AtomicRadius, Electronegativity, IonizationPotential]]] = None
72
+ """
73
+ list of elemental properties
74
+ """
@@ -0,0 +1,3 @@
1
+ # generated by datamodel-codegen:
2
+ # filename: schema
3
+ # version: 0.25.5
@@ -0,0 +1,58 @@
1
+ # generated by datamodel-codegen:
2
+ # filename: in_memory_entity/base.json
3
+ # version: 0.25.5
4
+
5
+ from __future__ import annotations
6
+
7
+ from enum import Enum
8
+ from typing import List, Optional
9
+
10
+ from pydantic import BaseModel, Field
11
+
12
+
13
+ class Name(Enum):
14
+ default = "default"
15
+ atomsTooClose = "atomsTooClose"
16
+ atomsOverlap = "atomsOverlap"
17
+
18
+
19
+ class Severity(Enum):
20
+ info = "info"
21
+ warning = "warning"
22
+ error = "error"
23
+
24
+
25
+ class ConsistencyCheck(BaseModel):
26
+ key: str
27
+ """
28
+ Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'
29
+ """
30
+ name: Name
31
+ """
32
+ Name of the consistency check that is performed, which is listed in an enum.
33
+ """
34
+ severity: Severity
35
+ """
36
+ Severity level of the problem, which is used in UI to differentiate.
37
+ """
38
+ message: str
39
+ """
40
+ Message generated by the consistency check describing the problem.
41
+ """
42
+
43
+
44
+ class BaseInMemoryEntitySchema(BaseModel):
45
+ field_id: Optional[str] = Field(None, alias="_id")
46
+ """
47
+ entity identity
48
+ """
49
+ slug: Optional[str] = None
50
+ """
51
+ entity slug
52
+ """
53
+ systemName: Optional[str] = None
54
+ consistencyChecks: Optional[List[ConsistencyCheck]] = None
55
+ schemaVersion: Optional[str] = "2022.8.16"
56
+ """
57
+ entity's schema version. Used to distinct between different schemas.
58
+ """