DAVID G. SIMPSON

Personal Web Site

 
Home
News
Personal
Professional
Software
Photos
Reference
Contact Me

NASA Site
PGCC Site
SCHS Site
Esperanto
Moon Rocks
S-M Comics
Mouse Site
Art Gallery
   

SOFTWARE

Here's some software I've written, which you can download for free. These are mostly small, stand-alone programs; just download the source code and compile. Enjoy!

Scientific Software

  • Linear Regression
  • e2v.f90 - Convert particle energy to velocity (Fortran-90)
  • v2e.f90 - Convert particle velocity to energy (Fortran-90)
  • e2t.f90 - Convert particle energy to temperature (Fortran-90)
  • t2e.f90 - Convert particle temperature to energy (Fortran-90)
  • cg.f90 - Calculate Clebsch-Gordan coefficients (Fortran-90)

Celestial Mechanics

  • eqecl.f90 - Equatorial to/from ecliptic coordinates (Fortran-90)
  • rotelem.f90 - Rotate orbital elements (Fortran-90)
  • reduce.f90 - Reduction of an angle (Fortran-90)
  • Simple lunar ephemeris:

Mathematical Software

  • invhyp.f90 - Inverse hyperbolic functions (Fortran-90 module)
  • cuberoot.f90 - Cube root (Fortran-90 function)
  • crossprd.f90 - Vector cross product (Fortran-90 subroutine)
  • auxtrig.f90 - Auxiliary trigonometric functions (Fortran-90 module)
  • m22det.f90 - Determinant of a 2x2 matrix (Fortran-90)
  • m22inv.f90 - Inverse of a 2x2 matrix (Fortran-90)
  • m33det.f90 - Determinant of a 3x3 matrix (Fortran-90)
  • m33inv.f90 - Inverse of a 3x3 matrix (Fortran-90)
  • frac.f90 - Fractional part of a number (Fortran-90 function)
  • fraction.f90 - Fraction data type (Fortran-90 module)
  • dec2frac.f95 - Convert a decimal number to a fraction (Fortran-95)
  • rpn.f95 - A powerful RPN calculator (Fortran-95)

Calendar Calculations

  • holidays.f90 - Holidays (Fortran-90)
  • fedholidays.f90 - Federal holidays (Fortran-90)
  • cal.f90 - Calendar program (similar to UNIX "cal") (Fortran-90)
  • caljul.f90 - Calendar program for Julian calendar (similar to UNIX "cal") (Fortran-90)
  • greg2jd.f90 - Gregorian date to Julian day (Fortran-90)
  • jd2greg.f90 - Julian day to Gregorian date (Fortran-90)
  • doy2greg.f90 - Day of year to Gregorian date (Fortran-90)
  • greg2doy.f90 - Gregorian date to day of year (Fortran-90)
  • greg2dow.f90 - Gregorian date to day of week (Fortran-90)
  • leapyr.f90 - Leap year (Fortran-90)
  • easter.for - Date of Easter (Fortran-77)
  • julianday.f90 - Generate Julian day tables (Fortran-90)
  • doy.f90 - Generate day-of-year tables (Fortran-90)
  • Display the current date, time, day of year, and Julian day:
    • jd.c - C version
    • jd.f90 - Fortran-90 version

Computer-Related

  • Mouse Programming Language (C)
  • fix2free.f90 - Convert Fortran fixed to free format (Fortran-90)
  • chcase.f90 - Convert strings to uppercase or lowercase (Fortran-90)
  • toupper.f90 - Convert a file to uppercase (Fortran-90)
  • tolower.f90 - Convert a file to lowercase (Fortran-90)
  • dispcr.c - Display end-of-line characters (C)
  • replcr.c - Convert end-of-line characters (C)
  • replcrb.c - Convert end-of-line characters (batch version) (C)
  • datatest.c - Display C data type sizes (C)
  • byteswap.f90 - Reverse byte order of a variable (Fortran-90 module)
  • timer.f90 - Compute elapsed time (Fortran-90 module)
  • utf8.f90 - Display UTF-8 encoding of Unicode characters (Fortran-90)
  • Display whether computer is little- or big-endian:
  • Convert IEEE floating-point numbers to/from hex integers:
    • ieee.c - Single precision (C)
    • ieee.f90 - Single precision (Fortran-90)
    • dieee.c - Double precision (C)
    • dieee.f90 - Double precision (Fortran-90)

Linguistics

Games

Miscellaneous Software

  • roman.f90 - Roman numerals (Fortran-90)
  • isbn10.f90 - Compute ISBN-10 check digit (Fortran-90)
  • isbn13.f90 - Compute ISBN-13 check digit (Fortran-90)
  • marathon.f90 - Compute marathon training schedule (Fortran-90)
  • Fortune cookie program:
I'm most fluent in the Fortran and C computer programming languages. I also spent several years at NASA writing assembly language code for spacecraft on-board computers (the NSSC-I and DF-224).


RECOMMENDED COMMERCIAL SOFTWARE

These are the most useful commercial software applications I use:
  • 4NT command-line shell, by JP Software
  • TSE Pro text editor, by SemWare
  • Lahey Fortran-95 compiler, by Lahey
  • SigmaPlot plotting program, by Systat
  • PCTeX typesetting program, by PCTeX


Contact Information

I may be contacted at:
 

All software Copyright © 2006 David G. Simpson

http://www.DavidGSimpson.com

Webmaster: David G. Simpson
Page last updated: July 10, 2007.