mathjs 7.5.1 → 7.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/HISTORY.md +7 -0
- package/dist/math.js +123 -29
- package/dist/math.min.js +3 -3
- package/dist/math.min.map +1 -1
- package/docs/datatypes/units.md +21 -0
- package/docs/reference/functions/rotate.md +47 -0
- package/docs/reference/functions/rotationMatrix.md +1 -1
- package/docs/reference/functions.md +1 -0
- package/es/entry/dependenciesAny/dependenciesRotate.generated.js +14 -0
- package/es/entry/dependenciesAny.generated.js +1 -0
- package/es/entry/impureFunctionsAny.generated.js +24 -23
- package/es/entry/pureFunctionsAny.generated.js +10 -5
- package/es/expression/embeddedDocs/embeddedDocs.js +2 -0
- package/es/expression/embeddedDocs/function/matrix/rotate.js +8 -0
- package/es/expression/node/FunctionNode.js +1 -1
- package/es/expression/node/Node.js +2 -2
- package/es/factoriesAny.js +1 -0
- package/es/function/matrix/rotate.js +78 -0
- package/es/function/matrix/rotationMatrix.js +5 -4
- package/es/function/special/erf.js +1 -0
- package/es/plain/number/constants.js +1 -1
- package/es/plain/number/probability.js +1 -0
- package/es/type/unit/Unit.js +17 -18
- package/es/version.js +1 -1
- package/examples/bignumbers.js +2 -0
- package/lib/entry/dependenciesAny/dependenciesRotate.generated.js +26 -0
- package/lib/entry/dependenciesAny.generated.js +8 -0
- package/lib/entry/impureFunctionsAny.generated.js +27 -26
- package/lib/entry/mainAny.js +5 -0
- package/lib/entry/mainNumber.js +5 -0
- package/lib/entry/pureFunctionsAny.generated.js +14 -8
- package/lib/expression/embeddedDocs/embeddedDocs.js +3 -0
- package/lib/expression/embeddedDocs/function/matrix/rotate.js +15 -0
- package/lib/expression/node/FunctionNode.js +1 -1
- package/lib/expression/node/Node.js +2 -2
- package/lib/factoriesAny.js +8 -0
- package/lib/function/matrix/rotate.js +88 -0
- package/lib/function/matrix/rotationMatrix.js +5 -4
- package/lib/function/special/erf.js +1 -0
- package/lib/header.js +2 -2
- package/lib/plain/bignumber/index.js +1 -0
- package/lib/plain/number/constants.js +2 -1
- package/lib/plain/number/index.js +9 -0
- package/lib/plain/number/probability.js +1 -0
- package/lib/type/unit/Unit.js +17 -18
- package/lib/version.js +1 -1
- package/package.json +9 -9
- package/src/core/function/import.js +2 -2
- package/src/entry/dependenciesAny/dependenciesRotate.generated.js +15 -0
- package/src/entry/dependenciesAny.generated.js +1 -0
- package/src/entry/impureFunctionsAny.generated.js +20 -18
- package/src/entry/pureFunctionsAny.generated.js +7 -5
- package/src/expression/embeddedDocs/embeddedDocs.js +2 -0
- package/src/expression/embeddedDocs/function/matrix/rotate.js +19 -0
- package/src/expression/node/FunctionNode.js +1 -1
- package/src/expression/node/Node.js +2 -1
- package/src/factoriesAny.js +1 -0
- package/src/function/matrix/rotate.js +79 -0
- package/src/function/matrix/rotationMatrix.js +5 -4
- package/src/function/special/erf.js +2 -0
- package/src/plain/number/constants.js +1 -1
- package/src/plain/number/probability.js +2 -0
- package/src/type/unit/Unit.js +18 -21
- package/src/version.js +1 -1
@@ -9,7 +9,7 @@ Object.defineProperty(exports, "docs", {
|
|
9
9
|
return _embeddedDocs.embeddedDocs;
|
10
10
|
}
|
11
11
|
});
|
12
|
-
exports.
|
12
|
+
exports.derivative = exports.parser = exports.rationalize = exports.simplify = exports.compile = exports.help = exports.Parser = exports.Help = exports.evaluate = exports.parse = exports.FunctionNode = exports.SymbolNode = exports.AssignmentNode = exports.IndexNode = exports.AccessorNode = exports.chain = exports.FunctionAssignmentNode = exports.RangeNode = exports.OperatorNode = exports.ConditionalNode = exports.reviver = exports.Chain = exports.RelationalNode = exports.ParenthesisNode = exports.ObjectNode = exports.ConstantNode = exports.BlockNode = exports.ArrayNode = exports.Node = void 0;
|
13
13
|
|
14
14
|
var _configReadonly = require("./configReadonly");
|
15
15
|
|
@@ -145,6 +145,21 @@ var Help = (0, _factoriesAny.createHelpClass)({
|
|
145
145
|
parse: parse
|
146
146
|
});
|
147
147
|
exports.Help = Help;
|
148
|
+
var Parser = (0, _factoriesAny.createParserClass)({
|
149
|
+
parse: parse
|
150
|
+
});
|
151
|
+
exports.Parser = Parser;
|
152
|
+
var help = (0, _factoriesAny.createHelp)({
|
153
|
+
Help: Help,
|
154
|
+
mathWithTransform: mathWithTransform,
|
155
|
+
typed: _pureFunctionsAny.typed
|
156
|
+
});
|
157
|
+
exports.help = help;
|
158
|
+
var compile = (0, _factoriesAny.createCompile)({
|
159
|
+
parse: parse,
|
160
|
+
typed: _pureFunctionsAny.typed
|
161
|
+
});
|
162
|
+
exports.compile = compile;
|
148
163
|
var simplify = (0, _factoriesAny.createSimplify)({
|
149
164
|
bignumber: _pureFunctionsAny.bignumber,
|
150
165
|
fraction: _pureFunctionsAny.fraction,
|
@@ -188,21 +203,11 @@ var rationalize = (0, _factoriesAny.createRationalize)({
|
|
188
203
|
typed: _pureFunctionsAny.typed
|
189
204
|
});
|
190
205
|
exports.rationalize = rationalize;
|
191
|
-
var
|
192
|
-
|
193
|
-
typed: _pureFunctionsAny.typed
|
194
|
-
});
|
195
|
-
exports.compile = compile;
|
196
|
-
var help = (0, _factoriesAny.createHelp)({
|
197
|
-
Help: Help,
|
198
|
-
mathWithTransform: mathWithTransform,
|
206
|
+
var parser = (0, _factoriesAny.createParser)({
|
207
|
+
Parser: Parser,
|
199
208
|
typed: _pureFunctionsAny.typed
|
200
209
|
});
|
201
|
-
exports.
|
202
|
-
var Parser = (0, _factoriesAny.createParserClass)({
|
203
|
-
parse: parse
|
204
|
-
});
|
205
|
-
exports.Parser = Parser;
|
210
|
+
exports.parser = parser;
|
206
211
|
var derivative = (0, _factoriesAny.createDerivative)({
|
207
212
|
ConstantNode: ConstantNode,
|
208
213
|
FunctionNode: FunctionNode,
|
@@ -218,11 +223,6 @@ var derivative = (0, _factoriesAny.createDerivative)({
|
|
218
223
|
typed: _pureFunctionsAny.typed
|
219
224
|
});
|
220
225
|
exports.derivative = derivative;
|
221
|
-
var parser = (0, _factoriesAny.createParser)({
|
222
|
-
Parser: Parser,
|
223
|
-
typed: _pureFunctionsAny.typed
|
224
|
-
});
|
225
|
-
exports.parser = parser;
|
226
226
|
|
227
227
|
_extends(math, {
|
228
228
|
reviver: reviver,
|
@@ -489,21 +489,22 @@ _extends(math, {
|
|
489
489
|
molarVolume: _pureFunctionsAny.molarVolume,
|
490
490
|
planckTime: _pureFunctionsAny.planckTime,
|
491
491
|
thomsonCrossSection: _pureFunctionsAny.thomsonCrossSection,
|
492
|
-
|
492
|
+
rotate: _pureFunctionsAny.rotate,
|
493
|
+
parse: parse,
|
494
|
+
evaluate: evaluate,
|
493
495
|
mad: _pureFunctionsAny.mad,
|
494
496
|
coulomb: _pureFunctionsAny.coulomb,
|
495
497
|
magneticFluxQuantum: _pureFunctionsAny.magneticFluxQuantum,
|
496
498
|
rydberg: _pureFunctionsAny.rydberg,
|
497
|
-
|
498
|
-
|
499
|
+
unit: _pureFunctionsAny.unit,
|
500
|
+
help: help,
|
501
|
+
gasConstant: _pureFunctionsAny.gasConstant,
|
502
|
+
compile: compile,
|
499
503
|
simplify: simplify,
|
500
504
|
rationalize: rationalize,
|
505
|
+
parser: parser,
|
501
506
|
planckConstant: _pureFunctionsAny.planckConstant,
|
502
|
-
compile: compile,
|
503
|
-
help: help,
|
504
|
-
gasConstant: _pureFunctionsAny.gasConstant,
|
505
507
|
derivative: derivative,
|
506
|
-
parser: parser,
|
507
508
|
config: _configReadonly.config
|
508
509
|
});
|
509
510
|
|
package/lib/entry/mainAny.js
CHANGED
@@ -55,6 +55,7 @@ var _pureFunctionsAny = require("./pureFunctionsAny.generated");
|
|
55
55
|
Object.keys(_pureFunctionsAny).forEach(function (key) {
|
56
56
|
if (key === "default" || key === "__esModule") return;
|
57
57
|
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
|
58
|
+
if (key in exports && exports[key] === _pureFunctionsAny[key]) return;
|
58
59
|
Object.defineProperty(exports, key, {
|
59
60
|
enumerable: true,
|
60
61
|
get: function get() {
|
@@ -68,6 +69,7 @@ var _impureFunctionsAny = require("./impureFunctionsAny.generated");
|
|
68
69
|
Object.keys(_impureFunctionsAny).forEach(function (key) {
|
69
70
|
if (key === "default" || key === "__esModule") return;
|
70
71
|
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
|
72
|
+
if (key in exports && exports[key] === _impureFunctionsAny[key]) return;
|
71
73
|
Object.defineProperty(exports, key, {
|
72
74
|
enumerable: true,
|
73
75
|
get: function get() {
|
@@ -81,6 +83,7 @@ var _typeChecks = require("./typeChecks");
|
|
81
83
|
Object.keys(_typeChecks).forEach(function (key) {
|
82
84
|
if (key === "default" || key === "__esModule") return;
|
83
85
|
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
|
86
|
+
if (key in exports && exports[key] === _typeChecks[key]) return;
|
84
87
|
Object.defineProperty(exports, key, {
|
85
88
|
enumerable: true,
|
86
89
|
get: function get() {
|
@@ -100,6 +103,7 @@ var _dependenciesAny = require("./dependenciesAny.generated");
|
|
100
103
|
Object.keys(_dependenciesAny).forEach(function (key) {
|
101
104
|
if (key === "default" || key === "__esModule") return;
|
102
105
|
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
|
106
|
+
if (key in exports && exports[key] === _dependenciesAny[key]) return;
|
103
107
|
Object.defineProperty(exports, key, {
|
104
108
|
enumerable: true,
|
105
109
|
get: function get() {
|
@@ -113,6 +117,7 @@ var _factoriesAny = require("../factoriesAny");
|
|
113
117
|
Object.keys(_factoriesAny).forEach(function (key) {
|
114
118
|
if (key === "default" || key === "__esModule") return;
|
115
119
|
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
|
120
|
+
if (key in exports && exports[key] === _factoriesAny[key]) return;
|
116
121
|
Object.defineProperty(exports, key, {
|
117
122
|
enumerable: true,
|
118
123
|
get: function get() {
|
package/lib/entry/mainNumber.js
CHANGED
@@ -55,6 +55,7 @@ var _pureFunctionsNumber = require("./pureFunctionsNumber.generated");
|
|
55
55
|
Object.keys(_pureFunctionsNumber).forEach(function (key) {
|
56
56
|
if (key === "default" || key === "__esModule") return;
|
57
57
|
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
|
58
|
+
if (key in exports && exports[key] === _pureFunctionsNumber[key]) return;
|
58
59
|
Object.defineProperty(exports, key, {
|
59
60
|
enumerable: true,
|
60
61
|
get: function get() {
|
@@ -68,6 +69,7 @@ var _impureFunctionsNumber = require("./impureFunctionsNumber.generated");
|
|
68
69
|
Object.keys(_impureFunctionsNumber).forEach(function (key) {
|
69
70
|
if (key === "default" || key === "__esModule") return;
|
70
71
|
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
|
72
|
+
if (key in exports && exports[key] === _impureFunctionsNumber[key]) return;
|
71
73
|
Object.defineProperty(exports, key, {
|
72
74
|
enumerable: true,
|
73
75
|
get: function get() {
|
@@ -81,6 +83,7 @@ var _typeChecks = require("./typeChecks");
|
|
81
83
|
Object.keys(_typeChecks).forEach(function (key) {
|
82
84
|
if (key === "default" || key === "__esModule") return;
|
83
85
|
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
|
86
|
+
if (key in exports && exports[key] === _typeChecks[key]) return;
|
84
87
|
Object.defineProperty(exports, key, {
|
85
88
|
enumerable: true,
|
86
89
|
get: function get() {
|
@@ -100,6 +103,7 @@ var _dependenciesNumber = require("./dependenciesNumber.generated");
|
|
100
103
|
Object.keys(_dependenciesNumber).forEach(function (key) {
|
101
104
|
if (key === "default" || key === "__esModule") return;
|
102
105
|
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
|
106
|
+
if (key in exports && exports[key] === _dependenciesNumber[key]) return;
|
103
107
|
Object.defineProperty(exports, key, {
|
104
108
|
enumerable: true,
|
105
109
|
get: function get() {
|
@@ -113,6 +117,7 @@ var _factoriesNumber = require("../factoriesNumber");
|
|
113
117
|
Object.keys(_factoriesNumber).forEach(function (key) {
|
114
118
|
if (key === "default" || key === "__esModule") return;
|
115
119
|
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
|
120
|
+
if (key in exports && exports[key] === _factoriesNumber[key]) return;
|
116
121
|
Object.defineProperty(exports, key, {
|
117
122
|
enumerable: true,
|
118
123
|
get: function get() {
|
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
5
5
|
});
|
6
6
|
exports.matrix = exports.SparseMatrix = exports.isNegative = exports.SQRT2 = exports.random = exports.combinationsWithRep = exports.sin = exports.csc = exports.cos = exports.asinh = exports.acsch = exports.acosh = exports.bin = exports.mode = exports.getMatrixDataType = exports.conj = exports.sqrt = exports.log2 = exports.exp = exports.addScalar = exports.unaryMinus = exports.fraction = exports.string = exports.typeOf = exports.hasNumericValue = exports.clone = exports.LN2 = exports.randomInt = exports.pickRandom = exports.combinations = exports.tanh = exports.sinh = exports.sech = exports.csch = exports.coth = exports.cosh = exports.atanh = exports.atan = exports.asin = exports.asec = exports.acsc = exports.acot = exports.acos = exports.isPrime = exports.print = exports.oct = exports.format = exports.erf = exports.map = exports.forEach = exports.filter = exports.not = exports.im = exports.arg = exports.bitNot = exports.square = exports.sign = exports.multiplyScalar = exports.log10 = exports.expm1 = exports.cube = exports.apply = exports.unaryPlus = exports.splitUnit = exports.complex = exports["boolean"] = exports.number = exports.equalScalar = exports.isNaN = exports.isPositive = exports.isNumeric = exports.isInteger = exports.typed = exports.phi = exports.DenseMatrix = exports.version = exports.LOG2E = exports._Infinity = exports.e = exports.Fraction = exports.weakMixingAngle = exports.sackurTetrode = exports.fineStructure = exports.efimovFactor = exports.tau = exports.SQRT1_2 = exports.pi = exports._NaN = exports.LOG10E = exports.LN10 = exports.i = exports.replacer = exports.Matrix = exports.BigNumber = exports._true = exports._null = exports._false = exports.Range = exports.Complex = exports.ResultSet = void 0;
|
7
7
|
exports.setUnion = exports.Spa = exports.lsolveAll = exports.lsolve = exports.nthRoots = exports.divideScalar = exports.xor = exports.setIsSubset = exports.deepEqual = exports.ctranspose = exports.column = exports.fix = exports.setSymDifference = exports.setCartesian = exports.max = exports.equal = exports.prod = exports.row = exports.range = exports.cross = exports.subtract = exports.ceil = exports.permutations = exports.factorial = exports.sum = exports.index = exports.setPowerset = exports.setDistinct = exports.cot = exports.min = exports.sort = exports.smallerEq = exports.and = exports.numeric = exports.transpose = exports.kron = exports.bitOr = exports.lcm = exports.bignumber = exports.gamma = exports.quantileSeq = exports.trace = exports.setSize = exports.setMultiplicity = exports.setIntersect = exports.setDifference = exports.tan = exports.asech = exports.Index = exports.partitionSelect = exports.largerEq = exports.equalText = exports.compareNatural = exports.rightArithShift = exports.dotPow = exports.pow = exports.to = exports.squeeze = exports.resize = exports.flatten = exports.re = exports.dotMultiply = exports.multiply = exports.floor = exports.abs = exports.isZero = exports.composition = exports.dot = exports.add = exports.sec = exports.atan2 = exports.acoth = exports.sparse = exports.FibonacciHeap = exports.ImmutableDenseMatrix = exports.unequal = exports.larger = exports.smaller = exports.compareText = exports.compare = exports.rightLogShift = exports.leftShift = exports.round = exports.hex = exports.zeros = exports.subset = exports.size = exports.reshape = exports.ones = exports.identity = exports.diag = exports.concat = exports.or = exports.bitXor = exports.bitAnd = exports.xgcd = exports.nthRoot = exports.mod = exports.gcd = exports.cbrt = void 0;
|
8
|
-
exports.gasConstant = exports.
|
8
|
+
exports.planckConstant = exports.gasConstant = exports.unit = exports.rydberg = exports.magneticFluxQuantum = exports.coulomb = exports.mad = exports.rotate = exports.thomsonCrossSection = exports.planckTime = exports.molarVolume = exports.inverseConductanceQuantum = exports.elementaryCharge = exports.bohrRadius = exports.median = exports.rotationMatrix = exports.wienDisplacement = exports.speedOfLight = exports.quantumOfCirculation = exports.planckMass = exports.nuclearMagneton = exports.molarMassC12 = exports.loschmidt = exports.gravity = exports.fermiCoupling = exports.electricConstant = exports.classicalElectronRadius = exports.avogadro = exports.multinomial = exports.sqrtm = exports.lusolve = exports.norm = exports.usolve = exports.vacuumImpedance = exports.stefanBoltzmann = exports.secondRadiation = exports.reducedPlanckConstant = exports.protonMass = exports.planckTemperature = exports.planckLength = exports.planckCharge = exports.neutronMass = exports.molarPlanckConstant = exports.molarMass = exports.magneticConstant = exports.klitzing = exports.hartreeEnergy = exports.gravitationConstant = exports.firstRadiation = exports.faraday = exports.electronMass = exports.deuteronMass = exports.conductanceQuantum = exports.boltzmann = exports.bohrMagneton = exports.atomicMass = exports.std = exports.intersect = exports.eigs = exports.createUnit = exports.Unit = exports.log1p = exports.bellNumbers = exports.kldivergence = exports.variance = exports.mean = exports.divide = exports.expm = exports.inv = exports.qr = exports.hypot = exports.usolveAll = exports.dotDivide = exports.log = exports.diff = exports.catalan = exports.stirlingS2 = exports.distance = exports.det = exports.slu = exports.lup = void 0;
|
9
9
|
|
10
10
|
var _configReadonly = require("./configReadonly");
|
11
11
|
|
@@ -1765,11 +1765,12 @@ var thomsonCrossSection = /* #__PURE__ */(0, _factoriesAny.createThomsonCrossSec
|
|
1765
1765
|
config: _configReadonly.config
|
1766
1766
|
});
|
1767
1767
|
exports.thomsonCrossSection = thomsonCrossSection;
|
1768
|
-
var
|
1769
|
-
|
1768
|
+
var rotate = /* #__PURE__ */(0, _factoriesAny.createRotate)({
|
1769
|
+
multiply: multiply,
|
1770
|
+
rotationMatrix: rotationMatrix,
|
1770
1771
|
typed: typed
|
1771
1772
|
});
|
1772
|
-
exports.
|
1773
|
+
exports.rotate = rotate;
|
1773
1774
|
var mad = /* #__PURE__ */(0, _factoriesAny.createMad)({
|
1774
1775
|
abs: abs,
|
1775
1776
|
map: map,
|
@@ -1796,15 +1797,20 @@ var rydberg = /* #__PURE__ */(0, _factoriesAny.createRydberg)({
|
|
1796
1797
|
config: _configReadonly.config
|
1797
1798
|
});
|
1798
1799
|
exports.rydberg = rydberg;
|
1799
|
-
var
|
1800
|
+
var unit = /* #__PURE__ */(0, _factoriesAny.createUnitFunction)({
|
1801
|
+
Unit: Unit,
|
1802
|
+
typed: typed
|
1803
|
+
});
|
1804
|
+
exports.unit = unit;
|
1805
|
+
var gasConstant = /* #__PURE__ */(0, _factoriesAny.createGasConstant)({
|
1800
1806
|
BigNumber: BigNumber,
|
1801
1807
|
Unit: Unit,
|
1802
1808
|
config: _configReadonly.config
|
1803
1809
|
});
|
1804
|
-
exports.
|
1805
|
-
var
|
1810
|
+
exports.gasConstant = gasConstant;
|
1811
|
+
var planckConstant = /* #__PURE__ */(0, _factoriesAny.createPlanckConstant)({
|
1806
1812
|
BigNumber: BigNumber,
|
1807
1813
|
Unit: Unit,
|
1808
1814
|
config: _configReadonly.config
|
1809
1815
|
});
|
1810
|
-
exports.
|
1816
|
+
exports.planckConstant = planckConstant;
|
@@ -439,6 +439,8 @@ var _row = require("./function/matrix/row");
|
|
439
439
|
|
440
440
|
var _rotationMatrix = require("./function/matrix/rotationMatrix");
|
441
441
|
|
442
|
+
var _rotate = require("./function/matrix/rotate");
|
443
|
+
|
442
444
|
var embeddedDocs = {
|
443
445
|
// construction functions
|
444
446
|
bignumber: _bignumber.bignumberDocs,
|
@@ -782,6 +784,7 @@ var embeddedDocs = {
|
|
782
784
|
range: _range.rangeDocs,
|
783
785
|
resize: _resize.resizeDocs,
|
784
786
|
reshape: _reshape.reshapeDocs,
|
787
|
+
rotate: _rotate.rotateDocs,
|
785
788
|
rotationMatrix: _rotationMatrix.rotationMatrixDocs,
|
786
789
|
row: _row.rowDocs,
|
787
790
|
size: _size.sizeDocs,
|
@@ -0,0 +1,15 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
4
|
+
value: true
|
5
|
+
});
|
6
|
+
exports.rotateDocs = void 0;
|
7
|
+
var rotateDocs = {
|
8
|
+
name: 'rotate',
|
9
|
+
category: 'Matrix',
|
10
|
+
syntax: ['rotate(w, theta)', 'rotate(w, theta, v)'],
|
11
|
+
description: 'Returns a 2-D rotation matrix (2x2) for a given angle (in radians). ' + 'Returns a 2-D rotation matrix (3x3) of a given angle (in radians) around given axis.',
|
12
|
+
examples: ['rotate([1, 0], math.pi / 2)', 'rotate(matrix([1, 0]), unit("35deg"))', 'rotate([1, 0, 0], unit("90deg"), [0, 0, 1])', 'rotate(matrix([1, 0, 0]), unit("90deg"), matrix([0, 0, 1]))'],
|
13
|
+
seealso: ['matrix', 'rotationMatrix']
|
14
|
+
};
|
15
|
+
exports.rotateDocs = rotateDocs;
|
@@ -303,7 +303,7 @@ var createFunctionNode = /* #__PURE__ */(0, _factory.factory)(name, dependencies
|
|
303
303
|
var latex = ''; // Match everything of the form ${identifier} or ${identifier[2]} or $$
|
304
304
|
// while submatching identifier and 2 (in the second case)
|
305
305
|
|
306
|
-
var regex =
|
306
|
+
var regex = /\$(?:\{([a-z_][a-z_0-9]*)(?:\[([0-9]+)\])?\}|\$)/gi;
|
307
307
|
var inputPos = 0; // position in the input string
|
308
308
|
|
309
309
|
var match;
|
@@ -134,8 +134,8 @@ var createNode = /* #__PURE__ */(0, _factory.factory)(name, dependencies, functi
|
|
134
134
|
|
135
135
|
Node.prototype.traverse = function (callback) {
|
136
136
|
// execute callback for itself
|
137
|
-
|
138
|
-
// recursively traverse over all childs of a node
|
137
|
+
// eslint-disable-next-line
|
138
|
+
callback(this, null, null); // recursively traverse over all childs of a node
|
139
139
|
|
140
140
|
function _traverse(node, callback) {
|
141
141
|
node.forEach(function (child, path, parent) {
|
package/lib/factoriesAny.js
CHANGED
@@ -483,6 +483,12 @@ Object.defineProperty(exports, "createResize", {
|
|
483
483
|
return _resize.createResize;
|
484
484
|
}
|
485
485
|
});
|
486
|
+
Object.defineProperty(exports, "createRotate", {
|
487
|
+
enumerable: true,
|
488
|
+
get: function get() {
|
489
|
+
return _rotate.createRotate;
|
490
|
+
}
|
491
|
+
});
|
486
492
|
Object.defineProperty(exports, "createRotationMatrix", {
|
487
493
|
enumerable: true,
|
488
494
|
get: function get() {
|
@@ -2132,6 +2138,8 @@ var _reshape = require("./function/matrix/reshape");
|
|
2132
2138
|
|
2133
2139
|
var _resize = require("./function/matrix/resize");
|
2134
2140
|
|
2141
|
+
var _rotate = require("./function/matrix/rotate");
|
2142
|
+
|
2135
2143
|
var _rotationMatrix = require("./function/matrix/rotationMatrix");
|
2136
2144
|
|
2137
2145
|
var _row = require("./function/matrix/row");
|
@@ -0,0 +1,88 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
4
|
+
value: true
|
5
|
+
});
|
6
|
+
exports.createRotate = void 0;
|
7
|
+
|
8
|
+
var _factory = require("../../utils/factory");
|
9
|
+
|
10
|
+
var _array = require("../../utils/array");
|
11
|
+
|
12
|
+
var name = 'rotate';
|
13
|
+
var dependencies = ['typed', 'multiply', 'rotationMatrix'];
|
14
|
+
var createRotate = /* #__PURE__ */(0, _factory.factory)(name, dependencies, function (_ref) {
|
15
|
+
var typed = _ref.typed,
|
16
|
+
multiply = _ref.multiply,
|
17
|
+
rotationMatrix = _ref.rotationMatrix;
|
18
|
+
|
19
|
+
/**
|
20
|
+
* Rotate a vector of size 1x2 counter-clockwise by a given angle
|
21
|
+
* Rotate a vector of size 1x3 counter-clockwise by a given angle around the given axis
|
22
|
+
*
|
23
|
+
* Syntax:
|
24
|
+
*
|
25
|
+
* math.rotate(w, theta)
|
26
|
+
* math.rotate(w, theta, v)
|
27
|
+
*
|
28
|
+
* Examples:
|
29
|
+
*
|
30
|
+
* math.rotate([11, 12], math.pi / 2) // returns matrix([-12, 11])
|
31
|
+
* math.rotate(matrix([11, 12]), math.pi / 2) // returns matrix([-12, 11])
|
32
|
+
*
|
33
|
+
* math.rotate([1, 0, 0], unit('90deg'), [0, 0, 1]) // returns matrix([0, 1, 0])
|
34
|
+
* math.rotate(matrix([1, 0, 0]), unit('90deg'), [0, 0, 1]) // returns matrix([0, 1, 0])
|
35
|
+
*
|
36
|
+
* math.rotate([1, 0], math.complex(1 + i)) // returns matrix([cos(1 + i) - sin(1 + i), sin(1 + i) + cos(1 + i)])
|
37
|
+
*
|
38
|
+
* See also:
|
39
|
+
*
|
40
|
+
* matrix, rotationMatrix
|
41
|
+
*
|
42
|
+
* @param {Array | Matrix} w Vector to rotate
|
43
|
+
* @param {number | BigNumber | Complex | Unit} theta Rotation angle
|
44
|
+
* @param {Array | Matrix} [v] Rotation axis
|
45
|
+
* @return {Array | Matrix} Multiplication of the rotation matrix and w
|
46
|
+
*/
|
47
|
+
return typed(name, {
|
48
|
+
'Array , number | BigNumber | Complex | Unit': function ArrayNumberBigNumberComplexUnit(w, theta) {
|
49
|
+
_validateSize(w, 2);
|
50
|
+
|
51
|
+
var matrixRes = multiply(rotationMatrix(theta), w);
|
52
|
+
return matrixRes.toArray();
|
53
|
+
},
|
54
|
+
'Matrix , number | BigNumber | Complex | Unit': function MatrixNumberBigNumberComplexUnit(w, theta) {
|
55
|
+
_validateSize(w, 2);
|
56
|
+
|
57
|
+
return multiply(rotationMatrix(theta), w);
|
58
|
+
},
|
59
|
+
'Array, number | BigNumber | Complex | Unit, Array | Matrix': function ArrayNumberBigNumberComplexUnitArrayMatrix(w, theta, v) {
|
60
|
+
_validateSize(w, 3);
|
61
|
+
|
62
|
+
var matrixRes = multiply(rotationMatrix(theta, v), w);
|
63
|
+
return matrixRes;
|
64
|
+
},
|
65
|
+
'Matrix, number | BigNumber | Complex | Unit, Array | Matrix': function MatrixNumberBigNumberComplexUnitArrayMatrix(w, theta, v) {
|
66
|
+
_validateSize(w, 3);
|
67
|
+
|
68
|
+
return multiply(rotationMatrix(theta, v), w);
|
69
|
+
}
|
70
|
+
});
|
71
|
+
|
72
|
+
function _validateSize(v, expectedSize) {
|
73
|
+
var actualSize = Array.isArray(v) ? (0, _array.arraySize)(v) : v.size();
|
74
|
+
|
75
|
+
if (actualSize.length > 2) {
|
76
|
+
throw new RangeError("Vector must be of dimensions 1x".concat(expectedSize));
|
77
|
+
}
|
78
|
+
|
79
|
+
if (actualSize.length === 2 && actualSize[1] !== 1) {
|
80
|
+
throw new RangeError("Vector must be of dimensions 1x".concat(expectedSize));
|
81
|
+
}
|
82
|
+
|
83
|
+
if (actualSize[0] !== expectedSize) {
|
84
|
+
throw new RangeError("Vector must be of dimensions 1x".concat(expectedSize));
|
85
|
+
}
|
86
|
+
}
|
87
|
+
});
|
88
|
+
exports.createRotate = createRotate;
|
@@ -39,7 +39,7 @@ var createRotationMatrix = /* #__PURE__ */(0, _factory.factory)(name, dependenci
|
|
39
39
|
* Examples:
|
40
40
|
*
|
41
41
|
* math.rotationMatrix(math.pi / 2) // returns [[0, -1], [1, 0]]
|
42
|
-
* math.rotationMatrix(math.bignumber(
|
42
|
+
* math.rotationMatrix(math.bignumber(1)) // returns [[bignumber(cos(1)), bignumber(-sin(1))], [bignumber(sin(1)), bignumber(cos(1))]]
|
43
43
|
* math.rotationMatrix(math.complex(1 + i)) // returns [[cos(1 + i), -sin(1 + i)], [sin(1 + i), cos(1 + i)]]
|
44
44
|
* math.rotationMatrix(math.unit('1rad')) // returns [[cos(1), -sin(1)], [sin(1), cos(1)]]
|
45
45
|
*
|
@@ -75,12 +75,13 @@ var createRotationMatrix = /* #__PURE__ */(0, _factory.factory)(name, dependenci
|
|
75
75
|
|
76
76
|
_validateVector(matrixV);
|
77
77
|
|
78
|
-
return _rotationMatrix3x3(theta, matrixV,
|
78
|
+
return _rotationMatrix3x3(theta, matrixV, undefined);
|
79
79
|
},
|
80
80
|
'number | BigNumber | Complex | Unit, Matrix': function numberBigNumberComplexUnitMatrix(theta, v) {
|
81
81
|
_validateVector(v);
|
82
82
|
|
83
|
-
|
83
|
+
var storageType = v.storage() || (config.matrix === 'Matrix' ? 'dense' : undefined);
|
84
|
+
return _rotationMatrix3x3(theta, v, storageType);
|
84
85
|
},
|
85
86
|
'number | BigNumber | Complex | Unit, Array, string': function numberBigNumberComplexUnitArrayString(theta, v, format) {
|
86
87
|
var matrixV = matrix(v);
|
@@ -157,7 +158,7 @@ var createRotationMatrix = /* #__PURE__ */(0, _factory.factory)(name, dependenci
|
|
157
158
|
var normV = norm(v);
|
158
159
|
|
159
160
|
if (normV === 0) {
|
160
|
-
|
161
|
+
throw new RangeError('Rotation around zero vector');
|
161
162
|
}
|
162
163
|
|
163
164
|
var Big = (0, _is.isBigNumber)(theta) ? BigNumber : null;
|
@@ -11,6 +11,7 @@ var _number = require("../../utils/number");
|
|
11
11
|
|
12
12
|
var _factory = require("../../utils/factory");
|
13
13
|
|
14
|
+
/* eslint-disable no-loss-of-precision */
|
14
15
|
var name = 'erf';
|
15
16
|
var dependencies = ['typed'];
|
16
17
|
var createErf = /* #__PURE__ */(0, _factory.factory)(name, dependencies, function (_ref) {
|
package/lib/header.js
CHANGED
@@ -6,8 +6,8 @@
|
|
6
6
|
* It features real and complex numbers, units, matrices, a large set of
|
7
7
|
* mathematical functions, and a flexible expression parser.
|
8
8
|
*
|
9
|
-
* @version 7.
|
10
|
-
* @date 2020-
|
9
|
+
* @version 7.6.0
|
10
|
+
* @date 2020-11-02
|
11
11
|
*
|
12
12
|
* @license
|
13
13
|
* Copyright (C) 2013-2020 Jos de Jong <wjosdejong@gmail.com>
|
@@ -15,6 +15,7 @@ var _arithmetic = require("./arithmetic");
|
|
15
15
|
Object.keys(_arithmetic).forEach(function (key) {
|
16
16
|
if (key === "default" || key === "__esModule") return;
|
17
17
|
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
|
18
|
+
if (key in exports && exports[key] === _arithmetic[key]) return;
|
18
19
|
Object.defineProperty(exports, key, {
|
19
20
|
enumerable: true,
|
20
21
|
get: function get() {
|
@@ -8,6 +8,7 @@ var _arithmetic = require("./arithmetic");
|
|
8
8
|
|
9
9
|
Object.keys(_arithmetic).forEach(function (key) {
|
10
10
|
if (key === "default" || key === "__esModule") return;
|
11
|
+
if (key in exports && exports[key] === _arithmetic[key]) return;
|
11
12
|
Object.defineProperty(exports, key, {
|
12
13
|
enumerable: true,
|
13
14
|
get: function get() {
|
@@ -20,6 +21,7 @@ var _bitwise = require("./bitwise");
|
|
20
21
|
|
21
22
|
Object.keys(_bitwise).forEach(function (key) {
|
22
23
|
if (key === "default" || key === "__esModule") return;
|
24
|
+
if (key in exports && exports[key] === _bitwise[key]) return;
|
23
25
|
Object.defineProperty(exports, key, {
|
24
26
|
enumerable: true,
|
25
27
|
get: function get() {
|
@@ -32,6 +34,7 @@ var _combinations = require("./combinations");
|
|
32
34
|
|
33
35
|
Object.keys(_combinations).forEach(function (key) {
|
34
36
|
if (key === "default" || key === "__esModule") return;
|
37
|
+
if (key in exports && exports[key] === _combinations[key]) return;
|
35
38
|
Object.defineProperty(exports, key, {
|
36
39
|
enumerable: true,
|
37
40
|
get: function get() {
|
@@ -44,6 +47,7 @@ var _constants = require("./constants");
|
|
44
47
|
|
45
48
|
Object.keys(_constants).forEach(function (key) {
|
46
49
|
if (key === "default" || key === "__esModule") return;
|
50
|
+
if (key in exports && exports[key] === _constants[key]) return;
|
47
51
|
Object.defineProperty(exports, key, {
|
48
52
|
enumerable: true,
|
49
53
|
get: function get() {
|
@@ -56,6 +60,7 @@ var _logical = require("./logical");
|
|
56
60
|
|
57
61
|
Object.keys(_logical).forEach(function (key) {
|
58
62
|
if (key === "default" || key === "__esModule") return;
|
63
|
+
if (key in exports && exports[key] === _logical[key]) return;
|
59
64
|
Object.defineProperty(exports, key, {
|
60
65
|
enumerable: true,
|
61
66
|
get: function get() {
|
@@ -68,6 +73,7 @@ var _relational = require("./relational");
|
|
68
73
|
|
69
74
|
Object.keys(_relational).forEach(function (key) {
|
70
75
|
if (key === "default" || key === "__esModule") return;
|
76
|
+
if (key in exports && exports[key] === _relational[key]) return;
|
71
77
|
Object.defineProperty(exports, key, {
|
72
78
|
enumerable: true,
|
73
79
|
get: function get() {
|
@@ -80,6 +86,7 @@ var _probability = require("./probability");
|
|
80
86
|
|
81
87
|
Object.keys(_probability).forEach(function (key) {
|
82
88
|
if (key === "default" || key === "__esModule") return;
|
89
|
+
if (key in exports && exports[key] === _probability[key]) return;
|
83
90
|
Object.defineProperty(exports, key, {
|
84
91
|
enumerable: true,
|
85
92
|
get: function get() {
|
@@ -92,6 +99,7 @@ var _trigonometry = require("./trigonometry");
|
|
92
99
|
|
93
100
|
Object.keys(_trigonometry).forEach(function (key) {
|
94
101
|
if (key === "default" || key === "__esModule") return;
|
102
|
+
if (key in exports && exports[key] === _trigonometry[key]) return;
|
95
103
|
Object.defineProperty(exports, key, {
|
96
104
|
enumerable: true,
|
97
105
|
get: function get() {
|
@@ -104,6 +112,7 @@ var _utils = require("./utils");
|
|
104
112
|
|
105
113
|
Object.keys(_utils).forEach(function (key) {
|
106
114
|
if (key === "default" || key === "__esModule") return;
|
115
|
+
if (key in exports && exports[key] === _utils[key]) return;
|
107
116
|
Object.defineProperty(exports, key, {
|
108
117
|
enumerable: true,
|
109
118
|
get: function get() {
|
package/lib/type/unit/Unit.js
CHANGED
@@ -219,19 +219,16 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
|
|
219
219
|
function parseUnit() {
|
220
220
|
var unitName = ''; // Alphanumeric characters only; matches [a-zA-Z0-9]
|
221
221
|
|
222
|
-
|
223
|
-
|
224
|
-
while (code >= 48 && code <= 57 || code >= 65 && code <= 90 || code >= 97 && code <= 122) {
|
222
|
+
while (isDigit(c) || Unit.isValidAlpha(c)) {
|
225
223
|
unitName += c;
|
226
224
|
next();
|
227
|
-
code = text.charCodeAt(index);
|
228
225
|
} // Must begin with [a-zA-Z]
|
229
226
|
|
230
227
|
|
231
|
-
|
228
|
+
var firstC = unitName.charAt(0);
|
232
229
|
|
233
|
-
if (
|
234
|
-
return unitName
|
230
|
+
if (Unit.isValidAlpha(firstC)) {
|
231
|
+
return unitName;
|
235
232
|
} else {
|
236
233
|
return null;
|
237
234
|
}
|
@@ -3686,24 +3683,26 @@ var createUnitClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
|
|
3686
3683
|
UNITS[_name2] = alias;
|
3687
3684
|
}
|
3688
3685
|
}
|
3686
|
+
/**
|
3687
|
+
* Checks if a character is a valid latin letter (upper or lower case).
|
3688
|
+
* Note that this function can be overridden, for example to allow support of other alphabets.
|
3689
|
+
* @param {string} c Tested character
|
3690
|
+
*/
|
3689
3691
|
|
3690
|
-
function assertUnitNameIsValid(name) {
|
3691
|
-
for (var i = 0; i < name.length; i++) {
|
3692
|
-
var _c = name.charAt(i);
|
3693
3692
|
|
3694
|
-
|
3695
|
-
|
3696
|
-
|
3693
|
+
Unit.isValidAlpha = function isValidAlpha(c) {
|
3694
|
+
return /^[a-zA-Z]$/.test(c);
|
3695
|
+
};
|
3697
3696
|
|
3698
|
-
|
3699
|
-
|
3700
|
-
|
3697
|
+
function assertUnitNameIsValid(name) {
|
3698
|
+
for (var i = 0; i < name.length; i++) {
|
3699
|
+
c = name.charAt(i);
|
3701
3700
|
|
3702
|
-
if (i === 0 && !isValidAlpha(
|
3701
|
+
if (i === 0 && !Unit.isValidAlpha(c)) {
|
3703
3702
|
throw new Error('Invalid unit name (must begin with alpha character): "' + name + '"');
|
3704
3703
|
}
|
3705
3704
|
|
3706
|
-
if (i > 0 && !(isValidAlpha(
|
3705
|
+
if (i > 0 && !(Unit.isValidAlpha(c) || isDigit(c))) {
|
3707
3706
|
throw new Error('Invalid unit name (only alphanumeric characters are allowed): "' + name + '"');
|
3708
3707
|
}
|
3709
3708
|
}
|
package/lib/version.js
CHANGED
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
5
5
|
});
|
6
6
|
exports.version = void 0;
|
7
|
-
var version = '7.
|
7
|
+
var version = '7.6.0'; // Note: This file is automatically generated when building math.js.
|
8
8
|
// Changes made in this file will be overwritten.
|
9
9
|
|
10
10
|
exports.version = version;
|