Datordugga TNA005/UPG1

TNA005: Tillämpad matematik i teknik och naturvetenskap
VT 2016
Datordugga TNA005/UPG1
Institutionen för teknik och naturvetenskap
Linköpings universitet
Information
Detta är en individuell datordugga som examinerar kursmomentet UPG1 (1 hp) i kursen TNA005.
Individuell dugga innebär att du måste lösa, programmera, och redovisa uppgifterna själv. Fram
till deadline (se nedan) är det inte tillåtet att diskutera uppgifter med någon annan eller att titta
på någon annans lösning.
Examinationen omfattar kapitel 1–7 i MATLAB-beräkningar inom teknik och naturvetenskap av
Per Jönsson samt innehåll från föreläsningar 1, 2, och 4. Kursboken och all kursmateriel på
kurshemsidan är tillåtna hjälpmedel. Du kan maximalt få 30 poäng på duggan och för godkänd
krävs det 20 poäng.
MATLAB-publish
Uppgifterna i duggan skall redovisas med hjälp av MATLAB-publish. Använd mallen som finns på
kurshemsidan: http://webstaff.itn.liu.se/~bersa48/tna005/upg1/duggaUPG1.m. Mer information om publish och textformatering (publishing markup) finns på MATLABs referenssidor,
som exempelvis nås genom > help publish.
Instruktioner för uppladdning och deadline
Duggan tillgängliggörs 13:00 på torsdag 7 juni 2016 och du har 24 timmar på dig att lösa uppgifterna och ladda upp din rapport på Lisam → TNA005 → Inlämningar → UPG1: examination.
Notera att rapporten du laddar upp måste vara i pdf-format. Du kan antingen använda publish
med default inställningar och få en rapport i html-format som du därefter skriver ut till en pdf-fil
(rekommenderas), eller att du ändrar inställningarna för publish i MATLAB generera en pdf-fil
direkt. Inlämningsmodulen för UPG1 stänger 13:30 på onsdag 8 juni 2016.
Frågor
Berkant Savas är jourhavande lärare och kan nås på telefon 011–36 3112 alt 070–089 6071 mellan
13:00–15:00 på tisdag och 8:00–10:00 på onsdag. Du kan även maila frågor till Berkant ([email protected]). Alla mail inkomna fram till 10:00 på onsdag kommer att besvaras.
Linköpings universitet, ITN, Berkant Savas
1
Uppgifter
1. Vi har funktionen
f (x, y) = arctan(x)(1 − cos(y))
i området −5 ≤ x ≤ 5, −4π ≤ y ≤ 4π.
a) Plotta funktionen med kommandot mesh.
b) Plotta, i en ny figur, nivåkurvor för f som motsvarar nivåerna −0.2, −0.1, 0, 0.1, 0.2.
2. Man vill simulera kast med två tärningar. Den ena tärningar har endast fyra sidor, och
resulterar i utfallen 1, 2, 3, eller 4 med lika stor sannolikhet. Den andra tärningen har åtta
sidor, som resulterar i utfallen 1, 2, ..., 8 med lika stor sannolikhet.
Generera 10 000 kast med respektive tärning. Plotta utfallen i en histogram med fyra
staplar för den första tärningen och åtta staplar för den andra tärningen. Är resultaten
rimliga?
Addera utfallen av de två tärningarna och sammanställ dessa resultat för varje unik summa,
dvs antalet gånger som summan blev 2, 3, osv. Plotta resultaten på något lämpligt sätt.
Beräkna och ange medelvärdet för summan.
3. I denna uppgift skall du använda filen T.MAT från uppgift 4.19.20 i kursboken med dagliga
temperaturer över åren 1981 fram till 1990. Filen kan hämtas från kurshemsidan.1
a) Beräkna medeltemperaturer för januari månad över åren 1981–1990 och plotta dessa.
Januari månad har 31 dagar.
b) Låt medeltemperaturerna för januari ges av m = (m1 m2 . . . m10 )t , där m1 är medeltemperatur för jan 1981, m2 är medeltemperatur för jan 1982, och så vidare. Anpassa en
rät linje till medeltemperaturerna genom att lösa minsta kvadratproblemet


1981 1
1982 1


min kAx − mk, där A =  .
..  .
x
 ..
.
1990 1
Ge linjens ekvation, beskriv variabler och koefficienter i ekvationen, samt plotta linjen
tillsammans med medeltemperaturerna.
c) Gör samma sak som i a) och b) men för februari månad. Utgå från att februari månad
har 28 dagar och därmed bortse från att vissa år är skottår. Vilken slutsats drar du kring
medeltemperaturernas förändring under tidsperioden från de två anpassade linjerna för
januari respektive februari månad?
Tips: använd MATLABs inbyggda funktioner mean.
1 http://webstaff.itn.liu.se/~bersa48/tna005/upg1/T.MAT
2
4. Även I denna uppgift skall du använda filen T.MAT från uppgift 4.19.20 i kursboken med
dagliga temperaturer över åren 1981 fram till 1990. Filen kan hämtas från kurshemsidan.1
Skriv en funktion med invariablerna:
T med dagliga temperaturer;
a som anger årtal, det är OK att ange 1 för 1981, 2 för 1982, osv.; och
t som anger en viss temperatur.
Funktionen skall ta fram de dagar i år a som har högre temperatur än t och returnera tre
variabler:
I anger index för de aktuella dagarna;
Tt anger motsvarande temperaturer; och
n anger antalet sådana dagar.
Testa din funktionen genom att ta reda på antalet dagar år 1983 som har högre temperatur
är 20 grader C. På vilken dag inträffade första sådana tillfälle? Ange endast index. Och hur
mycket var temperaturen den dagen?
Kopiera in koden från din funktion och kommentera den i publishfilen så att jag kan läsa
koden i den.
Tips: undvik for-loopar!
3