/*********************************************************************** * * * write_header() * * Function writes out header of output file containing ritz values * * * ***********************************************************************/ void write_header(long iterations, long dimensions, double endl, double endr, boolean b, double kappa, long nrow, long ncol, long vals) { printf("SOLVING THE [A^TA] EIGENPROBLEM\n"); printf("NO. OF ROWS = %6d\n", nrow); printf("NO. OF COLUMNS = %6d\n", ncol); printf("NO. OF NON-ZERO VALUES = %6d\n", vals); printf("MATRIX DENSITY = %6.2f%%\n", ((float) vals / nrow) * 100 / ncol); /* printf("ORDER OF MATRIX A = %5ld\n", n); */ printf("MAX. NO. OF LANCZOS STEPS = %6d\n", iterations); printf("MAX. NO. OF EIGENPAIRS = %6d\n", dimensions); printf("LEFT END OF THE INTERVAL = %9.2E\n", endl); printf("RIGHT END OF THE INTERVAL = %9.2E\n", endr); printf("KAPPA = %9.2E\n", kappa); /* printf("WANT S-VECTORS? [T/F] = %c\n", (vectors) ? 'T' : 'F'); */ printf("\n"); return; }
/*********************************************************************** * * * write_header() * * Function writes out header of output file containing ritz values * * * ***********************************************************************/ void write_header(long iterations, long dimensions, double endl, double endr, boolean b, double kappa, long nrow, long ncol, long vals) { printf("SOLVING THE [A^TA] EIGENPROBLEM\n"); printf("NO. OF ROWS = %6d\n", nrow); printf("NO. OF COLUMNS = %6d\n", ncol); printf("NO. OF NON-ZERO VALUES = %6d\n", vals); printf("MATRIX DENSITY = %6.2f%%\n", ((float) vals / nrow) * 100 / ncol); /* printf("ORDER OF MATRIX A = %5ld\n", n); */ printf("MAX. NO. OF LANCZOS STEPS = %6d\n", iterations); printf("MAX. NO. OF EIGENPAIRS = %6d\n", dimensions); printf("LEFT END OF THE INTERVAL = %9.2E\n", endl); printf("RIGHT END OF THE INTERVAL = %9.2E\n", endr); printf("KAPPA = %9.2E\n", kappa); /* printf("WANT S-VECTORS? [T/F] = %c\n", (vectors) ? 'T' : 'F'); */ printf("\n"); return; }
if (SVDVerbosity > 0) printf("TRANSPOSING THE MATRIX FOR SPEED\n"); transpose = true; A = svdTransposeS(A); printf("NUMBER OF LANCZOS STEPS = %6d\n" + "RITZ VALUES STABILIZED = %6d\n", steps + 1, neig); printf("\nCOMPUTED RITZ VALUES (ERROR BNDS)\n"); for (i = 0; i <= steps; i++) printf("%3d %22.14E (%11.2E)\n", i + 1, ritz[i], bnd[i]); printf("\nSINGULAR VALUES: "); svdWriteDenseArray(R.S, R.d, "-", false); printf("\nLEFT SINGULAR VECTORS (transpose of U): "); printf("\nRIGHT SINGULAR VECTORS (transpose of V): "); printf("SINGULAR VALUES FOUND = %6d\n", R.d);
if (SVDVerbosity > 0) printf("TRANSPOSING THE MATRIX FOR SPEED\n"); transpose = true; A = svdTransposeS(A); printf("NUMBER OF LANCZOS STEPS = %6d\n" + "RITZ VALUES STABILIZED = %6d\n", steps + 1, neig); printf("\nCOMPUTED RITZ VALUES (ERROR BNDS)\n"); for (i = 0; i <= steps; i++) printf("%3d %22.14E (%11.2E)\n", i + 1, ritz[i], bnd[i]); printf("\nSINGULAR VALUES: "); svdWriteDenseArray(R.S, R.d, "-", false); printf("\nLEFT SINGULAR VECTORS (transpose of U): "); printf("\nRIGHT SINGULAR VECTORS (transpose of V): "); printf("SINGULAR VALUES FOUND = %6d\n", R.d);