pimath 0.0.26 → 0.0.30
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/dev/index.html +15 -7
- package/dev/pi.js +251 -98
- package/dev/pi.js.map +1 -1
- package/dist/pi.js +1 -1
- package/dist/pi.js.map +1 -1
- package/docs/assets/search.js +1 -1
- package/docs/classes/algebra.Equation.html +9 -9
- package/docs/classes/algebra.LinearSystem.html +1 -1
- package/docs/classes/algebra.Logicalset.html +2 -2
- package/docs/classes/algebra.Monom.html +45 -44
- package/docs/classes/algebra.Polynom.html +9 -9
- package/docs/classes/algebra.Rational.html +2 -2
- package/docs/classes/coefficients.Fraction.html +6 -6
- package/docs/classes/coefficients.Nthroot.html +1 -1
- package/docs/classes/geometry.Circle.html +1 -1
- package/docs/classes/geometry.Line.html +2 -2
- package/docs/classes/geometry.Point.html +1 -1
- package/docs/classes/geometry.Triangle.html +5 -5
- package/docs/classes/geometry.Vector.html +1 -1
- package/docs/classes/numeric.Numeric.html +5 -5
- package/docs/classes/shutingyard.Shutingyard.html +5 -5
- package/docs/interfaces/geometry.remarquableLines.html +1 -1
- package/docs/modules/algebra.html +1 -1
- package/docs/modules/random.Random.html +1 -1
- package/docs/modules/random.html +1 -1
- package/esm/main.js +2 -0
- package/esm/main.js.map +1 -1
- package/esm/maths/algebra/logicalset.js +1 -1
- package/esm/maths/algebra/logicalset.js.map +1 -1
- package/esm/maths/algebra/monom.d.ts +2 -1
- package/esm/maths/algebra/monom.js +7 -1
- package/esm/maths/algebra/monom.js.map +1 -1
- package/esm/maths/algebra/rational.d.ts +1 -1
- package/esm/maths/algebra/rational.js +2 -2
- package/esm/maths/algebra/rational.js.map +1 -1
- package/esm/maths/geometry/line.d.ts +1 -0
- package/esm/maths/geometry/line.js +3 -0
- package/esm/maths/geometry/line.js.map +1 -1
- package/esm/maths/geometry/vector.js +7 -2
- package/esm/maths/geometry/vector.js.map +1 -1
- package/esm/maths/numexp.d.ts +16 -0
- package/esm/maths/numexp.js +119 -0
- package/esm/maths/numexp.js.map +1 -0
- package/esm/maths/shutingyard.d.ts +21 -4
- package/esm/maths/shutingyard.js +76 -76
- package/esm/maths/shutingyard.js.map +1 -1
- package/package.json +1 -1
- package/src/main.ts +2 -0
- package/src/maths/algebra/logicalset.ts +2 -2
- package/src/maths/algebra/monom.ts +35 -22
- package/src/maths/algebra/rational.ts +1 -1
- package/src/maths/geometry/line.ts +3 -0
- package/src/maths/geometry/vector.ts +10 -2
- package/src/maths/numexp.ts +138 -0
- package/src/maths/shutingyard.ts +94 -97
- package/tests/algebra/monom.test.ts +1 -1
- package/tests/numexp.test.ts +27 -0
- package/tests/shutingyard.test.ts +3 -3
- package/tsconfig.json +0 -1
- package/esm/docs.d.ts +0 -6
- package/esm/docs.js +0 -7
- package/esm/docs.js.map +0 -1
- package/esm/maths/random/random.d.ts +0 -13
- package/esm/maths/random/random.js +0 -27
- package/esm/maths/random/random.js.map +0 -1
package/docs/modules/random.html
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
<!DOCTYPE html><html class="default"><head><meta charSet="utf-8"/><meta http-equiv="x-ua-compatible" content="IE=edge"/><title>random | pimath</title><meta name="description" content="Documentation for pimath"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="../assets/style.css"/><link rel="stylesheet" href="../assets/highlight.css"/><script async src="../assets/search.js" id="search-script"></script><link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/katex@0.15.1/dist/katex.min.css" integrity="sha384-R4558gYOUz8mP9YWpZJjofhk+zx0AS11p36HnD2ZKj/6JR5z27gSSULCNHIRReVs" crossorigin="anonymous"><script defer src="https://cdn.jsdelivr.net/npm/katex@0.15.1/dist/katex.min.js" integrity="sha384-z1fJDqw8ZApjGO3/unPWUPsIymfsJmyrDVWC8Tv/a1HeOtGmkwNd/7xUS0Xcnvsx" crossorigin="anonymous"></script><script defer src="https://cdn.jsdelivr.net/npm/katex@0.15.1/dist/contrib/auto-render.min.js" integrity="sha384-+XBljXPPiv+OzfbB3cVmLHf4hdUFHlWNZN5spNQ7rmHTXpd7WvJum6fIACpNNfIR" crossorigin="anonymous" onload="renderMathInElement(document.body);"></script></link>}); }</head><body><script>document.body.classList.add(localStorage.getItem("tsd-theme") || "os")</script><header><div class="tsd-page-toolbar"><div class="container"><div class="table-wrap"><div class="table-cell" id="tsd-search" data-base=".."><div class="field"><label for="tsd-search-field" class="tsd-widget search no-caption">Search</label><input type="text" id="tsd-search-field"/></div><ul class="results"><li class="state loading">Preparing search index...</li><li class="state failure">The search index is not available</li></ul><a href="../index.html" class="title">pimath</a></div><div class="table-cell" id="tsd-widgets"><div id="tsd-filter"><a href="#" class="tsd-widget options no-caption" data-toggle="options">Options</a><div class="tsd-filter-group"><div class="tsd-select" id="tsd-filter-visibility"><span class="tsd-select-label">All</span><ul class="tsd-select-list"><li data-value="public">Public</li><li data-value="protected">Public/Protected</li><li data-value="private" class="selected">All</li></ul></div> <input type="checkbox" id="tsd-filter-inherited" checked/><label class="tsd-widget" for="tsd-filter-inherited">Inherited</label><input type="checkbox" id="tsd-filter-externals" checked/><label class="tsd-widget" for="tsd-filter-externals">Externals</label></div></div><a href="#" class="tsd-widget menu no-caption" data-toggle="menu">Menu</a></div></div></div></div><div class="tsd-page-title"><div class="container"><ul class="tsd-breadcrumb"><li><a href="../modules.html">pimath</a></li><li><a href="random.html">random</a></li></ul><h1>Module random</h1></div></div></header><div class="container container-main"><div class="row"><div class="col-8 col-content"><section class="tsd-panel-group tsd-index-group"><h2>Index</h2><section class="tsd-panel tsd-index-panel"><div class="tsd-index-content"><section class="tsd-index-section "><h3>Namespaces</h3><ul class="tsd-index-list"><li class="tsd-kind-namespace tsd-parent-kind-module"><a href="random.Random.html" class="tsd-kind-icon">Random</a></li></ul></section><section class="tsd-index-section "><h3>Type aliases</h3><ul class="tsd-index-list"><li class="tsd-kind-type-alias tsd-parent-kind-module"><a href="random.html#randomCoefficientConfig" class="tsd-kind-icon">random<wbr/>Coefficient<wbr/>Config</a></li><li class="tsd-kind-type-alias tsd-parent-kind-module"><a href="random.html#randomMonomConfig" class="tsd-kind-icon">random<wbr/>Monom<wbr/>Config</a></li><li class="tsd-kind-type-alias tsd-parent-kind-module"><a href="random.html#randomPolynomConfig" class="tsd-kind-icon">random<wbr/>Polynom<wbr/>Config</a></li></ul></section></div></section></section><section class="tsd-panel-group tsd-member-group "><h2>Type aliases</h2><section class="tsd-panel tsd-member tsd-kind-type-alias tsd-parent-kind-module"><a id="randomCoefficientConfig" class="tsd-anchor"></a><h3>random<wbr/>Coefficient<wbr/>Config</h3><div class="tsd-signature tsd-kind-icon">random<wbr/>Coefficient<wbr/>Config<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">{ </span>max<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">; </span>natural<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">; </span>negative<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">; </span>reduced<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">; </span>zero<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol"> }</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/basilgass/PI/blob/95552d7/src/maths/random/rndTypes.ts#L1">random/rndTypes.ts:1</a></li></ul></aside><div class="tsd-type-declaration"><h4>Type declaration</h4><ul class="tsd-parameters"><li class="tsd-parameter"><h5><span class="tsd-flag ts-flagOptional">Optional</span> max<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">number</span></h5></li><li class="tsd-parameter"><h5><span class="tsd-flag ts-flagOptional">Optional</span> natural<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">boolean</span></h5></li><li class="tsd-parameter"><h5><span class="tsd-flag ts-flagOptional">Optional</span> negative<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">boolean</span></h5></li><li class="tsd-parameter"><h5><span class="tsd-flag ts-flagOptional">Optional</span> reduced<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">boolean</span></h5></li><li class="tsd-parameter"><h5><span class="tsd-flag ts-flagOptional">Optional</span> zero<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">boolean</span></h5></li></ul></div></section><section class="tsd-panel tsd-member tsd-kind-type-alias tsd-parent-kind-module"><a id="randomMonomConfig" class="tsd-anchor"></a><h3>random<wbr/>Monom<wbr/>Config</h3><div class="tsd-signature tsd-kind-icon">random<wbr/>Monom<wbr/>Config<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">{ </span>degree<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">; </span>fraction<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol"> | </span><a href="random.html#randomCoefficientConfig" class="tsd-signature-type" data-tsd-kind="Type alias">randomCoefficientConfig</a><span class="tsd-signature-symbol">; </span>letters<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">; </span>zero<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol"> }</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/basilgass/PI/blob/95552d7/src/maths/random/rndTypes.ts#L9">random/rndTypes.ts:9</a></li></ul></aside><div class="tsd-type-declaration"><h4>Type declaration</h4><ul class="tsd-parameters"><li class="tsd-parameter"><h5><span class="tsd-flag ts-flagOptional">Optional</span> degree<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">number</span></h5></li><li class="tsd-parameter"><h5><span class="tsd-flag ts-flagOptional">Optional</span> fraction<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol"> | </span><a href="random.html#randomCoefficientConfig" class="tsd-signature-type" data-tsd-kind="Type alias">randomCoefficientConfig</a></h5></li><li class="tsd-parameter"><h5><span class="tsd-flag ts-flagOptional">Optional</span> letters<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">string</span></h5></li><li class="tsd-parameter"><h5><span class="tsd-flag ts-flagOptional">Optional</span> zero<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">boolean</span></h5></li></ul></div></section><section class="tsd-panel tsd-member tsd-kind-type-alias tsd-parent-kind-module"><a id="randomPolynomConfig" class="tsd-anchor"></a><h3>random<wbr/>Polynom<wbr/>Config</h3><div class="tsd-signature tsd-kind-icon">random<wbr/>Polynom<wbr/>Config<span class="tsd-signature-symbol">:</span> <a href="random.html#randomMonomConfig" class="tsd-signature-type" data-tsd-kind="Type alias">randomMonomConfig</a><span class="tsd-signature-symbol"> & </span><span class="tsd-signature-symbol">{ </span>allowNullMonom<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">; </span>factorable<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">; </span>numberOfMonoms<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">; </span>positive<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">; </span>unit<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol"> }</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/basilgass/PI/blob/95552d7/src/maths/random/rndTypes.ts#L16">random/rndTypes.ts:16</a></li></ul></aside></section></section></div><div class="col-4 col-menu menu-sticky-wrap menu-highlight"><nav class="tsd-navigation primary"><ul><li class=""><a href="../modules.html">Modules</a></li><li class=" tsd-kind-module"><a href="algebra.html">algebra</a></li><li class=" tsd-kind-module"><a href="coefficients.html">coefficients</a></li><li class=" tsd-kind-module"><a href="geometry.html">geometry</a></li><li class=" tsd-kind-module"><a href="numeric.html">numeric</a></li><li class="current tsd-kind-module"><a href="random.html">random</a><ul><li class=" tsd-kind-namespace tsd-parent-kind-module"><a href="random.Random.html">Random</a></li></ul></li><li class=" tsd-kind-module"><a href="shutingyard.html">shutingyard</a></li></ul></nav><nav class="tsd-navigation secondary menu-sticky"><ul><li class="tsd-kind-type-alias tsd-parent-kind-module"><a href="random.html#randomCoefficientConfig" class="tsd-kind-icon">random<wbr/>Coefficient<wbr/>Config</a></li><li class="tsd-kind-type-alias tsd-parent-kind-module"><a href="random.html#randomMonomConfig" class="tsd-kind-icon">random<wbr/>Monom<wbr/>Config</a></li><li class="tsd-kind-type-alias tsd-parent-kind-module"><a href="random.html#randomPolynomConfig" class="tsd-kind-icon">random<wbr/>Polynom<wbr/>Config</a></li></ul></nav></div></div></div><footer class="with-border-bottom"><div class="container"><h2>Legend</h2><div class="tsd-legend-group"><ul class="tsd-legend"><li class="tsd-kind-namespace"><span class="tsd-kind-icon">Namespace</span></li><li class="tsd-kind-type-alias"><span class="tsd-kind-icon">Type alias</span></li></ul><ul class="tsd-legend"><li class="tsd-kind-interface"><span class="tsd-kind-icon">Interface</span></li></ul><ul class="tsd-legend"><li class="tsd-kind-class"><span class="tsd-kind-icon">Class</span></li></ul></div><h2>Settings</h2><p>Theme <select id="theme"><option value="os">OS</option><option value="light">Light</option><option value="dark">Dark</option></select></p></div></footer><div class="container tsd-generator"><p>Generated using <a href="https://typedoc.org/" target="_blank">TypeDoc</a></p></div><div class="overlay"></div><script src="../assets/main.js"></script></body></html>
|
|
1
|
+
<!DOCTYPE html><html class="default"><head><meta charSet="utf-8"/><meta http-equiv="x-ua-compatible" content="IE=edge"/><title>random | pimath</title><meta name="description" content="Documentation for pimath"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="../assets/style.css"/><link rel="stylesheet" href="../assets/highlight.css"/><script async src="../assets/search.js" id="search-script"></script><link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/katex@0.15.1/dist/katex.min.css" integrity="sha384-R4558gYOUz8mP9YWpZJjofhk+zx0AS11p36HnD2ZKj/6JR5z27gSSULCNHIRReVs" crossorigin="anonymous"><script defer src="https://cdn.jsdelivr.net/npm/katex@0.15.1/dist/katex.min.js" integrity="sha384-z1fJDqw8ZApjGO3/unPWUPsIymfsJmyrDVWC8Tv/a1HeOtGmkwNd/7xUS0Xcnvsx" crossorigin="anonymous"></script><script defer src="https://cdn.jsdelivr.net/npm/katex@0.15.1/dist/contrib/auto-render.min.js" integrity="sha384-+XBljXPPiv+OzfbB3cVmLHf4hdUFHlWNZN5spNQ7rmHTXpd7WvJum6fIACpNNfIR" crossorigin="anonymous" onload="renderMathInElement(document.body);"></script></link>}); }</head><body><script>document.body.classList.add(localStorage.getItem("tsd-theme") || "os")</script><header><div class="tsd-page-toolbar"><div class="container"><div class="table-wrap"><div class="table-cell" id="tsd-search" data-base=".."><div class="field"><label for="tsd-search-field" class="tsd-widget search no-caption">Search</label><input type="text" id="tsd-search-field"/></div><ul class="results"><li class="state loading">Preparing search index...</li><li class="state failure">The search index is not available</li></ul><a href="../index.html" class="title">pimath</a></div><div class="table-cell" id="tsd-widgets"><div id="tsd-filter"><a href="#" class="tsd-widget options no-caption" data-toggle="options">Options</a><div class="tsd-filter-group"><div class="tsd-select" id="tsd-filter-visibility"><span class="tsd-select-label">All</span><ul class="tsd-select-list"><li data-value="public">Public</li><li data-value="protected">Public/Protected</li><li data-value="private" class="selected">All</li></ul></div> <input type="checkbox" id="tsd-filter-inherited" checked/><label class="tsd-widget" for="tsd-filter-inherited">Inherited</label><input type="checkbox" id="tsd-filter-externals" checked/><label class="tsd-widget" for="tsd-filter-externals">Externals</label></div></div><a href="#" class="tsd-widget menu no-caption" data-toggle="menu">Menu</a></div></div></div></div><div class="tsd-page-title"><div class="container"><ul class="tsd-breadcrumb"><li><a href="../modules.html">pimath</a></li><li><a href="random.html">random</a></li></ul><h1>Module random</h1></div></div></header><div class="container container-main"><div class="row"><div class="col-8 col-content"><section class="tsd-panel-group tsd-index-group"><h2>Index</h2><section class="tsd-panel tsd-index-panel"><div class="tsd-index-content"><section class="tsd-index-section "><h3>Namespaces</h3><ul class="tsd-index-list"><li class="tsd-kind-namespace tsd-parent-kind-module"><a href="random.Random.html" class="tsd-kind-icon">Random</a></li></ul></section><section class="tsd-index-section "><h3>Type aliases</h3><ul class="tsd-index-list"><li class="tsd-kind-type-alias tsd-parent-kind-module"><a href="random.html#randomCoefficientConfig" class="tsd-kind-icon">random<wbr/>Coefficient<wbr/>Config</a></li><li class="tsd-kind-type-alias tsd-parent-kind-module"><a href="random.html#randomMonomConfig" class="tsd-kind-icon">random<wbr/>Monom<wbr/>Config</a></li><li class="tsd-kind-type-alias tsd-parent-kind-module"><a href="random.html#randomPolynomConfig" class="tsd-kind-icon">random<wbr/>Polynom<wbr/>Config</a></li></ul></section></div></section></section><section class="tsd-panel-group tsd-member-group "><h2>Type aliases</h2><section class="tsd-panel tsd-member tsd-kind-type-alias tsd-parent-kind-module"><a id="randomCoefficientConfig" class="tsd-anchor"></a><h3>random<wbr/>Coefficient<wbr/>Config</h3><div class="tsd-signature tsd-kind-icon">random<wbr/>Coefficient<wbr/>Config<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">{ </span>max<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">; </span>natural<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">; </span>negative<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">; </span>reduced<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">; </span>zero<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol"> }</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/basilgass/PI/blob/061ab57/src/maths/random/rndTypes.ts#L1">random/rndTypes.ts:1</a></li></ul></aside><div class="tsd-type-declaration"><h4>Type declaration</h4><ul class="tsd-parameters"><li class="tsd-parameter"><h5><span class="tsd-flag ts-flagOptional">Optional</span> max<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">number</span></h5></li><li class="tsd-parameter"><h5><span class="tsd-flag ts-flagOptional">Optional</span> natural<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">boolean</span></h5></li><li class="tsd-parameter"><h5><span class="tsd-flag ts-flagOptional">Optional</span> negative<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">boolean</span></h5></li><li class="tsd-parameter"><h5><span class="tsd-flag ts-flagOptional">Optional</span> reduced<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">boolean</span></h5></li><li class="tsd-parameter"><h5><span class="tsd-flag ts-flagOptional">Optional</span> zero<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">boolean</span></h5></li></ul></div></section><section class="tsd-panel tsd-member tsd-kind-type-alias tsd-parent-kind-module"><a id="randomMonomConfig" class="tsd-anchor"></a><h3>random<wbr/>Monom<wbr/>Config</h3><div class="tsd-signature tsd-kind-icon">random<wbr/>Monom<wbr/>Config<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">{ </span>degree<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">; </span>fraction<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol"> | </span><a href="random.html#randomCoefficientConfig" class="tsd-signature-type" data-tsd-kind="Type alias">randomCoefficientConfig</a><span class="tsd-signature-symbol">; </span>letters<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">; </span>zero<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol"> }</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/basilgass/PI/blob/061ab57/src/maths/random/rndTypes.ts#L9">random/rndTypes.ts:9</a></li></ul></aside><div class="tsd-type-declaration"><h4>Type declaration</h4><ul class="tsd-parameters"><li class="tsd-parameter"><h5><span class="tsd-flag ts-flagOptional">Optional</span> degree<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">number</span></h5></li><li class="tsd-parameter"><h5><span class="tsd-flag ts-flagOptional">Optional</span> fraction<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol"> | </span><a href="random.html#randomCoefficientConfig" class="tsd-signature-type" data-tsd-kind="Type alias">randomCoefficientConfig</a></h5></li><li class="tsd-parameter"><h5><span class="tsd-flag ts-flagOptional">Optional</span> letters<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">string</span></h5></li><li class="tsd-parameter"><h5><span class="tsd-flag ts-flagOptional">Optional</span> zero<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">boolean</span></h5></li></ul></div></section><section class="tsd-panel tsd-member tsd-kind-type-alias tsd-parent-kind-module"><a id="randomPolynomConfig" class="tsd-anchor"></a><h3>random<wbr/>Polynom<wbr/>Config</h3><div class="tsd-signature tsd-kind-icon">random<wbr/>Polynom<wbr/>Config<span class="tsd-signature-symbol">:</span> <a href="random.html#randomMonomConfig" class="tsd-signature-type" data-tsd-kind="Type alias">randomMonomConfig</a><span class="tsd-signature-symbol"> & </span><span class="tsd-signature-symbol">{ </span>allowNullMonom<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">; </span>factorable<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">; </span>numberOfMonoms<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">; </span>positive<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">; </span>unit<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol"> }</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/basilgass/PI/blob/061ab57/src/maths/random/rndTypes.ts#L16">random/rndTypes.ts:16</a></li></ul></aside></section></section></div><div class="col-4 col-menu menu-sticky-wrap menu-highlight"><nav class="tsd-navigation primary"><ul><li class=""><a href="../modules.html">Modules</a></li><li class=" tsd-kind-module"><a href="algebra.html">algebra</a></li><li class=" tsd-kind-module"><a href="coefficients.html">coefficients</a></li><li class=" tsd-kind-module"><a href="geometry.html">geometry</a></li><li class=" tsd-kind-module"><a href="numeric.html">numeric</a></li><li class="current tsd-kind-module"><a href="random.html">random</a><ul><li class=" tsd-kind-namespace tsd-parent-kind-module"><a href="random.Random.html">Random</a></li></ul></li><li class=" tsd-kind-module"><a href="shutingyard.html">shutingyard</a></li></ul></nav><nav class="tsd-navigation secondary menu-sticky"><ul><li class="tsd-kind-type-alias tsd-parent-kind-module"><a href="random.html#randomCoefficientConfig" class="tsd-kind-icon">random<wbr/>Coefficient<wbr/>Config</a></li><li class="tsd-kind-type-alias tsd-parent-kind-module"><a href="random.html#randomMonomConfig" class="tsd-kind-icon">random<wbr/>Monom<wbr/>Config</a></li><li class="tsd-kind-type-alias tsd-parent-kind-module"><a href="random.html#randomPolynomConfig" class="tsd-kind-icon">random<wbr/>Polynom<wbr/>Config</a></li></ul></nav></div></div></div><footer class="with-border-bottom"><div class="container"><h2>Legend</h2><div class="tsd-legend-group"><ul class="tsd-legend"><li class="tsd-kind-namespace"><span class="tsd-kind-icon">Namespace</span></li><li class="tsd-kind-type-alias"><span class="tsd-kind-icon">Type alias</span></li></ul><ul class="tsd-legend"><li class="tsd-kind-interface"><span class="tsd-kind-icon">Interface</span></li></ul><ul class="tsd-legend"><li class="tsd-kind-class"><span class="tsd-kind-icon">Class</span></li></ul></div><h2>Settings</h2><p>Theme <select id="theme"><option value="os">OS</option><option value="light">Light</option><option value="dark">Dark</option></select></p></div></footer><div class="container tsd-generator"><p>Generated using <a href="https://typedoc.org/" target="_blank">TypeDoc</a></p></div><div class="overlay"></div><script src="../assets/main.js"></script></body></html>
|
package/esm/main.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
const numeric_1 = require("./maths/numeric");
|
|
4
|
+
const numexp_1 = require("./maths/numexp");
|
|
4
5
|
const shutingyard_1 = require("./maths/shutingyard");
|
|
5
6
|
const random_1 = require("./maths/random");
|
|
6
7
|
const coefficients_1 = require("./maths/coefficients");
|
|
@@ -9,6 +10,7 @@ const geometry_1 = require("./maths/geometry");
|
|
|
9
10
|
window.Pi = {
|
|
10
11
|
ShutingYard: shutingyard_1.Shutingyard,
|
|
11
12
|
Numeric: numeric_1.Numeric,
|
|
13
|
+
NumExp: numexp_1.NumExp,
|
|
12
14
|
Fraction: coefficients_1.Fraction,
|
|
13
15
|
Root: coefficients_1.Nthroot,
|
|
14
16
|
Monom: algebra_1.Monom,
|
package/esm/main.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"main.js","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":";;AAAA,6CAAwC;AACxC,qDAAgD;AAChD,2CAAsC;AACtC,uDAAuD;AACvD,6CAA6F;AAC7F,+CAAuE;AAIjE,MAAO,CAAC,EAAE,GAAG;IACf,WAAW,EAAE,yBAAW;IACxB,OAAO,EAAE,iBAAO;IAChB,QAAQ,EAAE,uBAAQ;IAClB,IAAI,EAAE,sBAAO;IACb,KAAK,EAAE,eAAK;IACZ,OAAO,EAAE,iBAAO;IAChB,QAAQ,EAAE,kBAAQ;IAClB,YAAY,EAAE,sBAAY;IAC1B,QAAQ,EAAE,kBAAQ;IAClB,UAAU,EAAE,oBAAU;IACtB,MAAM,EAAE,eAAM;IACd,QAAQ,EAAE;QACN,MAAM,EAAE,iBAAM;QACd,KAAK,EAAE,gBAAK;QACZ,IAAI,EAAE,eAAI;QACV,QAAQ,EAAE,mBAAQ;QAClB,MAAM,EAAE,iBAAM;KACjB;CACJ,CAAC"}
|
|
1
|
+
{"version":3,"file":"main.js","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":";;AAAA,6CAAwC;AACxC,2CAAsC;AACtC,qDAAgD;AAChD,2CAAsC;AACtC,uDAAuD;AACvD,6CAA6F;AAC7F,+CAAuE;AAIjE,MAAO,CAAC,EAAE,GAAG;IACf,WAAW,EAAE,yBAAW;IACxB,OAAO,EAAE,iBAAO;IAChB,MAAM,EAAE,eAAM;IACd,QAAQ,EAAE,uBAAQ;IAClB,IAAI,EAAE,sBAAO;IACb,KAAK,EAAE,eAAK;IACZ,OAAO,EAAE,iBAAO;IAChB,QAAQ,EAAE,kBAAQ;IAClB,YAAY,EAAE,sBAAY;IAC1B,QAAQ,EAAE,kBAAQ;IAClB,UAAU,EAAE,oBAAU;IACtB,MAAM,EAAE,eAAM;IACd,QAAQ,EAAE;QACN,MAAM,EAAE,iBAAM;QACd,KAAK,EAAE,gBAAK;QACZ,IAAI,EAAE,eAAI;QACV,QAAQ,EAAE,mBAAQ;QAClB,MAAM,EAAE,iBAAM;KACjB;CACJ,CAAC"}
|
|
@@ -15,7 +15,7 @@ class Logicalset {
|
|
|
15
15
|
}
|
|
16
16
|
;
|
|
17
17
|
parse = (value) => {
|
|
18
|
-
this._rpn = new shutingyard_1.Shutingyard(
|
|
18
|
+
this._rpn = new shutingyard_1.Shutingyard(shutingyard_1.ShutingyardMode.SET).parse(value).rpn;
|
|
19
19
|
return this;
|
|
20
20
|
};
|
|
21
21
|
evaluate(tokenSets, reference) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logicalset.js","sourceRoot":"","sources":["../../../src/maths/algebra/logicalset.ts"],"names":[],"mappings":";;;AAKA,
|
|
1
|
+
{"version":3,"file":"logicalset.js","sourceRoot":"","sources":["../../../src/maths/algebra/logicalset.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,7 +7,7 @@ export declare class Monom {
|
|
|
7
7
|
private _literal;
|
|
8
8
|
constructor(value?: unknown);
|
|
9
9
|
get coefficient(): Fraction;
|
|
10
|
-
set coefficient(F: Fraction);
|
|
10
|
+
set coefficient(F: Fraction | number | string);
|
|
11
11
|
get literal(): literalType;
|
|
12
12
|
get literalSqrt(): literalType;
|
|
13
13
|
set literal(L: literalType);
|
|
@@ -17,6 +17,7 @@ export declare class Monom {
|
|
|
17
17
|
get dividers(): Monom[];
|
|
18
18
|
private _getLiteralDividers;
|
|
19
19
|
get displayWithSign(): string;
|
|
20
|
+
get texWithSign(): string;
|
|
20
21
|
get tex(): string;
|
|
21
22
|
parse: (inputStr: unknown) => Monom;
|
|
22
23
|
private _shutingYardToReducedMonom;
|
|
@@ -18,7 +18,7 @@ class Monom {
|
|
|
18
18
|
return this._coefficient;
|
|
19
19
|
}
|
|
20
20
|
set coefficient(F) {
|
|
21
|
-
this._coefficient = F;
|
|
21
|
+
this._coefficient = new coefficients_1.Fraction(F);
|
|
22
22
|
}
|
|
23
23
|
get literal() {
|
|
24
24
|
return this._literal;
|
|
@@ -157,6 +157,12 @@ class Monom {
|
|
|
157
157
|
let d = this.display;
|
|
158
158
|
return (d[0] !== '-' ? '+' : '') + d;
|
|
159
159
|
}
|
|
160
|
+
get texWithSign() {
|
|
161
|
+
if (this.coefficient.isStrictlyPositive()) {
|
|
162
|
+
return '+' + this.tex;
|
|
163
|
+
}
|
|
164
|
+
return this.tex;
|
|
165
|
+
}
|
|
160
166
|
get tex() {
|
|
161
167
|
let L = '', letters = Object.keys(this._literal).sort();
|
|
162
168
|
for (let letter of letters) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"monom.js","sourceRoot":"","sources":["../../../src/maths/algebra/monom.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"monom.js","sourceRoot":"","sources":["../../../src/maths/algebra/monom.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.Rational = void 0;
|
|
4
4
|
const polynom_1 = require("./polynom");
|
|
5
|
-
const
|
|
5
|
+
const coefficients_1 = require("../coefficients");
|
|
6
6
|
class Rational {
|
|
7
7
|
_rawString;
|
|
8
8
|
_numerator;
|
|
@@ -101,7 +101,7 @@ class Rational {
|
|
|
101
101
|
}
|
|
102
102
|
}
|
|
103
103
|
else {
|
|
104
|
-
return this._numerator.evaluate({ letter: new
|
|
104
|
+
return this._numerator.evaluate({ letter: new coefficients_1.Fraction(value) }).divide(this._denominator.evaluate({ letter: new coefficients_1.Fraction(value) }));
|
|
105
105
|
}
|
|
106
106
|
};
|
|
107
107
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rational.js","sourceRoot":"","sources":["../../../src/maths/algebra/rational.ts"],"names":[],"mappings":";;;AAKA,uCAAkC;AAClC,
|
|
1
|
+
{"version":3,"file":"rational.js","sourceRoot":"","sources":["../../../src/maths/algebra/rational.ts"],"names":[],"mappings":"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"}
|
|
@@ -213,6 +213,9 @@ class Line {
|
|
|
213
213
|
isSameAs = (line) => {
|
|
214
214
|
return this.slope.isEqual(line.slope) && this.height.isEqual(line.height);
|
|
215
215
|
};
|
|
216
|
+
isVertical = () => {
|
|
217
|
+
return this.slope.isInfinity();
|
|
218
|
+
};
|
|
216
219
|
simplify = () => {
|
|
217
220
|
let lcm = numeric_1.Numeric.lcm(this._a.denominator, this._b.denominator, this._c.denominator), gcd = numeric_1.Numeric.gcd(this._a.numerator, this._b.numerator, this._c.numerator);
|
|
218
221
|
this.parseByCoefficient(this._a.clone().multiply(lcm).divide(gcd), this._b.clone().multiply(lcm).divide(gcd), this._c.clone().multiply(lcm).divide(gcd));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"line.js","sourceRoot":"","sources":["../../../src/maths/geometry/line.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"line.js","sourceRoot":"","sources":["../../../src/maths/geometry/line.ts"],"names":[],"mappings":"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"}
|
|
@@ -55,12 +55,17 @@ class Vector {
|
|
|
55
55
|
this._y = values[1].y.clone().subtract(values[0].y);
|
|
56
56
|
return this;
|
|
57
57
|
}
|
|
58
|
-
if (values[0].
|
|
58
|
+
if (values[0] instanceof fraction_1.Fraction || !isNaN(values[0])) {
|
|
59
59
|
this._x = new fraction_1.Fraction(values[0]);
|
|
60
60
|
}
|
|
61
|
-
if (values[1].
|
|
61
|
+
if (values[1] instanceof fraction_1.Fraction || !isNaN(values[1])) {
|
|
62
62
|
this._y = new fraction_1.Fraction(values[1]);
|
|
63
63
|
}
|
|
64
|
+
if ((typeof values[0] === 'object' && !isNaN(values[0].x) && !isNaN(values[0].x)) &&
|
|
65
|
+
(typeof values[1] === 'object' && !isNaN(values[1].x) && !isNaN(values[1].x))) {
|
|
66
|
+
this._x = new fraction_1.Fraction(+values[1].x - values[0].x);
|
|
67
|
+
this._y = new fraction_1.Fraction(+values[1].y - values[0].y);
|
|
68
|
+
}
|
|
64
69
|
}
|
|
65
70
|
return this;
|
|
66
71
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vector.js","sourceRoot":"","sources":["../../../src/maths/geometry/vector.ts"],"names":[],"mappings":";;;AAIA,uDAAkD;AAClD,wCAAmC;AACnC,mCAA8B;AAE9B,MAAa,MAAM;IACP,EAAE,CAAW;IACb,EAAE,CAAW;IAErB,YAAY,GAAG,MAAW;QACtB,IAAI,CAAC,EAAE,GAAG,IAAI,mBAAQ,EAAE,CAAC,IAAI,EAAE,CAAC;QAChC,IAAI,CAAC,EAAE,GAAG,IAAI,mBAAQ,EAAE,CAAC,IAAI,EAAE,CAAC;QAEhC,IAAI,MAAM,KAAK,SAAS,EAAE;YACtB,IAAI,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,CAAC;SACzB;IACL,CAAC;IAAA,CAAC;IAKF,IAAI,CAAC;QACD,OAAO,IAAI,CAAC,EAAE,CAAC;IACnB,CAAC;IAED,IAAI,CAAC,CAAC,KAAe;QACjB,IAAI,CAAC,EAAE,GAAG,KAAK,CAAC;IACpB,CAAC;IAED,IAAI,CAAC;QACD,OAAO,IAAI,CAAC,EAAE,CAAC;IACnB,CAAC;IAED,IAAI,CAAC,CAAC,KAAe;QACjB,IAAI,CAAC,EAAE,GAAG,KAAK,CAAC;IACpB,CAAC;IAED,IAAI,UAAU;QACV,OAAO,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,IAAI,IAAI;QACJ,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;IAC5C,CAAC;IAED,IAAI,GAAG;QACH,OAAO,mBAAmB,IAAI,CAAC,EAAE,CAAC,GAAG,UAAU,IAAI,CAAC,EAAE,CAAC,GAAG,iBAAiB,CAAA;IAC/E,CAAC;IAMD,KAAK,GAAG,CAAC,GAAG,MAAW,EAAU,EAAE;QAI/B,IAAI,CAAC,IAAI,EAAE,CAAC;QAEZ,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE;YACrB,OAAO,IAAI,CAAC;SACf;QAED,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE;YACrB,IAAI,MAAM,CAAC,CAAC,CAAC,YAAY,MAAM,EAAE;gBAC7B,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAA;aAC3B;iBAAM;gBACH,OAAO,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAA;aACtC;SACJ;QAED,IAAI,MAAM,CAAC,MAAM,IAAI,CAAC,EAAE;YAEpB,IAAI,MAAM,CAAC,CAAC,CAAC,YAAY,aAAK,IAAI,MAAM,CAAC,CAAC,CAAC,YAAY,aAAK,EAAE;gBAC1D,IAAI,CAAC,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;gBACnD,IAAI,CAAC,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;gBACnD,OAAO,IAAI,CAAC;aACf;YAGD,IAAI,MAAM,CAAC,CAAC,CAAC,
|
|
1
|
+
{"version":3,"file":"vector.js","sourceRoot":"","sources":["../../../src/maths/geometry/vector.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
export declare class NumExp {
|
|
2
|
+
private _rpn;
|
|
3
|
+
private _expression;
|
|
4
|
+
constructor(value: string);
|
|
5
|
+
get rpn(): {
|
|
6
|
+
token: string;
|
|
7
|
+
tokenType: string;
|
|
8
|
+
}[];
|
|
9
|
+
get expression(): string;
|
|
10
|
+
private _extractDecimalPart;
|
|
11
|
+
private _numberCorrection;
|
|
12
|
+
private _addToStack;
|
|
13
|
+
evaluate(values: {
|
|
14
|
+
[Key: string]: number;
|
|
15
|
+
}): number;
|
|
16
|
+
}
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.NumExp = void 0;
|
|
4
|
+
const shutingyard_1 = require("./shutingyard");
|
|
5
|
+
const coefficients_1 = require("./coefficients");
|
|
6
|
+
class NumExp {
|
|
7
|
+
_rpn;
|
|
8
|
+
_expression;
|
|
9
|
+
constructor(value) {
|
|
10
|
+
this._expression = value;
|
|
11
|
+
this._rpn = new shutingyard_1.Shutingyard(shutingyard_1.ShutingyardMode.NUMERIC).parse(value).rpn;
|
|
12
|
+
}
|
|
13
|
+
get rpn() {
|
|
14
|
+
return this._rpn;
|
|
15
|
+
}
|
|
16
|
+
get expression() {
|
|
17
|
+
return this._expression;
|
|
18
|
+
}
|
|
19
|
+
_extractDecimalPart(value) {
|
|
20
|
+
let decimal = value.toString();
|
|
21
|
+
if (!decimal.includes('.')) {
|
|
22
|
+
return '';
|
|
23
|
+
}
|
|
24
|
+
decimal = decimal.split('.')[1];
|
|
25
|
+
return decimal.substring(0, decimal.length - 2);
|
|
26
|
+
}
|
|
27
|
+
_numberCorrection(value) {
|
|
28
|
+
const epsilon = 0.00000000000001, number_of_digits = 6;
|
|
29
|
+
let decimal = this._extractDecimalPart(value);
|
|
30
|
+
if (decimal === '') {
|
|
31
|
+
return value;
|
|
32
|
+
}
|
|
33
|
+
const n9 = decimal.match(/9+$/g);
|
|
34
|
+
const n0 = decimal.match(/0+$/g);
|
|
35
|
+
if (n9 && n9[0].length >= number_of_digits) {
|
|
36
|
+
let mod = this._extractDecimalPart(value + epsilon), mod0 = mod.match(/0+$/g);
|
|
37
|
+
if (mod0 && mod0[0].length >= number_of_digits) {
|
|
38
|
+
return +((value + epsilon).toString().split(mod0[0])[0]);
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
if (n0 && n0[0].length >= number_of_digits) {
|
|
42
|
+
let mod = this._extractDecimalPart(value - epsilon), mod9 = mod.match(/9+$/g);
|
|
43
|
+
if (mod9 && mod9[0].length >= number_of_digits) {
|
|
44
|
+
return +(value.toString().split(n0[0])[0]);
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
return value;
|
|
48
|
+
}
|
|
49
|
+
_addToStack(stack, value) {
|
|
50
|
+
stack.push(this._numberCorrection(value));
|
|
51
|
+
}
|
|
52
|
+
evaluate(values) {
|
|
53
|
+
let stack = [];
|
|
54
|
+
for (const element of this._rpn) {
|
|
55
|
+
if (element.tokenType === shutingyard_1.ShutingyardType.COEFFICIENT) {
|
|
56
|
+
if (!isNaN(+element.token)) {
|
|
57
|
+
this._addToStack(stack, +element.token);
|
|
58
|
+
}
|
|
59
|
+
else {
|
|
60
|
+
this._addToStack(stack, new coefficients_1.Fraction(element.token).value);
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
else if (element.tokenType === shutingyard_1.ShutingyardType.VARIABLE) {
|
|
64
|
+
if (values[element.token] !== undefined) {
|
|
65
|
+
this._addToStack(stack, +values[element.token]);
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
else if (element.tokenType === shutingyard_1.ShutingyardType.CONSTANT) {
|
|
69
|
+
this._addToStack(stack, shutingyard_1.tokenConstant[element.token]);
|
|
70
|
+
}
|
|
71
|
+
else if (element.tokenType === shutingyard_1.ShutingyardType.OPERATION) {
|
|
72
|
+
if (element.token === '*') {
|
|
73
|
+
const b = +stack.pop(), a = +stack.pop();
|
|
74
|
+
this._addToStack(stack, a * b);
|
|
75
|
+
}
|
|
76
|
+
else if (element.token === '/') {
|
|
77
|
+
const b = +stack.pop(), a = +stack.pop();
|
|
78
|
+
this._addToStack(stack, a / b);
|
|
79
|
+
}
|
|
80
|
+
else if (element.token === '+') {
|
|
81
|
+
const b = +stack.pop(), a = +stack.pop();
|
|
82
|
+
this._addToStack(stack, a + b);
|
|
83
|
+
}
|
|
84
|
+
else if (element.token === '-') {
|
|
85
|
+
const b = +stack.pop(), a = +stack.pop() || 0;
|
|
86
|
+
this._addToStack(stack, a - b);
|
|
87
|
+
}
|
|
88
|
+
else if (element.token === '^') {
|
|
89
|
+
const b = +stack.pop(), a = +stack.pop();
|
|
90
|
+
this._addToStack(stack, Math.pow(a, b));
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
else if (element.tokenType === shutingyard_1.ShutingyardType.FUNCTION) {
|
|
94
|
+
const a = +stack.pop();
|
|
95
|
+
if (element.token === 'sin') {
|
|
96
|
+
this._addToStack(stack, Math.sin(a));
|
|
97
|
+
}
|
|
98
|
+
else if (element.token === 'cos') {
|
|
99
|
+
this._addToStack(stack, Math.cos(a));
|
|
100
|
+
}
|
|
101
|
+
else if (element.token === 'tan') {
|
|
102
|
+
this._addToStack(stack, Math.tan(a));
|
|
103
|
+
}
|
|
104
|
+
else if (element.token === 'sqrt') {
|
|
105
|
+
this._addToStack(stack, Math.sqrt(a));
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
if (stack.length === 1) {
|
|
110
|
+
return stack[0];
|
|
111
|
+
}
|
|
112
|
+
else {
|
|
113
|
+
console.error('There was a problem parsing', this._expression, '. The RPN array is', this._rpn);
|
|
114
|
+
return 0;
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
exports.NumExp = NumExp;
|
|
119
|
+
//# sourceMappingURL=numexp.js.map
|