Vetenskapsdagen 2016 SciLab för laborativa inslag i matematik eller fysik

Relevanta dokument
TANA81: Simuleringar med Matlab

Variabler. TANA81: Beräkningar med Matlab. Matriser. I Matlab skapas en variabel genom att man anger dess namn och ger den ett värde:

Tentamen TANA17 Matematiska beräkningar Provkod: DAT1 Godkänd: 8p av totalt 20p Hjälpmedel: MATLAB

TANA17 Matematiska beräkningar med Matlab

Logik och Jämförelser. Styrsatser: Villkorssatsen if och repetitonssatsen for. Scriptfiler. Kommentarer. Tillämpningar: Ett enkelt filter.

Laboration: Grunderna i MATLAB

Tentamen TANA17 Matematiska beräkningar Provkod: DAT1 Godkänd: 8p av totalt 20p Tid: 14:e januari klockan

Tentamen TAIU07 Matematiska beräkningar med MATLAB för MI

Matematisk analys för ingenjörer Matlabövning 3 Numerisk lösning av differentialekvationer

Tentamen TANA17 Matematiska beräkningar Provkod: DAT1 Godkänd: 9p av totalt 20p Hjälpmedel: MATLAB

TANA17 Matematiska beräkningar med MATLAB för M, DPU. Fredrik Berntsson, Linköpings Universitet. 2 november 2015 Sida 1 / 23

TANA17 Matematiska beräkningar med Matlab

TANA17 Matematiska beräkningar med MATLAB för M, DPU. Fredrik Berntsson, Linköpings Universitet. 9 november 2015 Sida 1 / 28

Tentamen TAIU07 Matematiska beräkningar med MATLAB för MI

TANA17 Matematiska beräkningar med MATLAB för M, DPU. Fredrik Berntsson, Linköpings Universitet. 27 oktober 2015 Sida 1 / 31

Projektilrörelse med flera tillämpningar inom fotboll

Tentamen TAIU07 Matematiska beräkningar med MATLAB för MI

Tentamen TANA17 Matematiska beräkningar Provkod: DAT1 Godkänd: 8p av totalt 20p Tid: 18:e augusti klockan

Inledande matematik för I1. MVE011 läsperiod Matlab vecka 2 övningsuppgifter

TANA17 Matematiska beräkningar med MATLAB för M, DPU. Fredrik Berntsson, Linköpings Universitet. 26 november 2015 Sida 1 / 28

Tentamen TANA17 Matematiska beräkningar Provkod: DAT1 Godkänd: 8p av totalt 20p Tid: 21:a April klockan

Introduktion till algoritmer - Lektion 4 Matematikgymnasiet, Läsåret Lektion 4

Tentamen i Teknisk-Vetenskapliga Beräkningar

Introduktion till MATLAB

TAIU07 Matematiska beräkningar med MATLAB för MI. Fredrik Berntsson, Linköpings Universitet. 15 januari 2016 Sida 1 / 26

2 februari 2016 Sida 1 / 23

Tentamen TAIU07 Matematiska beräkningar med MATLAB för MI

k 1 B k 2 C ges av dx 1 /dt = k 1 x 1 x 1 (0) = 100 dx 2 /dt = k 1 x 1 k 2 x 2 x 2 (0) = 0 dx 3 /dt = k 2 x 2 x 3 (0) = 0

Ordinära differentialekvationer,

Programmeringsuppgift Game of Life

15 februari 2016 Sida 1 / 32

TANA17 Matematiska beräkningar med Matlab

LABORATIONSHÄFTE NUMERISKA METODER GRUNDKURS 1, 2D1210 LÄSÅRET 03/04. Laboration 3 3. Torsionssvängningar i en drivaxel

Komponentvisa operationer,.-notation Multiplikation (*), division (/) och upphöj till (ˆ) av vektorer följer vanliga vektoralgebraiska

Lennart Edsberg Nada,KTH Mars 2003 LABORATIONSHÄFTE NUMERISKA METODER GRUNDKURS 1, 2D1210 LÄSÅRET 02/03. Laboration 3 4. Elmotor med resonant dämpare

TAIU07 Matematiska beräkningar med Matlab

MAM283 Introduktion till Matlab

Inledning. Kapitel Bakgrund. 1.2 Syfte

TAIU07 Matematiska beräkningar med Matlab

TSBB14 Laboration: Intro till Matlab 1D

MATLAB. Python. Det finns flera andra program som liknar MATLAB. Sage, Octave, Maple och...

Index. Vektorer och Elementvisa operationer. Summor och Medelvärden. Grafik i två eller tre dimensioner. Ytor. 20 januari 2016 Sida 1 / 26

Omtentamen i DV & TDV

Innehåll. Vad är MATLAB? Grunderna i MATLAB. Informationsteknologi. Informationsteknologi.

Kollisioner, rörelsemängd, energi

Tentamen TAIU07 Matematiska beräkningar med MATLAB för MI

Tentamen TANA17 Matematiska beräkningar Provkod: DAT1 Godkänd: 8p av totalt 20p Tid: 13:e januari klockan

TANA17 Matematiska beräkningar med MATLAB för M, DPU. Fredrik Berntsson, Linköpings Universitet. 4 december 2015 Sida 1 / 26

Fysikaliska modeller. Skapa modeller av en fysikalisk verklighet med hjälp av experiment. Peter Andersson IFM fysik, adjunkt

(a) Skriv en matlabsekvens som genererar en liknande figur som den ovan.

Matlab övningsuppgifter

Inlämningsuppgift 4 NUM131

Tentamen TAIU07 Matematiska beräkningar med MATLAB för MI

Tentamen i Beräkningsvetenskap I (nya versionen), 5.0 hp, Del A

LAB 4. ORDINÄRA DIFFERENTIALEKVATIONER. 1 Inledning. 2 Eulers metod och Runge-Kuttas metod

Matematisk Modellering

Laboration 4. Numerisk behandling av integraler och begynnelsevärdesproblem

Datorövning 1 Fördelningar

När man vill definiera en matris i MATLAB kan man skriva på flera olika sätt.

Laboration 4. Numerisk behandling av integraler och begynnelsevärdesproblem

ODE av andra ordningen, och system av ODE

Dagens program. Programmeringsteknik och Matlab. Administrativt. Viktiga datum. Kort introduktion till matlab. Övningsgrupp 2 (Sal Q22/E32)

Matematisk analys för ingenjörer Matlabövning 2 Numerisk ekvationslösning och integration

Byggnationen av Cheopspyramiden - ett visualiseringsprojekt. Mathias Bergqvist, Rikard Gehlin, Henrik Gunnarsson

SF1900 Sannolikhetsteori och statistik, HT 2017 Laboration 1 för CINEK2

Liten MATLAB introduktion

MATLAB the Matrix Laboratory. Introduktion till MATLAB. Martin Nilsson. Enkel användning: Variabler i MATLAB. utvecklat av MathWorks, Inc.

Gemensamt projekt: Matematik, Beräkningsvetenskap, Elektromagnetism. Inledning. Fysikalisk bakgrund

SF1626 Flervariabelanalys

M0043M Integralkalkyl och Linjär Algebra, H14, Matlab, Föreläsning 1

5B1146 med Matlab. Laborationsr. Laborationsgrupp: Sebastian Johnson Erik Lundberg, Ann-Sofi Åhn ( endst tal1-3

Matematisk Modellering

Extramaterial till Matematik Y

Numeriska metoder, grundkurs II. Dagens program. Gyllenesnittminimering, exempel Gyllenesnittetminimering. Övningsgrupp 1

Tentamen i Beräkningsvetenskap I och KF, 5.0 hp,

Department of Physics Umeå University 27 augusti Matlab för Nybörjare. Charlie Pelland

Övningar i MATLAB. 1. Antag x = 2 och y = 5. Beräkna följande i MATLAB a) yx 3 /(x-y) b) 3x/2y c) 3xy/2 d) x 5 /(x 5-1)

JavaScript Block Editor:

TENTAMEN I LINJÄR ALGEBRA OCH NUMERISK ANALYS F1/TM1, TMA

Exempel ode45 parametrar Miniprojekt 1 Rapport. Problemlösning. Anastasia Kruchinina. Uppsala Universitet. Januari 2016

Hemuppgift 1, SF1861 Optimeringslära, VT 2017

TAIU07 Matematiska beräkningar med Matlab

TANA17 Matematiska beräkningar med MATLAB för M, DPU. Fredrik Berntsson, Linköpings Universitet. 8 december 2015 Sida 1 / 22

MATLAB övningar, del1 Inledande Matematik

DIFFERENTIALEKVATIONER. INLEDNING OCH GRUNDBEGREPP

Uppgift 1 - programmet, Uppg6.m, visade jag på föreläsning 1. Luftmotståndet på ett objekt som färdas genom luft ges av formeln

Linjär algebra med tillämpningar, lab 1

Laboration 1 Mekanik baskurs

Matlabövning 1 Funktioner och grafer i Matlab

Integration av matematik och teknik på ingenjörsutbildningar

e 3 e 2 e 1 Kapitel 3 Vektorer i planet och i rummet precis ett sätt skrivas v = x 1 e 1 + x 2 e 2

Laboration 6. Ordinära differentialekvationer och glesa system

Introduktion till kursen och MATLAB

4x 2 dx = [polynomdivision] 2x x + 1 dx. (sin 2 (x) ) 2. = cos 2 (x) ) 2. t = cos(x),

TANA17 Matematiska beräkningar med MATLAB för M, DPU. Fredrik Berntsson, Linköpings Universitet. 20 november 2015 Sida 1 / 30

1 Förberedelser. 2 Att starta MATLAB, användning av befintliga m-filer. 3 Geometriskt fördelad avkomma

SF1669 Matematisk och numerisk analys II Lösningsförslag till tentamen DEL A. r cos t + (r cos t) 2 + (r sin t) 2) rdrdt.

SF1625 Envariabelanalys

UPG6 Miniprojekt 3: Kastparabler, projektiler, och raketer

Laboration 2 M0039M, VT2016

Transkript:

Vetenskapsdagen 2016 SciLab för laborativa inslag i matematik eller fysik Fredrik Berntsson (fredrik.berntsson@liu.se) 5 oktober 2016 Frame 1 / 23

Bakgrund och Syfte Inom kursen Fysik3 finns material som leder till lite svårare problem där datorhjälpmedel kan öka förståelsen. Vi ville lära eleverna att använda ett sådant program för att simulera ett fysikaliskt system och dra slutsatser från resultaten. Utveckling av tre Föreläsningar och två Datorövningar där eleverna får lära sig tillräckligt för att kunna genomföra en någorlunda komplicerad simulering. Samarbete med Berzeliusskolan i Linköping. 5 oktober 2016 Frame 2 / 23

Innehåll SciLab - Ett programpaket för vetenskapliga beräkningar. Kursplan - Fö 1, Fö 2, och Dator 1. SciLab introduktion. Programmering. Kursplan - Fö 3 och Dator 2. Begynnelsevärdesproblem. Simulering. Avslutning 5 oktober 2016 Frame 3 / 23

SciLab SciLab är ett interaktivt programsystem för tekniska beräkningar. Väldigt likt Matlab. Bra dokumentation. Saknar en hel del tillämpningspaket, som Simulink, men annars finns det mesta. Gratis från www.scilab.org. 5 oktober 2016 Frame 4 / 23

Exempel SciLab kan användas som miniräknare -->x=4.5;y=3.7; -->z=sin(x+3*y)/(1+x^2) z = 0.0050708 De flesta standard funktioner som log, exp, tan,..., finns tillgängliga. 5 oktober 2016 Frame 5 / 23

Exempel Lös ekvationssystemet Ax = b där ( ) ( 2.2 1.4 1.4 A =, b = 1.7 3.1 2.3 I SciLab skriver vi --> A = [ 2.2-1.4 ; 1.7-3.1 ]; --> b = [1.4 ; 2.3 ]; --> x= A\b; ). Vi får att x = ( 0.552 0.606 ) T. Det finns ett stort antal funktioner för att utföra beräkningar med matriser eller vektorer. 5 oktober 2016 Frame 6 / 23

Exempel Rita en graf över funktionen y = arctan(x) för 2<x<2. I SciLab skriver vi: --> x = -2:0.5:2; --> y = atan(x); --> plot( x,y, b*,x,y, r- ); För att få en jämnare kurva måste vi välja fler punkter (x k, y k ). 5 oktober 2016 Frame 7 / 23

SciLab innehåller ett komplett programspråk. En bra editor finns tillgänglig. Exempel Då ett antal rader skall upprepas ett fixt antal gånger används en for sats. Utnyttja en sådan för att beräkna summan I SciLab skriver vi: Detta ger S=1.6439. S = 1000 k=1 1 k 2. S=0; for k=1:1000 S=S+k^(-2); end 5 oktober 2016 Frame 8 / 23

Kursinnehåll Föreläsning 1 2 45 minuter - Introduktion: Varför vill man simulera fysikaliska system? - SciLab: Variabler, Matriser, Villkors- och Repetitionssatser, Grafer i 2D. Föreläsning 2 1 45 minuter - SciLab: Kommandofiler och funktioner. Ett exempel från sannolikhetsläran. Datorövning 1 1 45 minuter och ungefär 1 timme hemarbete. - SciLab: Både enkla och svårare programmeringsuppgifter. Lite med än vad som krävs för att lösa simuleringsuppgiften. 5 oktober 2016 Frame 9 / 23

Datorövning 1 Uppgift 6.1 Vad blir x(5) då följande program exekveras? x=zeros(5,1); for k=2:5 x(k)=x(k-1)+k; end Uppgift 6.3 Antag att en vektor x är given. Använd en for-sats för att hitta det största elementet i vektorn x. Uppgift 7.2 Skriv en funktion Maximum som tar en vektor x som inparameter och som beräknar det största elementet i vektorn. Funktionen skall kunna anropas enligt --> m = Maximum( [0.9 2.1-1.3 0.2] ) och m skall tilldelas värdet 2.1. 5 oktober 2016 Frame 10 / 23

Lösning Funktionen Maximum blir // Funktion för ett beräkna maximum function [m]=maximum( x ) n=length(x); m=x(1); for i=2:n if x(i)>m m=x(i); end end endfunction Det finns enklare uppgifter som tränar alla moment innan allt sammanfogas. Dessutom övningar på integraler och ekvationslösning med SciLab. 5 oktober 2016 Frame 11 / 23

Föreläsning 3 1 45 minuter - Begynnelsevärdesproblem. En Järnvägsvagn. - Hur rör sig en fotboll? Datorövning 2 1 45 minuter. - Simulering av fotbollen. Luftmotstånd. Magnuskraft. 5 oktober 2016 Frame 12 / 23

Föreläsning 3 Definition Ett begynnelsevärdesproblem kan beskrivas som: Hitta y(t) sådan att och y(0) = y 0. dy dt = f (t, y(t)), t > 0, Många problem från teknik och naturvetenskap kan formuleras som begynnelsevärdesproblem. I SciLab finns funktionen ode för att beräkna lösningen till ett begynnelsevärdesproblem. Vi behöver skriva en funktion som beräknar f (t, y). 5 oktober 2016 Frame 13 / 23

Exempel: En Järnvägsvagn En järnvägsvagn med massa 1376 kg rör sig med v = 2.1 m/s mot en bromskloss bestående av en ideal fjäder med fjäderkonstant 1.91 kn/m. v 0 =2.1 m/s P 0 =0 m P F =5 m Frågor Hur långt trycks fjädern in? Hur lång tid tar det innan vagnen vänt och passerat P 0 = 0 igen? Är lösningen realistisk? 5 oktober 2016 Frame 14 / 23

Matematisk Modell Målet är att beräkna vagnens position p(t) för t > 0. Vi behöver även beräkna vagnens hastighet v(t). Rörelseekvationerna är dp dt = v(t) och dv dt = a(t) = F(t)/m, där F(t) är den kraft som verkar på vagnen vid tiden t och m är vagnens massa. Antagandet om ideal fjäder med fjäderkonstant K ger { K(p(t) PF ), p > P F(t) = F, 0, p P F. Vi får ett begynnelsevärdes problem: ( ) ( ) d p(t) v(t) =, dt v(t) F(t)/m ( p(0) v(0) ) = ( 0 2.1 ). 5 oktober 2016 Frame 15 / 23

Lösning Inför S(t) = (p(t), v(t)) T och skriv en funktion function [ds]=vagn(t,s) m=1376;k=1910;pf=5.0; if p>pf then F=-K*(p-Pf); else F=0; end; ds=[ v ; F/m]; endfunction p=s(1);v=s(2); Vi kan nu lösa begynnelsevärdes problemet med ode t=0:0.1:8; S0=[ 0 ; 2.1 ]; S=ode(S0,0,t,Vagn); p=s(1,:);v=s(2,:); plot(t,p, b- );plot(t,v, r-- ); 5 oktober 2016 Frame 16 / 23

Vi ser att vagnen vänder ungefär vid p(3.7)=6.782 m. Då är hastigheten v(3.7) = 0.0351. Relativt enkelt att införa fler effekter som exempelvis friktion. 5 oktober 2016 Frame 17 / 23

Simulering av en fotboll Vi söker bollens position p(t) och dess hastighet v(t). Vilka krafter verkar på fotbollen? F L v F D F m = m g Vi har Gravitation, Luftmotstånd, och Magnuskraft. Dessa ges av F D (t)= 1 2 ρac D v(t) v(t) och F L (t)=ρac L ( ω v(t)). 5 oktober 2016 Frame 18 / 23

Datorövning 2 Mål och Syfte Eleverna skall arbeta med en existerande SciLab kod som simulerar bollrörelse där hänsyn endast tas till gravitationen. Simulering skall användas för att besvara flera frågor. Modellen skall kompletteras med luftmotstånd och Magnus kraft. I övningen beskrivs en straffspark av Roberto Carlos från 1997 som finns på YouTube. 5 oktober 2016 Frame 19 / 23

Uppgift Då man genomför en simulering är man helt beroende av flera parametrar som är olika svåra att mäta. Gravitationskonstanten g och bollens massa m kan mätas med hög noggranhet. En höghastighetskamera kan dessutom mäta bollens utgångshastighet med bra noggranhet. Däremot är koefficienten C D som bestämmer luftmotståndet betydligt svårare att mäta. Antag att vi i ett experiment skjuter iväg en boll med utgångshastighet V 0 = (17.32, 0.45, 11.51) T [m/s]. Bollen landar vid (x e, y e ) = (23.50, 0.61). Övriga parametrar har de värden som givits tidigare. Använd denna information för att bestämma luftmotståndskoefficienten C D i det aktuella fallet. 5 oktober 2016 Frame 20 / 23

Uppgift Magnuskraften gör det möjligt att skruva en boll. Hur snabbt måste bollen rotera för att få tillräcklig skruv för att gå in i målet? Till vänster ett rent bakåtspin, ω = (0 6.9 0) T. Till höger har sidospin lags till och bollen går in i mål. 5 oktober 2016 Frame 21 / 23

Hur gick det SciLab Föreläsning 1, 2 och Datorövning 2 upplevs som lite svåra. Det är högt tempo och många uppgifter som skall göras. Simuleringen Förelösning 3 upplevs som lite enklare. Efter Järnvägsvagnen kan eleverna förstå hur simuleringsprogramet för fotbollen är uppbyggt. Elever utan tidigare programmeringserfarenhet hinner färdigt. Elever som kunde programmera brukar kunna utvckla modellen ytterligare så att bollen kan studsa i marken eller så att bollens rotation bromsas. 5 oktober 2016 Frame 22 / 23

Sammanfattning SciLab är ett gratis programpaket som kan användas för att simulera fysikaliska förlopp. Det är realistiskt att använda på gymnasiet. Det material som utvecklats (Föreläsningar och Datorövningar) finns tillgängligt ifall någon är intresserad. Tack för er uppmärksamhet! 5 oktober 2016 Frame 23 / 23