Interesting Links

(feel free to suggest others)

 



Software Links

  1. Python:    ENTHOUGHT Python Distribution Installers

WARNING: Matplotlib does not work under Snow Leopard 10.6.1!

  1.    Python.org            Python Documentation

  2.    MatplotLib            MatplotLib Examples

  3.    SciPy                      Matplotlib User Guide (pdf)

  4.   NumPy userguide        Numpy reference

  5. LaTeX

  6.    LaTeX Home Page     Tutorial in 138 Minutes      CTAN

  7.    LaTeX Report Template             LaTeX Math Symbols

  8.    The PracTEX Journal                 

  9. Igor Pro

  10.    Wavemetrics Home Page   Appscript (Mac Only)

  11. Open Source applications

  12.   Inkscape   (adobe illustrator for free)

  13.   gnuplot (nice alternative data plotting)

 



Last Update:

Oct 6, 2009

 



Report Guidelines

Our projects involve investigation of the behavior of a physical system through simulation. The heart of the assignment is your investigation of the system, and there are several basic elements to a report that describes your work. Read more...

 



Syllabus

We will begin by introducing the fundamentals of programming and the syntax of the Python language, and then move on to study physical systems of increasing complexity (and interest!) .  As we do so, we will learn more about Python and several associated packages that make Python an ideal language for many scientific computing tasks.  Read more...

 



Draft Textbook Chapters

  0.    Preface, etc. 

  1. 1.Chapter1

  2. 2.Chapter 2

  3. 3.Chapter 3

  4. 4.Chapter 4

  5. 5.Chapter 5

  6. 6.Chapter 6

  7. 7.Chapter 7

  8. 8.Chapter 8

 



Old Assignments

  1. Assignment 8

  2. Assignment 7

  3. Assignment 6

  4. Assignment 5

  5. Assignment 4

  6. Assignment 3

  7. Assignment 2

  8. Assignment 1

 



Overview of Course

This course uses computers to simulate physical systems using the computing language Python (named after the British Comedy Troupe), along with many associated libraries that make scientific computing and visualization in Python much easier to implement than in languages such as C/C++, Fortran, and Java. The course will begin with an introduction to the core foundation of Python, and then we will quickly progress to use Python to simulate physical systems that are not solvable by analytic means. The course emphasizes computation for the sake of increased understanding and insight into physical systems, and teaches programming/scripting as a means to this end.

 



Final Projects

Your final project will be on a topic of your choosing that is also deemed reasonable. I encourage you to keep this project in mind during the semester so that you can begin formulate ideas for your topic. Here is a timeline for the elements of the final projects:

Read more...

 

Required Text:

Computational Physics, 2nd ed, Nicholas Giordano and Hisao Nakanishi


Very Highly Recommended Texts:

An Introduction to Python, (Paperback) Guido van Rossum, publisher: Network Theory LTD.

Python Scripting for Computational Science (Hardcover)  by Hans Petter Langtangen

(Both books may be purchased from Amazon.com used or new; click on above links to go to Amazon.com, the required text will be available at the USM Portland Bookstore.)

 



Computing Platform Recommendation

I used to recommend MAC OS X as the preferred platform for scientific computing using Python, but the recent upgrade to Snow Leopard (10.6.1) has BROKEN the ability to use MatplotLib. As a result of this, I recommend NOT upgrading to Snow Leopard until this capability is restored.

I now do all my python code development in Ubuntu Linux 9.0.4 using Python 2.6.2, and recommend it heartily.

 

    Physics 261    

Computational Physics

Fall 2009   



Current Project

Giordano: Problem 2.9

 
  1. Drawing with Python (very nice package!)

  2. Nodebox (Python Based & Mac OS X only)  

  3. Processing.org (Cross-platform; but not python-based)