Innhold
- Starte MATLAB
- Enkel bruk
- De vanligste bruksområdene
- Bruk i enkel programmering (.m-filer)
- Kjente problemer med MATLAB
Starte MATLAB
Under Linux starter du MATLAB ved å skrive kommandoen
matlab &
på kommandolinjen i et Xtermvindu. Under Windows velger du Start > All Programs > Matlab
Du vil i begge tilfeller få fram et vindu som ser omtrent slik ut:

Du har her hele fem vinduer i ett. I det øverst til venstre, har du oversikt over hjemmeområdet ditt og filene dine. Vinduet nederst til venstre viser informasjon om den fila du har valgt akkurat nå. Vinduet øverst til høyre viser forskjellige variable og slikt som til enhver tid finnes, og vinduet nederst til høyre viser en oversikt over alle de sist brukte kommandoene. Det store vinduet midt i er vel kanskje det viktigste, ettersom det er her du faktisk skriver inn kommandoer. De fleste av disse vinduene kan du dra rundt om kring slik det passer deg, så om du ikke syntes at du trenger dem, eller kanskje vil ha alle vinduene til høyre, så lar dette seg enkelt gjøre.
Dersom du trenger hjelp, så har Matlab en ganske bra brukerveiledning, som du kan finne ved å trykke på
Help > Product help
eller trykke F1.
Enkel bruk
Det aller enkleste du kan bruke MATLAB til, er vanlige "kalkulatoroperasjoner". Disse skriver du inn som kommandoer på kommandolinjen, som er feltet etter >> ('promptet'). I eksempelet i figuren under gjør vi noen slike enkle operasjoner:

Viktig å merke seg
- Vinduet nederst til venstre. Her får du opp en command history. Hvis du dobbeltklikker på en av de tidligere brukte kommandoene her, vil den bli utført om igjen.
- I MATLAB brukes radianer for alle operasjoner med vinkler.
- For å skrive kommentarer, kan du bruke %. Det du skriver etter et %-tegn, vil ikke bli tolket av MATLAB-prosessoren.
- MATLAB bruker punktum som desimalskille.
- Hvis du vil rydde opp i kommandovinduet (starte med blankt ark), kan du velge
-
Edit > Clear Command Window
-
De vanligste bruksområdene
Vanligvis bruker man Matlab til litt mer avanserte ting enn vist i forrige avsnitt.
Tilegne variabelnavn til verdier
Når man bruker MATLAB til litt mer enn bare enkle regneoperasjoner, får man ofte bruk for å bruke variabelnavn istedet for de faktiske verdiene.
Variabelnavnet kan inneholde både tall og bokstaver. Men:
- Du kan ikke bruke norske vokaler (æøå), hold deg til a-z
- Variabelnavnet må starte med en bokstav
- Ikke bruk spesialtegn som minustegn, dollartegn etc, da disse har egne betydninger i MATLAB
Under viser vi et enkelt eksempel der variablene a og b tilegnes verdier, for til slutt å legges sammen.

Vektorer
Du kan bruke to typer vektorer, rekke-vektor og kolonne-vektor. Forskjellen i syntaks er vist i eksempelet under:

Altså mellomrom mellom verdiene for å få en rekkevektor, semikolon for å få kolonnevektor. Transponeringsoperatoren er 'enkel-fnutt', det tegnet du får ved å trykke en gang på tasten til høyre for æ-tasten på et norsk tastatur. OBS! Hvis vektoren inneholder komplekse tall er ' tilsvarende kompleks konjugering etterfulgt av transponering, mens .' er vanlig transponert.
Hvis du skal skrive opp litt store vektorer, der det er en fast inkrementering mellom hver verdi, har MATLAB et hendig verktøy for dette. La oss si at du skal ha en matrise som går fra 0 til 10, men bare annethvert tall skal være med (inkrement=2). Syntaksen er da
[startverdi:inkrement:sluttverdi]
Eksempel:

Matriser
Matriser er ikke noe annet enn todimensjonale vektorer. Ved å kombinere syntaksen for rekkevektorer og kolonnevektorer, får du matriser. Også for matriser kan du bruke inkrementeringsmetoden som vist for vektorer. Se eksempel under:

Når du opererer med matriser kan du bruke vanlige operatortegn for multiplikasjon og addisjon ([=*, +=]). For invertering av matriser bruker man kommandoen inv , og for å gange en matrise med sin inverse matrise bruker man [=/=]. Se eksempel under.

NB: Hvis vi istedet hadde ønsket å skrive inv(a)*a, ville det blitt [=a\a=].
Ligningssystemer
For å løse likningsystemer må vi bruke noe av det vi har lært om matriser først, pluss huske litt matematikk.
Først, la oss se på følgende likningssett:
ax + by = p cx + dy = q
Når man bruker matriser for å uttrykke likningssett, vil det kunne se slik ut:
AX=B
der både A, X og B er matriser.
A = a b
c d
X = x
y
B = p
q
Hvis A er inverterbar, vil X være lik @@inv(A)*B@@. Som vi lærte i avsnittet om Matriser kan vi skrive dette som [=A\B=]
La oss regne et eksempel i Matlab:

Grafiske fremstillinger
MATLAB er veldig flink til å lage fine grafiske framstillinger av matematiske forhold.
Todimensjonale grafer (én variabel):
For å få opp en todimensjoal graf, brukes kommandoen plot som følger:
plot(x,y)
Her tilsvarer y funksjonen din,og x tilsvarer x-aksen. For å angi denne, må x oppgis på en spesiell form, omtrent som en vektor, men uten firkantparantesene:
x=startverdi:inkrementverdi:sluttverdi
Med inkrementverdi menes oppløsningen på x-aksen (hvor store trinn bortover du skal ha)
Du må også angi hva funksjonen y skal være. Et eksempel under, med x som spenner fra null til ti, med trinn på 0.2, og funksjonen y=cos x.
x=0:0.2:10 y=cos(x) plot(x,y)
Voilà:

Tredimensjonale grafer (to variabler):
For å få en litt kul graf, velger vi et litt stygt regnestykke
z(x,y) = x*exp(-x^2-y^2)
For å definere hvilke x- og y-verdier vi vil at grafen skal spenne seg over bruker vi samme syntaks som da vi definerte x-aksen for todimensjonale plot, og i tillegg kommandoen meshgrid:
[x,y] = meshgrid(-3:.2:3,-3:.2:3) z= x.*exp(-x.^2-y.^2) mesh(z)
Husk å få med punktumene etter hver x og y når du definerer z.

Bruk i enkel programmering (.m-filer)
Det er ikke alltid at oppgaven vi ønsker å løse er så enkel. For eksempel hender det at man har et matematisk problem som man må løse numerisk (dvs at man trenger mange gjennomkjøringer av regnestykket for å finne en god nok tilnærming til svaret). Da er det best å kode dette som et program. Dette gjør man ved å skrive kommandoene inn i en såkalt .m-fil. Denne .m-filen kan man etterpå kjøre som en kommando i MATLAB.
Velg
File > New > M-file
Da dukker det opp et eget vindu, som ser mest ut som et blankt 'ark'. Her skal du skrive kommandoene dine, og tilsammen blir kommandoene et program. Lagre gjerne filen med et godt filnavn slik at du husker hva slags program det er. Samme navngivingsregler gjelder her som for variabelnavn.
For å kjøre denne .m-filen må man gå tilbake til kommandovinduet og taste inn filnavnet på .m-filen du har laget. Da kjører MATLAB selv innholdet av .m-filen og gir deg figurer, utregninger, eller hva du sagt den skal gjøre. Husk å starte MATLAB fra samme sted på hjemmeområdet som der du har lagret .m-filen. Hvis ikke finner ikke matlab .m-filen du prøver å starte og det kommer en feilmelding.
Her er et eksempel på et enkelt program som minner litt om 3D-plottet vist tidligere:

Fila ble lagret som 'testfil.m', og når du så skriver kommandoen 'testfil' i kommandovinduet, får du fram denne figuren:

M-filer kan være uendelig mye mer avansert enn dette, men mer dyptpløyende har vi ikke anledning til å være her. På termstuene har vi MATLAB-bøker til utlån. Det finnes også store ressurser på nett, se linkene i høyremargen for et lite utvalg.
Kjente problemer med MATLAB
Av og til møter Matlab-brukere noen problemer som ikke har med selve programmeringen å gjøre. Her samler vi noen av de som folk møter oftest.
MATLAB klager over at noen filer mangler
Det hender at MATLAB klager over at filer som tidligere var accessible ikke er det lenger, med henvisning til en path dypt inne i /local/opts/matlab..
Problemet ligger i at MATLAB lagrer en del pather til ting som brukes ofte, og når ting ikke befinner seg der MATLAB har notert seg at det var, så kommer denne meldingen (man skulle tro programmet da var glupt nok til å lete på nytt, men dengang ei).
En løsning på dette, er å avslutte MATLAB, for så å flytte eller slette følgende fil:
.matlab/R14/toolbox_cache-7.0.1-glnx86.xml
for så å starte MATLAB på nytt.
Utskrift fra MATLAB
Utskrift fra MATLAB kan være litt kinkig av og til. Det vil ikke alltid fungere å bare velge Fil > Print, slik man er vant med.
- M-filer er ikke noe annet enn ren tekst. De kan du printe direkte ut fra kommandolinjen, valgfritt om du vil bruke ppr eller print. (se nedenfor om du er usikker på hva dette betyr)
- Bildefiler lagres automatisk i .fig-format. Disse kan alltid skrives ut på følgende måte: Velg File > Save As, og velg *.EPS i stedet for *.FIG. Velg et filnavn. Når du gjør dette, vil filen bli lagret som en .eps-fil, og denne kan skrives ut fra kommandolinjen via kommandoen print.
Med 'utskrift fra kommandolinjen' menes utskrift fra Xtermvindu. (der du startet MATLAB fra i utgangspunktet) Skriv kommandoen
print -Pprinternavn filnavn
Problemer med tegnet: ^ i MATLAB
Det hender at dette tegnet ikke dukker opp når det skal i MATLAB. Dette kan fikses i xterm med kommandoen:
setxkbmap no nodeadkeys
Matlab logger ut linux ved plotting
Ved enkelte plott vil Matlab logge ut Linux-sesjonen på grunn av litt rare grafikkdrivere, man kan da prøve å legge inn følgende kall før plottet, som kanskje unngår problemet:
set(gcf,'Renderer','Zbuffer')