Software

Victor Liu

October 26, 2009


Software that I have written or repackaged.

  1. Programs
  2. Libraries and Headers
  3. Scripts
  4. Guides and Tutorials
  5. Earlier stuff

Programs

MPB logo

MIT Photonic Bands Win32

I managed to compile all components of MPB on Windows. This is by no means a perfect distribution. I simply hope that others will build off of this work.

See the project page for details.

Meep logo

Meep for Win32

A binary distribution of Meep for Windows.

See the project page for details.

unorg_surface_2d_vis logo

Unorganized 2D surface viewer

Visualizer for 3D surfaces with unorganized x-y coordinates.

See the project page for details.

KoenigSaver logo

KoenigSaver

A fractal screensaver that plots Koenig's eigenfunctions to Schroeder's functional equation.

Have a look at some example miniature screenshots.

The program computes an iterated complex map and plots the final complex numbers it obtains.

A more detailed description is described in this PDF.

Get the source with the SCR binary.

Put the SCR file in your C:\Windows\System32 (or equivalent) folder to use it.

MeshViewer screenshot

MeshAtlaser and MeshViewer

Creates parameterization atlases for meshes (similar to DirectX's UVAtlas).

Also included is a program to view the results.

Get the Windows binary.

The source is part of vDEC.

StereoView screenshot

StereoView

Stereoscopic rendering example.

Get the source and Windows binary.

See the project page for details.

TunnelingResonance

A C++ program and associated libraries to compute modes of 1D quantum mechanical structures by the tunneling resonance method. See documentation in headers and main files for details. No support is provided for this code.

Get the source code.

QBPlayer

An implementation of the QBASIC Play command. Usage:

echo "CDEFGAB>C" | QBPlayer.exe

Get the source with executable.

Libraries and Headers

Templated Numerics logo

Templated Numerics

C++ templates for numerical computation

See the project page for details.

This project is hosted at GitHub.

AArray logo

AArray

A PHP style array for C++

See the project page for details.

This project is hosted at GitHub.

Affine Primitives logo

Basic affine geometric primitives

C++ classes:

These header files can be included in any project. No implementation file is necessary.

You may need to modify these slightly if you don't use my config files from vDEC. Included is vdec_types.h to give you an idea for what additional definitions are required.

Note that a point in 3-space is semantically different from a vector. See the header comments for details.

FunctionSampler logo

curveutils

Was: FunctionSampler and PeakFinder

Fully resolve fine features in functions, find peaks, and fit lineshapes.

This project is hosted at sourceforge.

Win32 Libraries logo

Precompiled libraries for Windows

Windows (Visual Studio) versions of several scientific computing libraries. See project page for downloads.

vDEC FDTD example

vDEC

My developmental library for playing with concepts in DEC, as well as all-around geometry/mesh processing library. The picture at left is an illustration of a 2D FDTD simulation on an triangle mesh built with this framework.

See the project page for details.

BVP++ logo

BVP++

C++ wrapper library for Fortran boundary value problem solvers. Currently wrapps COLNEW and TWPBVP, allowing continuation and user-specified guesses.

See the project page for details.

Scripts

I Hate Makefiles logo

ihm.pl - I Hate Makefiles

A single Perl script automated build system.

Get it here: ihm.pl.

Just drop it into the base source directory, change the variables at the top of the script, and run.

Guides and Tutorials

TetGen logo

Using TetGen for Voronoi output

I have written a guide to using TetGen's Voronoi output using the programming interface instead of standalone operation. />

PixelEq

Using pixel DIVs to display equations with RLE.

CSS Triangles

Drawing triangles in CSS.

Pure CSS Hierarchical lists

Rendering hierarchies using only lists and CSS.

Earlier stuff

What I use

Software libraries

Packaged applications

I use a rather personalized setup on my computer, most of which is a bunch of freeware I use everyday. Also included are programs I keep open. In order of use, here's a noncomprehensive list.

Setting it up

This is a rather outdated rough outline of how I set up dual booting to my needs. This is mainly for my own records.

Partitioning

A hard drive is to be partitioned using Partition Magic boot disks or other boot disk partitioners as follows:

Size Type Pri/Log Usage
Disk 1 (160 GB)
120 MBXOSL,78PriFor XOSL graphical boot loader (not needed)
2 GBLinux SwapPriFor Linux swap space
2 GBFAT16PriFor Windows swapfile (E:)
150 GB* extendedLogThe Logical partition wrapper
50 GBNTFSLogMain Windows partition (C:)
44 MBLinux Ext2LogLinux /boot
20 GBLinux reiserfsLogLinux /
12 GBLinux Ext3LogLinux /home
46 GBFAT32LogWindows storage space (D:, for backup)
20 GBFAT32LogWindows storage space (G:, unused)
Disk 2 (120 GB)
20 GBFAT32PriWindows storage space (F:, unused)
94 GBNTFSPriMain Windows storage space (H:, for all data)

Install Windows XP Pro first. It may be necessary to hide some of the partitions to coerce the installation onto the designated C: drive and have the drive letter end up as C.

Disable graphic effects, services, uninstall Windows Components, etc.

Install Linux (Gentoo), using GRUB bootloader if not using XOSL, LILO if using XOSL.