Il Progetto...

Dopo un rapido ripasso dei concetti fondamentali possiamo finalmente inoltrarci nel progetto vero e proprio.

Questo programma, realizzato in Javascript, risolve un sistema lineare di m equazioni in n incognite, con il metodo della riduzione a scala di Gauss Jordan. Consente di risolvere un sistema costituito da un massimo di 10 equazioni in 10 incognite, anche se questa limitazione è fatta solo per motivi di semplicità.

. Funzionamento .
Come primo passo si richiede all’utente l'indicazione del numero di equazioni e di incognite di cui sarà costituito il sistema. Successivamente occorre introdurre i coefficienti. Sono consentiti solo coefficienti razionali, introdotti nella forma : [-]numeratore[/denominatore], dove le parentesi quadre indicano oggetti opzionali e dove numeratore e denominatore devono essere numeri naturali.

Introdotti i coefficienti il codice esegue, alla pressione del tasto apposito, un controllo dell'accettabilità dei valori introdotti. Se necessario viene sempre eseguita anche una riduzione delle frazioni ai minimi termini.

Si può a questo punto iniziare la risoluzione, tenendo conto che l'obiettivo finale è quello di ottenere un sistema nella forma cosiddetta a scala, che, nella sua forma più generale, ha una matrice dei coefficienti (matrice incompleta) con il seguente aspetto :

dove i numeri p1, p2, ecc. si chiamano pivot, e dove le ultime righe possono essere eventualmente tutte nulle. Il numero dei pivot si chiama rango del sistema e lo si indica con r.

È chiaro che il sistema ha soluzioni se e solo se, in corrispondenza alle eventuali ultime m-r righe tutte nulle, anche i termini noti (che non compaiono nella matrice sopra riportata) sono tutti nulli. Se il sistema ha soluzioni, le incognite che non corrispondono a colonne in cui si trovano i pivot sono completamente arbitrarie e si dice che il sistema ha 8n-r soluzioni, con la convenzione che 80 significhi 1. Quando il sistema è ridotto a scala la sua soluzione è immediata: si procede all'indietro, determinando le incognite che compaiono nell'ultima equazione utile e si risale via via fino a trovare tutte le incognite.

. Ottenere il Sistema a Scala .

Per ottenere la riduzione a scala si procede con le seguenti operazioni :

1)  Si ricerca qual'è la prima colonna non tutta nulla (di solito nessuna colonna è tutta nulla, altrimenti l'incognita corrispondente è "inutile").

2)  Si lascia quindi il controllo all'utente il quale ha la possibilità di eseguire 3 operazioni :

    a)   può scambiare una riga con un'altra riga ;
               - la riga da scambiare della prima casella di testo coincide col livello della riga sul quale si sta operando.

    b)   può sostituire una riga con un'altra riga (metodo manuale o automatico) ;
                - la riga da sommare coincide con la riga appartenente al livello su cui si sta operando ;
                - i valori delle caselle di testo "sostituisci la riga" - "con la riga" devono coincidere ;

    c)   può moltiplicare una riga con una costante.

3)  Si ripetono le operazioni indicate fino ad ottenere la matrice a scala

4)  Inoltre ad ogni passo si permette all'utente di scegliere se tornare indietro di un'operazione, annullare tutte le modifiche effettuate, cambiare i coefficienti iniziali

 

. Il Progetto in Pratica .
Per poter provare il progetto clicca qui che ti porterà alla pagina relativa.


Torna Su