Harjoitus 4
Ratkaisut palautettava viimeistään luennolla 22.2.
Ohjelman lisäksi vastauksissa on oltava mukana ohjelmien antamat tulostukset.
Suurin osa ohjelmakoodeista on esitetty luennoilla, tosin hieman epätäydellisinä.
1.Tee aliohjelma {\tt sort2(a, n)}, joka järjestelee kaksiulotteisen taulukon {\tt a(n,n)} niin, että ensin jokaisen vaakarivin alkiot järjestetään laskevaan järjestykseen. Lopuksi vaakarivit järjestetään ensimmäisen alkion mukaan laskevaan järjestykseen. Esimerkiksi
| 1 0 3 | | 3 1 0 | | 4 2 1 | | 2 4 1 | => | 4 2 1 | => | 3 1 0 | | 1 2 0 | | 2 1 0 | | 2 1 0 |
2. Luennolla esitettiin lineaarisen yhtälöryhmän ratkaisu Gaussin eliminoinnilla, mutta ohjelma on keskeneräinen, mm. muuttujien määrittelyt puuttuvat. Kokoa palaset ohjelmaksi, joka ratkaisee yhtälöryhmän Ax=b ja tallettaa ratkaisun taulukkoon x. Testaa ohjelmaa ratkaisemalla yhtälöryhmä
| 1 2 3 4 | | 20 | | 1 3 1 2 | x = | 11 | | 2 1 1 1 | | 6 | | 3 1 0 1 | | 4 |
3. Laske edellisen tehtävän kerroinmatriisin LU-hajotelma ja determinantti.
4.Yritä ratkaista tehtävän 2 yhtälö Jacobin iteroinnilla. Mitä tapahtuu? Kokeile sitten lisätä yhtälöryhmän diagonaalidominanssia lisäämällä kerroinmatriisin lävistäjän jokaiseen alkioon luvun 10, jolloin yhtälöryhmä on siis
|11 2 3 4 | | 20 | | 1 13 1 2 | x = | 11 | | 2 1 11 1 | | 6 | | 3 1 0 11 | | 4 |