200 likes | 400 Views
MATLAB. En kort innføring/repetisjon SIF8001-SIF8005 Høsten 2001. Introduksjon. Oppfriskning av Matlab-kunnskaper for Studasser i SIF8001-SIF8005 It grunnkurs Skjalg Arstad, undass, arstad@stud.ntnu.no. Agenda. Om Matlab Matlab som ”kalkulator” Hjelp-funksjonen Innebygde operasjoner
E N D
MATLAB En kort innføring/repetisjon SIF8001-SIF8005 Høsten 2001
Introduksjon • Oppfriskning av Matlab-kunnskaper for Studasser i SIF8001-SIF8005 It grunnkurs • Skjalg Arstad, undass, arstad@stud.ntnu.no
Agenda • Om Matlab • Matlab som ”kalkulator” • Hjelp-funksjonen • Innebygde operasjoner • Variabler i Matlab • Datastrukturer • Scripting i Matlab • Funksjoner i Matlab • Spørsmål
Om Matlab • Numeriske beregninger • Visualisering av data • Programmering/scripting • http://www.mathworks.com • \\diamant\progdist
Matlab som ”kalkulator” • Input via kommandolinje • Som kalkulator, +, -, *, / • Vanlig operatorpresedens, kan overstyres med parenteser
Hjelp-funksjonen • Innebygget hjelp-funksjon for alle innebygde funksjoner • Gir info om parametere og syntaks • Skriv: help <emne> • For oversikt over emner, skriv bare help • lookfor <søkeord> • helpwin
Innebygde operasjoner • Trigonometriske • Eksponentialfunksjoner, logaritmer, røtter • Avrunding, rest • ... • help matlab\elfun • help
Variabler i Matlab • Kan lagre verdier i variabler • <variabelnavn> = <verdi> • >> radius = 10;>> areal = radius^2*piareal = 314.1593
Datastrukturer (1/3) • Matlab = MATrix LABoratory • Matriser og vektorer • >> x = [1 2 3 4 5]x = 1 2 3 4 5 • >> y = [1 2; 3 4]y = 1 2 3 4
Datastrukturer (2/3) • Generering av tabeller • >> X = 1:1:5x = 1 2 3 4 5 • >> z = 4:-0.5:3z = 4.0000 3.5000 3.0000 • >> z(2) % Indekseringans = 3.5000
Datastrukturer (3/3) • Operasjoner • +, -, *, /, ^, .*, ./, .^ • .* er elementvis multiplikasjon • * er matrisemultiplikasjon
Scripting i Matlab (1/3) • Lage små program-snutter • Automatisere mye brukte beregninger • Enkle kontrollstrukturer • Input/output • <variabel> = input(’Skriv inn ... ’); • disp(’Variabelen har verdien’)disp(<variabel>)
Scripting i Matlab (2/3) • Valg • if betingelse1 kommando1_1; ...elseif betingelse2 kommando2_1; ...else kommando3_1; ...end
Scripting i Matlab (3/3) • Løkker • for teller=tabell kommando1; ...end • while betingelse kommando1; ...end
Funksjoner i Matlab (1/3) • Kan ta parametere • Returnerer et svar • Må ligge i .m-fil med samme navn som funksjonen • function <returvar>=<navn>(<param1>,...) % Foreta beregninger basert på % parameterne, lagre resultat i % <returvar>.return
Funksjoner i Matlab (2/3) • % produkt.mfunction x=produkt(a,b) % produkt produkt-funksjon % produkt(a,b) returnerer a*b x = a*b;return • >> produkt(4,5)ans = 20
Funksjoner i Matlab (3/3) • OBS! OBS! OBS! • Lokale variabler i funksjoner • Globale variabler i script
Grafer/plot • Gode visualiseringsverktøy • Plotting av grafer • Avanserte 3D-grafer • subplot, plot, axis, title, xlabel, zlabel • >> help graph2d
Spørsmål • Undass-salen 229, 10-15 • Spørsmål av felles interesse: http://www.idi.ntnu.no/~sif8001/sos