The homepage of the course is
"http://www.phys.au.dk/subatom/nucltheo/numeric/current".
The subject of the course is the numerical methods which are commonly
used in physics. The algorithms will be discussed at the lectures. The
students will implement (some of) the discussed algorithms using a
programming languages of their choice from those installed on lifa
or genryc.
Programming languages: compiled and interpreted; functional
and imperative; object-oriented. Fortran, C, C++, Java, C-sharp, Lisp,
Haskell, JavaScript...
Computer Algebra Systems and Computer-Aided Design systems.
MathCAD, Mathematica, Maple, Matlab, Octave...
Libraries: netlib.org (mostly Fortran); Gnu Scientific Library
(C, C++).
Integrated Development Environments. Kdevelop and monodevelop.
"Make" utility. Text editors: jed, nano, emacs, xemacs, vi...
The solutions to the exercises (source code, makefile, output...)
be arranged into a web-page which should be avalable for browsing.
Exercises
Choose your programming language(s) for the exercises, e.g.
Fortran-77, Fortran-95, C, C++, C-sharp, Java, Haskell, Lisp, JavaScript. Or
some other language which should be a compiled language and there should
be a debian package for it so that I could install for you on genryc.
Prepare your web-page for the exercises. Open a terminal window and
login into lifa.phys.au.dk (or genryc). If your login name is jensen,
then you do
\tt
ssh -X jensen@lifa.phys.au.dk
\xtt
and, after typing your password do
\tt
mkdir ~/public_html
echo 'my homepage...' > ~/public_html/home.htm
mkdir ~/public_html/numeric
echo 'mumerical methods...' > ~/public_html/numeric/home.htm
chmod -R go+rx ~/public_html
\xtt
("~/" is an abbreviation for you home directory).
Now the address "http://www.phys.au.dk/~jensen" points to your
"~/public\_html/home.htm" file, while
"http://www.phys.au.dk/~jensen/numeric" points to your
"~/public\_html/numeric" which should then be the place for your solutions to
the exercises. Email me the address of your web-page.
Make a HelloWorld program (a program that prints
"Hello, world!" on the screen) in your programming language.
Make a program to calculate the sums
Sup=∑i=1..N1/i,
Sdown=∑i=N..11/i
in single and double precision. Compare Sup and
Sup for N=1000000. Explain the difference.