1. Introduction

Any sufficiently disguised bug is indistinguishable from a feature. -- Rich Kulawiec
This chapter introduces the PyPedal module for Python 2.4, provides an overview of key features of the software, and describes the contents of this manual.

PyPedal (Python Pedigree Analysis) is a tool for analyzing pedigree files. It calculates several quantitative measures of genetic diversity from pedigrees, including average coefficients of inbreeding and relationship, effective founder numbers, and effective ancestor numbers. Checks are performed catch common mistakes in pedigree files, such as parents with more recent birthdates or smaller ID numbers than their offspring and animals appearing as both sires and dams in the pedigree. Tools for pedigree visualization and report generation are also provided. PyPedal only makes use of information on pedigree structure, not individual genotypes. Allelotypes can be assigned to founders for use in gene-dropping simulations to calculate the effective number of founder genomes, but no other measures of alleic diversity are currently supported.

PyPedal is a Python (http://www.python.org/) language module that may be called by programs or used interactively from the interpreter. You must have Python 2.4 (or later) installed in order to use PyPedal as PyPedal makes use of features found only in that version. The Numarray module must also be installed in order for you to use PyPedal, and may be found at http://www.stsci.edu/resources/software_hardware/numarray. In addition, there are a number of third-party packages used by PyPedal; they are discussed in Chapter 2.

This manual is the official documentation for PyPedal. It includes a tutorial and is the most authoritative source of information about PyPedal with the exception of the source code. The tutorial material will walk you through a set of manipulations of a simple pedigree. All users of PyPedal are encouraged to follow the tutorial with a working PyPedal installation. The best way to learn is by doing -- the aim of this tutorial is to guide you along this doing.

This content of this manual is broken down as follows:

Chapter describes the license under which PyPedal is distributed. It is important that you review the license before using the program.
Installing PyPedal
Chapter 2 provides information on testing Python and installing PyPedal.
High-Level Overview
Chapter 3 gives a high-level overview of the components of the PyPedal system as a whole.
Chapter 7 provides a brief overview of the methodology used to calculate measures of genetic diversity.
Chapter 8 provides demonstrations of how to perform common tasks.
Chapter 9 provides details on producing graphics with PyPedal.
Chapter 10 provides details about the report generation tools available in PyPedal.
Implementing New Features
Chapter 11 introduces the idea of extensibility and walks the reader through the development of a new PyPedal routine.
Applications Programming Interface
Chapter includes a complete reference, including useage notes, for all functions in all PyPedal modules.
Chapter 12 provides a glossary of terms.
References and Indices
are provided at the end of the manual.

See About this document... for information on suggesting changes.