Laboration M3: Funktioner och grafer
- Inlämningsdatum 23 feb 2023 av 18:00
- Poäng 1
- Lämnar in en filuppladdning
Laboration 3 (av 3 Matlab-laborationer)
Innehåll:
- Funktioner och grafer
Lämna in ditt LiveScript (sparat som pdf) + besvarade instuderingsfrågor i Canvas. Till labben hör också
- instuderingsfrågor: Instuderingsfrågor M3
Om du blir klar med dessa i tid (före övningen) får du bonuspoäng.
Inledning
- Referenser: Carina Edlunds häfte Matlab i korthet
- Dokumentera allt du gör nedan i ett LiveScript
1. Funktioner (Matlab i korthet kap 3.3)
Skriv en funktion f med två parametrar och ett returvärde som beräknar
f(x,y)=|π−√a⋅cos(30⋅a)|
där
a=1−x2−(y−|x|)2
Testa funktionen för några olika värden på x och y.
2. Grafer (Matlab i korthet kap 4)
Nedan ser du en graf över y=x och y=x2 . För små x är värdena på linjen y=x störst, men för x-värden över 1 så växer kurvan y=x2 snabbare.
Välj två av funktionerna nedan:
-
f1(x)=log(x)−1x
f2(x)=x2⋅eπ⋅x
f3(x)=3.5⋅x2−x+93457
f4(x)=5.7⋅104√x
- Definiera de två funktionerna som Matlab-funktioner. Behöver du använda elementvisa operationer?
- Plotta funktionerna i samma graf.
- Prova olika x-intervall. Vilken av dina två funktioner växer snabbast för större x-värden?
3. Summera serie (Matlab i korthet kap 3)
- Skriv en funktion som beräknar summan av den alternerande harmoniska serien
∑nk=11k⋅(−1)k+1
- Gör nu ett Matlab-program som beräknar och skriver ut summan för n = 1,2,3,...10 i en tabell
- Denna serie konvergerar mot log(2). Hur nära log(2) är summan då n=10?
- Om du ska använda summan för att beräkna log(2), hur många termer måste du summera för att få log(2) med tre korrekta decimaler?
4. 3d-plot (Matlab i korthet kap 4)
Här ska du arbeta med två 3d-plottar. Den första plotten skapar du med indata från en datafil, och till den andra ska du använda samma funktion som du skrev i första uppgiften i denna labb.
- Ladda in datafilen knagglig.mat
Download knagglig.mat
- Gör en 3d-plot med mesh(X,Y,Z)
- Vilket är det största värdet på Z?
- Vilket är det minsta värdet på Z?
- Nu ska du göra en 3d-plot av funktionen f som du skrev i början av labben:
f(x,y)=|π−√a⋅cos(30⋅a)|
- Skapa två vektorer x och y med punkter i intervallet -1..1
- Skapa matriserna X och Y med meshgrid
- Beräkna funktionsvärden Z som f(X, Y).
- Plotta med mesh. Om grafen inte blir tydlig kan du behöva justera steget i intervallet.
- Använd colormap för att ändra färg på bilden tills du är nöjd.
Efter labben
Gå igenom hela labben ovan och se till att du har gjort alla deluppgifter.
Hur har du dokumenterat dina resultat? Gå igenom, snygga till och lägg till text/kommentarer där det behövs. Spara ditt LiveScript som pdf och lämna in pdf-filen.