Differentiaali- ja integraalilaskenta 3

Differentiaali- ja integraalilaskenta 3
Mallit alkuviikolle 1 / HT
Tehtävä 1
Aloitetaan kokeilemalla lukujen syöttämistä.
>> a = 2
a =
2
>> b = 3
b =
3
>> c = a*b
c =
6
Vektoreita voidaan syöttää antamalla vektorin alkiot hakasulkujen sisällä. Toinen vaihtoehto on antaa vektorin ensimmäinen arvo, askelpituus sekä viimeinen
arvo kaksoispisteellä eroteltuina.
>> v=[1,2,3,4,5,6]
v =
1
2
3
4
5
6
>> u=1:0.2:2
u =
1.0000
1.2000
1.4000
1.6000
1.8000
2.0000
3.2000
4.4000
5.6000
6.8000
8.0000
>> v+u
ans =
2.0000
Matriiseja syötettäessä on rivit eroteltava puolipisteellä. Matriisikertolasku voidaan suorittaa käyttämällä *-merkkkiä. Mikäli kertolasku halutaan suorittaa
1
alkioittain on kertomerkin eteen laitettava piste. Sama pätee myös muihin laskutoimituksiin.
>> A=[1,2;3,4]
A =
1
3
2
4
>> B=[5,6;7,8]
B =
5
7
6
8
>> A+B
ans =
6
10
8
12
>> A*B
ans =
19
43
22
50
>> A.*B
ans =
5
21
12
32
Matlabin tuloste voidaan piilottaa laittamalla puolipiste rivin perään. Tällöin
komento suoritetaan, mutta sen tulosta ei automaattisesti näytetä.
>> d=cos(pi);
>> d
d =
-1
Tehtävä 2
a) Ensin tarvitaan arvot x-akselille. Tätä varten luodaan vektori x, jossa on
arvoja väliltä [0, 2π]. Tämän jälkeen tarvitaan toinen vektori, joka sisältää
itse funktion arvot. Nämä tulee laskea vektorin x arvoista alkioittain, joten
potenssia laskettaessa tulee käyttää pistettä. Kun vektorit on luotu, on itse
plot-komennon käyttäminen helppoa.
2
>> x = 0:0.1:2*pi;
>> y = x.^2 - 3*sin(2*x) + 1;
>> plot(x, y);
40
35
30
25
20
15
10
5
0
−5
0
1
2
3
4
5
6
7
Kuva 1: Funktion f (x) = x2 − 3 sin(2x) + 1 kuvaaja välillä [0, 2π].
b) Sopiva hilapisteistö voidaan luoda käyttämällä meshgrid-komentoa. Itse
funktion arvot tulee taas muistaa laskea pisteittäin.
>> [X, Y] = meshgrid(-pi:0.1:pi);
>> Z = X.^2 + Y.^2 - sin(X.*Y) + 1;
>> surf(X, Y, Z);
3
25
20
15
10
5
0
4
2
4
2
0
0
−2
−2
−4
−4
Kuva 2: Funktion g(x, y) = x2 + y 2 − sin(xy) + 1 kuvaaja kun x, y ∈ [−π, π].
Kotitehtävä 3
a) Integral-komento vaatii ensimmäiseksi parametrikseen integroitavan funktion. Matlabissa funktio määritellään @-merkkiä käyttäen. Kaksi jälkimmäistä parametria kertovat integroimisvälin.
>> f = @(x) x.^2 - 3*sin(2*x) + 1;
>> integral(f, 2, 4)
ans =
21.4289
Pinta-alaksi saadaan siis noin 21,43.
b) Nyt integroitavana on kahden muuttujan funktio, joten integroimisväliä
merkitsemään tarvitaan neljä parametria.
>> g = @(x, y) x.^2 + y.^2 - sin(x.*y) + 1;
>> integral2(g, -pi, pi, -pi, pi)
ans =
299.2360
Tilavuudeksi saadaan siis noin 299,24.
4