Here is the Logo.

Parallel Image processing with Mathematica and algorithms in CWeb.

Pages for the documentation of my research at University Leipzig.
Maintained by Patrick Scheibe.
home
projects
interests
cweb
mathematica
people
work
jens-peer
publications
contact

Things I'm personally interested in.

The SouthPark-me

Did you know that you can create your own SouthPark-avatar at www.southpark.de? The results are not perfect but if you use software like InkScape, CorelDraw or Illustrator for post-processing you can achieve quite nice
Me The other me

CWeb-Plugin for the Jetbrains IDEA IDE

Currently I'm working on a simple CWeb-plugin for the programming environment IDEA. I started by studying the CWeb Manual and created lexer for the syntax-highlighting from it. The highlighter recognizes the different possible parts of a web-file and does simple coloring of sections, keywords and (La)TeX-commands
Picture of the working CWeb-Plugin for IDEA.
Next steps will maybe include to implement simple Live Template Expander which will help to create new web-sections. To put some intelligent help in it I plan to implement a parsing and managing of the web-sections which will include things like: go to declaration, go to definition and a section lookup. But since the documentation to the openapi of IntelliJ is so bad this is not going to happen very soon.

Moderating the Internet forum ChemieOnline

At the end of 2007 I was asked whether I'm interested in moderating the mathematics and computer-science sections of the ChemieOnline Internet Forum. Since I was there anyway when I got bored of working I agreed and so I'm moderator since January 2008.

Quad: An OpenGL/Haskell implementation of the game known as Quarto

Quad is an implementation of the original game Quarto invented by Blaise Muller in the 90's. It is a complex variant of the Four Wins game since in Quad every gaming piece has not only one but four characteristics. They are Color, Size, Shape and Hole/No-Hole. It is played on a 4x4 board and one speciality is that you put a piece which was selected from your opponent.

Screen 1 of Quad Screen 2 of Quad Screen 3 of Quad

This project was part of a lecture exercise. Therefore my task was to implement it in a purely functional programming language and to use OpenGL as graphics library. I decided to use Haskell which supported OpenGL. In this case the biggest hitch was to get the stuff compiling since the especially the OpenGL library wasn't maintained very good. I don't think the code compiles without changes today since they change the spec of Haskell and the libs very often. But the latest release without AI can be found here (quad20050406.tar.bz2).

Since some of my friends showed big interest in the stuff we hacked a tree-search AI to the game in the last winter holidays. The code is anywhere on my hard-disk. If someone is really interested then he can have a copy.

Tutorial to the popular Julia-Set exercise.

Since I stumbled very often over questions concerning Julia-Sets I decided one night to write a very complete tutorial which assumes almost none of the mathematical prerequisites. This tutorial is available in German only and it can be downloaded here

In Mathematica you can easily do a conditional iteration with the function NestWhile. Therefore the Julia-Set iteration over a matrix of points in the complex plane is a short statement. Using ArrayPlot for visualisation solves the Julia-Set exercise in in a few minutes (I'm remembering this being a two-week task in my C-Language lesson at university).

ArrayPlot[#, ColorFunction -> "ThermometerColors"] &@ Table[ First@NestWhile[ {First@# + 1, (Last@#^2 + (0. + 0.8 I))} &, {1, (i + I j)}, Abs[Last@#] < 2 &], {i, -0.1, 0.1, 0.0001}, {j, -0.1, 0.1, 0.0001}]
Julia-Set 1 Julia-Set 2 Julia-Set 3