mathjs 9.2.0 → 9.4.0
Sign up to get free protection for your applications and to get access to all the features.
- package/HISTORY.md +47 -1
- package/README.md +6 -5
- package/bin/cli.js +11 -11
- package/docs/datatypes/matrices.md +15 -0
- package/docs/expressions/parsing.md +21 -4
- package/docs/expressions/syntax.md +7 -0
- package/docs/reference/functions/complex.md +5 -49
- package/docs/reference/functions/eigs.md +12 -12
- package/docs/reference/functions/flatten.md +1 -0
- package/docs/reference/functions/lsolveAll.md +2 -2
- package/docs/reference/functions/matrixFromColumns.md +43 -0
- package/docs/reference/functions/matrixFromFunction.md +48 -0
- package/docs/reference/functions/matrixFromRows.md +43 -0
- package/docs/reference/functions/usolveAll.md +2 -2
- package/docs/reference/functions.md +6 -3
- package/examples/advanced/custom_scope_objects.js +115 -0
- package/examples/node_modules/.bin/envinfo +15 -0
- package/examples/node_modules/.bin/envinfo.cmd +17 -0
- package/examples/node_modules/.bin/envinfo.ps1 +18 -0
- package/examples/node_modules/.bin/import-local-fixture +15 -0
- package/examples/node_modules/.bin/import-local-fixture.cmd +17 -0
- package/examples/node_modules/.bin/import-local-fixture.ps1 +18 -0
- package/examples/node_modules/.bin/node-which +15 -0
- package/examples/node_modules/.bin/node-which.cmd +17 -0
- package/examples/node_modules/.bin/node-which.ps1 +18 -0
- package/examples/node_modules/.bin/webpack-cli +15 -0
- package/examples/node_modules/.bin/webpack-cli.cmd +17 -0
- package/examples/node_modules/.bin/webpack-cli.ps1 +18 -0
- package/examples/node_modules/@discoveryjs/json-ext/CHANGELOG.md +42 -0
- package/examples/node_modules/@discoveryjs/json-ext/LICENSE +21 -0
- package/examples/node_modules/@discoveryjs/json-ext/README.md +255 -0
- package/examples/node_modules/@discoveryjs/json-ext/dist/json-ext.js +808 -0
- package/examples/node_modules/@discoveryjs/json-ext/dist/json-ext.min.js +1 -0
- package/examples/node_modules/@discoveryjs/json-ext/package.json +93 -0
- package/examples/node_modules/@discoveryjs/json-ext/src/index.js +6 -0
- package/examples/node_modules/@discoveryjs/json-ext/src/parse-chunked.js +339 -0
- package/examples/node_modules/@discoveryjs/json-ext/src/stringify-info.js +224 -0
- package/examples/node_modules/@discoveryjs/json-ext/src/stringify-stream-browser.js +3 -0
- package/examples/node_modules/@discoveryjs/json-ext/src/stringify-stream.js +394 -0
- package/examples/node_modules/@discoveryjs/json-ext/src/text-decoder-browser.js +1 -0
- package/examples/node_modules/@discoveryjs/json-ext/src/text-decoder.js +1 -0
- package/examples/node_modules/@discoveryjs/json-ext/src/utils.js +148 -0
- package/examples/node_modules/@webpack-cli/configtest/CHANGELOG.md +18 -0
- package/examples/node_modules/@webpack-cli/configtest/LICENSE +20 -0
- package/examples/node_modules/@webpack-cli/configtest/lib/index.d.ts +4 -0
- package/examples/node_modules/@webpack-cli/configtest/lib/index.js +62 -0
- package/examples/node_modules/@webpack-cli/configtest/package.json +45 -0
- package/examples/node_modules/@webpack-cli/info/CHANGELOG.md +61 -0
- package/examples/node_modules/@webpack-cli/info/LICENSE +20 -0
- package/examples/node_modules/@webpack-cli/info/README.md +49 -0
- package/examples/node_modules/@webpack-cli/info/lib/index.d.ts +4 -0
- package/examples/node_modules/@webpack-cli/info/lib/index.js +66 -0
- package/examples/node_modules/@webpack-cli/info/package.json +47 -0
- package/examples/node_modules/@webpack-cli/serve/CHANGELOG.md +93 -0
- package/examples/node_modules/@webpack-cli/serve/LICENSE +20 -0
- package/examples/node_modules/@webpack-cli/serve/README.md +26 -0
- package/examples/node_modules/@webpack-cli/serve/lib/index.d.ts +4 -0
- package/examples/node_modules/@webpack-cli/serve/lib/index.js +107 -0
- package/examples/node_modules/@webpack-cli/serve/lib/startDevServer.d.ts +12 -0
- package/examples/node_modules/@webpack-cli/serve/lib/startDevServer.js +113 -0
- package/examples/node_modules/@webpack-cli/serve/lib/types.d.ts +48 -0
- package/examples/node_modules/@webpack-cli/serve/lib/types.js +12 -0
- package/examples/node_modules/@webpack-cli/serve/package.json +50 -0
- package/examples/node_modules/ansi-colors/LICENSE +21 -0
- package/examples/node_modules/ansi-colors/README.md +315 -0
- package/examples/node_modules/ansi-colors/index.js +177 -0
- package/examples/node_modules/ansi-colors/package.json +152 -0
- package/examples/node_modules/ansi-colors/symbols.js +70 -0
- package/examples/node_modules/ansi-colors/types/index.d.ts +161 -0
- package/examples/node_modules/clone-deep/LICENSE +21 -0
- package/examples/node_modules/clone-deep/README.md +106 -0
- package/examples/node_modules/clone-deep/index.js +49 -0
- package/examples/node_modules/clone-deep/package.json +112 -0
- package/examples/node_modules/colorette/LICENSE.md +7 -0
- package/examples/node_modules/colorette/README.md +102 -0
- package/examples/node_modules/colorette/index.cjs +73 -0
- package/examples/node_modules/colorette/index.d.ts +49 -0
- package/examples/node_modules/colorette/index.js +73 -0
- package/examples/node_modules/colorette/package.json +73 -0
- package/examples/node_modules/commander/CHANGELOG.md +440 -0
- package/examples/node_modules/commander/LICENSE +22 -0
- package/examples/node_modules/commander/Readme.md +917 -0
- package/examples/node_modules/commander/esm.mjs +4 -0
- package/examples/node_modules/commander/index.js +2217 -0
- package/examples/node_modules/commander/package-support.json +16 -0
- package/examples/node_modules/commander/package.json +100 -0
- package/examples/node_modules/commander/typings/index.d.ts +627 -0
- package/examples/node_modules/cross-spawn/CHANGELOG.md +130 -0
- package/examples/node_modules/cross-spawn/LICENSE +21 -0
- package/examples/node_modules/cross-spawn/README.md +96 -0
- package/examples/node_modules/cross-spawn/index.js +39 -0
- package/examples/node_modules/cross-spawn/lib/enoent.js +59 -0
- package/examples/node_modules/cross-spawn/lib/parse.js +91 -0
- package/examples/node_modules/cross-spawn/lib/util/escape.js +45 -0
- package/examples/node_modules/cross-spawn/lib/util/readShebang.js +23 -0
- package/examples/node_modules/cross-spawn/lib/util/resolveCommand.js +52 -0
- package/examples/node_modules/cross-spawn/package.json +104 -0
- package/examples/node_modules/enquirer/CHANGELOG.md +135 -0
- package/examples/node_modules/enquirer/LICENSE +21 -0
- package/examples/node_modules/enquirer/README.md +1752 -0
- package/examples/node_modules/enquirer/index.d.ts +151 -0
- package/examples/node_modules/enquirer/index.js +250 -0
- package/examples/node_modules/enquirer/lib/ansi.js +116 -0
- package/examples/node_modules/enquirer/lib/combos.js +75 -0
- package/examples/node_modules/enquirer/lib/completer.js +52 -0
- package/examples/node_modules/enquirer/lib/interpolate.js +266 -0
- package/examples/node_modules/enquirer/lib/keypress.js +243 -0
- package/examples/node_modules/enquirer/lib/placeholder.js +63 -0
- package/examples/node_modules/enquirer/lib/prompt.js +485 -0
- package/examples/node_modules/enquirer/lib/prompts/autocomplete.js +113 -0
- package/examples/node_modules/enquirer/lib/prompts/basicauth.js +41 -0
- package/examples/node_modules/enquirer/lib/prompts/confirm.js +13 -0
- package/examples/node_modules/enquirer/lib/prompts/editable.js +136 -0
- package/examples/node_modules/enquirer/lib/prompts/form.js +196 -0
- package/examples/node_modules/enquirer/lib/prompts/index.js +28 -0
- package/examples/node_modules/enquirer/lib/prompts/input.js +55 -0
- package/examples/node_modules/enquirer/lib/prompts/invisible.js +11 -0
- package/examples/node_modules/enquirer/lib/prompts/list.js +36 -0
- package/examples/node_modules/enquirer/lib/prompts/multiselect.js +11 -0
- package/examples/node_modules/enquirer/lib/prompts/numeral.js +1 -0
- package/examples/node_modules/enquirer/lib/prompts/password.js +18 -0
- package/examples/node_modules/enquirer/lib/prompts/quiz.js +37 -0
- package/examples/node_modules/enquirer/lib/prompts/scale.js +237 -0
- package/examples/node_modules/enquirer/lib/prompts/select.js +139 -0
- package/examples/node_modules/enquirer/lib/prompts/snippet.js +185 -0
- package/examples/node_modules/enquirer/lib/prompts/sort.js +37 -0
- package/examples/node_modules/enquirer/lib/prompts/survey.js +163 -0
- package/examples/node_modules/enquirer/lib/prompts/text.js +1 -0
- package/examples/node_modules/enquirer/lib/prompts/toggle.js +109 -0
- package/examples/node_modules/enquirer/lib/render.js +33 -0
- package/examples/node_modules/enquirer/lib/roles.js +46 -0
- package/examples/node_modules/enquirer/lib/state.js +69 -0
- package/examples/node_modules/enquirer/lib/styles.js +144 -0
- package/examples/node_modules/enquirer/lib/symbols.js +66 -0
- package/examples/node_modules/enquirer/lib/theme.js +11 -0
- package/examples/node_modules/enquirer/lib/timer.js +38 -0
- package/examples/node_modules/enquirer/lib/types/array.js +658 -0
- package/examples/node_modules/enquirer/lib/types/auth.js +29 -0
- package/examples/node_modules/enquirer/lib/types/boolean.js +88 -0
- package/examples/node_modules/enquirer/lib/types/index.js +7 -0
- package/examples/node_modules/enquirer/lib/types/number.js +86 -0
- package/examples/node_modules/enquirer/lib/types/string.js +185 -0
- package/examples/node_modules/enquirer/lib/utils.js +268 -0
- package/examples/node_modules/enquirer/package.json +148 -0
- package/examples/node_modules/envinfo/LICENSE +21 -0
- package/examples/node_modules/envinfo/README.md +285 -0
- package/examples/node_modules/envinfo/dist/cli.js +2 -0
- package/examples/node_modules/envinfo/dist/envinfo.js +1 -0
- package/examples/node_modules/envinfo/package.json +130 -0
- package/examples/node_modules/execa/index.d.ts +554 -0
- package/examples/node_modules/execa/index.js +258 -0
- package/examples/node_modules/execa/lib/command.js +32 -0
- package/examples/node_modules/execa/lib/error.js +86 -0
- package/examples/node_modules/execa/lib/kill.js +112 -0
- package/examples/node_modules/execa/lib/promise.js +46 -0
- package/examples/node_modules/execa/lib/stdio.js +52 -0
- package/examples/node_modules/execa/lib/stream.js +97 -0
- package/examples/node_modules/execa/license +9 -0
- package/examples/node_modules/execa/package.json +102 -0
- package/examples/node_modules/execa/readme.md +650 -0
- package/examples/node_modules/fastest-levenshtein/.eslintrc.js +27 -0
- package/examples/node_modules/fastest-levenshtein/.prettierrc +4 -0
- package/examples/node_modules/fastest-levenshtein/.travis.yml +17 -0
- package/examples/node_modules/fastest-levenshtein/LICENSE.md +21 -0
- package/examples/node_modules/fastest-levenshtein/README.md +55 -0
- package/examples/node_modules/fastest-levenshtein/index.d.ts +2 -0
- package/examples/node_modules/fastest-levenshtein/index.js +147 -0
- package/examples/node_modules/fastest-levenshtein/package.json +90 -0
- package/examples/node_modules/fastest-levenshtein/test.js +64 -0
- package/examples/node_modules/find-up/index.d.ts +137 -0
- package/examples/node_modules/find-up/index.js +89 -0
- package/examples/node_modules/find-up/license +9 -0
- package/examples/node_modules/find-up/package.json +85 -0
- package/examples/node_modules/find-up/readme.md +156 -0
- package/examples/node_modules/function-bind/.editorconfig +20 -0
- package/examples/node_modules/function-bind/.eslintrc +15 -0
- package/examples/node_modules/function-bind/.jscs.json +176 -0
- package/examples/node_modules/function-bind/.npmignore +22 -0
- package/examples/node_modules/function-bind/.travis.yml +168 -0
- package/examples/node_modules/function-bind/LICENSE +20 -0
- package/examples/node_modules/function-bind/README.md +48 -0
- package/examples/node_modules/function-bind/implementation.js +52 -0
- package/examples/node_modules/function-bind/index.js +5 -0
- package/examples/node_modules/function-bind/package.json +94 -0
- package/examples/node_modules/function-bind/test/.eslintrc +9 -0
- package/examples/node_modules/function-bind/test/index.js +252 -0
- package/examples/node_modules/get-stream/buffer-stream.js +52 -0
- package/examples/node_modules/get-stream/index.d.ts +105 -0
- package/examples/node_modules/get-stream/index.js +61 -0
- package/examples/node_modules/get-stream/license +9 -0
- package/examples/node_modules/get-stream/package.json +79 -0
- package/examples/node_modules/get-stream/readme.md +124 -0
- package/examples/node_modules/has/LICENSE-MIT +22 -0
- package/examples/node_modules/has/README.md +18 -0
- package/examples/node_modules/has/package.json +73 -0
- package/examples/node_modules/has/src/index.js +5 -0
- package/examples/node_modules/has/test/index.js +10 -0
- package/examples/node_modules/human-signals/CHANGELOG.md +11 -0
- package/examples/node_modules/human-signals/LICENSE +201 -0
- package/examples/node_modules/human-signals/README.md +165 -0
- package/examples/node_modules/human-signals/build/src/core.js +273 -0
- package/examples/node_modules/human-signals/build/src/core.js.map +1 -0
- package/examples/node_modules/human-signals/build/src/main.d.ts +52 -0
- package/examples/node_modules/human-signals/build/src/main.js +71 -0
- package/examples/node_modules/human-signals/build/src/main.js.map +1 -0
- package/examples/node_modules/human-signals/build/src/realtime.js +19 -0
- package/examples/node_modules/human-signals/build/src/realtime.js.map +1 -0
- package/examples/node_modules/human-signals/build/src/signals.js +35 -0
- package/examples/node_modules/human-signals/build/src/signals.js.map +1 -0
- package/examples/node_modules/human-signals/package.json +96 -0
- package/examples/node_modules/import-local/fixtures/cli.js +7 -0
- package/examples/node_modules/import-local/index.js +19 -0
- package/examples/node_modules/import-local/license +9 -0
- package/examples/node_modules/import-local/package.json +83 -0
- package/examples/node_modules/import-local/readme.md +38 -0
- package/examples/node_modules/interpret/CHANGELOG +115 -0
- package/examples/node_modules/interpret/LICENSE +22 -0
- package/examples/node_modules/interpret/README.md +229 -0
- package/examples/node_modules/interpret/index.js +211 -0
- package/examples/node_modules/interpret/mjs-stub.js +1 -0
- package/examples/node_modules/interpret/package.json +118 -0
- package/examples/node_modules/is-core-module/.eslintignore +1 -0
- package/examples/node_modules/is-core-module/.eslintrc +18 -0
- package/examples/node_modules/is-core-module/.github/FUNDING.yml +12 -0
- package/examples/node_modules/is-core-module/.github/workflows/node-4+.yml +54 -0
- package/examples/node_modules/is-core-module/.github/workflows/node-iojs.yml +58 -0
- package/examples/node_modules/is-core-module/.github/workflows/node-pretest.yml +26 -0
- package/examples/node_modules/is-core-module/.github/workflows/node-zero.yml +58 -0
- package/examples/node_modules/is-core-module/.github/workflows/rebase.yml +15 -0
- package/examples/node_modules/is-core-module/.github/workflows/require-allow-edits.yml +14 -0
- package/examples/node_modules/is-core-module/.nycrc +13 -0
- package/examples/node_modules/is-core-module/CHANGELOG.md +58 -0
- package/examples/node_modules/is-core-module/LICENSE +20 -0
- package/examples/node_modules/is-core-module/README.md +37 -0
- package/examples/node_modules/is-core-module/core.json +83 -0
- package/examples/node_modules/is-core-module/index.js +69 -0
- package/examples/node_modules/is-core-module/package.json +94 -0
- package/examples/node_modules/is-core-module/test/index.js +83 -0
- package/examples/node_modules/is-plain-object/LICENSE +21 -0
- package/examples/node_modules/is-plain-object/README.md +104 -0
- package/examples/node_modules/is-plain-object/index.d.ts +5 -0
- package/examples/node_modules/is-plain-object/index.js +37 -0
- package/examples/node_modules/is-plain-object/package.json +121 -0
- package/examples/node_modules/is-stream/index.d.ts +80 -0
- package/examples/node_modules/is-stream/index.js +29 -0
- package/examples/node_modules/is-stream/license +9 -0
- package/examples/node_modules/is-stream/package.json +73 -0
- package/examples/node_modules/is-stream/readme.md +57 -0
- package/examples/node_modules/isexe/.npmignore +2 -0
- package/examples/node_modules/isexe/LICENSE +15 -0
- package/examples/node_modules/isexe/README.md +51 -0
- package/examples/node_modules/isexe/index.js +57 -0
- package/examples/node_modules/isexe/mode.js +41 -0
- package/examples/node_modules/isexe/package.json +60 -0
- package/examples/node_modules/isexe/test/basic.js +221 -0
- package/examples/node_modules/isexe/windows.js +42 -0
- package/examples/node_modules/isobject/LICENSE +21 -0
- package/examples/node_modules/isobject/README.md +122 -0
- package/examples/node_modules/isobject/index.d.ts +5 -0
- package/examples/node_modules/isobject/index.js +12 -0
- package/examples/node_modules/isobject/package.json +119 -0
- package/examples/node_modules/kind-of/CHANGELOG.md +160 -0
- package/examples/node_modules/kind-of/LICENSE +21 -0
- package/examples/node_modules/kind-of/README.md +367 -0
- package/examples/node_modules/kind-of/index.js +129 -0
- package/examples/node_modules/kind-of/package.json +144 -0
- package/examples/node_modules/locate-path/index.d.ts +83 -0
- package/examples/node_modules/locate-path/index.js +65 -0
- package/examples/node_modules/locate-path/license +9 -0
- package/examples/node_modules/locate-path/package.json +77 -0
- package/examples/node_modules/locate-path/readme.md +122 -0
- package/examples/node_modules/merge-stream/LICENSE +21 -0
- package/examples/node_modules/merge-stream/README.md +78 -0
- package/examples/node_modules/merge-stream/index.js +41 -0
- package/examples/node_modules/merge-stream/package.json +54 -0
- package/examples/node_modules/mimic-fn/index.d.ts +54 -0
- package/examples/node_modules/mimic-fn/index.js +13 -0
- package/examples/node_modules/mimic-fn/license +9 -0
- package/examples/node_modules/mimic-fn/package.json +74 -0
- package/examples/node_modules/mimic-fn/readme.md +69 -0
- package/examples/node_modules/npm-run-path/index.d.ts +89 -0
- package/examples/node_modules/npm-run-path/index.js +47 -0
- package/examples/node_modules/npm-run-path/license +9 -0
- package/examples/node_modules/npm-run-path/package.json +76 -0
- package/examples/node_modules/npm-run-path/readme.md +115 -0
- package/examples/node_modules/onetime/index.d.ts +64 -0
- package/examples/node_modules/onetime/index.js +44 -0
- package/examples/node_modules/onetime/license +9 -0
- package/examples/node_modules/onetime/package.json +75 -0
- package/examples/node_modules/onetime/readme.md +94 -0
- package/examples/node_modules/p-limit/index.d.ts +38 -0
- package/examples/node_modules/p-limit/index.js +57 -0
- package/examples/node_modules/p-limit/license +9 -0
- package/examples/node_modules/p-limit/package.json +84 -0
- package/examples/node_modules/p-limit/readme.md +101 -0
- package/examples/node_modules/p-locate/index.d.ts +64 -0
- package/examples/node_modules/p-locate/index.js +52 -0
- package/examples/node_modules/p-locate/license +9 -0
- package/examples/node_modules/p-locate/package.json +85 -0
- package/examples/node_modules/p-locate/readme.md +90 -0
- package/examples/node_modules/p-try/index.d.ts +39 -0
- package/examples/node_modules/p-try/index.js +9 -0
- package/examples/node_modules/p-try/license +9 -0
- package/examples/node_modules/p-try/package.json +74 -0
- package/examples/node_modules/p-try/readme.md +58 -0
- package/examples/node_modules/path-exists/index.d.ts +28 -0
- package/examples/node_modules/path-exists/index.js +23 -0
- package/examples/node_modules/path-exists/license +9 -0
- package/examples/node_modules/path-exists/package.json +71 -0
- package/examples/node_modules/path-exists/readme.md +52 -0
- package/examples/node_modules/path-key/index.d.ts +40 -0
- package/examples/node_modules/path-key/index.js +16 -0
- package/examples/node_modules/path-key/license +9 -0
- package/examples/node_modules/path-key/package.json +72 -0
- package/examples/node_modules/path-key/readme.md +61 -0
- package/examples/node_modules/path-parse/.travis.yml +9 -0
- package/examples/node_modules/path-parse/LICENSE +21 -0
- package/examples/node_modules/path-parse/README.md +42 -0
- package/examples/node_modules/path-parse/index.js +93 -0
- package/examples/node_modules/path-parse/package.json +61 -0
- package/examples/node_modules/path-parse/test.js +77 -0
- package/examples/node_modules/pkg-dir/index.d.ts +44 -0
- package/examples/node_modules/pkg-dir/index.js +17 -0
- package/examples/node_modules/pkg-dir/license +9 -0
- package/examples/node_modules/pkg-dir/package.json +88 -0
- package/examples/node_modules/pkg-dir/readme.md +66 -0
- package/examples/node_modules/rechoir/LICENSE +24 -0
- package/examples/node_modules/rechoir/README.md +74 -0
- package/examples/node_modules/rechoir/index.js +67 -0
- package/examples/node_modules/rechoir/lib/extension.js +19 -0
- package/examples/node_modules/rechoir/lib/normalize.js +13 -0
- package/examples/node_modules/rechoir/lib/register.js +15 -0
- package/examples/node_modules/rechoir/package.json +89 -0
- package/examples/node_modules/resolve/.editorconfig +37 -0
- package/examples/node_modules/resolve/.eslintignore +1 -0
- package/examples/node_modules/resolve/.eslintrc +39 -0
- package/examples/node_modules/resolve/LICENSE +21 -0
- package/examples/node_modules/resolve/SECURITY.md +3 -0
- package/examples/node_modules/resolve/appveyor.yml +74 -0
- package/examples/node_modules/resolve/example/async.js +5 -0
- package/examples/node_modules/resolve/example/sync.js +3 -0
- package/examples/node_modules/resolve/index.js +6 -0
- package/examples/node_modules/resolve/lib/async.js +320 -0
- package/examples/node_modules/resolve/lib/caller.js +8 -0
- package/examples/node_modules/resolve/lib/core.js +53 -0
- package/examples/node_modules/resolve/lib/core.json +83 -0
- package/examples/node_modules/resolve/lib/is-core.js +5 -0
- package/examples/node_modules/resolve/lib/node-modules-paths.js +42 -0
- package/examples/node_modules/resolve/lib/normalize-options.js +10 -0
- package/examples/node_modules/resolve/lib/sync.js +199 -0
- package/examples/node_modules/resolve/package.json +80 -0
- package/examples/node_modules/resolve/readme.markdown +279 -0
- package/examples/node_modules/resolve/test/.eslintrc +5 -0
- package/examples/node_modules/resolve/test/core.js +81 -0
- package/examples/node_modules/resolve/test/dotdot/abc/index.js +2 -0
- package/examples/node_modules/resolve/test/dotdot/index.js +1 -0
- package/examples/node_modules/resolve/test/dotdot.js +29 -0
- package/examples/node_modules/resolve/test/faulty_basedir.js +29 -0
- package/examples/node_modules/resolve/test/filter.js +34 -0
- package/examples/node_modules/resolve/test/filter_sync.js +33 -0
- package/examples/node_modules/resolve/test/mock.js +315 -0
- package/examples/node_modules/resolve/test/mock_sync.js +216 -0
- package/examples/node_modules/resolve/test/module_dir/xmodules/aaa/index.js +1 -0
- package/examples/node_modules/resolve/test/module_dir/ymodules/aaa/index.js +1 -0
- package/examples/node_modules/resolve/test/module_dir/zmodules/bbb/main.js +1 -0
- package/examples/node_modules/resolve/test/module_dir/zmodules/bbb/package.json +3 -0
- package/examples/node_modules/resolve/test/module_dir.js +56 -0
- package/examples/node_modules/resolve/test/node-modules-paths.js +143 -0
- package/examples/node_modules/resolve/test/node_path/x/aaa/index.js +1 -0
- package/examples/node_modules/resolve/test/node_path/x/ccc/index.js +1 -0
- package/examples/node_modules/resolve/test/node_path/y/bbb/index.js +1 -0
- package/examples/node_modules/resolve/test/node_path/y/ccc/index.js +1 -0
- package/examples/node_modules/resolve/test/node_path.js +70 -0
- package/examples/node_modules/resolve/test/nonstring.js +9 -0
- package/examples/node_modules/resolve/test/pathfilter/deep_ref/main.js +0 -0
- package/examples/node_modules/resolve/test/pathfilter.js +75 -0
- package/examples/node_modules/resolve/test/precedence/aaa/index.js +1 -0
- package/examples/node_modules/resolve/test/precedence/aaa/main.js +1 -0
- package/examples/node_modules/resolve/test/precedence/aaa.js +1 -0
- package/examples/node_modules/resolve/test/precedence/bbb/main.js +1 -0
- package/examples/node_modules/resolve/test/precedence/bbb.js +1 -0
- package/examples/node_modules/resolve/test/precedence.js +23 -0
- package/examples/node_modules/resolve/test/resolver/baz/doom.js +0 -0
- package/examples/node_modules/resolve/test/resolver/baz/package.json +4 -0
- package/examples/node_modules/resolve/test/resolver/baz/quux.js +1 -0
- package/examples/node_modules/resolve/test/resolver/browser_field/a.js +0 -0
- package/examples/node_modules/resolve/test/resolver/browser_field/b.js +0 -0
- package/examples/node_modules/resolve/test/resolver/browser_field/package.json +5 -0
- package/examples/node_modules/resolve/test/resolver/cup.coffee +1 -0
- package/examples/node_modules/resolve/test/resolver/dot_main/index.js +1 -0
- package/examples/node_modules/resolve/test/resolver/dot_main/package.json +3 -0
- package/examples/node_modules/resolve/test/resolver/dot_slash_main/index.js +1 -0
- package/examples/node_modules/resolve/test/resolver/dot_slash_main/package.json +3 -0
- package/examples/node_modules/resolve/test/resolver/foo.js +1 -0
- package/examples/node_modules/resolve/test/resolver/incorrect_main/index.js +2 -0
- package/examples/node_modules/resolve/test/resolver/incorrect_main/package.json +3 -0
- package/examples/node_modules/resolve/test/resolver/invalid_main/package.json +7 -0
- package/examples/node_modules/resolve/test/resolver/mug.coffee +0 -0
- package/examples/node_modules/resolve/test/resolver/mug.js +0 -0
- package/examples/node_modules/resolve/test/resolver/multirepo/lerna.json +6 -0
- package/examples/node_modules/resolve/test/resolver/multirepo/package.json +20 -0
- package/examples/node_modules/resolve/test/resolver/multirepo/packages/package-a/index.js +35 -0
- package/examples/node_modules/resolve/test/resolver/multirepo/packages/package-a/package.json +14 -0
- package/examples/node_modules/resolve/test/resolver/multirepo/packages/package-b/index.js +0 -0
- package/examples/node_modules/resolve/test/resolver/multirepo/packages/package-b/package.json +14 -0
- package/examples/node_modules/resolve/test/resolver/nested_symlinks/mylib/async.js +26 -0
- package/examples/node_modules/resolve/test/resolver/nested_symlinks/mylib/package.json +15 -0
- package/examples/node_modules/resolve/test/resolver/nested_symlinks/mylib/sync.js +12 -0
- package/examples/node_modules/resolve/test/resolver/other_path/lib/other-lib.js +0 -0
- package/examples/node_modules/resolve/test/resolver/other_path/root.js +0 -0
- package/examples/node_modules/resolve/test/resolver/quux/foo/index.js +1 -0
- package/examples/node_modules/resolve/test/resolver/same_names/foo/index.js +1 -0
- package/examples/node_modules/resolve/test/resolver/same_names/foo.js +1 -0
- package/examples/node_modules/resolve/test/resolver/symlinked/_/node_modules/foo.js +0 -0
- package/examples/node_modules/resolve/test/resolver/symlinked/_/symlink_target/.gitkeep +0 -0
- package/examples/node_modules/resolve/test/resolver/symlinked/package/bar.js +1 -0
- package/examples/node_modules/resolve/test/resolver/symlinked/package/package.json +3 -0
- package/examples/node_modules/resolve/test/resolver/without_basedir/main.js +5 -0
- package/examples/node_modules/resolve/test/resolver.js +450 -0
- package/examples/node_modules/resolve/test/resolver_sync.js +358 -0
- package/examples/node_modules/resolve/test/shadowed_core/node_modules/util/index.js +0 -0
- package/examples/node_modules/resolve/test/shadowed_core.js +54 -0
- package/examples/node_modules/resolve/test/subdirs.js +13 -0
- package/examples/node_modules/resolve/test/symlinks.js +176 -0
- package/examples/node_modules/resolve-cwd/index.d.ts +48 -0
- package/examples/node_modules/resolve-cwd/index.js +5 -0
- package/examples/node_modules/resolve-cwd/license +9 -0
- package/examples/node_modules/resolve-cwd/package.json +75 -0
- package/examples/node_modules/resolve-cwd/readme.md +58 -0
- package/examples/node_modules/resolve-from/index.d.ts +31 -0
- package/examples/node_modules/resolve-from/index.js +47 -0
- package/examples/node_modules/resolve-from/license +9 -0
- package/examples/node_modules/resolve-from/package.json +68 -0
- package/examples/node_modules/resolve-from/readme.md +72 -0
- package/examples/node_modules/shallow-clone/LICENSE +21 -0
- package/examples/node_modules/shallow-clone/README.md +153 -0
- package/examples/node_modules/shallow-clone/index.js +83 -0
- package/examples/node_modules/shallow-clone/package.json +101 -0
- package/examples/node_modules/shebang-command/index.js +19 -0
- package/examples/node_modules/shebang-command/license +9 -0
- package/examples/node_modules/shebang-command/package.json +66 -0
- package/examples/node_modules/shebang-command/readme.md +34 -0
- package/examples/node_modules/shebang-regex/index.d.ts +22 -0
- package/examples/node_modules/shebang-regex/index.js +2 -0
- package/examples/node_modules/shebang-regex/license +9 -0
- package/examples/node_modules/shebang-regex/package.json +67 -0
- package/examples/node_modules/shebang-regex/readme.md +33 -0
- package/examples/node_modules/signal-exit/CHANGELOG.md +35 -0
- package/examples/node_modules/signal-exit/LICENSE.txt +16 -0
- package/examples/node_modules/signal-exit/README.md +39 -0
- package/examples/node_modules/signal-exit/index.js +163 -0
- package/examples/node_modules/signal-exit/package.json +66 -0
- package/examples/node_modules/signal-exit/signals.js +53 -0
- package/examples/node_modules/strip-final-newline/index.js +16 -0
- package/examples/node_modules/strip-final-newline/license +9 -0
- package/examples/node_modules/strip-final-newline/package.json +72 -0
- package/examples/node_modules/strip-final-newline/readme.md +30 -0
- package/examples/node_modules/v8-compile-cache/CHANGELOG.md +53 -0
- package/examples/node_modules/v8-compile-cache/LICENSE +21 -0
- package/examples/node_modules/v8-compile-cache/README.md +55 -0
- package/examples/node_modules/v8-compile-cache/package.json +66 -0
- package/examples/node_modules/v8-compile-cache/v8-compile-cache.js +371 -0
- package/examples/node_modules/webpack-cli/CHANGELOG.md +501 -0
- package/examples/node_modules/webpack-cli/LICENSE +20 -0
- package/examples/node_modules/webpack-cli/README.md +116 -0
- package/examples/node_modules/webpack-cli/bin/cli.js +40 -0
- package/examples/node_modules/webpack-cli/lib/bootstrap.js +18 -0
- package/examples/node_modules/webpack-cli/lib/index.js +5 -0
- package/examples/node_modules/webpack-cli/lib/plugins/CLIPlugin.js +99 -0
- package/examples/node_modules/webpack-cli/lib/utils/__tests__/get-package-manager.test.js +108 -0
- package/examples/node_modules/webpack-cli/lib/utils/__tests__/prompt-installation.test.js +118 -0
- package/examples/node_modules/webpack-cli/lib/utils/__tests__/test-all-lock/package-lock.json +0 -0
- package/examples/node_modules/webpack-cli/lib/utils/__tests__/test-all-lock/pnpm-lock.yaml +0 -0
- package/examples/node_modules/webpack-cli/lib/utils/__tests__/test-all-lock/yarn.lock +0 -0
- package/examples/node_modules/webpack-cli/lib/utils/__tests__/test-npm-and-pnpm/package-lock.json +0 -0
- package/examples/node_modules/webpack-cli/lib/utils/__tests__/test-npm-and-pnpm/pnpm-lock.yaml +0 -0
- package/examples/node_modules/webpack-cli/lib/utils/__tests__/test-npm-and-yarn/package-lock.json +0 -0
- package/examples/node_modules/webpack-cli/lib/utils/__tests__/test-npm-and-yarn/yarn.lock +0 -0
- package/examples/node_modules/webpack-cli/lib/utils/__tests__/test-npm-lock/package-lock.json +0 -0
- package/examples/node_modules/webpack-cli/lib/utils/__tests__/test-pnpm-lock/pnpm-lock.yaml +0 -0
- package/examples/node_modules/webpack-cli/lib/utils/__tests__/test-yarn-and-pnpm/pnpm-lock.yaml +0 -0
- package/examples/node_modules/webpack-cli/lib/utils/__tests__/test-yarn-and-pnpm/yarn.lock +0 -0
- package/examples/node_modules/webpack-cli/lib/utils/__tests__/test-yarn-lock/yarn.lock +0 -0
- package/examples/node_modules/webpack-cli/lib/utils/capitalize-first-letter.js +9 -0
- package/examples/node_modules/webpack-cli/lib/utils/dynamic-import-loader.js +13 -0
- package/examples/node_modules/webpack-cli/lib/utils/get-package-manager.js +65 -0
- package/examples/node_modules/webpack-cli/lib/utils/index.js +49 -0
- package/examples/node_modules/webpack-cli/lib/utils/logger.js +11 -0
- package/examples/node_modules/webpack-cli/lib/utils/package-exists.js +9 -0
- package/examples/node_modules/webpack-cli/lib/utils/prompt-installation.js +58 -0
- package/examples/node_modules/webpack-cli/lib/utils/run-command.js +13 -0
- package/examples/node_modules/webpack-cli/lib/utils/to-kebab-case.js +5 -0
- package/examples/node_modules/webpack-cli/lib/webpack-cli.js +1803 -0
- package/examples/node_modules/webpack-cli/package.json +96 -0
- package/examples/node_modules/webpack-merge/CHANGELOG.md +421 -0
- package/examples/node_modules/webpack-merge/LICENSE +20 -0
- package/examples/node_modules/webpack-merge/README.md +314 -0
- package/examples/node_modules/webpack-merge/dist/index.d.ts +15 -0
- package/examples/node_modules/webpack-merge/dist/index.js +262 -0
- package/examples/node_modules/webpack-merge/dist/index.js.map +1 -0
- package/examples/node_modules/webpack-merge/dist/join-arrays.d.ts +6 -0
- package/examples/node_modules/webpack-merge/dist/join-arrays.js +69 -0
- package/examples/node_modules/webpack-merge/dist/join-arrays.js.map +1 -0
- package/examples/node_modules/webpack-merge/dist/merge-with.d.ts +2 -0
- package/examples/node_modules/webpack-merge/dist/merge-with.js +38 -0
- package/examples/node_modules/webpack-merge/dist/merge-with.js.map +1 -0
- package/examples/node_modules/webpack-merge/dist/types.d.ts +13 -0
- package/examples/node_modules/webpack-merge/dist/types.js +12 -0
- package/examples/node_modules/webpack-merge/dist/types.js.map +1 -0
- package/examples/node_modules/webpack-merge/dist/unique.d.ts +2 -0
- package/examples/node_modules/webpack-merge/dist/unique.js +40 -0
- package/examples/node_modules/webpack-merge/dist/unique.js.map +1 -0
- package/examples/node_modules/webpack-merge/dist/utils.d.ts +5 -0
- package/examples/node_modules/webpack-merge/dist/utils.js +24 -0
- package/examples/node_modules/webpack-merge/dist/utils.js.map +1 -0
- package/examples/node_modules/webpack-merge/package.json +86 -0
- package/examples/node_modules/which/CHANGELOG.md +166 -0
- package/examples/node_modules/which/LICENSE +15 -0
- package/examples/node_modules/which/README.md +54 -0
- package/examples/node_modules/which/bin/node-which +52 -0
- package/examples/node_modules/which/package.json +76 -0
- package/examples/node_modules/which/which.js +125 -0
- package/examples/node_modules/wildcard/.travis.yml +9 -0
- package/examples/node_modules/wildcard/README.md +99 -0
- package/examples/node_modules/wildcard/docs.json +9 -0
- package/examples/node_modules/wildcard/examples/arrays.js +10 -0
- package/examples/node_modules/wildcard/examples/objects.js +10 -0
- package/examples/node_modules/wildcard/examples/strings.js +7 -0
- package/examples/node_modules/wildcard/index.js +114 -0
- package/examples/node_modules/wildcard/package.json +82 -0
- package/examples/node_modules/wildcard/test/all.js +3 -0
- package/examples/node_modules/wildcard/test/arrays.js +33 -0
- package/examples/node_modules/wildcard/test/objects.js +106 -0
- package/examples/node_modules/wildcard/test/strings.js +46 -0
- package/examples/node_modules/wildcard/yarn.lock +228 -0
- package/lib/browser/math.js +10 -10
- package/lib/browser/math.js.map +1 -1
- package/lib/cjs/core/create.js +8 -7
- package/lib/cjs/core/function/import.js +9 -7
- package/lib/cjs/core/function/typed.js +6 -1
- package/lib/cjs/defaultInstance.js +3 -3
- package/lib/cjs/entry/allFactoriesAny.js +3 -3
- package/lib/cjs/entry/allFactoriesNumber.js +3 -3
- package/lib/cjs/entry/configReadonly.js +5 -4
- package/lib/cjs/entry/dependenciesAny/dependenciesEigs.generated.js +51 -0
- package/lib/cjs/entry/dependenciesAny/dependenciesMatrixFromColumns.generated.js +29 -0
- package/lib/cjs/entry/dependenciesAny/dependenciesMatrixFromFunction.generated.js +26 -0
- package/lib/cjs/entry/dependenciesAny/dependenciesMatrixFromRows.generated.js +29 -0
- package/lib/cjs/entry/dependenciesAny.generated.js +24 -0
- package/lib/cjs/entry/impureFunctionsAny.generated.js +22 -17
- package/lib/cjs/entry/impureFunctionsNumber.generated.js +11 -9
- package/lib/cjs/entry/pureFunctionsAny.generated.js +78 -41
- package/lib/cjs/expression/Parser.js +22 -15
- package/lib/cjs/expression/embeddedDocs/embeddedDocs.js +9 -0
- package/lib/cjs/expression/embeddedDocs/function/matrix/column.js +1 -1
- package/lib/cjs/expression/embeddedDocs/function/matrix/matrixFromColumns.js +15 -0
- package/lib/cjs/expression/embeddedDocs/function/matrix/matrixFromFunction.js +15 -0
- package/lib/cjs/expression/embeddedDocs/function/matrix/matrixFromRows.js +15 -0
- package/lib/cjs/expression/embeddedDocs/function/matrix/row.js +1 -1
- package/lib/cjs/expression/function/evaluate.js +6 -4
- package/lib/cjs/expression/keywords.js +1 -3
- package/lib/cjs/expression/node/AccessorNode.js +1 -0
- package/lib/cjs/expression/node/AssignmentNode.js +6 -3
- package/lib/cjs/expression/node/FunctionAssignmentNode.js +2 -4
- package/lib/cjs/expression/node/FunctionNode.js +86 -39
- package/lib/cjs/expression/node/IndexNode.js +5 -13
- package/lib/cjs/expression/node/Node.js +15 -9
- package/lib/cjs/expression/node/ObjectNode.js +5 -3
- package/lib/cjs/expression/node/SymbolNode.js +4 -4
- package/lib/cjs/expression/node/utils/access.js +5 -3
- package/lib/cjs/expression/node/utils/assign.js +5 -3
- package/lib/cjs/expression/parse.js +23 -20
- package/lib/cjs/expression/transform/utils/compileInlineExpression.js +5 -3
- package/lib/cjs/factoriesAny.js +24 -0
- package/lib/cjs/function/algebra/decomposition/qr.js +5 -3
- package/lib/cjs/function/algebra/simplify/resolve.js +7 -1
- package/lib/cjs/function/algebra/simplify.js +20 -14
- package/lib/cjs/function/algebra/solver/lsolveAll.js +9 -19
- package/lib/cjs/function/algebra/solver/usolveAll.js +9 -19
- package/lib/cjs/function/arithmetic/ceil.js +6 -16
- package/lib/cjs/function/arithmetic/floor.js +6 -16
- package/lib/cjs/function/arithmetic/norm.js +2 -2
- package/lib/cjs/function/arithmetic/pow.js +9 -7
- package/lib/cjs/function/arithmetic/round.js +7 -5
- package/lib/cjs/function/complex/im.js +3 -0
- package/lib/cjs/function/complex/re.js +3 -0
- package/lib/cjs/function/matrix/eigs/complexEigs.js +631 -0
- package/lib/cjs/function/matrix/eigs/realSymetric.js +341 -0
- package/lib/cjs/function/matrix/eigs.js +188 -334
- package/lib/cjs/function/matrix/flatten.js +1 -0
- package/lib/cjs/function/matrix/matrixFromColumns.js +118 -0
- package/lib/cjs/function/matrix/matrixFromFunction.js +85 -0
- package/lib/cjs/function/matrix/matrixFromRows.js +108 -0
- package/lib/cjs/function/probability/pickRandom.js +1 -1
- package/lib/cjs/function/probability/util/seededRNG.js +2 -2
- package/lib/cjs/function/relational/compareNatural.js +2 -2
- package/lib/cjs/function/utils/isPrime.js +67 -3
- package/lib/cjs/header.js +2 -2
- package/lib/cjs/plain/bignumber/index.js +2 -2
- package/lib/cjs/type/bignumber/BigNumber.js +2 -2
- package/lib/cjs/type/bignumber/function/bignumber.js +4 -4
- package/lib/cjs/type/complex/Complex.js +5 -5
- package/lib/cjs/type/fraction/Fraction.js +2 -2
- package/lib/cjs/type/matrix/DenseMatrix.js +138 -0
- package/lib/cjs/type/matrix/Matrix.js +10 -0
- package/lib/cjs/type/matrix/SparseMatrix.js +77 -3
- package/lib/cjs/type/matrix/function/matrix.js +2 -1
- package/lib/cjs/type/number.js +63 -5
- package/lib/cjs/type/unit/Unit.js +15 -13
- package/lib/cjs/utils/array.js +1 -1
- package/lib/cjs/utils/customs.js +18 -4
- package/lib/cjs/utils/emitter.js +2 -2
- package/lib/cjs/utils/function.js +6 -2
- package/lib/cjs/utils/is.js +7 -5
- package/lib/cjs/utils/latex.js +2 -2
- package/lib/cjs/utils/map.js +197 -0
- package/lib/cjs/utils/object.js +6 -5
- package/lib/cjs/utils/scope.js +33 -0
- package/lib/cjs/utils/snapshot.js +17 -16
- package/lib/cjs/utils/string.js +6 -4
- package/lib/cjs/version.js +1 -1
- package/lib/esm/constants.js +15 -15
- package/lib/esm/core/create.js +1 -2
- package/lib/esm/core/function/typed.js +5 -1
- package/lib/esm/entry/configReadonly.js +1 -2
- package/lib/esm/entry/dependenciesAny/dependenciesEigs.generated.js +34 -0
- package/lib/esm/entry/dependenciesAny/dependenciesMatrixFromColumns.generated.js +16 -0
- package/lib/esm/entry/dependenciesAny/dependenciesMatrixFromFunction.generated.js +14 -0
- package/lib/esm/entry/dependenciesAny/dependenciesMatrixFromRows.generated.js +16 -0
- package/lib/esm/entry/dependenciesAny.generated.js +3 -0
- package/lib/esm/entry/impureFunctionsAny.generated.js +13 -10
- package/lib/esm/entry/impureFunctionsNumber.generated.js +1 -1
- package/lib/esm/entry/pureFunctionsAny.generated.js +66 -32
- package/lib/esm/expression/Help.js +1 -1
- package/lib/esm/expression/Parser.js +23 -15
- package/lib/esm/expression/embeddedDocs/embeddedDocs.js +6 -0
- package/lib/esm/expression/embeddedDocs/function/matrix/column.js +1 -1
- package/lib/esm/expression/embeddedDocs/function/matrix/matrixFromColumns.js +8 -0
- package/lib/esm/expression/embeddedDocs/function/matrix/matrixFromFunction.js +8 -0
- package/lib/esm/expression/embeddedDocs/function/matrix/matrixFromRows.js +8 -0
- package/lib/esm/expression/embeddedDocs/function/matrix/row.js +1 -1
- package/lib/esm/expression/function/compile.js +1 -1
- package/lib/esm/expression/function/evaluate.js +6 -5
- package/lib/esm/expression/function/help.js +1 -1
- package/lib/esm/expression/function/parser.js +1 -1
- package/lib/esm/expression/keywords.js +1 -3
- package/lib/esm/expression/node/AccessorNode.js +2 -1
- package/lib/esm/expression/node/ArrayNode.js +1 -1
- package/lib/esm/expression/node/AssignmentNode.js +7 -4
- package/lib/esm/expression/node/BlockNode.js +1 -1
- package/lib/esm/expression/node/ConditionalNode.js +1 -1
- package/lib/esm/expression/node/ConstantNode.js +1 -1
- package/lib/esm/expression/node/FunctionAssignmentNode.js +3 -4
- package/lib/esm/expression/node/FunctionNode.js +68 -33
- package/lib/esm/expression/node/IndexNode.js +1 -1
- package/lib/esm/expression/node/Node.js +7 -8
- package/lib/esm/expression/node/ObjectNode.js +1 -1
- package/lib/esm/expression/node/OperatorNode.js +1 -1
- package/lib/esm/expression/node/ParenthesisNode.js +1 -1
- package/lib/esm/expression/node/RangeNode.js +1 -1
- package/lib/esm/expression/node/RelationalNode.js +1 -1
- package/lib/esm/expression/node/SymbolNode.js +5 -5
- package/lib/esm/expression/parse.js +15 -9
- package/lib/esm/expression/transform/apply.transform.js +1 -1
- package/lib/esm/expression/transform/column.transform.js +1 -1
- package/lib/esm/expression/transform/concat.transform.js +1 -1
- package/lib/esm/expression/transform/diff.transform.js +1 -1
- package/lib/esm/expression/transform/filter.transform.js +1 -1
- package/lib/esm/expression/transform/forEach.transform.js +1 -1
- package/lib/esm/expression/transform/index.transform.js +1 -1
- package/lib/esm/expression/transform/map.transform.js +1 -1
- package/lib/esm/expression/transform/max.transform.js +1 -1
- package/lib/esm/expression/transform/mean.transform.js +1 -1
- package/lib/esm/expression/transform/min.transform.js +1 -1
- package/lib/esm/expression/transform/range.transform.js +1 -1
- package/lib/esm/expression/transform/row.transform.js +1 -1
- package/lib/esm/expression/transform/std.transform.js +1 -1
- package/lib/esm/expression/transform/subset.transform.js +1 -1
- package/lib/esm/expression/transform/sum.transform.js +1 -1
- package/lib/esm/expression/transform/utils/compileInlineExpression.js +4 -3
- package/lib/esm/expression/transform/variance.transform.js +1 -1
- package/lib/esm/factoriesAny.js +3 -0
- package/lib/esm/factoriesNumber.js +1 -1
- package/lib/esm/function/algebra/decomposition/lup.js +1 -1
- package/lib/esm/function/algebra/decomposition/qr.js +2 -3
- package/lib/esm/function/algebra/decomposition/slu.js +1 -1
- package/lib/esm/function/algebra/derivative.js +1 -1
- package/lib/esm/function/algebra/rationalize.js +1 -1
- package/lib/esm/function/algebra/simplify/resolve.js +7 -2
- package/lib/esm/function/algebra/simplify/simplifyConstant.js +1 -1
- package/lib/esm/function/algebra/simplify/simplifyCore.js +1 -1
- package/lib/esm/function/algebra/simplify/util.js +1 -1
- package/lib/esm/function/algebra/simplify.js +16 -12
- package/lib/esm/function/algebra/solver/lsolve.js +1 -1
- package/lib/esm/function/algebra/solver/lsolveAll.js +4 -4
- package/lib/esm/function/algebra/solver/lusolve.js +1 -1
- package/lib/esm/function/algebra/solver/usolve.js +1 -1
- package/lib/esm/function/algebra/solver/usolveAll.js +4 -4
- package/lib/esm/function/algebra/sparse/csAmd.js +1 -1
- package/lib/esm/function/algebra/sparse/csChol.js +1 -1
- package/lib/esm/function/algebra/sparse/csCounts.js +1 -1
- package/lib/esm/function/algebra/sparse/csLu.js +1 -1
- package/lib/esm/function/algebra/sparse/csSpsolve.js +1 -1
- package/lib/esm/function/algebra/sparse/csSqr.js +1 -1
- package/lib/esm/function/algebra/sparse/csSymperm.js +1 -1
- package/lib/esm/function/arithmetic/abs.js +1 -1
- package/lib/esm/function/arithmetic/add.js +1 -1
- package/lib/esm/function/arithmetic/addScalar.js +1 -1
- package/lib/esm/function/arithmetic/cbrt.js +1 -1
- package/lib/esm/function/arithmetic/ceil.js +1 -1
- package/lib/esm/function/arithmetic/cube.js +1 -1
- package/lib/esm/function/arithmetic/divide.js +1 -1
- package/lib/esm/function/arithmetic/divideScalar.js +1 -1
- package/lib/esm/function/arithmetic/dotDivide.js +1 -1
- package/lib/esm/function/arithmetic/dotMultiply.js +1 -1
- package/lib/esm/function/arithmetic/dotPow.js +1 -1
- package/lib/esm/function/arithmetic/exp.js +1 -1
- package/lib/esm/function/arithmetic/expm1.js +1 -1
- package/lib/esm/function/arithmetic/fix.js +1 -1
- package/lib/esm/function/arithmetic/floor.js +1 -1
- package/lib/esm/function/arithmetic/gcd.js +1 -1
- package/lib/esm/function/arithmetic/hypot.js +1 -1
- package/lib/esm/function/arithmetic/lcm.js +1 -1
- package/lib/esm/function/arithmetic/log.js +1 -1
- package/lib/esm/function/arithmetic/log10.js +1 -1
- package/lib/esm/function/arithmetic/log1p.js +1 -1
- package/lib/esm/function/arithmetic/log2.js +1 -1
- package/lib/esm/function/arithmetic/mod.js +1 -1
- package/lib/esm/function/arithmetic/multiply.js +1 -1
- package/lib/esm/function/arithmetic/multiplyScalar.js +1 -1
- package/lib/esm/function/arithmetic/norm.js +3 -3
- package/lib/esm/function/arithmetic/nthRoot.js +2 -2
- package/lib/esm/function/arithmetic/nthRoots.js +1 -1
- package/lib/esm/function/arithmetic/pow.js +10 -8
- package/lib/esm/function/arithmetic/round.js +6 -6
- package/lib/esm/function/arithmetic/sign.js +1 -1
- package/lib/esm/function/arithmetic/sqrt.js +1 -1
- package/lib/esm/function/arithmetic/square.js +1 -1
- package/lib/esm/function/arithmetic/subtract.js +1 -1
- package/lib/esm/function/arithmetic/unaryMinus.js +1 -1
- package/lib/esm/function/arithmetic/unaryPlus.js +1 -1
- package/lib/esm/function/arithmetic/xgcd.js +1 -1
- package/lib/esm/function/bitwise/bitAnd.js +1 -1
- package/lib/esm/function/bitwise/bitNot.js +1 -1
- package/lib/esm/function/bitwise/bitOr.js +1 -1
- package/lib/esm/function/bitwise/bitXor.js +1 -1
- package/lib/esm/function/bitwise/leftShift.js +1 -1
- package/lib/esm/function/bitwise/rightArithShift.js +1 -1
- package/lib/esm/function/bitwise/rightLogShift.js +1 -1
- package/lib/esm/function/combinatorics/bellNumbers.js +1 -1
- package/lib/esm/function/combinatorics/catalan.js +1 -1
- package/lib/esm/function/combinatorics/composition.js +1 -1
- package/lib/esm/function/combinatorics/stirlingS2.js +1 -1
- package/lib/esm/function/complex/arg.js +1 -1
- package/lib/esm/function/complex/conj.js +1 -1
- package/lib/esm/function/complex/im.js +4 -1
- package/lib/esm/function/complex/re.js +4 -1
- package/lib/esm/function/geometry/distance.js +1 -1
- package/lib/esm/function/geometry/intersect.js +1 -1
- package/lib/esm/function/logical/and.js +1 -1
- package/lib/esm/function/logical/not.js +1 -1
- package/lib/esm/function/logical/or.js +1 -1
- package/lib/esm/function/logical/xor.js +1 -1
- package/lib/esm/function/matrix/apply.js +1 -1
- package/lib/esm/function/matrix/column.js +1 -1
- package/lib/esm/function/matrix/concat.js +1 -1
- package/lib/esm/function/matrix/count.js +1 -1
- package/lib/esm/function/matrix/cross.js +1 -1
- package/lib/esm/function/matrix/ctranspose.js +1 -1
- package/lib/esm/function/matrix/det.js +1 -1
- package/lib/esm/function/matrix/diag.js +1 -1
- package/lib/esm/function/matrix/diff.js +1 -1
- package/lib/esm/function/matrix/dot.js +1 -1
- package/lib/esm/function/matrix/eigs/complexEigs.js +586 -0
- package/lib/esm/function/matrix/eigs/realSymetric.js +335 -0
- package/lib/esm/function/matrix/eigs.js +187 -335
- package/lib/esm/function/matrix/expm.js +1 -1
- package/lib/esm/function/matrix/filter.js +1 -1
- package/lib/esm/function/matrix/flatten.js +2 -1
- package/lib/esm/function/matrix/forEach.js +1 -1
- package/lib/esm/function/matrix/getMatrixDataType.js +1 -1
- package/lib/esm/function/matrix/identity.js +1 -1
- package/lib/esm/function/matrix/inv.js +1 -1
- package/lib/esm/function/matrix/kron.js +1 -1
- package/lib/esm/function/matrix/map.js +1 -1
- package/lib/esm/function/matrix/matrixFromColumns.js +93 -0
- package/lib/esm/function/matrix/matrixFromFunction.js +78 -0
- package/lib/esm/function/matrix/matrixFromRows.js +83 -0
- package/lib/esm/function/matrix/ones.js +1 -1
- package/lib/esm/function/matrix/partitionSelect.js +1 -1
- package/lib/esm/function/matrix/range.js +1 -1
- package/lib/esm/function/matrix/reshape.js +1 -1
- package/lib/esm/function/matrix/resize.js +1 -1
- package/lib/esm/function/matrix/rotate.js +1 -1
- package/lib/esm/function/matrix/rotationMatrix.js +1 -1
- package/lib/esm/function/matrix/row.js +1 -1
- package/lib/esm/function/matrix/size.js +1 -1
- package/lib/esm/function/matrix/sort.js +1 -1
- package/lib/esm/function/matrix/sqrtm.js +1 -1
- package/lib/esm/function/matrix/squeeze.js +1 -1
- package/lib/esm/function/matrix/subset.js +1 -1
- package/lib/esm/function/matrix/trace.js +1 -1
- package/lib/esm/function/matrix/transpose.js +1 -1
- package/lib/esm/function/matrix/zeros.js +1 -1
- package/lib/esm/function/probability/combinations.js +1 -1
- package/lib/esm/function/probability/combinationsWithRep.js +1 -1
- package/lib/esm/function/probability/factorial.js +1 -1
- package/lib/esm/function/probability/gamma.js +1 -1
- package/lib/esm/function/probability/kldivergence.js +1 -1
- package/lib/esm/function/probability/multinomial.js +1 -1
- package/lib/esm/function/probability/permutations.js +1 -1
- package/lib/esm/function/probability/pickRandom.js +2 -2
- package/lib/esm/function/probability/random.js +2 -2
- package/lib/esm/function/probability/randomInt.js +1 -1
- package/lib/esm/function/relational/compare.js +2 -2
- package/lib/esm/function/relational/compareNatural.js +1 -1
- package/lib/esm/function/relational/compareText.js +2 -2
- package/lib/esm/function/relational/deepEqual.js +1 -1
- package/lib/esm/function/relational/equal.js +2 -2
- package/lib/esm/function/relational/equalScalar.js +2 -2
- package/lib/esm/function/relational/equalText.js +1 -1
- package/lib/esm/function/relational/larger.js +2 -2
- package/lib/esm/function/relational/largerEq.js +2 -2
- package/lib/esm/function/relational/smaller.js +2 -2
- package/lib/esm/function/relational/smallerEq.js +2 -2
- package/lib/esm/function/relational/unequal.js +2 -2
- package/lib/esm/function/set/setCartesian.js +1 -1
- package/lib/esm/function/set/setDifference.js +1 -1
- package/lib/esm/function/set/setDistinct.js +1 -1
- package/lib/esm/function/set/setIntersect.js +1 -1
- package/lib/esm/function/set/setIsSubset.js +1 -1
- package/lib/esm/function/set/setMultiplicity.js +1 -1
- package/lib/esm/function/set/setPowerset.js +1 -1
- package/lib/esm/function/set/setSize.js +1 -1
- package/lib/esm/function/set/setSymDifference.js +1 -1
- package/lib/esm/function/set/setUnion.js +1 -1
- package/lib/esm/function/special/erf.js +1 -1
- package/lib/esm/function/statistics/mad.js +1 -1
- package/lib/esm/function/statistics/max.js +1 -1
- package/lib/esm/function/statistics/mean.js +1 -1
- package/lib/esm/function/statistics/median.js +1 -1
- package/lib/esm/function/statistics/min.js +1 -1
- package/lib/esm/function/statistics/mode.js +1 -1
- package/lib/esm/function/statistics/prod.js +1 -1
- package/lib/esm/function/statistics/quantileSeq.js +1 -1
- package/lib/esm/function/statistics/std.js +1 -1
- package/lib/esm/function/statistics/sum.js +1 -1
- package/lib/esm/function/statistics/variance.js +1 -1
- package/lib/esm/function/string/bin.js +1 -1
- package/lib/esm/function/string/format.js +1 -1
- package/lib/esm/function/string/hex.js +1 -1
- package/lib/esm/function/string/oct.js +1 -1
- package/lib/esm/function/string/print.js +1 -1
- package/lib/esm/function/trigonometry/acos.js +1 -1
- package/lib/esm/function/trigonometry/acosh.js +1 -1
- package/lib/esm/function/trigonometry/acot.js +1 -1
- package/lib/esm/function/trigonometry/acoth.js +1 -1
- package/lib/esm/function/trigonometry/acsc.js +1 -1
- package/lib/esm/function/trigonometry/acsch.js +1 -1
- package/lib/esm/function/trigonometry/asec.js +1 -1
- package/lib/esm/function/trigonometry/asech.js +1 -1
- package/lib/esm/function/trigonometry/asin.js +1 -1
- package/lib/esm/function/trigonometry/asinh.js +1 -1
- package/lib/esm/function/trigonometry/atan.js +1 -1
- package/lib/esm/function/trigonometry/atan2.js +1 -1
- package/lib/esm/function/trigonometry/atanh.js +1 -1
- package/lib/esm/function/trigonometry/cos.js +1 -1
- package/lib/esm/function/trigonometry/cosh.js +1 -1
- package/lib/esm/function/trigonometry/cot.js +1 -1
- package/lib/esm/function/trigonometry/coth.js +1 -1
- package/lib/esm/function/trigonometry/csc.js +1 -1
- package/lib/esm/function/trigonometry/csch.js +1 -1
- package/lib/esm/function/trigonometry/sec.js +1 -1
- package/lib/esm/function/trigonometry/sech.js +1 -1
- package/lib/esm/function/trigonometry/sin.js +1 -1
- package/lib/esm/function/trigonometry/sinh.js +1 -1
- package/lib/esm/function/trigonometry/tan.js +1 -1
- package/lib/esm/function/trigonometry/tanh.js +1 -1
- package/lib/esm/function/unit/to.js +1 -1
- package/lib/esm/function/utils/clone.js +1 -1
- package/lib/esm/function/utils/hasNumericValue.js +1 -1
- package/lib/esm/function/utils/isInteger.js +1 -1
- package/lib/esm/function/utils/isNaN.js +1 -1
- package/lib/esm/function/utils/isNegative.js +1 -1
- package/lib/esm/function/utils/isNumeric.js +1 -1
- package/lib/esm/function/utils/isPositive.js +1 -1
- package/lib/esm/function/utils/isPrime.js +66 -4
- package/lib/esm/function/utils/isZero.js +1 -1
- package/lib/esm/function/utils/numeric.js +1 -1
- package/lib/esm/function/utils/typeOf.js +1 -1
- package/lib/esm/json/reviver.js +1 -1
- package/lib/esm/type/bignumber/BigNumber.js +1 -1
- package/lib/esm/type/bignumber/function/bignumber.js +5 -5
- package/lib/esm/type/boolean.js +1 -1
- package/lib/esm/type/chain/Chain.js +1 -1
- package/lib/esm/type/chain/function/chain.js +1 -1
- package/lib/esm/type/complex/function/complex.js +1 -1
- package/lib/esm/type/fraction/function/fraction.js +1 -1
- package/lib/esm/type/matrix/DenseMatrix.js +75 -1
- package/lib/esm/type/matrix/FibonacciHeap.js +1 -1
- package/lib/esm/type/matrix/ImmutableDenseMatrix.js +1 -1
- package/lib/esm/type/matrix/Matrix.js +10 -0
- package/lib/esm/type/matrix/MatrixIndex.js +1 -1
- package/lib/esm/type/matrix/Spa.js +1 -1
- package/lib/esm/type/matrix/SparseMatrix.js +37 -3
- package/lib/esm/type/matrix/function/index.js +1 -1
- package/lib/esm/type/matrix/function/matrix.js +3 -2
- package/lib/esm/type/matrix/function/sparse.js +1 -1
- package/lib/esm/type/matrix/utils/algorithm01.js +1 -1
- package/lib/esm/type/matrix/utils/algorithm02.js +1 -1
- package/lib/esm/type/matrix/utils/algorithm03.js +1 -1
- package/lib/esm/type/matrix/utils/algorithm04.js +1 -1
- package/lib/esm/type/matrix/utils/algorithm05.js +1 -1
- package/lib/esm/type/matrix/utils/algorithm06.js +1 -1
- package/lib/esm/type/matrix/utils/algorithm07.js +1 -1
- package/lib/esm/type/matrix/utils/algorithm08.js +1 -1
- package/lib/esm/type/matrix/utils/algorithm09.js +1 -1
- package/lib/esm/type/matrix/utils/algorithm10.js +1 -1
- package/lib/esm/type/matrix/utils/algorithm11.js +1 -1
- package/lib/esm/type/matrix/utils/algorithm12.js +1 -1
- package/lib/esm/type/matrix/utils/algorithm13.js +1 -1
- package/lib/esm/type/matrix/utils/algorithm14.js +1 -1
- package/lib/esm/type/number.js +64 -6
- package/lib/esm/type/string.js +1 -1
- package/lib/esm/type/unit/Unit.js +4 -5
- package/lib/esm/type/unit/function/createUnit.js +1 -1
- package/lib/esm/type/unit/function/splitUnit.js +1 -1
- package/lib/esm/type/unit/function/unit.js +1 -1
- package/lib/esm/type/unit/physicalConstants.js +2 -2
- package/lib/esm/utils/array.js +1 -1
- package/lib/esm/utils/customs.js +10 -0
- package/lib/esm/utils/map.js +135 -0
- package/lib/esm/utils/scope.js +26 -0
- package/lib/esm/utils/snapshot.js +3 -4
- package/lib/esm/version.js +1 -1
- package/package.json +22 -13
package/HISTORY.md
CHANGED
@@ -1,6 +1,52 @@
|
|
1
1
|
# History
|
2
2
|
|
3
|
-
#
|
3
|
+
# 2021-05-16, version 9.4.0
|
4
|
+
|
5
|
+
- Implemented support to use objects with a `Map` interface as scope,
|
6
|
+
see #2143, #2166. Thanks @jhugman.
|
7
|
+
- Extend `eigs` to support general complex matrices, see #1741. Thanks @m93a.
|
8
|
+
- DenseMatrix and SparseMatrix are now iterable, see #1184. Thanks @m93a.
|
9
|
+
- Implemented utility functions `matrixFromRows`, `matrixFromColumns`, and
|
10
|
+
`matrixFromFunction`, see #2155, #2153. Thanks @m93a.
|
11
|
+
- Added TypeScript definitions to the project, making it redundant to install
|
12
|
+
`@types/mathjs`, and making it easier to improve the definitions. See #2187,
|
13
|
+
#2192. Thanks @CatsMiaow.
|
14
|
+
- Upgraded dependencies
|
15
|
+
- `complex.js@2.0.13` (fixing #2211). Thanks @infusion
|
16
|
+
- `fraction.js@4.1.0` (`pow` now supporting rational exponents).
|
17
|
+
- Fix #2174: function `pickRandom` having no name. Thanks @HK-SHAO.
|
18
|
+
- Fix #2019: VSCode auto import keeps adding import { null } from 'mathjs'.
|
19
|
+
- Fix #2185: Fix TypeScript definition of unit division, which can also return
|
20
|
+
a number.
|
21
|
+
- Fix #2123: add type definitions for functions `row` and `column`.
|
22
|
+
- Fix some files not exposed in the package, see #2213. Thanks @javiermarinros.
|
23
|
+
|
24
|
+
|
25
|
+
# 2021-04-12, version 9.3.2
|
26
|
+
|
27
|
+
- Fix #2169: mathjs requesting `@babel/runtime` dependency.
|
28
|
+
Regression introduced in `v9.3.1`.
|
29
|
+
|
30
|
+
|
31
|
+
# 2021-04-10, version 9.3.1
|
32
|
+
|
33
|
+
- Fix #2133: strongly improved the performance of `isPrime`, see #2139.
|
34
|
+
Thanks @Yaffle.
|
35
|
+
- Fix #2150: give a clear error "Error: Undefined function ..." instead when
|
36
|
+
evaluating a non-existing function.
|
37
|
+
- Fix #660: expose internal functions `FunctionNode.onUndefinedFunction(name)`
|
38
|
+
and `SymbolNode.onUndefinedSymbol(name)`, allowing to override the behavior.
|
39
|
+
By default, an Error is thrown.
|
40
|
+
|
41
|
+
|
42
|
+
# 2021-03-10, version 9.3.0
|
43
|
+
|
44
|
+
- Implemented support for parsing non decimal numbers with radix point,
|
45
|
+
see #2122, #2121. Thanks @clnhlzmn.
|
46
|
+
- Fix #2128: typo in docs of `luSolveAll` and `usolveAll`.
|
47
|
+
|
48
|
+
|
49
|
+
# 2021-02-03, version 9.2.0
|
4
50
|
|
5
51
|
- Implemented function `count` to count the total elements in a matrix,
|
6
52
|
see #2085. Thanks @Josef37.
|
package/README.md
CHANGED
@@ -10,7 +10,8 @@ Math.js is an extensive math library for JavaScript and Node.js. It features a f
|
|
10
10
|
[![Maintenance](https://img.shields.io/maintenance/yes/2021.svg)](https://github.com/josdejong/mathjs/graphs/commit-activity)
|
11
11
|
[![License](https://img.shields.io/github/license/josdejong/mathjs.svg)](https://github.com/josdejong/mathjs/blob/master/LICENSE)
|
12
12
|
[![FOSSA Status](https://app.fossa.io/api/projects/git%2Bgithub.com%2Fjosdejong%2Fmathjs.svg?type=shield)](https://app.fossa.io/projects/git%2Bgithub.com%2Fjosdejong%2Fmathjs?ref=badge_shield)
|
13
|
-
[![
|
13
|
+
[![Codecov](https://codecov.io/gh/josdejong/mathjs/branch/develop/graph/badge.svg)](https://codecov.io/gh/josdejong/mathjs)
|
14
|
+
[![Github Sponsor](https://camo.githubusercontent.com/7d9333b097b2f54a8957d126ab82937811489c9b75c3850f609985cf94cd29fe/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f2532302d53706f6e736f722532306d652532306f6e2532304769744875622d6f72616e6765)](https://github.com/sponsors/josdejong)
|
14
15
|
|
15
16
|
## Features
|
16
17
|
|
@@ -102,7 +103,7 @@ Then, the project can be build by executing the build script via npm:
|
|
102
103
|
|
103
104
|
npm run build
|
104
105
|
|
105
|
-
This will build ESM output, CommonJS output, and the bundle math.js
|
106
|
+
This will build ESM output, CommonJS output, and the bundle math.js
|
106
107
|
from the source files and put them in the folder lib.
|
107
108
|
|
108
109
|
|
@@ -116,8 +117,8 @@ The code of `mathjs` is written in ES modules, and requires all files to have a
|
|
116
117
|
|
117
118
|
### Architecture
|
118
119
|
|
119
|
-
What mathjs tries to achieve is to offer an environment where you can do calculations with mixed data types,
|
120
|
-
like multiplying a regular `number` with a `Complex` number or a `BigNumber`, and work with all of those in matrices.
|
120
|
+
What mathjs tries to achieve is to offer an environment where you can do calculations with mixed data types,
|
121
|
+
like multiplying a regular `number` with a `Complex` number or a `BigNumber`, and work with all of those in matrices.
|
121
122
|
Mathjs also allows to add a new data type, like say `BigInt`, with little effort.
|
122
123
|
|
123
124
|
The solution that mathjs uses has two main ingredients:
|
@@ -130,7 +131,7 @@ At the lowest level, mathjs has immutable factory functions which create immutab
|
|
130
131
|
|
131
132
|
### Build scripts
|
132
133
|
|
133
|
-
The build script currently generates two types of output:
|
134
|
+
The build script currently generates two types of output:
|
134
135
|
|
135
136
|
- **any**, generate entry points to create full versions of all functions
|
136
137
|
- **number**: generating and entry points to create lightweight functions just supporting `number`
|
package/bin/cli.js
CHANGED
@@ -45,9 +45,10 @@
|
|
45
45
|
* the License.
|
46
46
|
*/
|
47
47
|
|
48
|
-
let scope = {}
|
49
48
|
const fs = require('fs')
|
50
49
|
const path = require('path')
|
50
|
+
const { createEmptyMap } = require('../lib/cjs/utils/map.js')
|
51
|
+
let scope = createEmptyMap()
|
51
52
|
|
52
53
|
const PRECISION = 14 // decimals
|
53
54
|
|
@@ -95,11 +96,9 @@ function completer (text) {
|
|
95
96
|
keyword = m[0]
|
96
97
|
|
97
98
|
// scope variables
|
98
|
-
for (const def in scope) {
|
99
|
-
if (
|
100
|
-
|
101
|
-
matches.push(def)
|
102
|
-
}
|
99
|
+
for (const def in scope.keys()) {
|
100
|
+
if (def.indexOf(keyword) === 0) {
|
101
|
+
matches.push(def)
|
103
102
|
}
|
104
103
|
}
|
105
104
|
|
@@ -199,7 +198,7 @@ function runStream (input, output, mode, parenthesis) {
|
|
199
198
|
break
|
200
199
|
case 'clear':
|
201
200
|
// clear memory
|
202
|
-
scope =
|
201
|
+
scope = createEmptyMap()
|
203
202
|
console.log('memory cleared')
|
204
203
|
|
205
204
|
// get next input
|
@@ -231,16 +230,17 @@ function runStream (input, output, mode, parenthesis) {
|
|
231
230
|
if (math.isAssignmentNode(node)) {
|
232
231
|
const name = findSymbolName(node)
|
233
232
|
if (name !== null) {
|
234
|
-
|
235
|
-
|
233
|
+
const value = scope.get(name)
|
234
|
+
scope.set('ans', value)
|
235
|
+
console.log(name + ' = ' + format(value))
|
236
236
|
} else {
|
237
|
-
scope.ans
|
237
|
+
scope.set('ans', res)
|
238
238
|
console.log(format(res))
|
239
239
|
}
|
240
240
|
} else if (math.isHelp(res)) {
|
241
241
|
console.log(res.toString())
|
242
242
|
} else {
|
243
|
-
scope.ans
|
243
|
+
scope.set('ans', res)
|
244
244
|
console.log(format(res))
|
245
245
|
}
|
246
246
|
}
|
@@ -184,6 +184,21 @@ const c = [[[0, 1, 2], [3, 4, 5]], [[6, 7, 8], [9, 10, 11]]]
|
|
184
184
|
math.size(c) // Array, [2, 2, 3]
|
185
185
|
```
|
186
186
|
|
187
|
+
Note that the dimensions themselves do not have a meaning attached.
|
188
|
+
When creating and printing a two dimensional matrix, the first dimension is
|
189
|
+
normally rendered as the _column_, and the second dimension is rendered as
|
190
|
+
the _row_. For example:
|
191
|
+
|
192
|
+
```js
|
193
|
+
console.table(math.zeros([2, 4]))
|
194
|
+
// 0 0 0 0
|
195
|
+
// 0 0 0 0
|
196
|
+
```
|
197
|
+
|
198
|
+
If you have a matrix where the first dimension means `x` and the second
|
199
|
+
means `y`, this will look confusing since `x` is printed as _column_
|
200
|
+
(vertically) and `y` as _row_ (horizontally).
|
201
|
+
|
187
202
|
|
188
203
|
## Resizing
|
189
204
|
|
@@ -22,8 +22,8 @@ math.evaluate([expr1, expr2, expr3, ...], scope)
|
|
22
22
|
|
23
23
|
Function `evaluate` accepts a single expression or an array with
|
24
24
|
expressions as the first argument and has an optional second argument
|
25
|
-
containing a scope with variables and functions. The scope
|
26
|
-
JavaScript Object. The scope will be used to resolve symbols, and to write
|
25
|
+
containing a scope with variables and functions. The scope can be a regular
|
26
|
+
JavaScript Object, or Map. The scope will be used to resolve symbols, and to write
|
27
27
|
assigned variables or function.
|
28
28
|
|
29
29
|
The following code demonstrates how to evaluate expressions.
|
@@ -70,7 +70,7 @@ const result = code.evaluate([scope]) // evaluate the code with an optional scop
|
|
70
70
|
An expression needs to be compiled only once, after which the
|
71
71
|
expression can be evaluated repeatedly and against different scopes.
|
72
72
|
The optional scope is used to resolve symbols and to write assigned
|
73
|
-
variables or functions. Parameter `scope`
|
73
|
+
variables or functions. Parameter [`scope`](#scope) can be a regular Object, or Map.
|
74
74
|
|
75
75
|
Example usage:
|
76
76
|
|
@@ -107,7 +107,7 @@ The API of nodes is described in detail on the page
|
|
107
107
|
An expression needs to be parsed and compiled only once, after which the
|
108
108
|
expression can be evaluated repeatedly. On evaluation, an optional scope
|
109
109
|
can be provided, which is used to resolve symbols and to write assigned
|
110
|
-
variables or functions. Parameter `scope` is a regular Object.
|
110
|
+
variables or functions. Parameter [`scope`](#scope) is a regular Object or Map.
|
111
111
|
|
112
112
|
Example usage:
|
113
113
|
|
@@ -205,3 +205,20 @@ parser.evaluate('hello("user")') // "hello, user!"
|
|
205
205
|
// clear defined functions and variables
|
206
206
|
parser.clear()
|
207
207
|
```
|
208
|
+
|
209
|
+
## Scope
|
210
|
+
|
211
|
+
The scope is a data-structure used to store and lookup variables and functions defined and used by expressions.
|
212
|
+
|
213
|
+
It is passed to mathjs via calls to [`math.evaluate`](#evaluate) or `simplify`.
|
214
|
+
|
215
|
+
For ease of use, it can be a Plain Javascript Object; for safety it can be a plain `Map` and for flexibility, any object that has
|
216
|
+
the methods `get`/`set`/`has`/`keys`, seen on `Map`.
|
217
|
+
|
218
|
+
Some care is taken to mutate the same object that is passed into mathjs, so they can collect the definitions from mathjs scripts and expressions.
|
219
|
+
|
220
|
+
`evaluate` will fail if the expression uses a blacklisted symbol, preventing mathjs expressions to escape into Javascript. This is enforced by access to the scope.
|
221
|
+
|
222
|
+
For less reliance on this blacklist, scope can also be a `Map`, which allows mathjs expressions to define variables and functions of any name.
|
223
|
+
|
224
|
+
For more, see [examples of custom scopes][../../examples/advanced/custom_scope_objects.js.html].
|
@@ -299,6 +299,13 @@ math.evaluate('0xffffffffi32') // -1
|
|
299
299
|
math.evaluate('0xfffffffffi32') // SyntaxError: String "0xfffffffff" is out of range
|
300
300
|
```
|
301
301
|
|
302
|
+
Non decimal numbers can include a radix point:
|
303
|
+
```js
|
304
|
+
math.evaluate('0b1.1') // 1.5
|
305
|
+
math.evaluate('0o1.4') // 1.5
|
306
|
+
math.evaluate('0x1.8') // 1.5
|
307
|
+
```
|
308
|
+
|
302
309
|
Numbers can be formatted as binary, octal, and hex strings using the `notation` option of the `format` function:
|
303
310
|
|
304
311
|
```js
|
@@ -2,60 +2,16 @@
|
|
2
2
|
|
3
3
|
# Function complex
|
4
4
|
|
5
|
-
Create a complex value or convert a value to a complex value.
|
6
5
|
|
7
6
|
|
8
|
-
## Syntax
|
9
|
-
|
10
|
-
```js
|
11
|
-
math.complex() // creates a complex value with zero
|
12
|
-
// as real and imaginary part.
|
13
|
-
math.complex(re : number, im : string) // creates a complex value with provided
|
14
|
-
// values for real and imaginary part.
|
15
|
-
math.complex(re : number) // creates a complex value with provided
|
16
|
-
// real value and zero imaginary part.
|
17
|
-
math.complex(complex : Complex) // clones the provided complex value.
|
18
|
-
math.complex(arg : string) // parses a string into a complex value.
|
19
|
-
math.complex(array : Array) // converts the elements of the array
|
20
|
-
// or matrix element wise into a
|
21
|
-
// complex value.
|
22
|
-
math.complex({re: number, im: number}) // creates a complex value with provided
|
23
|
-
// values for real an imaginary part.
|
24
|
-
math.complex({r: number, phi: number}) // creates a complex value with provided
|
25
|
-
// polar coordinates
|
26
|
-
```
|
27
7
|
|
28
8
|
### Parameters
|
29
9
|
|
30
10
|
Parameter | Type | Description
|
31
11
|
--------- | ---- | -----------
|
32
|
-
`
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
---- | -----------
|
38
|
-
Complex | Array | Matrix | Returns a complex value
|
39
|
-
|
40
|
-
|
41
|
-
## Examples
|
42
|
-
|
43
|
-
```js
|
44
|
-
const a = math.complex(3, -4) // a = Complex 3 - 4i
|
45
|
-
a.re = 5 // a = Complex 5 - 4i
|
46
|
-
const i = a.im // Number -4
|
47
|
-
const b = math.complex('2 + 6i') // Complex 2 + 6i
|
48
|
-
const c = math.complex() // Complex 0 + 0i
|
49
|
-
const d = math.add(a, b) // Complex 5 + 2i
|
50
|
-
```
|
51
|
-
|
52
|
-
|
53
|
-
## See also
|
12
|
+
`arr` | number[][] | the matrix to find eigenvalues of
|
13
|
+
`N` | number | size of the matrix
|
14
|
+
`prec` | number | BigNumber | precision, anything lower will be considered zero
|
15
|
+
`type` | 'number' | 'BigNumber' | 'Complex' |
|
16
|
+
`findVectors` | boolean | should we find eigenvectors?
|
54
17
|
|
55
|
-
[bignumber](bignumber.md),
|
56
|
-
[boolean](boolean.md),
|
57
|
-
[index](index.md),
|
58
|
-
[matrix](matrix.md),
|
59
|
-
[number](number.md),
|
60
|
-
[string](string.md),
|
61
|
-
[unit](unit.md)
|
@@ -2,19 +2,17 @@
|
|
2
2
|
|
3
3
|
# Function eigs
|
4
4
|
|
5
|
-
Compute
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
eigenvalues are of 'number' type. For 'bignumber' the eigenvalues are of ''bignumber' type.
|
11
|
-
Eigenvectors are always of 'number' type.
|
5
|
+
Compute eigenvalues and eigenvectors of a matrix. The eigenvalues are sorted by their absolute value, ascending.
|
6
|
+
An eigenvalue with multiplicity k will be listed k times. The eigenvectors are returned as columns of a matrix –
|
7
|
+
the eigenvector that belongs to the j-th eigenvalue in the list (eg. `values[j]`) is the j-th column (eg. `column(vectors, j)`).
|
8
|
+
If the algorithm fails to converge, it will throw an error – in that case, however, you may still find useful information
|
9
|
+
in `err.values` and `err.vectors`.
|
12
10
|
|
13
11
|
|
14
12
|
## Syntax
|
15
13
|
|
16
14
|
```js
|
17
|
-
math.eigs(x)
|
15
|
+
math.eigs(x, [prec])
|
18
16
|
```
|
19
17
|
|
20
18
|
### Parameters
|
@@ -22,23 +20,25 @@ math.eigs(x)
|
|
22
20
|
Parameter | Type | Description
|
23
21
|
--------- | ---- | -----------
|
24
22
|
`x` | Array | Matrix | Matrix to be diagonalized
|
23
|
+
`prec` | number | BigNumber | Precision, default value: 1e-15
|
25
24
|
|
26
25
|
### Returns
|
27
26
|
|
28
27
|
Type | Description
|
29
28
|
---- | -----------
|
30
|
-
{values: Array, vectors: Array
|
29
|
+
{values: Array | Matrix, vectors: Array | Matrix} | Object containing an array of eigenvalues and a matrix with eigenvectors as columns.
|
31
30
|
|
32
31
|
|
33
32
|
## Examples
|
34
33
|
|
35
34
|
```js
|
35
|
+
const { eigs, multiply, column, transpose } = math
|
36
36
|
const H = [[5, 2.3], [2.3, 1]]
|
37
|
-
const ans =
|
37
|
+
const ans = eigs(H) // returns {values: [E1,E2...sorted], vectors: [v1,v2.... corresponding vectors as columns]}
|
38
38
|
const E = ans.values
|
39
39
|
const U = ans.vectors
|
40
|
-
|
41
|
-
const UTxHxU =
|
40
|
+
multiply(H, column(U, 0)) // returns multiply(E[0], column(U, 0))
|
41
|
+
const UTxHxU = multiply(transpose(U), H, U) // diagonalizes H
|
42
42
|
E[0] == UTxHxU[0][0] // returns true
|
43
43
|
```
|
44
44
|
|
@@ -10,7 +10,7 @@ Finds all solutions of a linear equation system by forwards substitution. Matrix
|
|
10
10
|
## Syntax
|
11
11
|
|
12
12
|
```js
|
13
|
-
math.
|
13
|
+
math.lsolveAll(L, b)
|
14
14
|
```
|
15
15
|
|
16
16
|
### Parameters
|
@@ -32,7 +32,7 @@ DenseMatrix[] | Array[] | An array of affine-independent column vectors (x)
|
|
32
32
|
```js
|
33
33
|
const a = [[-2, 3], [2, 1]]
|
34
34
|
const b = [11, 9]
|
35
|
-
const x =
|
35
|
+
const x = lsolveAll(a, b) // [ [[-5.5], [20]] ]
|
36
36
|
```
|
37
37
|
|
38
38
|
|
@@ -0,0 +1,43 @@
|
|
1
|
+
<!-- Note: This file is automatically generated from source code comments. Changes made in this file will be overridden. -->
|
2
|
+
|
3
|
+
# Function matrixFromColumns
|
4
|
+
|
5
|
+
Create a dense matrix from vectors as individual columns.
|
6
|
+
If you pass row vectors, they will be transposed (but not conjugated!)
|
7
|
+
|
8
|
+
|
9
|
+
## Syntax
|
10
|
+
|
11
|
+
```js
|
12
|
+
math.matrixFromColumns(...arr)
|
13
|
+
math.matrixFromColumns(col1, col2)
|
14
|
+
math.matrixFromColumns(col1, col2, col3)
|
15
|
+
```
|
16
|
+
|
17
|
+
### Parameters
|
18
|
+
|
19
|
+
Parameter | Type | Description
|
20
|
+
--------- | ---- | -----------
|
21
|
+
`cols` | ... Array | Matrix | Multiple columns
|
22
|
+
|
23
|
+
### Returns
|
24
|
+
|
25
|
+
Type | Description
|
26
|
+
---- | -----------
|
27
|
+
number[][] | Matrix | if at least one of the arguments is an array, an array will be returned
|
28
|
+
|
29
|
+
|
30
|
+
## Examples
|
31
|
+
|
32
|
+
```js
|
33
|
+
math.matrixFromColumns([1, 2, 3], [[4],[5],[6]])
|
34
|
+
math.matrixFromColumns(...vectors)
|
35
|
+
```
|
36
|
+
|
37
|
+
|
38
|
+
## See also
|
39
|
+
|
40
|
+
[matrix](matrix.md),
|
41
|
+
[matrixFromRows](matrixFromRows.md),
|
42
|
+
[matrixFromFunction](matrixFromFunction.md),
|
43
|
+
[zeros](zeros.md)
|
@@ -0,0 +1,48 @@
|
|
1
|
+
<!-- Note: This file is automatically generated from source code comments. Changes made in this file will be overridden. -->
|
2
|
+
|
3
|
+
# Function matrixFromFunction
|
4
|
+
|
5
|
+
Create a matrix by evaluating a generating function at each index.
|
6
|
+
The simplest overload returns a multi-dimensional array as long as `size` is an array.
|
7
|
+
Passing `size` as a Matrix or specifying a `format` will result in returning a Matrix.
|
8
|
+
|
9
|
+
|
10
|
+
## Syntax
|
11
|
+
|
12
|
+
```js
|
13
|
+
math.matrixFromFunction(size, fn)
|
14
|
+
math.matrixFromFunction(size, fn, format)
|
15
|
+
math.matrixFromFunction(size, fn, format, datatype)
|
16
|
+
math.matrixFromFunction(size, format, fn)
|
17
|
+
math.matrixFromFunction(size, format, datatype, fn)
|
18
|
+
```
|
19
|
+
|
20
|
+
### Parameters
|
21
|
+
|
22
|
+
Parameter | Type | Description
|
23
|
+
--------- | ---- | -----------
|
24
|
+
`size` | Array | Matrix | The size of the matrix to be created
|
25
|
+
`fn` | function | Callback function invoked for every entry in the matrix
|
26
|
+
`format` | string | The Matrix storage format, either `'dense'` or `'sparse'`
|
27
|
+
`datatype` | string | Type of the values
|
28
|
+
|
29
|
+
### Returns
|
30
|
+
|
31
|
+
Type | Description
|
32
|
+
---- | -----------
|
33
|
+
Array | Matrix | Returns the created matrix
|
34
|
+
|
35
|
+
|
36
|
+
## Examples
|
37
|
+
|
38
|
+
```js
|
39
|
+
math.matrixFromFunction([3,3], i => i[0] - i[1]) // an antisymmetric matrix
|
40
|
+
math.matrixFromFunction([100, 100], 'sparse', i => i[0] - i[1] === 1 ? 4 : 0) // a sparse subdiagonal matrix
|
41
|
+
math.matrixFromFunction([5], i => math.random()) // a random vector
|
42
|
+
```
|
43
|
+
|
44
|
+
|
45
|
+
## See also
|
46
|
+
|
47
|
+
[matrix](matrix.md),
|
48
|
+
[zeros](zeros.md)
|
@@ -0,0 +1,43 @@
|
|
1
|
+
<!-- Note: This file is automatically generated from source code comments. Changes made in this file will be overridden. -->
|
2
|
+
|
3
|
+
# Function matrixFromRows
|
4
|
+
|
5
|
+
Create a dense matrix from vectors as individual rows.
|
6
|
+
If you pass column vectors, they will be transposed (but not conjugated!)
|
7
|
+
|
8
|
+
|
9
|
+
## Syntax
|
10
|
+
|
11
|
+
```js
|
12
|
+
math.matrixFromRows(...arr)
|
13
|
+
math.matrixFromRows(row1, row2)
|
14
|
+
math.matrixFromRows(row1, row2, row3)
|
15
|
+
```
|
16
|
+
|
17
|
+
### Parameters
|
18
|
+
|
19
|
+
Parameter | Type | Description
|
20
|
+
--------- | ---- | -----------
|
21
|
+
`rows` | ... Array | Matrix | Multiple rows
|
22
|
+
|
23
|
+
### Returns
|
24
|
+
|
25
|
+
Type | Description
|
26
|
+
---- | -----------
|
27
|
+
number[][] | Matrix | if at least one of the arguments is an array, an array will be returned
|
28
|
+
|
29
|
+
|
30
|
+
## Examples
|
31
|
+
|
32
|
+
```js
|
33
|
+
math.matrixFromRows([1, 2, 3], [[4],[5],[6]])
|
34
|
+
math.matrixFromRows(...vectors)
|
35
|
+
```
|
36
|
+
|
37
|
+
|
38
|
+
## See also
|
39
|
+
|
40
|
+
[matrix](matrix.md),
|
41
|
+
[matrixFromColumns](matrixFromColumns.md),
|
42
|
+
[matrixFromFunction](matrixFromFunction.md),
|
43
|
+
[zeros](zeros.md)
|
@@ -10,7 +10,7 @@ Finds all solutions of a linear equation system by backward substitution. Matrix
|
|
10
10
|
## Syntax
|
11
11
|
|
12
12
|
```js
|
13
|
-
math.
|
13
|
+
math.usolveAll(U, b)
|
14
14
|
```
|
15
15
|
|
16
16
|
### Parameters
|
@@ -32,7 +32,7 @@ DenseMatrix[] | Array[] | An array of affine-independent column vectors (x)
|
|
32
32
|
```js
|
33
33
|
const a = [[-2, 3], [2, 1]]
|
34
34
|
const b = [11, 9]
|
35
|
-
const x =
|
35
|
+
const x = usolveAll(a, b) // [ [[8], [9]] ]
|
36
36
|
```
|
37
37
|
|
38
38
|
|
@@ -15,7 +15,7 @@ Function | Description
|
|
15
15
|
---- | -----------
|
16
16
|
[derivative(expr, variable)](functions/derivative.md) | Takes the derivative of an expression expressed in parser Nodes.
|
17
17
|
[math.lsolve(L, b)](functions/lsolve.md) | Finds one solution of a linear equation system by forwards substitution.
|
18
|
-
[math.
|
18
|
+
[math.lsolveAll(L, b)](functions/lsolveAll.md) | Finds all solutions of a linear equation system by forwards substitution.
|
19
19
|
[math.lup(A)](functions/lup.md) | Calculate the Matrix LU decomposition with partial pivoting.
|
20
20
|
[math.lusolve(A, b)](functions/lusolve.md) | Solves the linear system `A * x = b` where `A` is an [n x n] matrix and `b` is a [n] column vector.
|
21
21
|
[math.qr(A)](functions/qr.md) | Calculate the Matrix QR decomposition.
|
@@ -23,7 +23,7 @@ Function | Description
|
|
23
23
|
[simplify(expr)](functions/simplify.md) | Simplify an expression tree.
|
24
24
|
[math.slu(A, order, threshold)](functions/slu.md) | Calculate the Sparse Matrix LU decomposition with full pivoting.
|
25
25
|
[math.usolve(U, b)](functions/usolve.md) | Finds one solution of a linear equation system by backward substitution.
|
26
|
-
[math.
|
26
|
+
[math.usolveAll(U, b)](functions/usolveAll.md) | Finds all solutions of a linear equation system by backward substitution.
|
27
27
|
|
28
28
|
## Arithmetic functions
|
29
29
|
|
@@ -124,7 +124,7 @@ Function | Description
|
|
124
124
|
[math.diag(X)](functions/diag.md) | Create a diagonal matrix or retrieve the diagonal of a matrix When `x` is a vector, a matrix with vector `x` on the diagonal will be returned.
|
125
125
|
[math.diff(arr)](functions/diff.md) | Create a new matrix or array of the difference between elements of the given array The optional dim parameter lets you specify the dimension to evaluate the difference of If no dimension parameter is passed it is assumed as dimension 0 Dimension is zero-based in javascript and one-based in the parser and can be a number or bignumber Arrays must be 'rectangular' meaning arrays like [1, 2] If something is passed as a matrix it will be returned as a matrix but other than that all matrices are converted to arrays.
|
126
126
|
[math.dot(x, y)](functions/dot.md) | Calculate the dot product of two vectors.
|
127
|
-
[math.eigs(x)](functions/eigs.md) | Compute
|
127
|
+
[math.eigs(x, [prec])](functions/eigs.md) | Compute eigenvalues and eigenvectors of a matrix.
|
128
128
|
[math.expm(x)](functions/expm.md) | Compute the matrix exponential, expm(A) = e^A.
|
129
129
|
[math.filter(x, test)](functions/filter.md) | Filter the items in an array or one dimensional matrix.
|
130
130
|
[math.flatten(x)](functions/flatten.md) | Flatten a multi dimensional matrix into a single dimensional matrix.
|
@@ -134,6 +134,9 @@ Function | Description
|
|
134
134
|
[math.inv(x)](functions/inv.md) | Calculate the inverse of a square matrix.
|
135
135
|
[math.kron(x, y)](functions/kron.md) | Calculates the kronecker product of 2 matrices or vectors.
|
136
136
|
[math.map(x, callback)](functions/map.md) | Create a new matrix or array with the results of the callback function executed on each entry of the matrix/array.
|
137
|
+
[math.matrixFromColumns(...arr)](functions/matrixFromColumns.md) | Create a dense matrix from vectors as individual columns.
|
138
|
+
[math.matrixFromFunction(size, fn)](functions/matrixFromFunction.md) | Create a matrix by evaluating a generating function at each index.
|
139
|
+
[math.matrixFromRows(...arr)](functions/matrixFromRows.md) | Create a dense matrix from vectors as individual rows.
|
137
140
|
[math.ones(m, n, p, ...)](functions/ones.md) | Create a matrix filled with ones.
|
138
141
|
[math.partitionSelect(x, k)](functions/partitionSelect.md) | Partition-based selection of an array or 1D matrix.
|
139
142
|
[math.range(start, end [, step])](functions/range.md) | Create an array from a range.
|