@mat3ra/wode 2026.5.23-0 → 2026.5.29-0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (360) hide show
  1. package/.babelrc +1 -1
  2. package/dist/js/Subworkflow.d.ts +714 -0
  3. package/dist/js/Subworkflow.js +397 -0
  4. package/dist/js/Workflow.d.ts +82 -0
  5. package/dist/js/Workflow.js +286 -0
  6. package/dist/js/WorkflowDesignerMaterial.d.ts +21 -0
  7. package/dist/js/WorkflowDesignerMaterial.js +26 -0
  8. package/dist/js/context/mixins/ApplicationContextMixin.d.ts +10 -0
  9. package/dist/js/context/mixins/ApplicationContextMixin.js +10 -17
  10. package/dist/js/context/mixins/MaterialContextMixin.d.ts +18 -0
  11. package/dist/js/context/mixins/MaterialContextMixin.js +14 -38
  12. package/dist/js/context/mixins/MaterialsContextMixin.d.ts +10 -0
  13. package/dist/js/context/mixins/MaterialsContextMixin.js +11 -17
  14. package/dist/js/context/mixins/MaterialsSetContextMixin.d.ts +14 -0
  15. package/dist/js/context/mixins/MaterialsSetContextMixin.js +21 -23
  16. package/dist/js/context/providers/BoundaryConditionsFormDataManager.d.ts +30 -0
  17. package/dist/js/context/providers/BoundaryConditionsFormDataManager.js +62 -0
  18. package/dist/js/context/providers/CollinearMagnetizationDataManager.d.ts +42 -0
  19. package/dist/js/context/providers/CollinearMagnetizationDataManager.js +101 -0
  20. package/dist/js/context/providers/Hubbard/HubbardContextManagerLegacy.d.ts +29 -0
  21. package/dist/js/context/providers/Hubbard/HubbardContextManagerLegacy.js +69 -0
  22. package/dist/js/context/providers/Hubbard/HubbardContextProvider.d.ts +20 -0
  23. package/dist/js/context/providers/Hubbard/HubbardContextProvider.js +47 -0
  24. package/dist/js/context/providers/Hubbard/HubbardJContextManager.d.ts +22 -0
  25. package/dist/js/context/providers/Hubbard/HubbardJContextManager.js +61 -0
  26. package/dist/js/context/providers/Hubbard/HubbardUContextManager.d.ts +22 -0
  27. package/dist/js/context/providers/Hubbard/HubbardUContextManager.js +57 -0
  28. package/dist/js/context/providers/Hubbard/HubbardVContextManager.d.ts +22 -0
  29. package/dist/js/context/providers/Hubbard/HubbardVContextManager.js +79 -0
  30. package/dist/js/context/providers/IonDynamicsDataManager.d.ts +27 -0
  31. package/dist/js/context/providers/IonDynamicsDataManager.js +48 -0
  32. package/dist/js/context/providers/MLSettingsDataManager.d.ts +24 -0
  33. package/dist/js/context/providers/MLSettingsDataManager.js +42 -0
  34. package/dist/js/context/providers/MLTrainTestSplitDataManager.d.ts +23 -0
  35. package/dist/js/context/providers/MLTrainTestSplitDataManager.js +40 -0
  36. package/dist/js/context/providers/NEBFormDataManager.d.ts +23 -0
  37. package/dist/js/context/providers/NEBFormDataManager.js +39 -0
  38. package/dist/js/context/providers/NonCollinearMagnetizationDataManager.d.ts +78 -0
  39. package/dist/js/context/providers/NonCollinearMagnetizationDataManager.js +181 -0
  40. package/dist/js/context/providers/PlanewaveCutoffDataManager.d.ts +26 -0
  41. package/dist/js/context/providers/PlanewaveCutoffDataManager.js +69 -0
  42. package/dist/js/context/providers/PointsGrid/IGridFormDataManager.d.ts +13 -0
  43. package/dist/js/context/providers/PointsGrid/IGridFormDataManager.js +23 -0
  44. package/dist/js/context/providers/PointsGrid/KGridFormDataManager.d.ts +15 -0
  45. package/dist/js/context/providers/PointsGrid/KGridFormDataManager.js +30 -0
  46. package/dist/js/context/providers/PointsGrid/PointsGridFormDataProvider.d.ts +171 -0
  47. package/dist/js/context/providers/PointsGrid/PointsGridFormDataProvider.js +270 -0
  48. package/dist/js/context/providers/PointsGrid/QGridFormDataManager.d.ts +13 -0
  49. package/dist/js/context/providers/PointsGrid/QGridFormDataManager.js +23 -0
  50. package/dist/js/context/providers/PointsPath/ExplicitKPath2PIBAFormDataManager.d.ts +10 -0
  51. package/dist/js/context/providers/PointsPath/ExplicitKPath2PIBAFormDataManager.js +19 -0
  52. package/dist/js/context/providers/PointsPath/ExplicitKPathFormDataManager.d.ts +9 -0
  53. package/dist/js/context/providers/PointsPath/ExplicitKPathFormDataManager.js +18 -0
  54. package/dist/js/context/providers/PointsPath/IPathFormDataManager.d.ts +8 -0
  55. package/dist/js/context/providers/PointsPath/IPathFormDataManager.js +17 -0
  56. package/dist/js/context/providers/PointsPath/KPathFormDataManager.d.ts +8 -0
  57. package/dist/js/context/providers/PointsPath/KPathFormDataManager.js +17 -0
  58. package/dist/js/context/providers/PointsPath/PointsPathFormDataProvider.d.ts +40 -0
  59. package/dist/js/context/providers/PointsPath/PointsPathFormDataProvider.js +125 -0
  60. package/dist/js/context/providers/PointsPath/QPathFormDataManager.d.ts +8 -0
  61. package/dist/js/context/providers/PointsPath/QPathFormDataManager.js +17 -0
  62. package/dist/js/context/providers/base/ContextProvider.d.ts +75 -0
  63. package/dist/js/context/providers/base/ContextProvider.js +87 -0
  64. package/dist/js/context/providers/base/JSONSchemaDataProvider.d.ts +16 -0
  65. package/dist/js/context/providers/base/JSONSchemaDataProvider.js +17 -0
  66. package/dist/js/context/providers/base/JSONSchemaFormDataProvider.d.ts +19 -0
  67. package/dist/js/context/providers/base/JSONSchemaFormDataProvider.js +32 -0
  68. package/dist/js/context/providers/by_application/espresso/QENEBInputDataManager.d.ts +26 -0
  69. package/dist/js/context/providers/by_application/espresso/QENEBInputDataManager.js +54 -0
  70. package/dist/js/context/providers/by_application/espresso/QEPWXInputDataManager.d.ts +78 -0
  71. package/dist/js/context/providers/by_application/espresso/QEPWXInputDataManager.js +104 -0
  72. package/dist/js/context/providers/by_application/nwchem/NWChemInputDataManager.d.ts +36 -0
  73. package/dist/js/context/providers/by_application/nwchem/NWChemInputDataManager.js +58 -0
  74. package/dist/js/context/providers/by_application/vasp/VASPInputDataManager.d.ts +36 -0
  75. package/dist/js/context/providers/by_application/vasp/VASPInputDataManager.js +56 -0
  76. package/dist/js/context/providers/by_application/vasp/VASPNEBInputDataManager.d.ts +30 -0
  77. package/dist/js/context/providers/by_application/vasp/VASPNEBInputDataManager.js +50 -0
  78. package/dist/js/context/providers/index.d.ts +92 -0
  79. package/dist/js/context/providers/index.js +107 -0
  80. package/dist/js/context/providers/settings.d.ts +7 -0
  81. package/dist/js/context/providers/settings.js +11 -33
  82. package/dist/js/convergence/ConvergenceParameter.d.ts +26 -0
  83. package/dist/js/convergence/ConvergenceParameter.js +13 -0
  84. package/dist/js/convergence/NonUniformKGridConvergence.d.ts +12 -0
  85. package/dist/js/convergence/NonUniformKGridConvergence.js +31 -0
  86. package/dist/js/convergence/UniformKGridConvergence.d.ts +8 -0
  87. package/dist/js/convergence/UniformKGridConvergence.js +22 -0
  88. package/dist/js/convergence/factory.d.ts +8 -0
  89. package/dist/js/convergence/factory.js +18 -0
  90. package/dist/js/enums.d.ts +62 -0
  91. package/dist/js/enums.js +66 -61
  92. package/dist/js/generated/AssertionUnitSchemaMixin.d.ts +5 -0
  93. package/dist/js/generated/AssertionUnitSchemaMixin.js +27 -0
  94. package/dist/js/generated/AssignmentUnitSchemaMixin.d.ts +5 -0
  95. package/dist/js/generated/AssignmentUnitSchemaMixin.js +33 -0
  96. package/dist/js/generated/BaseUnitSchemaMixin.d.ts +5 -0
  97. package/dist/js/generated/BaseUnitSchemaMixin.js +57 -0
  98. package/dist/js/generated/ConditionUnitSchemaMixin.d.ts +5 -0
  99. package/dist/js/generated/ConditionUnitSchemaMixin.js +51 -0
  100. package/dist/js/generated/ExecutionUnitInputSchemaMixin.d.ts +5 -0
  101. package/dist/js/generated/ExecutionUnitInputSchemaMixin.js +27 -0
  102. package/dist/js/generated/ExecutionUnitSchemaMixin.d.ts +5 -0
  103. package/dist/js/generated/ExecutionUnitSchemaMixin.js +45 -0
  104. package/dist/js/generated/IOUnitSchemaMixin.d.ts +5 -0
  105. package/dist/js/generated/IOUnitSchemaMixin.js +33 -0
  106. package/dist/js/generated/MapUnitSchemaMixin.d.ts +5 -0
  107. package/dist/js/generated/MapUnitSchemaMixin.js +27 -0
  108. package/dist/js/generated/ReduceUnitSchemaMixin.d.ts +5 -0
  109. package/dist/js/generated/ReduceUnitSchemaMixin.js +27 -0
  110. package/dist/js/generated/StatusSchemaMixin.d.ts +5 -0
  111. package/dist/js/generated/StatusSchemaMixin.js +21 -0
  112. package/dist/js/generated/SubworkflowSchemaMixin.d.ts +5 -0
  113. package/dist/js/generated/SubworkflowSchemaMixin.js +51 -0
  114. package/dist/js/generated/SubworkflowUnitSchemaMixin.d.ts +5 -0
  115. package/dist/js/generated/SubworkflowUnitSchemaMixin.js +15 -0
  116. package/dist/js/generated/WorkflowSchemaMixin.d.ts +5 -0
  117. package/dist/js/generated/WorkflowSchemaMixin.js +51 -0
  118. package/dist/js/index.d.ts +13 -0
  119. package/dist/js/index.js +66 -176
  120. package/dist/js/units/AssertionUnit.d.ts +20 -0
  121. package/dist/js/units/AssertionUnit.js +33 -0
  122. package/dist/js/units/AssignmentUnit.d.ts +17 -0
  123. package/dist/js/units/AssignmentUnit.js +35 -0
  124. package/dist/js/units/BaseUnit.d.ts +39 -0
  125. package/dist/js/units/BaseUnit.js +70 -0
  126. package/dist/js/units/ConditionUnit.d.ts +17 -0
  127. package/dist/js/units/ConditionUnit.js +37 -0
  128. package/dist/js/units/ExecutionUnit.d.ts +115 -0
  129. package/dist/js/units/ExecutionUnit.js +181 -0
  130. package/dist/js/units/ExecutionUnitInput.d.ts +22 -0
  131. package/dist/js/units/ExecutionUnitInput.js +47 -0
  132. package/dist/js/units/IOUnit.d.ts +16 -0
  133. package/dist/js/units/IOUnit.js +31 -0
  134. package/dist/js/units/MapUnit.d.ts +34 -0
  135. package/dist/js/units/MapUnit.js +46 -0
  136. package/dist/js/units/ReduceUnit.d.ts +16 -0
  137. package/dist/js/units/ReduceUnit.js +30 -0
  138. package/dist/js/units/SubworkflowUnit.d.ts +16 -0
  139. package/dist/js/units/SubworkflowUnit.js +28 -0
  140. package/dist/js/units/factory.d.ts +31 -0
  141. package/dist/js/units/factory.js +65 -47
  142. package/dist/js/units/index.d.ts +14 -0
  143. package/dist/js/units/index.js +25 -81
  144. package/dist/js/units/mixins/RuntimeItemsUILogicMixin.d.ts +26 -0
  145. package/dist/js/units/mixins/RuntimeItemsUILogicMixin.js +50 -0
  146. package/dist/js/utils/baseUnits.d.ts +2 -0
  147. package/dist/js/utils/baseUnits.js +11 -0
  148. package/dist/js/utils/index.d.ts +3 -0
  149. package/dist/js/utils/index.js +39 -0
  150. package/dist/js/utils/subworkflow.d.ts +2 -0
  151. package/dist/js/utils/subworkflow.js +29 -0
  152. package/dist/js/utils/underscoreStringSlugify.d.ts +6 -0
  153. package/dist/js/utils/underscoreStringSlugify.js +32 -0
  154. package/dist/js/utils/units.d.ts +4 -0
  155. package/dist/js/utils/units.js +16 -0
  156. package/dist/js/utils/workflow.d.ts +9 -0
  157. package/dist/js/utils/workflow.js +67 -0
  158. package/dist/js/workflows/default.d.ts +3 -0
  159. package/dist/js/workflows/default.js +43 -39
  160. package/dist/js/workflows/workflow.d.ts +4404 -0
  161. package/dist/js/workflows/workflow.js +310 -306
  162. package/package.json +56 -44
  163. package/src/js/Subworkflow.ts +532 -0
  164. package/src/js/Workflow.ts +390 -0
  165. package/src/js/context/mixins/ApplicationContextMixin.ts +21 -0
  166. package/src/js/context/mixins/MaterialContextMixin.ts +35 -0
  167. package/src/js/context/mixins/MaterialsContextMixin.ts +24 -0
  168. package/src/js/context/mixins/MaterialsSetContextMixin.ts +42 -0
  169. package/src/js/context/providers/BoundaryConditionsFormDataManager.ts +88 -0
  170. package/src/js/context/providers/CollinearMagnetizationDataManager.ts +140 -0
  171. package/src/js/context/providers/Hubbard/HubbardContextManagerLegacy.ts +93 -0
  172. package/src/js/context/providers/Hubbard/HubbardContextProvider.ts +85 -0
  173. package/src/js/context/providers/Hubbard/HubbardJContextManager.ts +82 -0
  174. package/src/js/context/providers/Hubbard/HubbardUContextManager.ts +78 -0
  175. package/src/js/context/providers/Hubbard/HubbardVContextManager.ts +100 -0
  176. package/src/js/context/providers/IonDynamicsDataManager.ts +64 -0
  177. package/src/js/context/providers/MLSettingsDataManager.ts +61 -0
  178. package/src/js/context/providers/MLTrainTestSplitDataManager.ts +59 -0
  179. package/src/js/context/providers/NEBFormDataManager.ts +57 -0
  180. package/src/js/context/providers/NonCollinearMagnetizationDataManager.ts +229 -0
  181. package/src/js/context/providers/PlanewaveCutoffDataManager.ts +110 -0
  182. package/src/js/context/providers/PointsGrid/IGridFormDataManager.ts +36 -0
  183. package/src/js/context/providers/PointsGrid/KGridFormDataManager.ts +46 -0
  184. package/src/js/context/providers/PointsGrid/PointsGridFormDataProvider.ts +371 -0
  185. package/src/js/context/providers/PointsGrid/QGridFormDataManager.ts +36 -0
  186. package/src/js/context/providers/PointsPath/ExplicitKPath2PIBAFormDataManager.ts +26 -0
  187. package/src/js/context/providers/PointsPath/ExplicitKPathFormDataManager.ts +24 -0
  188. package/src/js/context/providers/PointsPath/IPathFormDataManager.ts +22 -0
  189. package/src/js/context/providers/PointsPath/KPathFormDataManager.ts +22 -0
  190. package/src/js/context/providers/PointsPath/PointsPathFormDataProvider.ts +192 -0
  191. package/src/js/context/providers/PointsPath/QPathFormDataManager.ts +22 -0
  192. package/src/js/context/providers/base/ContextProvider.ts +150 -0
  193. package/src/js/context/providers/base/JSONSchemaDataProvider.ts +31 -0
  194. package/src/js/context/providers/base/JSONSchemaFormDataProvider.ts +38 -0
  195. package/src/js/context/providers/by_application/espresso/QENEBInputDataManager.ts +107 -0
  196. package/src/js/context/providers/by_application/espresso/QEPWXInputDataManager.ts +178 -0
  197. package/src/js/context/providers/by_application/nwchem/NWChemInputDataManager.ts +93 -0
  198. package/src/js/context/providers/by_application/vasp/VASPInputDataManager.ts +89 -0
  199. package/src/js/context/providers/by_application/vasp/VASPNEBInputDataManager.ts +92 -0
  200. package/src/js/context/providers/index.ts +155 -0
  201. package/src/js/context/providers/settings.ts +13 -0
  202. package/src/js/convergence/ConvergenceParameter.ts +37 -0
  203. package/src/js/convergence/NonUniformKGridConvergence.ts +38 -0
  204. package/src/js/convergence/UniformKGridConvergence.ts +26 -0
  205. package/src/js/convergence/factory.ts +18 -0
  206. package/src/js/{enums.js → enums.ts} +27 -22
  207. package/src/js/generated/AssertionUnitSchemaMixin.ts +34 -0
  208. package/src/js/generated/AssignmentUnitSchemaMixin.ts +40 -0
  209. package/src/js/generated/BaseUnitSchemaMixin.ts +64 -0
  210. package/src/js/generated/ConditionUnitSchemaMixin.ts +58 -0
  211. package/src/js/generated/ExecutionUnitInputSchemaMixin.ts +36 -0
  212. package/src/js/generated/ExecutionUnitSchemaMixin.ts +52 -0
  213. package/src/js/generated/IOUnitSchemaMixin.ts +40 -0
  214. package/src/js/generated/MapUnitSchemaMixin.ts +34 -0
  215. package/src/js/generated/ReduceUnitSchemaMixin.ts +34 -0
  216. package/src/js/generated/StatusSchemaMixin.ts +28 -0
  217. package/src/js/generated/SubworkflowSchemaMixin.ts +58 -0
  218. package/src/js/generated/SubworkflowUnitSchemaMixin.ts +22 -0
  219. package/src/js/generated/WorkflowSchemaMixin.ts +58 -0
  220. package/src/js/index.ts +44 -0
  221. package/src/js/units/AssertionUnit.ts +49 -0
  222. package/src/js/units/AssignmentUnit.ts +49 -0
  223. package/src/js/units/BaseUnit.ts +117 -0
  224. package/src/js/units/ConditionUnit.ts +52 -0
  225. package/src/js/units/ExecutionUnit.ts +274 -0
  226. package/src/js/units/ExecutionUnitInput.ts +71 -0
  227. package/src/js/units/IOUnit.ts +43 -0
  228. package/src/js/units/MapUnit.ts +59 -0
  229. package/src/js/units/ReduceUnit.ts +46 -0
  230. package/src/js/units/SubworkflowUnit.ts +44 -0
  231. package/src/js/units/factory.ts +131 -0
  232. package/src/js/units/index.ts +27 -0
  233. package/src/js/units/mixins/RuntimeItemsUILogicMixin.ts +81 -0
  234. package/src/js/utils/baseUnits.ts +11 -0
  235. package/src/js/utils/index.ts +3 -0
  236. package/src/js/utils/units.ts +23 -0
  237. package/src/js/utils/workflow.ts +69 -0
  238. package/src/js/workflows/{default.js → default.ts} +8 -1
  239. package/build_workflows.js +0 -65
  240. package/dist/js/context/context.js +0 -49
  241. package/dist/js/context/mixins/JobContextMixin.js +0 -39
  242. package/dist/js/context/mixins/MethodDataContextMixin.js +0 -48
  243. package/dist/js/context/mixins/WorkflowContextMixin.js +0 -28
  244. package/dist/js/context/providers/BoundaryConditionsFormDataProvider.js +0 -84
  245. package/dist/js/context/providers/CollinearMagnetizationContextProvider.js +0 -96
  246. package/dist/js/context/providers/HubbardContextProviderLegacy.js +0 -68
  247. package/dist/js/context/providers/HubbardJContextProvider.js +0 -67
  248. package/dist/js/context/providers/HubbardUContextProvider.js +0 -70
  249. package/dist/js/context/providers/HubbardVContextProvider.js +0 -92
  250. package/dist/js/context/providers/IonDynamicsContextProvider.js +0 -58
  251. package/dist/js/context/providers/MLSettingsContextProvider.js +0 -51
  252. package/dist/js/context/providers/MLTrainTestSplitContextProvider.js +0 -47
  253. package/dist/js/context/providers/NEBFormDataProvider.js +0 -42
  254. package/dist/js/context/providers/NonCollinearMagnetizationContextProvider.js +0 -187
  255. package/dist/js/context/providers/PlanewaveCutoffsContextProvider.js +0 -67
  256. package/dist/js/context/providers/PointsGridFormDataProvider.js +0 -263
  257. package/dist/js/context/providers/PointsPathFormDataProvider.js +0 -147
  258. package/dist/js/context/providers/by_application/ExecutableContextProvider.js +0 -25
  259. package/dist/js/context/providers/by_application/espresso/QENEBContextProvider.js +0 -61
  260. package/dist/js/context/providers/by_application/espresso/QEPWXContextProvider.js +0 -150
  261. package/dist/js/context/providers/by_application/nwchem/NWChemTotalEnergyContextProvider.js +0 -85
  262. package/dist/js/context/providers/by_application/vasp/VASPContextProvider.js +0 -65
  263. package/dist/js/context/providers/by_application/vasp/VASPNEBContextProvider.js +0 -57
  264. package/dist/js/context/providers.js +0 -199
  265. package/dist/js/patch.js +0 -19
  266. package/dist/js/subworkflows/convergence/non_uniform_kgrid.js +0 -31
  267. package/dist/js/subworkflows/convergence/parameter.js +0 -70
  268. package/dist/js/subworkflows/convergence/uniform_kgrid.js +0 -26
  269. package/dist/js/subworkflows/convergence.js +0 -189
  270. package/dist/js/subworkflows/create.js +0 -293
  271. package/dist/js/subworkflows/dynamic/espresso/getQpointIrrep.js +0 -34
  272. package/dist/js/subworkflows/dynamic/index.js +0 -19
  273. package/dist/js/subworkflows/dynamic/surfaceEnergy.js +0 -67
  274. package/dist/js/subworkflows/index.js +0 -19
  275. package/dist/js/units/assertion.js +0 -37
  276. package/dist/js/units/assignment.js +0 -42
  277. package/dist/js/units/base.js +0 -91
  278. package/dist/js/units/builders/AssertionUnitConfigBuilder.js +0 -34
  279. package/dist/js/units/builders/AssignmentUnitConfigBuilder.js +0 -41
  280. package/dist/js/units/builders/ExecutionUnitConfigBuilder.js +0 -67
  281. package/dist/js/units/builders/IOUnitConfigBuilder.js +0 -54
  282. package/dist/js/units/builders/UnitConfigBuilder.js +0 -85
  283. package/dist/js/units/builders/index.js +0 -18
  284. package/dist/js/units/condition.js +0 -52
  285. package/dist/js/units/execution.js +0 -225
  286. package/dist/js/units/io.js +0 -148
  287. package/dist/js/units/map.js +0 -38
  288. package/dist/js/units/processing.js +0 -41
  289. package/dist/js/units/reduce.js +0 -24
  290. package/dist/js/units/subworkflow.js +0 -23
  291. package/dist/js/workflows/create.js +0 -318
  292. package/dist/js/workflows/index.js +0 -113
  293. package/dist/js/workflows/relaxation.js +0 -38
  294. package/src/js/context/context.js +0 -47
  295. package/src/js/context/mixins/ApplicationContextMixin.js +0 -19
  296. package/src/js/context/mixins/JobContextMixin.js +0 -36
  297. package/src/js/context/mixins/MaterialContextMixin.js +0 -41
  298. package/src/js/context/mixins/MaterialsContextMixin.js +0 -18
  299. package/src/js/context/mixins/MaterialsSetContextMixin.js +0 -24
  300. package/src/js/context/mixins/MethodDataContextMixin.js +0 -48
  301. package/src/js/context/mixins/WorkflowContextMixin.js +0 -25
  302. package/src/js/context/providers/BoundaryConditionsFormDataProvider.js +0 -72
  303. package/src/js/context/providers/CollinearMagnetizationContextProvider.js +0 -105
  304. package/src/js/context/providers/HubbardContextProviderLegacy.js +0 -67
  305. package/src/js/context/providers/HubbardJContextProvider.js +0 -65
  306. package/src/js/context/providers/HubbardUContextProvider.js +0 -95
  307. package/src/js/context/providers/HubbardVContextProvider.js +0 -96
  308. package/src/js/context/providers/IonDynamicsContextProvider.js +0 -44
  309. package/src/js/context/providers/MLSettingsContextProvider.js +0 -45
  310. package/src/js/context/providers/MLTrainTestSplitContextProvider.js +0 -43
  311. package/src/js/context/providers/NEBFormDataProvider.js +0 -33
  312. package/src/js/context/providers/NonCollinearMagnetizationContextProvider.js +0 -179
  313. package/src/js/context/providers/PlanewaveCutoffsContextProvider.js +0 -65
  314. package/src/js/context/providers/PointsGridFormDataProvider.js +0 -271
  315. package/src/js/context/providers/PointsPathFormDataProvider.js +0 -163
  316. package/src/js/context/providers/by_application/ExecutableContextProvider.js +0 -17
  317. package/src/js/context/providers/by_application/espresso/QENEBContextProvider.js +0 -58
  318. package/src/js/context/providers/by_application/espresso/QEPWXContextProvider.js +0 -168
  319. package/src/js/context/providers/by_application/nwchem/NWChemTotalEnergyContextProvider.js +0 -89
  320. package/src/js/context/providers/by_application/vasp/VASPContextProvider.js +0 -58
  321. package/src/js/context/providers/by_application/vasp/VASPNEBContextProvider.js +0 -48
  322. package/src/js/context/providers/settings.js +0 -38
  323. package/src/js/context/providers.js +0 -140
  324. package/src/js/index.js +0 -57
  325. package/src/js/patch.js +0 -12
  326. package/src/js/subworkflows/convergence/enums.js +0 -12
  327. package/src/js/subworkflows/convergence/factory.js +0 -15
  328. package/src/js/subworkflows/convergence/non_uniform_kgrid.js +0 -28
  329. package/src/js/subworkflows/convergence/parameter.js +0 -58
  330. package/src/js/subworkflows/convergence/uniform_kgrid.js +0 -22
  331. package/src/js/subworkflows/convergence.js +0 -196
  332. package/src/js/subworkflows/create.js +0 -220
  333. package/src/js/subworkflows/dynamic/espresso/getQpointIrrep.js +0 -35
  334. package/src/js/subworkflows/dynamic/index.js +0 -8
  335. package/src/js/subworkflows/dynamic/surfaceEnergy.js +0 -124
  336. package/src/js/subworkflows/index.js +0 -2
  337. package/src/js/subworkflows/subworkflow.js +0 -345
  338. package/src/js/units/assertion.js +0 -29
  339. package/src/js/units/assignment.js +0 -34
  340. package/src/js/units/base.js +0 -97
  341. package/src/js/units/builders/AssertionUnitConfigBuilder.js +0 -28
  342. package/src/js/units/builders/AssignmentUnitConfigBuilder.js +0 -36
  343. package/src/js/units/builders/ExecutionUnitConfigBuilder.js +0 -59
  344. package/src/js/units/builders/IOUnitConfigBuilder.js +0 -53
  345. package/src/js/units/builders/UnitConfigBuilder.js +0 -92
  346. package/src/js/units/builders/index.js +0 -15
  347. package/src/js/units/condition.js +0 -47
  348. package/src/js/units/execution.js +0 -267
  349. package/src/js/units/factory.js +0 -53
  350. package/src/js/units/index.js +0 -25
  351. package/src/js/units/io.js +0 -163
  352. package/src/js/units/map.js +0 -33
  353. package/src/js/units/processing.js +0 -39
  354. package/src/js/units/reduce.js +0 -17
  355. package/src/js/units/subworkflow.js +0 -15
  356. package/src/js/utils.js +0 -73
  357. package/src/js/workflows/create.js +0 -227
  358. package/src/js/workflows/index.js +0 -98
  359. package/src/js/workflows/relaxation.js +0 -42
  360. package/src/js/workflows/workflow.js +0 -388
@@ -1,43 +0,0 @@
1
- import { ContextProvider } from "@mat3ra/ade";
2
- import JSONSchemasInterface from "@mat3ra/esse/dist/js/esse/JSONSchemasInterface";
3
-
4
- import { applicationContextMixin } from "../mixins/ApplicationContextMixin";
5
-
6
- export class MLTrainTestSplitContextProvider extends ContextProvider {
7
- jsonSchemaId = "context-providers-directory/ml-train-test-split-context-provider";
8
-
9
- constructor(config) {
10
- super(config);
11
- this.initApplicationContextMixin();
12
- }
13
-
14
- // eslint-disable-next-line class-methods-use-this
15
- get uiSchema() {
16
- return {
17
- target_column_name: {},
18
- problem_category: {},
19
- };
20
- }
21
-
22
- // eslint-disable-next-line class-methods-use-this
23
- get defaultData() {
24
- return {
25
- fraction_held_as_test_set: 0.2,
26
- };
27
- }
28
-
29
- get jsonSchemaPatchConfig() {
30
- return {
31
- fraction_held_as_test_set: { default: this.defaultData.fraction_held_as_test_set },
32
- };
33
- }
34
-
35
- get jsonSchema() {
36
- return JSONSchemasInterface.getPatchedSchemaById(
37
- this.jsonSchemaId,
38
- this.jsonSchemaPatchConfig,
39
- );
40
- }
41
- }
42
-
43
- applicationContextMixin(MLTrainTestSplitContextProvider.prototype);
@@ -1,33 +0,0 @@
1
- import { JSONSchemaFormDataProvider } from "@mat3ra/ade";
2
- import JSONSchemasInterface from "@mat3ra/esse/dist/js/esse/JSONSchemasInterface";
3
-
4
- export class NEBFormDataProvider extends JSONSchemaFormDataProvider {
5
- jsonSchemaId = "context-providers-directory/neb-data-provider";
6
-
7
- // eslint-disable-next-line class-methods-use-this
8
- get defaultData() {
9
- return {
10
- nImages: 1,
11
- };
12
- }
13
-
14
- get jsonSchemaPatchConfig() {
15
- return {
16
- nImages: { default: this.defaultData.nImages },
17
- };
18
- }
19
-
20
- // eslint-disable-next-line class-methods-use-this
21
- get uiSchema() {
22
- return {
23
- nImages: {},
24
- };
25
- }
26
-
27
- get jsonSchema() {
28
- return JSONSchemasInterface.getPatchedSchemaById(
29
- this.jsonSchemaId,
30
- this.jsonSchemaPatchConfig,
31
- );
32
- }
33
- }
@@ -1,179 +0,0 @@
1
- import { JSONSchemaFormDataProvider } from "@mat3ra/ade";
2
- import JSONSchemasInterface from "@mat3ra/esse/dist/js/esse/JSONSchemasInterface";
3
- import lodash from "lodash";
4
-
5
- import { materialContextMixin } from "../mixins/MaterialContextMixin";
6
-
7
- export class NonCollinearMagnetizationContextProvider extends JSONSchemaFormDataProvider {
8
- jsonSchemaId = "context-providers-directory/non-collinear-magnetization-context-provider";
9
-
10
- constructor(config) {
11
- super(config);
12
- this.initMaterialContextMixin();
13
- this.isStartingMagnetization = lodash.get(this.data, "isStartingMagnetization", true);
14
- this.isConstrainedMagnetization = lodash.get(
15
- this.data,
16
- "isConstrainedMagnetization",
17
- false,
18
- );
19
- this.isExistingChargeDensity = lodash.get(this.data, "isExistingChargeDensity", false);
20
- this.isArbitrarySpinDirection = lodash.get(this.data, "isArbitrarySpinDirection", false);
21
- this.isFixedMagnetization = lodash.get(this.data, "isFixedMagnetization", false);
22
- this.constrainedMagnetization = lodash.get(this.data, "constrainedMagnetization", {});
23
- }
24
-
25
- get uniqueElementsWithLabels() {
26
- const elementsWithLabelsArray = this.material?.Basis?.elementsWithLabelsArray || [];
27
- return [...new Set(elementsWithLabelsArray)];
28
- }
29
-
30
- get defaultData() {
31
- const startingMagnetization = this.uniqueElementsWithLabels.map((element, index) => {
32
- return {
33
- index: index + 1,
34
- atomicSpecies: element,
35
- value: 0.0,
36
- };
37
- });
38
-
39
- const spinAngles = this.uniqueElementsWithLabels.map((element, index) => {
40
- return {
41
- index: index + 1,
42
- atomicSpecies: element,
43
- angle1: 0.0,
44
- angle2: 0.0,
45
- };
46
- });
47
-
48
- return {
49
- isExistingChargeDensity: false,
50
- isStartingMagnetization: true,
51
- isConstrainedMagnetization: false,
52
- isArbitrarySpinAngle: false,
53
- isFixedMagnetization: false,
54
- lforcet: true,
55
- spinAngles,
56
- startingMagnetization,
57
- constrainedMagnetization: {
58
- lambda: 0.0,
59
- constrainType: "atomic direction",
60
- },
61
- fixedMagnetization: {
62
- x: 0.0,
63
- y: 0.0,
64
- z: 0.0,
65
- },
66
- };
67
- }
68
-
69
- get uiSchemaStyled() {
70
- return {
71
- isExistingChargeDensity: {},
72
- lforcet: {
73
- "ui:readonly": !this.isExistingChargeDensity,
74
- "ui:widget": "radio",
75
- "ui:options": {
76
- inline: true,
77
- },
78
- },
79
- isArbitrarySpinDirection: {},
80
- spinAngles: {
81
- items: {
82
- atomicSpecies: {
83
- ...this.defaultFieldStyles,
84
- "ui:readonly": true,
85
- },
86
- angle1: this.defaultFieldStyles,
87
- angle2: this.defaultFieldStyles,
88
- },
89
- "ui:readonly": !this.isArbitrarySpinDirection,
90
- "ui:options": {
91
- addable: false,
92
- orderable: false,
93
- removable: false,
94
- },
95
- },
96
- isStartingMagnetization: {},
97
- startingMagnetization: {
98
- items: {
99
- atomicSpecies: {
100
- ...this.defaultFieldStyles,
101
- "ui:readonly": true,
102
- },
103
- value: {
104
- "ui:classNames": "col-xs-6",
105
- },
106
- },
107
- "ui:readonly": !this.isStartingMagnetization,
108
- "ui:options": {
109
- addable: false,
110
- orderable: false,
111
- removable: false,
112
- },
113
- },
114
- isConstrainedMagnetization: {},
115
- constrainedMagnetization: {
116
- constrainType: this.defaultFieldStyles,
117
- lambda: this.defaultFieldStyles,
118
- "ui:readonly": !this.isConstrainedMagnetization,
119
- },
120
- isFixedMagnetization: {
121
- "ui:readonly": !(
122
- this.isConstrainedMagnetization &&
123
- this.constrainedMagnetization?.constrainType === "total"
124
- ),
125
- },
126
- fixedMagnetization: {
127
- x: this.defaultFieldStyles,
128
- y: this.defaultFieldStyles,
129
- z: this.defaultFieldStyles,
130
- "ui:readonly": !(
131
- this.isFixedMagnetization &&
132
- this.isConstrainedMagnetization &&
133
- this.constrainedMagnetization?.constrainType === "total"
134
- ),
135
- },
136
- };
137
- }
138
-
139
- get jsonSchemaPatchConfig() {
140
- return {
141
- isExistingChargeDensity: { default: false },
142
- isStartingMagnetization: { default: true },
143
- isArbitrarySpinAngle: { default: false },
144
- isConstrainedMagnetization: { default: false },
145
- isFixedMagnetization: { default: true },
146
- startingMagnetization: {
147
- minItems: this.uniqueElementsWithLabels.length,
148
- maxItems: this.uniqueElementsWithLabels.length,
149
- },
150
- "startingMagnetization.items.properties.value": {
151
- default: 0.0,
152
- minimum: -1.0,
153
- maximum: 1.0,
154
- },
155
- spinAngles: {
156
- minItems: this.uniqueElementsWithLabels.length,
157
- maxItems: this.uniqueElementsWithLabels.length,
158
- },
159
- "spinAngles.items.properties.angle1": { default: 0.0 },
160
- "spinAngles.items.properties.angle2": { default: 0.0 },
161
- "constrainedMagnetization.properties.constrainType": {
162
- default: "atomic direction",
163
- },
164
- "constrainedMagnetization.properties.lambda": { default: 0.0 },
165
- "fixedMagnetization.properties.x": { default: 0.0 },
166
- "fixedMagnetization.properties.y": { default: 0.0 },
167
- "fixedMagnetization.properties.z": { default: 0.0 },
168
- };
169
- }
170
-
171
- get jsonSchema() {
172
- return JSONSchemasInterface.getPatchedSchemaById(
173
- this.jsonSchemaId,
174
- this.jsonSchemaPatchConfig,
175
- );
176
- }
177
- }
178
-
179
- materialContextMixin(NonCollinearMagnetizationContextProvider.prototype);
@@ -1,65 +0,0 @@
1
- import { ContextProvider } from "@mat3ra/ade";
2
- import JSONSchemasInterface from "@mat3ra/esse/dist/js/esse/JSONSchemasInterface";
3
-
4
- import { applicationContextMixin } from "../mixins/ApplicationContextMixin";
5
-
6
- const cutoffConfig = {
7
- vasp: {}, // assuming default cutoffs for VASP
8
- espresso: {
9
- // assuming the default GBRV set of pseudopotentials is used
10
- wavefunction: 40,
11
- density: 200,
12
- },
13
- };
14
-
15
- export class PlanewaveCutoffsContextProvider extends ContextProvider {
16
- jsonSchemaId = "context-providers-directory/planewave-cutoffs-context-provider";
17
-
18
- constructor(config) {
19
- super(config);
20
- this.initApplicationContextMixin();
21
- }
22
-
23
- // eslint-disable-next-line class-methods-use-this
24
- get uiSchema() {
25
- return {
26
- wavefunction: {},
27
- density: {},
28
- };
29
- }
30
-
31
- get defaultData() {
32
- return {
33
- wavefunction: this.defaultECUTWFC,
34
- density: this.defaultECUTRHO,
35
- };
36
- }
37
-
38
- get jsonSchemaPatchConfig() {
39
- return {
40
- wavefunction: { default: this.defaultData.wavefunction },
41
- density: { default: this.defaultData.density },
42
- };
43
- }
44
-
45
- get _cutoffConfigPerApplication() {
46
- return cutoffConfig[this.application.name];
47
- }
48
-
49
- get defaultECUTWFC() {
50
- return this._cutoffConfigPerApplication.wavefunction || null;
51
- }
52
-
53
- get defaultECUTRHO() {
54
- return this._cutoffConfigPerApplication.density || null;
55
- }
56
-
57
- get jsonSchema() {
58
- return JSONSchemasInterface.getPatchedSchemaById(
59
- this.jsonSchemaId,
60
- this.jsonSchemaPatchConfig,
61
- );
62
- }
63
- }
64
-
65
- applicationContextMixin(PlanewaveCutoffsContextProvider.prototype);
@@ -1,271 +0,0 @@
1
- import { JSONSchemaFormDataProvider } from "@mat3ra/ade";
2
- import { units as UNITS } from "@mat3ra/code/dist/js/constants";
3
- import { math as codeJSMath } from "@mat3ra/code/dist/js/math";
4
- import JSONSchemasInterface from "@mat3ra/esse/dist/js/esse/JSONSchemasInterface";
5
- import { Made } from "@mat3ra/made";
6
- import lodash from "lodash";
7
-
8
- import { materialContextMixin } from "../mixins/MaterialContextMixin";
9
- import { globalSettings } from "./settings";
10
-
11
- export class PointsGridFormDataProvider extends JSONSchemaFormDataProvider {
12
- jsonSchemaId = "context-providers-directory/points-grid-data-provider";
13
-
14
- constructor(config) {
15
- super(config);
16
- this.initMaterialContextMixin();
17
-
18
- this._divisor = config.divisor || 1; // KPPRA will be divided by this number
19
- this.reciprocalLattice = new Made.ReciprocalLattice(this.material.lattice);
20
-
21
- this.dimensions = lodash.get(this.data, "dimensions") || this._defaultDimensions;
22
- this.shifts = lodash.get(this.data, "shifts") || this._defaultShifts;
23
-
24
- // init class fields from data (as constructed from context in parent)
25
- this.gridMetricType = lodash.get(this.data, "gridMetricType") || "KPPRA";
26
- this.gridMetricValue =
27
- lodash.get(this.data, "gridMetricValue") || this._getDefaultGridMetricValue("KPPRA");
28
- this.preferGridMetric = lodash.get(this.data, "preferGridMetric", false);
29
-
30
- this._metricDescription = {
31
- KPPRA: `${this.name[0].toUpperCase()}PPRA (${this.name[0]}pt per reciprocal atom)`, // KPPRA or QPPRA
32
- spacing: "grid spacing",
33
- };
34
- this.defaultClassNames = "col-xs-12 col-sm-6 col-md-3 col-lg-2";
35
- }
36
-
37
- // eslint-disable-next-line class-methods-use-this
38
- getDefaultShift() {
39
- return 0;
40
- }
41
-
42
- get _defaultDimensions() {
43
- return this.calculateDimensions({
44
- gridMetricType: "KPPRA",
45
- gridMetricValue: this._getDefaultGridMetricValue("KPPRA"),
46
- });
47
- }
48
-
49
- get _defaultShifts() {
50
- return Array(3).fill(this.getDefaultShift());
51
- }
52
-
53
- _getDefaultGridMetricValue(metric) {
54
- switch (metric) {
55
- case "KPPRA":
56
- return Math.floor(globalSettings.defaultKPPRA / this._divisor);
57
- case "spacing":
58
- return 0.3;
59
- default:
60
- console.error("Metric type not recognized!");
61
- return 1;
62
- }
63
- }
64
-
65
- get _defaultData() {
66
- return {
67
- dimensions: this._defaultDimensions,
68
- shifts: this._defaultShifts,
69
- gridMetricType: "KPPRA",
70
- gridMetricValue: this._getDefaultGridMetricValue("KPPRA"),
71
- preferGridMetric: false,
72
- reciprocalVectorRatios: this.reciprocalVectorRatios,
73
- };
74
- }
75
-
76
- get _defaultDataWithMaterial() {
77
- const { gridMetricType, gridMetricValue } = this;
78
- // if `data` is present and material is updated, prioritize `data` when `preferGridMetric` is not set
79
- return this.preferGridMetric
80
- ? {
81
- dimensions: this.calculateDimensions({ gridMetricType, gridMetricValue }),
82
- shifts: this._defaultShifts,
83
- }
84
- : this.data || this._defaultData;
85
- }
86
-
87
- get defaultData() {
88
- return this.material ? this._defaultDataWithMaterial : this._defaultData;
89
- }
90
-
91
- get reciprocalVectorRatios() {
92
- return this.reciprocalLattice.reciprocalVectorRatios.map((r) =>
93
- Number(codeJSMath.numberToPrecision(r, 3)),
94
- );
95
- }
96
-
97
- get jsonSchemaPatchConfig() {
98
- // Helper function to create vector schema with defaults
99
- const vector_ = (defaultValue, isStringType = false) => {
100
- const isArray = Array.isArray(defaultValue);
101
- return {
102
- type: "array",
103
- items: {
104
- type: isStringType ? "string" : "number",
105
- ...(isArray ? {} : { default: defaultValue }),
106
- },
107
- minItems: 3,
108
- maxItems: 3,
109
- ...(isArray ? { default: defaultValue } : {}),
110
- };
111
- };
112
-
113
- return {
114
- dimensions: vector_(this._defaultDimensions, this.isUsingJinjaVariables),
115
- shifts: vector_(this.getDefaultShift()),
116
- reciprocalVectorRatios: vector_(this.reciprocalVectorRatios),
117
- gridMetricType: { default: "KPPRA" },
118
- description: `3D grid with shifts. Default min value for ${
119
- this._metricDescription[this.gridMetricType]
120
- } is ${this._getDefaultGridMetricValue(this.gridMetricType)}.`,
121
- required: ["dimensions", "shifts"],
122
- dependencies: {
123
- gridMetricType: {
124
- oneOf: [
125
- {
126
- properties: {
127
- gridMetricType: { enum: ["KPPRA"] },
128
- gridMetricValue: {
129
- type: "integer",
130
- minimum: 1,
131
- title: "Value",
132
- default: this.gridMetricValue,
133
- },
134
- preferGridMetric: {
135
- type: "boolean",
136
- title: "prefer KPPRA",
137
- default: this.preferGridMetric,
138
- },
139
- },
140
- },
141
- {
142
- properties: {
143
- gridMetricType: { enum: ["spacing"] },
144
- gridMetricValue: {
145
- type: "number",
146
- minimum: 0,
147
- title: "Value [1/Å]",
148
- default: this.gridMetricValue,
149
- },
150
- preferGridMetric: {
151
- type: "boolean",
152
- title: "prefer spacing",
153
- default: this.preferGridMetric,
154
- },
155
- },
156
- },
157
- ],
158
- },
159
- },
160
- };
161
- }
162
-
163
- get jsonSchema() {
164
- return JSONSchemasInterface.getPatchedSchemaById(
165
- this.jsonSchemaId,
166
- this.jsonSchemaPatchConfig,
167
- );
168
- }
169
-
170
- get uiSchema() {
171
- const _arraySubStyle = (emptyValue = 0) => {
172
- return {
173
- "ui:options": {
174
- addable: false,
175
- orderable: false,
176
- removable: false,
177
- },
178
- items: {
179
- "ui:disabled": this.preferGridMetric,
180
- // TODO: extract the actual current values from context
181
- "ui:placeholder": "1",
182
- "ui:emptyValue": emptyValue,
183
- "ui:label": false,
184
- },
185
- };
186
- };
187
-
188
- return {
189
- dimensions: _arraySubStyle(1),
190
- shifts: _arraySubStyle(0),
191
- gridMetricType: {
192
- "ui:title": "Grid Metric",
193
- },
194
- gridMetricValue: {
195
- "ui:disabled": !this.preferGridMetric,
196
- "ui:emptyValue": this.gridMetricValue,
197
- "ui:placeholder": this.gridMetricValue.toString(), // make string to prevent prop type error
198
- },
199
- preferGridMetric: {
200
- "ui:emptyValue": true,
201
- "ui:disabled": this.isUsingJinjaVariables,
202
- },
203
- reciprocalVectorRatios: {
204
- "ui:title": "reciprocal vector ratios",
205
- "ui:orderable": false,
206
- "ui:removable": false,
207
- "ui:readonly": true,
208
- items: {
209
- "ui:label": false,
210
- },
211
- },
212
- };
213
- }
214
-
215
- _getDimensionsFromKPPRA(KPPRA) {
216
- const nAtoms = this.material ? this.material.Basis.nAtoms : 1;
217
- return this.reciprocalLattice.getDimensionsFromPointsCount(KPPRA / nAtoms);
218
- }
219
-
220
- _getKPPRAFromDimensions(dimensions) {
221
- const nAtoms = this.material ? this.material.Basis.nAtoms : 1;
222
- return dimensions.reduce((a, b) => a * b) * nAtoms;
223
- }
224
-
225
- static _canTransform(data) {
226
- return (
227
- (data.preferGridMetric && data.gridMetricType && data.gridMetricValue) ||
228
- (!data.preferGridMetric && data.dimensions.every((d) => typeof d === "number"))
229
- );
230
- }
231
-
232
- calculateDimensions({ gridMetricType, gridMetricValue, units = UNITS.angstrom }) {
233
- switch (gridMetricType) {
234
- case "KPPRA":
235
- return this._getDimensionsFromKPPRA(gridMetricValue);
236
- case "spacing":
237
- return this.reciprocalLattice.getDimensionsFromSpacing(gridMetricValue, units);
238
- default:
239
- return [1, 1, 1];
240
- }
241
- }
242
-
243
- calculateGridMetric({ gridMetricType, dimensions, units = UNITS.angstrom }) {
244
- switch (gridMetricType) {
245
- case "KPPRA":
246
- return this._getKPPRAFromDimensions(dimensions);
247
- case "spacing":
248
- return lodash.round(
249
- this.reciprocalLattice.getSpacingFromDimensions(dimensions, units),
250
- 3,
251
- );
252
- default:
253
- return 1;
254
- }
255
- }
256
-
257
- transformData(data) {
258
- if (!this.constructor._canTransform(data)) {
259
- return data;
260
- }
261
- // dimensions are calculated from grid metric or vice versa
262
- if (data.preferGridMetric) {
263
- data.dimensions = this.calculateDimensions(data);
264
- } else {
265
- data.gridMetricValue = this.calculateGridMetric(data);
266
- }
267
- return data;
268
- }
269
- }
270
-
271
- materialContextMixin(PointsGridFormDataProvider.prototype);