Proceedings of SciPy 2008

SciPy 2008, the 7th annual Scientific Computing with Python conference, was held August 19 - 24, 2008 in Pasadena, California. 17 peer reviewed articles were published in the conference proceedings. Full proceedings and organizing committee can be found at https://proceedings.scipy.org/articles/PFVC8793.

How the Large Synoptic Survey Telescope (LSST) is using Python

The Large Synoptic Survey Telescope (LSST) is a project to build an 8.4m telescope at Cerro Pachon, Chile and survey the entire sky every three days starting around 2014. The scientific goals of the project range from characterizing the population of largish asteroids which are in orbits that could hit the Earth to understanding the nature of the dark energy that is causing the Universe's expansion to accelerate.
Robert Lupton

Pysynphot: A Python Re-Implementation of a Legacy App in Astronomy

Pysynphot is a package that allows astronomers to model, combine, and manipulate the spectra of stars or galaxies in simulated observations. It is being developed to replace a widely used legacy application, SYNPHOT.
Victoria G. Laidler, Perry Greenfield, Ivo Busko, +1

The SciPy Documentation Project

The SciPy Documentation Project seeks to provide NumPy and SciPy with professional documentation and documentation access tools in a variety of formats. As our first effort, we have sponsored the SciPy Documentation Marathon 2008, whose goal is to produce reference documentation for the most-used portions of NumPy.
Joseph Harrington

Matplotlib Solves the Riddle of the Sphinx

This paper shares our experience converting matplotlib's documentation to use Sphinx and will hopefully encourage other projects to do so. Matplotlib's documentation serves as a good test case, because it includes both narrative text and API docstrings, and makes use of automatically plotted figures and mathematical expressions.
Michael Droettboom

The SciPy Documentation Project (Technical Overview)

This summer saw the first NumPy Documentation Marathon, during which many thousands of lines of documentation were written. This paper gives a more detailed overview of the events leading to this project, and of the technical goals achieved.
Stefan Johann Van der Walt

Experiences Using SciPy for Computer Vision Research

SciPy is an effective tool suite for prototyping new algorithms. We share some of our experiences using it for the first time to support our research in object detection.
Damian Eads, Edward Rosten

Interval Arithmetic: Python Implementation and Applications

This paper presents the Python implementation of an interval system in the extended real set that is closed under arithmetic operations. This system consists of the lattice generated by union and intersection of closed intervals, with operations defined by image closure of their real set counterparts.
Stefano Taschini

Exploring Network Structure, Dynamics, and Function using NetworkX

NetworkX is a Python language package for exploration and analysis of networks and network algorithms. We discuss some of our recent work studying synchronization of coupled oscillators to demonstrate how NetworkX enables research in the field of computational networks.
Aric A. Hagberg, Daniel A. Schult, Pieter J. Swart

unPython: Converting Python Numerical Programs into C

unPython is a Python-to-C compiler intended for numerical Python programs. The compiler takes as input type-annotated Python source and produces C source code for an equivalent extension module.
Rahul Garg, Jose Nelson Amaral

Converting Python Functions to Dynamically Compiled C

Applications written in Python often suffer from the lack of speed, compared to C and other languages which can be compiled to native machine code. In this paper we discuss ways to write functions in pure Python and still benefit from the speed provided by C code compiled to machine code.
Ilan Schnell

Summarizing Complexity in High Dimensional Spaces

As the need to analyze high dimensional, multi-spectral data on complex physical systems becomes more common, the value of methods that glean useful summary information from the data increases. This paper describes a method that uses information theoretic based complexity estimation measures to provide diagnostic summary information from medical images.
Karl Young

Circuitscape: A Tool for Landscape Ecology

The modeling of ecological connectivity across networks and landscapes is an active research area that spans the disciplines of ecology, conservation, and population genetics. Here we describe Circuitscape, a computational tool developed for modeling landscape connectivity using circuit theory.
Viral B. Shah, Brad McRae

Finite Element Modeling of Contact and Impact Problems Using Python

This paper discusses an on going project to improve the accuracy of automotive crash simulations. An existing Python package for finite element analysis, SfePy, is presented along with plans to contribute additional features in support of this work, including nonlinear material modeling and contact between two bodies.
Ryan Krauss

Mayavi: Making 3D Data Visualization Reusable

Mayavi is a general-purpose 3D scientific visualization package. In this article, we focus on how Mayavi addresses the needs of different users with a common code-base, rather than describing the data visualization functionalities of Mayavi, or the visualization model exposed to the user.
Prabhu Ramachandran, Gaël Varoquaux

Analysis and Visualization of Multi-Scale Astrophysical Simulations Using Python and NumPy

The study the origins of cosmic structure requires large-scale computer simulations beginning with well-constrained, observationally-determined, initial conditions. We use Adaptive Mesh Refinement to conduct multi-resolution simulations spanning twelve orders of magnitude in spatial dimensions and over twenty orders of magnitude in density.
Matthew Turk

Realtime Astronomical Time-series Classification and Broadcast Pipeline

The Transients Classification Pipeline (TCP) is a Berkeley-led, Python based project which federates data streams from multiple surveys and observatories, classifies with machine learning and astronomer defined science priors, and broadcasts sources of interest to various science clients. This multi-node pipeline uses Python wrapped classification algorithms, some of which will be generated by training machine learning software using astronomer classified time-series data.
Dan Starr, Josh Bloom, John Brewer

The State of SciPy

The annual SciPy conference provides a unique opportunity to reflect on the state of scientific programming in Python. In this paper, we will look back on where we have been, discuss where we are, and ask where we are going as a community.
Jarrod Millman, Travis Vaught

Editorial

This year marked the 7th edition of the conference; however, it is the first edition for which proceedings are to be published. We are thrilled by this new development. These proceedings are the sign of a maturing community not only of developers, but also of scientific users. Python’s use as a tool for producing scientific results is, by now, well established. Its status as the subject of research and academic publication is now being recognized and we hope that the proceedings of the SciPy Conference will help communicate how scientists and engineers are using and building upon various Python tools to solve their problems.
Gael Varoquaux, Travis Vaught, Jarrod Millman