Project Dynamica: oefenopgaven met R

Vergelijkbare documenten
Introductie in R.

Inleiding Statistiek

ALGEMENE STATISTIEK VOOR BWI COMPUTEROPGAVEN 2009/2010. A.W. van der Vaart en F. Bijma

Beknopte handleiding voor Derive 5.0 for Windows

Inleiding MATLAB (2) november 2001

Oefenopgaven wi3097: Numerieke methoden voor differentiaalvergelijkingen

Tweede Programmeeropgave Numerieke Wiskunde 1 De golfplaat Uiterste inleverdatum : vrijdag 16 mei 2003

TECHNISCHE UNIVERSITEIT EINDHOVEN. Faculteit Wiskunde en Informatica

10. Controleopdrachten

Tentamen Lineaire Algebra B

3.1 Kwadratische functies[1]

Opdracht 2. Deadline maandag 28 september 2015, 24:00 uur.

8. Differentiaal- en integraalrekening

Tentamen Inleiding Kansrekening 25 juni 2009, uur Docent: F. den Hollander

5. Vergelijkingen Vergelijkingen met één variabele Oplossen van een lineaire vergelijking

ONBETWIST ONderwijs verbeteren met WISkunde Toetsen Voorbeeldtoetsen Lineaire Algebra Deliverable 3.10 Henk van der Kooij ONBETWIST Deliverable 3.

Kansrekening en statistiek WI2105IN deel I 4 november 2011, uur

Tentamen lineaire algebra 2 18 januari 2019, 10:00 13:00 Uitwerkingen (schets)

Korte handleiding Maple, bestemd voor gebruik bij de cursus Wiskunde

Hoofdstuk 3. Matrices en stelsels. 3.1 Matrices. [[1,7]],[[12,8] ] of [ 1, 7; 12,8 ] bepaalt de matrix

Hierbij is het steekproefgemiddelde x_gemiddeld= en de steekproefstandaardafwijking

3.4. Antwoorden door N woorden 24 januari keer beoordeeld. Wiskunde B. wi vwo B1 H1 Vergelijkingen en ongelijkheden 1.

11.0 Voorkennis V

Het oplossen van vergelijkingen Voor het benaderen van oplossingen van vergelijkingen van de vorm F(x)=0 bespreken we een aantal methoden:

d. Maak een spreidingsdiagram van de gegevens. Plaats de x-waarden op de x-as en de z-waarden op de y-as.

4.0 Voorkennis [1] Stap 1: Maak bij een van de vergelijkingen een variabele vrij.

GEOGEBRA 4. R. Van Nieuwenhuyze. Hoofdlector wiskunde, lerarenopleiding HUB, Brussel. Auteur Van Basis tot Limiet.

Uitwerkingen toets 12 juni 2010

Tentamen Inleiding Kansrekening 11 augustus 2011, uur

7,5. Samenvatting door een scholier 1439 woorden 13 mei keer beoordeeld. Inhoudsopgave

Wetenschappelijk Rekenen

Statistiek voor Natuurkunde Opgavenserie 1: Kansrekening

Geef niet alleen antwoorden, maar bewijs al je beweringen.

Korte handleiding Maple, bestemd voor gebruik bij de cursus Wiskunde

Aantekeningen over MATLAB

Technische Universiteit Delft. ANTWOORDEN van Tentamen Gewone differentiaalvergelijkingen, TW2030 Vrijdag 30 januari 2015,

Algoritmen en programmeren: deel 2 - basis

Tentamen Functies en Reeksen

Tentamen lineaire algebra voor BWI maandag 15 december 2008, uur.

extra sommen bij Numerieke lineaire algebra

12. Uitwerkingen van de opgaven

3.0 Voorkennis. y = -4x + 8 is de vergelijking van een lijn. Hier wordt y uitgedrukt in x.

Tentamen Programmeren in C (EE1400)

Cursus Statistiek Hoofdstuk 4. Statistiek voor Informatica Hoofdstuk 4: Verwachtingen. Definitie (Verwachting van discrete stochast) Voorbeeld (1)

Wiskunde D vwo Lineaire algebra. Presentatie Noordhoff wiskunde Tweede Fase congres 19 november 2015 Harm Houwing en John Romkes

Vectorruimten met inproduct

3. Bepaal de convergentie-eigenschappen (absoluut convergent, voorwaardelijk convergent, divergent) van de volgende reeksen: n=1. ( 1) n (n + 1)x 2n.

Combinatoriek groep 1 & 2: Recursie

11. Eenvoudige programma s schrijven in Maxima

10.0 Voorkennis. Herhaling van rekenregels voor machten: a als a a 1 0[5] [6] Voorbeeld 1: Schrijf als macht van a:

VOOR HET SECUNDAIR ONDERWIJS

Eerste serie opgaven Systeemtheorie

Derive in ons wiskundeonderwijs Christine Decraemer

opdrachten bij hoofdstuk 7 Lijnen cirkels als PDF

1.0 Voorkennis. Voorbeeld 1: Los op: 6x + 28 = 30 10x.

1.1 Tweedegraadsvergelijkingen [1]

Kansrekening en statistiek wi2105in deel I 29 januari 2010, uur

Matlab introductie. Kees Vuik

Hoofdstuk 1. Illustratie 2

Computerrekenpakket Maple zesde jaar

Korte handleiding Maple bij de cursus Meetkunde voor B

1.0 Voorkennis. Voorbeeld 1: Los op: 6x + 28 = 30 10x.

Toepassingen op differentievergelijkingen

Gezamenlijke kansverdeling van twee stochasten

Functies van vectoren

Tentamen Lineaire Algebra 1 (Wiskundigen)

maplev 2010/7/12 14:02 page 277 #279

Uitwerking Proeftentamen Lineaire Algebra 1, najaar y y = 2x. P x. L(P ) y = x. 2/3 1/3 en L wordt t.o.v de standaardbasis gegeven door

UITWERKINGEN 1 2 C : 2 =

3.0 Voorkennis. Voorbeeld 1: Los op: 6x + 28 = 30 10x.

TECHNISCHE UNIVERSITEIT EINDHOVEN Faculteit Wiskunde en Informatica. Uitwerking Tentamen Calculus, 2DM10, maandag 22 januari 2007

Hertentamen Biostatistiek 3 / Biomedische wiskunde

1. (a) Gegeven z = 2 2i, w = 1 i 3. Bereken z w. (b) Bepaal alle complexe getallen z die voldoen aan z 3 8i = 0.

More points, lines, and planes

Tentamen Lineaire Algebra

Practicumbijeenkomst 1 Statistiek voor Bouwkunde pilot, najaar 2008

Tentamen lineaire algebra voor BWI dinsdag 17 februari 2009, uur.

Wetenschappelijk Rekenen

Uitwerkingen Lineaire Algebra I (wiskundigen) 22 januari, 2015

UITWERKINGEN d. Eliminatie van a geeft d. Eliminatie van b,

Hints en uitwerkingen huiswerk 2013 Analyse 1 H18

Matlab-Introductie (les 1)

11.0 Voorkennis. Optellen alleen bij gelijknamige termen: 3a 3 + 4a 3 = 7a 3. Bij macht van een macht exponenten vermenigvuldigen: (a 5 ) 4 = a 20

2. Een eerste kennismaking met Maxima

Tentamen Programmeren in C (EE1400)

Ijkingstoets industrieel ingenieur aangeboden door UGent en VUB op 15 september 2014: algemene feedback

Je moet nu voor jezelf een overzicht zien te krijgen over het onderwerp Complexe getallen. Een eigen samenvatting maken is nuttig.

Je gaat leren programmeren en een spel bouwen met de programmeertaal Python. Websites zoals YouTube en Instagram zijn gebouwd met Python.

Programmeermethoden NA. Week 6: Lijsten

IJkingstoets Wiskunde-Informatica-Fysica 29 juni Nummer vragenreeks: 1

Toepassingen op discrete dynamische systemen

TENTAMEN LINEAIRE ALGEBRA 1 donderdag 23 december 2004,

b. Maak een histogram van de verdeling van het groeiseizoen. Kies eerst klassen en maak een geschikte frequentietabel.

Examen G0O17E Wiskunde II (3sp) maandag 10 juni 2013, 8:30-11:30 uur. Bachelor Geografie en Bachelor Informatica

Hoofdstuk 5. Dobbelen, echt en virtueel. > Maak in SPSS een nieuwe data-verzameling (File > New > Data). We gaan hier de

Schrijf boven elk vel je naam, studentnummer en studierichting (W, N of I). Het is toegestaan een (grafische) rekenmachine te gebruiken.

TECHNISCHE UNIVERSITEIT EINDHOVEN. Faculteit Wiskunde en Informatica

Programmeermethoden NA

Informatica: C# WPO 10

2.0 Voorkennis. Rekenregels machten: 5) a 0 = 1. p p q p q a p q q. p q pq p p p. Willem-Jan van der Zanden

Transcriptie:

Project Dynamica: oefenopgaven met R De onderstaande opgaven dienen in R gemaakt te worden; uitwerkingen hoeven niet ingeleverd te worden. Zie de website http://www.r-project.org/ voor R manuals. Start R door op het R-icoon te klikken. In het window met de naam R Console kunnen de R commando s worden ingevoerd. Het teken > aan het begin van de regel is de R-prompt. De > prompt wordt gevolgd door de uit te voeren commando s. De > prompt wordt vervangen door een + promt als het commando nog niet is afgelopen. Met het commando q() kan R worden afgesloten. Functies in R kennen twee soorten argumenten: 1) argumenten die de gebruiker verplicht dient te specificeren, en ) default argumenten die de gebruiker kan speciferen, maar een standaard instelling kennen. De syntax >?functienaam toont de help-file van de functie functienaam. Nog enkele tips: i) Met de en de cursor-toetsen is het mogelijk door reeds ingevoerde commando s te lopen. ii) Via File New script opent R een script. Hier kunnen vele regels aan commando s ingevoerd worden. Een selectie hiervan kan direct in R gerund worden: Edit Run line or selection. iii) Sla altijd het script op! Dat scheelt veel dubbel werk. Opgave 0: De volgende oefensessie toont enkele mogelijke commando s in R. De R prompt wordt gevolgd door het commando dat ingeven dient te worden, en een korte beschrijving van wat het commando doet. Voer dit zelf uit: voer het commando in gevolgd door <ENTER>. > x <- c(-1, 8, 1) maak een vector x met waarden -1,8, en 1. > x <- c(x, 99) voeg de waarde 99 toe het eind van de vector x. > x <- c(sqrt(), x, 99) voeg de waarde toe het begin van de vector x. > x <- x[-] verwijder het tweede element van de vector x. > x <- c(x,x) dupliceer de vector x. > x <- 1:0 maak een vector x met waarden 1,, 3,..., 0. > x print waarden van x op het scherm. > m <- matrix(x,4,5,byrow=t) maak een matrix m met 4 rijen en 5 kolommen met de waarden van x rij-gewijs geordend. > m print matrix m op het scherm. > y <- sample(1:100,0) genereer een random sample van omvang 0 uit de getallen 1,, 3,..., 100. > z <- x+y bereken de som van x en y elements-gewijs. > y <- x+ *y transformeer y elements-gewijs. > cbind(x,y) maak een matrix met kolommen x en y en print het resultaat. 1

> plot(x,y) zet y tegen x uit in een grafiek. > lsfit(x,y)$coef bereken de coefficienten van de kleinste kwadraten lijn. > abline(lsfit(x,y)) voeg de kleinste kwadraten lijn toe aan de grafiek. > lines(spline(x,y)) voeg ook een exacte spline fit toe. > x <- rnorm(50,0,sqrt()) trek een steekproef van omvang 50 uit de normale verdeling met verwachting 0 en variantie. > y <- rnorm(50) idem voor de standaard normale verdeling. > mean(x) bereken het gemiddelde van de waarden in x. > sd(x) bereken de standaard deviatie van de waarden in x. > var(x) bereken de variantie van de waarden in x. > cor(x,y) bereken de correlatie tussen x en y. > x[x<0] selecteer de negatieve elementen uit x. > sum(x<0) tel het aantal negatieve elementen in x. > hist(x, prob=t) maak een histogram. > help(hist) vraag de documentatie over de function hist op. >?hist idem. > u <- seq(-5,5,0.1) maak een rij van punten tussen 5 and 5 met stapgrootte 0.1. > v <- dnorm(u,0,sqrt()) bereken de dichtheid van de normale verdeling met verwachting 0 en variantie. > lines(u,v) voeg curve van de berekende normale verdeling toe. > {hist(x,xlim=c(-6,6),prob=t) teken het histogram opnieuw op groter interval, maar voer het commando nog niet uit. + lines(u,v)} plus additioneel commando, en voer beide uit. > plot(c(-5,sort(x),5), teken de empirische verdelingsfunctie van x op (-5,5). 1 + c(0,1:50/50,1), + type="s",ylim=c(0,1), + xlab="x",ylab="the empdf of x") > lines(u,pnorm(u)) voeg de werkelijke distributie functie toe. > w <- seq(-pi,pi,length=100) maak een regelmatig grid van 100 punten. > plot(cos(w),sin(w),type="l") teken een cirkel. 1 Merk op: de kleinste en grootste waarde van de op de x-as weer te geven vector dienen respectievelijk kleiner dan min(x) en groter dan max(x) te zien. Wellicht dien je de waarden -5 en/of 5 aan te passen om dit te ondervangen. Opgave 1: Vectoren 1a) Maak een vector x bestaande uit de getallen 3, 0.149, -5.15, and 36. 1b) Voeg aan deze vector het getal -8 toe. 1c) Orden de elementen van x van klein naar groot en noem deze geordende vector y. 1d) Vermenigvuldig elk element van x met 4. 1e) Rond elk element van x af tot een decimaal. 1f) Selecteer alle positieve elementen van x. 1g) Verander het derde element van x in 7. Opgave : Matrices a) Maak een vector x bestaande uit de rij van getallen tussen en 4 met stapgrootte 0.1. Maak een matrix m met zeven rijen en drie kolomen in welke de 1 element van x kolomsgewijs geordend zijn. b) Print het element in de tweede rij en in de eerste kolom van m.

c) Print de derde kolom van m. d) Bereken het gemiddelde van de getallen in m. e) Bereken de gemiddelde waarde van elke kolom van m middels de R-functie apply. Voor de opgaven hieronder dient een eigen functie in R geschreven te worden. Functies in R kennen de volgende syntax: functienaam <- function(argument1, argument,...){... some command lines... return(object-to-be-returned) } Meer hierover in de handleiding of op internet. Opgave 3: Functies 3a) Schrijf een functie dat elk element van een vector x met 5 vemenigvuldigt en er vervolgens 3 bij optelt, en het resultaat als output heeft. Een vaas bevat 40 rode en 60 witte ballen. 3b) Schrijf een functie die, met teruglegging, 50 ballen uit de vaas trekt, en tevens de fractie rode en witte ballen in deze trekking berekent. De functie geeft de fracties als output terug. 3c) Herschrijf de functie van onderdeel 3b) voor de situatie dat n ballen met teruglegging worden getrokken uit een vaas met mr rode en mw witte ballen. Neem als argument voor de functie n, mr en mw met default waarden n = 100, mr = 40 en mw = 60. Opgave 4: Benader π in vijf decimalen. Hint: bekijk de manual van de functie round. Opgave 5: Vind x [0, 1] z.d.d. x 3x + 1 = 0. Hint: functies uniroot en function. Een alternatief is de functie: polyroot. Opgave 6: Definieer de functies f(x) = 5x 1 en g(x) = cos(x). Probeer vervolgens op te lossen: f(x) = g(x). Als dit niet met R lukt, benader dan de oplossing zo goed mogelijk. Teken vervolgens in één figuur de grafieken van beide functies en zet bij het snijpunt een S. Hint: vorige opgave, en de functies plot, lines en text. Opgave 7: Bereken de integraal van f(x) = x arctan(x) over het interval [0, 100]. Hint: Functies atan and integrate. Opgave 8: Merk op: deze opgave vereist schrijfrechten op de computer. Met H n (x) noteren we het n-de graads Hermite polynoom. Zoek op internet in welk package deze polynomen gedefinieerd zijn. Installeer het package (hiervoor heb je schrijfrechten nodig, en kan mogelijk niet op een VU-computer!). Laad het package. Zoek in R op wat Hermite polynomen zijn en geef vervolgens het 4-de graads Hermite polynoom. Hint: functies library. Opgave 9: De matrix A en de vector b zijn gegeven door: 1 1 1 A = 3 5, b = 1 6 5 9a) Bepaal de lengte van b. Hint: commando voor matrix vermenigvuldiging %*%, 1 1 3

bijv: A %*% A. 9b) Geef een basis voor de nulruimte van A. Hint: functie Null in de MASS-library. 9c) Los op: Ax = b. Hint: functie solve. Opgave 10) Bepaal de eigenwaarden en bijbehorende eigenvectoren van C = 3 8 5 1. 4 0 Opgave 11) (Deze opgave fungeert als oefening voor de eindopdracht.) Op de waddeneilanden wordt het weer elke dag geclassificeerd als zonnig, bewolkt of regenachtig. Het weer voor de volgende dag hangt alleen af van het weer van vandaag, maar niet van de dagen daarvoor. Als het vandaag zonnig is, dan is het morgen zonnig, bewolkt of regenachtig met de respectievelijke kansen 0.70, 0.10 en 0.0. Voor een bewolkte dag zijn de respectievelijke kansen voor de volgende dag gelijk aan 0.50, 0.5 en 0.5, terwijl voor een regenachtige dag de respectievelijke kansen voor de volgende dag 0.40, 0.30 en 0.30 zijn. We definiëren een Markov keten {X n } met drie toestanden 1, en 3. Het proces is op dag n in toestand 1 bij een zonnige dag, in toestand bij een bewolkte dag en in toestand 3 bij een regenachtige dag. Stel de matrix P op van 1-staps overgangskansen [dit is dus de matrix in het stelsel vergelijkingen y k+1 = P y k, waarbij y k de vector is uit R 3 die de kansen aangeeft op zonnig, bewolkt resp. regenachtig]. Wat is de kans dat het overmorgen zonnig is, als het vandaag regenachtig is? En hoe zit dat over drie dagen? Bepaal de kansverdeling van het weer over een groot aantal dagen [kortom, bepaal de limiet van de vector y k voor k ]. Hieronder nog twee opgaven ten einde het programmeren in R te oefenen. I.h.b. het if-statement en de for- en while-loop. Deze structuren kennen de volgende syntax: if ( cond ){ expr1 } else { expr } for ( var in list ){ expr } while ( cond ){ expr } Meer hierover in de handleiding of op internet. Opgave 1) Priemgetallen: Laat alle priemgetallen tussen de 100 en 00 afdrukken en laat R uitrekenen hoeveel dat er zijn (druk dat ook af!). Hint: de functie isprime in de gmp-library bepaald of een integer priem is of niet; gebruik tevens een for-loop en het if-statement. Mocht dit package niet beschikbaar zijn, programmeer dan zelf een functie die bepaald of een getal priem is. Dit kan eveneens met een for-loop. De modulus-functie is in R geimplementeerd als %%. Opgave 13) Newton-Raphson: Met het algoritme van Newton-Raphson is het (meestal) mogelijk een nulpunt van een differentieerbare functie f te bepalen. Het is een iteratieve methode, die als volgt is gedefinieerd: { x n+1 = x n f(x n) f (x n ) x 0 gegeven. 4

Als we het nulpunt van f(x) = x hiermee berekenen, vinden we in feite een benadering van. Voer dit uit en gebruik als stopcriterium dat twee opeenvolgende iteraties minder dan 10 9 van elkaar verschillen. Hint: gebruik een while-loop. 5