@@ -14,13 +14,32 @@ describe('Positive linear combination', () => {
14
14
[ 0 , 0 , 0 , 0 , 0 , 0 , 0 , 10 , 100 , 10 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 ] ,
15
15
[ 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 10 , 100 , 10 ] ,
16
16
] ) ;
17
- let vector = new Matrix ( [ [ 0 , 20 , 100 , 20 , 0 , 0 , 0 , 0 , 0 , 5 , 100 , 5 , 0 , 0 , 0 , 20 , 200 , 20 ] ] ) ;
17
+ let vector = new Matrix (
18
+ [ [ 0 , 20 , 100 , 20 , 0 , 0 , 0 , 0 , 0 , 5 , 100 , 5 , 0 , 0 , 0 , 20 , 200 , 20 ] ] ) ;
18
19
let solutions = Matrix . zeros ( 1 , base . columns ) ;
19
20
let expected = new Matrix ( [ [ 1 , 0 , 1 , 0 , 0 , 2 ] ] ) ;
20
21
21
22
solutions = positiveLinearCombination ( base , vector ) ;
22
23
23
24
expect ( solutions ) . toEqual ( expected ) ;
24
25
} ) ;
25
- } ) ;
26
+ it ( 'Decimal Base I' , ( ) => {
27
+ let base = new Matrix ( [
28
+ [ 0 , 20 , 100 , 20 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 ] ,
29
+ [ 0 , 0 , 0 , 0 , 0 , 30 , 100 , 30 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 ] ,
30
+ [ 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 5 , 100 , 5 , 0 , 0 , 0 , 0 , 0 , 0 ] ,
31
+ [ 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 15 , 100 , 15 , 0 , 0 , 0 ] ,
32
+ [ 0 , 0 , 0 , 0 , 0 , 0 , 0 , 10 , 100 , 10 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 ] ,
33
+ [ 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 10 , 100 , 10 ] ,
34
+ ] ) ;
35
+ let vector = new Matrix (
36
+ [ [ 0 , 20 , 100 , 20 , 0 , 0 , 0 , 0 , 0 , 5 , 100 , 5 , 0 , 0 , 0 , 5 , 50 , 5 ] ] ) ;
37
+ let solutions = Matrix . zeros ( 1 , base . columns ) ;
38
+ let expected = new Matrix ( [ [ 1 , 0 , 1 , 0 , 0 , 0.5 ] ] ) ;
39
+
40
+ solutions = positiveLinearCombination ( base , vector , { lowestDecimal : 0.5 } ) ;
26
41
42
+ console . table ( solutions ) ;
43
+ expect ( solutions ) . toEqual ( expected ) ;
44
+ } ) ;
45
+ } ) ;
0 commit comments