pimath 0.0.127 → 0.0.129
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/dist/main.d.ts +39 -0
- package/{esm → dist}/maths/algebra/equation.d.ts +11 -10
- package/{esm → dist}/maths/algebra/linearSystem.d.ts +5 -4
- package/{esm → dist}/maths/algebra/monom.d.ts +5 -4
- package/{esm → dist}/maths/algebra/polynom.d.ts +11 -13
- package/{esm → dist}/maths/algebra/rational.d.ts +7 -9
- package/dist/maths/algebra/study/rationalStudy.d.ts +14 -0
- package/{esm → dist}/maths/algebra/study.d.ts +4 -7
- package/{esm → dist}/maths/geometry/circle.d.ts +9 -8
- package/{esm → dist}/maths/geometry/line.d.ts +17 -14
- package/{esm → dist}/maths/geometry/point.d.ts +11 -9
- package/{esm → dist}/maths/geometry/triangle.d.ts +4 -3
- package/{esm → dist}/maths/geometry/vector.d.ts +7 -10
- package/{esm → dist}/maths/randomization/random.d.ts +10 -7
- package/{esm → dist}/maths/randomization/rndFraction.d.ts +4 -3
- package/dist/maths/randomization/rndGeometryCircle.d.ts +13 -0
- package/{esm → dist}/maths/randomization/rndGeometryLine.d.ts +4 -3
- package/{esm → dist}/maths/randomization/rndGeometryPoint.d.ts +4 -3
- package/{esm → dist}/maths/randomization/rndMonom.d.ts +5 -4
- package/{esm → dist}/maths/randomization/rndPolynom.d.ts +5 -4
- package/{esm → dist}/maths/randomization/rndTypes.d.ts +7 -1
- package/dist/pimath.js +4239 -7819
- package/package.json +13 -7
- package/.eslintrc.js +0 -24
- package/.idea/$CACHE_FILE$ +0 -6
- package/.idea/PI.iml +0 -14
- package/.idea/codeStyles/codeStyleConfig.xml +0 -5
- package/.idea/inspectionProfiles/Project_Default.xml +0 -6
- package/.idea/misc.xml +0 -6
- package/.idea/modules.xml +0 -8
- package/.idea/php.xml +0 -19
- package/.idea/shelf/Uncommitted_changes_before_Checkout_at_07_11_2023_08_30_[Default_Changelist]/shelved.patch +0 -192
- package/.idea/shelf/Uncommitted_changes_before_Checkout_at_07_11_2023_08_30_[Default_Changelist]1/shelved.patch +0 -0
- package/.idea/shelf/Uncommitted_changes_before_Checkout_at_07_11_2023_08_30__Default_Changelist_.xml +0 -4
- package/.idea/shelf/Uncommitted_changes_before_Checkout_at_09_11_2023_10_43_[Default_Changelist]/shelved.patch +0 -2404
- package/.idea/shelf/Uncommitted_changes_before_Checkout_at_09_11_2023_10_43__Default_Changelist_.xml +0 -4
- package/.idea/shelf/Uncommitted_changes_before_Checkout_at_09_11_2023_11_01_[Default_Changelist]/shelved.patch +0 -1362
- package/.idea/shelf/Uncommitted_changes_before_Checkout_at_09_11_2023_11_01__Default_Changelist_.xml +0 -4
- package/.idea/shelf/Uncommitted_changes_before_Update_at_24_07_2023_15_31_[Default_Changelist]/shelved.patch +0 -90
- package/.idea/shelf/Uncommitted_changes_before_Update_at_24_07_2023_15_31__Default_Changelist_.xml +0 -4
- package/.idea/vcs.xml +0 -6
- package/dev/pimath.js +0 -7945
- package/dev/pimath.js.map +0 -1
- package/dist/pimath.js.map +0 -1
- package/dist/pimath.min.js +0 -2
- package/dist/pimath.min.js.map +0 -1
- package/docs/.nojekyll +0 -1
- package/docs/assets/highlight.css +0 -78
- package/docs/assets/main.js +0 -59
- package/docs/assets/navigation.js +0 -1
- package/docs/assets/search.js +0 -1
- package/docs/assets/style.css +0 -1383
- package/docs/classes/Logicalset.Logicalset.html +0 -217
- package/docs/classes/Polynom.Rational.html +0 -397
- package/docs/classes/Vector-1.Vector.html +0 -490
- package/docs/classes/Vector.Point.html +0 -337
- package/docs/classes/algebra_equation.Equation.html +0 -790
- package/docs/classes/algebra_linearSystem.LinearSystem.html +0 -404
- package/docs/classes/algebra_monom.Monom.html +0 -962
- package/docs/classes/algebra_polynom.Polynom.html +0 -1275
- package/docs/classes/coefficients_fraction.Fraction.html +0 -934
- package/docs/classes/geometry_circle.Circle.html +0 -472
- package/docs/classes/geometry_line.Line.html +0 -774
- package/docs/classes/geometry_triangle.Triangle.html +0 -429
- package/docs/classes/numeric.Numeric.html +0 -265
- package/docs/classes/shutingyard.Shutingyard.html +0 -250
- package/docs/enums/algebra_equation.PARTICULAR_SOLUTION.html +0 -83
- package/docs/enums/geometry_line.LinePropriety.html +0 -97
- package/docs/enums/shutingyard.ShutingyardMode.html +0 -97
- package/docs/enums/shutingyard.ShutingyardType.html +0 -111
- package/docs/index.html +0 -63
- package/docs/interfaces/algebra_equation.ISolution.html +0 -105
- package/docs/interfaces/algebra_polynom.IEuclidian.html +0 -87
- package/docs/interfaces/geometry_triangle.remarquableLines.html +0 -163
- package/docs/modules/Logicalset.html +0 -65
- package/docs/modules/Polynom.html +0 -65
- package/docs/modules/Vector-1.html +0 -65
- package/docs/modules/Vector.html +0 -65
- package/docs/modules/algebra_equation.html +0 -69
- package/docs/modules/algebra_linearSystem.html +0 -61
- package/docs/modules/algebra_monom.html +0 -65
- package/docs/modules/algebra_polynom.html +0 -69
- package/docs/modules/coefficients_fraction.html +0 -65
- package/docs/modules/geometry_circle.html +0 -61
- package/docs/modules/geometry_line.html +0 -65
- package/docs/modules/geometry_triangle.html +0 -65
- package/docs/modules/numeric.html +0 -61
- package/docs/modules/shutingyard.html +0 -75
- package/docs/types/algebra_monom.literalType.html +0 -61
- package/docs/types/algebra_polynom.PolynomParsingType.html +0 -56
- package/docs/types/coefficients_fraction.FractionParsingType.html +0 -56
- package/docs/types/shutingyard.Token.html +0 -63
- package/docs/types/shutingyard.tokenType.html +0 -68
- package/docs/variables/shutingyard.tokenConstant.html +0 -61
- package/esm/index.d.ts +0 -38
- package/esm/index.js +0 -44
- package/esm/index.js.map +0 -1
- package/esm/maths/algebra/equation.js +0 -797
- package/esm/maths/algebra/equation.js.map +0 -1
- package/esm/maths/algebra/linearSystem.js +0 -279
- package/esm/maths/algebra/linearSystem.js.map +0 -1
- package/esm/maths/algebra/logicalset.js +0 -158
- package/esm/maths/algebra/logicalset.js.map +0 -1
- package/esm/maths/algebra/monom.js +0 -909
- package/esm/maths/algebra/monom.js.map +0 -1
- package/esm/maths/algebra/polynom.js +0 -1305
- package/esm/maths/algebra/polynom.js.map +0 -1
- package/esm/maths/algebra/rational.js +0 -195
- package/esm/maths/algebra/rational.js.map +0 -1
- package/esm/maths/algebra/study/rationalStudy.d.ts +0 -28
- package/esm/maths/algebra/study/rationalStudy.js +0 -244
- package/esm/maths/algebra/study/rationalStudy.js.map +0 -1
- package/esm/maths/algebra/study.js +0 -380
- package/esm/maths/algebra/study.js.map +0 -1
- package/esm/maths/coefficients/fraction.js +0 -517
- package/esm/maths/coefficients/fraction.js.map +0 -1
- package/esm/maths/coefficients/nthRoot.js +0 -137
- package/esm/maths/coefficients/nthRoot.js.map +0 -1
- package/esm/maths/geometry/circle.js +0 -324
- package/esm/maths/geometry/circle.js.map +0 -1
- package/esm/maths/geometry/line.js +0 -485
- package/esm/maths/geometry/line.js.map +0 -1
- package/esm/maths/geometry/point.js +0 -167
- package/esm/maths/geometry/point.js.map +0 -1
- package/esm/maths/geometry/triangle.js +0 -276
- package/esm/maths/geometry/triangle.js.map +0 -1
- package/esm/maths/geometry/vector.js +0 -198
- package/esm/maths/geometry/vector.js.map +0 -1
- package/esm/maths/numeric.js +0 -136
- package/esm/maths/numeric.js.map +0 -1
- package/esm/maths/numexp.js +0 -186
- package/esm/maths/numexp.js.map +0 -1
- package/esm/maths/randomization/random.js +0 -79
- package/esm/maths/randomization/random.js.map +0 -1
- package/esm/maths/randomization/randomCore.js +0 -22
- package/esm/maths/randomization/randomCore.js.map +0 -1
- package/esm/maths/randomization/rndFraction.js +0 -44
- package/esm/maths/randomization/rndFraction.js.map +0 -1
- package/esm/maths/randomization/rndGeometryLine.js +0 -46
- package/esm/maths/randomization/rndGeometryLine.js.map +0 -1
- package/esm/maths/randomization/rndGeometryPoint.js +0 -61
- package/esm/maths/randomization/rndGeometryPoint.js.map +0 -1
- package/esm/maths/randomization/rndHelpers.js +0 -98
- package/esm/maths/randomization/rndHelpers.js.map +0 -1
- package/esm/maths/randomization/rndMonom.js +0 -53
- package/esm/maths/randomization/rndMonom.js.map +0 -1
- package/esm/maths/randomization/rndPolynom.js +0 -75
- package/esm/maths/randomization/rndPolynom.js.map +0 -1
- package/esm/maths/randomization/rndTypes.js +0 -3
- package/esm/maths/randomization/rndTypes.js.map +0 -1
- package/esm/maths/shutingyard.js +0 -443
- package/esm/maths/shutingyard.js.map +0 -1
- package/public/demo.css +0 -3
- package/public/index.html +0 -283
- package/public/matrices.html +0 -100
- package/public/playground.html +0 -168
- package/src/index.ts +0 -42
- package/src/maths/algebra/equation.ts +0 -897
- package/src/maths/algebra/linearSystem.ts +0 -370
- package/src/maths/algebra/logicalset.ts +0 -183
- package/src/maths/algebra/monom.ts +0 -1028
- package/src/maths/algebra/polynom.ts +0 -1537
- package/src/maths/algebra/rational.ts +0 -240
- package/src/maths/algebra/study/rationalStudy.ts +0 -287
- package/src/maths/algebra/study.ts +0 -506
- package/src/maths/coefficients/fraction.ts +0 -593
- package/src/maths/coefficients/nthRoot.ts +0 -148
- package/src/maths/geometry/circle.ts +0 -382
- package/src/maths/geometry/line.ts +0 -604
- package/src/maths/geometry/point.ts +0 -215
- package/src/maths/geometry/triangle.ts +0 -368
- package/src/maths/geometry/vector.ts +0 -242
- package/src/maths/numeric.ts +0 -162
- package/src/maths/numexp.ts +0 -184
- package/src/maths/randomization/random.ts +0 -80
- package/src/maths/randomization/randomCore.ts +0 -19
- package/src/maths/randomization/rndFraction.ts +0 -47
- package/src/maths/randomization/rndGeometryCircle.ts +0 -50
- package/src/maths/randomization/rndGeometryLine.ts +0 -53
- package/src/maths/randomization/rndGeometryPoint.ts +0 -69
- package/src/maths/randomization/rndHelpers.ts +0 -107
- package/src/maths/randomization/rndMonom.ts +0 -57
- package/src/maths/randomization/rndPolynom.ts +0 -90
- package/src/maths/randomization/rndTypes.ts +0 -43
- package/src/maths/shutingyard.ts +0 -496
- package/tests/algebra/equation.test.ts +0 -64
- package/tests/algebra/linear.test.ts +0 -58
- package/tests/algebra/monom.test.ts +0 -78
- package/tests/algebra/polynom.test.ts +0 -343
- package/tests/algebra/rationnal.test.ts +0 -64
- package/tests/algebra/study.test.ts +0 -48
- package/tests/coefficients/fraction.test.ts +0 -131
- package/tests/custom.test.ts +0 -33
- package/tests/geometry/circle.test.ts +0 -404
- package/tests/geometry/line.test.ts +0 -36
- package/tests/numeric.test.ts +0 -43
- package/tests/numexp.test.ts +0 -89
- package/tests/shutingyard.test.ts +0 -58
- package/tsconfig.json +0 -41
- package/tsconfig.testing.json +0 -28
- package/typedoc.katex.js +0 -11
- package/webpack-production-min.config.js +0 -26
- package/webpack-production.config.js +0 -26
- package/webpack.config.js +0 -26
- package/{esm → dist}/maths/algebra/logicalset.d.ts +6 -6
- package/{esm → dist}/maths/coefficients/fraction.d.ts +0 -0
- package/{esm → dist}/maths/coefficients/nthRoot.d.ts +0 -0
- package/{esm → dist}/maths/numeric.d.ts +0 -0
- package/{esm → dist}/maths/numexp.d.ts +3 -3
- /package/{esm → dist}/maths/randomization/randomCore.d.ts +0 -0
- /package/{esm → dist}/maths/randomization/rndHelpers.d.ts +0 -0
- /package/{esm → dist}/maths/shutingyard.d.ts +0 -0
package/dist/main.d.ts
ADDED
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { Point } from './maths/geometry/point.ts';
|
|
2
|
+
import { Circle } from './maths/geometry/circle.ts';
|
|
3
|
+
import { Triangle } from './maths/geometry/triangle.ts';
|
|
4
|
+
import { Line } from './maths/geometry/line.ts';
|
|
5
|
+
import { Vector } from './maths/geometry/vector.ts';
|
|
6
|
+
import { Logicalset } from './maths/algebra/logicalset.ts';
|
|
7
|
+
import { Rational } from './maths/algebra/rational.ts';
|
|
8
|
+
import { LinearSystem } from './maths/algebra/linearSystem.ts';
|
|
9
|
+
import { Equation } from './maths/algebra/equation.ts';
|
|
10
|
+
import { Polynom } from './maths/algebra/polynom.ts';
|
|
11
|
+
import { Monom } from './maths/algebra/monom.ts';
|
|
12
|
+
import { NthRoot } from './maths/coefficients/nthRoot.ts';
|
|
13
|
+
import { Fraction } from './maths/coefficients/fraction.ts';
|
|
14
|
+
import { Random } from './maths/randomization/random.ts';
|
|
15
|
+
import { Shutingyard } from './maths/shutingyard.ts';
|
|
16
|
+
import { NumExp } from './maths/numexp.ts';
|
|
17
|
+
import { Numeric } from './maths/numeric.ts';
|
|
18
|
+
|
|
19
|
+
export declare const PiMath: {
|
|
20
|
+
ShutingYard: typeof Shutingyard;
|
|
21
|
+
Numeric: typeof Numeric;
|
|
22
|
+
NumExp: typeof NumExp;
|
|
23
|
+
Fraction: typeof Fraction;
|
|
24
|
+
Root: typeof NthRoot;
|
|
25
|
+
Monom: typeof Monom;
|
|
26
|
+
Polynom: typeof Polynom;
|
|
27
|
+
Equation: typeof Equation;
|
|
28
|
+
LinearSystem: typeof LinearSystem;
|
|
29
|
+
Rational: typeof Rational;
|
|
30
|
+
Logicalset: typeof Logicalset;
|
|
31
|
+
Random: typeof Random;
|
|
32
|
+
Geometry: {
|
|
33
|
+
Vector: typeof Vector;
|
|
34
|
+
Point: typeof Point;
|
|
35
|
+
Line: typeof Line;
|
|
36
|
+
Triangle: typeof Triangle;
|
|
37
|
+
Circle: typeof Circle;
|
|
38
|
+
};
|
|
39
|
+
};
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { literalType } from
|
|
3
|
-
import {
|
|
1
|
+
import { Fraction } from '../coefficients/fraction';
|
|
2
|
+
import { literalType } from './monom';
|
|
3
|
+
import { Polynom } from './polynom';
|
|
4
|
+
|
|
4
5
|
/**
|
|
5
6
|
* Equation is a class to manage equations...
|
|
6
7
|
*/
|
|
@@ -18,22 +19,23 @@ export declare class Equation {
|
|
|
18
19
|
private _polynom;
|
|
19
20
|
private _varnothing;
|
|
20
21
|
private _real;
|
|
22
|
+
private _left;
|
|
23
|
+
private _right;
|
|
24
|
+
private _sign;
|
|
25
|
+
private _solutions;
|
|
26
|
+
private _randomizeDefaults;
|
|
21
27
|
/**
|
|
22
28
|
* Create an Equation using two polynoms.
|
|
23
29
|
* Markdown *support* is cool
|
|
24
30
|
* @param equations
|
|
25
31
|
*/
|
|
26
32
|
constructor(...equations: unknown[]);
|
|
27
|
-
private _left;
|
|
28
33
|
get left(): Polynom;
|
|
29
34
|
set left(value: Polynom);
|
|
30
|
-
private _right;
|
|
31
35
|
get right(): Polynom;
|
|
32
36
|
set right(value: Polynom);
|
|
33
|
-
private _sign;
|
|
34
37
|
get sign(): string;
|
|
35
38
|
set sign(value: string);
|
|
36
|
-
private _solutions;
|
|
37
39
|
get solutions(): ISolution[];
|
|
38
40
|
get isEquation(): boolean;
|
|
39
41
|
get solution(): string;
|
|
@@ -45,14 +47,14 @@ export declare class Equation {
|
|
|
45
47
|
get raw(): string;
|
|
46
48
|
get variables(): string[];
|
|
47
49
|
get numberOfVars(): number;
|
|
48
|
-
hasVariable: (letter: string) => boolean;
|
|
49
|
-
private _randomizeDefaults;
|
|
50
50
|
get randomizeDefaults(): {
|
|
51
51
|
[key: string]: number | string | boolean;
|
|
52
52
|
};
|
|
53
53
|
set randomizeDefaults(value: {
|
|
54
54
|
[key: string]: number | string | boolean;
|
|
55
55
|
});
|
|
56
|
+
static makeSolutionsUnique(solutions: ISolution[], sorted?: boolean): ISolution[];
|
|
57
|
+
hasVariable: (letter: string) => boolean;
|
|
56
58
|
parse: (equationString: string) => Equation;
|
|
57
59
|
create: (left: Polynom, right: Polynom, sign?: string) => Equation;
|
|
58
60
|
clone: () => Equation;
|
|
@@ -103,7 +105,6 @@ export declare class Equation {
|
|
|
103
105
|
isMultiVariable: () => boolean;
|
|
104
106
|
letters: () => string[];
|
|
105
107
|
solve: () => Equation;
|
|
106
|
-
static makeSolutionsUnique(solutions: ISolution[], sorted?: boolean): ISolution[];
|
|
107
108
|
test: (values: literalType) => Boolean;
|
|
108
109
|
isSameAs: (equ: Equation) => Boolean;
|
|
109
110
|
isLinearTo: (equ: Equation) => Boolean;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
1
|
+
import { Fraction } from '../coefficients/fraction';
|
|
2
|
+
import { Equation } from './equation';
|
|
3
|
+
|
|
3
4
|
export declare class LinearSystem {
|
|
4
5
|
private _equations;
|
|
5
6
|
private _letters;
|
|
@@ -15,14 +16,14 @@ export declare class LinearSystem {
|
|
|
15
16
|
get tex(): string;
|
|
16
17
|
get solution(): string;
|
|
17
18
|
get solutionAsDisplay(): string;
|
|
18
|
-
buildTex: (equations: Equation[], operators?: (string[])[]) => string;
|
|
19
|
-
stepTex: (letter: string) => string;
|
|
20
19
|
get resolutionSteps(): {
|
|
21
20
|
[p: string]: {
|
|
22
21
|
equations: Equation[];
|
|
23
22
|
operations: string[][];
|
|
24
23
|
}[];
|
|
25
24
|
};
|
|
25
|
+
buildTex: (equations: Equation[], operators?: (string[])[]) => string;
|
|
26
|
+
stepTex: (letter: string) => string;
|
|
26
27
|
parse: (...equations: (string | Equation)[]) => LinearSystem;
|
|
27
28
|
clone: () => LinearSystem;
|
|
28
29
|
reorder: () => LinearSystem;
|
|
@@ -1,9 +1,12 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
1
|
+
import { Fraction } from '../coefficients/fraction';
|
|
2
|
+
import { Token } from '../shutingyard.ts';
|
|
3
|
+
|
|
3
4
|
export type literalType = {
|
|
4
5
|
[Key: string]: Fraction;
|
|
5
6
|
};
|
|
6
7
|
export declare class Monom {
|
|
8
|
+
private _coefficient;
|
|
9
|
+
private _literal;
|
|
7
10
|
/**
|
|
8
11
|
* Create a Monom
|
|
9
12
|
* Defined as \\(k \\cdot x^{n}\\), where \\( k,n \in \\mathbb{Q}\\).
|
|
@@ -11,7 +14,6 @@ export declare class Monom {
|
|
|
11
14
|
* @param value (optional) string The value that should be parse. Can be a Monom, a Fraction, a string or a number. If nothing is provided, it will return the trivial monom (0).
|
|
12
15
|
*/
|
|
13
16
|
constructor(value?: unknown);
|
|
14
|
-
private _coefficient;
|
|
15
17
|
/**
|
|
16
18
|
* Get the coefficient \\(k\\) of the Monom \\(k\\cdot x^{n}\\)
|
|
17
19
|
* @returns {Fraction}
|
|
@@ -22,7 +24,6 @@ export declare class Monom {
|
|
|
22
24
|
* @param {Fraction | number | string} F
|
|
23
25
|
*/
|
|
24
26
|
set coefficient(F: Fraction | number | string);
|
|
25
|
-
private _literal;
|
|
26
27
|
/**
|
|
27
28
|
* Get the literal part of \\(x^{n_1}y^{n_2}\\) as dictionary \\[\\begin{array}{ll}x&=n_1\\\\y&=n_2\\end{array}\\]
|
|
28
29
|
* @returns {literalType}
|
|
@@ -1,10 +1,8 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
import { ISolution } from './equation';
|
|
2
|
+
import { Fraction } from '../coefficients/fraction';
|
|
3
|
+
import { Token } from '../shutingyard.ts';
|
|
4
4
|
import { literalType, Monom } from './monom';
|
|
5
|
-
|
|
6
|
-
import { Fraction } from "../coefficients/fraction";
|
|
7
|
-
import { ISolution } from "./equation";
|
|
5
|
+
|
|
8
6
|
export type PolynomParsingType = string | Polynom | number | Fraction | Monom;
|
|
9
7
|
export interface IEuclidian {
|
|
10
8
|
quotient: Polynom;
|
|
@@ -18,34 +16,34 @@ export interface IEuclidian {
|
|
|
18
16
|
*/
|
|
19
17
|
export declare class Polynom {
|
|
20
18
|
private _rawString;
|
|
19
|
+
private _dirty_factors;
|
|
20
|
+
private _dirty_zeroes;
|
|
21
|
+
private _euclidianCache;
|
|
22
|
+
private _factors;
|
|
23
|
+
private _monoms;
|
|
24
|
+
private _texString;
|
|
25
|
+
private _zeroes;
|
|
21
26
|
/**
|
|
22
27
|
*
|
|
23
28
|
* @param {string} polynomString (optional) Default polynom to parse on class creation
|
|
24
29
|
* @param values
|
|
25
30
|
*/
|
|
26
31
|
constructor(polynomString?: PolynomParsingType, ...values: unknown[]);
|
|
27
|
-
private _dirty_factors;
|
|
28
32
|
get dirty_factors(): boolean;
|
|
29
33
|
set dirty_factors(value: boolean);
|
|
30
|
-
private _dirty_zeroes;
|
|
31
34
|
get dirty_zeroes(): boolean;
|
|
32
35
|
set dirty_zeroes(value: boolean);
|
|
33
|
-
private _euclidianCache;
|
|
34
36
|
get euclidianCache(): {
|
|
35
37
|
[p: string]: IEuclidian;
|
|
36
38
|
};
|
|
37
39
|
set euclidianCache(value: {
|
|
38
40
|
[p: string]: IEuclidian;
|
|
39
41
|
});
|
|
40
|
-
private _factors;
|
|
41
42
|
get factors(): Polynom[];
|
|
42
43
|
set factors(value: Polynom[]);
|
|
43
|
-
private _monoms;
|
|
44
44
|
get monoms(): Monom[];
|
|
45
45
|
set monoms(M: Monom[]);
|
|
46
|
-
private _texString;
|
|
47
46
|
get texString(): string;
|
|
48
|
-
private _zeroes;
|
|
49
47
|
get zeroes(): ISolution[];
|
|
50
48
|
get texFactors(): string;
|
|
51
49
|
get displayFactors(): string;
|
|
@@ -1,12 +1,9 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
import { IEuclidian, Polynom } from
|
|
6
|
-
|
|
7
|
-
import { literalType } from "./monom";
|
|
8
|
-
import { RationalStudy } from "./study/rationalStudy";
|
|
9
|
-
import { StudyConfig } from "./study";
|
|
1
|
+
import { StudyConfig } from './study';
|
|
2
|
+
import { RationalStudy } from './study/rationalStudy';
|
|
3
|
+
import { literalType } from './monom';
|
|
4
|
+
import { Fraction } from '../coefficients/fraction';
|
|
5
|
+
import { IEuclidian, Polynom } from './polynom';
|
|
6
|
+
|
|
10
7
|
/**
|
|
11
8
|
* Rational class can handle rational polynoms
|
|
12
9
|
*/
|
|
@@ -25,6 +22,7 @@ export declare class Rational {
|
|
|
25
22
|
get tex(): string;
|
|
26
23
|
get display(): string;
|
|
27
24
|
get texFactors(): string;
|
|
25
|
+
get displayFactors(): string;
|
|
28
26
|
get plotFunction(): string;
|
|
29
27
|
clone: () => Rational;
|
|
30
28
|
domain: () => string;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { Rational } from '../rational';
|
|
2
|
+
import { ASYMPTOTE_POSITION, IAsymptote, ITableOfSigns, IZero, Study, StudyableFunction, StudyConfig } from '../study';
|
|
3
|
+
|
|
4
|
+
export declare class RationalStudy extends Study {
|
|
5
|
+
constructor(fx: StudyableFunction, config?: StudyConfig | string);
|
|
6
|
+
makeZeroes(): IZero[];
|
|
7
|
+
makeSigns(): ITableOfSigns;
|
|
8
|
+
makeAsymptotes(): IAsymptote[];
|
|
9
|
+
_getHorizontalAsymptoteRelativePositon(deltaX: Rational, delta?: number): ASYMPTOTE_POSITION[];
|
|
10
|
+
makeDerivative(): ITableOfSigns;
|
|
11
|
+
makeVariation(): ITableOfSigns;
|
|
12
|
+
private _getZeroes;
|
|
13
|
+
private _getSigns;
|
|
14
|
+
}
|
|
@@ -1,10 +1,7 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
import { Rational } from "./rational";
|
|
6
|
-
import { ISolution } from "./equation";
|
|
7
|
-
import { Polynom } from "./polynom";
|
|
1
|
+
import { Polynom } from './polynom';
|
|
2
|
+
import { ISolution } from './equation';
|
|
3
|
+
import { Rational } from './rational';
|
|
4
|
+
|
|
8
5
|
export type StudyableFunction = Rational;
|
|
9
6
|
export declare enum ZEROTYPE {
|
|
10
7
|
ZERO = "z",
|
|
@@ -1,16 +1,17 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
1
|
+
import { Equation } from '../algebra/equation';
|
|
2
|
+
import { Fraction } from '../coefficients/fraction';
|
|
3
|
+
import { Line } from './line';
|
|
4
|
+
import { Point } from './point';
|
|
5
|
+
|
|
5
6
|
export declare class Circle {
|
|
6
|
-
constructor(...values: unknown[]);
|
|
7
7
|
private _center;
|
|
8
|
-
get center(): Point;
|
|
9
8
|
private _squareRadius;
|
|
10
|
-
get squareRadius(): Fraction;
|
|
11
9
|
private _cartesian;
|
|
12
|
-
get cartesian(): Equation;
|
|
13
10
|
private _exists;
|
|
11
|
+
constructor(...values: unknown[]);
|
|
12
|
+
get center(): Point;
|
|
13
|
+
get squareRadius(): Fraction;
|
|
14
|
+
get cartesian(): Equation;
|
|
14
15
|
get exists(): boolean;
|
|
15
16
|
get radius(): {
|
|
16
17
|
tex: string;
|
|
@@ -1,10 +1,8 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
import { Vector } from
|
|
5
|
-
|
|
6
|
-
import { Fraction } from "../coefficients/fraction";
|
|
7
|
-
import { Equation } from "../algebra/equation";
|
|
1
|
+
import { Equation } from '../algebra/equation';
|
|
2
|
+
import { Fraction } from '../coefficients/fraction';
|
|
3
|
+
import { Point } from './point';
|
|
4
|
+
import { Vector } from './vector';
|
|
5
|
+
|
|
8
6
|
export declare enum LinePropriety {
|
|
9
7
|
None = 0,
|
|
10
8
|
Parallel = "parallel",
|
|
@@ -17,25 +15,30 @@ export declare class Line {
|
|
|
17
15
|
private _referencePropriety;
|
|
18
16
|
private _referenceLine;
|
|
19
17
|
private _reduceBeforeDisplay;
|
|
20
|
-
constructor(...values: unknown[]);
|
|
21
18
|
private _a;
|
|
19
|
+
private _b;
|
|
20
|
+
private _c;
|
|
21
|
+
private _OA;
|
|
22
|
+
private _d;
|
|
23
|
+
private _n;
|
|
24
|
+
private _exists;
|
|
25
|
+
/**
|
|
26
|
+
* Value can be a mix of:
|
|
27
|
+
*
|
|
28
|
+
* @param values
|
|
29
|
+
*/
|
|
30
|
+
constructor(...values: unknown[]);
|
|
22
31
|
get a(): Fraction;
|
|
23
32
|
set a(value: Fraction);
|
|
24
|
-
private _b;
|
|
25
33
|
get b(): Fraction;
|
|
26
34
|
set b(value: Fraction);
|
|
27
|
-
private _c;
|
|
28
35
|
get c(): Fraction;
|
|
29
36
|
set c(value: Fraction);
|
|
30
|
-
private _OA;
|
|
31
37
|
get OA(): Point;
|
|
32
38
|
set OA(value: Point);
|
|
33
|
-
private _d;
|
|
34
39
|
get d(): Vector;
|
|
35
40
|
set d(value: Vector);
|
|
36
|
-
private _n;
|
|
37
41
|
get n(): Vector;
|
|
38
|
-
private _exists;
|
|
39
42
|
get exists(): boolean;
|
|
40
43
|
get equation(): Equation;
|
|
41
44
|
get system(): {
|
|
@@ -1,10 +1,7 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
import { Line } from "./line";
|
|
6
|
-
import { Vector } from "./vector";
|
|
7
|
-
import { Fraction } from "../coefficients/fraction";
|
|
1
|
+
import { Fraction } from '../coefficients/fraction';
|
|
2
|
+
import { Vector } from './vector';
|
|
3
|
+
import { Line } from './line';
|
|
4
|
+
|
|
8
5
|
export declare class Point {
|
|
9
6
|
private _x;
|
|
10
7
|
private _y;
|
|
@@ -17,18 +14,23 @@ export declare class Point {
|
|
|
17
14
|
get tex(): string;
|
|
18
15
|
get display(): string;
|
|
19
16
|
get asVector(): Vector;
|
|
17
|
+
get key(): string;
|
|
18
|
+
static pmatrix: (a: any, b: any, c?: any) => string;
|
|
20
19
|
parse: (...values: unknown[]) => Point;
|
|
21
20
|
clone: () => Point;
|
|
22
21
|
zero: () => Point;
|
|
23
22
|
origin: () => Point;
|
|
24
23
|
middleOf: (P1: Point, P2: Point) => Point;
|
|
24
|
+
translate: (value: {
|
|
25
|
+
x: number | Fraction;
|
|
26
|
+
y: number | Fraction;
|
|
27
|
+
}) => Point;
|
|
25
28
|
texValues: (numberOfDigits: number) => string;
|
|
26
|
-
static pmatrix: (a: any, b: any, c?: any) => string;
|
|
27
29
|
distanceTo: (item: Point | Line) => {
|
|
28
30
|
value: number;
|
|
29
31
|
fraction: Fraction;
|
|
30
32
|
tex: string;
|
|
31
33
|
};
|
|
32
|
-
get key(): string;
|
|
33
34
|
isInListOfPoints: (list: Point[]) => boolean;
|
|
35
|
+
isEqual: (pt: Point) => boolean;
|
|
34
36
|
}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { Vector } from
|
|
3
|
-
import {
|
|
1
|
+
import { Line } from './line';
|
|
2
|
+
import { Vector } from './vector';
|
|
3
|
+
import { Point } from './point';
|
|
4
|
+
|
|
4
5
|
export interface remarquableLines {
|
|
5
6
|
'medians': {
|
|
6
7
|
'A': Line;
|
|
@@ -1,9 +1,6 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
*/
|
|
5
|
-
import { Fraction } from "../coefficients/fraction";
|
|
6
|
-
import { Point } from "./point";
|
|
1
|
+
import { Point } from './point';
|
|
2
|
+
import { Fraction } from '../coefficients/fraction';
|
|
3
|
+
|
|
7
4
|
export declare class Vector {
|
|
8
5
|
private _x;
|
|
9
6
|
private _y;
|
|
@@ -16,26 +13,26 @@ export declare class Vector {
|
|
|
16
13
|
get norm(): number;
|
|
17
14
|
get tex(): string;
|
|
18
15
|
get asPoint(): Point;
|
|
16
|
+
get isNull(): boolean;
|
|
17
|
+
static scalarProduct: (v1: Vector, v2: Vector) => Fraction;
|
|
18
|
+
static determinant: (v1: Vector, v2: Vector) => Fraction;
|
|
19
19
|
parse: (...values: any) => Vector;
|
|
20
20
|
clone: () => Vector;
|
|
21
21
|
reset: () => Vector;
|
|
22
22
|
zero: () => Vector;
|
|
23
23
|
one: () => Vector;
|
|
24
|
-
private _parseString;
|
|
25
24
|
opposed: () => Vector;
|
|
26
25
|
add: (V: Vector) => Vector;
|
|
27
26
|
subtract: (V: Vector) => Vector;
|
|
28
27
|
scalarProductWithVector: (V: Vector) => Fraction;
|
|
29
28
|
determinantWithVector: (V: Vector) => Fraction;
|
|
30
|
-
static scalarProduct: (v1: Vector, v2: Vector) => Fraction;
|
|
31
|
-
static determinant: (v1: Vector, v2: Vector) => Fraction;
|
|
32
29
|
normal: () => Vector;
|
|
33
30
|
isColinearTo: (v: Vector) => boolean;
|
|
34
31
|
isNormalTo: (v: Vector) => boolean;
|
|
35
|
-
get isNull(): boolean;
|
|
36
32
|
multiplyByScalar: (k: any) => Vector;
|
|
37
33
|
divideByScalar: (k: any) => Vector;
|
|
38
34
|
simplify: () => Vector;
|
|
39
35
|
simplifyDirection: () => Vector;
|
|
40
36
|
angleWith: (V: Vector, sharp?: Boolean, radian?: Boolean) => number;
|
|
37
|
+
private _parseString;
|
|
41
38
|
}
|
|
@@ -1,10 +1,12 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import { Fraction } from
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
|
|
1
|
+
import { Circle } from '../geometry/circle';
|
|
2
|
+
import { Point } from '../geometry/point';
|
|
3
|
+
import { Line } from '../geometry/line';
|
|
4
|
+
import { Fraction } from '../coefficients/fraction';
|
|
5
|
+
import { Monom } from '../algebra/monom';
|
|
6
|
+
import { Polynom } from '../algebra/polynom';
|
|
7
|
+
import { randomCoefficientConfig, randomGeometryCircleConfig, randomGeometryLineConfig, randomGeometryPointConfig, randomMonomConfig, randomPolynomConfig } from './rndTypes';
|
|
8
|
+
|
|
9
|
+
export * from './rndTypes';
|
|
8
10
|
export declare namespace Random {
|
|
9
11
|
function polynom(config?: randomPolynomConfig): Polynom;
|
|
10
12
|
function monom(config?: randomMonomConfig): Monom;
|
|
@@ -19,5 +21,6 @@ export declare namespace Random {
|
|
|
19
21
|
namespace Geometry {
|
|
20
22
|
function line(config?: randomGeometryLineConfig): Line;
|
|
21
23
|
function point(config?: randomGeometryPointConfig): Point;
|
|
24
|
+
function circle(config?: randomGeometryCircleConfig): Circle;
|
|
22
25
|
}
|
|
23
26
|
}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { randomCoefficientConfig } from
|
|
3
|
-
import {
|
|
1
|
+
import { Fraction } from '../coefficients/fraction';
|
|
2
|
+
import { randomCoefficientConfig } from './rndTypes';
|
|
3
|
+
import { randomCore } from './randomCore';
|
|
4
|
+
|
|
4
5
|
/**
|
|
5
6
|
* Create a random monom based on a based configuration
|
|
6
7
|
*/
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { Circle } from '../geometry/circle';
|
|
2
|
+
import { randomGeometryCircleConfig } from './random';
|
|
3
|
+
import { randomCore } from './randomCore';
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* Create a random monom based on a based configuration
|
|
7
|
+
*/
|
|
8
|
+
export declare class rndGeometryCircle extends randomCore {
|
|
9
|
+
protected _config: randomGeometryCircleConfig;
|
|
10
|
+
protected _defaultConfig: randomGeometryCircleConfig;
|
|
11
|
+
generate: () => Circle;
|
|
12
|
+
constructor(userConfig?: randomGeometryCircleConfig);
|
|
13
|
+
}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { randomGeometryLineConfig } from
|
|
3
|
-
import {
|
|
1
|
+
import { Line } from '../geometry/line';
|
|
2
|
+
import { randomGeometryLineConfig } from './random';
|
|
3
|
+
import { randomCore } from './randomCore';
|
|
4
|
+
|
|
4
5
|
/**
|
|
5
6
|
* Create a random monom based on a based configuration
|
|
6
7
|
*/
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { randomGeometryPointConfig } from
|
|
3
|
-
import {
|
|
1
|
+
import { Point } from '../geometry/point';
|
|
2
|
+
import { randomGeometryPointConfig } from './random';
|
|
3
|
+
import { randomCore } from './randomCore';
|
|
4
|
+
|
|
4
5
|
/**
|
|
5
6
|
* Create a random monom based on a based configuration
|
|
6
7
|
*/
|
|
@@ -1,12 +1,13 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { randomMonomConfig } from
|
|
3
|
-
import {
|
|
1
|
+
import { Monom } from '../algebra/monom';
|
|
2
|
+
import { randomMonomConfig } from './rndTypes';
|
|
3
|
+
import { randomCore } from './randomCore';
|
|
4
|
+
|
|
4
5
|
/**
|
|
5
6
|
* Create a random monom based on a based configuration
|
|
6
7
|
*/
|
|
7
8
|
export declare class rndMonom extends randomCore {
|
|
8
9
|
protected _config: randomMonomConfig;
|
|
9
10
|
protected _defaultConfig: randomMonomConfig;
|
|
10
|
-
constructor(userConfig?: randomMonomConfig);
|
|
11
11
|
generate: () => Monom;
|
|
12
|
+
constructor(userConfig?: randomMonomConfig);
|
|
12
13
|
}
|
|
@@ -1,13 +1,14 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { randomPolynomConfig } from
|
|
3
|
-
import {
|
|
1
|
+
import { Polynom } from '../algebra/polynom';
|
|
2
|
+
import { randomPolynomConfig } from './rndTypes';
|
|
3
|
+
import { randomCore } from './randomCore';
|
|
4
|
+
|
|
4
5
|
/**
|
|
5
6
|
* Random polynoms
|
|
6
7
|
*/
|
|
7
8
|
export declare class rndPolynom extends randomCore {
|
|
8
9
|
protected _config: randomPolynomConfig;
|
|
9
10
|
protected _defaultConfig: randomPolynomConfig;
|
|
10
|
-
constructor(userConfig?: randomPolynomConfig);
|
|
11
11
|
generate: () => Polynom;
|
|
12
|
+
constructor(userConfig?: randomPolynomConfig);
|
|
12
13
|
factorable: () => Polynom;
|
|
13
14
|
}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import { Fraction } from
|
|
1
|
+
import { Fraction } from '../coefficients/fraction';
|
|
2
|
+
|
|
2
3
|
export type randomCoefficientConfig = {
|
|
3
4
|
negative?: boolean;
|
|
4
5
|
max?: number;
|
|
@@ -32,3 +33,8 @@ export type randomGeometryPointConfig = {
|
|
|
32
33
|
fraction?: boolean;
|
|
33
34
|
max?: number;
|
|
34
35
|
};
|
|
36
|
+
export type randomGeometryCircleConfig = {
|
|
37
|
+
center?: randomGeometryPointConfig;
|
|
38
|
+
radius?: number;
|
|
39
|
+
pointsOnCircle?: number;
|
|
40
|
+
};
|