Harjoitus 1: Matlab. Harjoitus 1: Matlab. Mat Sovelletun matematiikan tietokonetyöt 1. Syksy 2006

Samankaltaiset tiedostot
Harjoitus 1: Johdatus matemaattiseen mallintamiseen (Matlab)

Harjoitus 1: Johdatus matemaattiseen mallintamiseen (Matlab)

Matlab-perusteet. Jukka Jauhiainen. OAMK / Tekniikan yksikkö. Hyvinvointiteknologian koulutusohjelma

Matriisit ovat matlabin perustietotyyppejä. Yksinkertaisimmillaan voimme esitellä ja tallentaa 1x1 vektorin seuraavasti: >> a = 9.81 a = 9.

Harjoitus 10: Mathematica

Matemaattiset ohjelmistot A. Osa 2: MATLAB

Matlabperusteita, osa 1. Heikki Apiola Matlab-perusteita, osa 1. Heikki Apiola. 12. maaliskuuta 2012

Ohjelman käynnistäminen

Valitse ruudun yläosassa oleva painike Download Scilab.

Matriiseista. Emmi Koljonen

BM20A0700, Matematiikka KoTiB2

Zeon PDF Driver Trial

Neliömatriisin adjungaatti, L24

Matlabin perusteet. 1. Käyttöliittymä:

Matlabin perusteita Grafiikka

Matematiikka B2 - Avoin yliopisto

3 Lineaariset yhtälöryhmät ja Gaussin eliminointimenetelmä

Matematiikka B2 - TUDI

Harjoitus 2: Ohjelmointi (Matlab)

Harjoitus 4: Differentiaaliyhtälöt (Matlab) MS-C2107 Sovelletun matematiikan tietokonetyöt 1

Matlab- ja Maple- ohjelmointi

1.1. Määritelmiä ja nimityksiä

3 Lineaariset yhtälöryhmät ja Gaussin eliminointimenetelmä

Matriisien tulo. Matriisit ja lineaarinen yhtälöryhmä

Heikki Apiola, Juha Kuortti, Miika Oksman. 5. lokakuuta Matlabperusteita, osa 1

Talousmatematiikan perusteet: Luento 11. Lineaarikuvaus Matriisin aste Käänteismatriisi

plot(f(x), x=-5..5, y= )

Harjoitus 4: Matlab - Optimization Toolbox

Tässä dokumentissa on ensimmäisten harjoitusten malliratkaisut MATLABskripteinä. Voit kokeilla itse niiden ajamista ja toimintaa MATLABissa.

Ennakkotehtävän ratkaisu

Matriisilaskenta Laskuharjoitus 5 - Ratkaisut / vko 41

1 Matriisit ja lineaariset yhtälöryhmät

Harjoitus 2: Ohjelmointi (Matlab)

Tieteellinen laskenta 2 Törmäykset

ATK tähtitieteessä. Osa 2 - IDL perusominaisuudet. 12. syyskuuta 2014

Scilab ohjelman alkeisohjeet

Insinöörimatematiikka D

Symbolinen laskenta (MAT180,1ov)

Käänteismatriisi 1 / 14

Matriisipotenssi. Koska matriisikertolasku on liitännäinen (sulkuja ei tarvita; ks. lause 2), voidaan asettaa seuraava määritelmä: ja A 0 = I n.

Lineaariset yhtälöryhmät ja matriisit

Determinantit. Kaksirivinen determinantti. Aiheet. Kaksirivinen determinantti. Kaksirivinen determinantti. Kolmirivinen determinantti

1. Lineaarialgebraa A := Matriisin osia voidaan muutella päivittämällä riviä, saraketta tai osamatriisia (Matlabmaisesti): B :=

MS-A0003/A0005 Matriisilaskenta Laskuharjoitus 3 /

Valokuvien matematiikkaa

Johdatus tekoälyn taustalla olevaan matematiikkaan

Lineaarialgebra a, kevät 2018

Lineaarialgebra ja matriisilaskenta I

Matriisilaskenta. Harjoitusten 3 ratkaisut (Kevät 2019) 1. Olkoot AB = ja 2. Osoitetaan, että matriisi B on matriisin A käänteismatriisi.

Talousmatematiikan perusteet: Luento 10. Matriisien peruskäsitteet Yksinkertaiset laskutoimitukset Matriisitulo Determinantti

Muuttujan sisällön näet kirjoittamalla sen nimen ilman puolipistettä

Matriisilaskenta (TFM) MS-A0001 Hakula/Vuojamo Ratkaisut, Viikko 47, 2017

Ortogonaalinen ja ortonormaali kanta

2.8. Kannanvaihto R n :ssä

Mathcad Prime. Kaur Jaakma

Lineaarialgebra a, kevät 2019 Harjoitus 6 (ratkaisuja Maple-dokumenttina) > restart; with(linalg): # toteuta ihan aluksi!

Numeeriset menetelmät

Tehtäväsarja I Kertaa tarvittaessa materiaalin lukuja 1 3 ja 9. Tarvitset myös luvusta 4 määritelmän 4.1.

MS-A0003/A0005 Matriisilaskenta Laskuharjoitus 1 / vko 44

BL40A0000 Säätötekniikan ja signaalinkäsittelyn

Talousmatematiikan perusteet: Luento 9. Matriisien peruskäsitteet Yksinkertaiset laskutoimitukset Transponointi Matriisitulo

Octave-opas. Mikä on Octave ja miksi? Asennus

T Sovellusohjelmat Matlab osa 4: Skriptit, funktiot ja kontrollirakenteet

FUNKTION KUVAAJAN PIIRTÄMINEN

MS-A0004/MS-A0006 Matriisilaskenta Laskuharjoitus 6 / vko 42

FUNKTION KUVAAJAN PIIRTÄMINEN

3.1 Lineaarikuvaukset. MS-A0004/A0006 Matriisilaskenta. 3.1 Lineaarikuvaukset. 3.1 Lineaarikuvaukset

Matriisilaskenta Laskuharjoitus 1 - Ratkaisut / vko 37

Inversio-ongelmien laskennallinen peruskurssi Luento 3

Käänteismatriisin ominaisuuksia

ABTEKNILLINEN KORKEAKOULU

Numeeriset menetelmät TIEA381. Luento 3. Kirsi Valjus. Jyväskylän yliopisto. Luento 3 () Numeeriset menetelmät / 45

Harjoitus 2 -- Ratkaisut

ELEC-C5210 Satunnaisprosessit tietoliikenteessä Harjoitus M1,

Numeeriset menetelmät

Harjoitus 2 -- Ratkaisut

Insinöörimatematiikka D

Talousmatematiikan perusteet: Luento 10. Lineaarikuvaus Matriisin aste Determinantti Käänteismatriisi

MATLABin alkeita J.Merikoski JYFL 2009 fysp120

Laskennallinen lineaarinen algebra ja geometria

Osittaistuenta Gaussin algoritmissa: Etsitään 1. sarakkeen itseisarvoltaan suurin alkio ja vaihdetaan tämä tukialkioiksi (eli ko. rivi 1. riviksi).

Talousmatematiikan perusteet: Luento 13. Rajoittamaton optimointi Hessen matriisi Ominaisarvot ja vektorit Ääriarvon laadun tarkastelu

3.2 Matriisien laskutoimitukset. 3.2 Matriisien laskutoimitukset. 3.2 Matriisien laskutoimitukset. 3.2 Matriisien laskutoimitukset

Kohdeyleisö: toisen vuoden teekkari

Harjoitus 3 -- Ratkaisut

Yhtälöryhmä matriisimuodossa. MS-A0007 Matriisilaskenta. Tarkastellaan esimerkkinä lineaarista yhtälöparia. 2x1 x 2 = 1 x 1 + x 2 = 5.

Talousmatematiikan perusteet

9 Matriisit. 9.1 Matriisien laskutoimituksia

Ominaisarvo ja ominaisvektori

4 / 2013 TI-NSPIRE CAS TEKNOLOGIA LUKIOSSA. T3-kouluttajat: Olli Karkkulainen ja Markku Parkkonen

2.5. Matriisin avaruudet ja tunnusluvut

Harjoitus 4 -- Ratkaisut

Numeeriset menetelmät

Lineaariset kongruenssiyhtälöryhmät

. Kun p = 1, jono suppenee raja-arvoon 1. Jos p = 2, jono hajaantuu. Jono suppenee siis lineaarisesti. Vastaavasti jonolle r k+1 = r k, suhde on r k+1

mplperusteet 1. Tiedosto: mplp001.tex Ohjelmat: Maple, [Mathematica] Sievennä lauseke x 1 ( mplp002.tex (PA P1 s.2011)

wxmaxima opas 1 Mikä wxmaxima on 2 wxmaximan käyttö Petri Sallasmaa 13. toukokuuta 2014

Tieto- ja tallennusrakenteet

Oppimistavoitematriisi

KAAVAT. Sisällysluettelo

Transkriptio:

Harjoitus 1: Matlab Mat-2.2107 Sovelletun matematiikan tietokonetyöt Syksy 2006 Mat-2.2107 Sovelletun matematiikan tietokonetyöt 1

Harjoituksen aiheita Tutustuminen Matlab-ohjelmistoon Laskutoimitusten tekeminen Matlabissa Matlabin sisäänrakennetut funktiot Ohjelmoinnin alkeita Mat-2.2107 Sovelletun matematiikan tietokonetyöt 2

Matlab Matlab (MATrix LABoratory): numeeriseen laskentaan tarkoitettu ohjelma. Käytetään laajasti eri insinöörialoilla. Mat-2.2107 Sovelletun matematiikan tietokonetyöt 3

Numeerinen laskenta - Symbolinen laskenta Symbolinen laskenta: laskenta suljetussa muodossa. - Tarkka ratkaisu, ei pyöristysvirheitä. Likiarvoinen ratkaisu numeerisesti monesti helpompaa ja nopeampaa. - Käytännön sovelluksia: matemaattinen mallintaminen, simulointi... Laskentatarkkuus voi olla ongelma numeerisessa laskennassa, esim. >> 1-0.2-0.2-0.2-0.2-0.2 5.5511e-017 Mat-2.2107 Sovelletun matematiikan tietokonetyöt 4

Matemaattisia ohjelmistoja Numeerinen laskenta - Matlab - Octave (ns. freeware Matlab ) - MS Excel (ks. harjoitukset 8-9) Symbolinen laskenta - Mathematica (ks. harjoitukset 10-11) - Maple - MathCad Joillakin ohjelmilla voi laskea sekä symbolisesti että numeerisesti. - Esim. Symbolic Math Toolbox Matlabissa. Mat-2.2107 Sovelletun matematiikan tietokonetyöt 5

Matlabin käyttöliittymä Command Window - Komentoja voidaan syöttää yksi kerrallaan. Command History - Aikaisemmin syötetyt komennot. Workspace - Työtilaan tallennetut muuttujat. Editor - Ns. m-tiedostojen (funktioiden ja komentojonotiedostojen) muokkaamista varten. Help - Minkä tahansa funktion helpin saa auki seuraavasti: help funktio Mat-2.2107 Sovelletun matematiikan tietokonetyöt 6

Matlabin Toolboxit Matlabissa on eri sovellusalueille tehtyjä laajennuksia (toolboxeja). Esim: - Statistics Toolbox - Optimization Toolbox - Symbolic Math Toolbox - Curve Fitting Toolbox Mat-2.2107 Sovelletun matematiikan tietokonetyöt 7

Matriisit Matriisi on (luku)taulukko. - Vaakasuunnassa: rivit (rows) - Pystysuunnassa: sarakkeet (columns) Alkio: Yksittäinen matriisissa oleva elementti. Indeksoinnissa esitetään rivi ensin ja sarake toisena, esim. a ij viittaa rivin i ja sarakkeen j alkioon. a 11 a 12 a 1j A = a 21 a 22 a 2j........ a i1 a i2 a ij Mat-2.2107 Sovelletun matematiikan tietokonetyöt 8

Matriisien käsittely Matlabissa Matlab = Matrix Laboratory Matriisit ovat perustietorakenne Matlabissa. Matriisit syötetään alkioittain hakasulkujen sisään. Välilyönti (tai pilkku) erottaa samalla rivillä olevat alkiot. Puolipiste erottaa rivit toisistaan. Vektorit luodaan vastaavalla tavalla. A = 1 2 3 4 5 6 >> A=[1 2 3 ; 4 5 6 ; 7 8 9] A = 1 2 3 7 8 9 4 5 6 7 8 9 Mat-2.2107 Sovelletun matematiikan tietokonetyöt 9

Listan luominen Kaksoispisteen (:) avulla voidaan luoda lista alkioista. >> x=10:16 x = 10 11 12 13 14 15 16 >> y=10:2:16 % alkioiden välinen erotus 2 y = 10 12 14 16 Huom! % on kommentointimerkki. (Matlab ei suorita sen jälkeen samalla rivillä olevia komentoja.) Mat-2.2107 Sovelletun matematiikan tietokonetyöt 10

Matriisin alkioihin viittaaminen 1/2 Viittaus sulkujen avulla muodossa (rivi,sarake) A = 1 2 3 4 5 6 7 8 9 >> A(2,1) 4 Huom! Indeksointi alkaa 1:sta, ei 0:sta (toisin kuin esim. Javassa) Mat-2.2107 Sovelletun matematiikan tietokonetyöt 11

Matriisin alkioihin viittaaminen 2/2 Voidaan myös viitata useamman alkion muodostamaan alueeseen kaksoispisteen (:) avulla. >> A(1:2,1) 1 4 >> A(:,1) % pelkkä kaksoispiste valitsee koko sarakkeen/rivin 1 4 7 >> A(2:end,1) % end viittaa viimeiseen alkioon 4 7 Mat-2.2107 Sovelletun matematiikan tietokonetyöt 12

Matriisien muokkaaminen Matriiseja voidaan myös luoda liittämällä toisia matriiseja yhteen. >> B=[A A] B = 1 2 3 1 2 3 4 5 6 4 5 6 7 8 9 7 8 9 Tiettyä matriisin alkiota voidaan muuttaa seuraavasti. >> A(1,1)=100 A = 100 2 3 4 5 6 7 8 9 Mat-2.2107 Sovelletun matematiikan tietokonetyöt 13

Matriisin transpoosi Matriisin transpoosiin käytetään pilkkua ( ). A = 1 2 3 4 5 6 7 8 9 >> A 1 4 7 2 5 8 3 6 9 Mat-2.2107 Sovelletun matematiikan tietokonetyöt 14

Peruslaskutoimitukset 1/2 Yhteen- ja vähennyslasku (+, -) >> C=[1 2;3 4], D=[5 6;7 8] C = 1 2 3 4 D = 5 6 7 8 >> C+D 6 8 10 12 >> C-D -4-4 -4-4 Mat-2.2107 Sovelletun matematiikan tietokonetyöt 15

Peruslaskutoimitukset 2/2 Kerto- ja jakolasku (*,.*, /,./) >> C*D % Matriisitulo 19 22 43 50 >> C.*D % Alkioittainen tulo 5 12 21 32 >> C/D % Matriisijakolasku (vastaa laskua C*inv(D)) 3.0000-2.0000 2.0000-1.0000 >> C./D % Alkiottainen jakolasku 0.2000 0.3333 0.4286 0.5000 Mat-2.2107 Sovelletun matematiikan tietokonetyöt 16

Käänteismatriisi Matriisin A käänteismatriisi A 1 on olemassa täsmälleen silloin, kun det(a) 0. Käänteismatriisille pätee: A A 1 = A 1 A = I (Yksikkömatriisi). Yhtälöryhmän A x = b ratkaisu: - A on n n matriisi, x = [x 1...x n ] T, b = [b 1...b n ] T. (A 1 A)x = A 1 b Ix = A 1 b x = A 1 b - Matlabissa: x=inv(a)*b tai x=a \b Mat-2.2107 Sovelletun matematiikan tietokonetyöt 17

Kuvaajat 1/2 plot-funktion avulla voidaan piirtää kuvaajia, ks. help plot >> x=-2*pi:0.1:2*pi; % Luodaan x-vektori >> y=sin(x); % Luodaan y-vektori >> plot(x,y); % Piirretään kuvaaja (vaaka-akselilla x, pystyakselilla y) >> grid on % Kuvaajan ruudukko päälle >> axis tight % Akselit ilman tyhjää tilaa laidoilla >> title( Sinikäyrä ) % Kuvaajan otsikko >> xlabel( x-akseli ) % Tunniste x-akselille >> ylabel( y-akseli ) % Tunniste y-akselille >> legend( x ) % Kuvateksti Mat-2.2107 Sovelletun matematiikan tietokonetyöt 18

Kuvaajat 2/2 Sinikäyrä 0.8 x 0.6 0.4 0.2 y akseli 0 0.2 0.4 0.6 0.8 6 4 2 0 2 4 6 x akseli Mat-2.2107 Sovelletun matematiikan tietokonetyöt 19

M-tiedostot Edellä komennot on annettu yksitellen komentoriviltä. M-tiedostojen (tiedostojen nimi on muotoa *.m) avulla voidaan ajaa useampi komento peräkkäin. - Mahdollistaa ohjelmoinnin. Syntaksi sama kuin komentoriviltä ajettaessa. Komentojonotiedosto voidaan ajaa editorista käsin (näppäin F5) tai kirjoittamalla tiedoston nimi komentoriville. Mat-2.2107 Sovelletun matematiikan tietokonetyöt 20

Ohjelmoinnin alkeita For-silmukan avulla komentoja voidaan suorittaa useamman kerran peräkkäin. for muuttuja = alkuarvo : askelpituus : loppuarvo end % Suorita komentoja Mat-2.2107 Sovelletun matematiikan tietokonetyöt 21

Esimerkki silmukasta Tehdään ohjelma, joka tulostaa joka kierroksella indeksin i toisen potenssin. for i=1:2:7 end i^2 1 9 25 49 Mat-2.2107 Sovelletun matematiikan tietokonetyöt 22

Kysymyksiä 1. Mitä eroa on numeerisella ja symbolisella laskennalla? 2. Miten puolipiste rivin lopussa vaikuttaa Matlabissa? 3. Luettele kolme eri Matlabin tietotyyppiä ja kerro miten ne eroavat toisistaan? (Vinkki: help datatypes) 4. Mikä on pisteen merkitys vektorien kerto- ja jakolaskussa? 5. Kuinka luot vektorin a joka sisältää kaikki positiiviset parittomat luvut, jotka ovat pienempiä kuin sata? 6. Miten lineaarisen yhtälöryhmän Ax = b voi ratkaista Matlabissa? Nimeä kaksi eri tapaa. Mat-2.2107 Sovelletun matematiikan tietokonetyöt 23