Home | Lectures
Page | Syllabus | | Students page
Physics 6730
Computational Physics
Evolving Provisional Agenda
Spring Semester 2007
Week 1, Week 2,
Week 3, Week 4,
Week 5, Week 6,
Week 7, Week 8,
Week 9, Week 10,
Week 11, Week 12,
Week 13, Week 14,
Week 15 , Week 16
Week 01
1) Monday January 8th
Introduction to the class
[0] C/C++ programming review
(compiling, Makefiles, command-line arguments,
loops, tests, functions, pointers, structures, classes,...)
A Beginners C++ tutorial by Neil Gray
LAB01: Hangman (
hangman.cpp,
Makefile,
animals.hm)
2) Wednesday January 10th
C/C++ programming review continued
HW01: Prime numbers, due January 22th
Week 02
3) Wednesday January 17th
C/C++ programming review continued
LAB01: Complete and submit. A possible solution can be found here
HW02: Improved hangman, due January 24th
Week 03
4) Monday January 22nd
C/C++ programming review continued
LAB02: Pointers (
pointers.cpp, Makefile)
5) Wednesday January 24th
C/C++ programming review continued
LAB03: C++ Classes (classe.cpp and
Makefile)
Introduction to ROOT ( ROOT webpage)
LAB04: ghangman.cpp,
Makefile, library path setup
instructions.
HW03: Mandelbrot set, due February 5th
Week 04
6) Monday January 29th
Class canceled as a result of disk space problem
7) Wednesday January 31th
LAB04:Continued
[1] Numerical searches for the roots of a function (NR C++ 9, Notes )
Fixed point method
LAB05: When simple things go complicated ( bifurcation.cpp,
Makefile)
Week 05
8) Monday February 5th
Bisection
LAB06: Implementing bisection ( bisection.cpp,
Makefile)
False position (LAB07 on paper)
Newton-Raphson method (LAB07 continued)
Digression on the numerical approximation of derivatives
What do you mean "fast"?
Sytem of non-linear equations (LAB07 continued)
HW04: Implementations of False position and Newton-Raphson, due February 12th
9) Wednesday February 7th
[2] Interpolation and extrapolations (NR C++ 3 & 5, Notes )
Lagrange polynomials
LAB08: Interpolations (
interpol.cpp,
interpol.a library,
Makefile and
interpol.data sample data
Week 06
10) Monday February 12th
Cubic spline interpolation
Rational interpolation
11) Wednesday February 14th
Chebishev polynomials and economization
LAB09 on paper, result is here
Pade approximation
HW05: Pade approximation, due February 26th (pade.cpp, pade.a and Makefile)
[3] Numerical integration (NR C++ 4,
Notes )
Trapezoid rule
Lab10:
nrtrapsimp.cpp,
nrnumintegr.a and
Makefile.
Higher order Lagrange interpolation
Richardson extrapolation
Romberg's integration
LAB10 continued: From Trapezoidal to Simson for free!
Week 07
12) Wednesday February 21th
Gauss quadrature
LAB11: Gauss quadrature:
gauleg.cpp,
nrnumintegr.a and
Makefile.
Multidimentional integrals
HW06:
Two-dimensional integral:
integ2dim.cpp and
Makefile.
due Monday March 12th.
Week 08
13) Monday February 26th
[4] Random numbers, Monte-Carlo integration and simulations (NR C++ 7,
Notes )
Buffon's needle
Uniform deviate: congruantial generators
LAB12:
count.cpp,
Makefile
LAB12 continued:
uniformdev.cpp
LAB13: Buffon's needle simulated:
buffon.cpp,
Makefile
14) Wednesday February 28th
Tranformation method
LAB14:
transform.cpp,
Makefile
Rejection method
LAB14 continued
HW07 Cherekov spectrum due Monday March 26th
Week 09
15) Monday March 5th
Monte-Carlo integration
Digretion on linked-list
LAB15:
carbridge.cpp,
Makefile
16) Wednesday March 7th
[5] Optimizations (NR C++ 10, Notes )
How accurately can minima be located?
The golden section search
LAB16:
goldmine.cpp,
Makefile
HW08 Optimization Homework due Monday April 2nd.
Week 10
17) Monday March 12th
Downhill simplex method
LAB17:
amoeba.cpp,
Makefile
Direction set
Conjugate direction set
Powel's conjugate set method
LAB18: Root script:
cds.cpp.
In an interactive cession do ".x cds.cpp" to run.
Using the function gradient
Steepest descent method: not the best
Conjugate gradient method
18) Wednesday March 14th
MID-TERM
(Solutions)
Week 11
19) Monday March 26th
Linear programing
LAB19 on paper
20) Wednesday March 28th
Simulated annealing
LAB20:
What are my neighbors doing? (
whoswho.cpp,
Makefile)
Week 12
21) Monday April 2nd
[6] Fourier and wavelet transforms (NR C++ 12 & 13, Notes )
Analytical Fourier transform
Sampling theorem and aliasing
LAB21:
aliasing.cpp,
Makefile)
Discrete Fourier Transform
Fast Fourier Transform
LAB22:
filtering.cpp,
fourier.a,
Makefile)
Fourier transforms in more than one dimension
HW09:
Newtonian telescope image
Newtonian telescope image,
Makefile,
fourier.a,
example.cpp.
22) Wednesday April 4th
Convolution and deconvolution
LAB23:
convolution.cpp,
fourier.a,
Makefile)
Wavelet transforms in the Haar basis
Daubechies wavelets
LAB24: What do they look like?
(daubechieshow.cpp,
daubechies.a,
Makefile)
LAB24 Continued: truncation
(truncatewl.cpp)
Week 13
23) Monday April 9th
[7] Differential equations Notes )
Euler's method
LAB25:
pendulum.cpp,
Makefile
LAB26:
string.cpp,
Makefile
24) Wednesday April 11th
Higher order Taylor's methods
Modified Euler
LAB25 continued
Midpoint method
LAB25 continued
Leap frog method (not covered in the notes)
LAB27:
stars.cpp,
Makefile
Runge-Kutta's methods
LAB28:
double pendulum,
doublependulum.cpp,
rk4.a,
Makefile
Adaptive step size control
Week 14
25) Monday April 16th
Adams methods
Stability and stiffness
LAB29:
stiff.cpp,
Makefile
Shooting method for two points boundary
LAB30:
shoot.cpp,
shoot.a,
Makefile
Relaxation or finite difference methods
LAB31:
chainette.cpp,
relax.a,
Makefile
26) Wednesday April 18th
Week 15
27) Monday April 23th
Rayleigh-Ritz methods
[8] Neural networks Notes )
28) Wednesday April 25th
FINAL