Here, I occasionally share smaller pieces of software that I develop in my free time. Most of it is written in python or C++. The following is only a little selection of codes:
- quicklens - Strong gravitational lens visualization tool written in C++, based on libopencv.
For further details, see the github project page.
- Gravity Simulator - Very simple N-body code to play around with gravity on a CUDA-capable GPU – made for fun, visualising N-body problems and learning interesting stuff.
Requirements: GPU with CUDA support, libGSL (optional) - Fourier paint - Very small C++ script that lets you paint simple pictures by hand, and shows their Fourier transform on the side while you're drawing. Compile with:
g++ -o paint paint.cpp `pkg-config --libs --cflags opencv4`
(Note: if you have opencv < 4, it's probably simply "opencv"). If you don't havepkg-config
, include-I[INC_PATH]/opencv4
, add the library path and-lopencv_core -lopencv_imgproc -lopencv_highgui
. - simplefit - Small graphical python interface for fitting exponential, linear and polynomial growth through the using the python3-scipy routines, built with pysimplegui.
Required libraries:matplotlib
,numpy
,scipy
,pysimplegui
- polyfit - Small python3 script to find the closest polynomials to hand-drawn datapoints, for playing around.
Required libraries:matplotlib
,numpy
,scipy
- rProf (v1 beta) - Very simple python3 script to create radial profiles of *.FITS images, allowing also to produce a quick plot. The *.FITS standard was developed by NASA for storing astrophysical data.
Requires the following libraries:astropy
,numpy
andmatplotlib
Older scripts:
- fcalc - Small python3 script for elementary algebraic operations between two-dimensional *.FITS images.
Required libraries:matplotlib
,numpy
,scipy
andastropy
- v-shot.py - Python 2.7 tool for automated creation of screenshots from videos via mplayer (output: png galleries). Accepts many parameters and was designed for creating previews.
- YTget.py - Python 3 command line script for automated downloads of all first page videos from a YouTube channel, where videos already existing in the custom output location are omitted. This is most suited as a podcast function to be configured as a cronjob.
Requirements: Needs the python modulesrequests
andbs4
as well as an installation ofmovgrab
(which is available from here).