@mat3ra/prode 2025.11.25-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 (276) hide show
  1. package/.babelrc +17 -0
  2. package/LICENSE.md +15 -0
  3. package/README.md +93 -0
  4. package/dist/js/MetaProperty.d.ts +3 -0
  5. package/dist/js/MetaProperty.js +9 -0
  6. package/dist/js/Property.d.ts +25 -0
  7. package/dist/js/Property.js +25 -0
  8. package/dist/js/PropertyFactory.d.ts +54 -0
  9. package/dist/js/PropertyFactory.js +137 -0
  10. package/dist/js/ProtoProperty.d.ts +5 -0
  11. package/dist/js/ProtoProperty.js +11 -0
  12. package/dist/js/charts/highcharts.d.ts +57 -0
  13. package/dist/js/charts/highcharts.js +96 -0
  14. package/dist/js/generated/AtomicConstraintsPropertySchemaMixin.d.ts +5 -0
  15. package/dist/js/generated/AtomicConstraintsPropertySchemaMixin.js +15 -0
  16. package/dist/js/generated/AtomicForcesPropertySchemaMixin.d.ts +5 -0
  17. package/dist/js/generated/AtomicForcesPropertySchemaMixin.js +18 -0
  18. package/dist/js/generated/AveragePotentialProfilePropertySchemaMixin.d.ts +5 -0
  19. package/dist/js/generated/AveragePotentialProfilePropertySchemaMixin.js +24 -0
  20. package/dist/js/generated/BandGapsPropertySchemaMixin.d.ts +5 -0
  21. package/dist/js/generated/BandGapsPropertySchemaMixin.js +18 -0
  22. package/dist/js/generated/BandStructurePropertySchemaMixin.d.ts +5 -0
  23. package/dist/js/generated/BandStructurePropertySchemaMixin.js +27 -0
  24. package/dist/js/generated/BoundaryConditionsPropertySchemaMixin.d.ts +5 -0
  25. package/dist/js/generated/BoundaryConditionsPropertySchemaMixin.js +18 -0
  26. package/dist/js/generated/ChargeDensityProfilePropertySchemaMixin.d.ts +5 -0
  27. package/dist/js/generated/ChargeDensityProfilePropertySchemaMixin.js +24 -0
  28. package/dist/js/generated/ConvergenceElectronicPropertySchemaMixin.d.ts +5 -0
  29. package/dist/js/generated/ConvergenceElectronicPropertySchemaMixin.js +18 -0
  30. package/dist/js/generated/ConvergenceIonicPropertySchemaMixin.d.ts +5 -0
  31. package/dist/js/generated/ConvergenceIonicPropertySchemaMixin.js +21 -0
  32. package/dist/js/generated/DensityOfStatesPropertySchemaMixin.d.ts +5 -0
  33. package/dist/js/generated/DensityOfStatesPropertySchemaMixin.js +27 -0
  34. package/dist/js/generated/DielectricTensorPropertySchemaMixin.d.ts +5 -0
  35. package/dist/js/generated/DielectricTensorPropertySchemaMixin.js +15 -0
  36. package/dist/js/generated/FermiEnergyPropertySchemaMixin.d.ts +5 -0
  37. package/dist/js/generated/FermiEnergyPropertySchemaMixin.js +18 -0
  38. package/dist/js/generated/FileContentPropertySchemaMixin.d.ts +5 -0
  39. package/dist/js/generated/FileContentPropertySchemaMixin.js +24 -0
  40. package/dist/js/generated/FinalStructurePropertySchemaMixin.d.ts +5 -0
  41. package/dist/js/generated/FinalStructurePropertySchemaMixin.js +18 -0
  42. package/dist/js/generated/HubbardUPropertySchemaMixin.d.ts +5 -0
  43. package/dist/js/generated/HubbardUPropertySchemaMixin.js +18 -0
  44. package/dist/js/generated/HubbardVNNPropertySchemaMixin.d.ts +5 -0
  45. package/dist/js/generated/HubbardVNNPropertySchemaMixin.js +18 -0
  46. package/dist/js/generated/HubbardVPropertySchemaMixin.d.ts +5 -0
  47. package/dist/js/generated/HubbardVPropertySchemaMixin.js +18 -0
  48. package/dist/js/generated/IonizationPotentialElementalPropertySchemaMixin.d.ts +5 -0
  49. package/dist/js/generated/IonizationPotentialElementalPropertySchemaMixin.js +18 -0
  50. package/dist/js/generated/IsRelaxedPropertySchemaMixin.d.ts +5 -0
  51. package/dist/js/generated/IsRelaxedPropertySchemaMixin.js +18 -0
  52. package/dist/js/generated/JupyterNotebookEndpointPropertySchemaMixin.d.ts +5 -0
  53. package/dist/js/generated/JupyterNotebookEndpointPropertySchemaMixin.js +21 -0
  54. package/dist/js/generated/MagneticMomentsPropertySchemaMixin.d.ts +5 -0
  55. package/dist/js/generated/MagneticMomentsPropertySchemaMixin.js +18 -0
  56. package/dist/js/generated/MetaPropertyHolderSchemaMixin.d.ts +5 -0
  57. package/dist/js/generated/MetaPropertyHolderSchemaMixin.js +15 -0
  58. package/dist/js/generated/PhononDOSPropertySchemaMixin.d.ts +5 -0
  59. package/dist/js/generated/PhononDOSPropertySchemaMixin.js +24 -0
  60. package/dist/js/generated/PhononDispersionsPropertySchemaMixin.d.ts +5 -0
  61. package/dist/js/generated/PhononDispersionsPropertySchemaMixin.js +24 -0
  62. package/dist/js/generated/PotentialProfilePropertySchemaMixin.d.ts +5 -0
  63. package/dist/js/generated/PotentialProfilePropertySchemaMixin.js +24 -0
  64. package/dist/js/generated/PressurePropertySchemaMixin.d.ts +5 -0
  65. package/dist/js/generated/PressurePropertySchemaMixin.js +18 -0
  66. package/dist/js/generated/PropertyHolderSchemaMixin.d.ts +5 -0
  67. package/dist/js/generated/PropertyHolderSchemaMixin.js +30 -0
  68. package/dist/js/generated/ProtoPropertyHolderSchemaMixin.d.ts +5 -0
  69. package/dist/js/generated/ProtoPropertyHolderSchemaMixin.js +15 -0
  70. package/dist/js/generated/PseudopotentialMetaPropertySchemaMixin.d.ts +5 -0
  71. package/dist/js/generated/PseudopotentialMetaPropertySchemaMixin.js +45 -0
  72. package/dist/js/generated/ReactionEnergyBarrierPropertySchemaMixin.d.ts +5 -0
  73. package/dist/js/generated/ReactionEnergyBarrierPropertySchemaMixin.js +18 -0
  74. package/dist/js/generated/ReactionEnergyProfilePropertySchemaMixin.d.ts +5 -0
  75. package/dist/js/generated/ReactionEnergyProfilePropertySchemaMixin.js +24 -0
  76. package/dist/js/generated/StressTensorPropertySchemaMixin.d.ts +5 -0
  77. package/dist/js/generated/StressTensorPropertySchemaMixin.js +18 -0
  78. package/dist/js/generated/SurfaceEnergyPropertySchemaMixin.d.ts +5 -0
  79. package/dist/js/generated/SurfaceEnergyPropertySchemaMixin.js +18 -0
  80. package/dist/js/generated/TotalEnergyContributionsPropertySchemaMixin.d.ts +5 -0
  81. package/dist/js/generated/TotalEnergyContributionsPropertySchemaMixin.js +57 -0
  82. package/dist/js/generated/TotalEnergyPropertySchemaMixin.d.ts +5 -0
  83. package/dist/js/generated/TotalEnergyPropertySchemaMixin.js +18 -0
  84. package/dist/js/generated/TotalForcePropertySchemaMixin.d.ts +5 -0
  85. package/dist/js/generated/TotalForcePropertySchemaMixin.js +18 -0
  86. package/dist/js/generated/ValenceBandOffsetPropertySchemaMixin.d.ts +5 -0
  87. package/dist/js/generated/ValenceBandOffsetPropertySchemaMixin.js +18 -0
  88. package/dist/js/generated/WorkflowPropertySchemaMixin.d.ts +5 -0
  89. package/dist/js/generated/WorkflowPropertySchemaMixin.js +33 -0
  90. package/dist/js/generated/ZeroPointEnergyPropertySchemaMixin.d.ts +5 -0
  91. package/dist/js/generated/ZeroPointEnergyPropertySchemaMixin.js +18 -0
  92. package/dist/js/holders/MetaPropertyHolder.d.ts +10 -0
  93. package/dist/js/holders/MetaPropertyHolder.js +12 -0
  94. package/dist/js/holders/PropertyHolder.d.ts +10 -0
  95. package/dist/js/holders/PropertyHolder.js +12 -0
  96. package/dist/js/holders/ProtoPropertyHolder.d.ts +10 -0
  97. package/dist/js/holders/ProtoPropertyHolder.js +12 -0
  98. package/dist/js/holders/mixins/MetaPropertyHolderMixin.d.ts +12 -0
  99. package/dist/js/holders/mixins/MetaPropertyHolderMixin.js +18 -0
  100. package/dist/js/holders/mixins/PropertyHolderMixin.d.ts +16 -0
  101. package/dist/js/holders/mixins/PropertyHolderMixin.js +37 -0
  102. package/dist/js/holders/mixins/ProtoPropertyHolderMixin.d.ts +12 -0
  103. package/dist/js/holders/mixins/ProtoPropertyHolderMixin.js +18 -0
  104. package/dist/js/index.d.ts +20 -0
  105. package/dist/js/index.js +60 -0
  106. package/dist/js/meta_properties/PseudopotentialMetaProperty.d.ts +78 -0
  107. package/dist/js/meta_properties/PseudopotentialMetaProperty.js +157 -0
  108. package/dist/js/properties/include/mixins/2d_plot.d.ts +27 -0
  109. package/dist/js/properties/include/mixins/2d_plot.js +79 -0
  110. package/dist/js/properties/non-scalar/AveragePotentialProfileProperty.d.ts +38 -0
  111. package/dist/js/properties/non-scalar/AveragePotentialProfileProperty.js +54 -0
  112. package/dist/js/properties/non-scalar/BandGapsProperty.d.ts +59 -0
  113. package/dist/js/properties/non-scalar/BandGapsProperty.js +52 -0
  114. package/dist/js/properties/non-scalar/BandStructureProperty.d.ts +186 -0
  115. package/dist/js/properties/non-scalar/BandStructureProperty.js +218 -0
  116. package/dist/js/properties/non-scalar/ChargeDensityProfileProperty.d.ts +25 -0
  117. package/dist/js/properties/non-scalar/ChargeDensityProfileProperty.js +34 -0
  118. package/dist/js/properties/non-scalar/DensityOfStatesProperty.d.ts +145 -0
  119. package/dist/js/properties/non-scalar/DensityOfStatesProperty.js +126 -0
  120. package/dist/js/properties/non-scalar/DielectricTensorProperty.d.ts +49 -0
  121. package/dist/js/properties/non-scalar/DielectricTensorProperty.js +119 -0
  122. package/dist/js/properties/non-scalar/FileContentProperty.d.ts +15 -0
  123. package/dist/js/properties/non-scalar/FileContentProperty.js +18 -0
  124. package/dist/js/properties/non-scalar/FinalStructureProperty.d.ts +14 -0
  125. package/dist/js/properties/non-scalar/FinalStructureProperty.js +17 -0
  126. package/dist/js/properties/non-scalar/HubbardUProperty.d.ts +14 -0
  127. package/dist/js/properties/non-scalar/HubbardUProperty.js +17 -0
  128. package/dist/js/properties/non-scalar/HubbardVNNProperty.d.ts +14 -0
  129. package/dist/js/properties/non-scalar/HubbardVNNProperty.js +17 -0
  130. package/dist/js/properties/non-scalar/HubbardVProperty.d.ts +14 -0
  131. package/dist/js/properties/non-scalar/HubbardVProperty.js +17 -0
  132. package/dist/js/properties/non-scalar/IsRelaxedProperty.d.ts +15 -0
  133. package/dist/js/properties/non-scalar/IsRelaxedProperty.js +18 -0
  134. package/dist/js/properties/non-scalar/JupyterNotebookEndpointProperty.d.ts +14 -0
  135. package/dist/js/properties/non-scalar/JupyterNotebookEndpointProperty.js +17 -0
  136. package/dist/js/properties/non-scalar/PhononDOSProperty.d.ts +19 -0
  137. package/dist/js/properties/non-scalar/PhononDOSProperty.js +37 -0
  138. package/dist/js/properties/non-scalar/PhononDispersionsProperty.d.ts +21 -0
  139. package/dist/js/properties/non-scalar/PhononDispersionsProperty.js +28 -0
  140. package/dist/js/properties/non-scalar/PotentialProfileProperty.d.ts +38 -0
  141. package/dist/js/properties/non-scalar/PotentialProfileProperty.js +58 -0
  142. package/dist/js/properties/non-scalar/ReactionEnergyProfileProperty.d.ts +25 -0
  143. package/dist/js/properties/non-scalar/ReactionEnergyProfileProperty.js +34 -0
  144. package/dist/js/properties/non-scalar/WorkflowProperty.d.ts +14 -0
  145. package/dist/js/properties/non-scalar/WorkflowProperty.js +17 -0
  146. package/dist/js/properties/non-scalar/convergence/ConvergenceElectronicProperty.d.ts +17 -0
  147. package/dist/js/properties/non-scalar/convergence/ConvergenceElectronicProperty.js +63 -0
  148. package/dist/js/properties/non-scalar/convergence/ConvergenceIonicProperty.d.ts +17 -0
  149. package/dist/js/properties/non-scalar/convergence/ConvergenceIonicProperty.js +45 -0
  150. package/dist/js/properties/object/TotalEnergyContributionsProperty.d.ts +18 -0
  151. package/dist/js/properties/object/TotalEnergyContributionsProperty.js +20 -0
  152. package/dist/js/properties/scalar/FermiEnergyProperty.d.ts +14 -0
  153. package/dist/js/properties/scalar/FermiEnergyProperty.js +17 -0
  154. package/dist/js/properties/scalar/IonizationPotentialElementalProperty.d.ts +14 -0
  155. package/dist/js/properties/scalar/IonizationPotentialElementalProperty.js +17 -0
  156. package/dist/js/properties/scalar/PressureProperty.d.ts +15 -0
  157. package/dist/js/properties/scalar/PressureProperty.js +18 -0
  158. package/dist/js/properties/scalar/ReactionEnergyBarrierProperty.d.ts +15 -0
  159. package/dist/js/properties/scalar/ReactionEnergyBarrierProperty.js +18 -0
  160. package/dist/js/properties/scalar/SurfaceEnergyProperty.d.ts +15 -0
  161. package/dist/js/properties/scalar/SurfaceEnergyProperty.js +18 -0
  162. package/dist/js/properties/scalar/TotalEnergyProperty.d.ts +15 -0
  163. package/dist/js/properties/scalar/TotalEnergyProperty.js +18 -0
  164. package/dist/js/properties/scalar/TotalForceProperty.d.ts +14 -0
  165. package/dist/js/properties/scalar/TotalForceProperty.js +17 -0
  166. package/dist/js/properties/scalar/ValenceBandOffsetProperty.d.ts +15 -0
  167. package/dist/js/properties/scalar/ValenceBandOffsetProperty.js +18 -0
  168. package/dist/js/properties/scalar/ZeroPointEnergyProperty.d.ts +14 -0
  169. package/dist/js/properties/scalar/ZeroPointEnergyProperty.js +17 -0
  170. package/dist/js/properties/tensor/AtomicForcesProperty.d.ts +14 -0
  171. package/dist/js/properties/tensor/AtomicForcesProperty.js +17 -0
  172. package/dist/js/properties/tensor/MagneticMomentsProperty.d.ts +14 -0
  173. package/dist/js/properties/tensor/MagneticMomentsProperty.js +17 -0
  174. package/dist/js/properties/tensor/StressTensorProperty.d.ts +14 -0
  175. package/dist/js/properties/tensor/StressTensorProperty.js +17 -0
  176. package/dist/js/proto_properties/AtomicConstraintsProperty.d.ts +13 -0
  177. package/dist/js/proto_properties/AtomicConstraintsProperty.js +16 -0
  178. package/dist/js/proto_properties/BoundaryConditionsProperty.d.ts +13 -0
  179. package/dist/js/proto_properties/BoundaryConditionsProperty.js +16 -0
  180. package/dist/js/settings.d.ts +48 -0
  181. package/dist/js/settings.js +56 -0
  182. package/dist/js/types.d.ts +14 -0
  183. package/dist/js/types.js +2 -0
  184. package/package.json +101 -0
  185. package/src/js/MetaProperty.ts +3 -0
  186. package/src/js/Property.ts +49 -0
  187. package/src/js/PropertyFactory.ts +208 -0
  188. package/src/js/ProtoProperty.ts +6 -0
  189. package/src/js/charts/highcharts.ts +172 -0
  190. package/src/js/generated/AtomicConstraintsPropertySchemaMixin.ts +24 -0
  191. package/src/js/generated/AtomicForcesPropertySchemaMixin.ts +26 -0
  192. package/src/js/generated/AveragePotentialProfilePropertySchemaMixin.ts +37 -0
  193. package/src/js/generated/BandGapsPropertySchemaMixin.ts +26 -0
  194. package/src/js/generated/BandStructurePropertySchemaMixin.ts +35 -0
  195. package/src/js/generated/BoundaryConditionsPropertySchemaMixin.ts +27 -0
  196. package/src/js/generated/ChargeDensityProfilePropertySchemaMixin.ts +37 -0
  197. package/src/js/generated/ConvergenceElectronicPropertySchemaMixin.ts +27 -0
  198. package/src/js/generated/ConvergenceIonicPropertySchemaMixin.ts +30 -0
  199. package/src/js/generated/DensityOfStatesPropertySchemaMixin.ts +36 -0
  200. package/src/js/generated/DielectricTensorPropertySchemaMixin.ts +24 -0
  201. package/src/js/generated/FermiEnergyPropertySchemaMixin.ts +26 -0
  202. package/src/js/generated/FileContentPropertySchemaMixin.ts +32 -0
  203. package/src/js/generated/FinalStructurePropertySchemaMixin.ts +27 -0
  204. package/src/js/generated/HubbardUPropertySchemaMixin.ts +26 -0
  205. package/src/js/generated/HubbardVNNPropertySchemaMixin.ts +26 -0
  206. package/src/js/generated/HubbardVPropertySchemaMixin.ts +26 -0
  207. package/src/js/generated/IonizationPotentialElementalPropertySchemaMixin.ts +27 -0
  208. package/src/js/generated/IsRelaxedPropertySchemaMixin.ts +26 -0
  209. package/src/js/generated/JupyterNotebookEndpointPropertySchemaMixin.ts +30 -0
  210. package/src/js/generated/MagneticMomentsPropertySchemaMixin.ts +27 -0
  211. package/src/js/generated/MetaPropertyHolderSchemaMixin.ts +23 -0
  212. package/src/js/generated/PhononDOSPropertySchemaMixin.ts +36 -0
  213. package/src/js/generated/PhononDispersionsPropertySchemaMixin.ts +35 -0
  214. package/src/js/generated/PotentialProfilePropertySchemaMixin.ts +33 -0
  215. package/src/js/generated/PressurePropertySchemaMixin.ts +26 -0
  216. package/src/js/generated/PropertyHolderSchemaMixin.ts +38 -0
  217. package/src/js/generated/ProtoPropertyHolderSchemaMixin.ts +23 -0
  218. package/src/js/generated/PseudopotentialMetaPropertySchemaMixin.ts +54 -0
  219. package/src/js/generated/README.md +27 -0
  220. package/src/js/generated/ReactionEnergyBarrierPropertySchemaMixin.ts +27 -0
  221. package/src/js/generated/ReactionEnergyProfilePropertySchemaMixin.ts +37 -0
  222. package/src/js/generated/StressTensorPropertySchemaMixin.ts +26 -0
  223. package/src/js/generated/SurfaceEnergyPropertySchemaMixin.ts +26 -0
  224. package/src/js/generated/TotalEnergyContributionsPropertySchemaMixin.ts +80 -0
  225. package/src/js/generated/TotalEnergyPropertySchemaMixin.ts +26 -0
  226. package/src/js/generated/TotalForcePropertySchemaMixin.ts +26 -0
  227. package/src/js/generated/ValenceBandOffsetPropertySchemaMixin.ts +27 -0
  228. package/src/js/generated/WorkflowPropertySchemaMixin.ts +41 -0
  229. package/src/js/generated/ZeroPointEnergyPropertySchemaMixin.ts +27 -0
  230. package/src/js/holders/MetaPropertyHolder.ts +19 -0
  231. package/src/js/holders/PropertyHolder.ts +17 -0
  232. package/src/js/holders/ProtoPropertyHolder.ts +17 -0
  233. package/src/js/holders/mixins/MetaPropertyHolderMixin.ts +31 -0
  234. package/src/js/holders/mixins/PropertyHolderMixin.ts +55 -0
  235. package/src/js/holders/mixins/ProtoPropertyHolderMixin.ts +31 -0
  236. package/src/js/index.ts +21 -0
  237. package/src/js/meta_properties/PseudopotentialMetaProperty.ts +206 -0
  238. package/src/js/properties/include/mixins/2d_plot.ts +105 -0
  239. package/src/js/properties/non-scalar/AveragePotentialProfileProperty.ts +69 -0
  240. package/src/js/properties/non-scalar/BandGapsProperty.ts +65 -0
  241. package/src/js/properties/non-scalar/BandStructureProperty.ts +284 -0
  242. package/src/js/properties/non-scalar/ChargeDensityProfileProperty.ts +48 -0
  243. package/src/js/properties/non-scalar/DensityOfStatesProperty.ts +174 -0
  244. package/src/js/properties/non-scalar/DielectricTensorProperty.ts +153 -0
  245. package/src/js/properties/non-scalar/FileContentProperty.ts +27 -0
  246. package/src/js/properties/non-scalar/FinalStructureProperty.ts +25 -0
  247. package/src/js/properties/non-scalar/HubbardUProperty.ts +25 -0
  248. package/src/js/properties/non-scalar/HubbardVNNProperty.ts +25 -0
  249. package/src/js/properties/non-scalar/HubbardVProperty.ts +25 -0
  250. package/src/js/properties/non-scalar/IsRelaxedProperty.ts +27 -0
  251. package/src/js/properties/non-scalar/JupyterNotebookEndpointProperty.ts +26 -0
  252. package/src/js/properties/non-scalar/PhononDOSProperty.ts +57 -0
  253. package/src/js/properties/non-scalar/PhononDispersionsProperty.ts +46 -0
  254. package/src/js/properties/non-scalar/PotentialProfileProperty.ts +76 -0
  255. package/src/js/properties/non-scalar/ReactionEnergyProfileProperty.ts +48 -0
  256. package/src/js/properties/non-scalar/WorkflowProperty.ts +25 -0
  257. package/src/js/properties/non-scalar/convergence/ConvergenceElectronicProperty.ts +82 -0
  258. package/src/js/properties/non-scalar/convergence/ConvergenceIonicProperty.ts +62 -0
  259. package/src/js/properties/object/TotalEnergyContributionsProperty.ts +29 -0
  260. package/src/js/properties/scalar/FermiEnergyProperty.ts +25 -0
  261. package/src/js/properties/scalar/IonizationPotentialElementalProperty.ts +27 -0
  262. package/src/js/properties/scalar/PressureProperty.ts +27 -0
  263. package/src/js/properties/scalar/ReactionEnergyBarrierProperty.ts +29 -0
  264. package/src/js/properties/scalar/SurfaceEnergyProperty.ts +27 -0
  265. package/src/js/properties/scalar/TotalEnergyProperty.ts +27 -0
  266. package/src/js/properties/scalar/TotalForceProperty.ts +25 -0
  267. package/src/js/properties/scalar/ValenceBandOffsetProperty.ts +27 -0
  268. package/src/js/properties/scalar/ZeroPointEnergyProperty.ts +25 -0
  269. package/src/js/properties/tensor/AtomicForcesProperty.ts +27 -0
  270. package/src/js/properties/tensor/MagneticMomentsProperty.ts +27 -0
  271. package/src/js/properties/tensor/StressTensorProperty.ts +25 -0
  272. package/src/js/proto_properties/AtomicConstraintsProperty.ts +25 -0
  273. package/src/js/proto_properties/BoundaryConditionsProperty.ts +25 -0
  274. package/src/js/settings.ts +52 -0
  275. package/src/js/types.ts +24 -0
  276. package/tsconfig.json +3 -0
@@ -0,0 +1,126 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.DensityOfStatesConfig = void 0;
7
+ const zip_1 = __importDefault(require("lodash/zip"));
8
+ const highcharts_1 = require("../../charts/highcharts");
9
+ const DensityOfStatesPropertySchemaMixin_1 = require("../../generated/DensityOfStatesPropertySchemaMixin");
10
+ const Property_1 = __importDefault(require("../../Property"));
11
+ const settings_1 = require("../../settings");
12
+ class DensityOfStatesConfig extends highcharts_1.HighChartsConfig {
13
+ get overrideConfig() {
14
+ return {
15
+ colors: [
16
+ "#7cb5ec",
17
+ "#90ed7d",
18
+ "#f7a35c",
19
+ "#8085e9",
20
+ "#f15c80",
21
+ "#e4d354",
22
+ "#2b908f",
23
+ "#f45b5b",
24
+ "#91e8e1",
25
+ ],
26
+ credits: {
27
+ enabled: false,
28
+ },
29
+ chart: {
30
+ type: "spline",
31
+ zoomType: "xy",
32
+ animation: false,
33
+ },
34
+ legend: {
35
+ layout: "horizontal",
36
+ align: "center",
37
+ verticalAlign: "bottom",
38
+ borderWidth: 0,
39
+ },
40
+ };
41
+ }
42
+ constructor(property, chartConfig) {
43
+ var _a;
44
+ super({
45
+ subtitle: property.subtitle,
46
+ yAxisTitle: property.yAxisTitle,
47
+ xAxisTitle: property.xAxisTitle,
48
+ yAxisType: "linear",
49
+ });
50
+ this.yDataSeries = property.yDataSeries;
51
+ this.legends = property.legend || [];
52
+ this.fermiEnergy = (_a = chartConfig === null || chartConfig === void 0 ? void 0 : chartConfig.fermiEnergy) !== null && _a !== void 0 ? _a : 0;
53
+ this.xDataArray = this.cleanXDataArray(property.xDataArray);
54
+ }
55
+ // shifting values wrt fermi energy here
56
+ cleanXDataArray(rawData) {
57
+ return rawData.flat().map((x) => {
58
+ const value = this.fermiEnergy ? x - this.fermiEnergy : x;
59
+ return Number(value.toPrecision(4));
60
+ });
61
+ }
62
+ get series() {
63
+ return this.yDataSeries.map((item, index) => {
64
+ const legend = this.legends[index];
65
+ const spinText = (legend === null || legend === void 0 ? void 0 : legend.spin) ? ` ${legend.spin > 0 ? "↑" : "↓"}` : "";
66
+ const name = (legend === null || legend === void 0 ? void 0 : legend.element)
67
+ ? `${legend.element} ${legend.electronicState}${spinText}`
68
+ : "Total";
69
+ return {
70
+ data: (0, zip_1.default)(this.xDataArray, item.map((x) => Number(Number(x).toPrecision(4)))),
71
+ name,
72
+ color: name === "Total" ? "#000000" : undefined,
73
+ animation: false,
74
+ };
75
+ });
76
+ }
77
+ tooltipFormatter() {
78
+ // eslint-disable-next-line func-names
79
+ return function () {
80
+ return ("<b>state:</b> " +
81
+ this.series.name +
82
+ "<br>" +
83
+ "<b>energy:</b> " +
84
+ this.key.toFixed(4) +
85
+ "<br>" +
86
+ "<b>value: </b> " +
87
+ this.y.toFixed(4));
88
+ };
89
+ }
90
+ xAxis() {
91
+ return {
92
+ ...super.xAxis(),
93
+ plotLines: this.fermiEnergy
94
+ ? this.plotSingleLine({
95
+ value: 0.0,
96
+ label: {
97
+ text: "E_F",
98
+ style: {
99
+ color: "red",
100
+ },
101
+ y: 15,
102
+ x: 5,
103
+ rotation: 0,
104
+ },
105
+ })
106
+ : [],
107
+ };
108
+ }
109
+ }
110
+ exports.DensityOfStatesConfig = DensityOfStatesConfig;
111
+ class DensityOfStatesProperty extends Property_1.default {
112
+ constructor(config) {
113
+ super({ ...config, name: DensityOfStatesProperty.propertyName });
114
+ this.subtitle = "Density Of States";
115
+ this.yAxisTitle = `Density Of States (${this.yAxis.units})`;
116
+ this.xAxisTitle = `Energy (${this.xAxis.units})`;
117
+ this.chartConfig = new DensityOfStatesConfig(this, {
118
+ fermiEnergy: config.fermiEnergy,
119
+ }).config;
120
+ }
121
+ }
122
+ DensityOfStatesProperty.isRefined = true;
123
+ DensityOfStatesProperty.propertyName = settings_1.PropertyName.density_of_states;
124
+ DensityOfStatesProperty.propertyType = settings_1.PropertyType.non_scalar;
125
+ exports.default = DensityOfStatesProperty;
126
+ (0, DensityOfStatesPropertySchemaMixin_1.densityOfStatesPropertySchemaMixin)(DensityOfStatesProperty.prototype);
@@ -0,0 +1,49 @@
1
+ import type { Constructor } from "@mat3ra/code/dist/js/utils/types";
2
+ import type { DielectricTensorPropertySchema } from "@mat3ra/esse/dist/js/types";
3
+ import type { Options } from "highcharts";
4
+ import type { FormatterScope } from "src/js/charts/highcharts";
5
+ import { type DielectricTensorPropertySchemaMixin } from "../../generated/DielectricTensorPropertySchemaMixin";
6
+ import Property from "../../Property";
7
+ import { PropertyName, PropertyType } from "../../settings";
8
+ import { TwoDimensionalHighChartConfigMixin } from "../include/mixins/2d_plot";
9
+ type Schema = DielectricTensorPropertySchema;
10
+ export declare class DielectricTensorConfig extends TwoDimensionalHighChartConfigMixin {
11
+ get series(): {
12
+ animation: boolean;
13
+ name: string | object;
14
+ data: [number, number][];
15
+ }[];
16
+ tooltipFormatter(): (this: FormatterScope) => string;
17
+ get overrideConfig(): {
18
+ colors: string[];
19
+ credits: {
20
+ enabled: boolean;
21
+ };
22
+ chart: {
23
+ type: string;
24
+ zoomType: string;
25
+ animation: boolean;
26
+ };
27
+ legend: {
28
+ layout: string;
29
+ align: string;
30
+ verticalAlign: string;
31
+ borderWidth: number;
32
+ };
33
+ };
34
+ }
35
+ type Base = typeof Property<Schema> & Constructor<DielectricTensorPropertySchemaMixin>;
36
+ declare const DielectricTensorProperty_base: Base;
37
+ export default class DielectricTensorProperty extends DielectricTensorProperty_base implements Schema {
38
+ readonly subtitle = "Dielectric Tensor";
39
+ readonly yAxisTitle = "Dielectric Tensor Component";
40
+ readonly xAxisTitle = "Frequency (eV)";
41
+ readonly chartConfig: Options[];
42
+ static readonly propertyName = PropertyName.dielectric_tensor;
43
+ static readonly propertyType = PropertyType.non_scalar;
44
+ constructor(config: Omit<Schema, "name">);
45
+ private rowMajorToColumnMajor;
46
+ private getComplementaryPairs;
47
+ private getAllChartConfigs;
48
+ }
49
+ export {};
@@ -0,0 +1,119 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.DielectricTensorConfig = void 0;
7
+ const zip_1 = __importDefault(require("lodash/zip"));
8
+ const DielectricTensorPropertySchemaMixin_1 = require("../../generated/DielectricTensorPropertySchemaMixin");
9
+ const Property_1 = __importDefault(require("../../Property"));
10
+ const settings_1 = require("../../settings");
11
+ const _2d_plot_1 = require("../include/mixins/2d_plot");
12
+ class DielectricTensorConfig extends _2d_plot_1.TwoDimensionalHighChartConfigMixin {
13
+ get series() {
14
+ return this.yDataSeries.map((item, index) => {
15
+ return {
16
+ animation: false,
17
+ name: Array.isArray(this.legend) ? this.legend[index] : "",
18
+ data: (0, zip_1.default)(this.xDataArray, item),
19
+ };
20
+ });
21
+ }
22
+ tooltipFormatter() {
23
+ // eslint-disable-next-line func-names
24
+ return function () {
25
+ return ("<b>part:</b> " +
26
+ this.series.name +
27
+ "<br>" +
28
+ "<b>frequency:</b> " +
29
+ this.key.toFixed(4) +
30
+ "<br>" +
31
+ "<b>epsilon: </b> " +
32
+ this.y.toFixed(4));
33
+ };
34
+ }
35
+ get overrideConfig() {
36
+ return {
37
+ ...super.overrideConfig,
38
+ colors: [
39
+ "#7cb5ec",
40
+ "#90ed7d",
41
+ "#f7a35c",
42
+ "#8085e9",
43
+ "#f15c80",
44
+ "#e4d354",
45
+ "#2b908f",
46
+ "#f45b5b",
47
+ "#91e8e1",
48
+ ],
49
+ credits: {
50
+ enabled: false,
51
+ },
52
+ chart: {
53
+ type: "spline",
54
+ zoomType: "xy",
55
+ animation: false,
56
+ },
57
+ legend: {
58
+ layout: "horizontal",
59
+ align: "center",
60
+ verticalAlign: "bottom",
61
+ borderWidth: 0,
62
+ },
63
+ };
64
+ }
65
+ }
66
+ exports.DielectricTensorConfig = DielectricTensorConfig;
67
+ class DielectricTensorProperty extends Property_1.default {
68
+ constructor(config) {
69
+ super({ ...config, name: DielectricTensorProperty.propertyName });
70
+ this.subtitle = "Dielectric Tensor";
71
+ this.yAxisTitle = "Dielectric Tensor Component";
72
+ this.xAxisTitle = "Frequency (eV)";
73
+ this.chartConfig = this.getAllChartConfigs().map((chartConfig) => {
74
+ const cfg = new DielectricTensorConfig(chartConfig);
75
+ return cfg.config;
76
+ });
77
+ }
78
+ rowMajorToColumnMajor(matrix) {
79
+ return matrix.reduce((accumulator, item) => {
80
+ const [x, y, z] = item;
81
+ accumulator[0].push(x);
82
+ accumulator[1].push(y);
83
+ accumulator[2].push(z);
84
+ return accumulator;
85
+ }, [[], [], []]);
86
+ }
87
+ getComplementaryPairs(precision = 3) {
88
+ const groupedBySpin = {};
89
+ this.values.forEach((item) => {
90
+ // Round the spin value to mitigate floating-point precision issues
91
+ const spinValue = item.spin !== undefined ? item.spin.toFixed(precision) : "undefined";
92
+ groupedBySpin[spinValue] = groupedBySpin[spinValue] || [];
93
+ groupedBySpin[spinValue].push(item);
94
+ });
95
+ return Object.values(groupedBySpin).filter((group) => group.length === 2 &&
96
+ group.find((item) => item.part === "real") &&
97
+ group.find((item) => item.part === "imaginary"));
98
+ }
99
+ getAllChartConfigs() {
100
+ const complementaryPairs = this.getComplementaryPairs();
101
+ return complementaryPairs.map((pair) => {
102
+ const xDataArray = pair[0].frequencies;
103
+ const spinChannel = pair[0].spin ? ` - spin(${pair[0].spin})` : "";
104
+ return {
105
+ subtitle: `${this.subtitle}${spinChannel}`,
106
+ xAxisTitle: this.xAxisTitle,
107
+ yAxisTitle: this.yAxisTitle,
108
+ yAxisType: "linear",
109
+ xDataArray,
110
+ yDataSeries: pair.flatMap((p) => this.rowMajorToColumnMajor(p.components)),
111
+ legend: pair.flatMap((p) => [..."xyz"].map((char) => `eps_${char} (${p.part})`)),
112
+ };
113
+ });
114
+ }
115
+ }
116
+ DielectricTensorProperty.propertyName = settings_1.PropertyName.dielectric_tensor;
117
+ DielectricTensorProperty.propertyType = settings_1.PropertyType.non_scalar;
118
+ exports.default = DielectricTensorProperty;
119
+ (0, DielectricTensorPropertySchemaMixin_1.dielectricTensorPropertySchemaMixin)(DielectricTensorProperty.prototype);
@@ -0,0 +1,15 @@
1
+ import type { Constructor } from "@mat3ra/code/dist/js/utils/types";
2
+ import type { FileContentPropertySchema } from "@mat3ra/esse/dist/js/types";
3
+ import { type FileContentPropertySchemaMixin } from "../../generated/FileContentPropertySchemaMixin";
4
+ import Property from "../../Property";
5
+ import { PropertyName, PropertyType } from "../../settings";
6
+ type Schema = FileContentPropertySchema;
7
+ type Base = typeof Property<Schema> & Constructor<FileContentPropertySchemaMixin>;
8
+ declare const FileContentProperty_base: Base;
9
+ export default class FileContentProperty extends FileContentProperty_base implements Schema {
10
+ static readonly isAbleToReturnMultipleResults = true;
11
+ static readonly propertyName = PropertyName.file_content;
12
+ static readonly propertyType = PropertyType.non_scalar;
13
+ constructor(config: Omit<Schema, "name">);
14
+ }
15
+ export {};
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const FileContentPropertySchemaMixin_1 = require("../../generated/FileContentPropertySchemaMixin");
7
+ const Property_1 = __importDefault(require("../../Property"));
8
+ const settings_1 = require("../../settings");
9
+ class FileContentProperty extends Property_1.default {
10
+ constructor(config) {
11
+ super({ ...config, name: FileContentProperty.propertyName });
12
+ }
13
+ }
14
+ FileContentProperty.isAbleToReturnMultipleResults = true;
15
+ FileContentProperty.propertyName = settings_1.PropertyName.file_content;
16
+ FileContentProperty.propertyType = settings_1.PropertyType.non_scalar;
17
+ exports.default = FileContentProperty;
18
+ (0, FileContentPropertySchemaMixin_1.fileContentPropertySchemaMixin)(FileContentProperty.prototype);
@@ -0,0 +1,14 @@
1
+ import type { Constructor } from "@mat3ra/code/dist/js/utils/types";
2
+ import type { FinalStructurePropertySchema } from "@mat3ra/esse/dist/js/types";
3
+ import { type FinalStructurePropertySchemaMixin } from "../../generated/FinalStructurePropertySchemaMixin";
4
+ import Property from "../../Property";
5
+ import { PropertyName, PropertyType } from "../../settings";
6
+ type Schema = FinalStructurePropertySchema;
7
+ type Base = typeof Property<Schema> & Constructor<FinalStructurePropertySchemaMixin>;
8
+ declare const FinalStructureProperty_base: Base;
9
+ export default class FinalStructureProperty extends FinalStructureProperty_base implements Schema {
10
+ static readonly propertyName = PropertyName.final_structure;
11
+ static readonly propertyType = PropertyType.non_scalar;
12
+ constructor(config: Omit<Schema, "name">);
13
+ }
14
+ export {};
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const FinalStructurePropertySchemaMixin_1 = require("../../generated/FinalStructurePropertySchemaMixin");
7
+ const Property_1 = __importDefault(require("../../Property"));
8
+ const settings_1 = require("../../settings");
9
+ class FinalStructureProperty extends Property_1.default {
10
+ constructor(config) {
11
+ super({ ...config, name: FinalStructureProperty.propertyName });
12
+ }
13
+ }
14
+ FinalStructureProperty.propertyName = settings_1.PropertyName.final_structure;
15
+ FinalStructureProperty.propertyType = settings_1.PropertyType.non_scalar;
16
+ exports.default = FinalStructureProperty;
17
+ (0, FinalStructurePropertySchemaMixin_1.finalStructurePropertySchemaMixin)(FinalStructureProperty.prototype);
@@ -0,0 +1,14 @@
1
+ import type { Constructor } from "@mat3ra/code/dist/js/utils/types";
2
+ import type { HubbardUParametersPropertySchema } from "@mat3ra/esse/dist/js/types";
3
+ import { type HubbardUPropertySchemaMixin } from "../../generated/HubbardUPropertySchemaMixin";
4
+ import Property from "../../Property";
5
+ import { PropertyName, PropertyType } from "../../settings";
6
+ type Schema = HubbardUParametersPropertySchema;
7
+ type Base = typeof Property<Schema> & Constructor<HubbardUPropertySchemaMixin>;
8
+ declare const HubbardUProperty_base: Base;
9
+ export default class HubbardUProperty extends HubbardUProperty_base implements Schema {
10
+ static readonly propertyName = PropertyName.hubbard_u;
11
+ static readonly propertyType = PropertyType.non_scalar;
12
+ constructor(config: Omit<Schema, "name">);
13
+ }
14
+ export {};
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const HubbardUPropertySchemaMixin_1 = require("../../generated/HubbardUPropertySchemaMixin");
7
+ const Property_1 = __importDefault(require("../../Property"));
8
+ const settings_1 = require("../../settings");
9
+ class HubbardUProperty extends Property_1.default {
10
+ constructor(config) {
11
+ super({ ...config, name: HubbardUProperty.propertyName });
12
+ }
13
+ }
14
+ HubbardUProperty.propertyName = settings_1.PropertyName.hubbard_u;
15
+ HubbardUProperty.propertyType = settings_1.PropertyType.non_scalar;
16
+ exports.default = HubbardUProperty;
17
+ (0, HubbardUPropertySchemaMixin_1.hubbardUPropertySchemaMixin)(HubbardUProperty.prototype);
@@ -0,0 +1,14 @@
1
+ import type { Constructor } from "@mat3ra/code/dist/js/utils/types";
2
+ import type { HubbardVNNParametersPropertySchema } from "@mat3ra/esse/dist/js/types";
3
+ import { type HubbardVNNPropertySchemaMixin } from "../../generated/HubbardVNNPropertySchemaMixin";
4
+ import Property from "../../Property";
5
+ import { PropertyName, PropertyType } from "../../settings";
6
+ type Schema = HubbardVNNParametersPropertySchema;
7
+ type Base = typeof Property<Schema> & Constructor<HubbardVNNPropertySchemaMixin>;
8
+ declare const HubbardVNNProperty_base: Base;
9
+ export default class HubbardVNNProperty extends HubbardVNNProperty_base implements Schema {
10
+ static readonly propertyName = PropertyName.hubbard_v_nn;
11
+ static readonly propertyType = PropertyType.non_scalar;
12
+ constructor(config: Omit<Schema, "name">);
13
+ }
14
+ export {};
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const HubbardVNNPropertySchemaMixin_1 = require("../../generated/HubbardVNNPropertySchemaMixin");
7
+ const Property_1 = __importDefault(require("../../Property"));
8
+ const settings_1 = require("../../settings");
9
+ class HubbardVNNProperty extends Property_1.default {
10
+ constructor(config) {
11
+ super({ ...config, name: HubbardVNNProperty.propertyName });
12
+ }
13
+ }
14
+ HubbardVNNProperty.propertyName = settings_1.PropertyName.hubbard_v_nn;
15
+ HubbardVNNProperty.propertyType = settings_1.PropertyType.non_scalar;
16
+ exports.default = HubbardVNNProperty;
17
+ (0, HubbardVNNPropertySchemaMixin_1.hubbardVNNPropertySchemaMixin)(HubbardVNNProperty.prototype);
@@ -0,0 +1,14 @@
1
+ import type { Constructor } from "@mat3ra/code/dist/js/utils/types";
2
+ import type { HubbardVParametersPropertySchema } from "@mat3ra/esse/dist/js/types";
3
+ import { type HubbardVPropertySchemaMixin } from "../../generated/HubbardVPropertySchemaMixin";
4
+ import Property from "../../Property";
5
+ import { PropertyName, PropertyType } from "../../settings";
6
+ type Schema = HubbardVParametersPropertySchema;
7
+ type Base = typeof Property<Schema> & Constructor<HubbardVPropertySchemaMixin>;
8
+ declare const HubbardVProperty_base: Base;
9
+ export default class HubbardVProperty extends HubbardVProperty_base implements Schema {
10
+ static readonly propertyName = PropertyName.hubbard_v;
11
+ static readonly propertyType = PropertyType.non_scalar;
12
+ constructor(config: Omit<Schema, "name">);
13
+ }
14
+ export {};
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const HubbardVPropertySchemaMixin_1 = require("../../generated/HubbardVPropertySchemaMixin");
7
+ const Property_1 = __importDefault(require("../../Property"));
8
+ const settings_1 = require("../../settings");
9
+ class HubbardVProperty extends Property_1.default {
10
+ constructor(config) {
11
+ super({ ...config, name: HubbardVProperty.propertyName });
12
+ }
13
+ }
14
+ HubbardVProperty.propertyName = settings_1.PropertyName.hubbard_v;
15
+ HubbardVProperty.propertyType = settings_1.PropertyType.non_scalar;
16
+ exports.default = HubbardVProperty;
17
+ (0, HubbardVPropertySchemaMixin_1.hubbardVPropertySchemaMixin)(HubbardVProperty.prototype);
@@ -0,0 +1,15 @@
1
+ import type { Constructor } from "@mat3ra/code/dist/js/utils/types";
2
+ import type { IsRelaxedPropertySchema } from "@mat3ra/esse/dist/js/types";
3
+ import { type IsRelaxedPropertySchemaMixin } from "../../generated/IsRelaxedPropertySchemaMixin";
4
+ import Property from "../../Property";
5
+ import { PropertyName, PropertyType } from "../../settings";
6
+ type Schema = IsRelaxedPropertySchema;
7
+ type Base = typeof Property<Schema> & Constructor<IsRelaxedPropertySchemaMixin>;
8
+ declare const IsRelaxedProperty_base: Base;
9
+ export default class IsRelaxedProperty extends IsRelaxedProperty_base implements Schema {
10
+ static readonly isRefined = true;
11
+ static readonly propertyName = PropertyName.is_relaxed;
12
+ static readonly propertyType = PropertyType.non_scalar;
13
+ constructor(config: Omit<Schema, "name">);
14
+ }
15
+ export {};
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const IsRelaxedPropertySchemaMixin_1 = require("../../generated/IsRelaxedPropertySchemaMixin");
7
+ const Property_1 = __importDefault(require("../../Property"));
8
+ const settings_1 = require("../../settings");
9
+ class IsRelaxedProperty extends Property_1.default {
10
+ constructor(config) {
11
+ super({ ...config, name: IsRelaxedProperty.propertyName });
12
+ }
13
+ }
14
+ IsRelaxedProperty.isRefined = true;
15
+ IsRelaxedProperty.propertyName = settings_1.PropertyName.is_relaxed;
16
+ IsRelaxedProperty.propertyType = settings_1.PropertyType.non_scalar;
17
+ exports.default = IsRelaxedProperty;
18
+ (0, IsRelaxedPropertySchemaMixin_1.isRelaxedPropertySchemaMixin)(IsRelaxedProperty.prototype);
@@ -0,0 +1,14 @@
1
+ import type { Constructor } from "@mat3ra/code/dist/js/utils/types";
2
+ import type { JupyterNotebookEndpointPropertySchema } from "@mat3ra/esse/dist/js/types";
3
+ import { JupyterNotebookEndpointPropertySchemaMixin } from "../../generated/JupyterNotebookEndpointPropertySchemaMixin";
4
+ import Property from "../../Property";
5
+ import { PropertyName, PropertyType } from "../../settings";
6
+ type Schema = JupyterNotebookEndpointPropertySchema;
7
+ type Base = typeof Property<Schema> & Constructor<JupyterNotebookEndpointPropertySchemaMixin>;
8
+ declare const JupyterNotebookEndpointProperty_base: Base;
9
+ declare class JupyterNotebookEndpointProperty extends JupyterNotebookEndpointProperty_base implements Schema {
10
+ static readonly propertyName = PropertyName.jupyter_notebook_endpoint;
11
+ static readonly propertyType = PropertyType.non_scalar;
12
+ constructor(config: Omit<Schema, "name">);
13
+ }
14
+ export default JupyterNotebookEndpointProperty;
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const JupyterNotebookEndpointPropertySchemaMixin_1 = require("../../generated/JupyterNotebookEndpointPropertySchemaMixin");
7
+ const Property_1 = __importDefault(require("../../Property"));
8
+ const settings_1 = require("../../settings");
9
+ class JupyterNotebookEndpointProperty extends Property_1.default {
10
+ constructor(config) {
11
+ super({ ...config, name: JupyterNotebookEndpointProperty.propertyName });
12
+ }
13
+ }
14
+ JupyterNotebookEndpointProperty.propertyName = settings_1.PropertyName.jupyter_notebook_endpoint;
15
+ JupyterNotebookEndpointProperty.propertyType = settings_1.PropertyType.non_scalar;
16
+ (0, JupyterNotebookEndpointPropertySchemaMixin_1.jupyterNotebookEndpointPropertySchemaMixin)(JupyterNotebookEndpointProperty.prototype);
17
+ exports.default = JupyterNotebookEndpointProperty;
@@ -0,0 +1,19 @@
1
+ import type { Constructor } from "@mat3ra/code/dist/js/utils/types";
2
+ import type { PhononDensityOfStatesPropertySchema } from "@mat3ra/esse/dist/js/types";
3
+ import type { Options } from "highcharts";
4
+ import { PhononDOSPropertySchemaMixin } from "../../generated/PhononDOSPropertySchemaMixin";
5
+ import Property from "../../Property";
6
+ import { PropertyName, PropertyType } from "../../settings";
7
+ type Schema = PhononDensityOfStatesPropertySchema;
8
+ type Base = typeof Property<Schema> & Constructor<PhononDOSPropertySchemaMixin>;
9
+ declare const PhononDOSProperty_base: Base;
10
+ export default class PhononDOSProperty extends PhononDOSProperty_base implements Schema {
11
+ readonly chartConfig: Options;
12
+ readonly subtitle: string;
13
+ readonly yAxisTitle: string;
14
+ readonly xAxisTitle: string;
15
+ static readonly propertyName = PropertyName.phonon_dos;
16
+ static readonly propertyType = PropertyType.non_scalar;
17
+ constructor(config: Omit<Schema, "name">);
18
+ }
19
+ export {};
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const PhononDOSPropertySchemaMixin_1 = require("../../generated/PhononDOSPropertySchemaMixin");
7
+ const Property_1 = __importDefault(require("../../Property"));
8
+ const settings_1 = require("../../settings");
9
+ const DensityOfStatesProperty_1 = require("./DensityOfStatesProperty");
10
+ class PhononDOSConfig extends DensityOfStatesProperty_1.DensityOfStatesConfig {
11
+ tooltipFormatter() {
12
+ // eslint-disable-next-line func-names
13
+ return function () {
14
+ return ("<b>state:</b> " +
15
+ this.series.name +
16
+ "<br>" +
17
+ "<b>energy:</b> " +
18
+ this.key.toFixed(4) +
19
+ "<br>" +
20
+ "<b>value: </b> " +
21
+ this.y.toFixed(4));
22
+ };
23
+ }
24
+ }
25
+ class PhononDOSProperty extends Property_1.default {
26
+ constructor(config) {
27
+ super({ ...config, name: PhononDOSProperty.propertyName });
28
+ this.subtitle = "Phonon Density Of States";
29
+ this.yAxisTitle = `Density Of States (${this.yAxis.units})`;
30
+ this.xAxisTitle = `Frequency (${this.xAxis.units})`;
31
+ this.chartConfig = new PhononDOSConfig(this).config;
32
+ }
33
+ }
34
+ PhononDOSProperty.propertyName = settings_1.PropertyName.phonon_dos;
35
+ PhononDOSProperty.propertyType = settings_1.PropertyType.non_scalar;
36
+ exports.default = PhononDOSProperty;
37
+ (0, PhononDOSPropertySchemaMixin_1.phononDOSPropertySchemaMixin)(PhononDOSProperty.prototype);
@@ -0,0 +1,21 @@
1
+ import type { Constructor } from "@mat3ra/code/dist/js/utils/types";
2
+ import type { PhononBandStructurePropertySchema } from "@mat3ra/esse/dist/js/types";
3
+ import type { KPointPath } from "@mat3ra/made/dist/js/lattice/reciprocal/lattice_reciprocal";
4
+ import type { Options } from "highcharts";
5
+ import { PhononDispersionsPropertySchemaMixin } from "../../generated/PhononDispersionsPropertySchemaMixin";
6
+ import Property from "../../Property";
7
+ import { PropertyName, PropertyType } from "../../settings";
8
+ type Schema = PhononBandStructurePropertySchema;
9
+ type Base = typeof Property<Schema> & Constructor<PhononDispersionsPropertySchemaMixin>;
10
+ declare const PhononDispersionsProperty_base: Base;
11
+ declare class PhononDispersionsProperty extends PhononDispersionsProperty_base implements Schema {
12
+ static readonly propertyName = PropertyName.phonon_dispersions;
13
+ static readonly propertyType = PropertyType.non_scalar;
14
+ readonly subtitle = "Phonon Dispersions";
15
+ readonly yAxisTitle: string;
16
+ readonly chartConfig: Options;
17
+ constructor(config: Omit<Schema, "name"> & {
18
+ pointsPath?: KPointPath;
19
+ });
20
+ }
21
+ export default PhononDispersionsProperty;
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const PhononDispersionsPropertySchemaMixin_1 = require("../../generated/PhononDispersionsPropertySchemaMixin");
7
+ const Property_1 = __importDefault(require("../../Property"));
8
+ const settings_1 = require("../../settings");
9
+ const BandStructureProperty_1 = require("./BandStructureProperty");
10
+ class PhononDispersionsConfig extends BandStructureProperty_1.BandStructureConfig {
11
+ tooltipFormatter(xDataArray, yAxisName = "frequency") {
12
+ return super.tooltipFormatter(xDataArray, yAxisName);
13
+ }
14
+ }
15
+ class PhononDispersionsProperty extends Property_1.default {
16
+ constructor(config) {
17
+ super({ ...config, name: PhononDispersionsProperty.propertyName });
18
+ this.subtitle = "Phonon Dispersions";
19
+ this.yAxisTitle = `Frequency (${this.yAxis.units})`;
20
+ this.chartConfig = new PhononDispersionsConfig(this, {
21
+ pointsPath: config.pointsPath,
22
+ }).config;
23
+ }
24
+ }
25
+ PhononDispersionsProperty.propertyName = settings_1.PropertyName.phonon_dispersions;
26
+ PhononDispersionsProperty.propertyType = settings_1.PropertyType.non_scalar;
27
+ (0, PhononDispersionsPropertySchemaMixin_1.phononDispersionsPropertySchemaMixin)(PhononDispersionsProperty.prototype);
28
+ exports.default = PhononDispersionsProperty;