~logan/ubuntu/trusty/suitesparse/4.2.1-3ubuntu1

« back to all changes in this revision

Viewing changes to CHOLMOD/Tcov/solve.c

  • Committer: Bazaar Package Importer
  • Author(s): Christophe Prud'homme
  • Date: 2007-05-29 09:36:29 UTC
  • mfrom: (1.1.1 upstream)
  • Revision ID: james.westby@ubuntu.com-20070529093629-zowquo0b7slkk6nc
Tags: 3.0.0-2
* suitesparse builds properly twice in a row
* Bug fix: "suitesparse - FTBFS: Broken build depens: libgfortran1-dev",
  thanks to Bastian Blank (Closes: #426349).
* Bug fix: "suitesparse_3.0.0-1: FTBFS: build-depends on
  libgfortran1-dev", thanks to Steve Langasek (Closes: #426354).

Show diffs side-by-side

added added

removed removed

Lines of Context:
3
3
/* ========================================================================== */
4
4
 
5
5
/* -----------------------------------------------------------------------------
6
 
 * CHOLMOD/Tcov Module.  Version 1.3.  Copyright (C) 2005-2006, Timothy A. Davis
 
6
 * CHOLMOD/Tcov Module.  Copyright (C) 2005-2006, Timothy A. Davis
7
7
 * The CHOLMOD/Tcov Module is licensed under Version 2.0 of the GNU
8
8
 * General Public License.  See gpl.txt for a text of the license.
9
9
 * CHOLMOD is also available under other licenses; contact authors for details.
512
512
    /* convert L to LDL' packed or LL packed */
513
513
    /* ---------------------------------------------------------------------- */
514
514
 
 
515
    printf ("before change factor : %d\n", L ? L->is_super : -1) ;
515
516
    is_ll = (L == NULL) ? FALSE : (L->is_ll) ;
516
517
    Lxtype = (L == NULL) ? CHOLMOD_REAL : (L->xtype) ;
517
518
    CHOLMOD(change_factor) (Lxtype, is_ll, FALSE, TRUE, TRUE, Lcopy, cm) ;
 
519
    printf ("after change factor : %d\n", L ? L->is_super : -1) ;
518
520
 
519
521
    /* ---------------------------------------------------------------------- */
520
522
    /* extract L, D, and L' as matrices from Lcopy */
742
744
 
743
745
        /* solve LDL'x=b */
744
746
        X = CHOLMOD(solve) (CHOLMOD_LDLt, L, B, cm) ;
 
747
        /* printf ("LDL'x=b %p %p %p\n", Lo, X, B) ; */
745
748
        r = resid3 (Lo, D, Up, X, B) ;
746
749
        MAXERR (maxerr, r, 1) ;
747
750
        CHOLMOD(free_dense) (&X, cm) ;
748
751
 
749
752
        /* solve LDx=b */
750
753
        X = CHOLMOD(solve) (CHOLMOD_LD, L, B, cm) ;
 
754
        /* printf ("LDx=b %p %p %p\n", Lo, X, B) ; */
751
755
        r = resid3 (Lo, D, NULL, X, B) ;
752
756
        MAXERR (maxerr, r, 1) ;
753
757
        CHOLMOD(free_dense) (&X, cm) ;
754
758
 
755
759
        /* solve DL'x=b */
756
760
        X = CHOLMOD(solve) (CHOLMOD_DLt, L, B, cm) ;
 
761
        /* printf ("DL'x=b %p %p %p\n", D, X, B) ; */
757
762
        r = resid3 (D, Up, NULL, X, B) ;
758
763
        MAXERR (maxerr, r, 1) ;
759
764
        CHOLMOD(free_dense) (&X, cm) ;
760
765
 
761
766
        /* solve Lx=b */
762
767
        X = CHOLMOD(solve) (CHOLMOD_L, L, B, cm) ;
 
768
        /* printf ("Lx=b %p %p %p\n", Lo, X, B) ; */
763
769
        r = resid3 (Lo, NULL, NULL, X, B) ;
764
770
        MAXERR (maxerr, r, 1) ;
765
771
        CHOLMOD(free_dense) (&X, cm) ;
766
772
 
767
773
        /* solve L'x=b */
768
774
        X = CHOLMOD(solve) (CHOLMOD_Lt, L, B, cm) ;
 
775
        /* printf ("L'x=b %p %p %p\n", Up, X, B) ; */
769
776
        r = resid3 (Up, NULL, NULL, X, B) ;
770
777
        MAXERR (maxerr, r, 1) ;
771
778
        CHOLMOD(free_dense) (&X, cm) ;
772
779
 
773
780
        /* solve Dx=b */
774
781
        X = CHOLMOD(solve) (CHOLMOD_D, L, B, cm) ;
 
782
        /* printf ("Dx=b %p %p %p\n", D, X, B) ; */
775
783
        r = resid3 (D, NULL, NULL, X, B) ;
776
784
        MAXERR (maxerr, r, 1) ;
777
785
        CHOLMOD(free_dense) (&X, cm) ;