List of my free software

A list of my programs I put to public domain follows. You can use it freely for non-commercial purposes; some of the programs are covered by GNU GPL. In case of problems, I can give you some support via e-mail.

What is not on this page:

And what is on this page:

Name Operating
Language Brief description

Software for physics

abrefr any
28. 1. 2007
C++ Calculation of the refractive indices for X-rays, of the Bragg angles and of inter-planar angles for any Bravais lattice.
xrdsl DOS
31. 5. 1996
not available Calculation of Bragg case of X-ray diffraction from substrates and multilayers (any order, periodic, Fibonacci). User-friendly: Turbo Vision environment. Further includes structure factor calculation program SF and calculation of tables of inter-planar angles and stereographic projection, program ANGLES.
SF Calculation of structure factors, susceptibilities...
Included in xrdsl, see above.
ANGLES Calculation of the refractive indices for X-rays, of the Bragg angles and of inter-planar angles for any Bravais lattice.
Included in xrdsl, see above.
unspec any
23. 11. 2015
C++ Unspec decomposes (splits) data files created by the program spec (by Certified Software) and it extracts scans from these data files. Very rich possibilities.


pm3d any
3. 2. 2002
C++ Produces gray scale/colour map of a 3D data file. It uses very simple, quick and powerful algorithm and produces postscript file to be previewed by GhostView or printed on a PostScript print (or on a non-PostScript printer by GhostScript). Managed via command line or via Java GUI.
pmgraf DOS
15. 1. 1996
Pascal Turbo Vision integrated environment with editor, easy (hot-key) DOS access and graph facilities. Both 2d graphs and 3d colour maps are supported. Good mouse support. No memory limitations for input data files (not for 3d!), since data are plotted directly from disk.
psview DOS, OS/2
31. 5. 1996
.bat, .cmd
Previewers of postscript files for DOS and OS/2, requires ghostscript.

Software for OS/2

pmCSTeX for EPM OS/2
16. 4. 2000
E language Complete (La)TeXing environment for the editor EPM and emTeX. Includes miscellaneous utilities for TeXing.
contributions for
OS/2 et al.
all the time

Interesting source codes (C, C++, Pascal)

marqfitp any
29. 3. 2012
Pascal and C++ Fitting routines: Marquardt-Levenberg method.

Miscellaneous tools

C++2ltx any
August 1998
awk Converts a C/C++ source code into a LaTeX file. Good replacement for a2ps convertor.
pmzbs any
28. 1. 1997
awk Zip Backup System: archiving system similar to RCS/CVS, but much easier and simpler to use.
mcrlf2 any
1. 6. 1998
C Converts text files from DOS to UNIX etc.: any `gymnastics' on CR/LF; does not change timestamp.
text any
16. 1. 1997
C++ Extracts all strings from a binary file. It is aware of various Czech encodings.
pmccc any
15. 1. 1996
C++ Converts Current Contents (on Diskette) structures to BibTeX.
pm4hp any
23. 12. 1994
C Changes printing properties of your Hewlett Packard (LaserJet/DeskJet) printer (e.g. fonts, line numbers etc.) from a command line. Good for network printers or printers without the front panel.

Other DOS software

mcrlf DOS
9. 11. 1994
Pascal Converts text files from DOS to UNIX etc.: any `gymnastics' on CR/LF (this program is now replaced by mcrlf2).
page DOS
3. 9. 1995
Pascal Formatovani textu pro tiskarny (zejmena sirokovalcove jehlickove), bajecny, nebot jsem ho napsal v roce 1989 pod CP/M (ted uz spise pouzivam a2ps a u2ps).
pismena DOS
3. 9. 1995
Pascal Konvertor malych a velkych pismen v textovych souborech. Tez vyhodny pro pascalske zdrojaky: konvertuje pismena ve jmenech podle jejich prvniho vyskytu v danem souboru (tj. podle deklarace).



is a program to transform 3d data to gray(scale) maps and newly to colours maps too! Output is postscript file, thus printable anywhere (that means not only at your PC, but on any synchrotron workstation (namely, we have found it useful at the Optics beamline in ESRF as well as at the Roemo beamline in DESY; also acknowledged by one mathematician who needed a rapid tool to visualize elements of big matrices). I used my own simple, but very powerful and rapid algorithm (see above as well). I avoided any data preprocessing even for non-gridded data. Very rapid even for data files of the length of several megabytes. In the last (January '96) version a new algorithm call truncation rods has been implemented. Moreover, direct output into ghostscript (using pipes) is available under OS/2 and Unix with X-windows.

Program is written in C++, it is free software under GPL, thus contains the full source code. Tested on PC (OS/2, Linux, DOS), HP, SGI, VMS (thus whatever your/synchrotron workstation runs). Executables for OS/2 and DOS are included.

pm3d is managed by a setup file (text file). For an easy management, I have worked out such a wonderful GUI in Java.

New in the last version: colours. Very useful program!
[Last update: 3. 2. 2002]

History of changes made since 1999:

version 2.9: February 2002

version 2.8: November 1999
version 2.7: May 1999
version 2.6b: April 1999
version 2.6a: March 1999
version 2.6: January 1999


is Turbo Vision program for DOS. It integrates editors and graphics, which presents both 2d graphs and 3d colour maps. It works without problems for very big files, there is no stupid 640 KB restriction. Very rapid 3d graphics using my own simple and powerful algorithm (see as well). Mouse support (zoom, tag, peak positions to file...) Program is available with the source code. source code. Very useful program!
[Last update: 15. 1. 1996]


extracts all strings from a binary file. Source code in C++ included.
[Last update: 16. 1. 1997: I've forgotten Inp.close()]


Executable file for DOS, source code in Turbo Pascal included. It converts text files (CR/LF problem) between DOS, Unix and Macintosh. Wildcards can be used. Program does not change the date of the file creations.
[Version 9. 11. 1994]


The program converts text files (CR/LF problem) between DOS, Unix and Macintosh conventions, or may strip all CR or LF. Wildcards can be used. Program does not change the date of the file creations. Executable file for DOS and OS/2, source code in C included.
[Version 1. 6. 1998]


Format and print text file on a printer or to a file. Many options, menu, batch mode. Any printer supported. DOS executable and Turbo Pascal source code.
[Version 3. 9. 1995]


Conversion of letters in text files (uppercase, lowercase, Czech, French...) DOS executable and Turbo Pascal source code.
[Version 3. 9. 1995]


are routines for for the minimalization (fitting) using Marquardt-Levenberg method. Two independent source codes: C++ and Pascal. Marquardt-Levenberg fitting method, C++ and Pascal source codes. Minor corrections for another C++ compilers.
[Update on 18. 1. 1996: small changes in order to support compilation by another C++ compilers. Update on 29. 3. 2012: fixes for compilation under gcc 4.5.]


calculates X-ray diffraction curves on superlattices (general, periodic, Fibonacci), using dynamical, semi-dynamical (Takagi-Taupin eqs.) or kinematical theory. It have written it during my graduate studies. User friendly graphic interface (Turbo Vision). This is a .exe file for DOS. In addition, programs for calculation of the Bragg angles, structure factors, susceptibilities, inter-planar angles and stereographic projection are included.
[Version 31. 5. 1996]


calculates indices of refraction and critical angles for X-rays, as well as the Bragg angles (for any Bravais lattice). Source code in C++, various makefiles and executable file for OS/2 and DOS included.
[Version 28. 1. 2007]


converts output files from Current Contents to format acceptable by BibTeX and to Physical Review LaTeX list.
[Last update: 15. 1. 1996]


is a program that allows to change parameters of your Hewlett Packard printer directly from your OS (e.g. fonts, line numbers etc.). It seems that these lazy guys at HP were not able to write one? Well, than this program is for you. In fact, it is a derived and improved version of one similar program from SimTel. C source code is included.
[Version 23. 12. 1994]


is a front-end (.bat and .ps file) for GhostScript, which enables one to preview postscript documents as comfortably as dviscr does.
[Version 31. 5. 1996]

pmCSTeX for EPM

IDE for (La)TeXing by means of the EPM editor in the operating system OS/2 Warp.
Please click its name above to go to big homepage.
[Version: January 1998]


Unspec decomposes (splits) data files created by the program spec (by Certified Software; hm, they have no such a command-line drive convertor) and it extracts scans from these data files. I think that unspec has more options than the specex program by ESRF; moreover, unspec comes with the source code thus it is available for any platform. Further, unspec supports also PSD/MCA data inside or outside the spec file.

You may know that spec is a program to driver diffractometers and other staff at beamlines, used e.g. in the ESRF.
[Version 23. 11. 2015]    [What is new: 2012 – support for multiple MCA's during measurement; 2015 – Option -T to select scans by names.]


This is an (awk) program for the conversion of a C++ source code into a TeX file in the format similar to that of the program a2ps. It know to typeset "TeX"-comments (the text inside the comments /*+ */ and //+ is typeset as a usual TeX text). It well manages long lines.
A snapshot: have a look how this program turns a .cpp file into a device independent file (you look at (a crude) bitmap if you do not have a dvi previewer ready to use.)
[Version: August 1998 -- completely rewritten (=beautified) original version from 28. 1. 1997]


Petr Mikulik's Zip Backup System. A program that zips (by the INFO-Zip) given files, looks whether you made such a backup before; if yes, then make diff with the older files in order not to saturate the hard disk space.
[Version 28. 1. 1997]

Enjoy my software!

Last update: March 2012.