Home | History | Annotate | Download | only in SparseLU

Lines Matching refs:glu

49  * \param glu Global LU data
53 void SparseLUImpl<Scalar,Index>::pruneL(const Index jcol, const IndexVector& perm_r, const Index pivrow, const Index nseg, const IndexVector& segrep, BlockIndexVector repfnz, IndexVector& xprune, GlobalLU_t& glu)
56 Index jsupno = glu.supno(jcol);
72 if (glu.supno(irep) == glu.supno(irep1) ) continue; // don't prune
75 if (glu.supno(irep) != jsupno )
77 if ( xprune (irep) >= glu.xlsub(irep1) )
79 kmin = glu.xlsub(irep);
80 kmax = glu.xlsub(irep1) - 1;
83 if (glu.lsub(krow) == pivrow)
96 if (irep == glu.xsup(glu.supno(irep)) ) // Snode of size 1
101 if (perm_r(glu.lsub(kmax)) == emptyIdxLU)
103 else if ( perm_r(glu.lsub(kmin)) != emptyIdxLU)
109 std::swap(glu.lsub(kmin), glu.lsub(kmax));
117 minloc = glu.xlusup(irep) + ( kmin - glu.xlsub(irep) );
118 maxloc = glu.xlusup(irep) + ( kmax - glu.xlsub(irep) );
119 std::swap(glu.lusup(minloc), glu.lusup(maxloc));