25
Numerical Analysis Professor Donna Calhoun Office : MG241A Office Hours : Wednesday 10:00-12:00 and 1:00-3:00 Fall 2013 Math 465/565 http://math.boisestate.edu/~calhoun/teaching/Math565_Fall2013 Friday, September 6, 13

Numerical Analysis - Boise State Universitymath.boisestate.edu/~calhoun/teaching/Math565_Fall2013/lectures/... · Numerical analysis is a branch of mathematics that deals ... Newton’s

Embed Size (px)

Citation preview

Page 1: Numerical Analysis - Boise State Universitymath.boisestate.edu/~calhoun/teaching/Math565_Fall2013/lectures/... · Numerical analysis is a branch of mathematics that deals ... Newton’s

Numerical Analysis

Professor Donna Calhoun

Office : MG241AOffice Hours : Wednesday 10:00-12:00 and 1:00-3:00

Fall 2013Math 465/565

http://math.boisestate.edu/~calhoun/teaching/Math565_Fall2013

Friday, September 6, 13

Page 2: Numerical Analysis - Boise State Universitymath.boisestate.edu/~calhoun/teaching/Math565_Fall2013/lectures/... · Numerical analysis is a branch of mathematics that deals ... Newton’s

What is Numerical Analysis

Friday, September 6, 13

Page 3: Numerical Analysis - Boise State Universitymath.boisestate.edu/~calhoun/teaching/Math565_Fall2013/lectures/... · Numerical analysis is a branch of mathematics that deals ... Newton’s

What is Numerical Analysis

Numerical analysis is a branch of mathematics that deals with the understanding of how algorithms designed to solve mathematically posed questions behave when carried out (mostly on a computer).

Friday, September 6, 13

Page 4: Numerical Analysis - Boise State Universitymath.boisestate.edu/~calhoun/teaching/Math565_Fall2013/lectures/... · Numerical analysis is a branch of mathematics that deals ... Newton’s

What is Numerical Analysis

Numerical analysis is a branch of mathematics that deals with the understanding of how algorithms designed to solve mathematically posed questions behave when carried out (mostly on a computer).

• Consistency (does our algorithm approximate our mathematically posed question in some way?

Friday, September 6, 13

Page 5: Numerical Analysis - Boise State Universitymath.boisestate.edu/~calhoun/teaching/Math565_Fall2013/lectures/... · Numerical analysis is a branch of mathematics that deals ... Newton’s

What is Numerical Analysis

Numerical analysis is a branch of mathematics that deals with the understanding of how algorithms designed to solve mathematically posed questions behave when carried out (mostly on a computer).

• Consistency (does our algorithm approximate our mathematically posed question in some way?

• Stability (is our algorithm well-behaved in some sense and likely to run to completion?)

Friday, September 6, 13

Page 6: Numerical Analysis - Boise State Universitymath.boisestate.edu/~calhoun/teaching/Math565_Fall2013/lectures/... · Numerical analysis is a branch of mathematics that deals ... Newton’s

What is Numerical Analysis

Numerical analysis is a branch of mathematics that deals with the understanding of how algorithms designed to solve mathematically posed questions behave when carried out (mostly on a computer).

• Consistency (does our algorithm approximate our mathematically posed question in some way?

• Stability (is our algorithm well-behaved in some sense and likely to run to completion?)

• Convergence (do we approach the right answer as we increase the time or computational resources we allocate to a problem?)

Friday, September 6, 13

Page 7: Numerical Analysis - Boise State Universitymath.boisestate.edu/~calhoun/teaching/Math565_Fall2013/lectures/... · Numerical analysis is a branch of mathematics that deals ... Newton’s

What is Numerical Analysis

Numerical analysis is a branch of mathematics that deals with the understanding of how algorithms designed to solve mathematically posed questions behave when carried out (mostly on a computer).

• Consistency (does our algorithm approximate our mathematically posed question in some way?

• Stability (is our algorithm well-behaved in some sense and likely to run to completion?)

• Convergence (do we approach the right answer as we increase the time or computational resources we allocate to a problem?)

• Scalability (can we scale our algorithm to large versions of our problem without requiring exponentially more resources?)

Friday, September 6, 13

Page 8: Numerical Analysis - Boise State Universitymath.boisestate.edu/~calhoun/teaching/Math565_Fall2013/lectures/... · Numerical analysis is a branch of mathematics that deals ... Newton’s

Numerical analysis and computational science

Friday, September 6, 13

Page 9: Numerical Analysis - Boise State Universitymath.boisestate.edu/~calhoun/teaching/Math565_Fall2013/lectures/... · Numerical analysis is a branch of mathematics that deals ... Newton’s

Numerical analysis and computational science

Sidebar 1Definition of Computational Science

As a basis for responding to the charge from the Office of Science andTechnology Policy, the PITAC developed a definition of computational science. Thisdefinition recognizes the diverse components, ranging from algorithms, software,architecture, applications, and infrastructure that collectively representcomputational science.Computational science is a rapidly growing multidisciplinary field that usesadvanced computing capabilities to understand and solve complex problems.Computational science fuses three distinct elements:• Algorithms (numerical and non-numerical) and modeling and simulation

software developed to solve science (e.g., biological, physical, and social),engineering, and humanities problems

• Computer and information science that develops and optimizes the advancedsystem hardware, software, networking, and data management componentsneeded to solve computationally demanding problems

• The computing infrastructure that supports both the science and engineeringproblem solving and the developmental computer and information science

10

PR ES ID E NT ’ S INF ORMAT ION TECHNOLOGY ADV I SORY CO MMI T T EE

of disease, atom-by-atom construction of materials with previouslyunimaginable properties, miniaturization of devices down to the quantumlevel, and new energy sources and fuel technologies. But we are not mindingthe store of U.S. intellectual resources needed to capitalize on the scientificopportunities of the new century.

A dangerous consequence of our current complacency is that, as on the eveof Sputnik’s launch, we have not marshaled and focused our efforts to elevatecomputational science and the computing infrastructure to their appropriatestatus as a long-term, strategic national priority in education as well as R&D.Without such a commitment and focus, the PITAC believes, we cannotsustain U.S. scientific leadership, security, and economic prosperity in thedecades ahead.

What Is Computational Science?At one level, computational science is simply the application of computing

capabilities to the solution of problems in the real world – for example,enabling biomedical researchers rapidly to identify to which protein, andwhere on that protein, a candidate vaccine will most effectively bind. ThePITAC’s definition of computational science (Sidebar 1, below, and Figure 1on page 11) is intended, however, to underscore the reality that harnessingsoftware, hardware, data, and connectivity to help solve complex problemsnecessarily draws on the multidisciplinary skills represented in the computinginfrastructure as a whole.

Friday, September 6, 13

Page 10: Numerical Analysis - Boise State Universitymath.boisestate.edu/~calhoun/teaching/Math565_Fall2013/lectures/... · Numerical analysis is a branch of mathematics that deals ... Newton’s

Numerical analysis and computational science

Sidebar 1Definition of Computational Science

As a basis for responding to the charge from the Office of Science andTechnology Policy, the PITAC developed a definition of computational science. Thisdefinition recognizes the diverse components, ranging from algorithms, software,architecture, applications, and infrastructure that collectively representcomputational science.Computational science is a rapidly growing multidisciplinary field that usesadvanced computing capabilities to understand and solve complex problems.Computational science fuses three distinct elements:• Algorithms (numerical and non-numerical) and modeling and simulation

software developed to solve science (e.g., biological, physical, and social),engineering, and humanities problems

• Computer and information science that develops and optimizes the advancedsystem hardware, software, networking, and data management componentsneeded to solve computationally demanding problems

• The computing infrastructure that supports both the science and engineeringproblem solving and the developmental computer and information science

10

PR ES ID E NT ’ S INF ORMAT ION TECHNOLOGY ADV I SORY CO MMI T T EE

of disease, atom-by-atom construction of materials with previouslyunimaginable properties, miniaturization of devices down to the quantumlevel, and new energy sources and fuel technologies. But we are not mindingthe store of U.S. intellectual resources needed to capitalize on the scientificopportunities of the new century.

A dangerous consequence of our current complacency is that, as on the eveof Sputnik’s launch, we have not marshaled and focused our efforts to elevatecomputational science and the computing infrastructure to their appropriatestatus as a long-term, strategic national priority in education as well as R&D.Without such a commitment and focus, the PITAC believes, we cannotsustain U.S. scientific leadership, security, and economic prosperity in thedecades ahead.

What Is Computational Science?At one level, computational science is simply the application of computing

capabilities to the solution of problems in the real world – for example,enabling biomedical researchers rapidly to identify to which protein, andwhere on that protein, a candidate vaccine will most effectively bind. ThePITAC’s definition of computational science (Sidebar 1, below, and Figure 1on page 11) is intended, however, to underscore the reality that harnessingsoftware, hardware, data, and connectivity to help solve complex problemsnecessarily draws on the multidisciplinary skills represented in the computinginfrastructure as a whole.

Friday, September 6, 13

Page 11: Numerical Analysis - Boise State Universitymath.boisestate.edu/~calhoun/teaching/Math565_Fall2013/lectures/... · Numerical analysis is a branch of mathematics that deals ... Newton’s

Topics we will cover in this course

Some general topics we will cover

• Floating point arithmetic• Numerical root finding, (Bisection, fixed point iteration,

Newton’s Method)• Solving large linear systems of equations (LU

decomposition, iterative methods)• Finding curves through a given set of data points using

polynomial interpolation and approximation,• Numerical quadrature (approximating integrals)• Introduction to solving initial value problems

We will go beyond just learning the algorithms and how to program them to understanding the convergence and stability properties of the algorithm.

Friday, September 6, 13

Page 12: Numerical Analysis - Boise State Universitymath.boisestate.edu/~calhoun/teaching/Math565_Fall2013/lectures/... · Numerical analysis is a branch of mathematics that deals ... Newton’s

But I don’t know how to program!

Friday, September 6, 13

Page 13: Numerical Analysis - Boise State Universitymath.boisestate.edu/~calhoun/teaching/Math565_Fall2013/lectures/... · Numerical analysis is a branch of mathematics that deals ... Newton’s

But I don’t know how to program!

Yes, this course will require both hand-written exercises as well as programming. I suggest you consider one of the following languages for doing programming assignments :

• Matlab (nice graphics features, expensive)• C or C++ (not ideal for scientific computing)• Python (latest trend in scientific computing, free)• Fortran (old-school, but still widely used).

Friday, September 6, 13

Page 14: Numerical Analysis - Boise State Universitymath.boisestate.edu/~calhoun/teaching/Math565_Fall2013/lectures/... · Numerical analysis is a branch of mathematics that deals ... Newton’s

But I don’t know how to program!

Yes, this course will require both hand-written exercises as well as programming. I suggest you consider one of the following languages for doing programming assignments :

• Matlab (nice graphics features, expensive)• C or C++ (not ideal for scientific computing)• Python (latest trend in scientific computing, free)• Fortran (old-school, but still widely used).

I strongly discourage you from trying to do your programming assignments in Java, Octave, Scilab, Maple, Mathematica, Excel, Haskell, Perl, Lisp, .....

Friday, September 6, 13

Page 15: Numerical Analysis - Boise State Universitymath.boisestate.edu/~calhoun/teaching/Math565_Fall2013/lectures/... · Numerical analysis is a branch of mathematics that deals ... Newton’s

Matlab might be the easiest choice

Friday, September 6, 13

Page 16: Numerical Analysis - Boise State Universitymath.boisestate.edu/~calhoun/teaching/Math565_Fall2013/lectures/... · Numerical analysis is a branch of mathematics that deals ... Newton’s

Matlab might be the easiest choice

• Matlab, along side more traditional programming languages such as C, C++, Fortran has become one of the major platforms on which computational science is carried out.

Friday, September 6, 13

Page 17: Numerical Analysis - Boise State Universitymath.boisestate.edu/~calhoun/teaching/Math565_Fall2013/lectures/... · Numerical analysis is a branch of mathematics that deals ... Newton’s

Matlab might be the easiest choice

• Matlab, along side more traditional programming languages such as C, C++, Fortran has become one of the major platforms on which computational science is carried out.

• Originally designed as a computational “laboratory” for easily solving matrix equations, it has now branched into most areas of mathematics, with numerical tools for solving a wide range of complex problems in science and engineering,

Friday, September 6, 13

Page 18: Numerical Analysis - Boise State Universitymath.boisestate.edu/~calhoun/teaching/Math565_Fall2013/lectures/... · Numerical analysis is a branch of mathematics that deals ... Newton’s

Matlab might be the easiest choice

• Matlab, along side more traditional programming languages such as C, C++, Fortran has become one of the major platforms on which computational science is carried out.

• Originally designed as a computational “laboratory” for easily solving matrix equations, it has now branched into most areas of mathematics, with numerical tools for solving a wide range of complex problems in science and engineering,

• Integrated graphing capabilities make it an ideal tool for quickly prototyping codes and visualizing output,

Friday, September 6, 13

Page 19: Numerical Analysis - Boise State Universitymath.boisestate.edu/~calhoun/teaching/Math565_Fall2013/lectures/... · Numerical analysis is a branch of mathematics that deals ... Newton’s

Matlab might be the easiest choice

• Matlab, along side more traditional programming languages such as C, C++, Fortran has become one of the major platforms on which computational science is carried out.

• Originally designed as a computational “laboratory” for easily solving matrix equations, it has now branched into most areas of mathematics, with numerical tools for solving a wide range of complex problems in science and engineering,

• Integrated graphing capabilities make it an ideal tool for quickly prototyping codes and visualizing output,

• Easy manipulation of vectors and matrices.

Friday, September 6, 13

Page 20: Numerical Analysis - Boise State Universitymath.boisestate.edu/~calhoun/teaching/Math565_Fall2013/lectures/... · Numerical analysis is a branch of mathematics that deals ... Newton’s

Course schedule

Friday, September 6, 13

Page 21: Numerical Analysis - Boise State Universitymath.boisestate.edu/~calhoun/teaching/Math565_Fall2013/lectures/... · Numerical analysis is a branch of mathematics that deals ... Newton’s

Course schedule

• Class time will be roughly 45 minutes lecture, followed by time for homework questions.

Friday, September 6, 13

Page 22: Numerical Analysis - Boise State Universitymath.boisestate.edu/~calhoun/teaching/Math565_Fall2013/lectures/... · Numerical analysis is a branch of mathematics that deals ... Newton’s

Course schedule

• Class time will be roughly 45 minutes lecture, followed by time for homework questions.

• You will each turn in a homework assignment roughly every two weeks, on Thursday in class.

Friday, September 6, 13

Page 23: Numerical Analysis - Boise State Universitymath.boisestate.edu/~calhoun/teaching/Math565_Fall2013/lectures/... · Numerical analysis is a branch of mathematics that deals ... Newton’s

Course schedule

• Class time will be roughly 45 minutes lecture, followed by time for homework questions.

• You will each turn in a homework assignment roughly every two weeks, on Thursday in class.

• We will have regular in-class quizzes.

Friday, September 6, 13

Page 24: Numerical Analysis - Boise State Universitymath.boisestate.edu/~calhoun/teaching/Math565_Fall2013/lectures/... · Numerical analysis is a branch of mathematics that deals ... Newton’s

Course schedule

• Class time will be roughly 45 minutes lecture, followed by time for homework questions.

• You will each turn in a homework assignment roughly every two weeks, on Thursday in class.

• We will have regular in-class quizzes.

• There will be two midterms, and a final exam.

Friday, September 6, 13

Page 25: Numerical Analysis - Boise State Universitymath.boisestate.edu/~calhoun/teaching/Math565_Fall2013/lectures/... · Numerical analysis is a branch of mathematics that deals ... Newton’s

Grading policy

Grading

Homeworks and quizzes will count for 25% of your final grade, and each of the midterms and the final will be 25% each of your final grade.

Friday, September 6, 13