Proviamo il nostro algoritmo generando casualmente una matrice
ed un vettore per verificare la soluzione:
» a1=round(10*rand(10))
a1 =
8 1 2 9 3 4 7 1 6 1
3 7 7 6 4 6 9 3 2 7
6 10 4 2 6 3 0 10 5 0
1 1 1 1 6 2 6 4 2 3
4 5 7 8 7 2 6 8 7 1
1 1 9 4 10 2 7 9 5 4
8 7 1 9 3 1 8 1 6 4
6 3 4 10 2 1 8 5 0 3
8 1 4 4 9 5 5 8 3 9
10 2 5 3 3 7 3 5 4 2
» b1=round(10*rand(10,1))
b1 =
1
3
2
7
8
3
8
8
1
3
» x=solvelu(a1,b1)
x =
-2.48449679544613
-1.57729575627816
-2.90299977582920
-1.60498736801344
-9.46718019044310
0.07933652351090
3.35772199201200
7.37058528117625
6.07222618703308
3.48035411345352
» inv(a1)*b1
ans =
-2.48449679544607
-1.57729575627817
-2.90299977582912
-1.60498736801348
-9.46718019044303
0.07933652351086
3.35772199201199
7.37058528117619
6.07222618703305
3.48035411345350
»
come riprova della bontà dell'algoritmo abbiamo calcolato
formalmente il vettore soluzione come
ottenendo un
risultato pressappoco uguale a quello del nostro metodo.