Home‎ > ‎


The cuttlefish software package is an ergonomic and object-oriented C++ data-reduction pipeline for the Navy Precision Optical Interferometer (NPOI) starlight path.

  • Cuttlefish creates bias-corrected and calibrated |V|2 and triple product scan averages from "one-second" averages using a single unix command.
  • The input and output files are in HDS format.
  • Fixed-column ASCII files can be created from HDS output files, suitable for spreadsheet manipulation and visualization.
  • Cuttlefish can be easily augmented to include:
    • A command-line and graphical-user interface using either IDL or python.
    • Embarrassingly parallel processing.
    • Reading/Writing HDF5, OI-FITS, and uvfits format files.
    • Coherent averaging and optical interferometric polarimetry.
    • Raw data manipulation and visualization.

The gzipped tarball is hosted here.  The design/user manual link is near the bottom of this page.  There are several things to keep in mind:
  • I am responsible for all bugs.  If you find any let me know, I am always responsible for them.  I will not, however, add new features until I find additional funding.
  • This package has been tested on many input files.  Some early input files do not contain some information or their format may not be correct.  Let me know if you find such a file.
  • The README file tells you how to install the package.  It is not automatic, but it is easy.  Make sure that you have either the development version of either g77 and gfortran (for the HDS library).
  • The design/user manual shows the code design and how to use it.  If you have questions after reading this document, let me know.
  • For proper calibration, you must know a priori which stars are calibrators and add them (using HD catalog numbers only) to the diameter.txt file.
  • The bias removal algorithms are not optimum.
    • |V|2: Closed form Poisson, linear fit, power-law fit.
    • Triple product: Closed form Poisson.
    • Contingent on future funding, there will be a small research project to improve the bias removal algorithms.  It may even be performed on raw data instead of scan data.

Nicholas Elias,
Sep 23, 2014, 9:08 PM
Nicholas Elias,
Nov 2, 2014, 1:40 PM
Nicholas Elias,
Nov 2, 2014, 1:39 PM