mathjs
Version:
Math.js is an extensive math library for JavaScript and Node.js. It features a flexible expression parser with support for symbolic computation, comes with a large set of built-in functions and constants, and offers an integrated solution to work with dif
697 lines (689 loc) • 11.7 kB
JavaScript
/**
* THIS FILE IS AUTO-GENERATED
* DON'T MAKE CHANGES HERE
*/
import { config } from './configReadonly'
import {
createNode,
createArrayNode,
createBlockNode,
createConstantNode,
createObjectNode,
createParenthesisNode,
createRelationalNode,
createChainClass,
createReviver,
createConditionalNode,
createOperatorNode,
createRangeNode,
createFunctionAssignmentNode,
createChain,
createAccessorNode,
createAssignmentNode,
createIndexNode,
createSymbolNode,
createFunctionNode,
createParse,
createEvaluate,
createParserClass,
createHelpClass,
createSimplify,
createRationalize,
createHelp,
createCompile,
createParser,
createDerivative,
createApplyTransform,
createFilterTransform,
createMapTransform,
createForEachTransform,
createMaxTransform,
createMinTransform,
createSubsetTransform,
createConcatTransform,
createRangeTransform,
createSumTransform,
createIndexTransform,
createColumnTransform,
createRowTransform,
createStdTransform,
createMeanTransform,
createVarianceTransform
} from '../factoriesAny'
import {
ResultSet,
Complex,
Range,
eye,
_false,
_null,
_true,
BigNumber,
Matrix,
e,
i,
LN10,
LOG10E,
_NaN,
pi,
SQRT1_2, // eslint-disable-line camelcase
tau,
efimovFactor,
fineStructure,
sackurTetrode,
weakMixingAngle,
Fraction,
LN2,
phi,
SQRT2,
DenseMatrix,
_Infinity,
typed,
isInteger,
isNumeric,
isPositive,
isNaN,
equalScalar,
number,
boolean,
complex,
splitUnit,
unaryPlus,
apply,
cube,
expm1,
log10,
multiplyScalar,
sign,
square,
bitNot,
arg,
im,
not,
filter,
forEach,
map,
erf,
format,
isPrime,
acos,
acot,
acsc,
asec,
asin,
atan,
atanh,
cosh,
coth,
csch,
sech,
sinh,
tanh,
combinations,
pickRandom,
randomInt,
LOG2E,
clone,
hasNumericValue,
typeOf,
string,
fraction,
unaryMinus,
addScalar,
exp,
log2,
sqrt,
conj,
getMatrixDataType,
mode,
print,
acosh,
acsch,
asinh,
cos,
csc,
sin,
combinationsWithRep,
random,
version,
isNegative,
SparseMatrix,
matrix,
cbrt,
gcd,
mod,
nthRoot,
xgcd,
bitAnd,
bitXor,
or,
concat,
diag,
identity,
ones,
reshape,
size,
subset,
zeros,
to,
round,
leftShift,
rightLogShift,
compare,
compareText,
smaller,
larger,
unequal,
max,
ImmutableDenseMatrix,
FibonacciHeap,
sparse,
acoth,
atan2,
sec,
add,
trace,
composition,
isZero,
abs,
floor,
multiply,
dotMultiply,
re,
flatten,
resize,
squeeze,
prod,
pow,
dotPow,
rightArithShift,
compareNatural,
equalText,
largerEq,
partitionSelect,
min,
Spa,
asech,
tan,
setSize,
norm,
quantileSeq,
gamma,
bignumber,
lcm,
bitOr,
kron,
transpose,
numeric,
and,
smallerEq,
sort,
cot,
dot,
sum,
factorial,
permutations,
ceil,
subtract,
cross,
ctranspose,
equal,
Index,
setCartesian,
setDistinct,
setIsSubset,
setPowerset,
index,
fix,
range,
divideScalar,
nthRoots,
lsolve,
deepEqual,
setDifference,
setMultiplicity,
hypot,
lup,
slu,
det,
distance,
stirlingS2,
catalan,
xor,
row,
dotDivide,
Unit,
createUnit,
setSymDifference,
qr,
inv,
sqrtm,
intersect,
bellNumbers,
atomicMass,
bohrMagneton,
boltzmann,
conductanceQuantum,
deuteronMass,
electronMass,
faraday,
firstRadiation,
gravitationConstant,
hartreeEnergy,
klitzing,
magneticConstant,
molarMass,
molarPlanckConstant,
neutronMass,
planckCharge,
planckLength,
planckTemperature,
protonMass,
reducedPlanckConstant,
secondRadiation,
stefanBoltzmann,
vacuumImpedance,
column,
usolve,
setIntersect,
lusolve,
expm,
avogadro,
classicalElectronRadius,
electricConstant,
fermiCoupling,
gravity,
loschmidt,
molarMassC12,
nuclearMagneton,
planckMass,
quantumOfCirculation,
speedOfLight,
wienDisplacement,
log,
unit,
divide,
median,
variance,
std,
multinomial,
bohrRadius,
elementaryCharge,
inverseConductanceQuantum,
molarVolume,
planckTime,
thomsonCrossSection,
log1p,
mean,
gasConstant,
planckConstant,
setUnion,
kldivergence,
coulomb,
rydberg,
mad,
magneticFluxQuantum
} from './pureFunctionsAny.generated'
const math = {} // NOT pure!
const mathWithTransform = {} // NOT pure!
const classes = {} // NOT pure!
export const Node = createNode({ mathWithTransform })
export const ArrayNode = createArrayNode({ Node })
export const BlockNode = createBlockNode({ Node, ResultSet })
export const ConstantNode = createConstantNode({ Node })
export const ObjectNode = createObjectNode({ Node })
export const ParenthesisNode = createParenthesisNode({ Node })
export const RelationalNode = createRelationalNode({ Node })
export const Chain = createChainClass({ math })
export const reviver = createReviver({ classes })
export const ConditionalNode = createConditionalNode({ Node })
export const OperatorNode = createOperatorNode({ Node })
export const RangeNode = createRangeNode({ Node })
export const FunctionAssignmentNode = createFunctionAssignmentNode({ Node, typed })
export const chain = createChain({ Chain, typed })
export const AccessorNode = createAccessorNode({ Node, subset })
export const AssignmentNode = createAssignmentNode({ matrix, Node, subset })
export const IndexNode = createIndexNode({ Index, Node, Range, size })
export const SymbolNode = createSymbolNode({ Unit, Node, math })
export const FunctionNode = createFunctionNode({ Node, SymbolNode, math })
export const parse = createParse({ AccessorNode, ArrayNode, AssignmentNode, BlockNode, ConditionalNode, ConstantNode, FunctionAssignmentNode, FunctionNode, IndexNode, ObjectNode, OperatorNode, ParenthesisNode, RangeNode, RelationalNode, SymbolNode, config, numeric, typed })
export const evaluate = createEvaluate({ parse, typed })
export const Parser = createParserClass({ parse })
export const Help = createHelpClass({ parse })
export const simplify = createSimplify({ bignumber, fraction, ConstantNode, FunctionNode, OperatorNode, ParenthesisNode, SymbolNode, add, config, divide, equal, isZero, mathWithTransform, multiply, parse, pow, subtract, typed })
export const rationalize = createRationalize({ bignumber, fraction, ConstantNode, FunctionNode, OperatorNode, ParenthesisNode, SymbolNode, add, config, divide, equal, isZero, mathWithTransform, multiply, parse, pow, simplify, subtract, typed })
export const help = createHelp({ Help, mathWithTransform, typed })
export const compile = createCompile({ parse, typed })
export const parser = createParser({ Parser, typed })
export const derivative = createDerivative({ ConstantNode, FunctionNode, OperatorNode, ParenthesisNode, SymbolNode, config, equal, isZero, numeric, parse, simplify, typed })
Object.assign(math, {
'typeof': typeOf,
eye,
reviver,
false: _false,
null: _null,
true: _true,
e,
i,
LN10,
LOG10E,
NaN: _NaN,
pi,
SQRT1_2,
tau,
efimovFactor,
fineStructure,
sackurTetrode,
weakMixingAngle,
'E': e,
LN2,
phi,
SQRT2,
Infinity: _Infinity,
'PI': pi,
typed,
isInteger,
isNumeric,
isPositive,
isNaN,
equalScalar,
number,
boolean,
complex,
splitUnit,
unaryPlus,
apply,
cube,
expm1,
log10,
multiplyScalar,
sign,
square,
bitNot,
arg,
im,
not,
filter,
forEach,
map,
erf,
format,
isPrime,
acos,
acot,
acsc,
asec,
asin,
atan,
atanh,
cosh,
coth,
csch,
sech,
sinh,
tanh,
chain,
combinations,
pickRandom,
randomInt,
LOG2E,
clone,
hasNumericValue,
typeOf,
string,
fraction,
unaryMinus,
addScalar,
exp,
log2,
sqrt,
conj,
getMatrixDataType,
mode,
print,
acosh,
acsch,
asinh,
cos,
csc,
sin,
combinationsWithRep,
random,
version,
isNegative,
matrix,
cbrt,
gcd,
mod,
nthRoot,
xgcd,
bitAnd,
bitXor,
or,
concat,
diag,
identity,
ones,
reshape,
size,
subset,
zeros,
to,
round,
leftShift,
rightLogShift,
compare,
compareText,
smaller,
larger,
unequal,
max,
sparse,
acoth,
atan2,
sec,
add,
trace,
composition,
isZero,
abs,
floor,
multiply,
dotMultiply,
re,
flatten,
resize,
squeeze,
prod,
pow,
dotPow,
rightArithShift,
compareNatural,
equalText,
largerEq,
partitionSelect,
min,
asech,
tan,
setSize,
norm,
quantileSeq,
gamma,
bignumber,
lcm,
bitOr,
kron,
transpose,
numeric,
and,
smallerEq,
sort,
cot,
dot,
sum,
factorial,
permutations,
ceil,
subtract,
cross,
ctranspose,
equal,
setCartesian,
setDistinct,
setIsSubset,
setPowerset,
index,
fix,
range,
divideScalar,
nthRoots,
lsolve,
deepEqual,
setDifference,
setMultiplicity,
hypot,
lup,
slu,
det,
distance,
stirlingS2,
catalan,
xor,
row,
dotDivide,
createUnit,
setSymDifference,
qr,
inv,
sqrtm,
intersect,
bellNumbers,
atomicMass,
bohrMagneton,
boltzmann,
conductanceQuantum,
deuteronMass,
electronMass,
faraday,
firstRadiation,
gravitationConstant,
hartreeEnergy,
klitzing,
magneticConstant,
molarMass,
molarPlanckConstant,
neutronMass,
planckCharge,
planckLength,
planckTemperature,
protonMass,
reducedPlanckConstant,
secondRadiation,
stefanBoltzmann,
vacuumImpedance,
column,
usolve,
setIntersect,
lusolve,
expm,
avogadro,
classicalElectronRadius,
electricConstant,
fermiCoupling,
gravity,
loschmidt,
molarMassC12,
nuclearMagneton,
planckMass,
quantumOfCirculation,
speedOfLight,
wienDisplacement,
log,
unit,
divide,
median,
variance,
std,
multinomial,
bohrRadius,
elementaryCharge,
inverseConductanceQuantum,
molarVolume,
planckTime,
thomsonCrossSection,
log1p,
parse,
evaluate,
mean,
'var': variance,
simplify,
rationalize,
gasConstant,
planckConstant,
setUnion,
'eval': evaluate,
help,
kldivergence,
coulomb,
rydberg,
compile,
mad,
magneticFluxQuantum,
parser,
derivative,
config
})
Object.assign(mathWithTransform, math, {
apply: createApplyTransform({ isInteger, typed }),
filter: createFilterTransform({ typed }),
map: createMapTransform({ typed }),
forEach: createForEachTransform({ typed }),
max: createMaxTransform({ larger, typed }),
min: createMinTransform({ smaller, typed }),
subset: createSubsetTransform({ matrix, typed }),
concat: createConcatTransform({ isInteger, matrix, typed }),
range: createRangeTransform({ bignumber, matrix, config, larger, largerEq, smaller, smallerEq, typed }),
sum: createSumTransform({ bignumber, fraction, add, config, typed }),
index: createIndexTransform({ Index }),
column: createColumnTransform({ Index, matrix, range, typed }),
row: createRowTransform({ Index, matrix, range, typed }),
std: createStdTransform({ sqrt, typed, variance }),
mean: createMeanTransform({ add, divide, typed }),
variance: createVarianceTransform({ add, apply, divide, isNaN, multiply, subtract, typed })
})
Object.assign(classes, {
ResultSet,
Complex,
Range,
Node,
ArrayNode,
BlockNode,
ConstantNode,
ObjectNode,
ParenthesisNode,
RelationalNode,
Chain,
BigNumber,
Matrix,
ConditionalNode,
OperatorNode,
Fraction,
RangeNode,
DenseMatrix,
FunctionAssignmentNode,
SparseMatrix,
ImmutableDenseMatrix,
FibonacciHeap,
AccessorNode,
Spa,
AssignmentNode,
Index,
Unit,
IndexNode,
SymbolNode,
FunctionNode,
Parser,
Help
})
Chain.createProxy(math)
export { embeddedDocs as docs } from '../expression/embeddedDocs/embeddedDocs'