Mercurial > hg > octave-jordi
comparison liboctave/numeric/sparse-dmsolve.cc @ 20954:77f5591878bf
maint: Use '! expr' rather than '!expr' to conform to coding guidelines.
* dialog.h, documentation-dock-widget.cc, files-dock-widget.cc,
find-files-dialog.cc, file-editor-tab.cc, file-editor.cc, find-dialog.cc,
octave-qscintilla.cc, main-window.cc, parser.cc, resource-manager.cc,
workspace-view.cc, data.cc, dlmread.cc, gl-render.cc, gl2ps-renderer.cc,
graphics.cc, graphics.in.h, ls-hdf5.cc, ls-mat5.cc, ls-oct-binary.cc, lsode.cc,
mappers.cc, pt-jit.cc, regexp.cc, spparms.cc, symtab.h, utils.cc, zfstream.cc,
__eigs__.cc, __glpk__.cc, __init_fltk__.cc, ccolamd.cc, colamd.cc,
ov-base-diag.cc, ov-base-int.cc, ov-base-sparse.cc, ov-bool-mat.cc,
ov-bool-sparse.cc, ov-bool.cc, ov-class.cc, ov-cx-sparse.cc, ov-fcn-handle.cc,
ov-fcn-inline.cc, ov-java.cc, ov-perm.cc, ov-re-sparse.cc, ov-str-mat.cc,
ov-struct.cc, ov.cc, pt-mat.cc, Array.cc, Array.h, CMatrix.cc, CSparse.cc,
MatrixType.cc, PermMatrix.cc, Sparse.h, dMatrix.cc, dSparse.cc, fCMatrix.cc,
fMatrix.cc, idx-vector.cc, CollocWt.h, SparseCmplxLU.cc, SparseCmplxQR.cc,
SparseQR.cc, SparsedbleLU.cc, base-qr.cc, eigs-base.cc, oct-fftw.cc,
randmtzig.c, sparse-dmsolve.cc, kpse.cc, lo-regexp.cc, oct-locbuf.h,
url-transfer.cc, url-transfer.h, bitset.m, interp2.m, __isequal__.m,
inpolygon.m, questdlg.m, help.m, compare_versions.m, substruct.m,
configure_make.m, whitebg.m, __marching_cube__.m, struct2hdl.m, polyfit.m,
spline.m, unique.m, svds.m, ellipke.m, binoinv.m, hygepdf.m, nbininv.m,
poissinv.m, tcdf.m, unidcdf.m, unidpdf.m, dec2base.m, assert.m, weekday.m,
mkoctfile.in.cc:
maint: Use '! expr' rather than '!expr' to conform to coding guidelines.
author | Rik <rik@octave.org> |
---|---|
date | Sun, 20 Dec 2015 10:15:02 -0800 |
parents | f7084eae3318 |
children |
comparison
equal
deleted
inserted
replaced
20953:6982def1d416 | 20954:77f5591878bf |
---|---|
424 nnz_remaining -= m.nnz (); | 424 nnz_remaining -= m.nnz (); |
425 RT mtmp = | 425 RT mtmp = |
426 qrsolve (m, dmsolve_extract (btmp, 0, 0, dm->rr[2], b_nr, 0, | 426 qrsolve (m, dmsolve_extract (btmp, 0, 0, dm->rr[2], b_nr, 0, |
427 b_nc), info); | 427 b_nc), info); |
428 dmsolve_insert (retval, mtmp, q, dm->cc[3], 0); | 428 dmsolve_insert (retval, mtmp, q, dm->cc[3], 0); |
429 if (dm->rr[2] > 0 && !info) | 429 if (dm->rr[2] > 0 && ! info) |
430 { | 430 { |
431 m = dmsolve_extract (a, pinv, q, 0, dm->rr[2], | 431 m = dmsolve_extract (a, pinv, q, 0, dm->rr[2], |
432 dm->cc[3], nc, nnz_remaining, true); | 432 dm->cc[3], nc, nnz_remaining, true); |
433 nnz_remaining -= m.nnz (); | 433 nnz_remaining -= m.nnz (); |
434 RT ctmp = dmsolve_extract (btmp, 0, 0, 0, | 434 RT ctmp = dmsolve_extract (btmp, 0, 0, 0, |
437 } | 437 } |
438 } | 438 } |
439 | 439 |
440 // Structurally non-singular blocks | 440 // Structurally non-singular blocks |
441 // FIXME: Should use fine Dulmange-Mendelsohn decomposition here. | 441 // FIXME: Should use fine Dulmange-Mendelsohn decomposition here. |
442 if (dm->rr[1] < dm->rr[2] && dm->cc[2] < dm->cc[3] && !info) | 442 if (dm->rr[1] < dm->rr[2] && dm->cc[2] < dm->cc[3] && ! info) |
443 { | 443 { |
444 ST m = dmsolve_extract (a, pinv, q, dm->rr[1], dm->rr[2], | 444 ST m = dmsolve_extract (a, pinv, q, dm->rr[1], dm->rr[2], |
445 dm->cc[2], dm->cc[3], nnz_remaining, false); | 445 dm->cc[2], dm->cc[3], nnz_remaining, false); |
446 nnz_remaining -= m.nnz (); | 446 nnz_remaining -= m.nnz (); |
447 RT btmp2 = dmsolve_extract (btmp, 0, 0, dm->rr[1], dm->rr[2], | 447 RT btmp2 = dmsolve_extract (btmp, 0, 0, dm->rr[1], dm->rr[2], |
455 info = 0; | 455 info = 0; |
456 mtmp = qrsolve (m, btmp2, info); | 456 mtmp = qrsolve (m, btmp2, info); |
457 } | 457 } |
458 | 458 |
459 dmsolve_insert (retval, mtmp, q, dm->cc[2], 0); | 459 dmsolve_insert (retval, mtmp, q, dm->cc[2], 0); |
460 if (dm->rr[1] > 0 && !info) | 460 if (dm->rr[1] > 0 && ! info) |
461 { | 461 { |
462 m = dmsolve_extract (a, pinv, q, 0, dm->rr[1], dm->cc[2], | 462 m = dmsolve_extract (a, pinv, q, 0, dm->rr[1], dm->cc[2], |
463 dm->cc[3], nnz_remaining, true); | 463 dm->cc[3], nnz_remaining, true); |
464 nnz_remaining -= m.nnz (); | 464 nnz_remaining -= m.nnz (); |
465 RT ctmp = dmsolve_extract (btmp, 0, 0, 0, | 465 RT ctmp = dmsolve_extract (btmp, 0, 0, 0, |
467 btmp.insert (ctmp - m * mtmp, 0, 0); | 467 btmp.insert (ctmp - m * mtmp, 0, 0); |
468 } | 468 } |
469 } | 469 } |
470 | 470 |
471 // Trailing under-determined block | 471 // Trailing under-determined block |
472 if (dm->rr[1] > 0 && dm->cc[2] > 0 && !info) | 472 if (dm->rr[1] > 0 && dm->cc[2] > 0 && ! info) |
473 { | 473 { |
474 ST m = dmsolve_extract (a, pinv, q, 0, dm->rr[1], 0, | 474 ST m = dmsolve_extract (a, pinv, q, 0, dm->rr[1], 0, |
475 dm->cc[2], nnz_remaining, true); | 475 dm->cc[2], nnz_remaining, true); |
476 RT mtmp = | 476 RT mtmp = |
477 qrsolve (m, dmsolve_extract (btmp, 0, 0, 0, dm->rr[1] , 0, | 477 qrsolve (m, dmsolve_extract (btmp, 0, 0, 0, dm->rr[1] , 0, |