[SciPy-dev] [announce] scikits.sparse v0.1, wrapper for CHOLMOD (and hopefully more)

Nathaniel Smith njs at pobox.com
Sun Dec 27 03:39:38 EST 2009


On Sat, Dec 26, 2009 at 5:37 AM,  <josef.pktd at gmail.com> wrote:
> I was answering the general question of Robert. In this case, I also
> agree, especially because they are methods and not functions.
> I finally looked at the manual, which looks very informative.

Thanks! And I very much appreciate the feedback from everyone here,
it's very helpful -- docs are hard to get right without review!

> The only method names, I got stuck with, are
>
> Factor.L_D() versus Factor.LD() and warning with Factor.L()
>
> Factor.L()  is Factor.L_inLL
> Factor.L_D() is Factor.L_inLDL
>
> and does L in Factor.solve_L()  refer to L in LL or in LDL ?  or is it
> irrelevant?

There is a paragraph at the top of the "Solving equations" section
which specifies that all the solve_* methods work in the LDL' form,
but in general... I totally agree, the LL' vs. LDL' distinction --
where there are two distinct matrices both called "L" -- is very
confusing. I am not sure what to do about that, because it's the
standard notation that's broken here, but I am strongly tempted to
declare that in *my* docs one of them is called something else.
However, I'm not sure what to call it instead -- I suppose "M", as the
next letter after "L", unless someone has a better idea...

There is a similar problem, though less extreme, for naming the matrix
that is being factored -- the CHOLMOD docs refer to both the matrix
being factored and the matrix you pass in to the library by the name
"A", even though this may not be the same (you can have CHOLMOD square
and add a constant to the matrix you pass in before factoring). On
second thought, these should perhaps have different names as well.

-- Nathaniel



More information about the SciPy-Dev mailing list