- THEMATIC GOALS
- To become acquainted with the use of modern computer
technology to formulate and solve problems from
physics (and related fields) computationally. This
will generally involve:
- Identifying or isolating a specific problem that
requires solution.
- Formulating the problem in mathematical terms, as
precisely as possible.
- Identifying appropriate approximations,
algorithms, existing software etc. that will allow
you to solve the problem.
- Implementing the solution process on the computer,
using programming (scripting etc.) in one or more
computer languages as necessary.
- Performing the calculations on the computer using
your implementation.
- Analyzing and
interpreting the results of the calculations.
- Possible iteration of one or more of the above
steps in view of the results and analysis.
- To become familiar with basic-to-intermediate
techniques in computer programming that will be of use
in solving problems from physics and related fields.
- To be exposed to selected topics in physics and
mathematics that are representative of some typical
application areas in "real world" computational
physics: some of this material may already be familiar
to you.
- To gain experience in searching for, and finding,
information on specific topics/areas; in understanding
that information, and then applying it (i.e. research
and self-instruction!)
- To gain experience in presenting the results of
scientific work, and in writing up the results of that
work in the form of a scientific paper
- SPECIFIC GOALS
Successful completion of this course---which includes
understanding the lecture material, completing the
homeworks with a reasonable degree of proficiency, and
presenting and submitting a good term project---should
provide you with the ability to do the following at
a minimum:
- Work comfortably within a Unix / Linux environment
with an emphasis on the use of the command-line.
- Use Maple to interactively perform basic symbolic
manipulation and numerical computations.
- Write simple Maple procedures (programming) as
part of an introduction to the use of Maple as a
powerful computing environment.
- Perform basic to intermediate level numerical
computations using MATLAB interactively.
- Write basic to intermediate level MATLAB scripts
and functions (programming).
- Use your MATLAB programming skills to address
specific applications from physics and mathematics
including:
- The use of finite difference techniques to
approximately solve simple ordinary differential
equations (equations of motion), of the type
encountered in particle dynamics.
- Dynamics of one or more particles in interaction
with one another or with an external potential
using finite difference techniques.
- The use of finite difference techniques to
approximately solve simple partial differential
equations (wave equations)
- Solution of nonlinear equations
- Simulation of simple cellular automata
- A moderately challenging problem of your own
choosing---i.e. your term project!
Note that in the above (as well as the course outline
below), references to MATLAB also refer to the open
source "clone" octave, which does not have all of the
features of MATLAB, and we use will octave exclusively
in the computer labs. However, I will do my best not to
use any octave-specific elements in the course, so that
anything that you learn about octave should apply to
MATLAB (in particular, any octave code presented should
also work in MATLAB).
|