Note. Several of the book problems ask for the "actual error". The actual error is true value - approximation. In these problems the actual error is f(x) - Pn(x). For example, in problem 7b, the actual error in using P2(0.5) to approximate f(0.5) is f(0.5) - P2(0.5).
Friday, January 23 (Week 2)
Section 1.2 (p. 28): 1c, 2b, 5ae, 6ae, 7ae, 8ae, 12, 15ab, 22, 26
Bonus Problem (not in book): Evaluate, as a decimal number, the half-precision numbers with these bit representations
0 10000 1000000000
0 10010 1010000000
1 01110 0000000000
0 00000 1010000000 (Note: this is subnormal: see the wiki page on half-precision.)
Due Friday, January 30 (Week 3)
Section 1.3 (p. 39): 1a, 6a, 7a, 9
Write a MATLAB, Mathematica, C/C++ or other program to implement the bisection method to find a point closer than tol to a solution to f(x) = 0 in [a, b]. Your code should define f(x), and initialize a and b and a tolerance tol. Check to make sure that f(a) and f(b) have opposite sign.
Turn in a hardcopy of the code and use it to solve:
Section 2.1: 5a, 7, 13, 14
Due Friday, February 6 (Week 4)
Section 2.2: 1, 2, 13 (use calulator or computer for 2, 13)
Section 2.3: 1, 5a, 7a (extra credit), 14.
Note: When they want an answer with some desired accuracy (tol), you may stop when |pn-1 - pn| < tol. Unlike the bisection method, with fixed point methods it is hard to guarantee that pn is within tol of the true solution. Corollary 2.5 can do this, you do not need to use this in the homework.
Note: You should learn how to do fixed point iteration and Newton's method on your calculator. Secant method really needs a computer program. It would be a good idea to write computer programs that do fixed point iteration, Newton's method and secant method now. They will be needed for the computer project due next week.
Due Thursday, February 12 (Week 5) at 11:59 pm via email
Due Wednesday, February 25 (Week 7)
Section 3.1: 2a, 4 (related to 2a only), 9, 14 (Answer to 9 is y = 4.25; answer in book is wrong.)
We skipped section 3.2.
Section 3.3: 1a, 2a, 7, 10, 11, 17, 19
Here is a scanned solution of last semester's first problem: section 3.1: 1a. I didn't assign it this semester becasue the answer in the back of the book is wrong.
Friday, March 6 (Week 8) (Delayed because of snow closure on March 2)
Section 3.5: 1 (change to f(2) = 3), 2 (change to f(2) = 3), 11, 14, 26, 27
Note: for problems 1 and 2, get the 8 equations in 8 unknowns and solve them by hand or with electronic assistance. I suggest you use reduced-row-echelon form (rref) on your calculator. I will expect you to be able to solve linear systems on your calculator at the next exam. You will not be required to implement Algorithms 3.4 and 3.5. The algorithms prove that there is always a unique solution to the linear equations for the coefficients in the cubic spline.
Wednesday, March 11 (Week 9)
Section 3.6 #3a, 3c, 4.
Also, write a program in Mathematica (modify the notebook below) or Matlab or other language that will graph a function f: [a, b] -> R using cubic Bezier curves
(several n = 1 clamped cubic spline curves).
Input the function f (and f' if you are not using Mathematica, or the symbolic package in MATLAB). Also input a, b, and n (the number of subintervals) Output is a approximate graph of f on the interval [a, b] using a Bezier curve (n=1 clamped cubic spline) on each of the n subintervals of length h = (b-a)/n:
[a, a+h], [a+h, a+2h], ... [b - h, b].
Turn in a printout of your code, and the result of plotting f(x) = e^(-x^2) on [0, 3] using n = 1, 2, and 3.
You may start with this Mathematica notebook, and modify it: plotFunctionUsingClampedSplines.nb.
For problem 3 find the cubic polynomials by hand, and use this Mathematica notebook, Bezier2D.nb,
or some other software to plot the output of the parametric curves you find by hand.
The answer in the book for 3c should not say "For t between (0,0) and (4,6), we have". Instead it should say "For the curve between (0,0) to (4,6) use the following with 0 ≤ t ≤ 1:" Similarly, the second curve has 0 ≤ t ≤ 1.
For problem 4, use the BezierCurve function in that same Mathematica notebook, Bezier2D.nb, or use some other program. The notation in problem 4 is wrong. The heading row should be
i, xi, yi, xi+, yi+, xi-, yi-
Here is my version of the N figure of problem 4.
Due Friday, March 27 (Week 10)
Section 4.1: 1a, 3a, 5a, 7a, 28
Due Thursday, April 9
at 11:59 pm via email (Week 12)
Project 2. You may want to start with this numInt.nb Mathematica notebook or this numint.txt MATLAB file (save as numint.m). You can also use any other computer language.
Due Monday, April 27 (Week 15, day 1)
Section 5.1: 1b, 2a (These problems refer to Theorem 5.4; use "Theorem 5.3+5.4", the simplified version stated in class.)
Section 5.2: 1a, 5a, 7a (In 7a, compute the actual error at t = 1.5 and t = 2 only.)
Section 5.4: 3a, 4a, 7a, 8a, 15a, 16a (Write a computer program to do these. Submit a printout of a table of output for each problem.)