Precondizionatori
L’idea è ridurre il numero di condizionamento di un problema, per migliorare la stabilità e la velocità di convergenza.
Sia una matrice non singolare, il sistema può essere riformulato in maniera equivalente come:
questo è un precondizionamento a sinistra. E’ possibile anche precondizionare a destra:
ed anche ad ambo le parti:
Caso hermitiano definito positivo
Assumiamo che il nostro problema abbia matrice dei coefficenti hermitana definita positiva, e vogliamo che il precondizionatore preservi questa proprietà (ad esempion usiamo un algoritmo che richiede questa ipotesi).
Scegliere (o ) hermitana positiva non garantisce che lo sia. Al contrario, una stategia è scegliere , infatti la matrice:
è ovviamente hermitiana, ed è definita positiva, infatti vale:
siccome è definita positiva.
Come scegliere P hermitana definita positiva?
Euristicamente, vogliamo che clusterizzi lo spettro di , ovvero renda gli autovalori simili, in maniera tale da ridurre il più possibile il numero di condizionamento
Siccome è simile a .
Un’alternativa, di costo minore, è scegliere come e con ottenuti dalla Fattorizzazione di Cholesky del precondizionatore.
Fattorizzazioni incomplete
L’idea è preservare la struttura di sparsità della matrice da precondizionare. Infatti le normali fattorizzazzioni soffrono del cosidetto fenomeno del fill in, oneroso dal punto di vista sia computazionale che di memoria.