// TestSimeq.scala test on random numbers, check error import scala.util.Random._ object TestSimeq { var S = Simeq def main(args: Array[String]) { println("TestSimeq.scala running") var A = Array.ofDim[Double](4,4) var X = Array.ofDim[Double](4) var Xs = Array.ofDim[Double](4) var Y = Array.ofDim[Double](4) println("A * X = Y") println("A.length="+A.length+", A(0).length="+A(0).length) println("X.length="+X.length+", Y.length="+Y.length) for(i <- 0 until A.length) { for(j <- 0 until A(0).length) { A(i)(j) = nextDouble() println("A("+i+")("+j+")="+A(i)(j)) } X(i) = nextDouble() println("X("+i+")="+X(i)) } for(i <- 0 until A.length) { Y(i) = 0.0 for(j <- 0 until A(0).length) { Y(i) = Y(i) + A(i)(j)*X(j) } println("Y("+i+")="+Y(i)) } println("calling Xs = Simeq.solve(A,Y)") Xs = S.solve(A, Y) var err = 0.0 for(i <- 0 until A.length) { err = (X(i)-Xs(i)).abs println("Xs("+i+")="+Xs(i)+", err="+err) } println("TestSimeq.scala finished") } } // end TestSimeq.scala