Select the sub-page you would like to go to below:


Here, I provide software which I have written, as well as a list of useful software on the web.
The list is provided as an easy reference for what I feel is the best (or easiest) program/tool for various tasks.
I typically do not list programs that are included in Windows/OSX or are available in standard Linux package repositories.

My Software

NLSEmagic NLSEmagic: A MATLAB/C/CUDA code package for integrating the one-, two-, and three-dimensional Nonlinear Schrodinger Equation. The code uses fourth-order differencing in time and second- and forth-order differencing in space. It takes full advantage of NVIDIA GPUs, allowing large 3D simulations to be performed on a local desktop or laptop.

List of Useful Software

Computational Software

MATLAB - Computational math software.
Dfield and pplane - Free java applet/MATLAB code to study ODE dynamics.
MAPLE - Symbolic and numerical math software.
Mathimatica - Symbolic and numerical math software.
WolframAlpha - Free online search and Mathimatica-powered symbolic math tool.
IDL - Computational math and visualization software.
R - Free computational math software. Very good for data analysis and statistics.

Programming Languages and Development Tools

Visual Studio Express - Free version of Microsoft compilers for Windows.
Cygwin - A Linux-like environment for Windows including a package manager. Great for code development using GCC.
G95 - Free FORTRAN 95 compiler for Linux, OSX, and Windows (use with Cygwin).
MPICH - Free MPI parallel computing libraries. Supports C/C++ and FORTRAN on Linux, OSX, and Windows (with Cygwin).
OpenMP - Library to parallelize C/C++ and FORTRAN code for multi-core CPUs using directives.
CUDA - NVIDIA's C/C++ extension for writing accelerated code for NVIDIA GPUs.
OpenACC - Library to parallelize C/C++ and FORTRAN code for accelerators (such as GPUs) using directives.

Code and Manuscript Editing Tools

Notepad++ - Free advanced text editor for Windows. Great for code editing.
Jedit - Free text editor specifically designed for writing code. Has plugins such as sftp integration, spell-checker etc.
RStudio - Free R development platform for Linux, OSX, and Windows.
JGRASP - Free JAVA development platform.
MIKTEX/LATEX - Markup language for generating publication-quality documents. Latex is supported on Linux and OSX. Miktex is a Windows version of Latex.
TexMaker - Free GUI tool to write and compile Latex documents. Supports Linux, OSX, and Windows.
Aurora - Latex add-on for Microsoft Word and Powerpoint on Windows (uses MIKTEX).
Kompozer - Free HTML WYSIWYG GUI editor which produces very clean code.

Communication and File Tools

PuTTY - Free SSH/SCP/SFTP client for Windows.
FileZilla - Free FTP/SFTP GUI tool for Windows/Linux/Mac.
Dropbox - Free file synching and online storage tool for Linux, OSX, and Windows.
GoToMyPC - An interface tool that allows one to access and control a PC remotely from the web.
7-Zip - Free file compression/zipping tool for Windows which can handle gz and tar files.

Image and Document Processing Tools

ImageMagick - Powerful image processing/manipulation tool suite for Linux, OSX, and Windows.
GIMP - Free image processing software for Linux, OSX, and Windows.
Oxelon Audio and Video Converter - Free video/audio converter for Windows.
GhostScript - Free pdf/eps tools for Linux, OSX, and Windows.
GSview - Free pdf/eps viewer for Windows, requires GhostScript.
PDFSam - Free tool to split and merge pdfs. Built for Windows OSX, and Java.
ConvertMyPDF - Free online tool to convert a pdf into txt, doc, jpg, or html.

Computer System and Maintenance Tools

AVAST - Free Antivirus software for Windows, OSX, and Android.
CUDA-Z - Free program for Linux, OSX, and Windows that displays detailed real-time specifications of any installed NVIDIA GPU.
Speccy - Free program for Windows that displays detailed real-time system information.
CCleaner - Free program for Windows that cleans up uneeded files, tweaks startup programs and services, and fixes registry errors.
Defragger - Free program for Windows that quickly defrags hard drives.
Recuva - Free program for Windows that can recover lost files on a hard drive.


Kyodai Mahjongg - Nice relaxing freeware mahjongg games with 3D graphics.
Good Old Games - Great company that takes old PC games and tweaks them to work on new OS/machines. The games are priced well, and come DRM free!