week 1 - people | mit csailpeople.csail.mit.edu/fao/docs/scicomp13/sc-1-slides.pdf · scientific...
TRANSCRIPT
![Page 2: Week 1 - People | MIT CSAILpeople.csail.mit.edu/fao/docs/SciComp13/SC-1-slides.pdf · Scientific Computing: What is it about? Computing: we will learn to 'program' Really: make the](https://reader034.vdocuments.us/reader034/viewer/2022042401/5f0fe1027e708231d44656ac/html5/thumbnails/2.jpg)
Good Choice!
Let me start: Congratulations! There is virtually no branch of science that can do
without scientific computations... Exact science require a way of thinking that is closely
linked with math and programming
![Page 3: Week 1 - People | MIT CSAILpeople.csail.mit.edu/fao/docs/SciComp13/SC-1-slides.pdf · Scientific Computing: What is it about? Computing: we will learn to 'program' Really: make the](https://reader034.vdocuments.us/reader034/viewer/2022042401/5f0fe1027e708231d44656ac/html5/thumbnails/3.jpg)
Scientific Computing: What is it about?
Computing: we will learn to 'program' Really: make the computer do what you want. In this course we will work with
Matlab, or (free software) Octave.
Scientific: We will deal with scientific problems. Mostly based on calculus and linear algebra.
![Page 4: Week 1 - People | MIT CSAILpeople.csail.mit.edu/fao/docs/SciComp13/SC-1-slides.pdf · Scientific Computing: What is it about? Computing: we will learn to 'program' Really: make the](https://reader034.vdocuments.us/reader034/viewer/2022042401/5f0fe1027e708231d44656ac/html5/thumbnails/4.jpg)
Scientific Computing - Goals
accustomed with Matlab and Mathematica. familiar with basics of programming overview of some topics scientific computation:
(non-)linear systems, numerical and symbolic integration, differential equations and simulation.
who likes math? why you should care about it!
![Page 5: Week 1 - People | MIT CSAILpeople.csail.mit.edu/fao/docs/SciComp13/SC-1-slides.pdf · Scientific Computing: What is it about? Computing: we will learn to 'program' Really: make the](https://reader034.vdocuments.us/reader034/viewer/2022042401/5f0fe1027e708231d44656ac/html5/thumbnails/5.jpg)
Why Scientific Computing?
Why mathematical models? precise understanding!
Why use computers? by hand: only very simple models... Usually: no closed form solution.
E.g., x5 – x +1 = 0 (solving a polynomial equation of degree > 4)
But can get numerical approximations! Make them do what you want: programming
![Page 6: Week 1 - People | MIT CSAILpeople.csail.mit.edu/fao/docs/SciComp13/SC-1-slides.pdf · Scientific Computing: What is it about? Computing: we will learn to 'program' Really: make the](https://reader034.vdocuments.us/reader034/viewer/2022042401/5f0fe1027e708231d44656ac/html5/thumbnails/6.jpg)
Alright, so what is programming?
Programming is about making a machine (computer) do what you want it to.
difference with a oven or other machines?
![Page 7: Week 1 - People | MIT CSAILpeople.csail.mit.edu/fao/docs/SciComp13/SC-1-slides.pdf · Scientific Computing: What is it about? Computing: we will learn to 'program' Really: make the](https://reader034.vdocuments.us/reader034/viewer/2022042401/5f0fe1027e708231d44656ac/html5/thumbnails/7.jpg)
Alright, so what is programming?
Programming is about making a machine (computer) do what you want it to.
difference with a oven or other machines? → a computer can do many tasks
and programming let's you do that! We focus on scientific computations.
Example: how many km is 1 light year?
![Page 8: Week 1 - People | MIT CSAILpeople.csail.mit.edu/fao/docs/SciComp13/SC-1-slides.pdf · Scientific Computing: What is it about? Computing: we will learn to 'program' Really: make the](https://reader034.vdocuments.us/reader034/viewer/2022042401/5f0fe1027e708231d44656ac/html5/thumbnails/8.jpg)
How many km in a light year?
299792458 * 365 * 24 * 60 * 60 / 1000 = 9.4543e+12
These computations become difficult to interpret! How about if we could name parts of this computation?
![Page 9: Week 1 - People | MIT CSAILpeople.csail.mit.edu/fao/docs/SciComp13/SC-1-slides.pdf · Scientific Computing: What is it about? Computing: we will learn to 'program' Really: make the](https://reader034.vdocuments.us/reader034/viewer/2022042401/5f0fe1027e708231d44656ac/html5/thumbnails/9.jpg)
How many km in a light year?
299792458 * 365 * 24 * 60 * 60 / 1000 = 9.4543e+12
These computations become difficult to interpret! How about if we could name parts of this computation?
meaning of '=' the names are called 'variables'
speed_of_light = 299792458 secs_per_year = 365 * 24 * 60 * 60m_per_lyear = speed_of_light * secs_per_yearkm_per_lyear = m_per_year / 1000
![Page 10: Week 1 - People | MIT CSAILpeople.csail.mit.edu/fao/docs/SciComp13/SC-1-slides.pdf · Scientific Computing: What is it about? Computing: we will learn to 'program' Really: make the](https://reader034.vdocuments.us/reader034/viewer/2022042401/5f0fe1027e708231d44656ac/html5/thumbnails/10.jpg)
Our first Matlab/Octave code!
This is our first Matlab code!
Matlab (Octave) is like a convenient calculator.
speed_of_light = 299792458 secs_per_year = 365 * 24 * 60 * 60m_per_lyear = speed_of_light * secs_per_yearkm_per_lyear = m_per_year / 1000
![Page 11: Week 1 - People | MIT CSAILpeople.csail.mit.edu/fao/docs/SciComp13/SC-1-slides.pdf · Scientific Computing: What is it about? Computing: we will learn to 'program' Really: make the](https://reader034.vdocuments.us/reader034/viewer/2022042401/5f0fe1027e708231d44656ac/html5/thumbnails/11.jpg)
Overview
Population models functions plotting
How numbers are represented
![Page 12: Week 1 - People | MIT CSAILpeople.csail.mit.edu/fao/docs/SciComp13/SC-1-slides.pdf · Scientific Computing: What is it about? Computing: we will learn to 'program' Really: make the](https://reader034.vdocuments.us/reader034/viewer/2022042401/5f0fe1027e708231d44656ac/html5/thumbnails/12.jpg)
Overview – Interpolation
In the study of Geysers, an important quantity is the internal energy of steam.
(from Etter, 2011, Introduction to MATLAB)
Temp. (Celsius) int. energy (kJ/kg)
100 2506.7
150 2582.8
200 2658.1
250 2733.7
300 2810.4
400 2967.9
500 3131.6
50 100 150 200250300 350 400450 500 5500
500
1000
1500
2000
2500
3000
3500
int. energy (kJ/kg)
![Page 13: Week 1 - People | MIT CSAILpeople.csail.mit.edu/fao/docs/SciComp13/SC-1-slides.pdf · Scientific Computing: What is it about? Computing: we will learn to 'program' Really: make the](https://reader034.vdocuments.us/reader034/viewer/2022042401/5f0fe1027e708231d44656ac/html5/thumbnails/13.jpg)
Overview – differentiation/integration
Differentiation Determine the
vertical speed
Integration how far did
we go?
0 0.1 0.2 0.3 0.4 0.5 0.6 0.70
0.05
0.1
0.15
0.2
0.25
0.3
0.35
0.4
0.45
frog height(t)
t v(t) km/h
0 80
30 120
65 128
120 122
728 120
733 0
798 20
836 20
941 70
970 120
1350 123
1404 90
enter highway ramp
exit highway ramp
traffic jam
0 500 1000 15000
20
40
60
80
100
120
140
v(t) km/h
![Page 14: Week 1 - People | MIT CSAILpeople.csail.mit.edu/fao/docs/SciComp13/SC-1-slides.pdf · Scientific Computing: What is it about? Computing: we will learn to 'program' Really: make the](https://reader034.vdocuments.us/reader034/viewer/2022042401/5f0fe1027e708231d44656ac/html5/thumbnails/14.jpg)
Overview – algorithm
Find the root...?
To solve this problem: numerical algorithm. algorithm = cook-book recipe an algorithm can be implemented
(converted to code in a programming language).
y
x
![Page 15: Week 1 - People | MIT CSAILpeople.csail.mit.edu/fao/docs/SciComp13/SC-1-slides.pdf · Scientific Computing: What is it about? Computing: we will learn to 'program' Really: make the](https://reader034.vdocuments.us/reader034/viewer/2022042401/5f0fe1027e708231d44656ac/html5/thumbnails/15.jpg)
Overview – simulation
Also basic steps: simulation!
we will keep it simple, though... difference equations (e.g., population models) differential equations (e.g., physics)
![Page 16: Week 1 - People | MIT CSAILpeople.csail.mit.edu/fao/docs/SciComp13/SC-1-slides.pdf · Scientific Computing: What is it about? Computing: we will learn to 'program' Really: make the](https://reader034.vdocuments.us/reader034/viewer/2022042401/5f0fe1027e708231d44656ac/html5/thumbnails/16.jpg)
Practicalities
About me Computer Science / AI
Book:
Introduction to MATLAB. Delores M. Etter. 2nd ed.
Course manual on Eleum and my website. All information on my website (under 'teaching'):
http://people.csail.mit.edu/fao/
Name: Frans Oliehoek Department: DKE (RAI group) Location: SSK 39, room 2.001 Tel.: +31 43 3883485 Email: [email protected] WWW: http://people.csail.mit.edu/fao/
![Page 17: Week 1 - People | MIT CSAILpeople.csail.mit.edu/fao/docs/SciComp13/SC-1-slides.pdf · Scientific Computing: What is it about? Computing: we will learn to 'program' Really: make the](https://reader034.vdocuments.us/reader034/viewer/2022042401/5f0fe1027e708231d44656ac/html5/thumbnails/17.jpg)
Practicalities
Attendance standard MSC rules - 85%
Grades based on: Show your work at beginning of next lab. Pop-quiz questions hand-in assignments (40%)
follow the instructions!
Work individually... helping each other: great! do not copy
Name: Frans Oliehoek Department: DKE (RAI group) Location: SSK 39, room 2.001 Tel.: +31 43 3883485 Email: [email protected] WWW: http://people.csail.mit.edu/fao/
![Page 18: Week 1 - People | MIT CSAILpeople.csail.mit.edu/fao/docs/SciComp13/SC-1-slides.pdf · Scientific Computing: What is it about? Computing: we will learn to 'program' Really: make the](https://reader034.vdocuments.us/reader034/viewer/2022042401/5f0fe1027e708231d44656ac/html5/thumbnails/18.jpg)
Let's get started
Today: Mathematica
Assignments are posted on my website.
http://people.csail.mit.edu/fao download the notebook open it in Mathematica, and work through it