What is Multik?
developMultik is a multiplatform library for multidimensional array operations in Kotlin. It provides high-speed mathematical and arithmetic operations, linear algebra, statistical procedures, and transformation/sorting utilities.
Key advantages over the Kotlin standard library include:
- Reduced Complexity: Simplifies matrix and multidimensional array manipulations.
- Improved Readability: Uses intuitive operators (like
*for element-wise multiplication) instead of nested loops. - Static Typing & Dimensional Consistency: Detects data type and dimension mismatches at compile-time.
- High Performance: Uses contiguous memory blocks and optional native backends like OpenBLAS.
val a = mk.ndarray(mk[mk[1, 2, 3], mk[4, 5, 6]])
val b = mk.ndarray(mk[mk[7, 8, 9], mk[10, 11, 12]])
val c = a * b
println(c)
/*
[[7, 16, 27],
[40, 55, 72]]
*/