feat:node-modules
This commit is contained in:
837
node_modules/mathjs/lib/esm/utils/array.js
generated
vendored
Normal file
837
node_modules/mathjs/lib/esm/utils/array.js
generated
vendored
Normal file
File diff suppressed because it is too large
Load Diff
399
node_modules/mathjs/lib/esm/utils/bignumber/bitwise.js
generated
vendored
Normal file
399
node_modules/mathjs/lib/esm/utils/bignumber/bitwise.js
generated
vendored
Normal file
File diff suppressed because it is too large
Load Diff
57
node_modules/mathjs/lib/esm/utils/bignumber/constants.js
generated
vendored
Normal file
57
node_modules/mathjs/lib/esm/utils/bignumber/constants.js
generated
vendored
Normal file
@@ -0,0 +1,57 @@
|
||||
import { memoize } from '../function.js';
|
||||
|
||||
/**
|
||||
* Calculate BigNumber e
|
||||
* @param {function} BigNumber BigNumber constructor
|
||||
* @returns {BigNumber} Returns e
|
||||
*/
|
||||
export var createBigNumberE = memoize(function (BigNumber) {
|
||||
return new BigNumber(1).exp();
|
||||
}, {
|
||||
hasher
|
||||
});
|
||||
|
||||
/**
|
||||
* Calculate BigNumber golden ratio, phi = (1+sqrt(5))/2
|
||||
* @param {function} BigNumber BigNumber constructor
|
||||
* @returns {BigNumber} Returns phi
|
||||
*/
|
||||
export var createBigNumberPhi = memoize(function (BigNumber) {
|
||||
return new BigNumber(1).plus(new BigNumber(5).sqrt()).div(2);
|
||||
}, {
|
||||
hasher
|
||||
});
|
||||
|
||||
/**
|
||||
* Calculate BigNumber pi.
|
||||
* @param {function} BigNumber BigNumber constructor
|
||||
* @returns {BigNumber} Returns pi
|
||||
*/
|
||||
export var createBigNumberPi = memoize(function (BigNumber) {
|
||||
return BigNumber.acos(-1);
|
||||
}, {
|
||||
hasher
|
||||
});
|
||||
|
||||
/**
|
||||
* Calculate BigNumber tau, tau = 2 * pi
|
||||
* @param {function} BigNumber BigNumber constructor
|
||||
* @returns {BigNumber} Returns tau
|
||||
*/
|
||||
export var createBigNumberTau = memoize(function (BigNumber) {
|
||||
return createBigNumberPi(BigNumber).times(2);
|
||||
}, {
|
||||
hasher
|
||||
});
|
||||
|
||||
/**
|
||||
* Create a hash for a BigNumber constructor function. The created has is
|
||||
* the configured precision
|
||||
* @param {Array} args Supposed to contain a single entry with
|
||||
* a BigNumber constructor
|
||||
* @return {number} precision
|
||||
* @private
|
||||
*/
|
||||
function hasher(args) {
|
||||
return args[0].precision;
|
||||
}
|
||||
243
node_modules/mathjs/lib/esm/utils/bignumber/formatter.js
generated
vendored
Normal file
243
node_modules/mathjs/lib/esm/utils/bignumber/formatter.js
generated
vendored
Normal file
File diff suppressed because it is too large
Load Diff
39
node_modules/mathjs/lib/esm/utils/bignumber/nearlyEqual.js
generated
vendored
Normal file
39
node_modules/mathjs/lib/esm/utils/bignumber/nearlyEqual.js
generated
vendored
Normal file
@@ -0,0 +1,39 @@
|
||||
/**
|
||||
* Compares two BigNumbers.
|
||||
* @param {BigNumber} a - First value to compare
|
||||
* @param {BigNumber} b - Second value to compare
|
||||
* @param {number} [relTol=1e-09] - The relative tolerance, indicating the maximum allowed difference relative to the larger absolute value. Must be greater than 0.
|
||||
* @param {number} [absTol=0] - The minimum absolute tolerance, useful for comparisons near zero. Must be at least 0.
|
||||
* @returns {boolean} whether the two numbers are nearly equal
|
||||
* @throws {Error} If `relTol` is less than or equal to 0.
|
||||
* @throws {Error} If `absTol` is less than 0.
|
||||
*
|
||||
* @example
|
||||
* nearlyEqual(1.000000001, 1.0, 1e-9); // true
|
||||
* nearlyEqual(1.000000002, 1.0, 0); // false
|
||||
* nearlyEqual(1.0, 1.009, undefined, 0.02); // true
|
||||
* nearlyEqual(0.000000001, 0.0, undefined, 1e-8); // true
|
||||
*/
|
||||
export function nearlyEqual(a, b) {
|
||||
var relTol = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 1e-9;
|
||||
var absTol = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 0;
|
||||
if (relTol <= 0) {
|
||||
throw new Error('Relative tolerance must be greater than 0');
|
||||
}
|
||||
if (absTol < 0) {
|
||||
throw new Error('Absolute tolerance must be at least 0');
|
||||
}
|
||||
// NaN
|
||||
if (a.isNaN() || b.isNaN()) {
|
||||
return false;
|
||||
}
|
||||
if (!a.isFinite() || !b.isFinite()) {
|
||||
return a.eq(b);
|
||||
}
|
||||
// use "==" operator, handles infinities
|
||||
if (a.eq(b)) {
|
||||
return true;
|
||||
}
|
||||
// abs(a-b) <= max(relTol * max(abs(a), abs(b)), absTol)
|
||||
return a.minus(b).abs().lte(a.constructor.max(a.constructor.max(a.abs(), b.abs()).mul(relTol), absTol));
|
||||
}
|
||||
177
node_modules/mathjs/lib/esm/utils/collection.js
generated
vendored
Normal file
177
node_modules/mathjs/lib/esm/utils/collection.js
generated
vendored
Normal file
File diff suppressed because it is too large
Load Diff
14
node_modules/mathjs/lib/esm/utils/complex.js
generated
vendored
Normal file
14
node_modules/mathjs/lib/esm/utils/complex.js
generated
vendored
Normal file
@@ -0,0 +1,14 @@
|
||||
import { nearlyEqual } from './number.js';
|
||||
|
||||
/**
|
||||
* Test whether two complex values are equal provided a given relTol and absTol.
|
||||
* Does not use or change the global Complex.EPSILON setting
|
||||
* @param {Complex} x - The first complex number for comparison.
|
||||
* @param {Complex} y - The second complex number for comparison.
|
||||
* @param {number} relTol - The relative tolerance for comparison.
|
||||
* @param {number} absTol - The absolute tolerance for comparison.
|
||||
* @returns {boolean} - Returns true if the two complex numbers are equal within the given tolerances, otherwise returns false.
|
||||
*/
|
||||
export function complexEquals(x, y, relTol, absTol) {
|
||||
return nearlyEqual(x.re, y.re, relTol, absTol) && nearlyEqual(x.im, y.im, relTol, absTol);
|
||||
}
|
||||
147
node_modules/mathjs/lib/esm/utils/customs.js
generated
vendored
Normal file
147
node_modules/mathjs/lib/esm/utils/customs.js
generated
vendored
Normal file
File diff suppressed because it is too large
Load Diff
18
node_modules/mathjs/lib/esm/utils/emitter.js
generated
vendored
Normal file
18
node_modules/mathjs/lib/esm/utils/emitter.js
generated
vendored
Normal file
@@ -0,0 +1,18 @@
|
||||
import Emitter from 'tiny-emitter';
|
||||
|
||||
/**
|
||||
* Extend given object with emitter functions `on`, `off`, `once`, `emit`
|
||||
* @param {Object} obj
|
||||
* @return {Object} obj
|
||||
*/
|
||||
export function mixin(obj) {
|
||||
// create event emitter
|
||||
var emitter = new Emitter();
|
||||
|
||||
// bind methods to obj (we don't want to expose the emitter.e Array...)
|
||||
obj.on = emitter.on.bind(emitter);
|
||||
obj.off = emitter.off.bind(emitter);
|
||||
obj.once = emitter.once.bind(emitter);
|
||||
obj.emit = emitter.emit.bind(emitter);
|
||||
return obj;
|
||||
}
|
||||
126
node_modules/mathjs/lib/esm/utils/factory.js
generated
vendored
Normal file
126
node_modules/mathjs/lib/esm/utils/factory.js
generated
vendored
Normal file
File diff suppressed because it is too large
Load Diff
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user