F3: Funktioner (kap. 5)
|
|
- Sven-Erik Henriksson
- för 6 år sedan
- Visningar:
Transkript
1 F3: Funktioner (kap. 5) Lab-läget? Konton OK? Matlab nerladdad? Lab 2: Funktioner Funktionsfil, funktionsanrop in- och utparametrar, anropsin- och anropsutparametrar lokala, globala (och persistenta) variabler lokala funktioner return variabelt antal parameterar, skönsvärde (Eng. default) slumptal: Brownsk rörelse profilering pre-allokering 2D som komplexa tal intervallhalvering Lab2 igen, minsta-kvadrat-anpassning avlusning, felsökning (debugging), programprofil slide 1 of 28 Staffan Romberger / JO, CSC, KTH,
2 Lab 2 Laboration 2 Efter den här laborationen ska du kunna skriva lite större program som är uppdelade i egendefinierade funktioner. Polynomanpassaren 1) Ange gradtal 2) Ange punkter 3) Beräkna koefficienter 0) Avsluta Du ska själv skriva en funktion för varje menyval utom»avsluta». Så här ska de anropas från huvudprogrammet: degree = askdegree(); Frågar efter, läser in och returnerar gradtal. points = askpoints(); Frågar efter, läser in och returnerar punkterna. coeffs = findcoeffs(degree, points); Löser det linjära (överbestämda) ekvationssystemet och returnerar polynomets koefficienter. Du får inte använda polyfit; se nedan om minsta kvadrat-polynom slide 2 of 28 Staffan Romberger / JO, CSC, KTH,
3 Förslag på arbetsordning: 1. Börja med att konstruera funktioner som inte gör annat än skriver ut sitt namn. 2. Konstruera menyn och anropa för respektive val rätt funktion. Inget ska hända när användaren väljer något, utom att programmet avslutas när man väljer Avsluta. 3. Gör färdigt funktionerna i tur och ordning. Testa dem var och en för sig! slide 3 of 28 Staffan Romberger / JO, CSC, KTH,
4 Funktioner forts. En funktion är en följd kommandon i en m-fil som inleds med ett funktionshuvud: function [utparameter1, ] = funktionsnamn(inparameter1, ) eller function funktionsnamn(inparameter1, ) Direkt efter funktionshuvudet skriver man dokumentationskommentarer enligt reglerna för lookfor och help. Därefter står kommandon som utförs när funktionen anropas. Funktionen anropas med: funktionsnamn(anropsinparameter1, ) eller [anropsutparameter1, ] = funktionsnamn(anropsinparameter1, ) När kommandona i funktionen har utförts till slut fortsätter exekveringen efter anropet. En funktion bör lagras i en fil med namnet funktionsnamn.m. slide 4 of 28 Staffan Romberger / JO, CSC, KTH,
5 slide 5 of 28 Staffan Romberger / JO, CSC, KTH,
6 Parametrar Parametrarna och övriga variabler i en funktion är lokala dvs. har inget med variabler med samma namn i kommandofönstret eller andra kommando- eller funktionsfiler att göra. Undantag gäller globala och persistenta variabler. Funktioner kan skrivas så att de, olika gånger, kan anropas med olika antal in- och utparametrar. En m-fil kan innehålla mer än en funktion. Funktionerna efter den första kallas lokala funktioner och de syns bara för funktionerna i den m-filen. Vi gör om kommandofilen för kuggväxel till en funktion: function [bestm bestn finalgear] = findgear(gear,nmin,nmax) % Hittar det kugghjulspar som bäst % approximerar en given utväxling. % [m n finalgear] = findgear(gear,nmin,nmax) % hittar den bästa approximationen m/n till % gear för m och n mellan nmin och nmax för % positiva nmin, nmax och gear. slide 6 of 28 Staffan Romberger / JO, CSC, KTH,
7 if gear>0 & nmax>0 & nmin>0 bestdiff = realmax; for m = nmin:nmax nprel = floor(m/gear); for n = max(nprel,nmin):min(nprel+1,nmax) diff = abs(m/n-gear); if diff<bestdiff bestdiff = diff; bestm = m; bestn = n; end % if end % for n end % for m finalgear = bestm/bestn; else bestm = NaN; bestn = NaN; finalgear = NaN; error('felaktiga indata.'); end slide 7 of 28 Staffan Romberger / JO, CSC, KTH,
8 Kuggväxel forts. Testkörning ger: >>findgear( ,5,50) ans = 22 >>[m n g] = findgear( ,5,50) m = 22 n = 7 g = >>findgear( ,5,-50)??? Error using ==> findgear Felaktiga indata. slide 8 of 28 Staffan Romberger / JO, CSC, KTH,
9 Parametrar forts. Anropsinparametrarna är uttryck. Vid anropet kopieras uttryckens värde till motsvarande inparameter. När funktionen har exekverat färdigt kopieras utparametrarnas värden till motsvarande anropsutparametrar. Anropsinparametrarna kan då inte förstöras av funktionsanropet pass by value. Anropsutparametrarna får vara färre än utparametrarna. Funktionen har exekverat färdigt när sista kommandot eller sista kommandot före nästa funktion har utförts eller när kommandot return utförts. Vi ändrar funktionen så att skönsvärdena för nmax och nmin blir 100 resp. 5. För sådant använder man funktionerna nargin, nargout, nargcheck, error, warning och inputname. function [m n finalgear]=findgear(gear,nmin,nmax) % % positiva nmin, nmax och gear. Skönsvärde slide 9 of 28 Staffan Romberger / JO, CSC, KTH,
10 % för nmax och nmin är 100 resp. 5. msg = nargchk(1,3,nargin); error(msg); if nargin<3 nmax = 100; end if nargin<2 nmin = 5; end... Testkörning ger: >>[m n g] = findgear(pi,25) m = 88 n = 28 g = >>[m n g] = findgear( ) m = 22 n = 7 g = >>[m n g] = findgear??? Error using ==> findgear Not enough input arguments. >>[m n g] = findgear(17,10,50,50)??? Error using ==> findgear Too many input arguments. slide 10 of 28 Staffan Romberger / JO, CSC, KTH,
11 Kuggväxel forts. Man kan på liknande sätt göra funktionen beroende av antalet anropsutparametrar. m = findgear( ) m = 22 [m n] = findgear( ) m = 22 n = 7 slide 11 of 28 Staffan Romberger / JO, CSC, KTH,
12 Globala variabler Programmera en räknare som kan stegas med anrop till count( ) och avläsas med getcount( ). Själva räknaren måste nås av båda funktionerna. Vanliga variabler i funktioner är ju lokala. Vi gör en variabel, COUNTER, global. Man brukar skriva globala variabler med versaler. I filen count.m: I filen getcount.m: function count function c = getcount % Stegar räknaren COUNTER % Avläser räknaren COUNTER global COUNTER global COUNTER if isempty(counter) c = COUNTER; COUNTER = 0; end COUNTER = COUNTER+1; slide 12 of 28 Staffan Romberger / JO, CSC, KTH,
13 Global variabel forts. Testkörning: >>getcount ans = [] >>count; count; getcount ans = 2 >>COUNTER??? Undefined function or variable 'COUNTER' En variabel som ska sparas mellan anrop men bara behöver nås inuti en funktion kan istället göras persistent. slide 13 of 28 Staffan Romberger / JO, CSC, KTH,
14 Slumpvandring Programmera Brownsk rörelse/slumpvandring i planet med lika sannolikhet för alla riktningar, förflyttning sträckan 1 per steg och start i origo. Låt filen brown.m innehålla: function pos = brown(steps,runs) % Simulerar Brownsk rörelse/slumpvandring i 2D. % pos = brown(steps) ritar en vandring med steps % steg. % pos = brown(steps,runs) ritar slutpunkterna av % runs stycken vandringar med vardera steps steg. % pos = sista slutpunkten slide 14 of 28 Staffan Romberger / JO, CSC, KTH,
15 Slumpvandring forts. msg = nargchk(1,2,nargin); error(msg); if nargin==1 pos = b(steps,1); else pos = []; for run = 1:runs pos = [pos b(steps,0)]; % pos växer se MLINT end plot(pos(1,:),pos(2,:),'ko'); pos = pos(:,end); end slide 15 of 28 Staffan Romberger / JO, CSC, KTH,
16 Alternativ med pre-allokering... pos = zeros(2,runs); for run = 1:runs pos(:,run) = b(steps,0); end... slide 16 of 28 Staffan Romberger / JO, CSC, KTH,
17 Slumpvandring forts. Som lokal funktion i samma funktionsfil: function pos = b(steps,show) % Simulerar en slumpvandring med steps steg % och plottar den om show är sant. pos = [0;0]; x = pos; % kolonn (x;y) for k = 1:steps a = rand*2*pi; % Rekt.fördeln. på (0,2π) pos = x(:,end)+[cos(a);sin(a)]; x = [x pos]; end if show plot(x(1,:),x(2,:),'k-'); axis equal end slide 17 of 28 Staffan Romberger / JO, CSC, KTH,
18 Alternativ utan slinga, med komplexa tal function pos = b(steps,show) % Simulerar en slumpvandring med steps steg % och plottar den om show är sant. a = rand(1,steps)*2*pi; % alla slumptal i rad-vektor dz = exp(1i*a); % z = x+iy steg i x & y-led z = [0,cumsum(dz))]; % kumulativ summa: dz1, dz1+dz2, dz1+dz2+dz3, % diff(cumsum(z)) = (z2,z3,z4,...) = z(2:end) % cumsum(diff(z)) = (z2-z1,z3-z1,z4-z1,...) = z(2:end)-z1 pos = [real(z(end));imag(z(end))]; % (x;y) if show plot(z,'k-'); % matlab förstår komplexa tal axis equal end slide 18 of 28 Staffan Romberger / JO, CSC, KTH,
19 Testkör: brown(100) brown(100,1000) slide 19 of 28 Staffan Romberger / JO, CSC, KTH,
20 Slumpvandring forts. Hur ser punktsvärmen ut? o Summan av n (=100) oberoende stokastiska variabler med medelvärde m och varians σ närmar sig N(mn, n σ) då n blir stor. Medelvärdet av sin och cos är noll, och variansen hos sin(r[0,2π]) är = π 1 σ 2 π =. Så x n och y n blir N(0, n / 2), n / 2=7, faktiskt 2 oberoende o Därmed blir sannolikhetstätheten för (x n,y n ) P( x < x n < x + dx & y < r 2 y n < y + dy) =... = 1 e πn x 2 + y n 2 dxdy vilket betyder att 1 e n av punkterna bör hamna innanför cirkel med radie r. r = 10 ger ca 70% - verkar OK. slide 20 of 28 Staffan Romberger / JO, CSC, KTH,
21 Felsökning igen När programmet inte ger önskat resultat: Läs koden, ändra i programmet Prova att köra med andra indata När ett fel hittas, rätta det och testa igen leta efter ett fel i taget! Lägg in spårutskrifter eller brytpunkter för att se i vilken ordning kommandona utförs och vissa variablers mellanresultat (ta bort ;, lägg in disp eller keyboard). Intervallhalvering Det finns ett särskilt fönster för att skapa profil för ett program, dvs. uppgifter om hur många gånger programmets olika delar/rader har exekverats, och om hur lång exekveringstid som går åt för respektive del. Kommandot tic startar tidtagning och toc avläser och returnerar tid sedan senaste tic. tic; do_it; elapsed_time = toc; slide 21 of 28 Staffan Romberger / JO, CSC, KTH,
22 Intervallhalvering preludium till ekv.lösning Jämför med algoritmen för pumpa-gissning! Uppgift: Finn nollställe till f(x), givet två startgissningar a < b sådana att f(a) f(b) < 0 om f är kontinuerlig vet vi då att det finns minst ett nollställe i (a,b). Algoritm: 1. c := (a+b)/2; 2. om f(c) f(a) > 0 a := c annars b := c 3. om b-a > tolerans, gå till 1, annars klart slide 22 of 28 Staffan Romberger / JO, CSC, KTH,
23 matlab Antag att funktionen f är definierad och heter f_test % intervall-halvering: finn nollställe till f_test(x) % Preludier: kontrollera f(a)f(b)<0 och sätt tolerans while 1 a = input('a: '); b = input('b: '); if f_test(a)*f_test(b) < 0 % OK break else disp(' f(a)f(b) > 0, ge nya a, b!'); end end tol = 1e-6; slide 23 of 28 Staffan Romberger / JO, CSC, KTH,
24 Matlab k = 0; while abs(b-a)>tol k = k+1; c = (a+b)/2; if f_test(c)*f_test(a) > 0 %?? 2 f-eval per steg? a = c; % vi har ju redan f(a)? else b = c; end end disp(['rot: ',num2str(c),' #iter.: ',num2str(k)]); slide 24 of 28 Staffan Romberger / JO, CSC, KTH,
25 slide 25 of 28 Staffan Romberger / JO, CSC, KTH, Effektivitet - algoritm Alltid konvergens under givna förutsättningar, men Det krävs ca. log2( b-a /tol) evalueringar av f Det räcker att f är kontinuerlig Snabbare algoritmer använder mera information om f, t.ex Newton: ett-stegs, kräver derivata ) ( ) ( 1 n n n n x f x f x x = + Sekant: två-stegs, ingen derivata behövs ) ( ) ( ) ( = n n n n n n n x f x f x x x f x x
26 Lab 2 igen, minsta-kvadrat-polynom Kolonn-vektorerna x och y givna. Lös Ac = y. A s kolonn j ska ha potensen N+1-j av x-värdena. Konstruera matrisen A kolonn för kolonn: A = zeros(m,n+1); % pre-allokera A(:,N+1) = ones(m,1); for k = N:-1:1 A(:,k)=A(:,k+1).*x; end; och beräkna koefficienterna i minsta-kvadrat-lösningen med \: c = A \ y; slide 26 of 28 Staffan Romberger / JO, CSC, KTH,
27 Använda Matlab i rapport Det finns möjlighet att skriva Matlab så att körning av programmet skapar ett dokument som innehåller förklarande text, programavsnitt och resultat från körningen. Dokumentet kan göras i olika format såsom HTML, XML, MSWord, Latex. Varje cell (se F2 om celler) blir ett avsnitt med det som står efter %% som rubrik. Textdelar inom $$ $$ tolkas som TeX, text inom sätts som fastbreddstext, <<filnamn>> sätter in en bild, * text sätter in ett element i en oordnad lista, och # text sätter in ett element i en numrerad lista, HTML-kod kan sättas in direkt, *text* ger halvfet och _text_ ger kursiv text. Funktioner kan hanteras om man inte utför dem vid publiceringen. slide 27 of 28 Staffan Romberger / JO, CSC, KTH,
28 Ö3: 5.2, 5.7, 5.14, 5.20 slide 28 of 28 Staffan Romberger / JO, CSC, KTH,
F3: Funktioner (kap. 5)
F3: Funktioner (kap. 5) Funktionsfil, funktionsanrop in- och utparametrar, anropsin- och anropsutparametrar lokala, globala och persistenta variabler lokala funktioner return variabelt antal parameterar,
Läs merFunktioner forts. F3: Funktioner (kap. 5) Parametrar. findgear.m forts
F3: Funktioner (kap. 5) Funktionsfil, funktionsanrop in- och utparametrar, anropsin- och anropsutparametrar lokala, globala och persistenta variabler lokala funktioner return variabelt antal parameterar,
Läs merF3: Funktioner (kap. 5) Funktioner forts. Parametrar
F3: Funktioner (kap. 5) Funktionsfil, funktionsanrop in- och utparametrar, anropsin- och anropsutparametrar lokala, globala och persistenta variabler lokala funktioner return variabelt antal parameterar,
Läs merFunktioner forts. F3: Funktioner (kap. 5) Parametrar. findgear.m forts
F3: Funktioner (kap. 5) Funktionsfil, funktionsanrop in- och utparametrar, anropsin- och anropsutparametrar lokala, globala och persistenta variabler lokala funktioner return variabelt antal parameterar,
Läs merSkapa egna funktioner
F3: Funktioner (kap. 5) 1 Skapa egna funktioner Funktioner och funktionsanrop Funktionsargument in- och utargument aktuella in- och utargument Tillämpningsexempel - Kuggväxel Lokala, globala och persistenta
Läs merDN1212/numpm Numeriska metoder och grundläggande programmering Laboration 1 Introduktion
Staffan Romberger 2008-10-31 DN1212/numpm Numeriska metoder och grundläggande programmering Laboration 1 Introduktion Efter den här laborationen ska du kunna hantera vektorer och matriser, villkorssatser
Läs merDN1212/numpp Numeriska metoder och grundläggande programmering Laboration 1 Introduktion
Staffan Romberger 2011-12-19 DN1212/numpp Numeriska metoder och grundläggande programmering Laboration 1 Introduktion Efter den här laborationen ska du kunna använda de datorer som vi använder på labbarna,
Läs merVillkor, if, switch. F2: Styrstrukturer, programmeringsteknik (kap. 3 4) If-kommando forts. If-kommando forts.
F2: Styrstrukturer, programmeringsteknik (kap. 3 4) Villkorskommandon, if, switch Villkor, logiska värden, relationsoperatorer, logiska operatorer Skottårsexempel Triangelanalysexempel, strängar Switch,
Läs merNumeriska metoder och grundläggande programmering för T1
Laborationer i Numeriska metoder och grundläggande programmering för T1 hösten 2009-våren 2010 Namn................................... Personnr............................. Lab 1 Introduktion tog timmar
Läs merVillkor if, switch. F2: Styrstrukturer, programmeringsteknik (kap. 3 4) If-kommando forts. If-kommando forts.
F2: Styrstrukturer, programmeringsteknik (kap. 3 4) Villkorskommandon, if, switch Villkor, logiska värden, relationsoperatorer, logiska operatorer Skottårsexempel Triangelanalysexempel, strängar Switch,
Läs merNumeriska metoder och grundläggande programmering för P1
Laborationer i Numeriska metoder och grundläggande programmering för P1 våren 2011 Namn................................... Personnr............................. Lab 1 Introduktion tog timmar Godkänt den....................................(senast
Läs merNumeriska metoder och grundläggande programmering för P1 och T1
Laborationer i Numeriska metoder och grundläggande programmering för P1 och T1 våren 2008 Namn................................... Personnr............................. Lab 1 Introduktion tog timmar Godkänt
Läs merF2: Styrstrukturer, programmeringsteknik (kap. 3 4)
F2: Styrstrukturer, programmeringsteknik (kap. 3 4) Villkorskommandon, if, switch Villkor, logiska värden, relationsoperatorer, logiska operatorer Skottårsexempel Triangelanalysexempel, strängar Switch,
Läs merExempel att testa. Stora problem och m-filer. Grundläggande programmering 4. Informationsteknologi. Informationsteknologi.
Grundläggande programmering 4 stefan@it.uu.se - Huvudprogram och underprogram - Egna funktioner - Olika typer av fel - Lite om effektiv programmering Exempel att testa Programmen för några vardagsproblem
Läs merLaboration: Grunderna i MATLAB
Laboration: Grunderna i MATLAB 25 augusti 2005 Grunderna i MATLAB Vad är MATLAB? MATLAB är ett interaktivt program för vetenskapliga beräkningar. Som användare ger du enkla kommandon och MATLAB levererar
Läs merMMA132: Laboration 2 Matriser i MATLAB
MMA132: Laboration 2 Matriser i MATLAB Introduktion I den här labben skall vi lära oss hur man använder matriser och vektorer i MATLAB. Det är rekommerad att du ser till att ha laborationshandledningen
Läs merSanningar om programmering
Grundläggande programmering stefan@it.uu.se Sanningar om programmering Ett MATLAB-program är ett antal MATLABkommandon samlade i en m-fil. Att utveckla och skriva program kallas att programmera. Att skriva
Läs merIntroduktion till MATLAB
29 augusti 2017 Introduktion till MATLAB 1 Inledning MATLAB är ett interaktivt program för numeriska beräkningar med matriser. Med enkla kommandon kan man till exempel utföra matrismultiplikation, beräkna
Läs merTentamen TANA17 Matematiska beräkningar Provkod: DAT1 Godkänd: 8p av totalt 20p Tid: 21:a April klockan
MAI/Linköpings universitet Fredrik Berntsson Tentamen TANA17 Matematiska beräkningar Provkod: DAT1 Godkänd: 8p av totalt 20p Tid: 21:a April klockan 8.00-12.00 Redovisning Lös först uppgifterna i Matlab.
Läs merTentamen TANA17 Matematiska beräkningar Provkod: DAT1 Godkänd: 9p av totalt 20p Hjälpmedel: MATLAB
MAI/Linköpings universitet Fredrik Berntsson Tentamen TANA17 Matematiska beräkningar Provkod: DAT1 Godkänd: 9p av totalt 20p Hjälpmedel: MATLAB Redovisning Lös först uppgifterna i Matlab. Då du har en
Läs mer2 februari 2016 Sida 1 / 23
TAIU07 Föreläsning 4 Repetitonssatsen while. Avbrott med break. Exempel: En Talföljd och en enkel simulering. Egna funktioner. Skalärprodukt. Lösning av Triangulära Ekvationssystem. Programmeringstips.
Läs merVillkor if, switch. F2: Styrstrukturer, programmeringsteknik (kap. 3 4) If-kommando forts. If-kommando forts.
F2: Styrstrukturer, programmeringsteknik (kap. 3 4) Villkors, if, switch Villkor, logiska värden, relationsoperatorer, logiska operatorer Skottårsexempel Triangelanalysexempel, strängar Switch, tärningsexempel
Läs merTentamen TANA17 Matematiska beräkningar Provkod: DAT1 Godkänd: 8p av totalt 20p Tid: 14:e januari klockan
MAI/Linköpings universitet Fredrik Berntsson Tentamen TANA17 Matematiska beräkningar Provkod: DAT1 Godkänd: 8p av totalt 20p Tid: 14:e januari klockan 8.00-12.00 Redovisning Lös först uppgifterna i Matlab.
Läs merLaboration 4: Stora talens lag, Centrala gränsvärdessatsen och enkla punktskattningar
LUNDS TEKNISKA HÖGSKOLA MATEMATIKCENTRUM MATEMATISK STATISTIK DATORLABORATION 4 MATEMATISK STATISTIK, FÖR I/PI, FMS 121/2, HT-3 Laboration 4: Stora talens lag, Centrala gränsvärdessatsen och enkla punktskattningar
Läs merVariabler. TANA81: Beräkningar med Matlab. Matriser. I Matlab skapas en variabel genom att man anger dess namn och ger den ett värde:
TANA81: Beräkningar med Matlab - Variabler och Matriser - Logiska uttryck och Villkor - Repetitionssatser - Grafik - Funktioner Variabler I Matlab skapas en variabel genom att man anger dess namn och ger
Läs merTAIU07 Matematiska beräkningar med Matlab
TAIU07 Matematiska beräkningar med Matlab Laboration 3. Linjär algebra Namn: Personnummer: Epost: Namn: Personnummer: Epost: Godkänd den: Sign: Retur: 1 Introduktion 2 En Komet Kometer rör sig enligt ellipsformade
Läs merMatlabövning 1 Funktioner och grafer i Matlab
Matlabövning 1 Funktioner och grafer i Matlab I den här övningen ska vi titta på hur man konstruerar funktioner i Matlab och hur man kan rita funktionsgrafer. Läs först igenom hela PM:et. Gå sedan igenom
Läs merLaboration 4: Stora talens lag, Centrala gränsvärdessatsen och enkla punktskattningar
LUNDS TEKNISKA HÖGSKOLA MATEMATIKCENTRUM MATEMATISK STATISTIK DATORLABORATION 4 MATEMATISK STATISTIK, AK FÖR I, FMS 120, HT-00 Laboration 4: Stora talens lag, Centrala gränsvärdessatsen och enkla punktskattningar
Läs merFrån labben: if, for och while. Från labben: if, for och while. Från labben: if, for och while. Från labben: if, for och while
Från labben if, for och while Programmering if, for, while, Beräkningsvetenskap I/KF n Det finns tre grundläggande strukturer i programmering, s k kontrollstrukturer Alternativ, if if logiskt uttryck if
Läs merMatlabövning 1 Funktioner och grafer i Matlab
Matlabövning 1 Funktioner och grafer i Matlab I den här övningen ska vi titta på hur man konstruerar funktioner i Matlab och hur man kan rita funktionsgrafer. Läs först igenom PM:et. Gå sedan igenom exemplen
Läs merKort om programmering i Python
CTH/GU mmgl50-2018 Matematiska vetenskaper Kort om programmering i Python 1 Inledning Redan i första laborationen gjorde ni ett litet program. Ni skrev en script eller skriptfil som beräknade summan 5
Läs merNär man vill definiera en matris i MATLAB kan man skriva på flera olika sätt.
"!$#"%'&)(*,&.-0/ 177 Syftet med denna övning är att ge en introduktion till hur man arbetar med programsystemet MATLAB så att du kan använda det i andra kurser. Det blir således inga matematiska djupdykningar,
Läs merKomponentvisa operationer,.-notation Multiplikation (*), division (/) och upphöj till (ˆ) av vektorer följer vanliga vektoralgebraiska
Matlab-föreläsning 3 (4), 17 september, 2015 Innehåll Sekvenser (från förra föreläsningen) Upprepning med for-slingor och while-slingor Villkorssatser med if - then -else - Logik Sekvenser - repetion från
Läs merLABORATION 2. Trapetsregeln, MATLAB-funktioner, ekvationer, numerisk derivering
SF1518,SF1519,numpbd15 LABORATION 2 Trapetsregeln, MATLAB-funktioner, ekvationer, numerisk derivering - Genomför laborationen genom att göra de handräkningar och MATLAB-program som begärs. Var noga med
Läs merTentamen TAIU07 Matematiska beräkningar med MATLAB för MI
TEKNISKA HÖGSKOLAN I LINKÖPING Matematiska institutionen Beräkningsmatematik/Fredrik Berntsson Tentamen TAIU07 Matematiska beräkningar med MATLAB för MI Tid: 14-18, 13:e Mars, 2018 Provkod: TEN1 Hjälpmedel:
Läs merLaboration 2: 1 Syfte. 2 Väntevärde och varians hos en s.v. X med fördelningen F X (x) MATEMATISK STATISTIK, AK FÖR BYGG, FMS 601, HT-08
LUNDS TEKNISKA HÖGSKOLA MATEMATIKCENTRUM MATEMATISK STATISTIK MATEMATISK STATISTIK, AK FÖR BYGG, FMS 601, HT-08 Laboration 2: Om väntevärden och fördelningar 1 Syfte I denna laboration skall vi försöka
Läs merTentamen TANA17 Matematiska beräkningar Provkod: DAT1 Godkänd: 8p av totalt 20p Tid: 13:e januari klockan
MAI/Linköpings universitet Fredrik Berntsson Tentamen TANA17 Matematiska beräkningar Provkod: DAT1 Godkänd: 8p av totalt 20p Tid: 13:e januari klockan 8.00-12.00 Redovisning Lös först uppgifterna i Matlab.
Läs mer) + γy = 0, y(0) = 1,
Institutionen för Matematik, KTH Tentamen del Numeriska metoder SF545 8.00-.00 / 04 Inga hjälpmedel är tillåtna (ej heller miniräknare). Råd för att undvika poängavdrag: Skriv lösningar med fullständiga
Läs merDagens program. Programmeringsteknik och Matlab. Administrativt. Viktiga datum. Kort introduktion till matlab. Övningsgrupp 2 (Sal Q22/E32)
Programmeringsteknik och Matlab Övning Dagens program Övningsgrupp 2 (Sal Q22/E2) Johannes Hjorth hjorth@nada.kth.se Rum 458 på plan 5 i D-huset 08-790 69 02 Kurshemsida: http://www.nada.kth.se/kurser/kth/2d2
Läs merMonte Carlo-metoder. Bild från Monte Carlo
Monte Carlo-metoder 0 Målen för föreläsningen På datorn Bild från Monte Carlo http://en.wikipedia.org/wiki/file:real_monte_carlo_casino.jpg 1 Begrepp En stokastisk metod ger olika resultat vid upprepning
Läs merLösningsförslag Tentamen i Beräkningsvetenskap I, 5.0 hp,
Uppsala universitet Institutionen för informationsteknologi Teknisk databehandling Lösningsförslag Tentamen i Beräkningsvetenskap I, 5. hp, 14-6-4 Kursmål (förkortade), hur de täcks i uppgifterna och maximalt
Läs merMATLAB. Python. Det finns flera andra program som liknar MATLAB. Sage, Octave, Maple och...
Allt du behöver veta om MATLAB: Industristandard för numeriska beräkningar och simulationer. Används som ett steg i utvecklingen (rapid prototyping) Har ett syntax Ett teleskopord för «matrix laboratory»
Läs merTDDC74 Programmering: Abstraktion och modellering Dugga 2, , kl 14-16
TDDC74 Programmering: Abstraktion och modellering Dugga 2, 207-04-06, kl 4-6 Läs alla frågorna först och bestäm dig för i vilken ordning du vill lösa uppgifterna. Uppgifterna är inte nödvändigtvis i svårighetsordning.
Läs merTentamen TAIU07 Matematiska beräkningar med MATLAB för MI
TEKNISKA HÖGSKOLAN I LINKÖPING Matematiska institutionen Beräkningsmatematik/Fredrik Berntsson Tentamen TAIU07 Matematiska beräkningar med MATLAB för MI Tid: 14-18, 14:e Mars, 2017 Provkod: TEN1 Hjälpmedel:
Läs merTANA17 Matematiska beräkningar med MATLAB för M, DPU. Fredrik Berntsson, Linköpings Universitet. 9 november 2015 Sida 1 / 28
TANA17 Matematiska beräkningar med MATLAB för M, DPU Fredrik Berntsson, Linköpings Universitet 9 november 2015 Sida 1 / 28 Föreläsning 3 Linjära ekvationssystem. Invers. Rotationsmatriser. Tillämpning:
Läs merLABORATION cos (3x 2 ) dx I =
SF1518,SF1519,numpbd14 LABORATION 2 Trapetsregeln, ekvationer, ekvationssystem, MATLAB-funktioner Studera kapitel 6 och avsnitt 5.2.1, 1.3 och 3.8 i NAM parallellt med arbetet på denna laboration. Genomför
Läs merIntroduktion till programmering D0009E. Föreläsning 5: Fruktbara funktioner
Introduktion till programmering D0009E Föreläsning 5: Fruktbara funktioner 1 Retur-värden Funktioner kan både orsaka en effekt och returnera ett resultat. Hittills har vi ej definierat några egna funktioner
Läs merTANA17 Matematiska beräkningar med MATLAB för M, DPU. Fredrik Berntsson, Linköpings Universitet. 20 november 2015 Sida 1 / 30
TANA17 Matematiska beräkningar med MATLAB för M, DPU Fredrik Berntsson, Linköpings Universitet 20 november 2015 Sida 1 / 30 Föreläsning 5 Funktioner. Programstruktur. Rekursiva funktioner. Exempel: Skalärprodukt.
Läs merVariabler och konstanter
Variabler och konstanter Deklareras automatisk när man stoppar in data i dem. X = 7 Y = A Z = Kalle Definieras av att de har: ett namn (X) en datatyp (Integer) ett värde (t.ex. 7) Lagras i datorns minne!
Läs merDatorlära 6. Arbeta med strängar Inmatning med tangentbordet Bygga ett program med inmatning, funktioner, osv
Datorlära 6 Arbeta med strängar Inmatning med tangentbordet Bygga ett program med inmatning, funktioner, osv 1 Arbeta med Strängar Strängar skapas med text inom citattecken, enkla eller dubbla.!>> str=
Läs merIntroduktion till programmering SMD180. Föreläsning 5: Fruktbara funktioner
Introduktion till programmering Föreläsning 5: Fruktbara funktioner 1 Retur-värden Funktioner kan både orsaka en effekt och returnera ett resultat. Hittills har vi ej definierat några egna funktioner med
Läs merIndex. Vektorer och Elementvisa operationer. Summor och Medelvärden. Grafik i två eller tre dimensioner. Ytor. 20 januari 2016 Sida 1 / 26
TAIU07 Föreläsning 2 Index. Vektorer och Elementvisa operationer. Summor och Medelvärden. Grafik i två eller tre dimensioner. Ytor. 20 januari 2016 Sida 1 / 26 Matriselement och Index För att manipulera
Läs merRapportexempel, Datorer och datoranvändning
LUNDS TEKNISKA HÖGSKOLA Datorer och datoranvändning Institutionen för datavetenskap 2014/1 Rapportexempel, Datorer och datoranvändning På de följande sidorna finns en (fingerad) laborationsrapport som
Läs merTentamen TANA17 Matematiska beräkningar Provkod: DAT1 Godkänd: 8p av totalt 20p Hjälpmedel: MATLAB
MAI/Linköpings universitet Fredrik Berntsson Tentamen TANA17 Matematiska beräkningar Provkod: DAT1 Godkänd: 8p av totalt 20p Hjälpmedel: MATLAB Redovisning Lös först uppgifterna i Matlab. Då du har en
Läs merLaboration 3. Funktioner, vektorer, integraler och felskattning
1 SF1520 VT2017 NA, KTH 16 januari 2017 Laboration 3 Funktioner, vektorer, integraler och felskattning Efter den här laborationen skall du kunna använda och skriva egna funktioner med flera in- och utparametrar,
Läs mer15 februari 2016 Sida 1 / 32
TAIU07 Föreläsning 5 Linjära ekvationssystem. Minsta kvadrat problem. Tillämpning: Cirkelpassning. Geometriska objekt. Translationer. Rotationer. Funktioner som inargument. Tillämpning: Derivata. 15 februari
Läs merInledande matematik för I1. MVE011 läsperiod Matlab vecka 2 övningsuppgifter
Inledande matematik för I1 MVE011 läsperiod 1 010 Matlab vecka övningsuppgifter Linjära ekvationssystem Matlab har många kraftfulla redskap för att hantera matriser och därmed också linjära ekvationssystem.
Läs merLaboration 4: Lineär regression
LUNDS TEKNISKA HÖGSKOLA MATEMATIKCENTRUM MATEMATISK STATISTIK MATEMATISK STATISTIK, AK FÖR BYGG, FMS 601, HT-08 Laboration 4: Lineär regression 1 Syfte Denna laboration handlar om regressionsanalys och
Läs merKort om programmering i Matlab
CTH/GU 25/26 Matematiska vetenskaper Kort om programmering i Matlab Inledning Redan första tillfället gjorde ni ett litet program. Ni skrev ett script eller en skriptfil som beräknade summan 5 i 2 = 2
Läs merTANA17 Matematiska beräkningar med Matlab
TANA17 Matematiska beräkningar med Matlab Datorlektion 4. Funktioner 1 Egna Funktioner Uppgift 1.1 En funktion f(x) ges av uttrycket 0, x 0, f(x)= sin(x), 0 < x π 2, 1, x > π 2 a) Skriv en Matlab funktion
Läs merNewtons metod. 1 Inledning. 2 Newtons metod. CTH/GU LABORATION 6 MVE /2013 Matematiska vetenskaper
CTH/GU LABORATION 6 MVE011-2012/2013 Matematiska vetenskaper 1 Inledning Newtons metod Vi skall fortsätta med att lösa ekvationer. I förra veckan såg vi på intervallhalveringsmetoden. Den är pålitlig men
Läs merKTH 2D1240 OPEN vt 06 p. 1 (5) J.Oppelstrup
KTH 2D1240 OPEN vt 06 p. 1 (5) Tentamen i Numeriska Metoder gk II 2D1240 OPEN (& andra) Fredag 2006-04-21 kl. 13 16 Hjälpmedel: Del 1 inga, Del 2 rosa formelsamlingen som man får ta fram när man lämnar
Läs merMatematisk analys för ingenjörer Matlabövning 2 Numerisk ekvationslösning och integration
10 februari 2017 Matematisk analys för ingenjörer Matlabövning 2 Numerisk ekvationslösning och integration Syfte med övningen: Introduktion till ett par numeriska metoder för lösning av ekvationer respektive
Läs merTSBB14 Laboration: Intro till Matlab 1D
TSBB14 Laboration: Intro till Matlab 1D Utvecklad av Maria Magnusson med mycket hjälp av Lasse Alfredssons material i kursen Introduktionskurs i Matlab, TSKS08 Avdelningen för Datorseende, Institutionen
Läs merTDDC74 Programmering: Abstraktion och modellering Dugga 2, , kl 17-19
TDDC74 Programmering: Abstraktion och modellering Dugga 2, 2017-04-06, kl 17-19 Läs alla frågorna först och bestäm dig för i vilken ordning du vill lösa uppgifterna. Uppgifterna är inte nödvändigtvis i
Läs merDemonstration av laboration 2, SF1901
KTH 29 November 2017 Laboration 2 Målet med dagens föreläsning är att repetera några viktiga begrepp från kursen och illustrera dem med hjälp av MATLAB. Laboration 2 har följande delar Fördelningsfunktion
Läs merLaboration: Vektorer och matriser
Laboration: Vektorer och matriser Grundläggande om matriser Begreppet matris är en utvidgning av vektorbegreppet, och det används bl a när man löser linjära ekvationssystem. Namnet Matlab står för MATrix
Läs merTDDC74 Programmering: Abstraktion och modellering Datordugga 2 - exempel
TDDC74 Programmering: Abstraktion och modellering Datordugga 2 - exempel Läs alla frågorna först och bestäm dig för i vilken ordning du vill lösa uppgifterna. Uppgifterna är inte nödvändigtvis i svårighetsordning.
Läs merFrån labben: if, for och while. Från labben: if, for och while. Från labben: if, for och while. Från labben: if, for och while
Programmering Beräkningsvetenskap I/KF n Det finns tre grundläggande strukturer i programmering, s k kontrollstrukturer Alternativ, if if logiskt uttryck if logiskt uttryck 1 elseif logiskt uttryck 2 :
Läs merTAIU07 Matematiska beräkningar med Matlab
TAIU07 Matematiska beräkningar med Matlab Datorlektion 2. Villkor och Repetition 1 Logiska uttryck Uppgift 1.1 Låt a=3 och b=6 Vad blir resultatet av testerna ab? Uppgift 1.2 Låt a, b,
Läs merTentamen TAIU07 Matematiska beräkningar med MATLAB för MI
TEKNISKA HÖGSKOLAN I LINKÖPING Matematiska institutionen Beräkningsmatematik/Fredrik Berntsson Tentamen TAIU07 Matematiska beräkningar med MATLAB för MI Tid: 8-12, 19:e Mars, 2019 Provkod: TEN1 Hjälpmedel:
Läs merNUMPROG, 2D1212, vt Föreläsning 1, Numme-delen. Linjära ekvationssystem Interpolation, Minstakvadratmetoden
NUMPROG, D, vt 006 Föreläsning, Numme-delen Linjära ekvationssystem Interpolation, Minstakvadratmetoden En av de vanligaste numeriska beräkningar som görs i ingenjörsmässiga tillämpningar är att lösa ett
Läs merTentamen TAIU07 Matematiska beräkningar med MATLAB för MI
TEKNISKA HÖGSKOLAN I LINKÖPING Matematiska institutionen Beräkningsmatematik/Fredrik Berntsson Tentamen TAIU07 Matematiska beräkningar med MATLAB för MI Tid: 8-12, 20 Mars, 2015 Provkod: TEN1 Hjälpmedel:
Läs merStudio 6: Dubbelintegral.
Studio 6: Dubbelintegral. Analys och Linjär Algebra, del C, K1/Kf1/Bt1, vt09 20 februari 2009 1 Repetition av enkelintegral I ALA B skrev du en MATLAB-funktion minintegral som beräknar integralen av en
Läs merCommand line argumenter. Objektorienterad Programmering (TDDC77) Vad blir resultatet? Nu då? Ahmed Rezine. Hösttermin 2016
Command line argumenter Objektorienterad Programmering (TDDC77) Föreläsning VI: eclipse, felsökning, felhantering Ahmed Rezine IDA, Linköpings Universitet Hösttermin 2016 /* Cla. java * Programmet illustrerar
Läs merObjektorienterad Programmering (TDDC77)
Objektorienterad Programmering (TDDC77) Föreläsning VI: eclipse, felsökning, felhantering Ahmed Rezine IDA, Linköpings Universitet Hösttermin 2016 Outline Felhantering Eclipse Felsökning Command line argumenter
Läs merTANA17 Matematiska beräkningar med MATLAB för M, DPU. Fredrik Berntsson, Linköpings Universitet. 26 november 2015 Sida 1 / 28
TANA17 Matematiska beräkningar med MATLAB för M, DPU Fredrik Berntsson, Linköpings Universitet 26 november 2015 Sida 1 / 28 Föreläsning 6 Minsta kvadrat problem. Polynom. Interpolation. Rötter. Tillämpningar:
Läs merBörja programmera. Kapitel 4 i kompendiet Jämförande uttryck Villkorssatser Loopar (slingor) Funktioner. Läs inte avsnitt 4.2.3
Börja programmera Kapitel 4 i kompendiet Jämförande uttryck Villkorssatser Loopar (slingor) Funktioner Läs inte avsnitt 4.2.3 2010-09-23 Datorlära, fysikexperiment - del 4 1 Jämförande uttryck 2010-09-23
Läs merMMA132: Laboration 1 Introduktion till MATLAB
MMA132: Laboration 1 Introduktion till MATLAB De flesta numeriska metoder låter oss få en tillräckligt bra lösning på ett matematiskt problem genom att byta ut komplexa matematiska operationer med kombinationer
Läs merSF1900 Sannolikhetsteori och statistik, HT 2017 Laboration 1 för CINEK2
Matematisk Statistik SF1900 Sannolikhetsteori och statistik, HT 2017 Laboration 1 för CINEK2 1 Introduktion Denna laboration är inte poänggivande utan är till för den som vill bekanta sig med MATLAB. Fokusera
Läs merTentamen del 1 SF1511, , kl , Numeriska metoder och grundläggande programmering
KTH Matematik Tentamen del SF5, 28-3-6, kl 8.-., Numeriska metoder och grundläggande programmering Namn:... Personnummer:... Program och årskurs:... Bonuspoäng. Ange dina bonuspoäng från kursomgången HT7-VT8
Läs merTentamen TANA17 Matematiska beräkningar Provkod: DAT1 Godkänd: 8p av totalt 20p Tid: 18:e augusti klockan
MAI/Linköpings universitet Fredrik Berntsson Tentamen TANA17 Matematiska beräkningar Provkod: DAT1 Godkänd: 8p av totalt 20p Tid: 18:e augusti klockan 8.00-12.00 Redovisning Lös först uppgifterna i Matlab.
Läs merIckelinjära ekvationer
Löpsedel: Icke-linjära ekvationer Ickelinjära ekvationer Beräkningsvetenskap I Varför är det svårt att lösa icke-linjära ekvationer? Iterativa metoder Bisektion/intervallhalvering Newton-Raphsons metod
Läs merx f (x) dx 1/8. Kan likhet gälla i sistnämnda relation. (Torgny Lindvall.) f är en kontinuerlig funktion på 1 x sådan att lim a
Elementa Årgång 50, 967 Årgång 50, 967 Första häftet 2603. Låt ξ, ξ 2,..., ξ n vara stokastiska variabler med väntevärden E[ξ i ], i =, 2,..., n. Visa att E[max(ξ, ξ 2,..., ξ n )] max(e[ξ ], E[ξ 2 ],...,
Läs mer3 Man kan derivera i Matlab genom att approximera derivator med differenskvoter. Funktionen cosinus deriveras för x-värdena på följande sätt.
Kontrolluppgifter 1 Gör en funktion som anropas med där är den siffra i som står på plats 10 k Funktionen skall fungera även för negativa Glöm inte dokumentationen! Kontrollera genom att skriva!"#$ &%
Läs merProgrammering i Matlab
CTH/GU 2/22 Matematiska vetenskaper Inledning Programmering i Matlab Redan i den första introduktionen var det ett par enkla programmeringsexempel. Ni skrev ett script eller skriptfil som beräknade summan
Läs merTentamen del 2 SF1511, , kl , Numeriska metoder och grundläggande programmering
KTH Matematik Tentamen del 2 SF1511, 2018-03-16, kl 8.00-11.00, Numeriska metoder och grundläggande programmering Del 2, Max 50p + bonuspoäng (max 4p). Rättas ast om del 1 är godkänd. Betygsgränser inkl
Läs merTANA17 Matematiska beräkningar med Matlab
TANA17 Matematiska beräkningar med Matlab Datorlektion 3. Repetitionssatser och Programmering 1 Introduktion Denna övning syftar till att träna programmering med repetitionssatser och villkorssatser. Undvik
Läs merSyftet med den här laborationen är att du skall bli mer förtrogen med följande viktiga områden inom matematisk statistik
LUNDS TEKNISKA HÖGSKOLA MATEMATIKCENTRUM MATEMATISK STATISTIK DATORLABORATION 4 MATEMATISK STATISTIK, AK FÖR I, FMS 01, HT-07 Laboration 4: Stora talens lag, Centrala gränsvärdessatsen, enkla punktskattningar
Läs merMMA132: Laboration 1 & 2 Introduktion till MATLAB
MMA132: Laboration 1 & 2 Introduktion till MATLAB De flesta numeriska metoder låter oss få en tillräckligt bra lösning på ett matematiskt problem genom att byta ut komplexa matematiska operationer med
Läs merLaboration 3 HI1024, Programmering, grundkurs, 8.0 hp
Laboration 3 HI1024, Programmering, grundkurs, 8.0 hp Dataingenjörsprogrammet, elektroingenjörsprogrammet och medicinsk teknik KTH Skolan för Teknik och Hälsa Redovisning: Se Kurs-PM om hur redovisningen
Läs merMathematica. Utdata är Mathematicas svar på dina kommandon. Här ser vi svaret på kommandot från. , x
Mathematica Första kapitlet kommer att handla om Mathematica det matematiska verktyg, som vi ska lära oss hantera under denna kurs. Indata När du arbetar med Mathematica ger du indata i form av kommandon
Läs merLaboration 3. Funktioner, vektorer, integraler och felskattning
1 SF1520 K2 HT2014 NA 21 december 2015 Laboration 3 Funktioner, vektorer, integraler och felskattning Efter den här laborationen skall du kunna använda och skriva egna funktioner med flera in- och utparametrar,
Läs mer1.1 MATLABs kommandon för matriser
MATLABs kommandon för matriser Det finns en mängd kommandon för att hantera vektorer, matriser och linjära ekvationssystem Vi ger här en kort sammanfattning av dessa kommandon För en mera detaljerad diskussion
Läs merTentamen TAIU07 Matematiska beräkningar med MATLAB för MI
TEKNISKA HÖGSKOLAN I LINKÖPING Matematiska institutionen Beräkningsmatematik/Fredrik Berntsson Tentamen TAIU07 Matematiska beräkningar med MATLAB för MI Tid: 14-18, 22 Mars, 2016 Provkod: TEN1 Hjälpmedel:
Läs merMatlabföreläsningen. Lite mer och lite mindre!
Inmatning: Här är lite exempel på inmatning i Matlab: >> pi 3.1416 >> format long >> ans 3.141592653589793 Matlabföreläsningen Lite mer och lite mindre! >> format %återställer format (%- tecknet gör att
Läs merSanningar om programmering
Block 3: Programmering, del 1 Beräkningsvetenskap I Sanningar om programmering n Ett program är ett antal kommandon och särskilda strukturer lagrade i en eller flera filer n Att utveckla och skriva program
Läs merSanningar om programmering. Sanningar om programmering. Programmeringsprocessen. Att skriva program i Matlab. Programmeringsprocessen
Sanningar om programmering Block 3: Programmering Beräkningsvetenskap I Ett program är ett antal kommandon och särskilda strukturer lagrade i en eller flera filer Att utveckla och skriva program kallas
Läs merMATLAB the Matrix Laboratory. Introduktion till MATLAB. Martin Nilsson. Enkel användning: Variabler i MATLAB. utvecklat av MathWorks, Inc.
Introduktion till MATLAB Martin Nilsson Avdelningen för teknisk databehandling Institutionen för informationsteknologi Uppsala universitet MATLAB the Matrix Laboratory utvecklat av MathWorks, Inc. Matematisk
Läs merBlock 5: Ickelineära. ekvationer? Läroboken. Löpsedel: Icke-lineära. ekvationer. Vad visade laborationen? Vad visade laborationen?
Block 5: Ickelineära ekvationer Löpsedel: Icke-lineära ekvationer Varför är det svårt att lösa ickelineära ekvationer? Iterativa metoder Bisektion/intervallhalvering Newton-Raphsons metod Noggrannhet/stoppvillkor
Läs mer