cs 100 m introduction to computing using matlab

34
CS 100 M Introduction to Computing Using Matlab Fall 2007 Professors D. Fan and C. Van Loan http://www.cs.cornell.edu/courses/cs100m/2007fa

Upload: others

Post on 18-Dec-2021

5 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: CS 100 M Introduction to Computing Using Matlab

CS 100 MIntroduction to Computing

Using Matlab

Fall 2007Professors D. Fan and C. Van Loan

http://www.cs.cornell.edu/courses/cs100m/2007fa

Page 2: CS 100 M Introduction to Computing Using Matlab

Today

Discuss 100M vs 100R vs 100J

Review the 100M philosophy & syllabus.

Step through course logistics.

Page 3: CS 100 M Introduction to Computing Using Matlab

The 100M Goal…

…is to develop a practical intuition aboutcomputer problem-solving and its role inscience and engineering.

Page 4: CS 100 M Introduction to Computing Using Matlab

The Vehicle…

…is the Matlab Environment where youcan easily

• Develop programs.• Display results & ideas graphically.• Interact with large data sets.• Process images and sound.

Page 5: CS 100 M Introduction to Computing Using Matlab

The 100M Goal…

…is to develop a practical intuition aboutcomputer problem-solving and its role inscience and engineering.

Let’s discuss the key words

Page 6: CS 100 M Introduction to Computing Using Matlab

What do we mean by “Intuition”?

If intuition is a sense of direction, then computational intuition is a sense of computational direction.

Page 7: CS 100 M Introduction to Computing Using Matlab

A Sense of Geometry

Ray Tracing100 million triangles

Page 8: CS 100 M Introduction to Computing Using Matlab

A Sense of Complexity

Search Trees

Design Space

Billions of Choices

Page 9: CS 100 M Introduction to Computing Using Matlab

A Sense of Probabilityand Statistics Via Simulation

Sweep Number = 12 Field Strength = −400

Sweep Number = 0 Field Strength = −60

Page 10: CS 100 M Introduction to Computing Using Matlab

g

g

g

g

g

g

g

A Sense of Approximation,Error, and Noise

Pi = 22/71/3 = .3333

Page 11: CS 100 M Introduction to Computing Using Matlab

The 100M Goal…

…is to develop a practical intuition aboutcomputer problem-solving and its role inscience and engineering.

Page 12: CS 100 M Introduction to Computing Using Matlab

What Goes on In Science?

Models Are Built

Data is Gathered

Page 13: CS 100 M Introduction to Computing Using Matlab

Enter the Computer

Experimental Science

Theoretical Science

Computational Science

Page 14: CS 100 M Introduction to Computing Using Matlab

Looking For Patterns

DNA A Protein

Page 15: CS 100 M Introduction to Computing Using Matlab

Build one of these for Proteins...

Page 16: CS 100 M Introduction to Computing Using Matlab

A Challenge

The data is there.

(“Tycho has cataloged the stars.”)

Now make sense of it!

(Where are the “genomic Keplers”!)

Page 17: CS 100 M Introduction to Computing Using Matlab

The 100M Goal…

…is to develop a practical intuition aboutcomputer problem-solving and its role inscience and engineering.

Page 18: CS 100 M Introduction to Computing Using Matlab

What Goes On in Engineering?

Design Experimentation

Page 19: CS 100 M Introduction to Computing Using Matlab

Enter the Computer

Experimental Science

Theoretical Science

Computational Science

Engineering

EngineeringEngineering

Page 20: CS 100 M Introduction to Computing Using Matlab

The 100M Goal…

…is to develop a practical intuition aboutcomputer problem-solving and its role inscience and engineering.

Page 21: CS 100 M Introduction to Computing Using Matlab

What Do We Mean By“Computer Problem-Solving”?

The key idea:

Algorithm. A step-by-step procedure that takes you from a prescribed set of inputs to a prescribed set of outputs.

Page 22: CS 100 M Introduction to Computing Using Matlab

Make a roundtripvisiting each city exactlyonce. Findtheshortestpossible path.

The“Traveling Salesperson”Problem

Page 23: CS 100 M Introduction to Computing Using Matlab

Algorithm:always go to the nearest unvisited city

Page 24: CS 100 M Introduction to Computing Using Matlab

The 100M Goal…

…is to develop a practical intuition aboutcomputer problem-solving and its role inscience and engineering.

Page 25: CS 100 M Introduction to Computing Using Matlab

What Do We Mean By “Practical”?

It means that you carry away useful computer skills.

Page 26: CS 100 M Introduction to Computing Using Matlab

Theory versus Practice

Prove that the program controlling this missilesilo is correct.

A theoretical exercise with great practical importance.

Page 27: CS 100 M Introduction to Computing Using Matlab

Course Logistics

Page 28: CS 100 M Introduction to Computing Using Matlab

Grading• Best five of six projects (25%)• Section/Lab exercises + in-class quizzes

(5%). We count the best x of y items, x<y.• Prelim 1 (10%)• Prelim 2 (20%)• Prelim 3 (20%)• Final exam (30%)

(Weight of worst exam reduced by 10%)

Page 29: CS 100 M Introduction to Computing Using Matlab

Course Materials

• Chapters from Foundations of Computational Science & Engineering by Fan & Van Loan will be available on-line through CMS

• Engineering Computation by David Smith

• An iClicker clicker

• MATLAB Student Version R14 optional because you can use it in the public labs:

Page 30: CS 100 M Introduction to Computing Using Matlab

Consulting & Computing

• Consulting in ACCEL Green Rm(Engineering Library). Check course website for hours.

• Some public labs:– Upson B-7– ACCEL (in Engineering Library, Carpenter

Hall)– North campus: RPCC, Clara Dickson

Page 31: CS 100 M Introduction to Computing Using Matlab

100M Sections

UP B7 Right & UP 207W 07:30-08:20pm21UP B7 Right & OH 218W 03:35-04:25pm8UP B7 Right & UP 109W 02:30-03:20pm7UP B7 Right & HO 206W 01:25-02:15pm6UP B7 Right & HO 206W 12:20-01:10pm5UP B7 Right & HO 362W 11:15-12:05pm20UP B7 Right & HO 360W 10:10-11:00am19UP B7 Right & PH 307T 03:35-04:25pm4UP B7 Right & SR 565T 02:30-03:20pm3UP B7 Right & HO 206T 01:25-02:15pm2UP B7 Right & HO 110T 12:20-01:10pm1

RoomTimeSec #

Sections 9-18 Belong to 100J

Page 32: CS 100 M Introduction to Computing Using Matlab

Academic Excellence Workshops

• Small, collaborative classes parallel to course

• Classes begin week of Sept 3th

CS100M M 7:30 - 9:25P UL CL3 F 2:30 - 4:25P PH 318

CS100J M 2:30 - 4:25P UL CL3 F 2:30 - 4:25P UL CL3

Page 33: CS 100 M Introduction to Computing Using Matlab

What to do now?

• Pick a course (and section)(add/drop: lecture and section and AEW)

• Start reading from the textbook

• Remember that your section starts meeting next week in the lab (Upson B-7)

Page 34: CS 100 M Introduction to Computing Using Matlab

And Check the Course Website

http://www.cs.cornell.edu/courses/cs100m/2007fa