Physics 2200, Computational Physics
Academic Calendar and Homework Assignments


WeekLecture No.DateSubjectHomework
11Mon, Aug 27Introduction to computational physics. Course logistics. Coursera & EdX
 
2Wed, Aug 29Top 500 supercomputer sites.
A very short introduction to linux, I.
Popularity of programming languages.
C programming: ’Hello, world!’.
 
3Fri, Aug 31C programming: variables; ’for’ loops.
Fibonacci numbers.
 
2Mon, Sep 3Labor Day - No classes 
4Wed, Sep 5C programming: integer division. Basel sum I.
 
5Fri, Sep 7C programming: nested loops, functions and function declarations. Basel sum II.
 
36Mon, Sep 10C programming: local and global variables; scope of variables. Basel sum III.
 
7Wed, Sep 12 Correct programs – wrong results: use recurrence to compute a family of integrals In = ∫01 xn ex−1 dx, I.
HW1
8Fri, Sep 14Programming languages; The choice of C as the programming language for the course; C programming: conditionals. Linux: output redirection.
 
49Mon, Sep 17 C programming: boolean operators. Correct programs – wrong results: calculation of π by evaluating the perimeter of a regular polygon, I. Linux: graphing with gnuplot
HW2
10Wed, Sep 19 Correct programs – wrong results: calculation of π by evaluating the perimeter of a regular polygon, II. C programming: arrays, I. Use recurrence to compute a family of integrals In = ∫01 xnex−1 dx, II.
 
11Fri, Sep 21C programming: arrays, II; pointers. Use recurrence to compute a family of integrals In = ∫01 xnex−1 dx, II.
 
512Mon, Sep 24Numerical systems: decimal, octal, hexadecimal, binary. Conversion between systems. Operation with binary numbers. multiplication/division by 2, exclusive or (xor, ⊕). Bits, bytes. ASCII.
HW3
13Wed, Sep 26Introduction to cryptography. Stream ciphers. One time pad – “unbreakable” cipher.
 
14Fri, Sep 28Computer representation of integer and real numbers, I.
 
615Mon, Oct 1Computer representation of integer and real numbers, II. Machine epsilon.
 
16Wed, Oct 3Errors in floating point computations, I. C programming: while-loop; x++ and ++x.
HW4
17Fri, Oct 5Errors in floating point computations, II. C programming: local and global variables.
 
7Mon, Oct 8Midterm I.
 
18Wed, Oct 10 Analysis of “Correct programs – wrong results”. Kahan summation algorithm. Lessons lerned.
 
19Fri, Oct 12C programming: struct, I. Gnu scientific library. Experiment: estimate π; setup: CD, ruler, pen and paper, large-grain “sand”. Monte Carlo method I; calculate π using MC
 
820Mon, Oct 15Introduction to the physics computer lab.
HW5
21Wed, Oct 17Monte Carlo method II
 
22Fri, Oct 19Random number generators (RNG): requirements; empirical tests; linear congruental generators.
 
923Mon, Oct 22C programming: recursion, I; factorial, Fibonacci numbers.
HW6
24Wed, Oct 24C programming: recursion, II; Hanoi tower. Sorting: buble sort, quicksort.
 
25Fri, Oct 26Solving ODE: initial and boundary value problems; shooting method. Euler method.
 
10-Mon, Oct 29No classes due to hurricane Sandy
 
26Wed, Oct 31Solving ODE with GSL: van der Pol oscillator.
HW7
27Fri, Nov 2Solving ODE with GSL: 1D flame propagation. Stiff differential equations.
 
1128Mon, Nov 5Solving ODE with GSL: Lorenz chaotic attractor. Dynamic chaos.
HW8
29Wed, Nov 7Solving ODE review. Takehome Midterm II.
 
30Fri, Nov 9Restricted three body problem, I.
 
1231Mon, Nov 12Restricted three body problem, II.
HW9
32Wed, Nov 14No class – to be rescheduled.
 
33Fri, Nov 16Converting differential equations to dimensionless form. Restricted three body problem, III.
 
13-Mon, Nov 19Thanksgiving recess 
-Wed, Nov 21Thanksgiving recess 
-Fri, Nov 23Thanksgiving recess 
1434Mon, Nov 26Partial differential equations. Spinodal decomposition
 
35Wed, Nov 28Spinodal decomposition II: Cahn-Hilliard equation.
 
36Fri, Nov 30Fast Fourier Transform (FFT); Using FFT for PDEs solution.
 
37Fri, Nov 30Makeup class: Finite difference methods; Jacobi and Gauss-Seidel Iterations.
 

This document was translated from LATEX by HEVEA.