De Doolittle-decompositie is een algoritme voor de LU-decompositie van een vierkante niet-singuliere matrix in een benedendriehoeksmatrix
en een bovendriehoeksmatrix
. In de matrix
zijn de elementen op de hoofddiagonaal gelijk aan 1.
De methode werd in 1878 voorgesteld door Myrick H. Doolittle, een wiskundige verbonden aan de U.S. Coast and Geodetic Survey.[1]
Zij
een
-matrix met elementen ai,j. De Doolittle-decompositie is formeel gezien een Gauss-eliminatie. Het algoritme begint dan met als
de
-eenheidsmatrix en
gelijk aan
. In
stappen wordt
herleid tot een bovendriehoeksmatrix en
tot een benedendriehoeksmatrix, zodanig dat het matrixproduct
steeds gelijk blijft aan
.
In de
-de stap worden de elementen onder de hoofddiagonaal in de
-de kolom van
op nul gebracht. Dit gebeurt door rij
met de juiste factor te vermenigvuldigen en dan af te trekken van rij
, wat een nieuwe rij
geeft
. De factoren zijn de verhoudingen van de elementen in de rijen
en
in kolom
. Die factoren,
, kopiëren we in de corresponderende kolom van
.
Indien
een element
op de hoofddiagonaal heeft dat nul is, gaat dit natuurlijk niet op. In dat geval moet de rij
verwisseld worden met een onderliggende rij
waarin
niet nul is. De verwisseling gebeurt ook in
. De verwisselingen kunnen bijgehouden worden in een permutatiematrix
. In het begin is
de eenheidsmatrix. Wanneer twee rijen in
en
verwisseld worden, worden dezelfde rijen in
verwisseld. De decompositie is dan niet langer
maar
.
Indien men rekening houdt met de specifieke structuur van
en
, kan men de coëfficiënten ervan een voor een berekenen. Immers als men het matrixproduct
uitschrijft, verkrijgt men een stelsel van
lineaire vergelijkingen in de
onbekende coëfficiënten van
en
. Maar deze vergelijkingen kan men zo rangschikken dat elke volgende vergelijking een nieuwe coëfficiënt geeft; bijvoorbeeld:

of 
of
enz.;

of 
of
enz.;

of 
of
enz.
Op deze manier kan men de coëfficiënten van
en
, een voor een, rechtstreeks berekenen. Dit is de "compacte" vorm van de Doolittle-decompositie.
Gegeven:

We beginnen met als matrix
de eenheidsmatrix en
gelijk aan
:

In de eerste stap zijn de factoren om de elementen onder de diagonaal in de eerste kolom van
op nul te krijgen, respectievelijk −1, 2 en −3. Die komen onder de diagonaal in de eerste kolom van
. In
vermenigvuldigen we de eerste rij met −1 en trekken die af van de tweede rij; dat wordt de nieuwe tweede rij; analoog voor de derde en vierde rij. Dit geeft als tussenstand:

Men kan nagaan dat het product van deze twee matrices de oorspronkelijk matrix
is.
Om de elementen onder de diagonaal in de tweede kolom van
op nul te krijgen moeten we van de derde rij van
de tweede rij van
vermenigvuldigd met −5 aftrekken, en van de vierde rij van
de tweede rij vermenigvuldigd met 8. Dit geeft:

In de laatste stap staat het enige overgebleven element onder de hoofddiagonaal van
in de derde kolom. Door de derde rij van
te vermenigvuldigen met 3 en af te trekken van de vierde rij wordt dit nul:

Daarmee is de decompositie van
in
beëindigd. In dit geval was er geen verwisseling van rijen nodig.
Om een stelsel van lineaire vergelijkingen
op te lossen gaat men als volgt te werk:
- Vorm de matrices
en
:
. We noemen
het (voorlopig onbekende) product
.
- Los
op door voorwaartse substitutie.
- Los
op door achterwaartse substitutie.
Wanneer bijvoorbeeld
, vinden we achtereenvolgens:

waaruit 
waaruit 
waaruit 
en:
of 
waaruit 
waaruit 
waaruit 
Indien deze methode in een computerprogramma wordt geïmplementeerd, is het niet nodig om twee afzonderlijke matrices voor
en
te gebruiken. Ze kunnen compact in een enkele matrix bewaard worden (daarvoor kan zelfs de matrix
dienen als deze mag overschreden worden). Het is immers niet nodig om de elementen op de hoofddiagonaal van
te bewaren, die per definitie gelijk zijn aan 1. De rij-permutaties kunnen bijgehouden worden in een permutatievector van
elementen; als twee rijen verwisseld worden worden de corresponderende elementen in de permutatievector verwisseld. De Doolittle-decompositie gelijkt sterk op de Crout-decompositie. Dit is ook een LU-decompositie met dit verschil dat in een Crout-decompositie de elementen op de hoofddiagonaal van de bovendriehoeksmatrix
gelijk zijn aan 1.