Scientific & Mathematics Software 

This page contains a collection of simple (and not so simple) programs and applications that I have written over the past twenty years, and which either demonstrate some mathematical or scientific principle, or which have been used for my own research projects. (These were available for download until June 2013 when a denial-of-service attack collapsed the hosting server. I will try to re-upload them once I have setup a new server.)

Blaschke Diagrams:  A visualization of the Blaschke condition.for a specific class of series parameterized by an exponent s, 

a_n = \frac{1}{1 - (n+1)^s} exp(i\sqrt{n+1})

and coloured according to the number of iterations to generate B_{N+1} - B_N < epsilon.

 

Dynamic Dimension:  A simple program that I wrote in my final year as an undergraduate student which would simulate gravitational orbits and clustering in higher dimensional models of the Universe, including effects from slow variations in the scale of the hidden dimensions. I dropped the program because my computer at the time didn't have the power to simulate more than a few massive objects. (I did rewrite this program a few years later as part of my graduate studies research work, but it didn't lead to any publishable research projects)

Escape Fractals:  Another simple program that generates random patterns (not always fractals) by iterating the two polynomials

x -> a x^2 + b x + c y^2 + d y + e xy + f

y -> g x^2 + h x + i y^2 + j y + k xy + l

using random values for the twelve coefficients, and colouring the pixels based on the number of iterations required to exceed a pre-set bound.

 Exoplanet Explorer: A simple C# program that I started writing in 2012 to simulate the formation and evolution of exoplanets around various types of stars. At present the stellar parameters and materials for planet formation are set manually, but I intend to eventually include more realistic physical processes into it instead. My eventual goal is to have a program that can start with a disc of dust around a star, and evolve to the point of having a detailed surface of an exoplanet complete with terrain features and accurate atmospheric conditions, although these projects may be a long while in the future.

Feather Fractals:   A simple app to draw a class of iterated fractals known colloquially as "Feather Fractals". By adjusting three parameters, the app draws a pattern generated by iterating its generating formula over 100,000 points in the plane. This program also allows zooming in on smaller details, which also contain interesting details.

IFS Explorer:  A simple C# application that allows the user to quickly create iterative fractals using the same methods as my Chaos Game Screensaver. I originally wrote it to test patterns for the screensaver, but now it has become a separate project.

Julia:  Another simple Windows application that I wrote in C# which takes a complex number as input, and generates the corresponding Julia set. This program also has a setting to draw both the Mandelbrot set and specific subsets of it.

 Maze-Runner Screensaver -  A simple screensaver program that draws one of over 100,000 mazes on the screen, and then the computer tries to solve the maze. (Not all the mazes it selects can be solved, but it can determine that as well). It is an entertaining display originally developed as an offshoot of an experimental AI program I wrote in the 1990s, and has been used more recently to explore other mathematical research projects that I have worked on.

NeuralNet:  A C# class I wrote in 2009 for modelling basic neural networks. It includes individual neurons and a class for containing them, as well as a visualization routine for monitoring the development of the neural network. In the image to the left, each node of the graph represents a neuron and the connecting lines represent neural connections with the colour of each being determined by the properties of the two neurons.

 

Nucleosynthesis:  A piece of code I adapted from Fortran into C++ while I was a graduate student, this project simulates the production of light chemical elements in the Big Bang, with options in the code for including new particles and exotic physics such as catalyzed Big Bang nucleosynthesis.

Medical Imaging Simulator: An application that I wrote in C# in 2019 while recovering from surgery, and intended for use in my own research into developing new medical imaging technologies and related reconstruction algorithms. At this point it is limited to simulations of computed tomography scans, with either filtered back-projection or 2D Fourier reconstruction algorithms, but I intend to expand it later to include other medical imaging modalities and more experimental reconstruction algorithms.

Make a free website with Yola