Matlab-asiaa, sisällysluettelo
Helppo tapa saada välituloksia ohjelmasta on jättää puolipiste pois sopivien rivien lopusta. Tällöin toiminta ei muutu, mutta ohjelma tulostaa kyseisten rivien aikana saadut tulokset.
Ohjelman toimintaa kannattaa testata ensin yksittäisellä luvulla
ja sitten useamman luvun muodostamalla vektorilla. Jos luku
toimii, mutta vektori ei, on vika hyvin todennäköisesti puuttuva
piste jonkin operaattorin edestä. Matlabissahan A*B tarkoittaa
matriisituloa ja A.*B tuloa alkioittain. Vastaavasti jakolasku
ja potenssiinkorotus alkioittain pitää merkitä ./ ja
.^ .
(Tämä kappale ei suoranaisesti liity kurssiin...) "Debuggaus" tarkoittaa virheiden etsimistä ohjelmasta. Tarinan - ilmeisesti urbaani legenda - mukaan ensimmäisissä releillä toimivissa tietokoneissa releen kielten väliin saattoi mennä ötököitä, engl. "bug". Ensimmäiset tietokoneohjelmien virheet olivat siis bugeja ja niiden poistamista kutsuttiin nimellä "debug". Sana on vakiintunut käyttöön, nykyisistäkin ohjelmointiympäristöistä löytyy "debug windows" tms.
Kätevin tapa kokeilla funktioita eri kokoisilla vektoreilla on
tällainen:
k=-5; x=-10^k:10^(k-3):10^k
Ylläoleva käsky muodostaa vektorin väliltä -0.00001..0.00001 siten, että alkioita on yhteensä 1001. Muuttamalla vakion k arvoa saadaan vektori pienemmältä tai suuremmalta väliltä nollan ympäriltä.
Matlab ei ole tekstin tuottamiseen soveltuva ympäristö sillä tavalla kuin Mathematica on. Raportti pitää siis kirjoittaa jollakin soveltuvalla ohjelmalla, esimerkiksi Wordilla tai LaTeXilla. Myös Mathematica kelpaa tähän, tosin samassa mikroluokassa ei ole Mathematicaa ja Matlabia.
Matlabin komentoikkunan sisällön tallentamiseen jälkikäteen ei
ole mitään helppoa tapaa. Tarvittaessa kopioikaa teksti leikepöydälle
ja sieltä johonkin tekstinkäsittelyohjelmaan. Komennolla
diary voi käskeä Matlabin tallentamaan kaiken siitä
eteenpäin tulostamansa myös tiedostoon. Lisätietoja tästä saa
komennolla help diary.
Komentojahan ei tarvitse palauttaa raportin mukana, joten ainoa tarve niiden tallentamiselle on omat muistiinpanot seuraavaa harjoituskertaa varten. Kuvia sen sijaan raporttiin haluan, ja niitä saatte helposti kuvioikkunassa valikkokomennolla Edit / Copy Figure. Tämä kopioi kuvan leikepöydälle, josta sen saa liitettyä vaikkapa Wordiin.
Matlabissa yhtä käytettävää funktiota vastaa yksi tiedosto.
Harjoitustöissä siis jokaisessa tiedostossa on vain yksi
function-sana. Funktion toiminta voitaisiin jakaa
apufunktioihin, jolloin samassa tiedostossa olisi useita
function-sanoja. Apufunktioita ei tämän kurssin
harjoitustöissä tarvita. Mainitsen asian tässä, koska tämä on syy
siihen, ettei useamman funktion määrittelystä samassa tiedostossa
anneta virheilmoitusta.
Oletusarvoisesti Matlab etsii funktiotiedostoja hakemistosta
C:\Ohjelmatiedostot\Matlab\bin. Tämän hakemiston
sisältö kannattaa tyhjentää, kun aloittaa työskentelyn.
Mikäli haluaa käyttää muussa hakemistossa olevia tiedostoja,
pitää käyttää cd-komentoa Matlabin komentoikkunassa.
Esimerkiksi komennon cd c:\mkoodia jälkeen Matlab
nähdessään funktiokutsun varianssi([3 6 4]) etsii
hakemistosta mkoodia asemalta c:
tiedostoa varianssi.m.
Työskentelmistä levykkeeltä käsin en suosittele sen paremmin Matlabin kuin muidenkaan ohjelmien yhteydessä. Tallentakaa tiedostot kovalevylle, esim. työpöydälle, ja siirtäkää ne lopuksi levykkeelle tai mieluiten kotihakemistoonne.