public double apply(DoubleMatrix2D AA, DoubleMatrix2D BB) { return AA.zSum(); } }
public double apply(DoubleMatrix2D AA, DoubleMatrix2D BB) { return AA.zSum(); } }
public static double[] totalInstabilityDir(DoubleMatrix2D xi, List<Node> vars){ if (vars.size()!= xi.columns() || vars.size()!= xi.rows()) { throw new IllegalArgumentException("stability mat must have same number of rows and columns as there are vars"); } double[] D = new double[4]; int[] discInds = MixedUtils.getDiscreteInds(vars); int[] contInds = MixedUtils.getContinuousInds(vars); int p = contInds.length; int q = discInds.length; D[0] = xi.zSum()/ ((p+q-1)*(p+q)/2); D[1] = xi.viewSelection(contInds, contInds).zSum()/(p*(p-1)); D[2] = xi.viewSelection(contInds, discInds).zSum()/(p*q); D[3] = xi.viewSelection(discInds, discInds).zSum()/(q*(q-1)); return D; }
/** */ public static void doubleTest17(int size) { System.out.println("\n\n"); //DoubleMatrix2D A = Factory2D.make(values); DoubleMatrix2D A = Factory2D.ascending(3,4); DoubleMatrix2D B = Factory2D.ascending(2,3); DoubleMatrix2D C = Factory2D.ascending(1,2); B.assign(F.plus(A.zSum())); C.assign(F.plus(B.zSum())); /* System.out.println("\n"+A); System.out.println("\n"+B); System.out.println("\n"+C); System.out.println("\n"+Factory2D.diag(A,B,C)); */ //System.out.println("\n"+cern.colt.matrixpattern.Converting.toHTML(A.toString())); //System.out.println("\n"+cern.colt.matrixpattern.Converting.toHTML(B.toString())); //System.out.println("\n"+cern.colt.matrixpattern.Converting.toHTML(C.toString())); //System.out.println("\n"+cern.colt.matrixpattern.Converting.toHTML(Factory2D.diagonal(A,B,C).toString())); } /**
/** */ public static void doubleTest17(int size) { System.out.println("\n\n"); //DoubleMatrix2D A = Factory2D.make(values); DoubleMatrix2D A = Factory2D.ascending(3,4); DoubleMatrix2D B = Factory2D.ascending(2,3); DoubleMatrix2D C = Factory2D.ascending(1,2); B.assign(F.plus(A.zSum())); C.assign(F.plus(B.zSum())); /* System.out.println("\n"+A); System.out.println("\n"+B); System.out.println("\n"+C); System.out.println("\n"+Factory2D.diag(A,B,C)); */ //System.out.println("\n"+cern.colt.matrixpattern.Converting.toHTML(A.toString())); //System.out.println("\n"+cern.colt.matrixpattern.Converting.toHTML(B.toString())); //System.out.println("\n"+cern.colt.matrixpattern.Converting.toHTML(C.toString())); //System.out.println("\n"+cern.colt.matrixpattern.Converting.toHTML(Factory2D.diagonal(A,B,C).toString())); } /**
double v1 = params.phi.viewPart(lcumsum[i], lcumsum[j], l[i], l[j]).copy().assign(Functions.abs).zSum();
public static double[] totalInstabilityUndir(DoubleMatrix2D xi, List<Node> vars){ if (vars.size()!= xi.columns() || vars.size()!= xi.rows()) { throw new IllegalArgumentException("stability mat must have same number of rows and columns as there are vars"); } Algebra al = new Algebra(); //DoubleMatrix2D xiu = MGM.upperTri(xi.copy().assign(al.transpose(xi)),1); DoubleMatrix2D xiu = xi.copy().assign(xi.copy().assign(Functions.minus(1.0)), Functions.mult).assign(Functions.mult(-2.0)); double[] D = new double[4]; int[] discInds = MixedUtils.getDiscreteInds(vars); int[] contInds = MixedUtils.getContinuousInds(vars); int p = contInds.length; int q = discInds.length; double temp = MGM.upperTri(xiu.copy(),1).zSum(); D[0] = temp/ ((p+q-1.0)*(p+q)/2.0); temp = MGM.upperTri(xiu.viewSelection(contInds, contInds).copy(), 1).zSum(); D[1] = temp/(p*(p-1.0)/2.0); temp = xiu.viewSelection(contInds, discInds).zSum(); D[2] = temp/(p*q); temp = MGM.upperTri(xiu.viewSelection(discInds, discInds).copy(), 1).zSum(); D[3] = temp/(q*(q-1.0)/2.0); return D; }
double betaNorms = absBeta.assign(betaWeight, Functions.mult).zSum();
LOGGER.info("TC matrix fetched from db = {}", closureInDatabase); double zSumResultBefore = result.zSum(); double zSumClosureInDb = closureInDatabase.zSum(); result.assign(closureInDatabase, Functions.minus); double zSumResultAfter = result.zSum(); LOGGER.info("Summary of items in closure computed: {}, in DB-stored closure: {}, delta: {}", zSumResultBefore, zSumClosureInDb, zSumResultAfter);