I have worked on
software in Matlab for projecting star
fields / star
positions (keywords:
Matlab, astronomy, pointing) for determining precise pointing
of
digitized video frames. This toolbox includes a celestial database and
projects the astral component of the night sky for a given location and
time. It then uses least squares fitting to determine where a video
image
was looking.
Do you wish your colleagues were using Matlab instead of IDL? (Or vice versa!?) I believe that IDL has astonishingly primitive plotting, inflexible variable types, and a nearly inconceivable lack of built in utilities. Matlab 5 comes with code to write MAT file format files from C. I have written a tool to write Matlab-format files from within IDL (keywords: converting from IDL to Matlab MAT file convert from IDL to Matlab writing MAT file format from IDL). This may be more convenient than using the "idl2matlab" software, which requires starting up a Matlab kernel each time it's used. My software is juvenile [2002] -- please let me know if you use it, and tell me if you extend its functionality -- but it works perfectly and I would like to help others not waste their time starting from scratch! There are just two files: cpblwritemat.c and writemat.pro. The latter is ugly (presumably there is a proper way?!), and a lovely example of why I sometimes loathe IDL. If you use these files, also email me for the most up to date versions.
[2000] I have worked on developing a
sensible set of tools for writing my PhD dissertation, with the goal of
having
others in our field use a common LaTeX bibliography database (BibTeX)
of all the sprites papers and presentations, and in improving some
default behaviours of LaTeX in the thesis.sty style. Please see my LaTeX page for advice on theses and BibTeX (and
PDF.)
[2008] I have spent much time dealing with tables and making scripts to format regression table output into LaTeX using various features. A bunch of what I've learned about tables is in cpblTables.sty
Some other customisations for thesis, beamer, etc are in cpblRef.sty Questions:
I use a lot of open source (freedom, not
freebie!) software.
I write horrible Perl; you can ask me for:
+ +
An interface to the statistical software, Stata, and between it
and LaTeX. I do almost all my Stata analysis and programming in
Python. This is motivated partly by some custom repetitive statistical
tasks I
needed, partly to save the hassle of compiling multiple regression
outputs into one table, partly 'cause I could not stand to start
programming in Stata's own language. Much of what I can now do is captured in my pystata [zip] package. As an example,
running the demo regressions-demo.py a few in a
row will
[2006+] I now write most things in Python. Great for manipulating
data.. etc
Some python scripts are online:
Definitions:
tree: a nested set of dicts with a list of some kind of list at the bottom level of each dict. Typically, the terminal lists are lists of dicts which have discrete-valued properties used to separate them in the tree heirarchy. For instance, a set of dicts describing properties of fruit could be turned into a tree based on the sequence of properties: 'colour','shape','sweetness'. The resulting tree might have top-level keys 'red','green','yellow'. subtree: a tree address: a list of keys that specifies the heirarchy of dict entries leading to a particular subtree or a leaf. branch: an address to a subtree or to a leaf keynames: the sequence of properties (of a set of dicts distributed within lists at leaves) used to define the tree structure. leaf: a list or other object at a bottom-level of a tree. regular tree: a tree with the property that at a particular level (depth), dicts are similar, ie have the same set of keys...... By convention, we ensure that non-regular trees have the property of no empty leaves. |
Some other stuff, not yet documented or put online:
For my dissertation I worked on some code for simulation of
electromagnetic fields' interaction with the lower ionosphere and
resultant optical emissions. Some literate-programming source code
(using noweb) is online, and you can ask me (or the VLF group at Stanford) for more details if you like.
There are three parts to the codes:
I used to have
mild RSI from typing too much. As everyone says, treating this in time
is
invaluable to your livelihood and happiness. Here is information,
graphics, etc on RSI.