@cortex-js/compute-engine 0.50.2 → 0.51.1
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.
- package/dist/compute-engine.esm.js +7900 -267
- package/dist/compute-engine.min.esm.js +490 -65
- package/dist/compute-engine.min.umd.js +490 -65
- package/dist/compute-engine.umd.js +7900 -267
- package/dist/math-json.esm.js +2 -2
- package/dist/math-json.min.esm.js +2 -2
- package/dist/math-json.min.umd.js +2 -2
- package/dist/math-json.umd.js +2 -2
- package/dist/types/color/categorical.d.ts +16 -0
- package/dist/types/color/contrast.d.ts +16 -0
- package/dist/types/color/conversion.d.ts +13 -0
- package/dist/types/color/diverging-palettes.d.ts +15 -0
- package/dist/types/color/index.d.ts +4 -0
- package/dist/types/color/manipulation.d.ts +95 -0
- package/dist/types/color/palette.d.ts +68 -0
- package/dist/types/color/sequential.d.ts +21 -0
- package/dist/types/color/types.d.ts +19 -0
- package/dist/types/common/ansi-codes.d.ts +1 -1
- package/dist/types/common/configuration-change.d.ts +1 -1
- package/dist/types/common/fuzzy-string-match.d.ts +1 -1
- package/dist/types/common/grapheme-splitter.d.ts +1 -1
- package/dist/types/common/interruptible.d.ts +1 -1
- package/dist/types/common/one-of.d.ts +1 -1
- package/dist/types/common/signals.d.ts +1 -1
- package/dist/types/common/type/ast-nodes.d.ts +1 -1
- package/dist/types/common/type/boxed-type.d.ts +1 -1
- package/dist/types/common/type/lexer.d.ts +1 -1
- package/dist/types/common/type/parse.d.ts +1 -1
- package/dist/types/common/type/parser.d.ts +1 -1
- package/dist/types/common/type/primitive.d.ts +1 -1
- package/dist/types/common/type/reduce.d.ts +1 -1
- package/dist/types/common/type/serialize.d.ts +1 -1
- package/dist/types/common/type/subtype.d.ts +1 -1
- package/dist/types/common/type/type-builder.d.ts +1 -1
- package/dist/types/common/type/types.d.ts +1 -1
- package/dist/types/common/type/utils.d.ts +1 -1
- package/dist/types/common/utils.d.ts +1 -1
- package/dist/types/compute-engine/assume.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/abstract-boxed-expression.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/apply.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/arithmetic-add.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/arithmetic-mul-div.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/arithmetic-power.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/ascii-math.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/box.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/boxed-dictionary.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/boxed-function.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/boxed-number.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/boxed-operator-definition.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/boxed-patterns.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/boxed-string.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/boxed-symbol.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/boxed-tensor.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/boxed-value-definition.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/cache.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/canonical-utils.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/canonical.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/compare.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/constants.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/expand.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/expression-map.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/factor.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/flatten.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/hold.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/inequality-bounds.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/init-lazy-refs.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/invisible-operator.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/match.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/negate.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/numerics.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/order.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/pattern-utils.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/polynomial-degree.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/polynomials.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/predicates.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/product.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/rules.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/serialize.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/sgn.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/simplify.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/solve-linear-system.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/solve.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/trigonometry.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/type-guards.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/utils.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/validate.d.ts +1 -1
- package/dist/types/compute-engine/collection-utils.d.ts +1 -1
- package/dist/types/compute-engine/compilation/base-compiler.d.ts +37 -1
- package/dist/types/compute-engine/compilation/compile-expression.d.ts +1 -1
- package/dist/types/compute-engine/compilation/glsl-target.d.ts +1 -1
- package/dist/types/compute-engine/compilation/gpu-target.d.ts +40 -1
- package/dist/types/compute-engine/compilation/interval-glsl-target.d.ts +1 -1
- package/dist/types/compute-engine/compilation/interval-javascript-target.d.ts +7 -1
- package/dist/types/compute-engine/compilation/interval-wgsl-target.d.ts +1 -1
- package/dist/types/compute-engine/compilation/javascript-target.d.ts +291 -3
- package/dist/types/compute-engine/compilation/python-target.d.ts +1 -1
- package/dist/types/compute-engine/compilation/types.d.ts +30 -3
- package/dist/types/compute-engine/compilation/wgsl-target.d.ts +1 -1
- package/dist/types/compute-engine/cost-function.d.ts +1 -1
- package/dist/types/compute-engine/engine-assumptions.d.ts +1 -1
- package/dist/types/compute-engine/engine-cache.d.ts +1 -1
- package/dist/types/compute-engine/engine-common-symbols.d.ts +1 -1
- package/dist/types/compute-engine/engine-compilation-targets.d.ts +1 -1
- package/dist/types/compute-engine/engine-configuration-lifecycle.d.ts +1 -1
- package/dist/types/compute-engine/engine-declarations.d.ts +1 -1
- package/dist/types/compute-engine/engine-expression-entrypoints.d.ts +1 -1
- package/dist/types/compute-engine/engine-extension-contracts.d.ts +1 -1
- package/dist/types/compute-engine/engine-latex-dictionary-state.d.ts +1 -1
- package/dist/types/compute-engine/engine-library-bootstrap.d.ts +1 -1
- package/dist/types/compute-engine/engine-numeric-configuration.d.ts +1 -1
- package/dist/types/compute-engine/engine-parse-entrypoint.d.ts +1 -1
- package/dist/types/compute-engine/engine-runtime-state.d.ts +1 -1
- package/dist/types/compute-engine/engine-scope.d.ts +1 -1
- package/dist/types/compute-engine/engine-sequences.d.ts +1 -1
- package/dist/types/compute-engine/engine-simplification-rules.d.ts +1 -1
- package/dist/types/compute-engine/engine-startup-coordinator.d.ts +1 -1
- package/dist/types/compute-engine/engine-type-resolver.d.ts +1 -1
- package/dist/types/compute-engine/engine-validation-entrypoints.d.ts +1 -1
- package/dist/types/compute-engine/free-functions.d.ts +15 -9
- package/dist/types/compute-engine/function-utils.d.ts +1 -1
- package/dist/types/compute-engine/global-types.d.ts +1 -1
- package/dist/types/compute-engine/index.d.ts +2 -2
- package/dist/types/compute-engine/interval/arithmetic.d.ts +1 -1
- package/dist/types/compute-engine/interval/comparison.d.ts +1 -1
- package/dist/types/compute-engine/interval/elementary.d.ts +26 -1
- package/dist/types/compute-engine/interval/index.d.ts +11 -5
- package/dist/types/compute-engine/interval/trigonometric.d.ts +16 -1
- package/dist/types/compute-engine/interval/types.d.ts +1 -1
- package/dist/types/compute-engine/interval/util.d.ts +1 -1
- package/dist/types/compute-engine/latex-syntax/dictionary/definitions-algebra.d.ts +1 -1
- package/dist/types/compute-engine/latex-syntax/dictionary/definitions-arithmetic.d.ts +1 -1
- package/dist/types/compute-engine/latex-syntax/dictionary/definitions-calculus.d.ts +1 -1
- package/dist/types/compute-engine/latex-syntax/dictionary/definitions-complex.d.ts +1 -1
- package/dist/types/compute-engine/latex-syntax/dictionary/definitions-core.d.ts +1 -1
- package/dist/types/compute-engine/latex-syntax/dictionary/definitions-linear-algebra.d.ts +1 -1
- package/dist/types/compute-engine/latex-syntax/dictionary/definitions-logic.d.ts +1 -1
- package/dist/types/compute-engine/latex-syntax/dictionary/definitions-other.d.ts +1 -1
- package/dist/types/compute-engine/latex-syntax/dictionary/definitions-relational-operators.d.ts +1 -1
- package/dist/types/compute-engine/latex-syntax/dictionary/definitions-sets.d.ts +1 -1
- package/dist/types/compute-engine/latex-syntax/dictionary/definitions-statistics.d.ts +1 -1
- package/dist/types/compute-engine/latex-syntax/dictionary/definitions-symbols.d.ts +1 -1
- package/dist/types/compute-engine/latex-syntax/dictionary/definitions-trigonometry.d.ts +1 -1
- package/dist/types/compute-engine/latex-syntax/dictionary/definitions-units.d.ts +23 -0
- package/dist/types/compute-engine/latex-syntax/dictionary/definitions.d.ts +1 -1
- package/dist/types/compute-engine/latex-syntax/dictionary/indexed-types.d.ts +1 -1
- package/dist/types/compute-engine/latex-syntax/parse-number.d.ts +1 -1
- package/dist/types/compute-engine/latex-syntax/parse-symbol.d.ts +1 -1
- package/dist/types/compute-engine/latex-syntax/parse.d.ts +1 -1
- package/dist/types/compute-engine/latex-syntax/serialize-dms.d.ts +22 -0
- package/dist/types/compute-engine/latex-syntax/serialize-number.d.ts +1 -1
- package/dist/types/compute-engine/latex-syntax/serializer-style.d.ts +1 -1
- package/dist/types/compute-engine/latex-syntax/serializer.d.ts +2 -2
- package/dist/types/compute-engine/latex-syntax/tokenizer.d.ts +1 -1
- package/dist/types/compute-engine/latex-syntax/types.d.ts +59 -2
- package/dist/types/compute-engine/latex-syntax/utils.d.ts +1 -1
- package/dist/types/compute-engine/library/arithmetic.d.ts +1 -1
- package/dist/types/compute-engine/library/calculus.d.ts +1 -1
- package/dist/types/compute-engine/library/collections.d.ts +1 -1
- package/dist/types/compute-engine/library/colors.d.ts +2 -0
- package/dist/types/compute-engine/library/combinatorics.d.ts +1 -1
- package/dist/types/compute-engine/library/complex.d.ts +1 -1
- package/dist/types/compute-engine/library/control-structures.d.ts +1 -1
- package/dist/types/compute-engine/library/core.d.ts +1 -1
- package/dist/types/compute-engine/library/library.d.ts +1 -1
- package/dist/types/compute-engine/library/linear-algebra.d.ts +1 -1
- package/dist/types/compute-engine/library/logic-analysis.d.ts +1 -1
- package/dist/types/compute-engine/library/logic.d.ts +1 -1
- package/dist/types/compute-engine/library/number-theory.d.ts +1 -1
- package/dist/types/compute-engine/library/polynomials.d.ts +1 -1
- package/dist/types/compute-engine/library/quantity-arithmetic.d.ts +37 -0
- package/dist/types/compute-engine/library/random-expression.d.ts +1 -1
- package/dist/types/compute-engine/library/relational-operator.d.ts +1 -1
- package/dist/types/compute-engine/library/sets.d.ts +1 -1
- package/dist/types/compute-engine/library/statistics.d.ts +1 -1
- package/dist/types/compute-engine/library/trigonometry.d.ts +1 -1
- package/dist/types/compute-engine/library/type-handlers.d.ts +1 -1
- package/dist/types/compute-engine/library/unit-data.d.ts +8 -0
- package/dist/types/compute-engine/library/units.d.ts +9 -0
- package/dist/types/compute-engine/library/utils.d.ts +1 -1
- package/dist/types/compute-engine/numeric-value/big-numeric-value.d.ts +1 -1
- package/dist/types/compute-engine/numeric-value/exact-numeric-value.d.ts +1 -1
- package/dist/types/compute-engine/numeric-value/machine-numeric-value.d.ts +1 -1
- package/dist/types/compute-engine/numeric-value/types.d.ts +1 -1
- package/dist/types/compute-engine/numerics/bigint.d.ts +1 -1
- package/dist/types/compute-engine/numerics/expression.d.ts +1 -1
- package/dist/types/compute-engine/numerics/interval.d.ts +1 -1
- package/dist/types/compute-engine/numerics/monte-carlo.d.ts +1 -1
- package/dist/types/compute-engine/numerics/numeric-bigint.d.ts +1 -1
- package/dist/types/compute-engine/numerics/numeric-bignum.d.ts +1 -1
- package/dist/types/compute-engine/numerics/numeric-complex.d.ts +1 -1
- package/dist/types/compute-engine/numerics/numeric.d.ts +1 -1
- package/dist/types/compute-engine/numerics/primes.d.ts +1 -1
- package/dist/types/compute-engine/numerics/rationals.d.ts +1 -1
- package/dist/types/compute-engine/numerics/richardson.d.ts +1 -1
- package/dist/types/compute-engine/numerics/special-functions.d.ts +15 -1
- package/dist/types/compute-engine/numerics/statistics.d.ts +1 -1
- package/dist/types/compute-engine/numerics/strings.d.ts +1 -1
- package/dist/types/compute-engine/numerics/types.d.ts +1 -1
- package/dist/types/compute-engine/numerics/unit-data.d.ts +128 -0
- package/dist/types/compute-engine/oeis.d.ts +1 -1
- package/dist/types/compute-engine/sequence.d.ts +1 -1
- package/dist/types/compute-engine/symbolic/antiderivative.d.ts +1 -1
- package/dist/types/compute-engine/symbolic/derivative.d.ts +1 -1
- package/dist/types/compute-engine/symbolic/distribute.d.ts +1 -1
- package/dist/types/compute-engine/symbolic/fu-cost.d.ts +1 -1
- package/dist/types/compute-engine/symbolic/fu-transforms.d.ts +1 -1
- package/dist/types/compute-engine/symbolic/fu.d.ts +1 -1
- package/dist/types/compute-engine/symbolic/logic-utils.d.ts +1 -1
- package/dist/types/compute-engine/symbolic/simplify-abs.d.ts +1 -1
- package/dist/types/compute-engine/symbolic/simplify-divide.d.ts +4 -2
- package/dist/types/compute-engine/symbolic/simplify-factorial.d.ts +33 -0
- package/dist/types/compute-engine/symbolic/simplify-hyperbolic.d.ts +1 -1
- package/dist/types/compute-engine/symbolic/simplify-infinity.d.ts +1 -1
- package/dist/types/compute-engine/symbolic/simplify-log.d.ts +1 -1
- package/dist/types/compute-engine/symbolic/simplify-logic.d.ts +1 -1
- package/dist/types/compute-engine/symbolic/simplify-power.d.ts +1 -1
- package/dist/types/compute-engine/symbolic/simplify-product.d.ts +1 -1
- package/dist/types/compute-engine/symbolic/simplify-rules.d.ts +1 -1
- package/dist/types/compute-engine/symbolic/simplify-sum.d.ts +1 -1
- package/dist/types/compute-engine/symbolic/simplify-trig.d.ts +1 -1
- package/dist/types/compute-engine/tensor/tensor-fields.d.ts +1 -1
- package/dist/types/compute-engine/tensor/tensors.d.ts +1 -1
- package/dist/types/compute-engine/types-definitions.d.ts +1 -1
- package/dist/types/compute-engine/types-engine.d.ts +1 -1
- package/dist/types/compute-engine/types-evaluation.d.ts +1 -1
- package/dist/types/compute-engine/types-expression.d.ts +1 -1
- package/dist/types/compute-engine/types-kernel-evaluation.d.ts +1 -1
- package/dist/types/compute-engine/types-kernel-serialization.d.ts +1 -1
- package/dist/types/compute-engine/types-serialization.d.ts +1 -1
- package/dist/types/compute-engine/types.d.ts +1 -1
- package/dist/types/compute-engine.d.ts +2 -2
- package/dist/types/math-json/symbols.d.ts +1 -1
- package/dist/types/math-json/types.d.ts +1 -1
- package/dist/types/math-json/utils.d.ts +1 -1
- package/dist/types/math-json.d.ts +2 -2
- package/package.json +1 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* 0.
|
|
1
|
+
/* 0.51.1 */
|
|
2
2
|
export declare function bigintValue(expr: MathJsonExpression | null | undefined): bigint | null;
|
|
3
3
|
/** Output a shorthand if possible */
|
|
4
4
|
export declare function numberToExpression(num: number | bigint, fractionalDigits?: string | number): MathJsonExpression;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* 0.
|
|
1
|
+
/* 0.51.1 */
|
|
2
2
|
export declare function isRational(x: unknown | null): x is Rational;
|
|
3
3
|
export declare function isMachineRational(x: unknown | null): x is [SmallInteger, SmallInteger];
|
|
4
4
|
export declare function isBigRational(x: unknown | null): x is [bigint, bigint];
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* 0.
|
|
1
|
+
/* 0.51.1 */
|
|
2
2
|
import type { BigNum } from './types';
|
|
3
3
|
export declare function gammaln(z: number): number;
|
|
4
4
|
export declare function gamma(z: number): number;
|
|
@@ -145,3 +145,17 @@ export declare function airyAi(x: number): number;
|
|
|
145
145
|
* Reference: NIST DLMF 9.2, 9.7
|
|
146
146
|
*/
|
|
147
147
|
export declare function airyBi(x: number): number;
|
|
148
|
+
/**
|
|
149
|
+
* Fresnel sine integral: S(x) = ∫₀ˣ sin(π t²/2) dt
|
|
150
|
+
*
|
|
151
|
+
* S is odd, S(∞) → 1/2.
|
|
152
|
+
*/
|
|
153
|
+
export declare function fresnelS(x: number): number;
|
|
154
|
+
/**
|
|
155
|
+
* Fresnel cosine integral: C(x) = ∫₀ˣ cos(π t²/2) dt
|
|
156
|
+
*
|
|
157
|
+
* C is odd, C(∞) → 1/2.
|
|
158
|
+
*/
|
|
159
|
+
export declare function fresnelC(x: number): number;
|
|
160
|
+
/** Unnormalized cardinal sine: sinc(x) = sin(x)/x, sinc(0) = 1. */
|
|
161
|
+
export declare function sinc(x: number): number;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
/* 0.
|
|
1
|
+
/* 0.51.1 */
|
|
2
2
|
export declare function numberToString(num: number | bigint, fractionalDigits?: number | string): string;
|
|
@@ -0,0 +1,128 @@
|
|
|
1
|
+
/* 0.51.1 */
|
|
2
|
+
* Unit registry: dimension vectors, SI base units, prefixes, and conversion.
|
|
3
|
+
*
|
|
4
|
+
* A DimensionVector encodes the exponents for each of the 7 SI base
|
|
5
|
+
* dimensions: [length, mass, time, current, temperature, amount, luminosity].
|
|
6
|
+
*
|
|
7
|
+
* Every unit in the registry stores its dimension vector and a scale factor
|
|
8
|
+
* relative to the coherent SI unit for that dimension. For example the meter
|
|
9
|
+
* has scale 1, the kilometer has scale 1000, and the inch has scale 0.0254
|
|
10
|
+
* (all measuring length).
|
|
11
|
+
*
|
|
12
|
+
* Prefixed units (km, mg, GHz, ...) are resolved on the fly by
|
|
13
|
+
* `parsePrefixedUnit` rather than stored explicitly.
|
|
14
|
+
*/
|
|
15
|
+
/**
|
|
16
|
+
* 7-tuple of exponents over the SI base dimensions:
|
|
17
|
+
* [length, mass, time, current, temperature, amount, luminosity]
|
|
18
|
+
*/
|
|
19
|
+
export type DimensionVector = [
|
|
20
|
+
number,
|
|
21
|
+
number,
|
|
22
|
+
number,
|
|
23
|
+
number,
|
|
24
|
+
number,
|
|
25
|
+
number,
|
|
26
|
+
number
|
|
27
|
+
];
|
|
28
|
+
export declare function dimensionsEqual(a: DimensionVector, b: DimensionVector): boolean;
|
|
29
|
+
export declare function isDimensionless(dim: DimensionVector): boolean;
|
|
30
|
+
/**
|
|
31
|
+
* Return the dimension vector for `symbol`, or `null` if unknown.
|
|
32
|
+
*
|
|
33
|
+
* Handles direct units (m, kg, N, ...) and prefixed units (km, MHz, ...).
|
|
34
|
+
*/
|
|
35
|
+
export declare function getUnitDimension(symbol: string): DimensionVector | null;
|
|
36
|
+
/**
|
|
37
|
+
* Return the scale factor of `symbol` relative to the coherent SI unit
|
|
38
|
+
* for the same dimension, or `null` if unknown.
|
|
39
|
+
*
|
|
40
|
+
* Examples:
|
|
41
|
+
* - getUnitScale('m') → 1
|
|
42
|
+
* - getUnitScale('km') → 1000
|
|
43
|
+
* - getUnitScale('mg') → 1e-6 (milli × gram: 1e-3 × 1e-3)
|
|
44
|
+
*/
|
|
45
|
+
export declare function getUnitScale(symbol: string): number | null;
|
|
46
|
+
/**
|
|
47
|
+
* Return `true` when `a` and `b` share the same dimension vector
|
|
48
|
+
* (i.e. they measure the same physical quantity and can be inter-converted).
|
|
49
|
+
*/
|
|
50
|
+
export declare function areCompatibleUnits(a: string, b: string): boolean;
|
|
51
|
+
/**
|
|
52
|
+
* Search for a named derived SI unit that matches the given dimension vector
|
|
53
|
+
* and has scale=1.
|
|
54
|
+
*
|
|
55
|
+
* Returns the unit symbol (e.g., 'N', 'J', 'W') or `null` if no match.
|
|
56
|
+
*/
|
|
57
|
+
export declare function findNamedUnit(dim: DimensionVector): string | null;
|
|
58
|
+
/**
|
|
59
|
+
* Convert a numeric `value` from `fromUnit` to `toUnit`.
|
|
60
|
+
*
|
|
61
|
+
* Returns the converted value, or `null` when the units are unknown or
|
|
62
|
+
* dimensionally incompatible.
|
|
63
|
+
*
|
|
64
|
+
* Handles both linear conversions (most units) and affine conversions
|
|
65
|
+
* (degC, degF) via the optional `offset` field.
|
|
66
|
+
*/
|
|
67
|
+
export declare function convertUnit(value: number, fromUnit: string, toUnit: string): number | null;
|
|
68
|
+
/**
|
|
69
|
+
* A MathJSON-like unit expression: either a string (simple unit symbol) or
|
|
70
|
+
* an array like `["Divide", "m", "s"]`.
|
|
71
|
+
*/
|
|
72
|
+
export type UnitExpression = string | [string, ...any[]];
|
|
73
|
+
/**
|
|
74
|
+
* Compute the dimension vector for a MathJSON unit expression.
|
|
75
|
+
*
|
|
76
|
+
* - If `expr` is a string, delegates to `getUnitDimension`.
|
|
77
|
+
* - `["Multiply", a, b, ...]` — adds dimension vectors component-wise.
|
|
78
|
+
* - `["Divide", a, b]` — subtracts b's dimension from a's.
|
|
79
|
+
* - `["Power", base, exp]` — multiplies base dimension by exp.
|
|
80
|
+
*
|
|
81
|
+
* Returns `null` if any component is unrecognised.
|
|
82
|
+
*/
|
|
83
|
+
export declare function getExpressionDimension(expr: UnitExpression): DimensionVector | null;
|
|
84
|
+
/**
|
|
85
|
+
* Compute the scale factor for a MathJSON unit expression relative to
|
|
86
|
+
* coherent SI.
|
|
87
|
+
*
|
|
88
|
+
* - If `expr` is a string, delegates to `getUnitScale`.
|
|
89
|
+
* - `["Multiply", a, b, ...]` — multiplies scales.
|
|
90
|
+
* - `["Divide", a, b]` — a.scale / b.scale.
|
|
91
|
+
* - `["Power", base, exp]` — base.scale ^ exp.
|
|
92
|
+
*
|
|
93
|
+
* Returns `null` if any component is unrecognised.
|
|
94
|
+
*/
|
|
95
|
+
export declare function getExpressionScale(expr: UnitExpression): number | null;
|
|
96
|
+
/**
|
|
97
|
+
* Parse a unit DSL string like `"m/s^2"` or `"kg*m/s^2"` into a
|
|
98
|
+
* MathJSON unit expression.
|
|
99
|
+
*
|
|
100
|
+
* Grammar:
|
|
101
|
+
* - `*` = multiplication
|
|
102
|
+
* - `/` = division (everything after `/` is in denominator)
|
|
103
|
+
* - `^N` = power (integer exponent)
|
|
104
|
+
* - `(...)` = grouping
|
|
105
|
+
* - Simple units (no operators) stay as strings.
|
|
106
|
+
*
|
|
107
|
+
* Examples:
|
|
108
|
+
* ```
|
|
109
|
+
* parseUnitDSL("m") // "m"
|
|
110
|
+
* parseUnitDSL("km") // "km"
|
|
111
|
+
* parseUnitDSL("m/s") // ["Divide", "m", "s"]
|
|
112
|
+
* parseUnitDSL("m/s^2") // ["Divide", "m", ["Power", "s", 2]]
|
|
113
|
+
* parseUnitDSL("kg*m/s^2") // ["Divide", ["Multiply", "kg", "m"], ["Power", "s", 2]]
|
|
114
|
+
* parseUnitDSL("kg/(m*s^2)") // ["Divide", "kg", ["Multiply", "m", ["Power", "s", 2]]]
|
|
115
|
+
* ```
|
|
116
|
+
*/
|
|
117
|
+
export declare function parseUnitDSL(s: string): UnitExpression | null;
|
|
118
|
+
/**
|
|
119
|
+
* Convert a numeric `value` between two compound unit expressions.
|
|
120
|
+
*
|
|
121
|
+
* Both `fromUnit` and `toUnit` may be simple strings or MathJSON arrays.
|
|
122
|
+
* Returns the converted value, or `null` on dimensional mismatch or
|
|
123
|
+
* unknown units.
|
|
124
|
+
*
|
|
125
|
+
* For simple string units, delegates to `convertUnit` so that affine
|
|
126
|
+
* offsets (degC, degF) are handled correctly.
|
|
127
|
+
*/
|
|
128
|
+
export declare function convertCompoundUnit(value: number, fromUnit: UnitExpression, toUnit: UnitExpression): number | null;
|
|
@@ -1,7 +1,6 @@
|
|
|
1
|
-
/* 0.
|
|
1
|
+
/* 0.51.1 */
|
|
2
2
|
/**
|
|
3
3
|
* Division simplification rules consolidated from simplify-rules.ts.
|
|
4
|
-
* Handles ~5 patterns for simplifying Divide expressions.
|
|
5
4
|
*
|
|
6
5
|
* Patterns:
|
|
7
6
|
* - a/a -> 1 (when a ≠ 0)
|
|
@@ -9,6 +8,9 @@
|
|
|
9
8
|
* - a/(1/b) -> a*b (when b ≠ 0)
|
|
10
9
|
* - a/(b/c) -> a*c/b (when c ≠ 0)
|
|
11
10
|
* - 0/a -> 0 (when a ≠ 0)
|
|
11
|
+
* - n!/k! -> partial product (concrete integers)
|
|
12
|
+
* - n!/k! -> (k+1)(k+2)...n (symbolic, small constant diff)
|
|
13
|
+
* - n!/(k!(n-k)!) -> Binomial(n, k)
|
|
12
14
|
*
|
|
13
15
|
* IMPORTANT: Do not call .simplify() on results to avoid infinite recursion.
|
|
14
16
|
*/
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
/* 0.51.1 */
|
|
2
|
+
/**
|
|
3
|
+
* Extracts base + integer offset from an expression.
|
|
4
|
+
* - Symbol `n` → { base: n, offset: 0 }
|
|
5
|
+
* - Add(n, 3) → { base: n, offset: 3 }
|
|
6
|
+
* - Add(n, -2) → { base: n, offset: -2 }
|
|
7
|
+
* - Multiply(2, x) → { base: Multiply(2, x), offset: 0 }
|
|
8
|
+
* - Number → null (pure numeric, no symbolic base)
|
|
9
|
+
*/
|
|
10
|
+
export declare function baseOffset(expr: Expression): {
|
|
11
|
+
base: Expression;
|
|
12
|
+
offset: number;
|
|
13
|
+
} | null;
|
|
14
|
+
/**
|
|
15
|
+
* Simplification rules for Binomial and Choose expressions.
|
|
16
|
+
*
|
|
17
|
+
* Patterns:
|
|
18
|
+
* - C(n, 0) → 1
|
|
19
|
+
* - C(n, 1) → n
|
|
20
|
+
* - C(n, n) → 1
|
|
21
|
+
* - C(n, n-1) → n
|
|
22
|
+
*/
|
|
23
|
+
export declare function simplifyBinomial(x: Expression): RuleStep | undefined;
|
|
24
|
+
/**
|
|
25
|
+
* Simplification for Add expressions containing factorial terms.
|
|
26
|
+
* Factors out the common (smallest) factorial for symbolic expressions.
|
|
27
|
+
*
|
|
28
|
+
* Examples:
|
|
29
|
+
* - n! - (n-1)! → (n-1)! * (n - 1)
|
|
30
|
+
* - (n+1)! - n! → n! * n
|
|
31
|
+
* - (n+1)! + n! → n! * (n + 2)
|
|
32
|
+
*/
|
|
33
|
+
export declare function simplifyFactorialAdd(x: Expression): RuleStep | undefined;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
/* 0.
|
|
1
|
+
/* 0.51.1 */
|
|
2
2
|
export declare function simplifyHyperbolic(x: Expression): RuleStep | undefined;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
/* 0.
|
|
1
|
+
/* 0.51.1 */
|
|
2
2
|
export declare function simplifyTrig(x: Expression): RuleStep | undefined;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* 0.
|
|
1
|
+
/* 0.51.1 */
|
|
2
2
|
import { Expression, IComputeEngine as ComputeEngine, DataTypeMap, TensorDataType, TensorField } from '../global-types';
|
|
3
3
|
/** @category Tensors */
|
|
4
4
|
export declare function makeTensorField<DT extends keyof DataTypeMap>(ce: ComputeEngine, dtype: DT): TensorField<DataTypeMap[DT]>;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* 0.
|
|
1
|
+
/* 0.51.1 */
|
|
2
2
|
import type { IComputeEngine as ComputeEngine } from './types-engine';
|
|
3
3
|
import type { Expression, ExpressionInput } from './types-expression';
|
|
4
4
|
import type { Assumption as KernelAssumption, AssumeResult, AssignValue as KernelAssignValue, BoxedRule as KernelBoxedRule, BoxedRuleSet as KernelBoxedRuleSet, EvaluateOptions as KernelEvaluateOptions, EvalContext as KernelEvalContext, ExpressionMapInterface as KernelExpressionMapInterface, Rule as KernelRule, RuleConditionFunction as KernelRuleConditionFunction, RuleFunction as KernelRuleFunction, RuleReplaceFunction as KernelRuleReplaceFunction, RuleStep as KernelRuleStep, RuleSteps as KernelRuleSteps, Scope as KernelScope } from './types-kernel-evaluation';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* 0.
|
|
1
|
+
/* 0.51.1 */
|
|
2
2
|
import type { OneOf } from '../common/one-of';
|
|
3
3
|
import type { MathJsonExpression, MathJsonNumberObject, MathJsonStringObject, MathJsonSymbolObject, MathJsonFunctionObject, MathJsonSymbol, MathJsonDictionaryObject } from '../math-json';
|
|
4
4
|
import type { Type, TypeString } from '../common/type/types';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* 0.
|
|
1
|
+
/* 0.51.1 */
|
|
2
2
|
import type { BoxedSubstitution as KernelBoxedSubstitution, CanonicalForm, CanonicalOptions, FormOption, Hold, JsonSerializationOptions, Metadata, PatternMatchOptions as KernelPatternMatchOptions, ReplaceOptions, Substitution as KernelSubstitution } from './types-kernel-serialization';
|
|
3
3
|
export type { Hold, JsonSerializationOptions, ReplaceOptions, CanonicalForm, CanonicalOptions, FormOption, Metadata, };
|
|
4
4
|
/**
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* 0.
|
|
1
|
+
/* 0.51.1 */
|
|
2
2
|
export type { MathJsonExpression, MathJsonAttributes, MathJsonNumberObject, MathJsonSymbolObject, MathJsonStringObject, MathJsonFunctionObject, DictionaryValue, MathJsonDictionaryObject, ExpressionObject, MathJsonSymbol, } from '../math-json/types';
|
|
3
3
|
export * from '../common/type/boxed-type';
|
|
4
4
|
export * from '../common/type/types';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* 0.
|
|
1
|
+
/* 0.51.1 */
|
|
2
2
|
export { ComputeEngine } from './compute-engine/index';
|
|
3
3
|
export type * from './compute-engine/types';
|
|
4
4
|
export type { CompileTarget, CompiledOperators, CompiledFunctions, CompilationOptions, CompilationResult, LanguageTarget, TargetSource, CompiledFunction, } from './compute-engine/compilation/types';
|
|
@@ -11,7 +11,7 @@ export { IntervalJavaScriptTarget } from './compute-engine/compilation/interval-
|
|
|
11
11
|
export { IntervalGLSLTarget } from './compute-engine/compilation/interval-glsl-target';
|
|
12
12
|
export { IntervalWGSLTarget } from './compute-engine/compilation/interval-wgsl-target';
|
|
13
13
|
export { BaseCompiler } from './compute-engine/compilation/base-compiler';
|
|
14
|
-
export { parse, simplify, evaluate, N, assign, expand, expandAll, factor, solve, compile, getDefaultEngine, } from './compute-engine/free-functions';
|
|
14
|
+
export { parse, simplify, evaluate, N, declare, assign, expand, expandAll, factor, solve, compile, getDefaultEngine, } from './compute-engine/free-functions';
|
|
15
15
|
export { isExpression, isNumber, isSymbol, isFunction, isString, isTensor, isDictionary, isCollection, isIndexedCollection, isBoxedExpression, isBoxedNumber, isBoxedSymbol, isBoxedFunction, isBoxedString, isBoxedTensor, } from './compute-engine/boxed-expression/type-guards';
|
|
16
16
|
export type { BoxedNumber } from './compute-engine/boxed-expression/boxed-number';
|
|
17
17
|
export type { BoxedSymbol } from './compute-engine/boxed-expression/boxed-symbol';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* 0.
|
|
1
|
+
/* 0.51.1 */
|
|
2
2
|
export declare const MISSING: MathJsonExpression;
|
|
3
3
|
export declare function isNumberExpression(expr: MathJsonExpression | null): expr is number | string | MathJsonNumberObject;
|
|
4
4
|
export declare function isNumberObject(expr: MathJsonExpression | null): expr is MathJsonNumberObject;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
/* 0.
|
|
1
|
+
/* 0.51.1 */
|
|
2
2
|
export { isSymbolObject, isStringObject, isFunctionObject, stringValue, operator, operand, symbol, mapArgs, dictionaryFromExpression, } from './math-json/utils';
|
|
3
|
-
export declare const version = "0.
|
|
3
|
+
export declare const version = "0.51.1";
|
package/package.json
CHANGED