Computer Programming
The question of whether a computer can think is no more interesting than
the question of whether a submarine can swim.
- E. W. Dijkstra
As far as the program sources are concerned, please note the following:
The languages employed for writing my programs are the following:
FORTRAN
77
BASIC
FORTH
PASCAL
/ DELPHI
JAVA
If your thinking is structured, then your program may be structured,
regardless of the programming language. The reverse is not true (HdB)
SUNA
SUNA is abbreviation for: "Series on Unified Numerical Approximations".
The Series was published in the sci.math.num-analysis
newsgroup (1993 - 1994) on the Internet.
Here is the contents of the Series. There are
a few Basic and Fortran
programs associated with it. I've been in the process of translating some of
these into Turbo Pascal as well. A future
development could have been to create a Web version
for some of these applications.
BETON
Once upon a time, I developed a couple of Fortran
programs for a person who wanted to calculate the distribution of the
electrical potential in a piece of corroding re-enforced concrete.
A standard 2-D finite element method has been implemented for this
purpose. Perhaps the code and accompanying documents can be useful as kind
of a blueprint for
developing FEA programs of your own. The program has been
rewritten in Turbo Pascal and
Delphi.
BASBOEK
A number of Basic programs is associated with the (Dutch) chapter 7 in my
book, known (to me at last) as
Labrujère's Problem.
Check out here for the relevant parts.
Programs have been rewritten in Turbo Pascal and Delphi.
ZONWIND
Another Solar Wind project.
Done in close collaboration with an
astronomer.
TEMPLATES
For an excellent description of Iterative Methods for Large Sparse Systems of
Equations
unzip and print the Templates PS
document (mirrorred from netlib or GAMS).
Computational Geometry
There's a wealth of computer programs available via Internet, which cover
precisely this area of interest. One can find quite interesting
links in the Directory
of Computational Geometry Software, which in turn can be accessed via
netlib. The latter is an indispensable
resource of mathematical programs of all sorts!
In order to understand subsequent work, you should familiarize yourself
with Delaunay triangulations and Voronoi regions. Maybe a good start is
to download bits of software. For 2-D
as well as for 3-D there exists some
excellent public domain stuff.
There exist two articles in SUNA, the Series
on Unified Numerical Approximations, which are not truly Numerical in nature.
I think they rather belong to the area of Computational Geometry:
The Fortran programs in these two chapters have been zipped into one (16 KB)
file for convenience.
The following is perhaps more closely related to the area of Computer Graphics.
Here is a (Turbo Pascal stefan.pas) program
for rendering an arbitrary (wire-framed, alas!) cylinder, which is rotated in
space with help of Quaternions.
(Note: this program will not work anymore anyway, without
the Borland BGI stuff, which must then be placed in the C:\TP\BGI directory)
And how about a program which actually does the automatic coloring of
BitMapPed Country
Maps, with a minimal number of colors? Such a program does exist now!
One of the problems associated with the (in)famous
Four Colour Problem is solved herewith.
As part of a larger project (? I think) comes a tiny Delphi (visual Pascal)
program and its
executable
which does (say) the ultimate anti-aliasing of straight lines, according
to some theory in my (Dutch) book.
Another
program
and its
executable
does the anti-aliasing of black and white bit maps (B/W BMP files),
by convolution with a Gaussian distribution.
Sorting and Searching
Quite a number of
indispensible algorithms, by
Donald Knuth
LogiKwiz
It will be explained here, in Dutch,
how so called "LogiKwiz" puzzles are solved by computer programming.
Better skip this section if you prefer to solve them by hand!
Back to my HomePage.