/* Ċ Ġ* ĠCopyright Ġ 2 0 2 0 - 2 0 2 1 ĠJetBrains Ġs . r . o . ĠUse Ġof Ġthis Ġsource Ġcode Ġis Ġgoverned Ġby Ġthe ĠApache Ġ 2 . 0 Ġlicense . Ċ Ġ*/ Ċ Ċ package Ġorg . jetbrains . kotlin x . mult ik . api . linalg Ċ Ċ import Ġorg . jetbrains . kotlin x . mult ik . ndarray . complex . Complex Ċ import Ġorg . jetbrains . kotlin x . mult ik . ndarray . data . D 2 Ċ import Ġorg . jetbrains . kotlin x . mult ik . ndarray . data . D 2 Array Ċ import Ġorg . jetbrains . kotlin x . mult ik . ndarray . data . Multi Array Ċ import Ġkotlin . jvm . Jvm Name Ċ Ċ /** Ċ Ġ* ĠReturns ĠP LU Ġdecomposition Ġof Ġthe Ġfloat Ġmatrix Ċ Ġ*/ Ċ @ Jvm Name (" pl uF ") Ċ public Ġfun ĠLin Alg . pl u ( mat : ĠMulti Array < Float , ĠD 2 >): ĠTrip le < D 2 Array < Float >, ĠD 2 Array < Float >, ĠD 2 Array < Float >> Ġ= Ġthis . lin Alg Ex . pl uF ( mat ) Ċ Ċ /** Ċ Ġ* ĠReturns ĠP LU Ġdecomposition Ġof Ġthe Ġnumeric Ġmatrix Ċ Ġ*/ Ċ @ Jvm Name (" pl uD ") Ċ public Ġfun Ġ< T Ġ: ĠNumber > ĠLin Alg . pl u ( mat : ĠMulti Array < T , ĠD 2 >): ĠTrip le < D 2 Array < Double >, ĠD 2 Array < Double >, ĠD 2 Array < Double >> Ġ= Ġthis . lin Alg Ex . pl u ( mat ) Ċ Ċ /** Ċ Ġ* ĠReturns ĠP LU Ġdecomposition Ġof Ġthe Ġcomplex Ġmatrix Ċ Ġ*/ Ċ @ Jvm Name (" pl u C ") Ċ public Ġfun Ġ< T Ġ: ĠComplex > ĠLin Alg . pl u ( mat : ĠMulti Array < T , ĠD 2 >): ĠTrip le < D 2 Array < T >, ĠD 2 Array < T >, ĠD 2 Array < T >> Ġ= Ġthis . lin Alg Ex . pl u C ( mat )