mathjs 10.5.3 → 10.6.2
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 +29 -0
- package/lib/browser/math.js +6 -5
- package/lib/browser/math.js.map +1 -1
- package/lib/cjs/entry/dependenciesAny/dependenciesFft.generated.js +41 -0
- package/lib/cjs/entry/dependenciesAny/dependenciesIfft.generated.js +29 -0
- package/lib/cjs/entry/dependenciesAny.generated.js +16 -0
- package/lib/cjs/entry/impureFunctionsAny.generated.js +66 -64
- package/lib/cjs/entry/pureFunctionsAny.generated.js +189 -171
- package/lib/cjs/expression/embeddedDocs/embeddedDocs.js +6 -0
- package/lib/cjs/expression/embeddedDocs/function/matrix/fft.js +15 -0
- package/lib/cjs/expression/embeddedDocs/function/matrix/ifft.js +15 -0
- package/lib/cjs/factoriesAny.js +16 -0
- package/lib/cjs/function/algebra/derivative.js +1 -1
- package/lib/cjs/function/matrix/fft.js +128 -0
- package/lib/cjs/function/matrix/ifft.js +49 -0
- package/lib/cjs/header.js +2 -2
- package/lib/cjs/version.js +1 -1
- package/lib/esm/entry/dependenciesAny/dependenciesFft.generated.js +24 -0
- package/lib/esm/entry/dependenciesAny/dependenciesIfft.generated.js +16 -0
- package/lib/esm/entry/dependenciesAny.generated.js +2 -0
- package/lib/esm/entry/impureFunctionsAny.generated.js +63 -61
- package/lib/esm/entry/pureFunctionsAny.generated.js +161 -145
- package/lib/esm/expression/embeddedDocs/embeddedDocs.js +4 -0
- package/lib/esm/expression/embeddedDocs/function/matrix/fft.js +8 -0
- package/lib/esm/expression/embeddedDocs/function/matrix/ifft.js +8 -0
- package/lib/esm/factoriesAny.js +2 -0
- package/lib/esm/function/algebra/derivative.js +1 -1
- package/lib/esm/function/matrix/fft.js +104 -0
- package/lib/esm/function/matrix/ifft.js +38 -0
- package/lib/esm/version.js +1 -1
- package/package.json +19 -16
- package/types/index.d.ts +1072 -308
- package/types/index.ts +763 -7
@@ -4,7 +4,7 @@
|
|
4
4
|
*/
|
5
5
|
import { config } from './configReadonly.js';
|
6
6
|
import { createBigNumberClass, createComplexClass, createE, createFalse, createFineStructure, createFractionClass, createI, createInfinity, createLN10, createLOG10E, createMatrixClass, createNaN, createNull, createPhi, createRangeClass, createResultSet, createSQRT1_2, // eslint-disable-line camelcase
|
7
|
-
createSackurTetrode, createTau, createTrue, createVersion, createDenseMatrixClass, createEfimovFactor, createLN2, createPi, createReplacer, createSQRT2, createTyped, createUnaryPlus, createWeakMixingAngle, createAbs, createAcos, createAcot, createAcsc, createAddScalar, createArg, createAsech, createAsinh, createAtan, createAtanh, createBignumber, createBitNot, createBoolean, createClone, createCombinations, createComplex, createConj, createCosh, createCoth, createCsc, createCube, createEqualScalar, createErf, createExp, createExpm1, createFilter, createForEach, createFormat, createGetMatrixDataType, createHex, createIm, createIsInteger, createIsNegative, createIsPositive, createIsZero, createLOG2E, createLgamma, createLog10, createLog2, createMap, createMultiplyScalar, createNot, createNumber, createOct, createPickRandom, createPrint, createRandom, createRe, createSec, createSign, createSin, createSparseMatrixClass, createSplitUnit, createSquare, createString, createTan, createTypeOf, createAcosh, createAcsch, createApply, createAsec, createBin, createCombinationsWithRep, createCos, createCsch, createIsNaN, createIsPrime, createRandomInt, createSech, createSinh, createSparse, createSqrt, createTanh, createUnaryMinus, createAcoth, createCot, createFraction, createIsNumeric, createMatrix, createMatrixFromFunction, createMod, createNthRoot, createNumeric, createOr, createProd, createReshape, createSize, createSmaller, createSqueeze, createSubset, createSubtract, createTo, createTranspose, createXgcd, createZeros, createAnd, createBitAnd, createBitXor, createCbrt, createCompare, createCompareText, createConcat, createCount, createCtranspose, createDiag, createDivideScalar, createDotDivide, createEqual, createFlatten, createGcd, createHasNumericValue, createHypot,
|
7
|
+
createSackurTetrode, createTau, createTrue, createVersion, createDenseMatrixClass, createEfimovFactor, createLN2, createPi, createReplacer, createSQRT2, createTyped, createUnaryPlus, createWeakMixingAngle, createAbs, createAcos, createAcot, createAcsc, createAddScalar, createArg, createAsech, createAsinh, createAtan, createAtanh, createBignumber, createBitNot, createBoolean, createClone, createCombinations, createComplex, createConj, createCosh, createCoth, createCsc, createCube, createEqualScalar, createErf, createExp, createExpm1, createFilter, createForEach, createFormat, createGetMatrixDataType, createHex, createIm, createIsInteger, createIsNegative, createIsPositive, createIsZero, createLOG2E, createLgamma, createLog10, createLog2, createMap, createMultiplyScalar, createNot, createNumber, createOct, createPickRandom, createPrint, createRandom, createRe, createSec, createSign, createSin, createSparseMatrixClass, createSplitUnit, createSquare, createString, createTan, createTypeOf, createAcosh, createAcsch, createApply, createAsec, createBin, createCombinationsWithRep, createCos, createCsch, createIsNaN, createIsPrime, createRandomInt, createSech, createSinh, createSparse, createSqrt, createTanh, createUnaryMinus, createAcoth, createCot, createFraction, createIsNumeric, createMatrix, createMatrixFromFunction, createMod, createNthRoot, createNumeric, createOr, createProd, createReshape, createSize, createSmaller, createSqueeze, createSubset, createSubtract, createTo, createTranspose, createXgcd, createZeros, createAnd, createBitAnd, createBitXor, createCbrt, createCompare, createCompareText, createConcat, createCount, createCtranspose, createDiag, createDivideScalar, createDotDivide, createEqual, createFft, createFlatten, createGcd, createHasNumericValue, createHypot, createIfft, createKron, createLargerEq, createLeftShift, createLsolve, createMatrixFromColumns, createMin, createMode, createNthRoots, createOnes, createPartitionSelect, createResize, createRightArithShift, createRound, createSmallerEq, createUnequal, createUsolve, createXor, createAdd, createAtan2, createBitOr, createCatalan, createCompareNatural, createCumSum, createDeepEqual, createDiff, createDot, createEqualText, createFloor, createIdentity, createInvmod, createLarger, createLog, createLsolveAll, createMatrixFromRows, createMultiply, createQr, createRange, createRightLogShift, createSetSize, createSlu, createSum, createTrace, createUsolveAll, createAsin, createCeil, createComposition, createCross, createDet, createDistance, createDotMultiply, createFibonacciHeapClass, createFix, createImmutableDenseMatrixClass, createIndexClass, createIntersect, createLcm, createLog1p, createMax, createQuantileSeq, createRow, createSetCartesian, createSetDistinct, createSetIsSubset, createSetPowerset, createSort, createColumn, createIndex, createInv, createPinv, createPow, createSetDifference, createSetMultiplicity, createSpaClass, createSqrtm, createUnitClass, createVacuumImpedance, createWienDisplacement, createAtomicMass, createBohrMagneton, createBoltzmann, createConductanceQuantum, createCreateUnit, createDeuteronMass, createDotPow, createElectricConstant, createElementaryCharge, createExpm, createFaraday, createFirstRadiation, createGamma, createGravitationConstant, createHartreeEnergy, createKlitzing, createLoschmidt, createMagneticConstant, createMolarMass, createMolarPlanckConstant, createNeutronMass, createNuclearMagneton, createPlanckCharge, createPlanckLength, createPlanckTemperature, createProtonMass, createReducedPlanckConstant, createRydberg, createSetIntersect, createSpeedOfLight, createStefanBoltzmann, createThomsonCrossSection, createAvogadro, createBohrRadius, createCoulomb, createDivide, createElectronMass, createFactorial, createGravity, createInverseConductanceQuantum, createLup, createMagneticFluxQuantum, createMolarMassC12, createMultinomial, createPermutations, createPlanckMass, createQuantumOfCirculation, createSecondRadiation, createStirlingS2, createUnitFunction, createBellNumbers, createEigs, createFermiCoupling, createMean, createMolarVolume, createPlanckConstant, createSetSymDifference, createClassicalElectronRadius, createLusolve, createMedian, createSetUnion, createVariance, createKldivergence, createNorm, createPlanckTime, createRotationMatrix, createGasConstant, createStd, createMad, createRotate } from '../factoriesAny.js';
|
8
8
|
export var BigNumber = /* #__PURE__ */createBigNumberClass({
|
9
9
|
config
|
10
10
|
});
|
@@ -551,6 +551,16 @@ export var equal = /* #__PURE__ */createEqual({
|
|
551
551
|
matrix,
|
552
552
|
typed
|
553
553
|
});
|
554
|
+
export var fft = /* #__PURE__ */createFft({
|
555
|
+
addScalar,
|
556
|
+
divideScalar,
|
557
|
+
exp,
|
558
|
+
i,
|
559
|
+
matrix,
|
560
|
+
multiplyScalar,
|
561
|
+
tau,
|
562
|
+
typed
|
563
|
+
});
|
554
564
|
export var flatten = /* #__PURE__ */createFlatten({
|
555
565
|
matrix,
|
556
566
|
typed
|
@@ -576,12 +586,11 @@ export var hypot = /* #__PURE__ */createHypot({
|
|
576
586
|
sqrt,
|
577
587
|
typed
|
578
588
|
});
|
579
|
-
export var
|
580
|
-
|
581
|
-
|
582
|
-
|
583
|
-
|
584
|
-
ImmutableDenseMatrix
|
589
|
+
export var ifft = /* #__PURE__ */createIfft({
|
590
|
+
conj,
|
591
|
+
dotDivide,
|
592
|
+
fft,
|
593
|
+
typed
|
585
594
|
});
|
586
595
|
export var kron = /* #__PURE__ */createKron({
|
587
596
|
matrix,
|
@@ -849,40 +858,8 @@ export var rightLogShift = /* #__PURE__ */createRightLogShift({
|
|
849
858
|
typed,
|
850
859
|
zeros
|
851
860
|
});
|
852
|
-
export var
|
853
|
-
Index,
|
854
|
-
matrix,
|
855
|
-
range,
|
856
|
-
typed
|
857
|
-
});
|
858
|
-
export var setCartesian = /* #__PURE__ */createSetCartesian({
|
859
|
-
DenseMatrix,
|
860
|
-
Index,
|
861
|
-
compareNatural,
|
862
|
-
size,
|
863
|
-
subset,
|
864
|
-
typed
|
865
|
-
});
|
866
|
-
export var setDistinct = /* #__PURE__ */createSetDistinct({
|
867
|
-
DenseMatrix,
|
868
|
-
Index,
|
869
|
-
compareNatural,
|
870
|
-
size,
|
871
|
-
subset,
|
872
|
-
typed
|
873
|
-
});
|
874
|
-
export var setIsSubset = /* #__PURE__ */createSetIsSubset({
|
875
|
-
Index,
|
861
|
+
export var setSize = /* #__PURE__ */createSetSize({
|
876
862
|
compareNatural,
|
877
|
-
size,
|
878
|
-
subset,
|
879
|
-
typed
|
880
|
-
});
|
881
|
-
export var setPowerset = /* #__PURE__ */createSetPowerset({
|
882
|
-
Index,
|
883
|
-
compareNatural,
|
884
|
-
size,
|
885
|
-
subset,
|
886
863
|
typed
|
887
864
|
});
|
888
865
|
export var slu = /* #__PURE__ */createSlu({
|
@@ -931,12 +908,6 @@ export var ceil = /* #__PURE__ */createCeil({
|
|
931
908
|
typed,
|
932
909
|
zeros
|
933
910
|
});
|
934
|
-
export var column = /* #__PURE__ */createColumn({
|
935
|
-
Index,
|
936
|
-
matrix,
|
937
|
-
range,
|
938
|
-
typed
|
939
|
-
});
|
940
911
|
export var composition = /* #__PURE__ */createComposition({
|
941
912
|
addScalar,
|
942
913
|
combinations,
|
@@ -991,20 +962,29 @@ export var fix = /* #__PURE__ */createFix({
|
|
991
962
|
typed,
|
992
963
|
zeros
|
993
964
|
});
|
994
|
-
export var
|
995
|
-
|
996
|
-
|
965
|
+
export var ImmutableDenseMatrix = /* #__PURE__ */createImmutableDenseMatrixClass({
|
966
|
+
DenseMatrix,
|
967
|
+
smaller
|
997
968
|
});
|
998
|
-
export var
|
969
|
+
export var Index = /* #__PURE__ */createIndexClass({
|
970
|
+
ImmutableDenseMatrix
|
971
|
+
});
|
972
|
+
export var intersect = /* #__PURE__ */createIntersect({
|
999
973
|
abs,
|
974
|
+
add,
|
1000
975
|
addScalar,
|
1001
|
-
|
976
|
+
config,
|
1002
977
|
divideScalar,
|
1003
|
-
|
978
|
+
equalScalar,
|
979
|
+
flatten,
|
980
|
+
isNumeric,
|
981
|
+
isZero,
|
1004
982
|
matrix,
|
1005
983
|
multiply,
|
1006
|
-
|
1007
|
-
|
984
|
+
multiplyScalar,
|
985
|
+
smaller,
|
986
|
+
subtract,
|
987
|
+
typed
|
1008
988
|
});
|
1009
989
|
export var lcm = /* #__PURE__ */createLcm({
|
1010
990
|
equalScalar,
|
@@ -1024,6 +1004,76 @@ export var max = /* #__PURE__ */createMax({
|
|
1024
1004
|
numeric,
|
1025
1005
|
typed
|
1026
1006
|
});
|
1007
|
+
export var quantileSeq = /* #__PURE__ */createQuantileSeq({
|
1008
|
+
add,
|
1009
|
+
compare,
|
1010
|
+
multiply,
|
1011
|
+
partitionSelect,
|
1012
|
+
typed
|
1013
|
+
});
|
1014
|
+
export var row = /* #__PURE__ */createRow({
|
1015
|
+
Index,
|
1016
|
+
matrix,
|
1017
|
+
range,
|
1018
|
+
typed
|
1019
|
+
});
|
1020
|
+
export var setCartesian = /* #__PURE__ */createSetCartesian({
|
1021
|
+
DenseMatrix,
|
1022
|
+
Index,
|
1023
|
+
compareNatural,
|
1024
|
+
size,
|
1025
|
+
subset,
|
1026
|
+
typed
|
1027
|
+
});
|
1028
|
+
export var setDistinct = /* #__PURE__ */createSetDistinct({
|
1029
|
+
DenseMatrix,
|
1030
|
+
Index,
|
1031
|
+
compareNatural,
|
1032
|
+
size,
|
1033
|
+
subset,
|
1034
|
+
typed
|
1035
|
+
});
|
1036
|
+
export var setIsSubset = /* #__PURE__ */createSetIsSubset({
|
1037
|
+
Index,
|
1038
|
+
compareNatural,
|
1039
|
+
size,
|
1040
|
+
subset,
|
1041
|
+
typed
|
1042
|
+
});
|
1043
|
+
export var setPowerset = /* #__PURE__ */createSetPowerset({
|
1044
|
+
Index,
|
1045
|
+
compareNatural,
|
1046
|
+
size,
|
1047
|
+
subset,
|
1048
|
+
typed
|
1049
|
+
});
|
1050
|
+
export var sort = /* #__PURE__ */createSort({
|
1051
|
+
compare,
|
1052
|
+
compareNatural,
|
1053
|
+
matrix,
|
1054
|
+
typed
|
1055
|
+
});
|
1056
|
+
export var column = /* #__PURE__ */createColumn({
|
1057
|
+
Index,
|
1058
|
+
matrix,
|
1059
|
+
range,
|
1060
|
+
typed
|
1061
|
+
});
|
1062
|
+
export var index = /* #__PURE__ */createIndex({
|
1063
|
+
Index,
|
1064
|
+
typed
|
1065
|
+
});
|
1066
|
+
export var inv = /* #__PURE__ */createInv({
|
1067
|
+
abs,
|
1068
|
+
addScalar,
|
1069
|
+
det,
|
1070
|
+
divideScalar,
|
1071
|
+
identity,
|
1072
|
+
matrix,
|
1073
|
+
multiply,
|
1074
|
+
typed,
|
1075
|
+
unaryMinus
|
1076
|
+
});
|
1027
1077
|
export var pinv = /* #__PURE__ */createPinv({
|
1028
1078
|
Complex,
|
1029
1079
|
add,
|
@@ -1049,13 +1099,6 @@ export var pow = /* #__PURE__ */createPow({
|
|
1049
1099
|
number,
|
1050
1100
|
typed
|
1051
1101
|
});
|
1052
|
-
export var quantileSeq = /* #__PURE__ */createQuantileSeq({
|
1053
|
-
add,
|
1054
|
-
compare,
|
1055
|
-
multiply,
|
1056
|
-
partitionSelect,
|
1057
|
-
typed
|
1058
|
-
});
|
1059
1102
|
export var setDifference = /* #__PURE__ */createSetDifference({
|
1060
1103
|
DenseMatrix,
|
1061
1104
|
Index,
|
@@ -1071,19 +1114,10 @@ export var setMultiplicity = /* #__PURE__ */createSetMultiplicity({
|
|
1071
1114
|
subset,
|
1072
1115
|
typed
|
1073
1116
|
});
|
1074
|
-
export var
|
1075
|
-
|
1076
|
-
|
1077
|
-
|
1078
|
-
size,
|
1079
|
-
subset,
|
1080
|
-
typed
|
1081
|
-
});
|
1082
|
-
export var sort = /* #__PURE__ */createSort({
|
1083
|
-
compare,
|
1084
|
-
compareNatural,
|
1085
|
-
matrix,
|
1086
|
-
typed
|
1117
|
+
export var Spa = /* #__PURE__ */createSpaClass({
|
1118
|
+
FibonacciHeap,
|
1119
|
+
addScalar,
|
1120
|
+
equalScalar
|
1087
1121
|
});
|
1088
1122
|
export var sqrtm = /* #__PURE__ */createSqrtm({
|
1089
1123
|
abs,
|
@@ -1207,23 +1241,6 @@ export var hartreeEnergy = /* #__PURE__ */createHartreeEnergy({
|
|
1207
1241
|
Unit,
|
1208
1242
|
config
|
1209
1243
|
});
|
1210
|
-
export var intersect = /* #__PURE__ */createIntersect({
|
1211
|
-
abs,
|
1212
|
-
add,
|
1213
|
-
addScalar,
|
1214
|
-
config,
|
1215
|
-
divideScalar,
|
1216
|
-
equalScalar,
|
1217
|
-
flatten,
|
1218
|
-
isNumeric,
|
1219
|
-
isZero,
|
1220
|
-
matrix,
|
1221
|
-
multiply,
|
1222
|
-
multiplyScalar,
|
1223
|
-
smaller,
|
1224
|
-
subtract,
|
1225
|
-
typed
|
1226
|
-
});
|
1227
1244
|
export var klitzing = /* #__PURE__ */createKlitzing({
|
1228
1245
|
BigNumber,
|
1229
1246
|
Unit,
|
@@ -1297,19 +1314,10 @@ export var setIntersect = /* #__PURE__ */createSetIntersect({
|
|
1297
1314
|
subset,
|
1298
1315
|
typed
|
1299
1316
|
});
|
1300
|
-
export var
|
1301
|
-
|
1302
|
-
|
1303
|
-
|
1304
|
-
setSymDifference,
|
1305
|
-
size,
|
1306
|
-
subset,
|
1307
|
-
typed
|
1308
|
-
});
|
1309
|
-
export var Spa = /* #__PURE__ */createSpaClass({
|
1310
|
-
FibonacciHeap,
|
1311
|
-
addScalar,
|
1312
|
-
equalScalar
|
1317
|
+
export var speedOfLight = /* #__PURE__ */createSpeedOfLight({
|
1318
|
+
BigNumber,
|
1319
|
+
Unit,
|
1320
|
+
config
|
1313
1321
|
});
|
1314
1322
|
export var stefanBoltzmann = /* #__PURE__ */createStefanBoltzmann({
|
1315
1323
|
BigNumber,
|
@@ -1495,22 +1503,12 @@ export var planckConstant = /* #__PURE__ */createPlanckConstant({
|
|
1495
1503
|
Unit,
|
1496
1504
|
config
|
1497
1505
|
});
|
1498
|
-
export var
|
1499
|
-
|
1500
|
-
|
1501
|
-
|
1502
|
-
|
1503
|
-
|
1504
|
-
Unit,
|
1505
|
-
config
|
1506
|
-
});
|
1507
|
-
export var variance = /* #__PURE__ */createVariance({
|
1508
|
-
add,
|
1509
|
-
apply,
|
1510
|
-
divide,
|
1511
|
-
isNaN,
|
1512
|
-
multiply,
|
1513
|
-
subtract,
|
1506
|
+
export var setSymDifference = /* #__PURE__ */createSetSymDifference({
|
1507
|
+
Index,
|
1508
|
+
concat,
|
1509
|
+
setDifference,
|
1510
|
+
size,
|
1511
|
+
subset,
|
1514
1512
|
typed
|
1515
1513
|
});
|
1516
1514
|
export var classicalElectronRadius = /* #__PURE__ */createClassicalElectronRadius({
|
@@ -1534,22 +1532,33 @@ export var median = /* #__PURE__ */createMedian({
|
|
1534
1532
|
partitionSelect,
|
1535
1533
|
typed
|
1536
1534
|
});
|
1537
|
-
export var
|
1538
|
-
|
1539
|
-
|
1540
|
-
|
1535
|
+
export var setUnion = /* #__PURE__ */createSetUnion({
|
1536
|
+
Index,
|
1537
|
+
concat,
|
1538
|
+
setIntersect,
|
1539
|
+
setSymDifference,
|
1540
|
+
size,
|
1541
|
+
subset,
|
1542
|
+
typed
|
1541
1543
|
});
|
1542
|
-
export var
|
1543
|
-
|
1544
|
-
|
1545
|
-
|
1544
|
+
export var variance = /* #__PURE__ */createVariance({
|
1545
|
+
add,
|
1546
|
+
apply,
|
1547
|
+
divide,
|
1548
|
+
isNaN,
|
1549
|
+
multiply,
|
1546
1550
|
subtract,
|
1547
1551
|
typed
|
1548
1552
|
});
|
1549
|
-
export var
|
1550
|
-
|
1551
|
-
|
1552
|
-
|
1553
|
+
export var kldivergence = /* #__PURE__ */createKldivergence({
|
1554
|
+
divide,
|
1555
|
+
dotDivide,
|
1556
|
+
isNumeric,
|
1557
|
+
log,
|
1558
|
+
matrix,
|
1559
|
+
multiply,
|
1560
|
+
sum,
|
1561
|
+
typed
|
1553
1562
|
});
|
1554
1563
|
export var norm = /* #__PURE__ */createNorm({
|
1555
1564
|
abs,
|
@@ -1566,6 +1575,11 @@ export var norm = /* #__PURE__ */createNorm({
|
|
1566
1575
|
sqrt,
|
1567
1576
|
typed
|
1568
1577
|
});
|
1578
|
+
export var planckTime = /* #__PURE__ */createPlanckTime({
|
1579
|
+
BigNumber,
|
1580
|
+
Unit,
|
1581
|
+
config
|
1582
|
+
});
|
1569
1583
|
export var rotationMatrix = /* #__PURE__ */createRotationMatrix({
|
1570
1584
|
BigNumber,
|
1571
1585
|
DenseMatrix,
|
@@ -1580,23 +1594,25 @@ export var rotationMatrix = /* #__PURE__ */createRotationMatrix({
|
|
1580
1594
|
typed,
|
1581
1595
|
unaryMinus
|
1582
1596
|
});
|
1583
|
-
export var
|
1584
|
-
|
1585
|
-
|
1586
|
-
|
1587
|
-
|
1588
|
-
|
1589
|
-
|
1590
|
-
|
1597
|
+
export var gasConstant = /* #__PURE__ */createGasConstant({
|
1598
|
+
BigNumber,
|
1599
|
+
Unit,
|
1600
|
+
config
|
1601
|
+
});
|
1602
|
+
export var std = /* #__PURE__ */createStd({
|
1603
|
+
sqrt,
|
1604
|
+
typed,
|
1605
|
+
variance
|
1606
|
+
});
|
1607
|
+
export var mad = /* #__PURE__ */createMad({
|
1608
|
+
abs,
|
1609
|
+
map,
|
1610
|
+
median,
|
1611
|
+
subtract,
|
1591
1612
|
typed
|
1592
1613
|
});
|
1593
1614
|
export var rotate = /* #__PURE__ */createRotate({
|
1594
1615
|
multiply,
|
1595
1616
|
rotationMatrix,
|
1596
1617
|
typed
|
1597
|
-
});
|
1598
|
-
export var planckTime = /* #__PURE__ */createPlanckTime({
|
1599
|
-
BigNumber,
|
1600
|
-
Unit,
|
1601
|
-
config
|
1602
1618
|
});
|
@@ -142,6 +142,8 @@ import { subsetDocs } from './function/matrix/subset.js';
|
|
142
142
|
import { traceDocs } from './function/matrix/trace.js';
|
143
143
|
import { transposeDocs } from './function/matrix/transpose.js';
|
144
144
|
import { zerosDocs } from './function/matrix/zeros.js';
|
145
|
+
import { fftDocs } from './function/matrix/fft.js';
|
146
|
+
import { ifftDocs } from './function/matrix/ifft.js';
|
145
147
|
import { combinationsDocs } from './function/probability/combinations.js';
|
146
148
|
import { combinationsWithRepDocs } from './function/probability/combinationsWithRep.js';
|
147
149
|
import { factorialDocs } from './function/probability/factorial.js';
|
@@ -592,6 +594,8 @@ export var embeddedDocs = {
|
|
592
594
|
trace: traceDocs,
|
593
595
|
transpose: transposeDocs,
|
594
596
|
zeros: zerosDocs,
|
597
|
+
fft: fftDocs,
|
598
|
+
ifft: ifftDocs,
|
595
599
|
// functions - probability
|
596
600
|
combinations: combinationsDocs,
|
597
601
|
combinationsWithRep: combinationsWithRepDocs,
|
package/lib/esm/factoriesAny.js
CHANGED
@@ -92,6 +92,8 @@ export { createSubset } from './function/matrix/subset.js';
|
|
92
92
|
export { createTranspose } from './function/matrix/transpose.js';
|
93
93
|
export { createCtranspose } from './function/matrix/ctranspose.js';
|
94
94
|
export { createZeros } from './function/matrix/zeros.js';
|
95
|
+
export { createFft } from './function/matrix/fft.js';
|
96
|
+
export { createIfft } from './function/matrix/ifft.js';
|
95
97
|
export { createErf } from './function/special/erf.js';
|
96
98
|
export { createMode } from './function/statistics/mode.js';
|
97
99
|
export { createProd } from './function/statistics/prod.js';
|
@@ -115,7 +115,7 @@ export var createDerivative = /* #__PURE__ */factory(name, dependencies, _ref =>
|
|
115
115
|
if (isConstantNode(expr) && typeOf(expr.value) === 'string') {
|
116
116
|
return _derivTex(parse(expr.value).toString(), x.toString(), 1);
|
117
117
|
} else {
|
118
|
-
return _derivTex(expr.
|
118
|
+
return _derivTex(expr.toTex(), x.toString(), 1);
|
119
119
|
}
|
120
120
|
},
|
121
121
|
'Node, ConstantNode': function NodeConstantNode(expr, x) {
|
@@ -0,0 +1,104 @@
|
|
1
|
+
import { arraySize } from '../../utils/array.js';
|
2
|
+
import { factory } from '../../utils/factory.js';
|
3
|
+
var name = 'fft';
|
4
|
+
var dependencies = ['typed', 'matrix', 'addScalar', 'multiplyScalar', 'divideScalar', 'exp', 'tau', 'i'];
|
5
|
+
export var createFft = /* #__PURE__ */factory(name, dependencies, _ref => {
|
6
|
+
var {
|
7
|
+
typed,
|
8
|
+
matrix,
|
9
|
+
addScalar,
|
10
|
+
multiplyScalar,
|
11
|
+
divideScalar,
|
12
|
+
exp,
|
13
|
+
tau,
|
14
|
+
i: I
|
15
|
+
} = _ref;
|
16
|
+
|
17
|
+
/**
|
18
|
+
* Calculate N-dimensional fourier transform
|
19
|
+
*
|
20
|
+
* Syntax:
|
21
|
+
*
|
22
|
+
* math.fft(arr)
|
23
|
+
*
|
24
|
+
* Examples:
|
25
|
+
*
|
26
|
+
* math.fft([[1, 0], [1, 0]]) // returns [[{re:2, im:0}, {re:2, im:0}], [{re:0, im:0}, {re:0, im:0}]]
|
27
|
+
*
|
28
|
+
*
|
29
|
+
* See Also:
|
30
|
+
*
|
31
|
+
* ifft
|
32
|
+
*
|
33
|
+
* @param {Array | Matrix} arr An array or matrix
|
34
|
+
* @return {Array | Matrix} N-dimensional fourier transformation of the array
|
35
|
+
*/
|
36
|
+
return typed(name, {
|
37
|
+
Array: _ndFft,
|
38
|
+
Matrix: function Matrix(matrix) {
|
39
|
+
return matrix.create(_ndFft(matrix.toArray()));
|
40
|
+
}
|
41
|
+
});
|
42
|
+
/**
|
43
|
+
* Perform an N-dimensional Fourier transform
|
44
|
+
*
|
45
|
+
* @param {Array} arr The array
|
46
|
+
* @return {Array} resulting array
|
47
|
+
*/
|
48
|
+
|
49
|
+
function _ndFft(arr) {
|
50
|
+
var size = arraySize(arr);
|
51
|
+
if (size.length === 1) return _fft(arr, size[0]); // ndFft along dimension 1,...,N-1 then 1dFft along dimension 0
|
52
|
+
|
53
|
+
return _1dFft(arr.map(slice => _ndFft(slice, size.slice(1))), 0);
|
54
|
+
}
|
55
|
+
/**
|
56
|
+
* Perform an 1-dimensional Fourier transform
|
57
|
+
*
|
58
|
+
* @param {Array} arr The array
|
59
|
+
* @param {number} dim dimension of the array to perform on
|
60
|
+
* @return {Array} resulting array
|
61
|
+
*/
|
62
|
+
|
63
|
+
|
64
|
+
function _1dFft(arr, dim) {
|
65
|
+
var size = arraySize(arr);
|
66
|
+
if (dim !== 0) return new Array(size[0]).fill(0).map((_, i) => _1dFft(arr[i], dim - 1));
|
67
|
+
if (size.length === 1) return _fft(arr);
|
68
|
+
|
69
|
+
function _transpose(arr) {
|
70
|
+
// Swap first 2 dimensions
|
71
|
+
var size = arraySize(arr);
|
72
|
+
return new Array(size[1]).fill(0).map((_, j) => new Array(size[0]).fill(0).map((_, i) => arr[i][j]));
|
73
|
+
}
|
74
|
+
|
75
|
+
return _transpose(_1dFft(_transpose(arr), 1));
|
76
|
+
}
|
77
|
+
/**
|
78
|
+
* Perform an 1-dimensional Fourier transform
|
79
|
+
*
|
80
|
+
* @param {Array} arr The array
|
81
|
+
* @return {Array} resulting array
|
82
|
+
*/
|
83
|
+
|
84
|
+
|
85
|
+
function _fft(arr) {
|
86
|
+
var len = arr.length;
|
87
|
+
if (len === 1) return [arr[0]];
|
88
|
+
|
89
|
+
if (len % 2 === 0) {
|
90
|
+
var ret = [..._fft(arr.filter((_, i) => i % 2 === 0), len / 2), ..._fft(arr.filter((_, i) => i % 2 === 1), len / 2)];
|
91
|
+
|
92
|
+
for (var k = 0; k < len / 2; k++) {
|
93
|
+
var p = ret[k];
|
94
|
+
var q = multiplyScalar(ret[k + len / 2], exp(multiplyScalar(multiplyScalar(tau, I), divideScalar(-k, len))));
|
95
|
+
ret[k] = addScalar(p, q);
|
96
|
+
ret[k + len / 2] = addScalar(p, multiplyScalar(-1, q));
|
97
|
+
}
|
98
|
+
|
99
|
+
return ret;
|
100
|
+
}
|
101
|
+
|
102
|
+
throw new Error('Can only calculate FFT of power-of-two size');
|
103
|
+
}
|
104
|
+
});
|
@@ -0,0 +1,38 @@
|
|
1
|
+
import { arraySize } from '../../utils/array.js';
|
2
|
+
import { factory } from '../../utils/factory.js';
|
3
|
+
import { isMatrix } from '../../utils/is.js';
|
4
|
+
var name = 'ifft';
|
5
|
+
var dependencies = ['typed', 'fft', 'dotDivide', 'conj'];
|
6
|
+
export var createIfft = /* #__PURE__ */factory(name, dependencies, _ref => {
|
7
|
+
var {
|
8
|
+
typed,
|
9
|
+
fft,
|
10
|
+
dotDivide,
|
11
|
+
conj
|
12
|
+
} = _ref;
|
13
|
+
|
14
|
+
/**
|
15
|
+
* Calculate N-dimensional inverse fourier transform
|
16
|
+
*
|
17
|
+
* Syntax:
|
18
|
+
*
|
19
|
+
* math.ifft(arr)
|
20
|
+
*
|
21
|
+
* Examples:
|
22
|
+
*
|
23
|
+
* math.ifft([[2, 2], [0, 0]]) // returns [[{re:1, im:0}, {re:0, im:0}], [{re:1, im:0}, {re:0, im:0}]]
|
24
|
+
*
|
25
|
+
* See Also:
|
26
|
+
*
|
27
|
+
* fft
|
28
|
+
*
|
29
|
+
* @param {Array | Matrix} arr An array or matrix
|
30
|
+
* @return {Array | Matrix} N-dimensional fourier transformation of the array
|
31
|
+
*/
|
32
|
+
return typed(name, {
|
33
|
+
'Array | Matrix': function ArrayMatrix(arr) {
|
34
|
+
var size = isMatrix(arr) ? arr.size() : arraySize(arr);
|
35
|
+
return dotDivide(conj(fft(conj(arr))), size.reduce((acc, curr) => acc * curr, 1));
|
36
|
+
}
|
37
|
+
});
|
38
|
+
});
|
package/lib/esm/version.js
CHANGED
@@ -1,2 +1,2 @@
|
|
1
|
-
export var version = '10.
|
1
|
+
export var version = '10.6.2'; // Note: This file is automatically generated when building math.js.
|
2
2
|
// Changes made in this file will be overwritten.
|