package edu.rice.linpack.Matrix.FMatrix; import edu.rice.linpack.util.*; public abstract class FUtil { public static float asum(int n, float[] V, int incx) { float dasum = 0; int ix = 0; for(int i=0;i 0 && Da != 1) { int ix = 0; for(int i=0;i= 10) { Det[0] /= 10; Det[1]++; } } public static void copy(int n, float[] A, int incx, int rx, float[] B, int incy, int ry) { if(n <= 0) return; int ix = 0; int iy = 0; if(incx < 0) ix = (-n+1)*incx; if(incy < 0) iy = (-n+1)*incy; for(int i=0;i Math.abs(Roe)) Roe = Q.getA(); float scale = Math.abs(Q.getA()) + Math.abs(Q.getB()); if(scale == 0) { Q.setCos(1); Q.setSin(0); R = 0; } else { R = scale*(float)Math.sqrt(Math.pow(Q.getA()/scale,2)+ Math.pow(Q.getB()/scale,2)); R = FUtil.signOf(1,Roe)*R; Q.setCos(Q.getA()/R); Q.setSin(Q.getB()/R); } float Z = 1; if(Math.abs(Q.getA()) > Math.abs(Q.getB())) Z = Q.getSin(); else if(Q.getCos() != 0) Z = 1/Q.getCos(); Q.setA(R); Q.setB(Z); } public static void Print(float[] S) { int n = S.length; System.out.print("Vector: "); for(int i=0;i