Koodaa tehtävän ratkaisu Matlab-ohjelmaa hyväksi käyttäen. Ratkaisumenetelminä käytä Newtonin menetelmää ja sekanttimenetelmää.

Koko: px
Aloita esitys sivulta:

Download "Koodaa tehtävän ratkaisu Matlab-ohjelmaa hyväksi käyttäen. Ratkaisumenetelminä käytä Newtonin menetelmää ja sekanttimenetelmää."

Transkriptio

1 Ohjelmointi ja Matlab syksy 010 Kotitehtävä palautettava mennessä Methyl alcohol can be synthesized by passing a mixture of CO and H over a suitable catalyst. For a feed mixture containing moles of hydrogen to 1 mole of carbon monoxide, x, the number of moles of hydrogen converted at 300 o C and 40 bar, is indicated by the following equation: 3 x x 49 = 0 x x (1) The solution to the problem corresponds to that value x at which to zero. 3 x x 49 x x reduces Koodaa tehtävän ratkaisu Matlab-ohjelmaa hyväksi käyttäen. Ratkaisumenetelminä käytä Newtonin menetelmää ja sekanttimenetelmää. Ongelmanratkaisu: Menetelmät: Newtonin menetelmä funktion nollakohdan etsimistä varten on seuraavanlainen x f ( xk ) '( x ) = k 1 x + k f () k Menetelmän käyttöön tarvitaan funktio, sen derivaatta (jonka laskeminen voi olla työlästä) sekä sopiva alkuarvaus x 0. Newtonin menetelmä voi divergoitua, jos alkuarvaus on kovin kaukana todellisesta nollakohdasta. Sekanttimenetelmä funktion nollakohdan etsimistä varten on seuraavanlainen x k+ 1 = x k ( k)( k k 1 ) ( ) ( ) f x x x f x f x k k 1 Menetelmän käyttöön tarvitaan funktio sekä kaksi alkuarvausta x 0 ja x 1. Derivaattaa ei tarvita. Molempia menetelmiä käytettäessä on syytä huomata, että (1) ei ole määritelty pisteessä x =. Funktiomme on seuraavanlainen Tarvittavat tiedot: 3 x x f ( x) = 49 x x (4) Funktion derivaatan laskemista varten muokataan funktio seuraavaan muotoon (vakion voimme jättää pois, koska sen derivaatta on nolla...) (3)

2 ( ) g x = x ( ) ( 3 x 3 ) x Tulon derivointisääntöä soveltamalla saamme ja edelleen (5) x x g' ( x) = ( 3 x) D 3 + D 3 ( 3 x) ( x) ( x) ( ) 3 ( ) ( 1) 3( ) ( 1) x x x x g' ( x) = ( 3 x) ( 3 x)( 1) ( x) ( x) ( x ) ( x) 3 ( x) ( x) ( ) ( ) x 3 3 g' ( x) = 1+ x x (8) Muoto (8) on tehtävän laskennan suhteen riittävän yksinkertaisessa muodossa, mutta (8) voidaan vielä sieventää muotoon g' ( x) 18 6x = ( x) 4 Nyt meillä on käytössämme funktio ja sen derivaatta. Vielä tarvitaan sopiva aloituspiste. Funktion arvot vaihtelevat rajusti ja funktiolla on epäjatkuvuuskohta. Eli tarvitsemme jonkinlaisen käsityksen funktion käyttäytymisestä. Matlabissa on sopiva mokkula tähän käyttötarkoitukseen eli fplotkomento. Haarukoimalla fplot-komennolla päädymme esim. seuraavanlaiseen tilanteeseen: (6) (7) (9) >> fplot ( '((3-x)/(-x))^ * (x/(-x)) - 49', [ ]) ; grid ;

3 Nollakohdan summittaisen paikan haarukointiin voi tietysti käyttää myös Excel-taulukkolaskentaohjelmaa. Nyt meillä on tiedossamme kaikki tarpeellinen koodausta varten. % K1_010_MetO.m % Hougen, Watson & Ragatz s. 1- % Matlab-koodi: % Laskee funktion arvot. fun = inline ( '((3-x)/(-x))^ * (x/(-x)) - 49', 'x') ; % Laskee derivaatan arvot. dfun = inline ( '(*(3-x)/((-x)^3))*(((3-x)/(-x))*(1+x)-x)', 'x') ; % Kuvaajan piirto. fplot ( fun, [ ]) ; grid ; % Newtonin menetelmä. % Tarvitsee KÄSIN lasketun derivaatan. disp ('Lasketaan Newtonin menetelmän avulla:') ; x = 1.8 ; % Aloituspiste. f = fun (x) ; % Funktion arvo aloituspisteessä. f_old = realmax ; disp ( [ x f ] ) ; while ( abs(f_old-f) > 1e-3 ), x = x - fun(x)/dfun(x) ; % Lasketaan uusi piste. f_old = f ; f = fun (x) ; % Funktion arvo uudessa pisteessä. disp ( [ x f ] ) ; end nollakohta = x % Sekanttimenetelmä. % Ei tarvitse derivaattaa. disp ('Lasketaan sekanttimenetelmän avulla:') ; x0 = 1.8 ; x1 = 1.85 ; % Aloituspisteet. f0 = fun (x0) ; f1 = fun (x1) ; % Funktion arvot aloituspisteissä. disp ( [ x0 f0 x1 f1 ] ) ; while ( abs(f0-f1) > 1e-3 ), t = (x1-x0)/(f1-f0) ; x = x - t * f1 ; % Lasketaan uusi piste. x0 = x1 ; x1 = x ; f0 = fun (x0) ; f1 = fun (x1) ; % Funktion arvot uusissa pisteissä. disp ( [ x0 f0 x1 f1 ] ) ; end nollakohta = x % Nollakohdan etsintä FZERO-funktion avulla. % ei toimi, jos aloituspiste on 0 tai disp ('Lasketaan FZERO-funktion avulla:') ; nollakohta = fzero ( ' (((3-x)/(-x))^ * (x/(-x) ) -49)', 1.9)

4 >> K1_010_MetO Lasketaan Newtonin menetelmän avulla: nollakohta = Lasketaan sekanttimenetelmän avulla: nollakohta = Lasketaan FZERO-funktion avulla: nollakohta = Eli : Methyl alcohol can be synthesized by passing a mixture of CO and H over a suitable catalyst. For a feed mixture containing moles of hydrogen to 1 mole of carbon monoxide, the number of moles of hydrogen converted at 300 o C and 40 bar is 1.8. Mikä on konversio? Tehtävän määrittelystä myös näemme, että 0< x <. Miksi? Menetelmien toiminnan vertailu: Newtonin menetelmä: Erittäin nopea, jos aloituspiste on lähellä todellista nollakohtaa Taipumus divergoitua eli ei löydä nollakohtaa, jos aloituspiste x 0 on huonosti valittu Tarvitsee derivaatan, jonka laskeminen käsin on työlästä ja virhealtista Numeerisen derivaatan käyttö on mahdollista (ks. opintojakso Numeeriset menetelmät ) Sekanttimenetelmä: Hitaampi kuin Newtonin menetelmä Ei tarvitse derivaattaa Aloituspisteiden ( x 0 ja x 1 ) valinta voi olla ongelmallista Matlabin fzero-funktio: testattu menetelmä yleensä on syytä käyttää testattuja menetelmiä idioottivarmaa numeerista nollakohdan hakumenetelmää ei olekaan... Lisää tietoa aiheesta: Oheinen moniste. Brent, R., Algorithms for Minimization Without Derivatives, Prentice-Hall, Forsythe, G. E., M. A. Malcolm, and C. B. Moler, Computer Methods for Mathematical Computations, Prentice-Hall, 1976.

5 1 Ohjelmointi ja Matlab syksy 010 Kotitehtävä palautettava mennessä In analyzing the equilibrium developed in the outgoing gas when a feed mixture of HO and CO in a molal ratio of 5 to 1 is passed though a bed of coke maintained at 1100 K and 10 bar, the following two independent equations are obtained: ( x y) x = (a) 1 x+ y 5 x ( )( ) ( 1 x+ y) ( x y)( 6 + y) = 1.01 x = moles of HO converted, per 6 moles of feed, according to the water-gas reaction, HO+ CO CO H + y = moles of CO converted, per 6 moles of feed, according to the reaction, C+ CO CO If the numerical values of x and y can be determined, the equilibrium gas composition may be calculated. Koodaa tehtävän ratkaisu Matlab-ohjelmaa hyväksi käyttäen. Ratkaisumenetelminä käytä Newtonin menetelmää (joka tässä tapauksessa tarkoittaa eri menetelmää kuin kotitehtävässä 1) ja Broydenin menetelmää. Menetelmien kuvaukset oheisessa paperissa. Menetelmät: Menetelmien kuvaukset ja ongelmanratkaisun problematiikka on kuvattu monisteessa (Systems_of_nonlinear_equations.pdf). (b) Tarvittavat tiedot: Sekä Newtonin menetelmässä että Broydenin menetelmässä tarvitaan Jacobin matriisia (esim. f1 f1 x1 x n J = fm fm x 1 xn Seuraavaksi on laskettava tarvittavat osittaisderivaatat. Nyt derivoitavat funktiot ovat (c) ( x y) ( x y) x ( 1 x+ y)( 5 x) f1, = 0.944

6 f ( x y) ( 1 x+ y) ( x y)( 6 + y), = 1.01 Nyt saamme ensimmäisestä funktiosta ja edelleen ( ) ( 1 )( 5 ) x y x x+ y x ( 1 x+ y)( 5 x) ( x y) x f 1 x = x x ( 1 x+ y)( 5 x) ( ) ( 1 )( 5 ) x y x x+ y x ( 1 x+ y)( 5 x) ( x y) x f 1 y y = y ( 1 x+ y)( 5 x) ( 1 x + y)( 5 x) ( x y) ( x y) x ( 6+ x y) ( 1 )( 5 ) = x x+ y x f1 ( 1 x + y)( 5 x) ( x) ( x y) x ( 10 x) ( 1 )( 5 ) = y x+ y x f1 Toisesta funktiosta saamme ja edelleen ( ) ( ) ( )( 6 ) 1 x+ y ( x y)( 6 + y) ( x y)( 6+ y) 1 x+ y f x = x x x y + y ( ) 1 x+ y ( x y)( 6 + y) ( x y)( 6+ y) ( 1 x+ y) f y y = y ( x y)( 6 + y) ( x y)( 6+ y) ( )( 1 x+ y) ( 1 x+ y) ( 6+ y) f = ( )( 6 ) x x y + y ( x y)( 6+ y) 4( 1 x+ y) ( 1 x+ y) ( x 6 y) f = ( )( 6 ) y x y + y Eo. yhtälöt voisi vielä sievennellä, mutta laskennan kannalta katsottuna se ei ole tarpeen (ks. miten Jacobin matriisi on koodattu Matlab-koodiksi).

7 3 Aloituspisteen valinta: Alkuperäisistä yhtälöistä näemme, että aloitusarvoina x ja y eivät voi olla samoja eikä x voi olla 5. Aloitusarvoiksi soveltunevat pienet kokonaisluvut, esim. x = 4 ja y = 3. Voisimme myös ratkaista sekä a:sta että b:stä y:t ja katsoa miten saadut funktiot käyttäytyvät, mutta tämä tapa on suhteellisen työläs. Matlab koodit: Ensiksi Newtonin menetelmä: % K_010_MetO_a.m % Newton's method. % , & Juha Jaako format compact ; clear all ; hold on ; disp ( 'Newtonin menetelmä' ) ; x = [ 4 3 ]' ; plot (x(1), x(), 'k*') ; axis ( [ ] ) ; % Määritellään funktiot (inline). f1 = inline ( '(((x-y)*x)/((1-x+*y)*(5-x))) ', 'x', 'y' ) ; f = inline ( '((1-x+*y)^/((x-y)*(6+y))) ', 'x', 'y' ) ; % Määritellään Jacobin matriisi (inline). % Ensimmäinen funktio. t1 = [ '((1-x+*y)*(5-x))' ] ; t = [ '((x-y)*x)' ] ; t3 = [ '(' t1 '^)' ] ; t4 = [ '(' t1 '*(*x-y)-' t '*(*x-*y-6))/' t3 ] ; J11 = inline ( t4, 'x', 'y' ) ; t5 = [ '(' t1 '*(-x)-' t '*(10-*x))/' t3 ] ; J1 = inline ( t5, 'x', 'y' ) ; % Toinen funktio. t1 = [ '((x-y)*(6+y))' ] ; t = [ '((1-x+*y)^)' ] ; t3 = [ '(' t1 '^)' ] ; t4 = [ '(' t1 '*((-)*(1-x+*y))-' t '*(6+y))/' t3 ] ; J1 = inline ( t4, 'x', 'y' ) ; t5 = [ '(' t1 '*(4*(1-x+*y))-' t '*((x-6-*y)))/' t3 ] ; J = inline ( t5, 'x', 'y' ) ; % Asetaan suppenemisparametrit. erosuure = realmax ; % Testisuureen alkuarvo. laskuri = 0 ; % Nollataan kierroslaskuri. TOLERANSSI = 1e-6 ; % Laskentatoleranssi. MAKSIMIKIERROKSET = 10 ; % Asetaan maksikierrosten määrä disp ( [ x' ] ) ; % Aloitetaan laskenta. while ( (erosuure > TOLERANSSI) & (laskuri < MAKSIMIKIERROKSET) ), %for i = 1 : 10, laskuri = laskuri + 1 ; % Kasvatetaan kierroslaskuria. f = [ f1(x(1),x()) ; f(x(1),x()) ] ;

8 4 J = [ J11(x(1),x()), J1(x(1),x()) ;... J1(x(1),x()), J(x(1),x()) ] ; sk = J \ (-f) ; % Lasketaan Newton-askel. s. 39 x = x + sk ; % Uuden pisteen päivityskaava. plot (x(1), x(), 'k*') ; text (x(1), x(), [ '\leftarrow' numstr(laskuri) ' ']) ; line ( [x(1), x(1)-sk(1)], [x(), x()-sk()] ) ; % Lasketaan uuden testisuureen arvo. erosuure = max (abs ([ f1(x(1),x()); f(x(1),x()) ] - f)) ; disp ( [ x' erosuure ] ) ; end % Tulostetaan ratkaisu. disp ( [ 'Ratkaisu:' ] ) ; disp ( x' ) ; disp ( [ 'Kierroksia:' ] ) ; disp (laskuri) ; hold off ; Kun ohjelma ajetaan komentoikkunasta, saamme >> K_010_MetO_a Newtonin menetelmä 4 3 (erosuure) Ratkaisu: Kierroksia: Ratkaisu löytyy vähin laskentakierroksin, joka johtuu siitä, että alkuarvauksemme oli hyvä. Ks. seuraava kuvio: Seuraavaksi Broydenin menetelmä: % K_010_MetO_b.m % Broyden's method.

9 5 % Juha Jaako format compact ; clear all ; disp ( 'Broydenin menetelmä' ) ; tol = ; xk = [ 4 3 ]' ; % Define functions. f1 = inline ( '(((x-y)*x)/((1-x+*y)*(5-x))) ', 'x', 'y' ) ; f = inline ( '((1-x+*y)^/((x-y)*(6+y))) ', 'x', 'y' ) ; % Define Jacobian. % First function. t1 = [ '((1-x+*y)*(5-x))' ] ; t = [ '((x-y)*x)' ] ; t3 = [ '(' t1 '^)' ] ; t4 = [ '(' t1 '*(*x-y)-' t '*(*x-*y-6))/' t3 ] ; J11 = inline ( t4, 'x', 'y' ) ; t5 = [ '(' t1 '*(-x)-' t '*(10-*x))/' t3 ] ; J1 = inline ( t5, 'x', 'y' ) ; % Second function. t1 = [ '((x-y)*(6+y))' ] ; t = [ '((1-x+*y)^)' ] ; t3 = [ '(' t1 '^)' ] ; t4 = [ '(' t1 '*((-)*(1-x+*y))-' t '*(6+y))/' t3 ] ; J1 = inline ( t4, 'x', 'y' ) ; t5 = [ '(' t1 '*(4*(1-x+*y))-' t '*((x-6-*y)))/' t3 ] ; J = inline ( t5, 'x', 'y' ) ; a = xk(1) ; b = xk() ; disp ( 'Initial Jacobian:' ) ; % Compute initial Jacobian. - Vaihtoehto 1. Bk = [ J11(a,b), J1(a,b) ; J1(a,b), J(a,b) ] % Initial Jacobian = identity matrix. - Vaihtoehto. %Bk = eye () disp (' ') ; test = realmax ; disp ( [ a b ] ) ; k = 0 ; % Iteration counter while (test > tol), %for i = 1 : 10, f = [ f1(a,b); f(a,b) ] ; sk = Bk \ (-f) ; xk = xk + sk ; a = xk(1) ; b = xk() ; yk = ([ f1(a,b); f(a,b) ] - f ) ; test = max(abs(yk)) ; disp ( [ a b test ] ) ; % Update Jacobian. Bk = Bk + ( (yk-bk*sk)*(sk') ) / ((sk')*sk) ; k = k + 1 ; end disp ( 'Vastaus:' ) ; disp (xk') ;

10 6 disp (k) ; Ajetaan Broydenin menetelmä ensin siten, että käytetään Jacobin matriisia aloituspisteessä [4, 3] ensimmäisenä arvona: >> K_010_MetO_b Broydenin menetelmä Initial Jacobian: Bk = Vastaus: Suppeneminen on hitaampaa kuin Newtonin menetelmässä. Ajetaan Broydenin menetelmää myös siten, että emme käytä Jacobin matriisia ollenkaan, Bk = eye () : >> K_010_MetO_b Broydenin menetelmä Initial Jacobian: Bk = Vastaus: Laskenta vie entistä enemmän kierroksia eli 1, kun käytämme samaa lopetusehtoa. Vastaus: The equilibrium gas composition: x : moles of HO converted = 3.85 y : moles of CO converted =.98

11 7 Mitä menetelmää sitten pitäisi käyttää epälineaarisen yhtälöryhmän ratkaisussa? (vrt. moniste Systems_of_nonlinear_equations.pdf). Yksikäsitteistä vastausta kysymykseen ei ole olemassa. Newton-tyyppiset menetelmät ovat epäluotettavia, jos aloituspiste on kaukana haetusta. Käyttämämme menetelmän tulisi olla luotettava ja helppokäyttöinen. Yksi vaihtoehto on seuraava koodi (Broydenin menetelmä): % K_010_MetO_b1.m % Broyden's method. % & Juha Jaako format compact ; clear all ; % Aloituspiste. x = [ 4 3 ]' ; % Määritellään funktiot. f1 = inline ( '(((x-y)*x)/((1-x+*y)*(5-x))) ', 'x', 'y' ) ; f = inline ( '((1-x+*y)^/((x-y)*(6+y))) ', 'x', 'y' ) ; % Aloitusmatriisina yksikkömatriisi. B = eye () ; % Suppenemisen vartiointi. test = realmax ; k = 0 ; maksimikierrokset = 50 ; tol = 1e-6 ; % Suppenemiskriteerin alkuarvo. % Kierroslaskuri. % Laskentakierrosten yläraja. % Lopetustoleranssi. while ((test > tol) & (k < maksimikierrokset)), f = [ f1(x(1),x()) ; f(x(1),x()) ] ; % Funktion arvo. s = B \ (-f) ; % Ratkaistaan lineaarinen yhtälöryhmä. x = x + s ; % Päivitetään ratkaisu. y = ([ f1(x(1),x()); f(x(1),x()) ] - f ) ; test = max(abs(y)) ; % Päivitetään suppenemiskriteeri. % Päivitä kerroimatriisi. B = B + ( (y-b*s)*(s') ) / ((s')*s) ; k = k + 1 ; % Päivitetään kierroslaskuri. end disp ( [ 'Vastaus: x = ' numstr(x(1)) ', y = ' numstr(x())] ) ; disp ([ 'Laskentakierroksia: ' numstr(k) ]) ; Tuloste: >> K_010_MetO_b1 Vastaus: x = , y =.9718 Laskentakierroksia: 1

12 Ohjelmointi ja Matlab syksy 010 Kotitehtävä palautettava Ohessa on pdf-tiedosto (Cubic_Spline_Interpolation.pdf), jossa on kuvattu, millaisia ovat kuutiolliset splinit. Seuraava data t = [ 1964 : 1 : 009 ] ; y = [, 8, 1, 10, 6, 1, 1, 13, 19, 35, 5, 34, 1, 8, 37,... 33, 4, 3, 33, 30, 5, 14,, 8, 5, 7, 34, 38, 44, 64,... 47, 44, 6, 41, 46, 53, 51, 60, 7, 85, 79, 79, 85, 83, 105, 78 ] ; kuvaa osastolta valmistuneiden diplomi-insinöörien määriä vuosina Kun sovitamme datan kuutiollisen splinin avulla, saamme seuraavan kuvaajan: Data points Cubic spline Kuvaaja syntyy seuraavan koodin avulla (K3_010_MetO_S.m): clear all;format compact;hold on;t=[1964:1:009]; y=[,8,1,10,6,1,1,13,19,35,5,34,1,8,37,... 33,4,3,33,30,5,14,,8,5,7,34,38,44,64,... 47,44,6,41,46,53,51,60,7,85,79,79,85,83,105,78 ] ; plot(t,y,'ko');s=length(t);b=[4,1,zeros(1,s-4)]; for i=:s-3,temp=[zeros(1,i-),1,4,1,zeros(1,s-4)];b=[b;temp(1:s-)]; end;b=[b;zeros(1,s-4),1,4];b=sparse(b);h=t()-t(1);k=6/(h^); for i=1:s-,z(i)=k*(y(i)-*y(i+1)+y(i+));end;z=z';m=b\z;m=[0;m;0]; for i=1:s-1,a(i)=(m(i+1)-m(i))/(6*h);b(i)=((m(i))/); c(i)=((y(i+1)-y(i))/h)-((m(i+1)+*m(i))/6)*h;d(i)=y(i); as=['(' numstr(a(i)) ')'];bs=['(' numstr(b(i)) ')']; cs= ['(' numstr(c(i)) ')'];ds=['(' numstr(d(i)) ')']; xi=numstr(t(i)); guns=[ as '*(x-' xi ')^3+' bs '*(x-' xi ')^+' cs '*(x-' xi ')+' ds ]; gun=inline( guns, 'x');fplot(gun,[ t(i) t(i+1) ],'k-'); end;axis([ ]);legend('Data points', 'Cubic spline') ; grid;hold off; Koodi on kuitenkin jätetty kommentoimatta ja se on ulkoasultaan sekä luettavuudeltaan huono. Tehtäväsi on kommentoida koodi (vihje: etsi pdf-tiedostosta se menetelmä, jota on käytetty koodauksen pohjana) sekä parantaa sen ulkoasua ja luettavuutta. Keksi parannuksia koodiin!

13 :34 C:\Users\Juha Jaako\AppData\Local\Microsoft\Windo...\K3_korjattu.m 1 of % Matlab-kurssi 010 % clear all ; format compact ; hold on ; % Maaritellaan t eli aika välille t = [1964 : 1 : 009] ; % Valmistuneiden maarat em. vuosina y = [, 8, 1, 10, 6, 1, 1, 13, 19, 35, 5, 34, 1, 8, 37,... 33, 4, 3, 33, 30, 5, 14,, 8, 5, 7, 34, 38, 44, 64,... 47, 44, 6, 41, 46, 53, 51, 60, 7, 85, 79, 79, 85, 83, 105, 78 ] ; % Piirretaan kuvaajaan aluksi valmistuneiden maarat mustina palloina ajan % ollessa x-akselilla plot (t, y, 'ko') ; % Lähdetaan muodostamaan annetuille tiedoille käyrää luonnollisten splinien % menetelmällä. Määritellaan muuttuja s muuttujan t pituuden mukaan eli % tästä saadaan alkuarvo pisteiden määrälle. Splinien muodostamiseen % tarkoitettujen matriisien koko tullaan määrittämään tämän mukaan. s = length(t) ; % Matriisin ensimmainen rivi, muotoa [ ] B = [4,1,zeros(1,s-4)] ; for i = :s-3, end ; % Matriisin "sisaosa" jossa 1,4,1-osa liukuu vasemmasta laidasta % oikeaan laitaan kierros kierrokselta. temp = [ zeros(1,i-),1,4,1,zeros(1,s-4) ] ; B = [B;temp(1:s-)]; % Matriisin viimeinen rivi, muotoa [ ] B = [ B;zeros(1,s-4),1,4 ] ; % Poistetaan turhat 0-elementit B=sparse(B) ; % Selvitetaan kahden edellisen arvon välinen ero, muuttuja h, % tässä tapauksessa kaikki arvot ovat vuoden ts. tasaisin valein % eli niiden valinen ero on aina 1. Ainakaan kaavan % mukaan, % jossa h = x(i) - x(i-1). Siis tällä koodilla ei pystytä laskemaan % epatasaisesti x-akselille sijoittuneita pisteita. (Nyt siis lasketaan % vain laiskasti vuosien 1965 ja 1964 erotus.) h = t() - t(1) ; k = 6/(h^) ; for i=1:s-, end ; % Rakennetaan matriisi z, joka sisaltaa yhdella rivilla kaikkien % menetelmassa kaytettyjen yi - *y - y3 - arvot. z(i) = k*(y(i) - *y(i+1) + y(i+)) ; z = z' ; % Transpoosi matriisista z M = B\z ; % Ratkaistaan M. M = [ 0 ; M ; 0 ] ; % Lisätään nollat alkuun ja loppuun. for i=1:s-1, % Ratkaistaan kierroksen splinin funktion kertoimien arvot a(i) = (M(i+1)-M(i))/(6*h) ; b(i) = ((M(i))/) ; c(i) = ((y(i+1)-y(i))/h)-((m(i+1)+*m(i))/6)*h ; d(i) = y(i) ; % Muutetaan luvut merkkijonoiksi. as = ['(' numstr(a(i)) ')'] ; bs = ['(' numstr(b(i)) ')'] ; cs = ['(' numstr(c(i)) ')'] ; ds = ['(' numstr(d(i)) ')'] ; % Muodostetaan kertoimista funktio josta voidaan jokaisella

14 :34 C:\Users\Juha Jaako\AppData\Local\Microsoft\Windo...\K3_korjattu.m of end ; % kierroksella ja t:n arvolla ratkaista y. xi = numstr (t(i)) ; guns=[ as '*(x-' xi ')^3+' bs '*(x-' xi ')^+' cs '*(x-' xi ')+' ds ] ; gun = inline( guns, 'x') ; % Piirretaan jokaisella kierroksella palanen splinia, edellisestä % pisteestä seuraavaan pisteeseen. fplot (gun, [ t(i) t(i+1) ], 'r-') ; % Määritetään akselit axis ([ ]) ; % Selvennetään kaavion merkit legend ('Data points', 'Cubic spline') ; % Selvennetään akselit ylabel ('Valmistuneiden maara') xlabel ('Vuosiluku') grid ; hold off ;

15 1 Ohjelmointi ja Matlab syksy 010 Kotitehtävä 4 Annettu Palautettava klo 3:59 mennessä (H 3.1) For n = 0, 1,..., 5, fit a polynomial of degree n by least squares to the following data: t y Make a plot of the original data points along with each resulting polynomial curve (you may make separate graphs for each curve or a single graph containing all of the curves). Which polynomial would you say captures the general trend of the data better? Obviously, this is a subjective question, and its answer depends on both the nature of the given data (e.g., the uncertainty of the data values) and the purpose of the fit. Explain your assumptions in answering. Use Matlab. Ratkaisu: Piirretään ensin datapisteet koordinaatistoon: >> clear all >> t = [ ] ; >> y = [ ] ; >> plot (t, y, 'ko') ; axis ( [ ] ) ; grid on ; Kuvion perusteella näyttää siltä, että polynomimalli sopii hyvin käyttötarkoitukseemme. On vain valittava sopivin pienimmän neliösumman mielessä.

16 Pienimmän neliösumman menetelmän (PNS, method of least squares, least squares, esim: käyttöä olitte jo harjoitelleet tehdyn harjoitteen puitteissa, jolloin havaittiin, että Matlabia käyttäen ongelman ratkaisu (parametrien suhteen lineaarisessa tapauksessa) ei ole kovin vaikeaa. Koodataan seuraava koodi, joka piirtää kaikki sovitukset samaan kuvioon (voi myös käyttää subplot -komentoja ja piirtää kuusi erillistä pikkukuviota tai piirtää kuusi erillistä isoa kuviota): % K4_010_MetO.m % Pienimmän neliösumman menetelmä. % & (c) Juha Jaako format compact ; clear all ; % Pito päälle (sallii kuvaa kohti useita piirtokomentoja). hold on ; % Mittaustiedot. t = [ ] ; y = [ ] ; % Piirretään mittaustiedot koordinaatistoon. plot (t, y, 'ko') ; % Datapisteet kuvioon. grid on ; % Ruudukko kuvioon. % Lisätään akselitiedot. axis ( [ ] ) ; % Määritellään akselit: t ; y xlabel ( '\it t' ) ; % Teksti x-akselille. ylabel ( '\it y' ) ; % Teksti y-akselille. title ( 'Polynomisovitus: n = 0, 1,..., 5') ; % Kuvion otsikko. %%% Polynomit : n = 0, 1,, 3, 4, 5 % Tähän voisi tehdä for... end -silmukan. % n = 0 : y = a0 A = [ones(length(t),1)] ; b = y' ; x = A \ b ; a0 = x ; yp = [ '(' numstr(a0) ')' ] ; yf = inline (yp, 't') ; disp (yf) ; fplot (yf, [ 0 7], 'k--' ) ; % Neliösumman arvo. temp = [ yf(t(1)), yf(t()), yf(t(3)), yf(t(4)), yf(t(5)), yf(t(6)) ] ; neliosumma0 = sum ((y - temp).^) % n = 1 : y = a1*t + a0 % PNS-matriisi : A x = b A = [t', ones(length(t),1)] ; b = y' ; x = A \ b ; a1 = x(1) ; a0 = x() ; yp = [ '(' numstr(a1) ')*t+(' numstr(a0) ')' ] ; yf = inline (yp, 't') ; disp (yf) ; fplot (yf, [ 0 7], 'b--' ) ; % Neliösumman arvo. temp = [ yf(t(1)), yf(t()), yf(t(3)), yf(t(4)), yf(t(5)), yf(t(6)) ] ; neliosumma1 = sum ((y - temp).^)

17 3 % n = : y = a*t^ + a1*t + a0 % PNS-matriisi : A x = b A = [(t.^)', t', ones(length(t),1)] ; b = y' ; x = A \ b ; a = x(1) ; a1 = x() ; a0 = x(3) ; yp = [ '(' numstr(a) ')*t^+(' numstr(a1) ')*t+(' numstr(a0) ')' ] ; yf = inline (yp, 't') ; disp (yf) ; fplot (yf, [ 0 7], 'r--' ) ; % Neliösumman arvo. temp = [ yf(t(1)), yf(t()), yf(t(3)), yf(t(4)), yf(t(5)), yf(t(6)) ] ; neliosumma = sum ((y - temp).^) % n = 3 : y = a3*t^3 + a*t^ + a1*t + a0 % PNS-matriisi : A x = b A = [(t.^3)', (t.^)', t', ones(length(t),1)] ; b = y' ; x = A \ b ; a3 = x(1) ; a = x() ; a1 = x(3) ; a0 = x(4) ; yp = [ '(' numstr(a3) ')*t^3+(' numstr(a) ')*t^+('... numstr(a1) ')*t+(' numstr(a0) ')' ] ; yf = inline (yp, 't') ; disp (yf) ; fplot (yf, [ 0 7], 'k.-' ) ; % Neliösumman arvo. temp = [ yf(t(1)), yf(t()), yf(t(3)), yf(t(4)), yf(t(5)), yf(t(6)) ] ; neliosumma3 = sum ((y - temp).^) % n = 4 : y = a4*t^4 + a3*t^3 + a*t^ + a1*t + a0 % PNS-matriisi : A x = b A = [(t.^4)', (t.^3)', (t.^)', t', ones(length(t),1)] ; b = y' ; x = A \ b ; a4 = x(1) ; a3 = x() ; a = x(3) ; a1 = x(4) ; a0 = x(5) ; yp = [ '(' numstr(a4) ')*t^4+(' numstr(a3) ')*t^3+(' numstr(a)... ')*t^+(' numstr(a1) ')*t+(' numstr(a0) ')' ] ; yf = inline (yp, 't') ; disp (yf) ; fplot (yf, [ 0 7], 'b.-' ) ; % Neliösumman arvo. temp = [ yf(t(1)), yf(t()), yf(t(3)), yf(t(4)), yf(t(5)), yf(t(6)) ] ; neliosumma4 = sum ((y - temp).^) % n = 5 : y = a5*t^5 + a4*t^4 + a3*t^3 + a*t^ + a1*t + a0 % PNS-matriisi : A x = b A = [(t.^5)', (t.^4)', (t.^3)', (t.^)', t', ones(length(t),1)] ; b = y' ; x = A \ b ; a5 = x(1) ; a4 = x() ; a3 = x(3) ; a = x(4) ; a1 = x(5) ; a0 = x(6) ; yp = [ '(' numstr(a5) ')*t^5+(' numstr(a4) ')*t^4+(' numstr(a3)... ')*t^3+(' numstr(a) ')*t^+(' numstr(a1) ')*t+(' numstr(a0) ')' ] ; yf = inline (yp, 't') ; disp (yf) ; fplot (yf, [ 0 7], 'r.-' ) ; % Neliösumman arvo. temp = [ yf(t(1)), yf(t()), yf(t(3)), yf(t(4)), yf(t(5)), yf(t(6)) ] ; neliosumma5 = sum ((y - temp).^) % Selitteet. legend ( 'datapisteet', 'n=0', 'n=1', 'n=', 'n=3', 'n=4', 'n=5', ) ; % Pito pois. hold off ;

18 4 Saamme seuraavan kuvion datapisteet n=0 n=1 n= n=3 n=4 n=5 Polynomisovitus: n = 0, 1,..., 5 y t ja tulosteen, josta näkyvät myös lasketut malliparametrit ja neliösummat (ulkoasua muokattu): >> K4_010_MetO Inline function: yf(t) = (5.5833) neliosumma0 = Inline function: yf(t) = (1.7057)*t+(1.319) neliosumma1 = Inline function: yf(t) = ( )*t^+(.1789)*t+(1.0036) neliosumma = Inline function: yf(t) = ( )*t^3+( )*t^+(3.1557)*t+( ) neliosumma3 = Inline function: yf(t) = (0.1065)*t^4+(-0.991)*t^3+(.634)*t^+( )*t+( ) neliosumma4 = Inline function: yf(t) = ( )*t^5+( )*t^4+(-4.15)*t^3+(8.304)*t^+( )*t+(1) neliosumma5 = e-006 Yleensä sopivimman mallin valinta tapahtuu silmämääräisesti sekä laskemalla tunnuslukuja. Yleisin tunnusluku on selitysaste R tai neliösumman arvo. Selitysaste ilmoittaa, kuinka suuri murto-osa y:n arvoissa todetusta vaihtelusta voidaan selittää t:n arvoissa tapahtuneilla muutoksilla. Selitysasteet eri malleille ovat (miten lasketaan?): n R Neliösumma 0 << e-006 ~ 0

19 5 Yleensä mallia pidetään hyvänä, jos selitysaste on parempi kuin 0.9 (tai neliösumma ei ole kovin suuri). Nyt tilanne on malleilla n > 0 tämä. Lisäksi mallien selityaste kasvaa polynomin asteen kasvaessa. Arvolla n = 5 selitysaste on jopa 1 (miksi?). Katsotaan nyt mallien n = tilannetta. malli n = 0 : Kuvaajasta näemme, että malli kuvaa erittäin huonosti dataa (neliösumma suuri). Poistamme tilanteen n = 0 ja saamme seuraavan kuvion datapisteet n=1 n= n=3 n=4 n=5 Polynomisovitus: n = 1,..., 5 y t mallit n = 4 ja n = 5 : Kuvaajista näemme, että mallit kuvaavat dataa hyvin datapisteissä, kohtalaisesti datapisteiden välillä (interpolaatio) mutta erittäin huonosti välillä t > 5 (ekstrapolointi). Poistamme tilanteet n = 4 ja n = 5 ja saamme kuvion datapisteet n=1 n= n=3 Polynomisovitus: n = 1,..., 3 8 y t

20 6 mallit n = 1, n = ja n = 3 : Mallit kuvaavat hyvin dataa sekä datapisteiden välillä että välillä x > 5. Periaatteessa kaikki mallit käyvät, mutta koska yleensä pyritään käyttämään mahdollisimman yksinkertaista mallia, poistetaan tilanne n = 3 tarkastelusta. Saamme 14 1 datapisteet n=1 n= Polynomisovitus: n = 1, 10 8 y t Nyt on aika tavalla makuasia, käyttääkö mallia n = 1 vai n =. Kummallakin valinnalla on puolensa. y(t) = *t y(t) = *t^ *t n R Neliösumma

21 1 Ohjelmointi ja Matlab syksy 010 Kotitehtävä 5 palautettava klo 3:59 mennessä Suppose that in a certain city, the pollution level is measured at two-hour intervals, beginning at midnight. These measurements were recorded for a one-week period and stored in a Matlab matrix, the first line of which contains the pollution levels for day 1, the second line for day, and so on. For example, suppose the pollution matrix for a certain week contains the following data: A = [ 30, 30, 31, 3, 35, 40, 43, 44, 47, 45, 40, 38 ;... 33, 3, 30, 34, 40, 48, 46, 49, 53, 49, 45, 40 ;... 38, 35, 34, 37, 44, 50, 51, 54, 60, 58, 51, 49 ;... 49, 48, 47, 53, 60, 70, 73, 75, 80, 75, 73, 60 ;... 55, 54, 53, 65, 70, 80, 90, 93, 95, 94, 88, 6 ;... 73, 70, 65, 66, 71, 78, 74, 78, 83, 75, 66, 58 ;... 50, 47, 43, 35, 30, 33, 37, 43, 45, 5, 39, 31 ] ; A Matlab program (or programs) is (are) to be written to produce a weekly report displaying the pollution levels. Ongelman ratkaisu: Ensimmäinen ongelma mittausdataa käsiteltäessä on, että onko viikon ensimmäinen päivä maanantai (kuten Suomessa) vai sunnuntai (kuten Yhdysvalloissa). Tässä käsittelyssä on oletettu, että viikon ensimmäinen päivä on sunnuntai. Mikäli käytämme viikon ensimmäisenä päivänä maanantaita, niin koodeihin on tehtävä vastaavat muutokset. Millaisia raportteja mittausdatasta voi sitten tehdä? Tarjolla on useita vaihtoehtoja: erilaisia taulukoita, kuvaajia tai edellisten yhdistelmiä. Tässä esityksessä tehdään yksi taulukko ja neljä erilaista kuvaajaa: kellonaika vs. saastetaso eri päivinä (time of day vs. pollution level) viikonpäivä vs. saastetaso eri kellonaikoina (day of week vs. pollution level) koko viikko vs. saastetaso (whole week vs. pollution level) saastetason luokka vs. lukumäärä (values range vs. number of occurrences) Teemme ensiksi ohjelman (pollution_data.m), joka tallettaa datan (vektorin t ja matriisin A) datatiedostoon pollution_data.mat. % pollution_data.m % & (c) Juha Jaako clear all ; % Mittausajakohdat. t = [ 0,, 4, 6, 8, 10, 1, 14, 16, 18, 0, ] ; % Saastetaso. A = [ 30, 30, 31, 3, 35, 40, 43, 44, 47, 45, 40, 38 ; 33, 3, 30, 34, 40, 48, 46, 49, 53, 49, 45, 40 ; 38, 35, 34, 37, 44, 50, 51, 54, 60, 58, 51, 49 ; 49, 48, 47, 53, 60, 70, 73, 75, 80, 75, 73, 60 ; 55, 54, 53, 65, 70, 80, 90, 93, 95, 94, 88, 6 ; 73, 70, 65, 66, 71, 78, 74, 78, 83, 75, 66, 58 ; 50, 47, 43, 35, 30, 33, 37, 43, 45, 5, 39, 31 ] ; save pollution_data t A ; disp ( 'Tietojen tallennus tapahtui' ) ; Nyt voimme ladata mittausdatan aina tarvittaessa ohjelmaan load -komennolla.

22 Voimme esittää datan yksinkertaisessa taulukkomuodossa seuraavasti (esim. siirrettäväksi Wordtekstinkäsittelyohjelmaan): % pollution_table.m % & (c) Juha Jaako clear all ; format compact ; % Ladataan datatiedosto. load pollution_data t A ; % Matriisin koko. [rows, colunms ] = size (A) ; % Viikonpäivät. names = ( [ 'Sunday : ' ; 'Monday : ' ; 'Tuesday : ' ;... 'Wednesday : ' ; 'Thursday : ' ; 'Friday : ' ;... 'Saturday : ' ] ) ; % Tehdään taulukko näytölle; taulukon voi kirjoittaa myös tiedostoon. % Lasketaan taulukkoon myös kunkin päivän keskiarvot. disp ( ' ' ) ; disp ( 'Pollution Data for Week X' ) ; disp ( ' Time of Day' ) ; disp ( [ 'Day : ' sprintf('%3d', t) ' Mean' ]) ; disp ( ' ' ) ; for i = 1 : rows, disp([names(i,:) sprintf('%3d',a(i,:)) sprintf('%6.1f', mean(a(i,:)))]) ; end Tulosteena saamme: >> pollution_table Pollution Data for Week X Time of Day Day : Mean Sunday : Monday : Tuesday : Wednesday : Thursday : Friday : Saturday :

MS-A0204 Differentiaali- ja integraalilaskenta 2 (ELEC2) Luento 7: Pienimmän neliösumman menetelmä ja Newtonin menetelmä.

MS-A0204 Differentiaali- ja integraalilaskenta 2 (ELEC2) Luento 7: Pienimmän neliösumman menetelmä ja Newtonin menetelmä. MS-A0204 Differentiaali- ja integraalilaskenta 2 (ELEC2) Luento 7: Pienimmän neliösumman menetelmä ja Newtonin menetelmä. Antti Rasila Matematiikan ja systeemianalyysin laitos Aalto-yliopisto Kevät 2016

Lisätiedot

Harjoitus 7 -- Ratkaisut

Harjoitus 7 -- Ratkaisut Harjoitus 7 -- Ratkaisut 1 Solve osaa ratkaista polynomiyhtälöitä, ainakin astelukuun 4 asti. Erikoistapauksissa korkeammankin asteen yhtälöt ratkeavat. Clear a, b, c, d, e, x ; Solve a x 3 b x 2 c 0,

Lisätiedot

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

Harjoitus 1: Matlab. Harjoitus 1: Matlab. Mat Sovelletun matematiikan tietokonetyöt 1. Syksy 2006 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

Lisätiedot

Teknillinen tiedekunta, matematiikan jaos Numeeriset menetelmät

Teknillinen tiedekunta, matematiikan jaos Numeeriset menetelmät Numeeriset menetelmät 1. välikoe, 14.2.2009 1. Määrää matriisin 1 1 a 1 3 a a 4 a a 2 1 LU-hajotelma kaikille a R. Ratkaise LU-hajotelmaa käyttäen yhtälöryhmä Ax = b, missä b = [ 1 3 2a 2 a + 3] T. 2.

Lisätiedot

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

Tässä dokumentissa on ensimmäisten harjoitusten malliratkaisut MATLABskripteinä. Voit kokeilla itse niiden ajamista ja toimintaa MATLABissa. Laskuharjoitus 1A Mallit Tässä dokumentissa on ensimmäisten harjoitusten malliratkaisut MATLABskripteinä. Voit kokeilla itse niiden ajamista ja toimintaa MATLABissa. 1. tehtävä %% 1. % (i) % Vektorit luodaan

Lisätiedot

FUNKTION KUVAAJAN PIIRTÄMINEN

FUNKTION KUVAAJAN PIIRTÄMINEN FUNKTION KUVAAJAN PIIRTÄMINEN Saat kuvapohjan painamalla @-näppäintä tai Insert/Graph/X-Y-POT. Kuvapohjassa on kuusi paikanvaraaja: vaaka-akselin keskellä muuttuja ja päissä minimi- ja maksimiarvot pystyakselin

Lisätiedot

Sovellettu todennäköisyyslaskenta B

Sovellettu todennäköisyyslaskenta B Sovellettu todennäköisyyslaskenta B Antti Rasila 30. marraskuuta 2007 Antti Rasila () TodB 30. marraskuuta 2007 1 / 19 1 Lineaarinen regressiomalli ja suurimman uskottavuuden menetelmä Minimin löytäminen

Lisätiedot

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

Numeeriset menetelmät TIEA381. Luento 6. Kirsi Valjus. Jyväskylän yliopisto. Luento 6 () Numeeriset menetelmät / 33 Numeeriset menetelmät TIEA381 Luento 6 Kirsi Valjus Jyväskylän yliopisto Luento 6 () Numeeriset menetelmät 4.4.2013 1 / 33 Luennon 6 sisältö Interpolointi ja approksimointi Polynomi-interpolaatio: Vandermonden

Lisätiedot

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

Matriisit ovat matlabin perustietotyyppejä. Yksinkertaisimmillaan voimme esitellä ja tallentaa 1x1 vektorin seuraavasti: >> a = 9.81 a = 9. Python linkit: Python tutoriaali: http://docs.python.org/2/tutorial/ Numpy&Scipy ohjeet: http://docs.scipy.org/doc/ Matlabin alkeet (Pääasiassa Deni Seitzin tekstiä) Matriisit ovat matlabin perustietotyyppejä.

Lisätiedot

mlnonlinequ, Epälineaariset yhtälöt

mlnonlinequ, Epälineaariset yhtälöt Aalto-yliopisto, Matematiikan ja Systeemianalyysin laitos -e mlnonlinequ, Epälineaariset yhtälöt 1. Historiallisesti mielenkiintoinen yhtälö on x 3 2x 5 = 0, jota Wallis-niminen matemaatikko käsitteli,

Lisätiedot

n. asteen polynomilla on enintään n nollakohtaa ja enintään n - 1 ääriarvokohtaa.

n. asteen polynomilla on enintään n nollakohtaa ja enintään n - 1 ääriarvokohtaa. MAA 12 kertaus Funktion kuvaaja n. asteen polynomilla on enintään n nollakohtaa ja enintään n - 1 ääriarvokohtaa. Funktion nollakohta on piste, jossa f () = 0, eli kuvaaja leikkaa -akselin. Kuvaajan avulla

Lisätiedot

Matematiikan tukikurssi

Matematiikan tukikurssi Matematiikan tukikurssi Kurssikerta 2 Lisää osamurtoja Tutkitaan jälleen rationaalifunktion P(x)/Q(x) integrointia. Aiemmin käsittelimme tapauksen, jossa nimittäjä voidaan esittää muodossa Q(x) = a(x x

Lisätiedot

Matlabin perusteita Grafiikka

Matlabin perusteita Grafiikka BL40A0000 SSKMO KH 1 Seuraavassa esityksessä oletuksena on, että Matlabia käytetään jossakin ikkunoivassa käyttöjärjestelmässä (PC/Win, Mac, X-Window System). Käytettäessä Matlabia verkon yli joko tekstipäätteeltä,

Lisätiedot

Numeeriset menetelmät

Numeeriset menetelmät Numeeriset menetelmät Luento 2 To 8.9.2011 Timo Männikkö Numeeriset menetelmät Syksy 2011 Luento 2 To 8.9.2011 p. 1/33 p. 1/33 Lukujen tallennus Kiintoluvut (integer) tarkka esitys aritmeettiset operaatiot

Lisätiedot

Kevään 2011 pitkän matematiikan ylioppilastehtävien ratkaisut Mathematicalla Simo K. Kivelä /

Kevään 2011 pitkän matematiikan ylioppilastehtävien ratkaisut Mathematicalla Simo K. Kivelä / Kevään 0 pitkän matematiikan ylioppilastehtävien ratkaisut Mathematicalla Simo K. Kivelä / 8.7.0 a) b) c) a) Tehtävä Yhtälö ratkaistaan yleensä Solve-funktiolla: Solve x 3 x, x x 4 Joissakin tapauksissa

Lisätiedot

Zeon PDF Driver Trial

Zeon PDF Driver Trial Matlab-harjoitus 2: Kuvaajien piirto, skriptit ja funktiot. Matlabohjelmoinnin perusteita Numeerinen integrointi trapezoidaalimenetelmällä voidaan tehdä komennolla trapz. Esimerkki: Vaimenevan eksponentiaalin

Lisätiedot

Numeeriset menetelmät

Numeeriset menetelmät Numeeriset menetelmät Luento 3 Ti 13.9.2011 Timo Männikkö Numeeriset menetelmät Syksy 2011 Luento 3 Ti 13.9.2011 p. 1/37 p. 1/37 Epälineaariset yhtälöt Newtonin menetelmä: x n+1 = x n f(x n) f (x n ) Sekanttimenetelmä:

Lisätiedot

SIMULINK S-funktiot. SIMULINK S-funktiot

SIMULINK S-funktiot. SIMULINK S-funktiot S-funktio on ohjelmointikielellä (Matlab, C, Fortran) laadittu oma algoritmi tai dynaamisen järjestelmän kuvaus, jota voidaan käyttää Simulink-malleissa kuin mitä tahansa valmista lohkoa. S-funktion rakenne

Lisätiedot

mlvektori 1. Muista, että Jacobin matriisi koostuu vektori- tai skalaariarvoisen funktion F ensimmäisistä

mlvektori 1. Muista, että Jacobin matriisi koostuu vektori- tai skalaariarvoisen funktion F ensimmäisistä Aalto-yliopisto, Matematiikan ja Systeemianalyysin laitos mlvektori 1. Muista, että Jacobin matriisi koostuu vektori- tai skalaariarvoisen funktion F ensimmäisistä osittaisderivaatoista: y 1... J F =.

Lisätiedot

Mapu 1. Laskuharjoitus 3, Tehtävä 1

Mapu 1. Laskuharjoitus 3, Tehtävä 1 Mapu. Laskuharjoitus 3, Tehtävä Lineaarisessa approksimaatiossa funktion arvoa lähtöpisteen x 0 ympäristössä arvioidaan liikkumalla lähtöpisteeseen sovitetun tangentin kulmakertoimen mukaisesti: f(x 0

Lisätiedot

Funktioiden approksimointi ja interpolointi

Funktioiden approksimointi ja interpolointi Funktioiden approksimointi ja interpolointi Keijo Ruotsalainen Division of Mathematics interpolaatio-ongelma 8 Eksponenttifunktion exp(x) interpolointi 3.5 Funktion e^{0.25x} \sin(x) interpolointi 7 3

Lisätiedot

MS-A0205/MS-A0206 Differentiaali- ja integraalilaskenta 2 Luento 8: Newtonin iteraatio. Taso- ja avaruusintegraalit

MS-A0205/MS-A0206 Differentiaali- ja integraalilaskenta 2 Luento 8: Newtonin iteraatio. Taso- ja avaruusintegraalit MS-A25/MS-A26 ifferentiaali- ja integraalilaskenta 2 Luento 8: Newtonin iteraatio. Taso- ja avaruusintegraalit Jarmo Malinen Matematiikan ja systeemianalyysin laitos 1 Aalto-yliopisto Kevät 216 1 Perustuu

Lisätiedot

FUNKTION KUVAAJAN PIIRTÄMINEN

FUNKTION KUVAAJAN PIIRTÄMINEN FUNKTION KUVAAJAN PIIRTÄMINEN Saat kuvapohjan Plots/Insert Plot/XY plot Huomaa - ja y-akselin paikanvaraajat (ja näissä valmiina yksikön syöttöruutu). Siirrä - akselia ylös/alas. Palauta origo perinteiseen

Lisätiedot

läheisyydessä. Piirrä funktio f ja nämä approksimaatiot samaan kuvaan. Näyttääkö järkeenkäyvältä?

läheisyydessä. Piirrä funktio f ja nämä approksimaatiot samaan kuvaan. Näyttääkö järkeenkäyvältä? BM20A5840 - Usean muuttujan funktiot ja sarjat Harjoitus 1, Kevät 2017 1. Tunnemme vektorit a = [ 1 2 3 ] ja b = [ 2 1 2 ]. Laske (i) kummankin vektorin pituus (eli itseisarvo, eli normi); (ii) vektorien

Lisätiedot

Tilastollinen vastepintamallinnus: kokeiden suunnittelu, regressiomallin analyysi, ja vasteen optimointi. Esimerkit laskettu JMP:llä

Tilastollinen vastepintamallinnus: kokeiden suunnittelu, regressiomallin analyysi, ja vasteen optimointi. Esimerkit laskettu JMP:llä Tilastollinen vastepintamallinnus: kokeiden suunnittelu, regressiomallin analyysi, ja vasteen optimointi Esimerkit laskettu JMP:llä Antti Hyttinen Tampereen teknillinen yliopisto 29.12.2003 ii Ohjelmien

Lisätiedot

Juuri 5 Tehtävien ratkaisut Kustannusosakeyhtiö Otava päivitetty Julkaiseminen sallittu vain koulun suljetussa verkossa.

Juuri 5 Tehtävien ratkaisut Kustannusosakeyhtiö Otava päivitetty Julkaiseminen sallittu vain koulun suljetussa verkossa. 5 Paraabeli Juuri 5 Tehtävien ratkaisut Kustannusosakeyhtiö Otava päivitetty 13..017 ENNAKKOTEHTÄVÄT 1. a) Jos a > 0, paraabeli aukeaa oikealle. Jos a < 0, paraabeli aukeaa vasemmalle. Jos a = 0, paraabeli

Lisätiedot

Numeeriset menetelmät Pekka Vienonen

Numeeriset menetelmät Pekka Vienonen Numeeriset menetelmät Pekka Vienonen 1. Funktion nollakohta Newtonin menetelmällä 2. Määrätty integraali puolisuunnikassäännöllä 3. Määrätty integraali Simpsonin menetelmällä Newtonin menetelmä Newtonin

Lisätiedot

Lue tehtävänannot huolella. Tee pisteytysruudukko 1. konseptin yläreunaan. ILMAN LASKINTA -OSIO! LASKE KAIKKI SEURAAVAT TEHTÄVÄT:

Lue tehtävänannot huolella. Tee pisteytysruudukko 1. konseptin yläreunaan. ILMAN LASKINTA -OSIO! LASKE KAIKKI SEURAAVAT TEHTÄVÄT: MAA Koe 8.1.014 Arto Hekkanen ja Jussi Tyni Lue tehtävänannot huolella. Tee pisteytysruudukko 1. konseptin yläreunaan. ILMAN LASKINTA -OSIO! LASKE KAIKKI SEURAAVAT TEHTÄVÄT: 1. a) Laske polynomien x x

Lisätiedot

Selvitä, mitä koodi tekee sekä kommentoi ja täydennä koodi. Työn arvostelussa kiinnitän erityistä huomiota työn raportoinnin kattavuuteen.

Selvitä, mitä koodi tekee sekä kommentoi ja täydennä koodi. Työn arvostelussa kiinnitän erityistä huomiota työn raportoinnin kattavuuteen. Ohjelmointi ja Matlab : syksy 0 : 5.9.-9.0.0 Kotitehtävä : Seuraavassa on esitetty Matlab-koodi, joka laskee jotakin. %om_0_k.m A=[,,0;-,,;0,,4];b=[;;3];n=length(b); for k=:n-,for i=k+:n,if A(i,k)~=0,

Lisätiedot

MS-A0003/A0005 Matriisilaskenta Laskuharjoitus 2 / vko 45

MS-A0003/A0005 Matriisilaskenta Laskuharjoitus 2 / vko 45 MS-A0003/A0005 Matriisilaskenta Laskuharjoitus / vko 5 Tehtävä 1 (L): Hahmottele kompleksitasoon ne pisteet, jotka toteuttavat a) z 3 =, b) z + 3 i < 3, c) 1/z >. Yleisesti: ehto z = R, z C muodostaa kompleksitasoon

Lisätiedot

Week 36 31.8.2015-6.9.2015

Week 36 31.8.2015-6.9.2015 Week 36 31.8.2015-6.9.2015 Monday 31.8. Tuesday 1.9. Wednesday 2.9. Thursday 3.9. Friday 4.9. Saturday 5.9. Sunday 6.9. 10:15 - TS127 Seminar in Telecommunication and Radio Engineering, Seminaari 12:15

Lisätiedot

Week 46 9.11.2015-15.11.2015

Week 46 9.11.2015-15.11.2015 Week 46 9.11.2015-15.11.2015 Monday 9.11. Tuesday 10.11. Wednesday 11.11. Thursday 12.11. Friday 13.11. Saturday 14.11. Sunday 15.11. TF105 Finnish 1 Finnish 2 SÄ124 1 Seminar in Telecommunication and

Lisätiedot

Numeerinen analyysi Harjoitus 3 / Kevät 2017

Numeerinen analyysi Harjoitus 3 / Kevät 2017 Numeerinen analyysi Harjoitus 3 / Kevät 2017 Palautus viimeistään perjantaina 17.3. Tehtävä 1: Tarkastellaan funktion f(x) = x evaluoimista välillä x [2.0, 2.3]. Muodosta interpoloiva polynomi p 3 (x),

Lisätiedot

f[x i ] = f i, f[x i,..., x j ] = f[x i+1,..., x j ] f[x i,..., x j 1 ] x j x i T n+1 (x) = 2xT n (x) T n 1 (x), T 0 (x) = 1, T 1 (x) = x.

f[x i ] = f i, f[x i,..., x j ] = f[x i+1,..., x j ] f[x i,..., x j 1 ] x j x i T n+1 (x) = 2xT n (x) T n 1 (x), T 0 (x) = 1, T 1 (x) = x. Kaavakokoelma f[x i ] = f i, f[x i,..., x j ] = f[x i+,..., x j ] f[x i,..., x j ] x j x i T n+ (x) = 2xT n (x) T n (x), T (x) =, T (x) = x. n I,n = h f(t i + h 2 ), E,n = h2 (b a) f (2) (ξ). 24 i= I,n

Lisätiedot

Numeeriset menetelmät

Numeeriset menetelmät Numeeriset menetelmät Luento 7 Ti 27.9.2011 Timo Männikkö Numeeriset menetelmät Syksy 2011 Luento 7 Ti 27.9.2011 p. 1/39 p. 1/39 Interpolointi Ei tunneta funktion f : R R lauseketta, mutta tiedetään funktion

Lisätiedot

Harjoitus 4 -- Ratkaisut

Harjoitus 4 -- Ratkaisut Harjoitus -- Ratkaisut 1 Ei kommenttia. Tutkittava funktio: In[15]:= f x : x 1 x Sin x ; Plot f x, x, 0, 3 Π, PlotRange All Out[159]= Luodaan tasavälinen pisteistö välille 0 x 3 Π. Tehdään se ensin kiinnitetyllä

Lisätiedot

x j x k Tällöin L j (x k ) = 0, kun k j, ja L j (x j ) = 1. Alkuperäiselle interpolaatio-ongelmalle saadaan nyt ratkaisu

x j x k Tällöin L j (x k ) = 0, kun k j, ja L j (x j ) = 1. Alkuperäiselle interpolaatio-ongelmalle saadaan nyt ratkaisu 2 Interpolointi Olkoon annettuna n+1 eri pistettä x 0, x 1, x n R ja n+1 lukua y 0, y 1,, y n Interpoloinnissa etsitään funktiota P, joka annetuissa pisteissä x 0,, x n saa annetut arvot y 0,, y n, (21)

Lisätiedot

Matematiikan tukikurssi

Matematiikan tukikurssi Matematiikan tukikurssi Kurssikerta 9 1 Implisiittinen derivointi Tarkastellaan nyt yhtälöä F(x, y) = c, jossa x ja y ovat muuttujia ja c on vakio Esimerkki tällaisesta yhtälöstä on x 2 y 5 + 5xy = 14

Lisätiedot

1.3 Lohkorakenne muodostetaan käyttämällä a) puolipistettä b) aaltosulkeita c) BEGIN ja END lausekkeita d) sisennystä

1.3 Lohkorakenne muodostetaan käyttämällä a) puolipistettä b) aaltosulkeita c) BEGIN ja END lausekkeita d) sisennystä OULUN YLIOPISTO Tietojenkäsittelytieteiden laitos Johdatus ohjelmointiin 811122P (5 op.) 12.12.2005 Ohjelmointikieli on Java. Tentissä saa olla materiaali mukana. Tenttitulokset julkaistaan aikaisintaan

Lisätiedot

Operatioanalyysi 2011, Harjoitus 3, viikko 39

Operatioanalyysi 2011, Harjoitus 3, viikko 39 Operatioanalyysi 2011, Harjoitus 3, viikko 39 H3t1, Exercise 3.1. H3t2, Exercise 3.2. H3t3, Exercise 3.3. H3t4, Exercise 3.4. H3t5 (Exercise 3.1.) 1 3.1. Find the (a) standard form, (b) slack form of the

Lisätiedot

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

plot(f(x), x=-5..5, y=-10..10) [] Jokaisen suoritettavan rivin loppuun ; [] Desimaalierotin Maplessa on piste. [] Kommentteja koodin sekaan voi laittaa # -merkin avulla. Esim. #kommentti tähän [] Edelliseen tulokseen voi viitata merkillä

Lisätiedot

1.3Lohkorakenne muodostetaan käyttämällä a) puolipistettä b) aaltosulkeita c) BEGIN ja END lausekkeita d) sisennystä

1.3Lohkorakenne muodostetaan käyttämällä a) puolipistettä b) aaltosulkeita c) BEGIN ja END lausekkeita d) sisennystä OULUN YLIOPISTO Tietojenkäsittelytieteiden laitos Johdatus ohjelmointiin 81122P (4 ov.) 30.5.2005 Ohjelmointikieli on Java. Tentissä saa olla materiaali mukana. Tenttitulokset julkaistaan aikaisintaan

Lisätiedot

k=0 saanto jokaisen kolmannen asteen polynomin. Tukipisteet on talloin valittu

k=0 saanto jokaisen kolmannen asteen polynomin. Tukipisteet on talloin valittu LIS AYKSI A kirjaan Reaalimuuttujan analyysi 1.6. Numeerinen integrointi: Gaussin kaavat Edella kasitellyt numeerisen integroinnin kaavat eli kvadratuurikaavat Riemannin summa, puolisuunnikassaanto ja

Lisätiedot

Yhtälön ratkaiseminen

Yhtälön ratkaiseminen Yhtälön ratkaiseminen Suora iterointi Kirjoitetaan yhtälö muotoon x = f(x). Ensin päätellään jollakin tavoin jokin alkuarvo x 0 ja sijoitetaan yhtälön oikealle puolelle, jolloin saadaan tarkennettu ratkaisu

Lisätiedot

MS-A0003/A0005 Matriisilaskenta Laskuharjoitus 2 / vko 45

MS-A0003/A0005 Matriisilaskenta Laskuharjoitus 2 / vko 45 MS-A3/A5 Matriisilaskenta Laskuharjoitus 2 / vko 45 Tehtävä (L): Hahmottele kompleksitasoon ne pisteet, jotka toteuttavat a) z 2i = 2, b) z 2i < 2, c) /z

Lisätiedot

Säätötekniikan matematiikan verkkokurssi, Matlab tehtäviä ja vastauksia 29.7.2002

Säätötekniikan matematiikan verkkokurssi, Matlab tehtäviä ja vastauksia 29.7.2002 Matlab tehtäviä 1. Muodosta seuraavasta differentiaaliyhtälöstä siirtofuntio. Tämä differentiaaliyhtälö saattaisi kuvata esimerkiksi yksinkertaista vaimennettua jousi-massa systeemiä, johon on liitetty

Lisätiedot

Matematiikan peruskurssi 2

Matematiikan peruskurssi 2 Matematiikan peruskurssi Tentti, 9..06 Tentin kesto: h. Sallitut apuvälineet: kaavakokoelma ja laskin, joka ei kykene graaseen/symboliseen laskentaan Vastaa seuraavista viidestä tehtävästä neljään. Saat

Lisätiedot

12. Differentiaaliyhtälöt

12. Differentiaaliyhtälöt 1. Differentiaaliyhtälöt 1.1 Johdanto Differentiaaliyhtälöitä voidaan käyttää monilla alueilla esimerkiksi tarkasteltaessa jonkin kohteen lämpötilan vaihtelua, eksponentiaalista kasvua, sähkölatauksen

Lisätiedot

Likimääräisratkaisut ja regularisaatio

Likimääräisratkaisut ja regularisaatio Luku 3 Likimääräisratkaisut ja regularisaatio Käytännön inversio-ongelmissa annettu data y ei aina ole tarkkaa, vaan sisältää häiriöitä. Tuntemattomasta x on annettu häiriöinen data y F (x + }{{}}{{} ε.

Lisätiedot

Differentiaali- ja integraalilaskenta 2 Laskuharjoitus 4 / vko 40

Differentiaali- ja integraalilaskenta 2 Laskuharjoitus 4 / vko 40 Differentiaali- ja integraalilaskenta 2 Laskuharjoitus 4 / vko 40 Alkuviikolla harjoitustehtäviä lasketaan harjoitustilaisuudessa. Loppuviikolla näiden harjoitustehtävien tulee olla ratkaistuina harjoituksiin

Lisätiedot

Funktio 1. a) Mikä on funktion f (x) = x lähtöjoukko eli määrittelyjoukko, kun 0 x 5?

Funktio 1. a) Mikä on funktion f (x) = x lähtöjoukko eli määrittelyjoukko, kun 0 x 5? Funktio. a) Mikä on funktion f (x) = x + lähtöjoukko eli määrittelyjoukko, kun 0 x 5? b) Mikä on funktion f (x) = x + maalijoukko eli arvojoukko? c) Selitä, mikä on funktion nollakohta. Anna esimerkki.

Lisätiedot

Numeeriset menetelmät

Numeeriset menetelmät Numeeriset menetelmät Luento 6 To 22.9.2011 Timo Männikkö Numeeriset menetelmät Syksy 2011 Luento 6 To 22.9.2011 p. 1/38 p. 1/38 Ominaisarvotehtävät Monet sovellukset johtavat ominaisarvotehtäviin Yksi

Lisätiedot

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

Numeeriset menetelmät TIEA381. Luento 12. Kirsi Valjus. Jyväskylän yliopisto. Luento 12 () Numeeriset menetelmät / 33 Numeeriset menetelmät TIEA381 Luento 12 Kirsi Valjus Jyväskylän yliopisto Luento 12 () Numeeriset menetelmät 25.4.2013 1 / 33 Luennon 2 sisältö Tavallisten differentiaaliyhtälöiden numeriikasta Rungen

Lisätiedot

Diplomi-insinööri- ja arkkitehtikoulutuksen yhteisvalinta 2017 Insinöörivalinnan matematiikan koe , Ratkaisut (Sarja A)

Diplomi-insinööri- ja arkkitehtikoulutuksen yhteisvalinta 2017 Insinöörivalinnan matematiikan koe , Ratkaisut (Sarja A) Diplomi-insinööri- ja arkkitehtikoulutuksen yhteisvalinta 017 Insinöörivalinnan matematiikan koe 30..017, Ratkaisut (Sarja A) 1. a) Lukujen 9, 0, 3 ja x keskiarvo on. Määritä x. (1 p.) b) Mitkä reaaliluvut

Lisätiedot

PRELIMINÄÄRIKOE PITKÄ MATEMATIIKKA 9.2.2011

PRELIMINÄÄRIKOE PITKÄ MATEMATIIKKA 9.2.2011 PRELIMINÄÄRIKOE PITKÄ MATEMATIIKKA 9..0 Kokeessa saa vastata enintään kymmeneen tehtävään.. Sievennä a) 9 x x 6x + 9, b) 5 9 009 a a, c) log 7 + lne 7. Muovailuvahasta tehty säännöllinen tetraedri muovataan

Lisätiedot

MS-A0207 Differentiaali- ja integraalilaskenta 2 (Chem) Tentti ja välikokeiden uusinta

MS-A0207 Differentiaali- ja integraalilaskenta 2 (Chem) Tentti ja välikokeiden uusinta MS-A0207 Differentiaali- ja integraalilaskenta 2 (Chem) Tentti ja välikokeiden uusinta 8..206 Gripenberg, Nieminen, Ojanen, Tiilikainen, Weckman Kirjoita jokaiseen koepaperiin nimesi, opiskelijanumerosi

Lisätiedot

Differentiaali- ja integraalilaskenta 1 Ratkaisut 5. viikolle /

Differentiaali- ja integraalilaskenta 1 Ratkaisut 5. viikolle / MS-A8 Differentiaali- ja integraalilaskenta, V/7 Differentiaali- ja integraalilaskenta Ratkaisut 5. viikolle / 9..5. Integroimismenetelmät Tehtävä : Laske osittaisintegroinnin avulla a) π x sin(x) dx,

Lisätiedot

Matematiikan tukikurssi

Matematiikan tukikurssi Matematiikan tukikurssi Kurssikerta 8 1 Suunnattu derivaatta Aluksi tarkastelemme vektoreita, koska ymmärrys vektoreista helpottaa alla olevien asioiden omaksumista. Kun liikutaan tasossa eli avaruudessa

Lisätiedot

Reaalilukuvälit, leikkaus ja unioni (1/2)

Reaalilukuvälit, leikkaus ja unioni (1/2) Luvut Luonnolliset luvut N = {0, 1, 2, 3,... } Kokonaisluvut Z = {..., 2, 1, 0, 1, 2,... } Rationaaliluvut (jaksolliset desimaaliluvut) Q = {m/n m, n Z, n 0} Irrationaaliluvut eli jaksottomat desimaaliluvut

Lisätiedot

. 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

. 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 TEKNILLINEN KORKEAKOULU Systeemianalyysin laboratorio Mat-.39 Optimointioppi Kimmo Berg 8. harjoitus - ratkaisut. a)huomataan ensinnäkin että kummankin jonon raja-arvo r on nolla. Oletetaan lisäksi että

Lisätiedot

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

Harjoitus 4: Differentiaaliyhtälöt (Matlab) MS-C2107 Sovelletun matematiikan tietokonetyöt 1 Harjoitus 4: Differentiaaliyhtälöt (Matlab) MS-C2107 Sovelletun matematiikan tietokonetyöt MS-C2107 Sovelletun matematiikan tietokonetyöt 1 Harjoituksen aiheita Matlab:n solver komento differentiaaliyhtöiden

Lisätiedot

Luento 11: Rajoitusehdot. Ulkopistemenetelmät

Luento 11: Rajoitusehdot. Ulkopistemenetelmät Luento 11: Rajoitusehdot. Ulkopistemenetelmät ja sisäpistemenetelmät Lagrangen välttämättömien ehtojen ratkaiseminen Newtonin menetelmällä Jos tehtävässä on vain yhtälörajoituksia, voidaan minimipistekandidaatteja

Lisätiedot

4 Yleinen potenssifunktio ja polynomifunktio

4 Yleinen potenssifunktio ja polynomifunktio 4 Yleinen potenssifunktio ja polynomifunktio ENNAKKOTEHTÄVÄT 1. a) Tutkitaan yhtälöiden ratkaisuja piirtämällä funktioiden f(x) = x, f(x) = x 3, f(x) = x 4 ja f(x) = x 5 kuvaajat. Näin nähdään, monessako

Lisätiedot

a) Mikä on integraalifunktio ja miten derivaatta liittyy siihen? Anna esimerkki. 8 3 + 4 2 0 = 16 3 = 3 1 3.

a) Mikä on integraalifunktio ja miten derivaatta liittyy siihen? Anna esimerkki. 8 3 + 4 2 0 = 16 3 = 3 1 3. Integraalilaskenta. a) Mikä on integraalifunktio ja miten derivaatta liittyy siihen? Anna esimerkki. b) Mitä määrätty integraali tietyllä välillä x tarkoittaa? Vihje: * Integraali * Määrätyn integraalin

Lisätiedot

Tekijä Pitkä matematiikka Pisteen (x, y) etäisyys pisteestä (0, 2) on ( x 0) Pisteen (x, y) etäisyys x-akselista, eli suorasta y = 0 on y.

Tekijä Pitkä matematiikka Pisteen (x, y) etäisyys pisteestä (0, 2) on ( x 0) Pisteen (x, y) etäisyys x-akselista, eli suorasta y = 0 on y. Tekijä Pitkä matematiikka 5 7..017 37 Pisteen (x, y) etäisyys pisteestä (0, ) on ( x 0) + ( y ). Pisteen (x, y) etäisyys x-akselista, eli suorasta y = 0 on y. Merkitään etäisyydet yhtä suuriksi ja ratkaistaan

Lisätiedot

Käy vastaamassa kyselyyn kurssin pedanet-sivulla (TÄRKEÄ ensi vuotta ajatellen) Kurssin suorittaminen ja arviointi: vähintään 50 tehtävää tehtynä

Käy vastaamassa kyselyyn kurssin pedanet-sivulla (TÄRKEÄ ensi vuotta ajatellen) Kurssin suorittaminen ja arviointi: vähintään 50 tehtävää tehtynä Käy vastaamassa kyselyyn kurssin pedanet-sivulla (TÄRKEÄ ensi vuotta ajatellen) Kurssin suorittaminen ja arviointi: vähintään 50 tehtävää tehtynä (vihkon palautus kokeeseen tullessa) Koe Mahdolliset testit

Lisätiedot

Tieteellinen laskenta 2 Törmäykset

Tieteellinen laskenta 2 Törmäykset Tieteellinen laskenta 2 Törmäykset Aki Kutvonen Op.nmr 013185860 Sisällysluettelo Ohjelman tekninen dokumentti...3 Yleiskuvaus...3 Kääntöohje...3 Ohjelman yleinen rakenne...4 Esimerkkiajo ja käyttöohje...5

Lisätiedot

Ensimmäisen kertaluvun yhtälön numeerinen ratkaiseminen

Ensimmäisen kertaluvun yhtälön numeerinen ratkaiseminen nummen.nb 1 Ensimmäisen kertaluvun yhtälön numeerinen ratkaiseminen Eulerin menetelmä alkaurvoprobleeman y' = f Hx, yl, yhx 0 L = y 0 ratkaisemiseksi voidaan ohjelmoida Mathematicalle euler-nimiseksi funktioksi

Lisätiedot

Matematiikan tukikurssi

Matematiikan tukikurssi Matematiikan tukikurssi Kurssikerta 8 1 Funktion kuperuussuunnat Derivoituva funktio f (x) on pisteessä x aidosti konveksi, jos sen toinen derivaatta on positiivinen f (x) > 0. Vastaavasti f (x) on aidosti

Lisätiedot

Aki Taanila LINEAARINEN OPTIMOINTI

Aki Taanila LINEAARINEN OPTIMOINTI Aki Taanila LINEAARINEN OPTIMOINTI 26.4.2011 JOHDANTO Tässä monisteessa esitetään lineaarisen optimoinnin alkeet. Moniste sisältää tarvittavat Excel ohjeet. Viimeisin versio tästä monisteesta ja siihen

Lisätiedot

3 TOISEN ASTEEN POLYNOMIFUNKTIO

3 TOISEN ASTEEN POLYNOMIFUNKTIO 3 TOISEN ASTEEN POLYNOMIFUNKTIO POHDITTAVAA 1. Kuvasta voidaan arvioida, että frisbeegolfkiekko käy noin 9 metrin korkeudella ja se lentää noin 40 metrin päähän. Vastaus: Frisbeegolfkiekko käy n. 9 m:n

Lisätiedot

f(x, y) = x 2 y 2 f(0, t) = t 2 < 0 < t 2 = f(t, 0) kaikilla t 0.

f(x, y) = x 2 y 2 f(0, t) = t 2 < 0 < t 2 = f(t, 0) kaikilla t 0. Ääriarvon laatu Jatkuvasti derivoituvan funktion f lokaali ääriarvokohta (x 0, y 0 ) on aina kriittinen piste (ts. f x (x, y) = f y (x, y) = 0, kun x = x 0 ja y = y 0 ), mutta kriittinen piste ei ole aina

Lisätiedot

Matlab- ja Maple- ohjelmointi

Matlab- ja Maple- ohjelmointi Perusasioita 2. helmikuuta 2005 Matlab- ja Maple- ohjelmointi Yleistä losoaa ja erityisesti Numsym05-kurssin tarpeita palvellee parhaiten, jos esitän asian rinnakkain Maple:n ja Matlab:n kannalta. Ohjelmien

Lisätiedot

Tekijä Pitkä matematiikka

Tekijä Pitkä matematiikka K1 Tekijä Pitkä matematiikka 5 7..017 a) 1 1 + 1 = 4 + 1 = 3 = 3 4 4 4 4 4 4 b) 1 1 1 = 4 6 3 = 5 = 5 3 4 1 1 1 1 1 K a) Koska 3 = 9 < 10, niin 3 10 < 0. 3 10 = (3 10 ) = 10 3 b) Koska π 3,14, niin π

Lisätiedot

3 Yleinen toisen asteen yhtälö ja epäyhtälö

3 Yleinen toisen asteen yhtälö ja epäyhtälö Juuri Tehtävien ratkaisut Kustannusosakeyhtiö Otava päivitetty 5.8.016 3 Yleinen toisen asteen yhtälö ja epäyhtälö ENNAKKOTEHTÄVÄT 1. a) x + x + 1 = 4 (x + 1) = 4 Luvun x + 1 tulee olla tai, jotta sen

Lisätiedot

Matematiikan tukikurssi

Matematiikan tukikurssi Matematiikan tukikurssi Kurssikerta 10 1 Funktion monotonisuus Derivoituva funktio f on aidosti kasvava, jos sen derivaatta on positiivinen eli jos f (x) > 0. Funktio on aidosti vähenevä jos sen derivaatta

Lisätiedot

2 Osittaisderivaattojen sovelluksia

2 Osittaisderivaattojen sovelluksia 2 Osittaisderivaattojen sovelluksia 2.1 Ääriarvot Yhden muuttujan funktiolla f(x) on lokaali maksimiarvo (lokaali minimiarvo) pisteessä a, jos f(x) f(a) (f(x) f(a)) kaikilla x:n arvoilla riittävän lähellä

Lisätiedot

Aluksi. 1.1. Kahden muuttujan lineaarinen yhtälö

Aluksi. 1.1. Kahden muuttujan lineaarinen yhtälö Aluksi Matematiikan käsite suora on tarkalleen sama asia kuin arkikielen suoran käsite. Vai oliko se toisinpäin? Matematiikan luonteesta johtuu, että sen soveltaja ei tyydy pelkkään suoran nimeen eikä

Lisätiedot

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

Tehtäväsarja I Kertaa tarvittaessa materiaalin lukuja 1 3 ja 9. Tarvitset myös luvusta 4 määritelmän 4.1. HY / Avoin yliopisto Lineaarialgebra ja matriisilaskenta I, kesä 2015 Harjoitus 2 Ratkaisut palautettava viimeistään maanantaina 25.5.2015 klo 16.15. Tehtäväsarja I Kertaa tarvittaessa materiaalin lukuja

Lisätiedot

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin perusteet Y Python Ohjelmoinnin perusteet Y Python T-106.1208 26.1.2011 T-106.1208 Ohjelmoinnin perusteet Y 26.1.2011 1 / 34 Luentopalaute kännykällä käynnissä! Ilmoittaudu mukaan lähettämällä ilmainen tekstiviesti Vast

Lisätiedot

Kun yhtälöä ei voi ratkaista tarkasti (esim yhtälölle x-sinx = 1 ei ole tarkkaa ratkaisua), voidaan sille etsiä likiarvo.

Kun yhtälöä ei voi ratkaista tarkasti (esim yhtälölle x-sinx = 1 ei ole tarkkaa ratkaisua), voidaan sille etsiä likiarvo. Kun yhtälöä ei voi ratkaista tarkasti (esim yhtälölle x-sinx = 1 ei ole tarkkaa ratkaisua), voidaan sille etsiä likiarvo. Iterointi on menetelmä, missä jollakin likiarvolla voidaan määrittää jokin toinen,

Lisätiedot

MAA2.3 Koontitehtävät 2/2, ratkaisut

MAA2.3 Koontitehtävät 2/2, ratkaisut MAA.3 Koontitehtävät /, ratkaisut. (a) 3x 5x 4 = 0 x = ( 5) ± ( 5) 4 3 ( 4) 6 (b) (x 4) = (x 4)(x + 4) (x 4)(x 4) = (x 4)(x + 4) x 8x + 6 = x 6 x 6 8x = 3 : 8 x = 4 = 5 ± 73 6 (c) 4 x + x + = 0 4 x + 4x

Lisätiedot

Matematiikka B1 - avoin yliopisto

Matematiikka B1 - avoin yliopisto 28. elokuuta 2012 Opetusjärjestelyt Luennot 9:15-11:30 Harjoitukset 12:30-15:00 Tentti Nettitehtävät Kurssin sisältö 1/2 Osittaisderivointi Usean muuttujan funktiot Raja-arvot Osittaisderivaatta Pinnan

Lisätiedot

Operatioanalyysi 2011, Harjoitus 2, viikko 38

Operatioanalyysi 2011, Harjoitus 2, viikko 38 Operatioanalyysi 2011, Harjoitus 2, viikko 38 H2t1, Exercise 1.1. H2t2, Exercise 1.2. H2t3, Exercise 2.3. H2t4, Exercise 2.4. H2t5, Exercise 2.5. (Exercise 1.1.) 1 1.1. Model the following problem mathematically:

Lisätiedot

7 Osa 7: Pidempiä esimerkkejä R:n käytöstä

7 Osa 7: Pidempiä esimerkkejä R:n käytöstä 7 Osa 7: Pidempiä esimerkkejä R:n käytöstä R:n pääasiallinen käyttö monelle on tilastollisten menetelmien suorittaminen. Käydään nyt läpi joitain esimerkkitilanteita, alkaen aineiston luvusta ja päättyen

Lisätiedot

I. AES Rijndael. Rijndael - Internal Structure

I. AES Rijndael. Rijndael - Internal Structure I. AES Rndael NOKIA T-79.53 Additional material Oct 3/KN Rndael - Internal Structure Rndael is an iterated block cipher with variable length block and variable key size. The number of rounds is defined

Lisätiedot

Efficiency change over time

Efficiency change over time Efficiency change over time Heikki Tikanmäki Optimointiopin seminaari 14.11.2007 Contents Introduction (11.1) Window analysis (11.2) Example, application, analysis Malmquist index (11.3) Dealing with panel

Lisätiedot

Regressioanalyysi. Vilkkumaa / Kuusinen 1

Regressioanalyysi. Vilkkumaa / Kuusinen 1 Regressioanalyysi Vilkkumaa / Kuusinen 1 Regressioanalyysin idea ja tavoitteet Regressioanalyysin idea: Halutaan selittää selitettävän muuttujan havaittujen arvojen vaihtelua selittävien muuttujien havaittujen

Lisätiedot

Epälineaaristen yhtälöiden ratkaisumenetelmät

Epälineaaristen yhtälöiden ratkaisumenetelmät Epälineaaristen yhtälöiden ratkaisumenetelmät Keijo Ruotsalainen Division of Mathematics Perusoletus Lause 3.1 Olkoon f : [a, b] R jatkuva funktio siten, että f(a)f(b) < 0. Tällöin funktiolla on ainakin

Lisätiedot

Ohjelmoinnin peruskurssi Y1

Ohjelmoinnin peruskurssi Y1 Ohjelmoinnin peruskurssi Y1 CSE-A1111 16.9.2015 CSE-A1111 Ohjelmoinnin peruskurssi Y1 16.9.2015 1 / 26 Mahdollisuus antaa luentopalautetta Goblinissa vasemmassa reunassa olevassa valikossa on valinta Luentopalaute.

Lisätiedot

Matematiikkaa kauppatieteilijöille

Matematiikkaa kauppatieteilijöille Matematiikkaa kauppatieteilijöille Harjoitus 7, syksy 2016 1. Funktio f(x) = x 2x 2 + 4 on jatkuva ja derivoituva kaikilla x R. Nyt funktio f(x) on aidosti alaspäin kupera kun f (x) > 0 ja aidosti ylöspäin

Lisätiedot

Matriisilaskenta Laskuharjoitus 1 - Ratkaisut / vko 37

Matriisilaskenta Laskuharjoitus 1 - Ratkaisut / vko 37 Matriisilaskenta Laskuharjoitus 1 - Ratkaisut / vko 37 Tehtävä 1: Käynnistä Matlab-ohjelma ja kokeile laskea sillä muutama peruslaskutoimitus: laske jokin yhteen-, vähennys-, kerto- ja jakolasku. Laske

Lisätiedot

Matriiseista. Emmi Koljonen

Matriiseista. Emmi Koljonen Matriiseista Emmi Koljonen 3. lokakuuta 22 Usein meillä on monta systeemiä kuvaavaa muuttujaa ja voimme kirjoittaa niiden välille riippuvaisuuksia, esim. piirin silmukoihin voidaan soveltaa silmukkavirtayhtälöitä.

Lisätiedot

Information on preparing Presentation

Information on preparing Presentation Information on preparing Presentation Seminar on big data management Lecturer: Spring 2017 20.1.2017 1 Agenda Hints and tips on giving a good presentation Watch two videos and discussion 22.1.2017 2 Goals

Lisätiedot

Matematiikan tukikurssi, kurssikerta 3

Matematiikan tukikurssi, kurssikerta 3 Matematiikan tukikurssi, kurssikerta 3 1 Epäyhtälöitä Aivan aluksi lienee syytä esittää luvun itseisarvon määritelmä: { x kun x 0 x = x kun x < 0 Siispä esimerkiksi 10 = 10 ja 10 = 10. Seuraavaksi listaus

Lisätiedot

T211003 Sovellusohjelmat Matlab osa 4: Skriptit, funktiot ja kontrollirakenteet

T211003 Sovellusohjelmat Matlab osa 4: Skriptit, funktiot ja kontrollirakenteet Ohjelmointi Matlab-komentoja voidaan koota ns. M-tiedostoon. Nimi tulee tiedoston tarkentimesta.m. Matlabilla voidaan ohjelmoida kahdella eri tavalla: Skriptit eli komentojonot eli makrot Funktiot eli

Lisätiedot

Ohjelmoinnin peruskurssi Y1

Ohjelmoinnin peruskurssi Y1 Ohjelmoinnin peruskurssi Y1 CSE-A1111 21.9.2015 CSE-A1111 Ohjelmoinnin peruskurssi Y1 21.9.2015 1 / 25 Mahdollisuus antaa luentopalautetta Goblinissa vasemmassa reunassa olevassa valikossa on valinta Luentopalaute.

Lisätiedot

Malliratkaisut Demot

Malliratkaisut Demot Malliratkaisut Demot 1 23.1.2017 1. Päätösmuuttujiksi voidaan valita x 1 : tehtyjen peruspöytin lukumäärä x 2 : tehtyjen luxuspöytien lukumäärä. Optimointitehtäväksi tulee max 200x 1 + 350x 2 s. t. 5x

Lisätiedot