dwww Home | Show directory contents | Find package

LDL Copyright (c) 2005-2013 by Timothy A. Davis. http://www.suitesparse.com

LDL: a sparse LDL' factorization and solve package.
    Written in C, with both a C and MATLAB mexFunction interface. 

These routines are not terrifically fast (they do not use dense matrix kernels),
but the code is very short and concise.  The purpose is to illustrate the
algorithms in a very concise and readable manner, primarily for educational
purposes.  Although the code is very concise, this package is slightly faster
than the built-in sparse Cholesky factorization in MATLAB 6.5 (chol), when
using the same input permutation.

Requires SuiteSparse_config, in the ../SuiteSparse_config directory relative to
this directory.

Quick start (Unix, or Windows with Cygwin):

    To compile, test, and install LDL, you may wish to first obtain a copy of
    AMD from http://www.suitesparse.com and place it in the
    ../AMD directory, relative to this directory.  Next, type "make", which
    will compile the LDL library and three demo main programs (one of which
    requires AMD).  It will also compile the LDL MATLAB mexFunction (if you
    have MATLAB).  Typing "make clean" will remove non-essential files.
    AMD v2.4 or later is required.  Its use is optional.

Quick start (for MATLAB users);

    To compile, test, and install the LDL mexFunctions (ldlsparse and
    ldlsymbol), start MATLAB in this directory and type ldl_install.
    This works on any system supported by MATLAB.

--------------------------------------------------------------------------------

LDL License: see LDL/Doc/License.txt for the license

Availability:

    http://www.suitesparse.com

Acknowledgements:

    This work was supported by the National Science Foundation, under
    grant CCR-0203270.

    Portions of this work were done while on sabbatical at Stanford University
    and Lawrence Berkeley National Laboratory (with funding from the SciDAC
    program).  I would like to thank Gene Golub, Esmond Ng, and Horst Simon
    for making this sabbatical possible.  I would like to thank Pete Stewart
    for his comments on a draft of this software and paper.

--------------------------------------------------------------------------------
Files and directories in this distribution:
--------------------------------------------------------------------------------

    Documentation, and compiling:

        README.txt      this file
        Makefile        for compiling LDL
        ChangeLog       changes since V1.0 (Dec 31, 2003)
        License.txt     license

        ldl_userguide.pdf   user guide in PDF
        ldl_userguide.ps    user guide in postscript
        ldl_userguide.tex   user guide in Latex
        ldl.bib             bibliography for user guide

    The LDL library itself:

        ldl.c           the C-callable routines
        ldl.h           include file for any code that calls LDL

    A simple C main program that demonstrates how to use LDL:

        ldlsimple.c     a stand-alone C program, uses the basic features of LDL
        ldlsimple.out   output of ldlsimple

        ldllsimple.c    long integer version of ldlsimple.c

    Demo C program, for testing LDL and providing an example of its use

        ldlmain.c       a stand-alone C main program that uses and tests LDL
        Matrix          a directory containing matrices used by ldlmain.c
        ldlmain.out     output of ldlmain
        ldlamd.out      output of ldlamd (ldlmain.c compiled with AMD)
        ldllamd.out     output of ldllamd (ldlmain.c compiled with AMD, long)

    MATLAB-related, not required for use in a regular C program

        Contents.m      a list of the MATLAB-callable routines
        ldl.m           MATLAB help file for the LDL mexFunction
        ldldemo.m       MATLAB demo of how to use the LDL mexFunction
        ldldemo.out     diary output of ldldemo
        ldltest.m       to test the LDL mexFunction
        ldltest.out     diary output of ldltest
        ldlmex.c        the LDL mexFunction for MATLAB
        ldlrow.m        the numerical algorithm that LDL is based on
        ldlmain2.m      compiles and runs ldlmain.c as a MATLAB mexFunction
        ldlmain2.out    output of ldlmain2.m
        ldlsymbolmex.c  symbolic factorization using LDL (see SYMBFACT, ETREE)
        ldlsymbol.m     help file for the LDLSYMBOL mexFunction

        ldl_install.m   compile, install, and test LDL functions
        ldl_make.m      compile LDL (ldlsparse and ldlsymbol)

        ldlsparse.m     help for ldlsparse

See ldl.c for a description of how to use the code from a C program.  Type
"help ldl" in MATLAB for information on how to use LDL in a MATLAB program.

Generated by dwww version 1.14 on Sat Sep 6 06:14:31 CEST 2025.