the blog of wolfram schroers

Software, documentation and work samples

Table of contents:

Apple MacOS, iPhone and iPad
General purpose software
Scientific software
License and copyright notice

Apple MacOS, iPhone and iPad

Dynamic message resolution in Objective-C

Spring 2012. MacOS X example project that showcases a powerful feature of the Objective-C runtime: dynamic message resolution on MacOS X and iOS. Also see the corresponding article.

Download Download a gzipped .tar-file.

Animations with layers on the iPhone

Winter 2011. iPhone example project that showcases advanced techniques for implementing native animations on iOS. Also see the corresponding article.

Download Download a gzipped .tar-file.

PowerPlot — Business graphics on iOS (iPhone and iPad)

December 2010 — present. PowerPlot is a library for Business Intelligence and reporting. It is specifically designed for the iOS platform, i.e. the iPhone, the iPod Touch and the iPad. A demo app demonstrates how to use the library for various charts. It is available under a dual license model.

Click for PowerPlot main site.

PowerPlot step-by-step tutorial

January 2012. You can study this step-by-step tutorial for PowerPlot. The library has to be added manually.

Download Download a gzipped .tar-file.

Colors and fonts on iOS (iPhone and iPad)

October 2010. These are two categories in Objective-C for the UIColor and UIFont classes on iOS. They implement the NSCopying protocol for UIColor and NSCopying and NSCoding for UIFont. The color category also adds factory methods for the CSS standard colors using a convenience macro for defining RGB-colors. For further information see this article.

Download Download a gzipped .tar-file.

General purpose software

Pretty print program source code to HTML

August 2010, January 2011, January 2012. This is an improved version of the code2html source code formatter. In addition to the latest release from Peter Palfrader, this version also features support for CORBA-style IDL files, support for Forth source files and does no longer use the deprecated <FONT>-tags for code-highlighting, but uses Cascading Style Sheets (CSS), instead. A converter for refactoring static pages with <FONT>-tags is also included. The original version can be downloaded from and

Downlaod Download the gzipped tar-ball of the entire project.
Download Download the Perl source code for the CORBA-IDL extension as a patch only.
Download Download the Perl source code for the Forth extension as a patch only.

CORBA example programs

June 2010. This is a set of code examples that accompany my CORBA tutorial. The main ORB used is mico, programming languages are C++, ANSI C, and Java.

There are four gzipped .tar-files:

Part I
Going from a local object to a distributed one.
Part II
A simple distributed application – an enterprise-wide event logging/protocol facility.
Part III
The protocol facility with different ORBs, specifically Orbit2 (using the C programming language) and the Java SDK ORB.
Part IV
The Naming Service allows for enterprise-wide distribution even without a distributed network filesystem.

Trojan asteroid Java applet

November 1997. Java source code of my trojan asteroids applet which is explained in detail in my Trojan asteroid tutorial.

Download Download the Java source code.

Scientific software

Form factor analysis library

January 2010. Analysis software used for of the publication Phys.Rev.D82:094502 (2010). It is written in Python 2.6 and requires scipy, numpy, pyminuit and matplotlib (optional) to work. The documentation for the business logic (in the module called funcfit) can be accessed directly here.

Download Download a gzipped .tar-file.

multiz - GFF extraction program

December 2007. This program is the backbone behind a series of publications in lattice gauge theory, among them Phys.Rev.D68:034505 (2003), Phys.Rev.Lett.93:112001 (2004), Phys.Rev.Lett.96:052001 (2006) and Phys.Rev.D77:094502 (2008). The procedure that this program performs is an overdetermined fit as introduced in Phys.Rev.D68:034505 (2003), Secs. IIB and IIC.

The file is part of a larger production chain, predominantly based on USQCD software. It also requires a couple of files from the Numerical Recipes in C, 2nd Edition book. The documentation for the source code can be accessed directly here.

Download Download a gzipped .tar-file.

To generate input files for multiz, you need to compute the Lorentz-invariant parametrization of Generalized Parton Distributions. The following file is implemented in the Lisp-dialect Scheme and is written using Guile as the embedded Scheme interpreter.

Download Download the GPD library in Scheme.

Download Download a sample session in Guile which demonstrates the usage.

GRAL multiboson program

December 2001. This program implements a version of the TSMB multiboson code for dynamical Wilson fermions. The algorithmic and physical background is explained in my Ph.D. thesis and references cited therein. It is written in TAO – a proprietary programming language for the APE parallel systems.

Download Download a gzipped .tar-file.

Universal Gauge-file Converter

December 2000. This library converts gauge field configurations generated by a multitude of lattice-gauge-theory programs in the standard Gauge Connection format and vice versa. It automatically handles machine-dependent binary formats.

Download Download a gzipped .tar-file.

Molecular dynamics II

Spring 2000. This program is based on a demo of molecular dynamics on the APE-mille proprietary parallel computer. However, as the APE-mille is not around anymore, the computational kernel is replicated in Fortran for this project. Visualization is done using OpenGL, based on the Qt library.

Download Download a gzipped .tar-file.

Molecular dynamics

Summer 1997. Molecular dynamics is needed in protein folding, material science and astrophysics. When I came to Wuppertal University in 1997 I was put in charge of a project on the APE Quadrics supercomputer and this is the resulting project — a driver on the host controls the supercomputer and finally visualizes the three-dimensional information on screen. The code is written in TAO and ZZT (the proprietary programming languages of the APE machine) and in K&R C.

Download Download a gzipped .tar-file.

Anomalous dimensions

December 1999. This program calculates the anomalous dimensions of nucleon twist-three operators as discussed in the publication Phys.Lett. B458:109-116 (1999). It requires the GMP library and for the final eigenvalue diagonalization Mathematica. The programing language is C.

Download Download a gzipped .tar-file.


Starting Forth & Thinking Forth

January 2012. The examples and exercises from the books Starting Forth and Thinking Forth by Leo Brodie, adapted to work with Gforth.

Download “Starting Forth”, download a gzipped .tar-file.

Download “Thinking Forth”, download a gzipped .tar-file.

Modern Portfolio Theory Analysis code

December 2010. This program is written in Python and accompanies this article about investment portfolios.

Download Download a gzipped .tar-file.

Hypersystolic algorithm benchmarking code

June 2000. This program implements a benchmark for clusters and parallel computers written in Fortran using the MPI framework. Results can be used to optimize a given problem on a parallel machine or just to benchmark the performance of the computer.

Download Download a gzipped .tar-file.

License and copyright notice

Note: The software in this section is distributed according to either the GNU Public License, the GPL v3 or the licensing conditions (English) and Lizenzbedingungen (Deutsch) for the remainder of this web site. In particular, there are NO WARRANTIES of any kind — neither explicit nor implied! If such regulations are in conflict with your local laws, you are forbidden to access this software.