Physics 329:    Introduction to Computational Physics: Course Topics
Unix & Overview: 4 lectures
   
   -  Overview of course goals, philosophy of scientific computing
   
 -  Unix fundamentals for scientific computing
   
 
Maple: 3 lectures
   
   -  Use of a modern "symbolic manipulation" language for routine 
        computations 
   
 -  Maple as a powerful environment for exploratory scientific programming
   
 
Scientific Programming: 7 lectures
   
   -  Fortran 77 programming of simple scientific applications
   
 -  Numerical computation concerns: error analysis and bug-proofing
        strategies
   
 -  Integration and interaction of Fortran programs with other 
        tools ("make", "sort", graphing programs, maple, etc.)
   
 -  Porting code to different architectures
   
 
Solution of Linear Systems: 3 lectures
   
   -  The LU decomposition algorithm
   
 -  Using "canned" software for solving linear systems
   
 -  Solution of tridiagonal and banded-systems
   
 
Finite Difference (FD) Methods: 7 lectures
   
   -  The nature of discrete equations derived from continuum systems
   
 -  Expected behaviour of FD approximations (convergence & accuracy)
   
 -  Polynomial Interpolation
   
 -  Numerical differentiation and numerical integration
   
 
Non-linear Equations (Root Finding): 2 lectures
   
   -  Bisection (binary search)
   
 -  Newton's method
   
 -  Newton's method for systems of non-linear equations
   
 
Cellular Automata (CA) Simulation: 2 lectures
   
   -  Definition and description of CA systems
   
 -  Simulation and visualization of 1-D CA systems
   
 -  Recent applications
   
 
Particle Simulations: 3 lectures
   
   -  Typical equations of motion for interacting particle systems
   
 -  Discretization of equations of motion
   
 -  Application: The n-body gravitational problem
   
 
Solution of ODEs: 5 lectures
   
   -  Review of ODE theory 
   
 -  Canonicalizing systems of ODEs
   
 -  Using "canned" software to solve systems of ODEs
   
 -  Applications 
   
 
Random Numbers, Monte Carlo and Stochastic Methods: 3 lectures
   
   -  Random number generation and trustworthiness
   
 -  Generating non-uniformly distributed random numbers
   
 -  Simple Monte Carlo algorithms
   
 -  Simulation and visualization of diffusion-limited aggregation