From 267b6086a9fb65b70300137aa322ac38c98d054d Mon Sep 17 00:00:00 2001 From: Iaroslav Date: Mon, 21 Sep 2020 18:59:02 +0700 Subject: [PATCH] Change package and specify public visibilities, fix old plugin ID --- kmath-ejml/build.gradle.kts | 2 +- .../kmath/ejml/EjmlMatrix.kt | 32 +++++++++---------- .../kmath/ejml/EjmlMatrixContext.kt | 26 +++++++-------- .../kmath/ejml/EjmlVector.kt | 6 ++-- 4 files changed, 33 insertions(+), 33 deletions(-) rename kmath-ejml/src/main/kotlin/{scientifik => kscience}/kmath/ejml/EjmlMatrix.kt (64%) rename kmath-ejml/src/main/kotlin/{scientifik => kscience}/kmath/ejml/EjmlMatrixContext.kt (76%) rename kmath-ejml/src/main/kotlin/{scientifik => kscience}/kmath/ejml/EjmlVector.kt (90%) diff --git a/kmath-ejml/build.gradle.kts b/kmath-ejml/build.gradle.kts index 58d8972b8..fa4aa3e39 100644 --- a/kmath-ejml/build.gradle.kts +++ b/kmath-ejml/build.gradle.kts @@ -1,5 +1,5 @@ plugins { - id("scientifik.jvm") + id("ru.mipt.npm.jvm") } dependencies { diff --git a/kmath-ejml/src/main/kotlin/scientifik/kmath/ejml/EjmlMatrix.kt b/kmath-ejml/src/main/kotlin/kscience/kmath/ejml/EjmlMatrix.kt similarity index 64% rename from kmath-ejml/src/main/kotlin/scientifik/kmath/ejml/EjmlMatrix.kt rename to kmath-ejml/src/main/kotlin/kscience/kmath/ejml/EjmlMatrix.kt index a4923b5e3..60e3aec8e 100644 --- a/kmath-ejml/src/main/kotlin/scientifik/kmath/ejml/EjmlMatrix.kt +++ b/kmath-ejml/src/main/kotlin/kscience/kmath/ejml/EjmlMatrix.kt @@ -1,29 +1,29 @@ -package scientifik.kmath.ejml +package kscience.kmath.ejml import org.ejml.dense.row.factory.DecompositionFactory_DDRM import org.ejml.simple.SimpleMatrix -import scientifik.kmath.linear.DeterminantFeature -import scientifik.kmath.linear.FeaturedMatrix -import scientifik.kmath.linear.LUPDecompositionFeature -import scientifik.kmath.linear.MatrixFeature -import scientifik.kmath.structures.NDStructure +import kscience.kmath.linear.DeterminantFeature +import kscience.kmath.linear.FeaturedMatrix +import kscience.kmath.linear.LUPDecompositionFeature +import kscience.kmath.linear.MatrixFeature +import kscience.kmath.structures.NDStructure /** * Represents featured matrix over EJML [SimpleMatrix]. * * @property origin the underlying [SimpleMatrix]. */ -class EjmlMatrix(val origin: SimpleMatrix, features: Set? = null) : FeaturedMatrix { - override val rowNum: Int +public class EjmlMatrix(public val origin: SimpleMatrix, features: Set? = null) : FeaturedMatrix { + public override val rowNum: Int get() = origin.numRows() - override val colNum: Int + public override val colNum: Int get() = origin.numCols() - override val shape: IntArray + public override val shape: IntArray get() = intArrayOf(origin.numRows(), origin.numCols()) - override val features: Set = setOf( + public override val features: Set = setOf( object : LUPDecompositionFeature, DeterminantFeature { override val determinant: Double get() = origin.determinant() @@ -50,21 +50,21 @@ class EjmlMatrix(val origin: SimpleMatrix, features: Set? = null) } ) union features.orEmpty() - override fun suggestFeature(vararg features: MatrixFeature): FeaturedMatrix = + public override fun suggestFeature(vararg features: MatrixFeature): FeaturedMatrix = EjmlMatrix(origin, this.features + features) - override operator fun get(i: Int, j: Int): Double = origin[i, j] + public override operator fun get(i: Int, j: Int): Double = origin[i, j] - override fun equals(other: Any?): Boolean { + public override fun equals(other: Any?): Boolean { if (other is EjmlMatrix) return origin.isIdentical(other.origin, 0.0) return NDStructure.equals(this, other as? NDStructure<*> ?: return false) } - override fun hashCode(): Int { + public override fun hashCode(): Int { var result = origin.hashCode() result = 31 * result + features.hashCode() return result } - override fun toString(): String = "EjmlMatrix(origin=$origin, features=$features)" + public override fun toString(): String = "EjmlMatrix(origin=$origin, features=$features)" } diff --git a/kmath-ejml/src/main/kotlin/scientifik/kmath/ejml/EjmlMatrixContext.kt b/kmath-ejml/src/main/kotlin/kscience/kmath/ejml/EjmlMatrixContext.kt similarity index 76% rename from kmath-ejml/src/main/kotlin/scientifik/kmath/ejml/EjmlMatrixContext.kt rename to kmath-ejml/src/main/kotlin/kscience/kmath/ejml/EjmlMatrixContext.kt index 1b59a89ca..b2d99ac3d 100644 --- a/kmath-ejml/src/main/kotlin/scientifik/kmath/ejml/EjmlMatrixContext.kt +++ b/kmath-ejml/src/main/kotlin/kscience/kmath/ejml/EjmlMatrixContext.kt @@ -1,26 +1,26 @@ -package scientifik.kmath.ejml +package kscience.kmath.ejml import org.ejml.simple.SimpleMatrix -import scientifik.kmath.linear.MatrixContext -import scientifik.kmath.linear.Point -import scientifik.kmath.operations.Space -import scientifik.kmath.operations.invoke -import scientifik.kmath.structures.Matrix +import kscience.kmath.linear.MatrixContext +import kscience.kmath.linear.Point +import kscience.kmath.operations.Space +import kscience.kmath.operations.invoke +import kscience.kmath.structures.Matrix /** * Represents context of basic operations operating with [EjmlMatrix]. */ -class EjmlMatrixContext(private val space: Space) : MatrixContext { +public class EjmlMatrixContext(private val space: Space) : MatrixContext { /** * Converts this matrix to EJML one. */ - fun Matrix.toEjml(): EjmlMatrix = + public fun Matrix.toEjml(): EjmlMatrix = if (this is EjmlMatrix) this else produce(rowNum, colNum) { i, j -> get(i, j) } /** * Converts this vector to EJML one. */ - fun Point.toEjml(): EjmlVector = + public fun Point.toEjml(): EjmlVector = if (this is EjmlVector) this else EjmlVector(SimpleMatrix(size, 1).also { (0 until it.numRows()).forEach { row -> it[row, 0] = get(row) } }) @@ -49,7 +49,7 @@ class EjmlMatrixContext(private val space: Space) : MatrixContext.times(value: Double): EjmlMatrix = EjmlMatrix(toEjml().origin.scale(value)) - companion object + public companion object } /** @@ -59,7 +59,7 @@ class EjmlMatrixContext(private val space: Space) : MatrixContext, b: Matrix): EjmlMatrix = +public fun EjmlMatrixContext.solve(a: Matrix, b: Matrix): EjmlMatrix = EjmlMatrix(a.toEjml().origin.solve(b.toEjml().origin)) /** @@ -69,7 +69,7 @@ fun EjmlMatrixContext.solve(a: Matrix, b: Matrix): EjmlMatrix = * @param b n by p vector. * @return the solution for 'x' that is n by p. */ -fun EjmlMatrixContext.solve(a: Matrix, b: Point): EjmlVector = +public fun EjmlMatrixContext.solve(a: Matrix, b: Point): EjmlVector = EjmlVector(a.toEjml().origin.solve(b.toEjml().origin)) /** @@ -78,4 +78,4 @@ fun EjmlMatrixContext.solve(a: Matrix, b: Point): EjmlVector = * @param a the matrix. * @return the inverse of this matrix. */ -fun EjmlMatrixContext.inverse(a: Matrix): EjmlMatrix = EjmlMatrix(a.toEjml().origin.invert()) +public fun EjmlMatrixContext.inverse(a: Matrix): EjmlMatrix = EjmlMatrix(a.toEjml().origin.invert()) diff --git a/kmath-ejml/src/main/kotlin/scientifik/kmath/ejml/EjmlVector.kt b/kmath-ejml/src/main/kotlin/kscience/kmath/ejml/EjmlVector.kt similarity index 90% rename from kmath-ejml/src/main/kotlin/scientifik/kmath/ejml/EjmlVector.kt rename to kmath-ejml/src/main/kotlin/kscience/kmath/ejml/EjmlVector.kt index dd7969e83..ccd660cc6 100644 --- a/kmath-ejml/src/main/kotlin/scientifik/kmath/ejml/EjmlVector.kt +++ b/kmath-ejml/src/main/kotlin/kscience/kmath/ejml/EjmlVector.kt @@ -1,8 +1,8 @@ -package scientifik.kmath.ejml +package kscience.kmath.ejml import org.ejml.simple.SimpleMatrix -import scientifik.kmath.linear.Point -import scientifik.kmath.structures.Buffer +import kscience.kmath.linear.Point +import kscience.kmath.structures.Buffer /** * Represents point over EJML [SimpleMatrix].