numbl 0.4.8 → 0.4.9

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 (543) hide show
  1. package/dist-browser/browser/index.d.ts +21 -0
  2. package/dist-browser/browser/mip.d.ts +10 -0
  3. package/dist-browser/browser/protocol.d.ts +59 -0
  4. package/dist-browser/browser/session.d.ts +55 -0
  5. package/dist-browser/browser/system-store.d.ts +30 -0
  6. package/dist-browser/browser/worker.d.ts +1 -0
  7. package/dist-browser/browser.js +131 -0
  8. package/dist-browser/db/operations.d.ts +25 -0
  9. package/dist-browser/db/schema.d.ts +26 -0
  10. package/dist-browser/graphics/axisLimits.d.ts +23 -0
  11. package/dist-browser/graphics/figuresReducer.d.ts +86 -0
  12. package/dist-browser/graphics/types.d.ts +423 -0
  13. package/dist-browser/hooks/useProjectFiles.d.ts +45 -0
  14. package/dist-browser/numbl-core/diagnostics/errors.d.ts +8 -0
  15. package/dist-browser/numbl-core/diagnostics/index.d.ts +27 -0
  16. package/dist-browser/numbl-core/executeCode.d.ts +108 -0
  17. package/dist-browser/numbl-core/executors/cache.d.ts +26 -0
  18. package/dist-browser/numbl-core/executors/classification.d.ts +134 -0
  19. package/dist-browser/numbl-core/executors/context.d.ts +76 -0
  20. package/dist-browser/numbl-core/executors/handleInline.d.ts +58 -0
  21. package/dist-browser/numbl-core/executors/index.d.ts +14 -0
  22. package/dist-browser/numbl-core/executors/jit/cJitCallExecutor.d.ts +35 -0
  23. package/dist-browser/numbl-core/executors/jit/cJitLoopExecutor.d.ts +31 -0
  24. package/dist-browser/numbl-core/executors/jit/cJitTopLevelExecutor.d.ts +29 -0
  25. package/dist-browser/numbl-core/executors/jit/callExecutor.d.ts +45 -0
  26. package/dist-browser/numbl-core/executors/jit/compileC.d.ts +51 -0
  27. package/dist-browser/numbl-core/executors/jit/compileC.node.d.ts +25 -0
  28. package/dist-browser/numbl-core/executors/jit/hostHelpers.d.ts +31 -0
  29. package/dist-browser/numbl-core/executors/jit/loopExecutor.d.ts +41 -0
  30. package/dist-browser/numbl-core/executors/jit/session.d.ts +17 -0
  31. package/dist-browser/numbl-core/executors/jit/topLevelExecutor.d.ts +36 -0
  32. package/dist-browser/numbl-core/executors/jit/typeAdapter.d.ts +28 -0
  33. package/dist-browser/numbl-core/executors/jit/typeAdapterC.d.ts +73 -0
  34. package/dist-browser/numbl-core/executors/jit/valueAdapter.d.ts +55 -0
  35. package/dist-browser/numbl-core/executors/jit/valueAdapterC.d.ts +108 -0
  36. package/dist-browser/numbl-core/executors/lowering.d.ts +120 -0
  37. package/dist-browser/numbl-core/executors/plugins.d.ts +41 -0
  38. package/dist-browser/numbl-core/executors/registry.d.ts +148 -0
  39. package/dist-browser/numbl-core/executors/types.d.ts +103 -0
  40. package/dist-browser/numbl-core/externalAccessDirective.d.ts +6 -0
  41. package/dist-browser/numbl-core/fileIOAdapter.d.ts +88 -0
  42. package/dist-browser/numbl-core/functionResolve.d.ts +70 -0
  43. package/dist-browser/numbl-core/helpers/arithmetic.d.ts +47 -0
  44. package/dist-browser/numbl-core/helpers/bessel.d.ts +49 -0
  45. package/dist-browser/numbl-core/helpers/check-helpers.d.ts +49 -0
  46. package/dist-browser/numbl-core/helpers/constants.d.ts +6 -0
  47. package/dist-browser/numbl-core/helpers/dummy.d.ts +5 -0
  48. package/dist-browser/numbl-core/helpers/effectively-real.d.ts +25 -0
  49. package/dist-browser/numbl-core/helpers/eigs-select.d.ts +25 -0
  50. package/dist-browser/numbl-core/helpers/erf.d.ts +5 -0
  51. package/dist-browser/numbl-core/helpers/gmres.d.ts +51 -0
  52. package/dist-browser/numbl-core/helpers/linsolve.d.ts +25 -0
  53. package/dist-browser/numbl-core/helpers/marching-cubes-tables.d.ts +10 -0
  54. package/dist-browser/numbl-core/helpers/marching-cubes.d.ts +46 -0
  55. package/dist-browser/numbl-core/helpers/ode-rk.d.ts +83 -0
  56. package/dist-browser/numbl-core/helpers/prng.d.ts +19 -0
  57. package/dist-browser/numbl-core/helpers/quadgk.d.ts +32 -0
  58. package/dist-browser/numbl-core/helpers/reduction/cumulative.d.ts +8 -0
  59. package/dist-browser/numbl-core/helpers/reduction/min-max.d.ts +5 -0
  60. package/dist-browser/numbl-core/helpers/reduction-helpers.d.ts +66 -0
  61. package/dist-browser/numbl-core/helpers/registry.d.ts +7 -0
  62. package/dist-browser/numbl-core/helpers/scanFormat.d.ts +11 -0
  63. package/dist-browser/numbl-core/helpers/shape-utils.d.ts +7 -0
  64. package/dist-browser/numbl-core/helpers/sparse-arithmetic.d.ts +16 -0
  65. package/dist-browser/numbl-core/helpers/string.d.ts +11 -0
  66. package/dist-browser/numbl-core/interpreter/builtins/arithmetic.d.ts +4 -0
  67. package/dist-browser/numbl-core/interpreter/builtins/array-construction.d.ts +10 -0
  68. package/dist-browser/numbl-core/interpreter/builtins/array-extras.d.ts +5 -0
  69. package/dist-browser/numbl-core/interpreter/builtins/array-manipulation.d.ts +7 -0
  70. package/dist-browser/numbl-core/interpreter/builtins/cell-struct.d.ts +5 -0
  71. package/dist-browser/numbl-core/interpreter/builtins/complex.d.ts +4 -0
  72. package/dist-browser/numbl-core/interpreter/builtins/datetime.d.ts +40 -0
  73. package/dist-browser/numbl-core/interpreter/builtins/dictionary.d.ts +15 -0
  74. package/dist-browser/numbl-core/interpreter/builtins/fft.d.ts +7 -0
  75. package/dist-browser/numbl-core/interpreter/builtins/gallery.d.ts +7 -0
  76. package/dist-browser/numbl-core/interpreter/builtins/geometry.d.ts +10 -0
  77. package/dist-browser/numbl-core/interpreter/builtins/graph.d.ts +29 -0
  78. package/dist-browser/numbl-core/interpreter/builtins/help-text.d.ts +5 -0
  79. package/dist-browser/numbl-core/interpreter/builtins/index.d.ts +39 -0
  80. package/dist-browser/numbl-core/interpreter/builtins/introspection.d.ts +6 -0
  81. package/dist-browser/numbl-core/interpreter/builtins/linear-algebra.d.ts +9 -0
  82. package/dist-browser/numbl-core/interpreter/builtins/logical.d.ts +9 -0
  83. package/dist-browser/numbl-core/interpreter/builtins/math.d.ts +4 -0
  84. package/dist-browser/numbl-core/interpreter/builtins/misc.d.ts +7 -0
  85. package/dist-browser/numbl-core/interpreter/builtins/numerical.d.ts +10 -0
  86. package/dist-browser/numbl-core/interpreter/builtins/predicates.d.ts +4 -0
  87. package/dist-browser/numbl-core/interpreter/builtins/prng.d.ts +4 -0
  88. package/dist-browser/numbl-core/interpreter/builtins/reductions.d.ts +6 -0
  89. package/dist-browser/numbl-core/interpreter/builtins/set-operations.d.ts +4 -0
  90. package/dist-browser/numbl-core/interpreter/builtins/sparse.d.ts +4 -0
  91. package/dist-browser/numbl-core/interpreter/builtins/special-math.d.ts +4 -0
  92. package/dist-browser/numbl-core/interpreter/builtins/string-extras.d.ts +5 -0
  93. package/dist-browser/numbl-core/interpreter/builtins/strings.d.ts +7 -0
  94. package/dist-browser/numbl-core/interpreter/builtins/time-system.d.ts +6 -0
  95. package/dist-browser/numbl-core/interpreter/builtins/type-constructors.d.ts +5 -0
  96. package/dist-browser/numbl-core/interpreter/builtins/types.d.ts +98 -0
  97. package/dist-browser/numbl-core/interpreter/builtins/utility.d.ts +4 -0
  98. package/dist-browser/numbl-core/interpreter/builtins/validation.d.ts +4 -0
  99. package/dist-browser/numbl-core/interpreter/interpreter.d.ts +199 -0
  100. package/dist-browser/numbl-core/interpreter/interpreterExec.d.ts +81 -0
  101. package/dist-browser/numbl-core/interpreter/interpreterFunctions.d.ts +62 -0
  102. package/dist-browser/numbl-core/interpreter/interpreterSpecialBuiltins.d.ts +35 -0
  103. package/dist-browser/numbl-core/interpreter/types.d.ts +114 -0
  104. package/dist-browser/numbl-core/jit/builtins/defs/_shared.d.ts +43 -0
  105. package/dist-browser/numbl-core/jit/builtins/defs/arithmetic/_elemwise.d.ts +123 -0
  106. package/dist-browser/numbl-core/jit/builtins/defs/arithmetic/minus.d.ts +2 -0
  107. package/dist-browser/numbl-core/jit/builtins/defs/arithmetic/mpower.d.ts +12 -0
  108. package/dist-browser/numbl-core/jit/builtins/defs/arithmetic/mrdivide.d.ts +5 -0
  109. package/dist-browser/numbl-core/jit/builtins/defs/arithmetic/mtimes.d.ts +2 -0
  110. package/dist-browser/numbl-core/jit/builtins/defs/arithmetic/plus.d.ts +2 -0
  111. package/dist-browser/numbl-core/jit/builtins/defs/arithmetic/power.d.ts +30 -0
  112. package/dist-browser/numbl-core/jit/builtins/defs/arithmetic/rdivide.d.ts +2 -0
  113. package/dist-browser/numbl-core/jit/builtins/defs/arithmetic/times.d.ts +2 -0
  114. package/dist-browser/numbl-core/jit/builtins/defs/arithmetic/uminus.d.ts +2 -0
  115. package/dist-browser/numbl-core/jit/builtins/defs/compare/_compare.d.ts +12 -0
  116. package/dist-browser/numbl-core/jit/builtins/defs/compare/eq.d.ts +2 -0
  117. package/dist-browser/numbl-core/jit/builtins/defs/compare/ge.d.ts +2 -0
  118. package/dist-browser/numbl-core/jit/builtins/defs/compare/gt.d.ts +2 -0
  119. package/dist-browser/numbl-core/jit/builtins/defs/compare/le.d.ts +2 -0
  120. package/dist-browser/numbl-core/jit/builtins/defs/compare/lt.d.ts +2 -0
  121. package/dist-browser/numbl-core/jit/builtins/defs/compare/ne.d.ts +2 -0
  122. package/dist-browser/numbl-core/jit/builtins/defs/diag/assert.d.ts +6 -0
  123. package/dist-browser/numbl-core/jit/builtins/defs/io/_format_args.d.ts +17 -0
  124. package/dist-browser/numbl-core/jit/builtins/defs/io/disp.d.ts +2 -0
  125. package/dist-browser/numbl-core/jit/builtins/defs/io/error.d.ts +2 -0
  126. package/dist-browser/numbl-core/jit/builtins/defs/io/fprintf.d.ts +2 -0
  127. package/dist-browser/numbl-core/jit/builtins/defs/io/sprintf.d.ts +2 -0
  128. package/dist-browser/numbl-core/jit/builtins/defs/io/warning.d.ts +15 -0
  129. package/dist-browser/numbl-core/jit/builtins/defs/logical/_shortcircuit.d.ts +30 -0
  130. package/dist-browser/numbl-core/jit/builtins/defs/logical/_unary_pred.d.ts +30 -0
  131. package/dist-browser/numbl-core/jit/builtins/defs/logical/and.d.ts +5 -0
  132. package/dist-browser/numbl-core/jit/builtins/defs/logical/andand.d.ts +1 -0
  133. package/dist-browser/numbl-core/jit/builtins/defs/logical/boolconst.d.ts +3 -0
  134. package/dist-browser/numbl-core/jit/builtins/defs/logical/classBuiltin.d.ts +21 -0
  135. package/dist-browser/numbl-core/jit/builtins/defs/logical/fieldnames.d.ts +15 -0
  136. package/dist-browser/numbl-core/jit/builtins/defs/logical/isa.d.ts +13 -0
  137. package/dist-browser/numbl-core/jit/builtins/defs/logical/iscell.d.ts +8 -0
  138. package/dist-browser/numbl-core/jit/builtins/defs/logical/isempty.d.ts +2 -0
  139. package/dist-browser/numbl-core/jit/builtins/defs/logical/isequal.d.ts +2 -0
  140. package/dist-browser/numbl-core/jit/builtins/defs/logical/isfield.d.ts +20 -0
  141. package/dist-browser/numbl-core/jit/builtins/defs/logical/isinf.d.ts +2 -0
  142. package/dist-browser/numbl-core/jit/builtins/defs/logical/isnan.d.ts +1 -0
  143. package/dist-browser/numbl-core/jit/builtins/defs/logical/isnumeric.d.ts +7 -0
  144. package/dist-browser/numbl-core/jit/builtins/defs/logical/isreal.d.ts +2 -0
  145. package/dist-browser/numbl-core/jit/builtins/defs/logical/isscalar.d.ts +20 -0
  146. package/dist-browser/numbl-core/jit/builtins/defs/logical/isstruct.d.ts +7 -0
  147. package/dist-browser/numbl-core/jit/builtins/defs/logical/logical.d.ts +1 -0
  148. package/dist-browser/numbl-core/jit/builtins/defs/logical/not.d.ts +15 -0
  149. package/dist-browser/numbl-core/jit/builtins/defs/logical/or.d.ts +11 -0
  150. package/dist-browser/numbl-core/jit/builtins/defs/logical/oror.d.ts +1 -0
  151. package/dist-browser/numbl-core/jit/builtins/defs/logical/strcmp.d.ts +21 -0
  152. package/dist-browser/numbl-core/jit/builtins/defs/logical/typequery.d.ts +10 -0
  153. package/dist-browser/numbl-core/jit/builtins/defs/logical/xor.d.ts +12 -0
  154. package/dist-browser/numbl-core/jit/builtins/defs/math/_complex_fold.d.ts +34 -0
  155. package/dist-browser/numbl-core/jit/builtins/defs/math/_unary_real.d.ts +51 -0
  156. package/dist-browser/numbl-core/jit/builtins/defs/math/abs.d.ts +7 -0
  157. package/dist-browser/numbl-core/jit/builtins/defs/math/angle.d.ts +7 -0
  158. package/dist-browser/numbl-core/jit/builtins/defs/math/asinh.d.ts +1 -0
  159. package/dist-browser/numbl-core/jit/builtins/defs/math/atan.d.ts +1 -0
  160. package/dist-browser/numbl-core/jit/builtins/defs/math/atan2.d.ts +3 -0
  161. package/dist-browser/numbl-core/jit/builtins/defs/math/besselh.d.ts +2 -0
  162. package/dist-browser/numbl-core/jit/builtins/defs/math/ceil.d.ts +4 -0
  163. package/dist-browser/numbl-core/jit/builtins/defs/math/conj.d.ts +7 -0
  164. package/dist-browser/numbl-core/jit/builtins/defs/math/constants.d.ts +7 -0
  165. package/dist-browser/numbl-core/jit/builtins/defs/math/cos.d.ts +1 -0
  166. package/dist-browser/numbl-core/jit/builtins/defs/math/cosh.d.ts +1 -0
  167. package/dist-browser/numbl-core/jit/builtins/defs/math/dot.d.ts +20 -0
  168. package/dist-browser/numbl-core/jit/builtins/defs/math/double.d.ts +28 -0
  169. package/dist-browser/numbl-core/jit/builtins/defs/math/exp.d.ts +1 -0
  170. package/dist-browser/numbl-core/jit/builtins/defs/math/fix.d.ts +4 -0
  171. package/dist-browser/numbl-core/jit/builtins/defs/math/floor.d.ts +4 -0
  172. package/dist-browser/numbl-core/jit/builtins/defs/math/hypot.d.ts +3 -0
  173. package/dist-browser/numbl-core/jit/builtins/defs/math/imag.d.ts +7 -0
  174. package/dist-browser/numbl-core/jit/builtins/defs/math/linspace.d.ts +6 -0
  175. package/dist-browser/numbl-core/jit/builtins/defs/math/log.d.ts +4 -0
  176. package/dist-browser/numbl-core/jit/builtins/defs/math/log10.d.ts +3 -0
  177. package/dist-browser/numbl-core/jit/builtins/defs/math/log2.d.ts +5 -0
  178. package/dist-browser/numbl-core/jit/builtins/defs/math/logspace.d.ts +8 -0
  179. package/dist-browser/numbl-core/jit/builtins/defs/math/mod.d.ts +1 -0
  180. package/dist-browser/numbl-core/jit/builtins/defs/math/norm.d.ts +2 -0
  181. package/dist-browser/numbl-core/jit/builtins/defs/math/rand.d.ts +2 -0
  182. package/dist-browser/numbl-core/jit/builtins/defs/math/real.d.ts +7 -0
  183. package/dist-browser/numbl-core/jit/builtins/defs/math/rem.d.ts +3 -0
  184. package/dist-browser/numbl-core/jit/builtins/defs/math/round.d.ts +1 -0
  185. package/dist-browser/numbl-core/jit/builtins/defs/math/sign.d.ts +5 -0
  186. package/dist-browser/numbl-core/jit/builtins/defs/math/sin.d.ts +1 -0
  187. package/dist-browser/numbl-core/jit/builtins/defs/math/sinh.d.ts +1 -0
  188. package/dist-browser/numbl-core/jit/builtins/defs/math/sqrt.d.ts +11 -0
  189. package/dist-browser/numbl-core/jit/builtins/defs/math/tan.d.ts +1 -0
  190. package/dist-browser/numbl-core/jit/builtins/defs/math/tanh.d.ts +1 -0
  191. package/dist-browser/numbl-core/jit/builtins/defs/math/uniquetol.d.ts +22 -0
  192. package/dist-browser/numbl-core/jit/builtins/defs/plot/dispatch.d.ts +6 -0
  193. package/dist-browser/numbl-core/jit/builtins/defs/reduction/_cumulative.d.ts +49 -0
  194. package/dist-browser/numbl-core/jit/builtins/defs/reduction/_shape.d.ts +126 -0
  195. package/dist-browser/numbl-core/jit/builtins/defs/reduction/_variance.d.ts +17 -0
  196. package/dist-browser/numbl-core/jit/builtins/defs/reduction/all.d.ts +1 -0
  197. package/dist-browser/numbl-core/jit/builtins/defs/reduction/any.d.ts +1 -0
  198. package/dist-browser/numbl-core/jit/builtins/defs/reduction/cummax.d.ts +1 -0
  199. package/dist-browser/numbl-core/jit/builtins/defs/reduction/cummin.d.ts +1 -0
  200. package/dist-browser/numbl-core/jit/builtins/defs/reduction/cumprod.d.ts +1 -0
  201. package/dist-browser/numbl-core/jit/builtins/defs/reduction/cumsum.d.ts +1 -0
  202. package/dist-browser/numbl-core/jit/builtins/defs/reduction/diff.d.ts +16 -0
  203. package/dist-browser/numbl-core/jit/builtins/defs/reduction/length.d.ts +2 -0
  204. package/dist-browser/numbl-core/jit/builtins/defs/reduction/max.d.ts +1 -0
  205. package/dist-browser/numbl-core/jit/builtins/defs/reduction/mean.d.ts +1 -0
  206. package/dist-browser/numbl-core/jit/builtins/defs/reduction/min.d.ts +1 -0
  207. package/dist-browser/numbl-core/jit/builtins/defs/reduction/numel.d.ts +2 -0
  208. package/dist-browser/numbl-core/jit/builtins/defs/reduction/prod.d.ts +1 -0
  209. package/dist-browser/numbl-core/jit/builtins/defs/reduction/std.d.ts +1 -0
  210. package/dist-browser/numbl-core/jit/builtins/defs/reduction/sum.d.ts +1 -0
  211. package/dist-browser/numbl-core/jit/builtins/defs/reduction/var.d.ts +1 -0
  212. package/dist-browser/numbl-core/jit/builtins/defs/shape/_construct.d.ts +67 -0
  213. package/dist-browser/numbl-core/jit/builtins/defs/shape/_triangular.d.ts +34 -0
  214. package/dist-browser/numbl-core/jit/builtins/defs/shape/cat.d.ts +33 -0
  215. package/dist-browser/numbl-core/jit/builtins/defs/shape/diag.d.ts +29 -0
  216. package/dist-browser/numbl-core/jit/builtins/defs/shape/eye.d.ts +5 -0
  217. package/dist-browser/numbl-core/jit/builtins/defs/shape/flip.d.ts +7 -0
  218. package/dist-browser/numbl-core/jit/builtins/defs/shape/meshgrid.d.ts +12 -0
  219. package/dist-browser/numbl-core/jit/builtins/defs/shape/ones.d.ts +1 -0
  220. package/dist-browser/numbl-core/jit/builtins/defs/shape/repmat.d.ts +37 -0
  221. package/dist-browser/numbl-core/jit/builtins/defs/shape/reshape.d.ts +39 -0
  222. package/dist-browser/numbl-core/jit/builtins/defs/shape/size.d.ts +20 -0
  223. package/dist-browser/numbl-core/jit/builtins/defs/shape/sort.d.ts +19 -0
  224. package/dist-browser/numbl-core/jit/builtins/defs/shape/transpose.d.ts +6 -0
  225. package/dist-browser/numbl-core/jit/builtins/defs/shape/tril.d.ts +16 -0
  226. package/dist-browser/numbl-core/jit/builtins/defs/shape/triu.d.ts +16 -0
  227. package/dist-browser/numbl-core/jit/builtins/defs/shape/zeros.d.ts +1 -0
  228. package/dist-browser/numbl-core/jit/builtins/defs/system/deal.d.ts +20 -0
  229. package/dist-browser/numbl-core/jit/builtins/defs/system/feval.d.ts +36 -0
  230. package/dist-browser/numbl-core/jit/builtins/defs/system/pathBuiltins.d.ts +4 -0
  231. package/dist-browser/numbl-core/jit/builtins/defs/system/tic.d.ts +8 -0
  232. package/dist-browser/numbl-core/jit/builtins/defs/system/toc.d.ts +5 -0
  233. package/dist-browser/numbl-core/jit/builtins/index.d.ts +16 -0
  234. package/dist-browser/numbl-core/jit/builtins/registry.d.ts +138 -0
  235. package/dist-browser/numbl-core/jit/builtins/runtime/cell/cell.d.ts +24 -0
  236. package/dist-browser/numbl-core/jit/builtins/runtime/indexing/loop_count.d.ts +1 -0
  237. package/dist-browser/numbl-core/jit/builtins/runtime/indexing/range_value.d.ts +1 -0
  238. package/dist-browser/numbl-core/jit/builtins/runtime/indexing/scalar_index.d.ts +11 -0
  239. package/dist-browser/numbl-core/jit/builtins/runtime/indexing/tensor_make_range.d.ts +5 -0
  240. package/dist-browser/numbl-core/jit/builtins/runtime/io/assert_fmt.d.ts +1 -0
  241. package/dist-browser/numbl-core/jit/builtins/runtime/io/disp_complex.d.ts +1 -0
  242. package/dist-browser/numbl-core/jit/builtins/runtime/io/disp_double.d.ts +1 -0
  243. package/dist-browser/numbl-core/jit/builtins/runtime/io/disp_struct.d.ts +1 -0
  244. package/dist-browser/numbl-core/jit/builtins/runtime/io/disp_tensor.d.ts +1 -0
  245. package/dist-browser/numbl-core/jit/builtins/runtime/io/disp_tensor_complex.d.ts +1 -0
  246. package/dist-browser/numbl-core/jit/builtins/runtime/io/error_fmt.d.ts +2 -0
  247. package/dist-browser/numbl-core/jit/builtins/runtime/io/format_complex.d.ts +1 -0
  248. package/dist-browser/numbl-core/jit/builtins/runtime/io/format_double.d.ts +1 -0
  249. package/dist-browser/numbl-core/jit/builtins/runtime/io/format_engine.d.ts +1 -0
  250. package/dist-browser/numbl-core/jit/builtins/runtime/io/fprintf.d.ts +1 -0
  251. package/dist-browser/numbl-core/jit/builtins/runtime/io/sprintf.d.ts +5 -0
  252. package/dist-browser/numbl-core/jit/builtins/runtime/io/warning_fmt.d.ts +2 -0
  253. package/dist-browser/numbl-core/jit/builtins/runtime/plot/plot_dispatch.d.ts +1 -0
  254. package/dist-browser/numbl-core/jit/builtins/runtime/snippets.c.gen.d.ts +4 -0
  255. package/dist-browser/numbl-core/jit/builtins/runtime/snippets.gen.d.ts +85 -0
  256. package/dist-browser/numbl-core/jit/builtins/runtime/system/cdiv.d.ts +4 -0
  257. package/dist-browser/numbl-core/jit/builtins/runtime/system/cscalar.d.ts +103 -0
  258. package/dist-browser/numbl-core/jit/builtins/runtime/system/deep_clone.d.ts +1 -0
  259. package/dist-browser/numbl-core/jit/builtins/runtime/system/isequal.d.ts +2 -0
  260. package/dist-browser/numbl-core/jit/builtins/runtime/system/tictoc.d.ts +5 -0
  261. package/dist-browser/numbl-core/jit/builtins/runtime/tensor/tensor.d.ts +6 -0
  262. package/dist-browser/numbl-core/jit/builtins/runtime/tensor/tensor_alloc.d.ts +5 -0
  263. package/dist-browser/numbl-core/jit/builtins/runtime/tensor/tensor_alloc_complex.d.ts +6 -0
  264. package/dist-browser/numbl-core/jit/builtins/runtime/tensor/tensor_alloc_nd.d.ts +5 -0
  265. package/dist-browser/numbl-core/jit/builtins/runtime/tensor/tensor_alloc_nd_complex.d.ts +6 -0
  266. package/dist-browser/numbl-core/jit/builtins/runtime/tensor/tensor_copy_complex.d.ts +6 -0
  267. package/dist-browser/numbl-core/jit/builtins/runtime/tensor/tensor_from_matrix.d.ts +5 -0
  268. package/dist-browser/numbl-core/jit/builtins/runtime/tensor/tensor_from_matrix_complex.d.ts +6 -0
  269. package/dist-browser/numbl-core/jit/builtins/runtime/tensor/tensor_from_row.d.ts +5 -0
  270. package/dist-browser/numbl-core/jit/builtins/runtime/tensor/tensor_from_row_complex.d.ts +6 -0
  271. package/dist-browser/numbl-core/jit/builtins/runtime/tensor_ops/tensor_cat.d.ts +11 -0
  272. package/dist-browser/numbl-core/jit/builtins/runtime/tensor_ops/tensor_cumulative.d.ts +32 -0
  273. package/dist-browser/numbl-core/jit/builtins/runtime/tensor_ops/tensor_diag.d.ts +33 -0
  274. package/dist-browser/numbl-core/jit/builtins/runtime/tensor_ops/tensor_diff.d.ts +5 -0
  275. package/dist-browser/numbl-core/jit/builtins/runtime/tensor_ops/tensor_dot.d.ts +16 -0
  276. package/dist-browser/numbl-core/jit/builtins/runtime/tensor_ops/tensor_elemwise_complex.d.ts +90 -0
  277. package/dist-browser/numbl-core/jit/builtins/runtime/tensor_ops/tensor_elemwise_real.d.ts +75 -0
  278. package/dist-browser/numbl-core/jit/builtins/runtime/tensor_ops/tensor_elemwise_real_fn.d.ts +95 -0
  279. package/dist-browser/numbl-core/jit/builtins/runtime/tensor_ops/tensor_eye.d.ts +10 -0
  280. package/dist-browser/numbl-core/jit/builtins/runtime/tensor_ops/tensor_fill_nd.d.ts +11 -0
  281. package/dist-browser/numbl-core/jit/builtins/runtime/tensor_ops/tensor_fill_square.d.ts +5 -0
  282. package/dist-browser/numbl-core/jit/builtins/runtime/tensor_ops/tensor_flip.d.ts +11 -0
  283. package/dist-browser/numbl-core/jit/builtins/runtime/tensor_ops/tensor_imag_all_zero.d.ts +1 -0
  284. package/dist-browser/numbl-core/jit/builtins/runtime/tensor_ops/tensor_linspace.d.ts +5 -0
  285. package/dist-browser/numbl-core/jit/builtins/runtime/tensor_ops/tensor_logical_real.d.ts +10 -0
  286. package/dist-browser/numbl-core/jit/builtins/runtime/tensor_ops/tensor_logspace.d.ts +5 -0
  287. package/dist-browser/numbl-core/jit/builtins/runtime/tensor_ops/tensor_meshgrid.d.ts +29 -0
  288. package/dist-browser/numbl-core/jit/builtins/runtime/tensor_ops/tensor_mtimes_complex.d.ts +10 -0
  289. package/dist-browser/numbl-core/jit/builtins/runtime/tensor_ops/tensor_mtimes_real.d.ts +6 -0
  290. package/dist-browser/numbl-core/jit/builtins/runtime/tensor_ops/tensor_norm.d.ts +4 -0
  291. package/dist-browser/numbl-core/jit/builtins/runtime/tensor_ops/tensor_ones_nd.d.ts +5 -0
  292. package/dist-browser/numbl-core/jit/builtins/runtime/tensor_ops/tensor_ones_square.d.ts +5 -0
  293. package/dist-browser/numbl-core/jit/builtins/runtime/tensor_ops/tensor_predicate.d.ts +42 -0
  294. package/dist-browser/numbl-core/jit/builtins/runtime/tensor_ops/tensor_reduce_complex.d.ts +53 -0
  295. package/dist-browser/numbl-core/jit/builtins/runtime/tensor_ops/tensor_reduce_real.d.ts +42 -0
  296. package/dist-browser/numbl-core/jit/builtins/runtime/tensor_ops/tensor_repmat.d.ts +11 -0
  297. package/dist-browser/numbl-core/jit/builtins/runtime/tensor_ops/tensor_reshape_nd.d.ts +5 -0
  298. package/dist-browser/numbl-core/jit/builtins/runtime/tensor_ops/tensor_reshape_nd_complex.d.ts +6 -0
  299. package/dist-browser/numbl-core/jit/builtins/runtime/tensor_ops/tensor_size.d.ts +5 -0
  300. package/dist-browser/numbl-core/jit/builtins/runtime/tensor_ops/tensor_sort_real.d.ts +36 -0
  301. package/dist-browser/numbl-core/jit/builtins/runtime/tensor_ops/tensor_transpose.d.ts +5 -0
  302. package/dist-browser/numbl-core/jit/builtins/runtime/tensor_ops/tensor_transpose_complex.d.ts +6 -0
  303. package/dist-browser/numbl-core/jit/builtins/runtime/tensor_ops/tensor_triangular.d.ts +22 -0
  304. package/dist-browser/numbl-core/jit/builtins/runtime/tensor_ops/tensor_unary_complex_math.d.ts +128 -0
  305. package/dist-browser/numbl-core/jit/builtins/runtime/tensor_ops/tensor_unary_real_math.d.ts +95 -0
  306. package/dist-browser/numbl-core/jit/builtins/runtime/tensor_ops/tensor_uniquetol.d.ts +5 -0
  307. package/dist-browser/numbl-core/jit/builtins/runtime/tensor_ops/tensor_var.d.ts +12 -0
  308. package/dist-browser/numbl-core/jit/builtins/runtime/tensor_ops/tensor_zeros_nd.d.ts +5 -0
  309. package/dist-browser/numbl-core/jit/builtins/runtime/tensor_ops/tensor_zeros_square.d.ts +5 -0
  310. package/dist-browser/numbl-core/jit/builtins/runtime/text/strcmp.d.ts +2 -0
  311. package/dist-browser/numbl-core/jit/codegen/cFormat.d.ts +36 -0
  312. package/dist-browser/numbl-core/jit/codegen/cHelpers.d.ts +48 -0
  313. package/dist-browser/numbl-core/jit/codegen/emit.d.ts +55 -0
  314. package/dist-browser/numbl-core/jit/codegen/emitCellTypedef.d.ts +23 -0
  315. package/dist-browser/numbl-core/jit/codegen/emitExpr.d.ts +33 -0
  316. package/dist-browser/numbl-core/jit/codegen/emitIndex.d.ts +56 -0
  317. package/dist-browser/numbl-core/jit/codegen/emitJs.d.ts +64 -0
  318. package/dist-browser/numbl-core/jit/codegen/emitNamedTypedef.d.ts +58 -0
  319. package/dist-browser/numbl-core/jit/codegen/emitStmt.d.ts +76 -0
  320. package/dist-browser/numbl-core/jit/codegen/emitTensorConcat.d.ts +23 -0
  321. package/dist-browser/numbl-core/jit/codegen/emitTensorConcatJs.d.ts +16 -0
  322. package/dist-browser/numbl-core/jit/codegen/emitTensorFused.d.ts +77 -0
  323. package/dist-browser/numbl-core/jit/codegen/inlinePass.d.ts +66 -0
  324. package/dist-browser/numbl-core/jit/codegen/liveness.d.ts +58 -0
  325. package/dist-browser/numbl-core/jit/codegen/prettyIR.d.ts +24 -0
  326. package/dist-browser/numbl-core/jit/codegen/runtime.d.ts +152 -0
  327. package/dist-browser/numbl-core/jit/compileSpec.d.ts +84 -0
  328. package/dist-browser/numbl-core/jit/compileSpecC.d.ts +100 -0
  329. package/dist-browser/numbl-core/jit/index.d.ts +15 -0
  330. package/dist-browser/numbl-core/jit/lowering/classDefs.d.ts +109 -0
  331. package/dist-browser/numbl-core/jit/lowering/definiteAssign.d.ts +42 -0
  332. package/dist-browser/numbl-core/jit/lowering/errors.d.ts +35 -0
  333. package/dist-browser/numbl-core/jit/lowering/indexFold.d.ts +31 -0
  334. package/dist-browser/numbl-core/jit/lowering/indexResolve.d.ts +100 -0
  335. package/dist-browser/numbl-core/jit/lowering/ir.d.ts +584 -0
  336. package/dist-browser/numbl-core/jit/lowering/lower.d.ts +271 -0
  337. package/dist-browser/numbl-core/jit/lowering/lowerCellIndex.d.ts +41 -0
  338. package/dist-browser/numbl-core/jit/lowering/lowerCellLit.d.ts +19 -0
  339. package/dist-browser/numbl-core/jit/lowering/lowerClassConstructor.d.ts +55 -0
  340. package/dist-browser/numbl-core/jit/lowering/lowerFuncCall.d.ts +34 -0
  341. package/dist-browser/numbl-core/jit/lowering/lowerHandle.d.ts +57 -0
  342. package/dist-browser/numbl-core/jit/lowering/lowerIndexLoad.d.ts +16 -0
  343. package/dist-browser/numbl-core/jit/lowering/lowerIndexSlice.d.ts +29 -0
  344. package/dist-browser/numbl-core/jit/lowering/lowerIndexSliceStore.d.ts +19 -0
  345. package/dist-browser/numbl-core/jit/lowering/lowerIndexStore.d.ts +14 -0
  346. package/dist-browser/numbl-core/jit/lowering/lowerMethodCall.d.ts +45 -0
  347. package/dist-browser/numbl-core/jit/lowering/lowerMultiAssign.d.ts +36 -0
  348. package/dist-browser/numbl-core/jit/lowering/lowerTensorLit.d.ts +25 -0
  349. package/dist-browser/numbl-core/jit/lowering/rangeCount.d.ts +19 -0
  350. package/dist-browser/numbl-core/jit/lowering/specialize.d.ts +93 -0
  351. package/dist-browser/numbl-core/jit/lowering/types.d.ts +503 -0
  352. package/dist-browser/numbl-core/jit/lowering/walk.d.ts +17 -0
  353. package/dist-browser/numbl-core/jit/numbl/index.d.ts +30 -0
  354. package/dist-browser/numbl-core/jit/parser/astUtils.d.ts +43 -0
  355. package/dist-browser/numbl-core/jit/parser/index.d.ts +12 -0
  356. package/dist-browser/numbl-core/jit/parser/sourceLoc.d.ts +12 -0
  357. package/dist-browser/numbl-core/jit/runtime/context.d.ts +23 -0
  358. package/dist-browser/numbl-core/jit/runtime/inferType.d.ts +10 -0
  359. package/dist-browser/numbl-core/jit/runtime/value.d.ts +101 -0
  360. package/dist-browser/numbl-core/jit/workspace/driverPrologue.d.ts +59 -0
  361. package/dist-browser/numbl-core/jit/workspace/mtoc2UserFunctionLoader.d.ts +62 -0
  362. package/dist-browser/numbl-core/jit/workspace/workspace.d.ts +243 -0
  363. package/dist-browser/numbl-core/jitDeclineDiagnostics.d.ts +32 -0
  364. package/dist-browser/numbl-core/jitTypes.d.ts +94 -0
  365. package/dist-browser/numbl-core/jsUserFunctions.d.ts +61 -0
  366. package/dist-browser/numbl-core/lexer/helpers.d.ts +15 -0
  367. package/dist-browser/numbl-core/lexer/index.d.ts +4 -0
  368. package/dist-browser/numbl-core/lexer/keywords.d.ts +3 -0
  369. package/dist-browser/numbl-core/lexer/token-config.d.ts +94 -0
  370. package/dist-browser/numbl-core/lexer/tokenizer.d.ts +9 -0
  371. package/dist-browser/numbl-core/lexer/types.d.ts +80 -0
  372. package/dist-browser/numbl-core/lowering/classInfo.d.ts +53 -0
  373. package/dist-browser/numbl-core/lowering/constants.d.ts +4 -0
  374. package/dist-browser/numbl-core/lowering/errors.d.ts +17 -0
  375. package/dist-browser/numbl-core/lowering/index.d.ts +3 -0
  376. package/dist-browser/numbl-core/lowering/itemTypes.d.ts +87 -0
  377. package/dist-browser/numbl-core/lowering/loweringContext.d.ts +241 -0
  378. package/dist-browser/numbl-core/native/bridge-resolve.d.ts +14 -0
  379. package/dist-browser/numbl-core/native/geometry-bridge.d.ts +39 -0
  380. package/dist-browser/numbl-core/native/lapack-bridge.d.ts +482 -0
  381. package/dist-browser/numbl-core/native/qhull-browser.d.ts +15 -0
  382. package/dist-browser/numbl-core/native/qhull-node.d.ts +13 -0
  383. package/dist-browser/numbl-core/native/ts-lapack-bridge.d.ts +9 -0
  384. package/dist-browser/numbl-core/native/ts-lapack-eig-complex.d.ts +32 -0
  385. package/dist-browser/numbl-core/ops/bessel.d.ts +18 -0
  386. package/dist-browser/numbl-core/ops/comparison.d.ts +11 -0
  387. package/dist-browser/numbl-core/ops/complexBinaryElemwise.d.ts +10 -0
  388. package/dist-browser/numbl-core/ops/complexUnaryElemwise.d.ts +8 -0
  389. package/dist-browser/numbl-core/ops/dispatch.d.ts +26 -0
  390. package/dist-browser/numbl-core/ops/index.d.ts +8 -0
  391. package/dist-browser/numbl-core/ops/opCodes.d.ts +70 -0
  392. package/dist-browser/numbl-core/ops/realBinaryElemwise.d.ts +8 -0
  393. package/dist-browser/numbl-core/ops/realUnaryElemwise.d.ts +5 -0
  394. package/dist-browser/numbl-core/ops/reduce.d.ts +6 -0
  395. package/dist-browser/numbl-core/parser/ArgumentsParser.d.ts +33 -0
  396. package/dist-browser/numbl-core/parser/ClassParser.d.ts +21 -0
  397. package/dist-browser/numbl-core/parser/CommandParser.d.ts +31 -0
  398. package/dist-browser/numbl-core/parser/ControlFlowParser.d.ts +16 -0
  399. package/dist-browser/numbl-core/parser/ExpressionParser.d.ts +32 -0
  400. package/dist-browser/numbl-core/parser/FunctionParser.d.ts +10 -0
  401. package/dist-browser/numbl-core/parser/Parser.d.ts +17 -0
  402. package/dist-browser/numbl-core/parser/ParserBase.d.ts +35 -0
  403. package/dist-browser/numbl-core/parser/StatementParser.d.ts +13 -0
  404. package/dist-browser/numbl-core/parser/errors.d.ts +15 -0
  405. package/dist-browser/numbl-core/parser/index.d.ts +7 -0
  406. package/dist-browser/numbl-core/parser/types.d.ts +342 -0
  407. package/dist-browser/numbl-core/runtime/alloc.d.ts +12 -0
  408. package/dist-browser/numbl-core/runtime/axisCommand.d.ts +34 -0
  409. package/dist-browser/numbl-core/runtime/compare.d.ts +5 -0
  410. package/dist-browser/numbl-core/runtime/constructors.d.ts +39 -0
  411. package/dist-browser/numbl-core/runtime/convert.d.ts +10 -0
  412. package/dist-browser/numbl-core/runtime/cow.d.ts +33 -0
  413. package/dist-browser/numbl-core/runtime/display.d.ts +6 -0
  414. package/dist-browser/numbl-core/runtime/error.d.ts +78 -0
  415. package/dist-browser/numbl-core/runtime/index.d.ts +13 -0
  416. package/dist-browser/numbl-core/runtime/indexing.d.ts +28 -0
  417. package/dist-browser/numbl-core/runtime/plotBuiltinDispatch.d.ts +92 -0
  418. package/dist-browser/numbl-core/runtime/plotUtils.d.ts +336 -0
  419. package/dist-browser/numbl-core/runtime/refcount.d.ts +85 -0
  420. package/dist-browser/numbl-core/runtime/runtime.d.ts +354 -0
  421. package/dist-browser/numbl-core/runtime/runtimeDispatch.d.ts +27 -0
  422. package/dist-browser/numbl-core/runtime/runtimeHelpers.d.ts +31 -0
  423. package/dist-browser/numbl-core/runtime/runtimeIndexing.d.ts +28 -0
  424. package/dist-browser/numbl-core/runtime/runtimeMemberAccess.d.ts +26 -0
  425. package/dist-browser/numbl-core/runtime/runtimeOperators.d.ts +24 -0
  426. package/dist-browser/numbl-core/runtime/runtimePlot.d.ts +129 -0
  427. package/dist-browser/numbl-core/runtime/sentinels.d.ts +4 -0
  428. package/dist-browser/numbl-core/runtime/specialBuiltinNames.d.ts +2 -0
  429. package/dist-browser/numbl-core/runtime/specialBuiltins.d.ts +13 -0
  430. package/dist-browser/numbl-core/runtime/struct-access.d.ts +11 -0
  431. package/dist-browser/numbl-core/runtime/syncChannel.d.ts +1 -0
  432. package/dist-browser/numbl-core/runtime/tensor-construction.d.ts +10 -0
  433. package/dist-browser/numbl-core/runtime/types.d.ts +197 -0
  434. package/dist-browser/numbl-core/runtime/uihtmlSession.d.ts +40 -0
  435. package/dist-browser/numbl-core/runtime/utils.d.ts +19 -0
  436. package/dist-browser/numbl-core/stdlib-bundle.d.ts +3 -0
  437. package/dist-browser/numbl-core/systemAdapter.d.ts +23 -0
  438. package/dist-browser/numbl-core/version.d.ts +2 -0
  439. package/dist-browser/numbl-core/workspace/index.d.ts +4 -0
  440. package/dist-browser/numbl-core/workspace/types.d.ts +24 -0
  441. package/dist-browser/ts-lapack/src/BLAS/daxpy.d.ts +1 -0
  442. package/dist-browser/ts-lapack/src/BLAS/dcopy.d.ts +1 -0
  443. package/dist-browser/ts-lapack/src/BLAS/ddot.d.ts +1 -0
  444. package/dist-browser/ts-lapack/src/BLAS/dgemm.d.ts +1 -0
  445. package/dist-browser/ts-lapack/src/BLAS/dgemm_optimized.d.ts +1 -0
  446. package/dist-browser/ts-lapack/src/BLAS/dgemv.d.ts +1 -0
  447. package/dist-browser/ts-lapack/src/BLAS/dger.d.ts +1 -0
  448. package/dist-browser/ts-lapack/src/BLAS/dnrm2.d.ts +1 -0
  449. package/dist-browser/ts-lapack/src/BLAS/drot.d.ts +1 -0
  450. package/dist-browser/ts-lapack/src/BLAS/dscal.d.ts +1 -0
  451. package/dist-browser/ts-lapack/src/BLAS/dswap.d.ts +1 -0
  452. package/dist-browser/ts-lapack/src/BLAS/dtrmm.d.ts +1 -0
  453. package/dist-browser/ts-lapack/src/BLAS/dtrmv.d.ts +1 -0
  454. package/dist-browser/ts-lapack/src/BLAS/dtrsm.d.ts +1 -0
  455. package/dist-browser/ts-lapack/src/BLAS/idamax.d.ts +1 -0
  456. package/dist-browser/ts-lapack/src/SRC/dbdsqr.d.ts +10 -0
  457. package/dist-browser/ts-lapack/src/SRC/dgebak.d.ts +1 -0
  458. package/dist-browser/ts-lapack/src/SRC/dgebal.d.ts +5 -0
  459. package/dist-browser/ts-lapack/src/SRC/dgebd2.d.ts +1 -0
  460. package/dist-browser/ts-lapack/src/SRC/dgebrd.d.ts +1 -0
  461. package/dist-browser/ts-lapack/src/SRC/dgeev.d.ts +3 -0
  462. package/dist-browser/ts-lapack/src/SRC/dgehd2.d.ts +1 -0
  463. package/dist-browser/ts-lapack/src/SRC/dgehrd.d.ts +1 -0
  464. package/dist-browser/ts-lapack/src/SRC/dgelq2.d.ts +1 -0
  465. package/dist-browser/ts-lapack/src/SRC/dgelqf.d.ts +1 -0
  466. package/dist-browser/ts-lapack/src/SRC/dgeqr2.d.ts +1 -0
  467. package/dist-browser/ts-lapack/src/SRC/dgeqrf.d.ts +1 -0
  468. package/dist-browser/ts-lapack/src/SRC/dgeqrf_optimized.d.ts +1 -0
  469. package/dist-browser/ts-lapack/src/SRC/dgesvd.d.ts +28 -0
  470. package/dist-browser/ts-lapack/src/SRC/dgetrf.d.ts +1 -0
  471. package/dist-browser/ts-lapack/src/SRC/dgetrf2.d.ts +1 -0
  472. package/dist-browser/ts-lapack/src/SRC/dgetri.d.ts +1 -0
  473. package/dist-browser/ts-lapack/src/SRC/dhseqr.d.ts +32 -0
  474. package/dist-browser/ts-lapack/src/SRC/dlabrd.d.ts +1 -0
  475. package/dist-browser/ts-lapack/src/SRC/dlacpy.d.ts +18 -0
  476. package/dist-browser/ts-lapack/src/SRC/dladiv.d.ts +9 -0
  477. package/dist-browser/ts-lapack/src/SRC/dlaexc.d.ts +21 -0
  478. package/dist-browser/ts-lapack/src/SRC/dlahqr.d.ts +24 -0
  479. package/dist-browser/ts-lapack/src/SRC/dlahr2.d.ts +1 -0
  480. package/dist-browser/ts-lapack/src/SRC/dlaln2.d.ts +5 -0
  481. package/dist-browser/ts-lapack/src/SRC/dlamch.d.ts +1 -0
  482. package/dist-browser/ts-lapack/src/SRC/dlange.d.ts +1 -0
  483. package/dist-browser/ts-lapack/src/SRC/dlanv2.d.ts +12 -0
  484. package/dist-browser/ts-lapack/src/SRC/dlapy2.d.ts +1 -0
  485. package/dist-browser/ts-lapack/src/SRC/dlaqr1.d.ts +1 -0
  486. package/dist-browser/ts-lapack/src/SRC/dlaqr30.d.ts +81 -0
  487. package/dist-browser/ts-lapack/src/SRC/dlaqr5.d.ts +38 -0
  488. package/dist-browser/ts-lapack/src/SRC/dlarf.d.ts +18 -0
  489. package/dist-browser/ts-lapack/src/SRC/dlarf1f.d.ts +1 -0
  490. package/dist-browser/ts-lapack/src/SRC/dlarfb.d.ts +25 -0
  491. package/dist-browser/ts-lapack/src/SRC/dlarfg.d.ts +4 -0
  492. package/dist-browser/ts-lapack/src/SRC/dlarft.d.ts +20 -0
  493. package/dist-browser/ts-lapack/src/SRC/dlarfx.d.ts +17 -0
  494. package/dist-browser/ts-lapack/src/SRC/dlartg.d.ts +5 -0
  495. package/dist-browser/ts-lapack/src/SRC/dlas2.d.ts +4 -0
  496. package/dist-browser/ts-lapack/src/SRC/dlascl.d.ts +1 -0
  497. package/dist-browser/ts-lapack/src/SRC/dlaset.d.ts +19 -0
  498. package/dist-browser/ts-lapack/src/SRC/dlasr.d.ts +1 -0
  499. package/dist-browser/ts-lapack/src/SRC/dlassq.d.ts +18 -0
  500. package/dist-browser/ts-lapack/src/SRC/dlasv2.d.ts +8 -0
  501. package/dist-browser/ts-lapack/src/SRC/dlaswp.d.ts +1 -0
  502. package/dist-browser/ts-lapack/src/SRC/dlasy2.d.ts +5 -0
  503. package/dist-browser/ts-lapack/src/SRC/dorg2r.d.ts +1 -0
  504. package/dist-browser/ts-lapack/src/SRC/dorgbr.d.ts +1 -0
  505. package/dist-browser/ts-lapack/src/SRC/dorghr.d.ts +1 -0
  506. package/dist-browser/ts-lapack/src/SRC/dorgl2.d.ts +1 -0
  507. package/dist-browser/ts-lapack/src/SRC/dorglq.d.ts +1 -0
  508. package/dist-browser/ts-lapack/src/SRC/dorgqr.d.ts +1 -0
  509. package/dist-browser/ts-lapack/src/SRC/dorgqr_optimized.d.ts +1 -0
  510. package/dist-browser/ts-lapack/src/SRC/dorm2r.d.ts +1 -0
  511. package/dist-browser/ts-lapack/src/SRC/dormhr.d.ts +1 -0
  512. package/dist-browser/ts-lapack/src/SRC/dormqr.d.ts +1 -0
  513. package/dist-browser/ts-lapack/src/SRC/dpotf2.d.ts +1 -0
  514. package/dist-browser/ts-lapack/src/SRC/dtrevc3.d.ts +27 -0
  515. package/dist-browser/ts-lapack/src/SRC/dtrexc.d.ts +24 -0
  516. package/dist-browser/ts-lapack/src/SRC/dtrti2.d.ts +1 -0
  517. package/dist-browser/ts-lapack/src/SRC/dtrtri.d.ts +1 -0
  518. package/dist-browser/ts-lapack/src/utils/constants.d.ts +28 -0
  519. package/dist-browser/ts-lapack/src/utils/iladlc.d.ts +1 -0
  520. package/dist-browser/ts-lapack/src/utils/iladlr.d.ts +1 -0
  521. package/dist-browser/ts-lapack/src/utils/ilaenv.d.ts +1 -0
  522. package/dist-browser/ts-lapack/src/utils/xerbla.d.ts +1 -0
  523. package/dist-browser/vfs/BrowserFileIOAdapter.d.ts +60 -0
  524. package/dist-browser/vfs/BrowserSystemAdapter.d.ts +27 -0
  525. package/dist-browser/vfs/VirtualFileSystem.d.ts +66 -0
  526. package/dist-browser/vfs/syncVfsChanges.d.ts +23 -0
  527. package/dist-browser/vfs/unzipToFiles.d.ts +7 -0
  528. package/dist-cli/cli.js +1290 -197
  529. package/dist-lib/lib.js +1284 -197
  530. package/dist-lib/numbl-core/helpers/scanFormat.d.ts +11 -0
  531. package/dist-lib/numbl-core/jit/builtins/defs/logical/fieldnames.d.ts +2 -2
  532. package/dist-lib/numbl-core/runtime/constructors.d.ts +3 -1
  533. package/dist-lib/numbl-core/runtime/indexing.d.ts +3 -0
  534. package/dist-lib/numbl-core/runtime/runtime.d.ts +1 -0
  535. package/dist-lib/numbl-core/runtime/types.d.ts +15 -1
  536. package/dist-lib/numbl-core/runtime/utils.d.ts +3 -0
  537. package/dist-lib/numbl-core/version.d.ts +1 -1
  538. package/dist-lib/vfs/BrowserFileIOAdapter.d.ts +6 -0
  539. package/dist-site-viewer/assets/{index-C-wfkZK0.js → index-CT9HA1Pn.js} +318 -316
  540. package/dist-site-viewer/assets/numbl-worker-CYPflGmm.js +5246 -0
  541. package/dist-site-viewer/index.html +1 -1
  542. package/package.json +9 -3
  543. package/dist-site-viewer/assets/numbl-worker-Bnbz2rMQ.js +0 -5228
@@ -0,0 +1,482 @@
1
+ /**
2
+ * LAPACK bridge — a module-level singleton that holds a reference to the
3
+ * native addon when running under Node.js.
4
+ *
5
+ * In the browser the bridge is never set (stays null) and callers fall back
6
+ * to pure-JavaScript implementations.
7
+ *
8
+ * Usage (CLI startup):
9
+ * import { setLapackBridge } from './numbl-core/native/lapack-bridge.js';
10
+ * setLapackBridge(require('<path-to-addon>'));
11
+ *
12
+ * Usage (builtin):
13
+ * import { getLapackBridge } from '../native/lapack-bridge.js';
14
+ * const bridge = getLapackBridge();
15
+ * if (bridge) { ... use bridge.inv(...) ... }
16
+ */
17
+ /**
18
+ * Expected native addon version. Bump this whenever the C++ addon API changes
19
+ * (must match ADDON_VERSION in numbl_addon.cpp).
20
+ */
21
+ export declare const NATIVE_ADDON_EXPECTED_VERSION = 8;
22
+ export interface LapackBridge {
23
+ /** Returns the native addon's version number. */
24
+ addonVersion?(): number;
25
+ /**
26
+ * Invert an n×n real matrix stored in column-major order (MATLAB/LAPACK convention).
27
+ * @param data Column-major Float64Array of length n*n (not modified).
28
+ * @param n Matrix dimension.
29
+ * @returns Inverted matrix as a allocFloat64Array in column-major order.
30
+ * @throws Error if the matrix is singular.
31
+ */
32
+ inv(data: Float64Array, n: number): Float64Array;
33
+ /**
34
+ * Invert an n×n complex matrix stored in column-major order (MATLAB/LAPACK convention).
35
+ * Complex matrices are stored with separate real and imaginary parts.
36
+ * @param dataRe Real parts in column-major Float64Array of length n*n (not modified).
37
+ * @param dataIm Imaginary parts in column-major Float64Array of length n*n (not modified).
38
+ * @param n Matrix dimension.
39
+ * @returns Object with {re, im} - inverted matrix parts as Float64Arrays in column-major order.
40
+ * @throws Error if the matrix is singular.
41
+ */
42
+ invComplex?(dataRe: Float64Array, dataIm: Float64Array, n: number): {
43
+ re: Float64Array;
44
+ im: Float64Array;
45
+ };
46
+ /**
47
+ * QR decomposition of an m×n real matrix stored in column-major order.
48
+ * Uses LAPACK dgeqrf (QR factorisation) + dorgqr (generate Q).
49
+ * @param data Column-major Float64Array of length m*n (not modified).
50
+ * @param m Number of rows.
51
+ * @param n Number of columns.
52
+ * @param econ true → economy/thin QR (Q: m×k, R: k×n); false → full QR (Q: m×m, R: m×n). k = min(m,n).
53
+ * @param wantQ false → skip dorgqr; Q will be absent from the returned object.
54
+ * @returns Object with R (always present) and Q (present only when wantQ=true).
55
+ */
56
+ qr?(data: Float64Array, m: number, n: number, econ: boolean, wantQ: boolean): {
57
+ Q: Float64Array;
58
+ R: Float64Array;
59
+ };
60
+ /**
61
+ * Column-pivoted QR decomposition: A*P = Q*R via dgeqp3 + dorgqr.
62
+ * @param data Column-major Float64Array of length m*n (not modified).
63
+ * @param m Number of rows.
64
+ * @param n Number of columns.
65
+ * @param econ true → economy/thin QR; false → full QR.
66
+ * @returns Object with Q, R, and jpvt (1-based permutation vector as Int32Array).
67
+ */
68
+ qrPivot?(data: Float64Array, m: number, n: number, econ: boolean): {
69
+ Q: Float64Array;
70
+ R: Float64Array;
71
+ jpvt: Int32Array;
72
+ };
73
+ /**
74
+ * Column-pivoted QR decomposition of an m×n complex matrix: A*P = Q*R via zgeqp3 + zungqr.
75
+ */
76
+ qrPivotComplex?(dataRe: Float64Array, dataIm: Float64Array, m: number, n: number, econ: boolean): {
77
+ QRe: Float64Array;
78
+ QIm: Float64Array;
79
+ RRe: Float64Array;
80
+ RIm: Float64Array;
81
+ jpvt: Int32Array;
82
+ };
83
+ /**
84
+ * QR decomposition of an m×n complex matrix stored in column-major order.
85
+ * Uses LAPACK zgeqrf (QR factorisation) + zungqr (generate Q).
86
+ * @param dataRe Real parts — column-major Float64Array of length m*n (not modified).
87
+ * @param dataIm Imaginary parts — column-major Float64Array of length m*n (not modified).
88
+ * @param m Number of rows.
89
+ * @param n Number of columns.
90
+ * @param econ true → economy/thin QR; false → full QR.
91
+ * @param wantQ false → skip zungqr; Q properties will be absent from the returned object.
92
+ * @returns Object with RRe, RIm (always present) and QRe, QIm (present only when wantQ=true).
93
+ */
94
+ qrComplex?(dataRe: Float64Array, dataIm: Float64Array, m: number, n: number, econ: boolean, wantQ: boolean): {
95
+ QRe?: Float64Array;
96
+ QIm?: Float64Array;
97
+ RRe: Float64Array;
98
+ RIm: Float64Array;
99
+ };
100
+ /**
101
+ * SVD (Singular Value Decomposition) of an m×n real matrix stored in column-major order.
102
+ * Uses LAPACK dgesdd (divide-and-conquer SVD).
103
+ * @param data Column-major Float64Array of length m*n (not modified).
104
+ * @param m Number of rows.
105
+ * @param n Number of columns.
106
+ * @param econ true → economy SVD (U: m×k, S: k, V: n×k); false → full SVD (U: m×m, S: min(m,n), V: n×n). k = min(m,n).
107
+ * @param computeUV true → compute U and V; false → compute S only.
108
+ * @returns Object with S (always present as vector of singular values) and optionally U and V.
109
+ */
110
+ svd?(data: Float64Array, m: number, n: number, econ: boolean, computeUV: boolean): {
111
+ U?: Float64Array;
112
+ S: Float64Array;
113
+ V?: Float64Array;
114
+ };
115
+ /**
116
+ * SVD (Singular Value Decomposition) of an m×n complex matrix stored in column-major order.
117
+ * Uses LAPACK zgesdd (complex divide-and-conquer SVD).
118
+ * @param dataRe Real parts — column-major Float64Array of length m*n (not modified).
119
+ * @param dataIm Imaginary parts — column-major Float64Array of length m*n (not modified).
120
+ * @param m Number of rows.
121
+ * @param n Number of columns.
122
+ * @param econ true → economy SVD; false → full SVD.
123
+ * @param computeUV true → compute U and V; false → compute S only.
124
+ * @returns Object with S (real singular values) and optionally URe, UIm, VRe, VIm.
125
+ */
126
+ svdComplex?(dataRe: Float64Array, dataIm: Float64Array, m: number, n: number, econ: boolean, computeUV: boolean): {
127
+ S: Float64Array;
128
+ URe?: Float64Array;
129
+ UIm?: Float64Array;
130
+ VRe?: Float64Array;
131
+ VIm?: Float64Array;
132
+ };
133
+ /**
134
+ * Real matrix-matrix multiplication using BLAS dgemm.
135
+ * Computes C = A * B in column-major order.
136
+ * @param A Column-major Float64Array of length m*k (A is m×k, not modified).
137
+ * @param m Number of rows in A and C.
138
+ * @param k Number of columns in A and rows in B.
139
+ * @param B Column-major Float64Array of length k*n (B is k×n, not modified).
140
+ * @param n Number of columns in B and C.
141
+ * @returns C = A*B as a allocFloat64Array of length m*n in column-major order.
142
+ */
143
+ matmul?(A: Float64Array, m: number, k: number, B: Float64Array, n: number): Float64Array;
144
+ /**
145
+ * Complex matrix-matrix multiplication using BLAS zgemm.
146
+ * Computes C = A * B in column-major order.
147
+ * @param ARe Real parts of A, column-major Float64Array of length m*k.
148
+ * @param AIm Imaginary parts of A, column-major Float64Array of length m*k.
149
+ * @param m Number of rows in A and C.
150
+ * @param k Number of columns in A and rows in B.
151
+ * @param BRe Real parts of B, column-major Float64Array of length k*n.
152
+ * @param BIm Imaginary parts of B, column-major Float64Array of length k*n.
153
+ * @param n Number of columns in B and C.
154
+ * @returns Object with {re, im?} — complex result as Float64Arrays.
155
+ */
156
+ matmulComplex?(ARe: Float64Array, AIm: Float64Array, m: number, k: number, BRe: Float64Array, BIm: Float64Array, n: number): {
157
+ re: Float64Array;
158
+ im?: Float64Array;
159
+ };
160
+ /**
161
+ * Solve a linear system A * X = B.
162
+ * If A is square (m === n), uses LU factorization (dgesv / dgetrf+solve).
163
+ * If A is non-square, uses QR / LQ factorization (dgels / dgeqrf+solve):
164
+ * overdetermined (m > n): least-squares solution minimising ||A*X - B||₂
165
+ * underdetermined (m < n): minimum-norm solution minimising ||X||₂
166
+ * @param A Column-major Float64Array of length m*n (A is m×n, not modified).
167
+ * @param m Number of rows in A and B.
168
+ * @param n Number of columns in A; also the number of rows in the result X.
169
+ * @param B Column-major Float64Array of length m*nrhs (B is m×nrhs, not modified).
170
+ * @param nrhs Number of right-hand sides (columns of B and X).
171
+ * @returns X as a allocFloat64Array of length n*nrhs in column-major order.
172
+ */
173
+ linsolve?(A: Float64Array, m: number, n: number, B: Float64Array, nrhs: number): Float64Array;
174
+ /**
175
+ * Solve a complex linear system A * X = B.
176
+ * Input/output are column-major Float64Arrays for real and imaginary parts.
177
+ * If A is square (m === n), uses LU factorization (zgesv).
178
+ * If A is non-square, uses QR / LQ factorization (zgels):
179
+ * overdetermined (m > n): least-squares solution minimising ||A*X - B||₂
180
+ * underdetermined (m < n): minimum-norm solution minimising ||X||₂
181
+ * @param ARe Real parts of A — column-major Float64Array of length m*n (not modified).
182
+ * @param AIm Imaginary parts of A — column-major Float64Array of length m*n (not modified).
183
+ * @param m Number of rows in A and B.
184
+ * @param n Number of columns in A; also the number of rows in the result X.
185
+ * @param BRe Real parts of B — column-major Float64Array of length m*nrhs (not modified).
186
+ * @param BIm Imaginary parts of B — column-major Float64Array of length m*nrhs (not modified).
187
+ * @param nrhs Number of right-hand sides (columns of B and X).
188
+ * @returns Object with {re, im} — X as Float64Arrays of length n*nrhs in column-major order.
189
+ */
190
+ linsolveComplex?(ARe: Float64Array, AIm: Float64Array, m: number, n: number, BRe: Float64Array, BIm: Float64Array, nrhs: number): {
191
+ re: Float64Array;
192
+ im: Float64Array;
193
+ };
194
+ /**
195
+ * Eigenvalue decomposition of an n×n real matrix stored in column-major order.
196
+ * Uses LAPACK dgeev.
197
+ * @param data Column-major Float64Array of length n*n (not modified).
198
+ * @param n Matrix dimension.
199
+ * @param computeVL true → compute left eigenvectors.
200
+ * @param computeVR true → compute right eigenvectors.
201
+ * @param balance true → balance matrix before computing (default); false → no balancing.
202
+ * @returns Object with wr/wi (real/imag parts of eigenvalues) and optionally VL/VR.
203
+ */
204
+ eig?(data: Float64Array, n: number, computeVL: boolean, computeVR: boolean, balance: boolean): {
205
+ wr: Float64Array;
206
+ wi: Float64Array;
207
+ VL?: Float64Array;
208
+ VR?: Float64Array;
209
+ };
210
+ /**
211
+ * Eigenvalue decomposition of an n×n complex matrix stored in column-major order.
212
+ * Uses LAPACK zgeev.
213
+ * @param dataRe Real parts — column-major Float64Array of length n*n (not modified).
214
+ * @param dataIm Imaginary parts — column-major Float64Array of length n*n (not modified).
215
+ * @param n Matrix dimension.
216
+ * @param computeVL true → compute left eigenvectors.
217
+ * @param computeVR true → compute right eigenvectors.
218
+ * @returns Object with wRe/wIm (real/imag parts of eigenvalues) and optionally VLRe/VLIm/VRRe/VRIm.
219
+ */
220
+ eigComplex?(dataRe: Float64Array, dataIm: Float64Array, n: number, computeVL: boolean, computeVR: boolean): {
221
+ wRe: Float64Array;
222
+ wIm: Float64Array;
223
+ VLRe?: Float64Array;
224
+ VLIm?: Float64Array;
225
+ VRRe?: Float64Array;
226
+ VRIm?: Float64Array;
227
+ };
228
+ /**
229
+ * LU factorization of an m×n real matrix with partial pivoting (dgetrf).
230
+ * @param data Column-major Float64Array of length m*n (not modified).
231
+ * @param m Number of rows.
232
+ * @param n Number of columns.
233
+ * @returns Object with:
234
+ * - LU: m×n Float64Array with L (unit lower) and U (upper) packed together.
235
+ * - ipiv: Int32Array of length min(m,n), 1-based pivot indices from dgetrf.
236
+ */
237
+ lu?(data: Float64Array, m: number, n: number): {
238
+ LU: Float64Array;
239
+ ipiv: Int32Array;
240
+ };
241
+ /**
242
+ * LU factorization of an m×n complex matrix with partial pivoting (zgetrf).
243
+ * @param dataRe Real parts — column-major Float64Array of length m*n (not modified).
244
+ * @param dataIm Imaginary parts — column-major Float64Array of length m*n (not modified).
245
+ * @param m Number of rows.
246
+ * @param n Number of columns.
247
+ * @returns Object with:
248
+ * - LURe, LUIm: m×n Float64Arrays with L (unit lower) and U (upper) packed together.
249
+ * - ipiv: Int32Array of length min(m,n), 1-based pivot indices from zgetrf.
250
+ */
251
+ luComplex?(dataRe: Float64Array, dataIm: Float64Array, m: number, n: number): {
252
+ LURe: Float64Array;
253
+ LUIm: Float64Array;
254
+ ipiv: Int32Array;
255
+ };
256
+ /**
257
+ * Cholesky factorization of an n×n real symmetric positive definite matrix.
258
+ * Uses LAPACK dpotrf.
259
+ * @param data Column-major Float64Array of length n*n (not modified).
260
+ * @param n Matrix dimension.
261
+ * @param upper true → compute upper triangular R (A = R'*R);
262
+ * false → compute lower triangular L (A = L*L').
263
+ * @returns Object with:
264
+ * - R: n×n Float64Array with the triangular factor (opposite triangle zeroed).
265
+ * - info: 0 if successful, >0 if not positive definite (index of failing pivot).
266
+ */
267
+ chol?(data: Float64Array, n: number, upper: boolean): {
268
+ R: Float64Array;
269
+ info: number;
270
+ };
271
+ /**
272
+ * Cholesky factorization of an n×n complex Hermitian positive definite matrix.
273
+ * Uses LAPACK zpotrf.
274
+ * @param dataRe Real parts — column-major Float64Array of length n*n (not modified).
275
+ * @param dataIm Imaginary parts — column-major Float64Array of length n*n (not modified).
276
+ * @param n Matrix dimension.
277
+ * @param upper true → compute upper triangular R (A = R'*R);
278
+ * false → compute lower triangular L (A = L*L').
279
+ * @returns Object with:
280
+ * - RRe, RIm: n×n Float64Arrays with the triangular factor.
281
+ * - info: 0 if successful, >0 if not positive definite.
282
+ */
283
+ cholComplex?(dataRe: Float64Array, dataIm: Float64Array, n: number, upper: boolean): {
284
+ RRe: Float64Array;
285
+ RIm: Float64Array;
286
+ info: number;
287
+ };
288
+ /**
289
+ * QZ factorization (generalized Schur decomposition) of an n×n real matrix pair.
290
+ * Uses LAPACK dgges (and dtgevc for eigenvectors).
291
+ * @param dataA Column-major Float64Array of length n*n (not modified).
292
+ * @param dataB Column-major Float64Array of length n*n (not modified).
293
+ * @param n Matrix dimension.
294
+ * @param computeEigvecs true → also compute generalized eigenvectors via dtgevc.
295
+ * @returns Object with:
296
+ * - AA: n×n Float64Array, upper quasi-triangular Schur form of A.
297
+ * - BB: n×n Float64Array, upper triangular Schur form of B.
298
+ * - Q: n×n Float64Array, left orthogonal factor (Q*A*Z = AA).
299
+ * - Z: n×n Float64Array, right orthogonal factor.
300
+ * - alphar, alphai, beta: Float64Array(n), generalized eigenvalue components.
301
+ * - V?: n×n Float64Array, right generalized eigenvectors (packed, like dgeev format).
302
+ * - W?: n×n Float64Array, left generalized eigenvectors (packed, like dgeev format).
303
+ */
304
+ qz?(dataA: Float64Array, dataB: Float64Array, n: number, computeEigvecs: boolean): {
305
+ AA: Float64Array;
306
+ BB: Float64Array;
307
+ Q: Float64Array;
308
+ Z: Float64Array;
309
+ alphar: Float64Array;
310
+ alphai: Float64Array;
311
+ beta: Float64Array;
312
+ V?: Float64Array;
313
+ W?: Float64Array;
314
+ };
315
+ /**
316
+ * Complex QZ factorization (generalized Schur decomposition) of an n×n complex matrix pair.
317
+ * Uses LAPACK zgges (and ztgevc for eigenvectors).
318
+ */
319
+ /**
320
+ * Forward/inverse 1D FFT on real input via FFTW.
321
+ * Does NOT normalize for inverse — caller handles 1/n scaling.
322
+ * @param re Real input data as Float64Array of length n.
323
+ * @param n Transform length.
324
+ * @param inverse true for inverse FFT, false for forward.
325
+ * @returns { re, im } Float64Arrays of length n.
326
+ */
327
+ fft1d?(re: Float64Array, n: number, inverse: boolean): {
328
+ re: Float64Array;
329
+ im: Float64Array;
330
+ };
331
+ /**
332
+ * Forward/inverse 1D FFT on complex input via FFTW.
333
+ * Does NOT normalize for inverse — caller handles 1/n scaling.
334
+ * @param re Real part of input as Float64Array of length n.
335
+ * @param im Imaginary part of input as Float64Array of length n.
336
+ * @param n Transform length.
337
+ * @param inverse true for inverse FFT, false for forward.
338
+ * @returns { re, im } Float64Arrays of length n.
339
+ */
340
+ fft1dComplex?(re: Float64Array, im: Float64Array, n: number, inverse: boolean): {
341
+ re: Float64Array;
342
+ im: Float64Array;
343
+ };
344
+ /**
345
+ * Batch FFT along a single dimension of a column-major tensor via FFTW.
346
+ * Transforms ALL fibers in one FFTW call using the guru split interface.
347
+ * Does NOT normalize for inverse — caller handles 1/n scaling.
348
+ * @param re Real part of input tensor (column-major flat array).
349
+ * @param im Imaginary part, or null for real input.
350
+ * @param shape Tensor dimensions as a JS array of numbers.
351
+ * @param dim 0-based dimension to transform along.
352
+ * @param n FFT length (may differ from shape[dim] for pad/truncate).
353
+ * @param inverse true for inverse FFT, false for forward.
354
+ * @returns { re, im } Float64Arrays for the output tensor.
355
+ */
356
+ fftAlongDim?(re: Float64Array, im: Float64Array | null, shape: number[], dim: number, n: number, inverse: boolean): {
357
+ re: Float64Array;
358
+ im: Float64Array;
359
+ };
360
+ qzComplex?(dataARe: Float64Array, dataAIm: Float64Array, dataBRe: Float64Array, dataBIm: Float64Array, n: number, computeEigvecs: boolean): {
361
+ AARe: Float64Array;
362
+ AAIm: Float64Array;
363
+ BBRe: Float64Array;
364
+ BBIm: Float64Array;
365
+ QRe: Float64Array;
366
+ QIm: Float64Array;
367
+ ZRe: Float64Array;
368
+ ZIm: Float64Array;
369
+ alphaRe: Float64Array;
370
+ alphaIm: Float64Array;
371
+ betaRe: Float64Array;
372
+ betaIm: Float64Array;
373
+ VRe?: Float64Array;
374
+ VIm?: Float64Array;
375
+ WRe?: Float64Array;
376
+ WIm?: Float64Array;
377
+ };
378
+ /**
379
+ * Bulk fill normal random values using Marsaglia polar + xoshiro128**.
380
+ * State is mutated in-place. Spare is passed in/out to preserve pair caching.
381
+ */
382
+ fillRandn?(state: Uint32Array, n: number, spare: number, hasSpare: boolean): {
383
+ data: Float64Array;
384
+ spare: number;
385
+ hasSpare: boolean;
386
+ };
387
+ /**
388
+ * Unary element-wise math on a real Float64Array.
389
+ * op: 0=exp, 1=log, 2=log2, 3=log10, 4=sqrt, 5=abs, 6=floor, 7=ceil,
390
+ * 8=round, 9=trunc, 10=sin, 11=cos, 12=tan, 13=asin, 14=acos, 15=atan,
391
+ * 16=sinh, 17=cosh, 18=tanh, 19=sign
392
+ */
393
+ unaryElemwise?(arr: Float64Array, op: number): Float64Array;
394
+ /** Element-wise binary op on real Float64Arrays. op: 0=add, 1=sub, 2=mul, 3=div */
395
+ elemwise?(a: Float64Array, b: Float64Array, op: number): Float64Array;
396
+ /** Scalar-tensor element-wise op. scalarOnLeft: true → scalar op arr[i], false → arr[i] op scalar */
397
+ elemwiseScalar?(scalar: number, arr: Float64Array, op: number, scalarOnLeft: boolean): Float64Array;
398
+ /**
399
+ * Restarted GMRES solver for A*x = b (real, dense matrices only).
400
+ * Uses BLAS dgemv for matvec and LAPACK dgetrf+dgetrs for preconditioner.
401
+ * @param A Column-major Float64Array of length n*n (not modified).
402
+ * @param n System dimension.
403
+ * @param b Right-hand side Float64Array of length n.
404
+ * @param restart Inner iterations per restart cycle (use n for no restart).
405
+ * @param tol Convergence tolerance on relative preconditioned residual.
406
+ * @param maxit Maximum number of outer iterations.
407
+ * @param M1 Preconditioner factor 1 (n×n column-major), or null.
408
+ * @param M2 Preconditioner factor 2 (n×n column-major), or null.
409
+ * @param x0 Initial guess (length n), or null for zeros.
410
+ * @returns Object with x, flag, relres, iter (Int32Array[2]), resvec.
411
+ */
412
+ gmres?(A: Float64Array, n: number, b: Float64Array, restart: number, tol: number, maxit: number, M1: Float64Array | null, M2: Float64Array | null, x0: Float64Array | null): {
413
+ x: Float64Array;
414
+ flag: number;
415
+ relres: number;
416
+ iter: Int32Array;
417
+ resvec: Float64Array;
418
+ };
419
+ /**
420
+ * Complex restarted GMRES solver for A*x = b (split real/imag dense matrices).
421
+ */
422
+ gmresComplex?(ARe: Float64Array, AIm: Float64Array, n: number, bRe: Float64Array, bIm: Float64Array, restart: number, tol: number, maxit: number, M1Re: Float64Array | null, M1Im: Float64Array | null, M2Re: Float64Array | null, M2Im: Float64Array | null, x0Re: Float64Array | null, x0Im: Float64Array | null): {
423
+ xRe: Float64Array;
424
+ xIm: Float64Array;
425
+ flag: number;
426
+ relres: number;
427
+ iter: Int32Array;
428
+ resvec: Float64Array;
429
+ };
430
+ /** Element-wise binary op on complex Float64Arrays. op: 0=add, 1=sub, 2=mul, 3=div */
431
+ elemwiseComplex?(aRe: Float64Array, aIm: Float64Array | null, bRe: Float64Array, bIm: Float64Array | null, op: number): {
432
+ re: Float64Array;
433
+ im?: Float64Array;
434
+ };
435
+ /** Complex-scalar * (real or complex) tensor element-wise op.
436
+ * op: 0=add, 1=sub, 2=mul, 3=div.
437
+ * Pass null for arrIm to treat the tensor as purely real. */
438
+ elemwiseComplexScalar?(scalarRe: number, scalarIm: number, arrRe: Float64Array, arrIm: Float64Array | null, op: number, scalarOnLeft: boolean): {
439
+ re: Float64Array;
440
+ im?: Float64Array;
441
+ };
442
+ /** Real binary elemwise: out[i] = a[i] OP b[i]. op codes per OpRealBin. */
443
+ tensorOpRealBinary?(op: number, n: number, a: Float64Array, b: Float64Array, out: Float64Array): void;
444
+ /** Real scalar-tensor binary elemwise. */
445
+ tensorOpRealScalarBinary?(op: number, n: number, scalar: number, arr: Float64Array, scalarOnLeft: boolean, out: Float64Array): void;
446
+ /** Complex binary elemwise (split storage). aIm/bIm may be null. */
447
+ tensorOpComplexBinary?(op: number, n: number, aRe: Float64Array, aIm: Float64Array | null, bRe: Float64Array, bIm: Float64Array | null, outRe: Float64Array, outIm: Float64Array): void;
448
+ /** Complex scalar-tensor binary elemwise. arrIm may be null. */
449
+ tensorOpComplexScalarBinary?(op: number, n: number, sRe: number, sIm: number, arrRe: Float64Array, arrIm: Float64Array | null, scalarOnLeft: boolean, outRe: Float64Array, outIm: Float64Array): void;
450
+ /** Real unary elemwise: out[i] = OP(a[i]). op codes per OpUnary. */
451
+ tensorOpRealUnary?(op: number, n: number, a: Float64Array, out: Float64Array): void;
452
+ /** Complex unary elemwise (split storage). aIm may be null. ABS unsupported. */
453
+ tensorOpComplexUnary?(op: number, n: number, aRe: Float64Array, aIm: Float64Array | null, outRe: Float64Array, outIm: Float64Array): void;
454
+ /** Complex absolute value (real-valued output). aIm may be null. */
455
+ tensorOpComplexAbs?(n: number, aRe: Float64Array, aIm: Float64Array | null, out: Float64Array): void;
456
+ /** Real comparison: out[i] = (a[i] OP b[i]) ? 1 : 0. */
457
+ tensorOpRealComparison?(op: number, n: number, a: Float64Array, b: Float64Array, out: Float64Array): void;
458
+ /** Real scalar-tensor comparison. */
459
+ tensorOpRealScalarComparison?(op: number, n: number, scalar: number, arr: Float64Array, scalarOnLeft: boolean, out: Float64Array): void;
460
+ /** Complex comparison. EQ/NE use both parts; LT/LE/GT/GE use real parts. */
461
+ tensorOpComplexComparison?(op: number, n: number, aRe: Float64Array, aIm: Float64Array | null, bRe: Float64Array, bIm: Float64Array | null, out: Float64Array): void;
462
+ /** Complex scalar-tensor comparison. */
463
+ tensorOpComplexScalarComparison?(op: number, n: number, sRe: number, sIm: number, arrRe: Float64Array, arrIm: Float64Array | null, scalarOnLeft: boolean, out: Float64Array): void;
464
+ /** Flat real reduction (output is a 1-element Float64Array). */
465
+ tensorOpRealFlatReduce?(op: number, n: number, a: Float64Array, out: Float64Array): void;
466
+ /** Flat complex reduction. outIm may be null for ANY/ALL. */
467
+ tensorOpComplexFlatReduce?(op: number, n: number, aRe: Float64Array, aIm: Float64Array | null, outRe: Float64Array, outIm: Float64Array | null): void;
468
+ /**
469
+ * Real Bessel tensor op: out[i] = besselX(nu, z[i]).
470
+ * op codes per OpBessel. scale: 0 unscaled, 1 scaled.
471
+ */
472
+ tensorOpBesselReal?(op: number, nu: number, n: number, z: Float64Array, scale: number, out: Float64Array): void;
473
+ /**
474
+ * Hankel function tensor op (complex output, real input).
475
+ * kKind: 1 → J + i*Y; 2 → J - i*Y.
476
+ */
477
+ tensorOpBesselH?(kKind: number, nu: number, n: number, z: Float64Array, scale: number, outRe: Float64Array, outIm: Float64Array): void;
478
+ /** Dump op-code enum values as a stable string (drift detection). */
479
+ tensorOpDumpCodes?(): string;
480
+ }
481
+ export declare function setLapackBridge(bridge: LapackBridge): void;
482
+ export declare function getLapackBridge(): LapackBridge | null;
@@ -0,0 +1,15 @@
1
+ /**
2
+ * Browser/worker loader for the qhull WASM Delaunay backend.
3
+ *
4
+ * The CLI installs the backend in cli.ts (reading the `.wasm` from disk). In
5
+ * the browser there is no filesystem, so we let Vite emit the `.wasm` as an
6
+ * asset (`?url`), fetch its bytes, and pass them to the emscripten module as
7
+ * `wasmBinary` — this avoids relying on the glue locating the binary next to
8
+ * itself at runtime.
9
+ *
10
+ * `ensureQhullBackend()` is idempotent and best-effort: on any failure it
11
+ * resolves anyway (so it never crashes the worker), but then no backend is
12
+ * installed and a later `delaunay`/`delaunayn` call throws (see geometry.ts).
13
+ */
14
+ /** Load and install the qhull backend (once). Safe to await before every run. */
15
+ export declare function ensureQhullBackend(): Promise<void>;
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Node loader for the qhull WASM Delaunay backend.
3
+ *
4
+ * In Node the emscripten module reads its `.wasm` from disk on its own, so no
5
+ * asset wiring is needed (unlike the browser; see qhull-browser.ts). This is
6
+ * used by the CLI, the vitest setup, and is re-exported from the library entry
7
+ * (lib.ts) so programmatic consumers can install the backend before calling
8
+ * `delaunay` / `delaunayn`.
9
+ *
10
+ * Idempotent: the first call starts loading and caches the promise.
11
+ */
12
+ /** Load the qhull WASM module and install it as the Delaunay backend (once). */
13
+ export declare function loadQhullNodeBackend(): Promise<void>;
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Pure-TypeScript LAPACK bridge — implements the LapackBridge interface using
3
+ * the ts-lapack translations of LAPACK Fortran routines.
4
+ *
5
+ * This is always available (no native addon required) and is used as the
6
+ * fallback when the native C++ addon is not loaded (e.g. in the browser).
7
+ */
8
+ import type { LapackBridge } from "./lapack-bridge.js";
9
+ export declare function getTsLapackBridge(): LapackBridge;
@@ -0,0 +1,32 @@
1
+ /**
2
+ * Pure-TypeScript complex non-symmetric eigensolver — a zgeev-equivalent for
3
+ * the ts-lapack bridge (browser path, no native LAPACK addon).
4
+ *
5
+ * Ported from the netlib LAPACK reference (zgeev → zgehd2 / zunghr → zlahqr →
6
+ * ztrevc). Simplifications relative to zgeev, valid for the well-scaled inputs
7
+ * numbl produces (the acceptance bar is residual-based, A*V≈V*D / W^H*A≈D*W^H,
8
+ * not bit-matching MKL):
9
+ * - No balancing (zgebal/zgebak) — ILO=1, IHI=N.
10
+ * - No norm scaling (zlascl).
11
+ * - Eigenvector back-substitution uses plain triangular solves with the
12
+ * ztrevc SMIN diagonal regularization, instead of the overflow-safe zlatrs.
13
+ *
14
+ * Eigenvectors are normalized to unit Euclidean norm with the largest-magnitude
15
+ * component made real (the documented zgeev convention).
16
+ *
17
+ * All matrices are column-major with leading dimension n, split into parallel
18
+ * real/imag Float64Arrays — matching the bridge's eigComplex I/O shape.
19
+ */
20
+ /**
21
+ * Complex eigendecomposition (zgeev-equivalent). Matches the LapackBridge
22
+ * eigComplex contract: column-major real/imag inputs, returns eigenvalues and
23
+ * (optionally) left/right eigenvectors.
24
+ */
25
+ export declare function eigComplexTs(dataRe: Float64Array, dataIm: Float64Array, n: number, computeVL: boolean, computeVR: boolean): {
26
+ wRe: Float64Array;
27
+ wIm: Float64Array;
28
+ VLRe?: Float64Array;
29
+ VLIm?: Float64Array;
30
+ VRRe?: Float64Array;
31
+ VRIm?: Float64Array;
32
+ };
@@ -0,0 +1,18 @@
1
+ /**
2
+ * Pure-TS implementation of Bessel tensor ops.
3
+ * Mirrors native/ops/bessel.c — fallback when the native addon is unavailable.
4
+ *
5
+ * Delegates the per-element math to src/numbl-core/helpers/bessel.ts so both
6
+ * the scalar interpreter path and the tensor path share the same algorithm.
7
+ */
8
+ /**
9
+ * out[i] = bessel<OP>(nu, z[i]). scale mirrors the behavior of numbl_bessel_real.
10
+ */
11
+ export declare function tsBesselReal(op: number, nu: number, n: number, z: Float64Array, scale: number, out: Float64Array): void;
12
+ /**
13
+ * Hankel function for real z:
14
+ * kKind=1 → out[i] = J_nu(z[i]) + i * Y_nu(z[i])
15
+ * kKind=2 → out[i] = J_nu(z[i]) - i * Y_nu(z[i])
16
+ * scaled=1 multiplies by exp(-i*z) (k=1) or exp(+i*z) (k=2).
17
+ */
18
+ export declare function tsBesselH(kKind: number, nu: number, n: number, z: Float64Array, scale: number, outRe: Float64Array, outIm: Float64Array): void;
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Pure-TS implementation of comparison ops.
3
+ * Mirrors native/ops/comparison.c.
4
+ *
5
+ * Output is 0.0 / 1.0 stored in a Float64Array (numbl's logical-tensor
6
+ * convention — caller wraps the result with _isLogical = true).
7
+ */
8
+ export declare function tsRealComparison(op: number, n: number, a: Float64Array, b: Float64Array, out: Float64Array): void;
9
+ export declare function tsRealScalarComparison(op: number, n: number, scalar: number, arr: Float64Array, scalarOnLeft: boolean, out: Float64Array): void;
10
+ export declare function tsComplexComparison(op: number, n: number, aRe: Float64Array, aIm: Float64Array | null, bRe: Float64Array, bIm: Float64Array | null, out: Float64Array): void;
11
+ export declare function tsComplexScalarComparison(op: number, n: number, sRe: number, sIm: number, arrRe: Float64Array, arrIm: Float64Array | null, scalarOnLeft: boolean, out: Float64Array): void;
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Pure-TS implementation of complex binary element-wise ops, split storage.
3
+ * Mirrors native/ops/complex_binary_elemwise.c.
4
+ *
5
+ * Caller-allocated input/output buffers; never copies.
6
+ * aIm/bIm/arrIm may be null → treat as zero.
7
+ * outIm is always required (caller allocates even if result might be real).
8
+ */
9
+ export declare function tsComplexBinaryElemwise(op: number, n: number, aRe: Float64Array, aIm: Float64Array | null, bRe: Float64Array, bIm: Float64Array | null, outRe: Float64Array, outIm: Float64Array): void;
10
+ export declare function tsComplexScalarBinaryElemwise(op: number, n: number, sRe: number, sIm: number, arrRe: Float64Array, arrIm: Float64Array | null, scalarOnLeft: boolean, outRe: Float64Array, outIm: Float64Array): void;
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Pure-TS implementation of complex unary element-wise ops, split storage.
3
+ * Mirrors native/ops/complex_unary_elemwise.c.
4
+ *
5
+ * ABS is intentionally unsupported (use tsComplexAbs — real-valued output).
6
+ */
7
+ export declare function tsComplexUnaryElemwise(op: number, n: number, aRe: Float64Array, aIm: Float64Array | null, outRe: Float64Array, outIm: Float64Array): void;
8
+ export declare function tsComplexAbs(n: number, aRe: Float64Array, aIm: Float64Array | null, out: Float64Array): void;
@@ -0,0 +1,26 @@
1
+ /**
2
+ * Tensor-ops dispatcher: chooses native bridge or pure-TS fallback.
3
+ *
4
+ * All entry points have identical signatures across native and TS impls.
5
+ * Caller owns input AND output memory; functions never allocate output.
6
+ *
7
+ * Selection happens once on first use per category and is cached
8
+ * (the bridge identity is captured at module load via getLapackBridge()).
9
+ */
10
+ export declare const tensorOps: {
11
+ realBinaryElemwise(op: number, n: number, a: Float64Array, b: Float64Array, out: Float64Array): void;
12
+ realScalarBinaryElemwise(op: number, n: number, scalar: number, arr: Float64Array, scalarOnLeft: boolean, out: Float64Array): void;
13
+ complexBinaryElemwise(op: number, n: number, aRe: Float64Array, aIm: Float64Array | null, bRe: Float64Array, bIm: Float64Array | null, outRe: Float64Array, outIm: Float64Array): void;
14
+ complexScalarBinaryElemwise(op: number, n: number, sRe: number, sIm: number, arrRe: Float64Array, arrIm: Float64Array | null, scalarOnLeft: boolean, outRe: Float64Array, outIm: Float64Array): void;
15
+ realUnaryElemwise(op: number, n: number, a: Float64Array, out: Float64Array): void;
16
+ complexUnaryElemwise(op: number, n: number, aRe: Float64Array, aIm: Float64Array | null, outRe: Float64Array, outIm: Float64Array): void;
17
+ complexAbs(n: number, aRe: Float64Array, aIm: Float64Array | null, out: Float64Array): void;
18
+ realComparison(op: number, n: number, a: Float64Array, b: Float64Array, out: Float64Array): void;
19
+ realScalarComparison(op: number, n: number, scalar: number, arr: Float64Array, scalarOnLeft: boolean, out: Float64Array): void;
20
+ complexComparison(op: number, n: number, aRe: Float64Array, aIm: Float64Array | null, bRe: Float64Array, bIm: Float64Array | null, out: Float64Array): void;
21
+ complexScalarComparison(op: number, n: number, sRe: number, sIm: number, arrRe: Float64Array, arrIm: Float64Array | null, scalarOnLeft: boolean, out: Float64Array): void;
22
+ realFlatReduce(op: number, n: number, a: Float64Array, out: Float64Array): void;
23
+ complexFlatReduce(op: number, n: number, aRe: Float64Array, aIm: Float64Array | null, outRe: Float64Array, outIm: Float64Array | null): void;
24
+ besselReal(op: number, nu: number, n: number, z: Float64Array, scale: number, out: Float64Array): void;
25
+ besselH(kKind: number, nu: number, n: number, z: Float64Array, scale: number, outRe: Float64Array, outIm: Float64Array): void;
26
+ };
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Tensor-ops layer: pointer-based, op-code dispatched, native + TS parity.
3
+ *
4
+ * Every op has identical signatures across native (C) and TS implementations.
5
+ * Caller owns input AND output memory; ops never allocate output.
6
+ */
7
+ export { tensorOps } from "./dispatch.js";
8
+ export { OpRealBin, OpComplexBin, OpUnary, OpCmp, OpReduce, OpBessel, } from "./opCodes.js";