mat3ra-esse 2024.4.8.post1__py3-none-any.whl → 2024.4.8.post3__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.
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.post1.dist-info → mat3ra_esse-2024.4.8.post3.dist-info}/METADATA +3 -1
  443. mat3ra_esse-2024.4.8.post3.dist-info/RECORD +453 -0
  444. mat3ra_esse-2024.4.8.post1.dist-info/RECORD +0 -12
  445. {mat3ra_esse-2024.4.8.post1.dist-info → mat3ra_esse-2024.4.8.post3.dist-info}/LICENSE.md +0 -0
  446. {mat3ra_esse-2024.4.8.post1.dist-info → mat3ra_esse-2024.4.8.post3.dist-info}/WHEEL +0 -0
  447. {mat3ra_esse-2024.4.8.post1.dist-info → mat3ra_esse-2024.4.8.post3.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,63 @@
1
+ # generated by datamodel-codegen:
2
+ # filename: methods_category/physical/qm/wf/smearing.json
3
+ # version: 0.25.5
4
+
5
+ from __future__ import annotations
6
+
7
+ from enum import Enum
8
+ from typing import Optional, Union
9
+
10
+ from pydantic import BaseModel, Field
11
+
12
+
13
+ class SlugifiedEntry(BaseModel):
14
+ name: str
15
+ """
16
+ descriptive human-readable name of entry
17
+ """
18
+ slug: str
19
+ """
20
+ machine-readable identifier
21
+ """
22
+
23
+
24
+ class SlugifiedEntryOrSlug(Enum):
25
+ smearing = "smearing"
26
+
27
+
28
+ class SlugifiedEntryOrSlug247(Enum):
29
+ gaussian = "gaussian"
30
+ marzari_vanderbilt = "marzari-vanderbilt"
31
+ methfessel_paxton = "methfessel-paxton"
32
+ fermi_dirac = "fermi-dirac"
33
+
34
+
35
+ class SlugifiedEntryOrSlug248(Enum):
36
+ wf = "wf"
37
+
38
+
39
+ class SlugifiedEntryOrSlug249(Enum):
40
+ qm = "qm"
41
+
42
+
43
+ class SmearingMethodsCategorySchema(BaseModel):
44
+ type: Optional[Union[SlugifiedEntry, SlugifiedEntryOrSlug]] = Field(None, title="slugified entry or slug")
45
+ """
46
+ contains either object with slugified entry or slug only as a string
47
+ """
48
+ subtype: Optional[Union[SlugifiedEntry, SlugifiedEntryOrSlug247]] = Field(None, title="slugified entry or slug")
49
+ """
50
+ contains either object with slugified entry or slug only as a string
51
+ """
52
+ tier2: Optional[Union[SlugifiedEntry, SlugifiedEntryOrSlug248]] = Field(None, title="slugified entry or slug")
53
+ """
54
+ contains either object with slugified entry or slug only as a string
55
+ """
56
+ tier1: Optional[Union[SlugifiedEntry, SlugifiedEntryOrSlug249]] = Field(None, title="slugified entry or slug")
57
+ """
58
+ contains either object with slugified entry or slug only as a string
59
+ """
60
+ tier3: Optional[Union[SlugifiedEntry, str]] = Field(None, title="slugified entry or slug")
61
+ """
62
+ contains either object with slugified entry or slug only as a string
63
+ """
@@ -0,0 +1,62 @@
1
+ # generated by datamodel-codegen:
2
+ # filename: methods_category/physical/qm/wf/tetrahedron.json
3
+ # version: 0.25.5
4
+
5
+ from __future__ import annotations
6
+
7
+ from enum import Enum
8
+ from typing import Optional, Union
9
+
10
+ from pydantic import BaseModel, Field
11
+
12
+
13
+ class SlugifiedEntry(BaseModel):
14
+ name: str
15
+ """
16
+ descriptive human-readable name of entry
17
+ """
18
+ slug: str
19
+ """
20
+ machine-readable identifier
21
+ """
22
+
23
+
24
+ class SlugifiedEntryOrSlug(Enum):
25
+ tetrahedron = "tetrahedron"
26
+
27
+
28
+ class SlugifiedEntryOrSlug265(Enum):
29
+ linear = "linear"
30
+ optimized = "optimized"
31
+ bloechl = "bloechl"
32
+
33
+
34
+ class SlugifiedEntryOrSlug266(Enum):
35
+ wf = "wf"
36
+
37
+
38
+ class SlugifiedEntryOrSlug267(Enum):
39
+ qm = "qm"
40
+
41
+
42
+ class TetrahedronMethodForBrillouinZoneIntegrationCategorySchema(BaseModel):
43
+ type: Optional[Union[SlugifiedEntry, SlugifiedEntryOrSlug]] = Field(None, title="slugified entry or slug")
44
+ """
45
+ contains either object with slugified entry or slug only as a string
46
+ """
47
+ subtype: Optional[Union[SlugifiedEntry, SlugifiedEntryOrSlug265]] = Field(None, title="slugified entry or slug")
48
+ """
49
+ contains either object with slugified entry or slug only as a string
50
+ """
51
+ tier2: Optional[Union[SlugifiedEntry, SlugifiedEntryOrSlug266]] = Field(None, title="slugified entry or slug")
52
+ """
53
+ contains either object with slugified entry or slug only as a string
54
+ """
55
+ tier1: Optional[Union[SlugifiedEntry, SlugifiedEntryOrSlug267]] = Field(None, title="slugified entry or slug")
56
+ """
57
+ contains either object with slugified entry or slug only as a string
58
+ """
59
+ tier3: Optional[Union[SlugifiedEntry, str]] = Field(None, title="slugified entry or slug")
60
+ """
61
+ contains either object with slugified entry or slug only as a string
62
+ """
@@ -0,0 +1,3 @@
1
+ # generated by datamodel-codegen:
2
+ # filename: schema
3
+ # version: 0.25.5
@@ -0,0 +1,37 @@
1
+ # generated by datamodel-codegen:
2
+ # filename: methods_directory/legacy/localorbital.json
3
+ # version: 0.25.5
4
+
5
+ from __future__ import annotations
6
+
7
+ from enum import Enum
8
+ from typing import Any, Dict, Optional
9
+
10
+ from pydantic import BaseModel
11
+
12
+
13
+ class Type(Enum):
14
+ localorbital = "localorbital"
15
+
16
+
17
+ class Subtype(Enum):
18
+ pople = "pople"
19
+
20
+
21
+ class LegacyMethodLocalorbital(BaseModel):
22
+ type: Type
23
+ """
24
+ general type of this method, eg. `pseudopotential`
25
+ """
26
+ subtype: Subtype
27
+ """
28
+ general subtype of this method, eg. `ultra-soft`
29
+ """
30
+ precision: Optional[Dict[str, Any]] = None
31
+ """
32
+ Object showing the actual possible precision based on theory and implementation
33
+ """
34
+ data: Optional[Dict[str, Any]] = None
35
+ """
36
+ additional data specific to method, eg. array of pseudopotentials
37
+ """
@@ -0,0 +1,40 @@
1
+ # generated by datamodel-codegen:
2
+ # filename: methods_directory/legacy/pseudopotential.json
3
+ # version: 0.25.5
4
+
5
+ from __future__ import annotations
6
+
7
+ from enum import Enum
8
+ from typing import Any, Dict, Optional
9
+
10
+ from pydantic import BaseModel
11
+
12
+
13
+ class Type(Enum):
14
+ pseudopotential = "pseudopotential"
15
+
16
+
17
+ class Subtype(Enum):
18
+ paw = "paw"
19
+ nc = "nc"
20
+ us = "us"
21
+ any = "any"
22
+
23
+
24
+ class LegacyMethodPseudopotential(BaseModel):
25
+ type: Type
26
+ """
27
+ general type of this method, eg. `pseudopotential`
28
+ """
29
+ subtype: Subtype
30
+ """
31
+ general subtype of this method, eg. `ultra-soft`
32
+ """
33
+ precision: Optional[Dict[str, Any]] = None
34
+ """
35
+ Object showing the actual possible precision based on theory and implementation
36
+ """
37
+ data: Optional[Dict[str, Any]] = None
38
+ """
39
+ additional data specific to method, eg. array of pseudopotentials
40
+ """
@@ -0,0 +1,118 @@
1
+ # generated by datamodel-codegen:
2
+ # filename: methods_directory/legacy/regression.json
3
+ # version: 0.25.5
4
+
5
+ from __future__ import annotations
6
+
7
+ from enum import Enum
8
+ from typing import Any, List, Optional, Union
9
+
10
+ from pydantic import BaseModel, Field
11
+
12
+
13
+ class Type(Enum):
14
+ linear = "linear"
15
+ kernel_ridge = "kernel_ridge"
16
+
17
+
18
+ class Subtype(Enum):
19
+ least_squares = "least_squares"
20
+ ridge = "ridge"
21
+
22
+
23
+ class RegressionPrecisionPerPropertySchema(BaseModel):
24
+ name: Optional[str] = None
25
+ """
26
+ property name in 'flattened' format
27
+ """
28
+ trainingError: float
29
+ """
30
+ training error of the estimator
31
+ """
32
+ score: Optional[float] = None
33
+ """
34
+ prediction score of the estimator. Eg: r2_score
35
+ """
36
+
37
+
38
+ class RegressionPrecision(BaseModel):
39
+ perProperty: Optional[List[RegressionPrecisionPerPropertySchema]] = None
40
+
41
+
42
+ class PerFeaturePropertyUsedForTrainingTheMLMethodModelParametersSchema(BaseModel):
43
+ coefficient: Optional[float] = None
44
+ """
45
+ coefficient in linear regression
46
+ """
47
+ name: str
48
+ """
49
+ feature name
50
+ """
51
+ importance: Optional[float] = None
52
+ """
53
+ pvalue: https://en.wikipedia.org/wiki/P-value
54
+ """
55
+
56
+
57
+ class LinearRegressionParametersSchema(BaseModel):
58
+ intercept: float
59
+ """
60
+ intercept (shift) from the linear or non-linear fit of data points
61
+ """
62
+ perFeature: List[PerFeaturePropertyUsedForTrainingTheMLMethodModelParametersSchema]
63
+ """
64
+ per-feature (property used for training the ML method/model) parameters
65
+ """
66
+
67
+
68
+ class KernelRidgeRegressionParametersSchema(BaseModel):
69
+ xFit: List
70
+ """
71
+ training data
72
+ """
73
+ dualCoefficients: List
74
+ """
75
+ dual coefficients
76
+ """
77
+ perFeature: List[PerFeaturePropertyUsedForTrainingTheMLMethodModelParametersSchema]
78
+ """
79
+ per-feature (property used for training the ML method/model) parameters
80
+ """
81
+
82
+
83
+ class DataSet(BaseModel):
84
+ exabyteIds: List[str]
85
+ """
86
+ array of exabyteIds for materials in dataset
87
+ """
88
+ extra: Optional[Any] = None
89
+ """
90
+ holder for any extra information, eg. coming from user-uploaded CSV file
91
+ """
92
+
93
+
94
+ class RegressionData(BaseModel):
95
+ perProperty: Optional[List[Union[LinearRegressionParametersSchema, KernelRidgeRegressionParametersSchema]]] = None
96
+ dataSet: Optional[DataSet] = None
97
+ """
98
+ dataset for ml
99
+ """
100
+
101
+
102
+ class LegacyMethodRegression(BaseModel):
103
+ type: Type
104
+ """
105
+ general type of this method, eg. `pseudopotential`
106
+ """
107
+ subtype: Subtype
108
+ """
109
+ general subtype of this method, eg. `ultra-soft`
110
+ """
111
+ precision: RegressionPrecision = Field(..., title="regression precision")
112
+ """
113
+ Object showing the actual possible precision based on theory and implementation
114
+ """
115
+ data: RegressionData = Field(..., title="regression data")
116
+ """
117
+ additional data specific to method, eg. array of pseudopotentials
118
+ """
@@ -0,0 +1,37 @@
1
+ # generated by datamodel-codegen:
2
+ # filename: methods_directory/legacy/unknown.json
3
+ # version: 0.25.5
4
+
5
+ from __future__ import annotations
6
+
7
+ from enum import Enum
8
+ from typing import Any, Dict, Optional
9
+
10
+ from pydantic import BaseModel
11
+
12
+
13
+ class Type(Enum):
14
+ unknown = "unknown"
15
+
16
+
17
+ class Subtype(Enum):
18
+ unknown = "unknown"
19
+
20
+
21
+ class LegacyMethodUnknown(BaseModel):
22
+ type: Type
23
+ """
24
+ general type of this method, eg. `pseudopotential`
25
+ """
26
+ subtype: Subtype
27
+ """
28
+ general subtype of this method, eg. `ultra-soft`
29
+ """
30
+ precision: Optional[Dict[str, Any]] = None
31
+ """
32
+ Object showing the actual possible precision based on theory and implementation
33
+ """
34
+ data: Optional[Dict[str, Any]] = None
35
+ """
36
+ additional data specific to method, eg. array of pseudopotentials
37
+ """
@@ -0,0 +1,3 @@
1
+ # generated by datamodel-codegen:
2
+ # filename: schema
3
+ # version: 0.25.5
@@ -0,0 +1,87 @@
1
+ # generated by datamodel-codegen:
2
+ # filename: methods_directory/mathematical/cg.json
3
+ # version: 0.25.5
4
+
5
+ from __future__ import annotations
6
+
7
+ from enum import Enum
8
+ from typing import Any, Dict, List, Optional, Union
9
+
10
+ from pydantic import BaseModel, Field
11
+
12
+
13
+ class SlugifiedEntry(BaseModel):
14
+ name: str
15
+ """
16
+ descriptive human-readable name of entry
17
+ """
18
+ slug: str
19
+ """
20
+ machine-readable identifier
21
+ """
22
+
23
+
24
+ class SlugifiedEntryOrSlug(Enum):
25
+ cg = "cg"
26
+
27
+
28
+ class SlugifiedEntryOrSlug22(Enum):
29
+ ordern = "ordern"
30
+
31
+
32
+ class SlugifiedEntryOrSlug23(Enum):
33
+ diff = "diff"
34
+
35
+
36
+ class SlugifiedEntryOrSlug24(Enum):
37
+ opt = "opt"
38
+
39
+
40
+ class ConjugateGradientMethodSchema(BaseModel):
41
+ type: Optional[Union[SlugifiedEntry, SlugifiedEntryOrSlug]] = Field(None, title="slugified entry or slug")
42
+ """
43
+ contains either object with slugified entry or slug only as a string
44
+ """
45
+ tier3: Optional[Union[SlugifiedEntry, SlugifiedEntryOrSlug22]] = Field(None, title="slugified entry or slug")
46
+ """
47
+ contains either object with slugified entry or slug only as a string
48
+ """
49
+ tier2: Optional[Union[SlugifiedEntry, SlugifiedEntryOrSlug23]] = Field(None, title="slugified entry or slug")
50
+ """
51
+ contains either object with slugified entry or slug only as a string
52
+ """
53
+ tier1: Optional[Union[SlugifiedEntry, SlugifiedEntryOrSlug24]] = Field(None, title="slugified entry or slug")
54
+ """
55
+ contains either object with slugified entry or slug only as a string
56
+ """
57
+ subtype: Optional[Union[SlugifiedEntry, str]] = Field(None, title="slugified entry or slug")
58
+ """
59
+ contains either object with slugified entry or slug only as a string
60
+ """
61
+
62
+
63
+ class UnitMethodConjugateGradient(BaseModel):
64
+ categories: ConjugateGradientMethodSchema = Field(..., title="Conjugate gradient method schema")
65
+ """
66
+ Used to categorize entities such as models and methods
67
+ """
68
+ parameters: Optional[Dict[str, Any]] = None
69
+ """
70
+ Instructive parameters defining the method
71
+ """
72
+ precision: Optional[Dict[str, Any]] = None
73
+ """
74
+ Object showing the actual possible precision based on theory and implementation
75
+ """
76
+ name: Optional[str] = None
77
+ """
78
+ entity name
79
+ """
80
+ path: Optional[str] = Field(None, title="category path schema")
81
+ """
82
+ TODO: Use regex once schema draft version has been updated
83
+ """
84
+ tags: Optional[List[str]] = None
85
+ """
86
+ entity tags
87
+ """
@@ -0,0 +1,83 @@
1
+ # generated by datamodel-codegen:
2
+ # filename: methods_directory/mathematical/davidson.json
3
+ # version: 0.25.5
4
+
5
+ from __future__ import annotations
6
+
7
+ from enum import Enum
8
+ from typing import Any, Dict, List, Optional, Union
9
+
10
+ from pydantic import BaseModel, Field
11
+
12
+
13
+ class SlugifiedEntry(BaseModel):
14
+ name: str
15
+ """
16
+ descriptive human-readable name of entry
17
+ """
18
+ slug: str
19
+ """
20
+ machine-readable identifier
21
+ """
22
+
23
+
24
+ class SlugifiedEntryOrSlug(Enum):
25
+ davidson = "davidson"
26
+
27
+
28
+ class SlugifiedEntryOrSlug30(Enum):
29
+ diag = "diag"
30
+
31
+
32
+ class SlugifiedEntryOrSlug31(Enum):
33
+ linalg = "linalg"
34
+
35
+
36
+ class DavidsonDiagonalizationMethodSchema(BaseModel):
37
+ type: Optional[Union[SlugifiedEntry, SlugifiedEntryOrSlug]] = Field(None, title="slugified entry or slug")
38
+ """
39
+ contains either object with slugified entry or slug only as a string
40
+ """
41
+ tier2: Optional[Union[SlugifiedEntry, SlugifiedEntryOrSlug30]] = Field(None, title="slugified entry or slug")
42
+ """
43
+ contains either object with slugified entry or slug only as a string
44
+ """
45
+ tier1: Optional[Union[SlugifiedEntry, SlugifiedEntryOrSlug31]] = Field(None, title="slugified entry or slug")
46
+ """
47
+ contains either object with slugified entry or slug only as a string
48
+ """
49
+ tier3: Optional[Union[SlugifiedEntry, str]] = Field(None, title="slugified entry or slug")
50
+ """
51
+ contains either object with slugified entry or slug only as a string
52
+ """
53
+ subtype: Optional[Union[SlugifiedEntry, str]] = Field(None, title="slugified entry or slug")
54
+ """
55
+ contains either object with slugified entry or slug only as a string
56
+ """
57
+
58
+
59
+ class UnitMethodDavidsonSchema(BaseModel):
60
+ categories: DavidsonDiagonalizationMethodSchema = Field(..., title="Davidson diagonalization method schema")
61
+ """
62
+ Used to categorize entities such as models and methods
63
+ """
64
+ parameters: Optional[Dict[str, Any]] = None
65
+ """
66
+ Instructive parameters defining the method
67
+ """
68
+ precision: Optional[Dict[str, Any]] = None
69
+ """
70
+ Object showing the actual possible precision based on theory and implementation
71
+ """
72
+ name: Optional[str] = None
73
+ """
74
+ entity name
75
+ """
76
+ path: Optional[str] = Field(None, title="category path schema")
77
+ """
78
+ TODO: Use regex once schema draft version has been updated
79
+ """
80
+ tags: Optional[List[str]] = None
81
+ """
82
+ entity tags
83
+ """
@@ -0,0 +1,161 @@
1
+ # generated by datamodel-codegen:
2
+ # filename: methods_directory/mathematical/regression.json
3
+ # version: 0.25.5
4
+
5
+ from __future__ import annotations
6
+
7
+ from enum import Enum
8
+ from typing import Any, Dict, List, Optional, Union
9
+
10
+ from pydantic import BaseModel, Field
11
+
12
+
13
+ class SlugifiedEntry(BaseModel):
14
+ name: str
15
+ """
16
+ descriptive human-readable name of entry
17
+ """
18
+ slug: str
19
+ """
20
+ machine-readable identifier
21
+ """
22
+
23
+
24
+ class SlugifiedEntryOrSlug(Enum):
25
+ linear = "linear"
26
+ kernel_ridge = "kernel_ridge"
27
+
28
+
29
+ class SlugifiedEntryOrSlug234(Enum):
30
+ least_squares = "least_squares"
31
+ ridge = "ridge"
32
+
33
+
34
+ class LinearMethodsCategorySchema(BaseModel):
35
+ type: Optional[Union[SlugifiedEntry, SlugifiedEntryOrSlug]] = Field(None, title="slugified entry or slug")
36
+ """
37
+ contains either object with slugified entry or slug only as a string
38
+ """
39
+ subtype: Optional[Union[SlugifiedEntry, SlugifiedEntryOrSlug234]] = Field(None, title="slugified entry or slug")
40
+ """
41
+ contains either object with slugified entry or slug only as a string
42
+ """
43
+ tier1: Optional[Union[SlugifiedEntry, str]] = Field(None, title="slugified entry or slug")
44
+ """
45
+ contains either object with slugified entry or slug only as a string
46
+ """
47
+ tier2: Optional[Union[SlugifiedEntry, str]] = Field(None, title="slugified entry or slug")
48
+ """
49
+ contains either object with slugified entry or slug only as a string
50
+ """
51
+ tier3: Optional[Union[SlugifiedEntry, str]] = Field(None, title="slugified entry or slug")
52
+ """
53
+ contains either object with slugified entry or slug only as a string
54
+ """
55
+
56
+
57
+ class RegressionPrecisionPerPropertySchema(BaseModel):
58
+ name: Optional[str] = None
59
+ """
60
+ property name in 'flattened' format
61
+ """
62
+ trainingError: float
63
+ """
64
+ training error of the estimator
65
+ """
66
+ score: Optional[float] = None
67
+ """
68
+ prediction score of the estimator. Eg: r2_score
69
+ """
70
+
71
+
72
+ class RegressionPrecision(BaseModel):
73
+ perProperty: Optional[List[RegressionPrecisionPerPropertySchema]] = None
74
+
75
+
76
+ class PerFeaturePropertyUsedForTrainingTheMLMethodModelParametersSchema(BaseModel):
77
+ coefficient: Optional[float] = None
78
+ """
79
+ coefficient in linear regression
80
+ """
81
+ name: str
82
+ """
83
+ feature name
84
+ """
85
+ importance: Optional[float] = None
86
+ """
87
+ pvalue: https://en.wikipedia.org/wiki/P-value
88
+ """
89
+
90
+
91
+ class LinearRegressionParametersSchema(BaseModel):
92
+ intercept: float
93
+ """
94
+ intercept (shift) from the linear or non-linear fit of data points
95
+ """
96
+ perFeature: List[PerFeaturePropertyUsedForTrainingTheMLMethodModelParametersSchema]
97
+ """
98
+ per-feature (property used for training the ML method/model) parameters
99
+ """
100
+
101
+
102
+ class KernelRidgeRegressionParametersSchema(BaseModel):
103
+ xFit: List
104
+ """
105
+ training data
106
+ """
107
+ dualCoefficients: List
108
+ """
109
+ dual coefficients
110
+ """
111
+ perFeature: List[PerFeaturePropertyUsedForTrainingTheMLMethodModelParametersSchema]
112
+ """
113
+ per-feature (property used for training the ML method/model) parameters
114
+ """
115
+
116
+
117
+ class DataSet(BaseModel):
118
+ exabyteIds: List[str]
119
+ """
120
+ array of exabyteIds for materials in dataset
121
+ """
122
+ extra: Optional[Any] = None
123
+ """
124
+ holder for any extra information, eg. coming from user-uploaded CSV file
125
+ """
126
+
127
+
128
+ class RegressionData(BaseModel):
129
+ perProperty: Optional[List[Union[LinearRegressionParametersSchema, KernelRidgeRegressionParametersSchema]]] = None
130
+ dataSet: Optional[DataSet] = None
131
+ """
132
+ dataset for ml
133
+ """
134
+
135
+
136
+ class UnitMethodRegression(BaseModel):
137
+ categories: LinearMethodsCategorySchema = Field(..., title="linear methods category schema")
138
+ """
139
+ Used to categorize entities such as models and methods
140
+ """
141
+ precision: RegressionPrecision = Field(..., title="regression precision")
142
+ """
143
+ Object showing the actual possible precision based on theory and implementation
144
+ """
145
+ data: RegressionData = Field(..., title="regression data")
146
+ parameters: Optional[Dict[str, Any]] = None
147
+ """
148
+ Instructive parameters defining the method
149
+ """
150
+ name: Optional[str] = None
151
+ """
152
+ entity name
153
+ """
154
+ path: Optional[str] = Field(None, title="category path schema")
155
+ """
156
+ TODO: Use regex once schema draft version has been updated
157
+ """
158
+ tags: Optional[List[str]] = None
159
+ """
160
+ entity tags
161
+ """