Fall 2013 Academic Calendar and Homework Assignments

Last updated:

WeekLecture No.DateSubjectHomework1 1 Mon, Aug 26 Introduction to computational physics. Course logistics.

2 Wed, Aug 28 A very short introduction to linux, I.

C programming I: ’Hello, world!’.

3 Fri, Aug 30 C programming: variables; input and output; printfandscanf.

2 – Mon, Sep 2 Labor Day - No classes4 Wed, Sep 4 C programming:

HW01 due 5 Fri, Sep 6 C programming: conditionals; branching and looping; forloop; Fibonacci numbers.

3 6 Mon, Sep 9 C programming: whileloop; operators. Machine є. Correct programs – wrong results: use recurrence to compute a family of integralsI= ∫_{n}_{0}^{1}x^{n}e^{x−1}dx, I.

7 Wed, Sep 11 C programming: local and global variables; scope of variables; functions and function declarations, I; integer division;

8 Fri, Sep 13 C programming: functions and function declarations, II; function prototypes.

4 9 Mon, Sep 16 C programming: arrays. Correct programs – wrong results: calculation of π by evaluating the perimeter of a regular polygon, I.

HW02 due 10 Wed, Sep 18 C programming: strings, I. Correct programs – wrong results: calculation of π by evaluating the perimeter of a regular polygon, II. Linux: output redirection; graphing with gnuplot; makeandmakefiles, I.

11 Fri, Sep 20 C programming: structures.

5 12 Mon, Sep 23 Numerical systems: decimal, octal, hexadecimal, binary. Conversion between systems. Bits, bytes.

HW03 due 13 Wed, Sep 25 ASCII. Bitwise operations in C: and(&),or(|),left shift(<<),right shift(>>),exclusive or(^, xor, ⊕). Introduction to cryptography: historical ciphers.

14 Fri, Sep 27 Introduction to cryptography: historical ciphers, II. C programming: command line arguments.

6 15 Mon, Sep 30 Introduction to cryptography: random binary numbers; one time pad – “unbreakable” cipher. Huffman coding.

HW04 due 16 Wed, Oct 2 Huffman coding.

17 Fri, Oct 4 Computer representation of integers.Two’s complement.

7 – Mon, Oct 7 Midterm I.

HW05 due 18 Wed, Oct 9 Midterm review

19 Fri, Oct 11 Algorithms: sorting; bubble sort. Performance of algorithms; asymptotic analysis. Big-Oh notation; C programming: recursion, I; Hanoi Tower game

8 20 Mon, Oct 14 Algorithms: sorting; merge sort; Divide and conquer algorithms I. C programming: recursion, II.

21 Wed, Oct 16 Divide and conquer algorithms, II; The master theorem. Long multiplication.

22 Fri, Oct 18 C programming: multidimensional arrays

9 23 Mon, Oct 21 Computer representation of floating point numbers.

HW6 due 24 Wed, Oct 23 Computer representation of floating point numbers and errors in numerical algorithms.

25 Fri, Oct 25 General errors in numerical algorithms, II.

10 26 Mon, Oct 28 C programming: pointers, I.

HW7 due 27 Wed, Oct 30 C programming: pointers, II; dynamic data structures. Programming tools: valgrind

28 Fri, Nov 1 C programming: dynamic data structures, II.

11 29 Mon, Nov 4 Monte Carlo methods. Random number generators. Takehome Midterm II.

30 Wed, Nov 6 Monte Carlo methods II.

31 Fri, Nov 8 Numerical integration: midpoint, trapezoidal, Simpson’s, Newton-Cotes rules vs. Monte Carlo integration.

12 32 Mon, Nov 11 Numerical solution of ordinary differential equations, I.

33 Wed, Nov 13 Van der Pol oscillator, I. limit cycles.

34 Fri, Nov 15 Van der Pol oscillator, II. Weak nonlinearity; method of averaging.

HW8 due 13 35 Mon, Nov 18 Numerical solution of ordinary differential equations - flame propagation; stiff ODE.

36 Wed, Nov 20 Dynamic chaos. Lorenz system

37 Fri, Nov 22

HW9 due 14 - Mon, Nov 25 Thanksgiving recess- Wed, Nov 27 Thanksgiving recess- Fri, Nov 29 Thanksgiving recess15 38 Mon, Dec 2 Restricted three body problem, I.

39 Wed, Dec 4 Restricted three body problem, II.

40 Fri, Dec 6 Public key kryptography

This document was translated from L^{A}T_{E}X by H^{E}V^{E}A.