### Homework, workload, and testing

There will be weekly written homework assignments and frequent programming computing assignments. Late homework may be accepted at the discression of the instructor, but there will be a lateness penalty. Each homework assignment is designed to take 10 hours or less. Please let the instructor know if your are spending significantly more time than this. The final exam is the only testing.

### Source materials

See the Resources page.

### Grading

The final grade will be determined by the grades on the homework assignments and the final exam, each counting for about half the total. Homework grades will be posted on the nyuHome web site. Homework should be submitted in class in hard copy. Homework by email will not be accepted except in very rare circumstances with prior approval of the instructor. Students will be able to access their homework grades on the NYU Blackboard system.

### Communication

Most class communication will be on the NYU Classes site through the class message board there. Check the message board before starting any homework assignment, as there may be corrections or hints. Please post questions about the homework or the class there. You may also communicate with fellow students, setting up group meetings or exchanging ideas about homework. Please email the instructor or TA only for personal matters (schedule an appointment, request to submit an assignment late, etc.).

### Collaboration and cheating policy

Students are encouraged to discuss homework exercises with each other. Each student must write the solutions himself or herself. Copying of solutions or allowing others to copy your solutions is considered cheating and will be handled according to NYU cheating policies and the more stringent policies of the Mathematics and Computer Science Departments. Code sharing is not allowed. You must type (or create from things you've typed using an editor, script, etc.) every character of code you use.

### Outline (tentative)

Segment | Topics |
---|---|

1 | Introduction to finite difference marching methods for the heat equation. Stability and discrete norms. Time step constraint. Truncation error, consistency, order of accuracy. Convergence theorem. |

2 | Higher order methods. Discrete Fourier transform and Von Neunann stability analysis. The symbol of a difference scheme. |

3 | Method of lines. Runge Kutta and linear multi-step methods. Explicit and implicit Adams methods. |

4 | Analysis of recurrence relations. Stability region. A-stable methods. |

5 | Ordinary differential equations. Asymptotic error expansion and Richardson extrapolation. Adaptive methods. |

6 | Introduction to wave propagation equations. Gas dynamics and accoustics. Linearized analysis, wave propagation speeds and modes. Domain of dependence. |

7 | Time stepping methods for hyperbolic problems. Lax Wendroff and upwind methods. Geometric CFL condition. |

8 | Boundary conditions. Higher order methods. |

9 | Laplace equations, steady steady states, elliptic equations. Variational formulations. Coercivity for elliptic PDE. Sobolev spaces. |

10 | Finite element methods. Finite element spaces. Piecewise linear elements on triangles (PLT). Shape regularity. Cea's lemma. |

11 | Solving large systems of linear equations, iterative methods. Gradient descent and Jacobi iteration. Single variable relaxation and Gauss Seidel iteration. Convergence rates as a function of condition number. Conditioning of discrete Laplace operators. |

12 | Orthogonalization methods for symmetric positive definite systems. The conjugate gradient algorithm and convergence estimates based on condition number. |

13 | Orthogonalization methods for non-symmetric or non-definite systems. The use of preconditioners and some examples. |