|
5 | 5 | package org.jetbrains.kotlinx.multik_kotlin.linAlg |
6 | 6 |
|
7 | 7 |
|
8 | | -import org.jetbrains.kotlinx.multik.api.* |
| 8 | +import kotlin.math.abs |
| 9 | +import kotlin.math.max |
| 10 | +import kotlin.math.min |
| 11 | +import kotlin.random.Random |
| 12 | +import kotlin.test.Test |
| 13 | +import kotlin.test.assertContentEquals |
| 14 | +import kotlin.test.assertEquals |
| 15 | +import kotlin.test.assertFailsWith |
| 16 | +import kotlin.test.assertTrue |
| 17 | +import org.jetbrains.kotlinx.multik.api.d1array |
| 18 | +import org.jetbrains.kotlinx.multik.api.d2array |
9 | 19 | import org.jetbrains.kotlinx.multik.api.linalg.Norm |
10 | 20 | import org.jetbrains.kotlinx.multik.api.linalg.dot |
11 | 21 | import org.jetbrains.kotlinx.multik.api.linalg.norm |
12 | | -import org.jetbrains.kotlinx.multik.kotlin.linalg.* |
| 22 | +import org.jetbrains.kotlinx.multik.api.mk |
| 23 | +import org.jetbrains.kotlinx.multik.api.ndarray |
| 24 | +import org.jetbrains.kotlinx.multik.api.zeros |
| 25 | +import org.jetbrains.kotlinx.multik.kotlin.linalg.KELinAlg |
| 26 | +import org.jetbrains.kotlinx.multik.kotlin.linalg.KELinAlgEx |
13 | 27 | import org.jetbrains.kotlinx.multik.kotlin.linalg.KELinAlgEx.solve |
14 | 28 | import org.jetbrains.kotlinx.multik.kotlin.linalg.KELinAlgEx.solveC |
| 29 | +import org.jetbrains.kotlinx.multik.kotlin.linalg.conjTranspose |
| 30 | +import org.jetbrains.kotlinx.multik.kotlin.linalg.dotMatrixComplex |
| 31 | +import org.jetbrains.kotlinx.multik.kotlin.linalg.gramShmidtComplexDouble |
| 32 | +import org.jetbrains.kotlinx.multik.kotlin.linalg.qrComplexDouble |
| 33 | +import org.jetbrains.kotlinx.multik.kotlin.linalg.schurDecomposition |
| 34 | +import org.jetbrains.kotlinx.multik.kotlin.linalg.upperHessenbergDouble |
15 | 35 | import org.jetbrains.kotlinx.multik.ndarray.complex.Complex |
16 | 36 | import org.jetbrains.kotlinx.multik.ndarray.complex.ComplexDouble |
17 | 37 | import org.jetbrains.kotlinx.multik.ndarray.complex.ComplexFloat |
18 | 38 | import org.jetbrains.kotlinx.multik.ndarray.complex.toComplexDouble |
19 | | -import org.jetbrains.kotlinx.multik.ndarray.data.* |
| 39 | +import org.jetbrains.kotlinx.multik.ndarray.data.D1Array |
| 40 | +import org.jetbrains.kotlinx.multik.ndarray.data.D2 |
| 41 | +import org.jetbrains.kotlinx.multik.ndarray.data.D2Array |
| 42 | +import org.jetbrains.kotlinx.multik.ndarray.data.DataType |
| 43 | +import org.jetbrains.kotlinx.multik.ndarray.data.Dim2 |
| 44 | +import org.jetbrains.kotlinx.multik.ndarray.data.MultiArray |
| 45 | +import org.jetbrains.kotlinx.multik.ndarray.data.NDArray |
| 46 | +import org.jetbrains.kotlinx.multik.ndarray.data.get |
| 47 | +import org.jetbrains.kotlinx.multik.ndarray.data.set |
20 | 48 | import org.jetbrains.kotlinx.multik.ndarray.operations.map |
21 | 49 | import org.jetbrains.kotlinx.multik.ndarray.operations.minus |
22 | 50 | import org.jetbrains.kotlinx.multik.ndarray.operations.plus |
23 | | -import kotlin.math.abs |
24 | | -import kotlin.math.max |
25 | | -import kotlin.math.min |
26 | | -import kotlin.random.Random |
27 | | -import kotlin.test.* |
28 | 51 |
|
29 | 52 | class KELinAlgTest { |
30 | 53 |
|
@@ -492,6 +515,16 @@ class KELinAlgTest { |
492 | 515 | } |
493 | 516 |
|
494 | 517 | } |
| 518 | + |
| 519 | + @Test |
| 520 | + fun compute_norm_for_vector() { |
| 521 | + val vector = mk.ndarray(mk[1.1, 0.0, 3.2, 2.3, 5.0]) |
| 522 | + |
| 523 | + assertEquals(6.460650122085238, mk.linalg.norm(vector, Norm.Fro)) |
| 524 | + assertEquals(11.600000000000001, mk.linalg.norm(vector, Norm.Inf)) |
| 525 | + assertEquals(5.0, mk.linalg.norm(vector, Norm.N1)) |
| 526 | + assertEquals(5.0, mk.linalg.norm(vector, Norm.Max)) |
| 527 | + } |
495 | 528 | } |
496 | 529 |
|
497 | 530 |
|
|
0 commit comments