Physics 780.20 Computational Physics
Winter, 2012

Welcome to the Physics 780.20 Computational Physics home page!
The course information is available here plus lots of supplementary info. Please check this page regularly.

Recent changes to this page:


Assignments In and Out of Class

1094 Sessions

Copies of any handouts are available from Prof. Furnstahl or online below. After the first class, please read the session notes before that session meets.

Date of SessionGuideNotes Packed FilesHandouts
01/04/12 Session 1 notes [pdf] Printouts of "area" code [pdf] [ps]; Unix commands [pdf]; C++ options [pdf] [ps]; GSL intro [pdf]; Other Session 1 code printouts [pdf] [ps]
01/09/12 Session 2 notes [pdf] Gnuplot basics [pdf]; Gnuplot tutorial; first Mercurial tutorial [pdf]
01/13/12 Session 3 notes [pdf] Fitting with Gnuplot [pdf] [ps]; Formatting with C++ Manipulators (UIC notes) [pdf]; integ_test.cpp and integ_routines.cpp [pdf] [ps] printouts; derivative_test_simple.cpp [pdf] [ps] printout;
01/23/12 Session 4 notes [pdf] Gnuplot plot files [pdf] [ps]; Integrals with Singularities [pdf] [ps];
01/25/12 Session 5 notes [pdf] Random round-off? [pdf]; nan_test.cpp [pdf] [ps], eigen_tridiagonal.cpp [pdf] [ps], eigen_basis.cpp [pdf] [ps], and harmonic_oscillator.cpp [pdf] [ps] printouts
01/30/12 Session 6 notes [pdf] simpson_cosint_openmp.cpp printout [pdf] [ps], diffeq_routines.cpp [pdf] [ps], diffeq_test.cpp [pdf] [ps], and new eigen_tridiagonal_class.cpp (with class definition) [pdf] [ps] printouts
02/05/12 Session 7 notes [pdf] diffeq_oscillations.cpp [pdf] [ps]; eigen_basis_class.cpp (first pass) [pdf] [ps]
02/13/12 Session 8 notes [pdf]
Plots of damped oscillations [pdf] [ps]; filename_test.cpp printout [ps]; GnuplotPipe class printout [ps]; diffeq_pendulum.cpp printout [ps]; nonlinear Mathematica notebook;
02/15/12 Session 9 notes [pdf] Circle class and test printout [pdf]; [ps]; private_vs_public printout [pdf] [ps]; GDB debugger quick reference [pdf] [ps]; "Using the GDB debugger" [pdf] [ps]
02/20/12 Session 10 notes [pdf] GslSpline printout [pdf] [ps]; ode_test.cpp printout [pdf] [ps]; GSL interpolation [pdf] [ps]; Pendulum Power Spectra [pdf] [ps];
02/22/12 Session 11 notes [pdf] ode_test_class.cpp and classes printout [pdf] [ps]; multifit_test.cpp printout [pdf] [ps]; multimin_test.cpp printout [pdf] [ps];
02/27/12 Session 12 notes [pdf] man pages for random, urandom [pdf] [ps]; gaussian_random.cpp printout [pdf] [ps]; random_walk.cpp printout [pdf] [ps]; RandomWalk_test.cpp printout [pdf] [ps]; input_check.cpp printout [pdf] [ps]; factorial_debug.cpp printout [pdf]; [ps];
02/29/12 Session 13 notes [pdf] sampling_test.cpp printout [pdf] [ps]; ising_model.cpp printout [pdf] [ps]; ising_opt.cpp printout [pdf] [ps];
03/07/12 Session 14 notes [pdf] autocorrelation_test.cpp printout [pdf] [ps]; variational_SHO.cpp printout [pdf] [ps];

Return to Contents

Supplementary Readings

A complete copy of M. Hjorth-Jensen's 2011 notes on "Computational Physics" is available as a PDF file.

Class PeriodReadingTopic
01/04/12 M. Hjorth-Jensen, Preface (pdf) and Table of Contents (pdf) Preface and Table of Contents
01/04/12 M. Hjorth-Jensen, Ch. 1 (pdf) Overview of Computational Physics and what is covered.
01/04/12 M. Hjorth-Jensen, Ch. 2 (pdf) C++ and Representation of Numbers.
01/12/12 M. Hjorth-Jensen, Ch. 3 (pdf) Numerical Differentiation (read sections 3.1 and 3.2).
01/12/12 M. Hjorth-Jensen, Ch. 5 (pdf) Numerical Integration.
01/23/12 M. Hjorth-Jensen, Ch. 6 (pdf) and Ch. 7 (pdf) Linear Algebra and Eigensystems.
01/26/12 M. Hjorth-Jensen, Ch. 8 (pdf) Differential Equations.
02/10/12 M. Hjorth-Jensen, Ch. 3.2 (pdf) Numerical Interpolation, Extrapolation and Fitting of Data.
02/27/12 M. Hjorth-Jensen, Ch. 11 (pdf) Outline of the Monte-Carlo Strategy
02/27/12 M. Hjorth-Jensen, Ch. 12 (pdf) Random walks and the Metropolis Algorithm
02/29/12 M. Hjorth-Jensen, Ch. 13 (pdf) Monte Carlo Methods in Statistical Physics
03/05/12 M. Hjorth-Jensen, Ch. 14 (pdf) Quantum Monte-Carlo Methods

Return to Contents

Problem Sets and Hints

Click on the problem set number to get a copy of the assignment. Follow the instructions on submitting assignments with Mercurial (see also the introduction to Mercurial tutorial from Session 2).

Due DateAssignmentComments
01/20/12 #1 [pdf] hints, suggestions, etc.
02/03/12 #2 [pdf] hints, suggestions, etc.
02/17/12 #3 [pdf] hints, suggestions, etc.

Return to Contents

Handouts (printed and computer)

General Handouts (printed)

You (mostly) have your choice of postscript (ps) or PDF format.

Last UpdatedHandoutComments
30-Dec-2011 C++ Options (ps) (pdf) "Recommended C++ Options" -- options for g++ (GNU compiler) and icpc (Intel compiler) based on the recommendations in the GSL Reference manual.
27-Dec-2010 GSL Introduction (pdf) GNU Scientific Library description from the online reference manual.
30-Dec-2011 Unix Commands (pdf) "Some Useful Unix Commands" based on various web summaries
11-Jan-2012 Instructions on submitting assignments with Mercuial (pdf) Basic instructions on how to set up a Bitbucket account and how to push your local repository to it.
09-Jan-2012 Introduction to Mercurial tutorial (pdf) Using Mercurial to start, add to, and manipulate a local repository.
01-Jan-2009 Gnuplot basics (pdf) "Plotting Data from a File with Gnuplot"
28-Mar-2008 Gnuplot fitting (ps) (pdf) "Finding the Slope of XY Data from a File with Gnuplot"
12-Jan-2010 Gnuplot plot files (ps) (pdf) "Using a Plot File with Gnuplot"
12-Jan-2012 Using X-Win32 (pdf) Instructions for using X-Win32 on the Physics Department computers.
01-Apr-2008 Tricky Integrals (ps) (pdf) "Integrals with Singularities or Discontinuous Derivatives"
16-Nov-2003 Bash Prompt HOWTO (pdf) Creating and controlling terminal and xterm Bash prompts, compiled by Giles Orr.
01-Jan-2004 C++ Manipulators (pdf) "Formatting with Manipulators" -- brief guide found on the web.
12-Nov-2002 Input in C (ps) (pdf) "Interactive Input in C"
09-Jan-2011 Round-off Errors (pdf) A simple empirical investigation of the distribution of round-off errors.
07-Mar-2008 GDB Debugger (ps) (pdf) "Using the GDB Debugger" -- A tutorial by example.
10-Mar-2011 Gnuplot 3d plots (pdf) "Three-Dimensional Plots with Gnuplot"
06-Feb-2006 GSL Interpolation (ps) (pdf) "Using GSL Interpolation Functions"

Return to Contents

Computer Codes and Makefiles

Return to Contents

Mathematica Example Notebooks

A wide range of Mathematica example notebooks used in the graduate Math Methods course are available. Take a look!

If the notebook doesn't open automatically in Mathematica when you click on the link, "right click" to save it first (to the Desktop or a session folder) and start it from within Mathematica.

Last RevisedNotebookComments
23-Sep-2011 Calculate area A simple Mathematica notebook defining a function to calculate the area of a circle, including forcing numerical output and multiple definitions of a function with different numbers of arguments. Also, making it into a program.
23-Sep-2011 Defining n! Mathematica notebook with many ways to define n!.
23-Sep-2011 Rolling dice Mathematica notebook that simulates the rolling of dice, where the outcome is a random integer from 1 to 6. Histograms are generated for different numbers of "trials" (i.e., throws of the dice), providing visualization of how the fluctuations scale with the number of trials.
25-Sep-2011 3D Square Well Mathematica notebook to find the eigenvalues of a spherical three-dimensional square well by matching solutions.
12-Feb-2009 Nonlinear Differential Equations Mathematica notebook analyzing the Duffing equation.
12-Feb-2009 Nonlinear Differential Equations: Pendulum Mathematica notebook analyzing the physical pendulum.
04/18/02 Fourier Transform Pictures Mathematica notebook showing in pictures how to project Fourier coefficients.
04/18/02 Square Wave Mathematica notebook showing a square wave being built from sine waves.

Return to Contents

Your comments and suggestions are appreciated.
[OSU Physics] [Math and Physical Sciences] [Ohio State University]
OSU Physics: Physics 780.20 Computational Physics.
Last modified: .