/* Ċ Ġ* ĠCopyright Ġ 2 0 1 8 - 2 0 2 1 ĠK Math Ġcontributors . Ċ Ġ* ĠUse Ġof Ġthis Ġsource Ġcode Ġis Ġgoverned Ġby Ġthe ĠApache Ġ 2 . 0 Ġlicense Ġthat Ġcan Ġbe Ġfound Ġin Ġthe Ġlicense / LICENSE . txt Ġfile . Ċ Ġ*/ Ċ Ċ package Ġk ace ince . k math . real Ċ Ċ import Ġspace . k science . k math . linear . Linear Space Ċ import Ġspace . k science . k math . linear . as Matrix Ċ import Ġspace . k science . k math . linear . transpose Ċ import Ġspace . k science . k math . real . plus Ċ import Ġspace . k science . k math . structures . Double Buffer Ċ import Ġkotlin . test . Test Ċ import Ġkotlin . test . assertEquals Ċ Ċ internal Ġclass ĠDouble Vector Test Ġ{ ĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġtest Sum () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġvector 1 Ġ= ĠDouble Buffer ( 5 ) Ġ{ Ġit . toDouble () Ġ} ĊĠĠĠĠĠĠĠ Ġval Ġvector 2 Ġ= ĠDouble Buffer ( 5 ) Ġ{ Ġ 5 Ġ- Ġit . toDouble () Ġ} ĊĠĠĠĠĠĠĠ Ġval Ġsum Ġ= Ġvector 1 Ġ+ Ġvector 2 ĊĠĠĠĠĠĠĠ ĠassertEquals ( 5 . 0 , Ġsum [ 2 ]) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġtest Vector To Matrix () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġvector Ġ= ĠDouble Buffer ( 5 ) Ġ{ Ġit . toDouble () Ġ} ĊĠĠĠĠĠĠĠ Ġval Ġmatrix Ġ= Ġvector . as Matrix () ĊĠĠĠĠĠĠĠ ĠassertEquals ( 4 . 0 , Ġmatrix [ 4 , Ġ 0 ]) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġtest Dot () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġvector 1 Ġ= ĠDouble Buffer ( 5 ) Ġ{ Ġit . toDouble () Ġ} ĊĠĠĠĠĠĠĠ Ġval Ġvector 2 Ġ= ĠDouble Buffer ( 5 ) Ġ{ Ġ 5 Ġ- Ġit . toDouble () Ġ} ĊĠĠĠĠĠĠĠ Ġval Ġmatrix 1 Ġ= Ġvector 1 . as Matrix () ĊĠĠĠĠĠĠĠ Ġval Ġmatrix 2 Ġ= Ġvector 2 . as Matrix (). transpose () ĊĠĠĠĠĠĠĠ Ġval Ġproduct Ġ= ĠLinear Space . real . run Ġ{ Ġmatrix 1 Ġdot Ġmatrix 2 Ġ} ĊĠĠĠĠĠĠĠ ĠassertEquals ( 5 . 0 , Ġproduct [ 1 , Ġ 0 ]) ĊĠĠĠĠĠĠĠ ĠassertEquals ( 6 . 0 , Ġproduct [ 2 , Ġ 2 ]) ĊĠĠĠ Ġ} Ċ } Ċ