This bugzilla service is closed. All entries have been migrated to https://gitlab.com/libeigen/eigen
View | Details | Raw Unified | Return to bug 792
Collapse All | Expand All

(-)eigen-3.2.5-vanilla/Eigen/src/SparseLU/SparseLU_pivotL.h (-1 / +7 lines)
Lines 71-77 Link Here
71
  
71
  
72
  // Determine the largest abs numerical value for partial pivoting 
72
  // Determine the largest abs numerical value for partial pivoting 
73
  Index diagind = iperm_c(jcol); // diagonal index 
73
  Index diagind = iperm_c(jcol); // diagonal index 
74
  RealScalar pivmax = 0.0; 
74
  RealScalar pivmax = -1.0;
75
  Index pivptr = nsupc; 
75
  Index pivptr = nsupc; 
76
  Index diag = emptyIdxLU; 
76
  Index diag = emptyIdxLU; 
77
  RealScalar rtemp;
77
  RealScalar rtemp;
Lines 86-91 Link Here
86
    if (lsub_ptr[isub] == diagind) diag = isub;
86
    if (lsub_ptr[isub] == diagind) diag = isub;
87
  }
87
  }
88
  
88
  
89
  // Test for singularity (pivoting fails)
90
  if ( pivmax == -1.0 ) {
91
    perm_r[diagind] = jcol;
92
    return (jcol+1);
93
  }
94
89
  // Test for singularity
95
  // Test for singularity
90
  if ( pivmax == 0.0 ) {
96
  if ( pivmax == 0.0 ) {
91
    pivrow = lsub_ptr[pivptr];
97
    pivrow = lsub_ptr[pivptr];

Return to bug 792