# Class TamuraNeiDistanceMatrix

java.lang.Object
jebl.evolution.distances.BasicDistanceMatrix
jebl.evolution.distances.TamuraNeiDistanceMatrix

All Implemented Interfaces:
  `DistanceMatrix`

public class TamuraNeiDistanceMatrix extends BasicDistanceMatrix
Date: 22/01/2006 Time: 17:28:59

Version:
  $Id: TamuraNeiDistanceMatrix.java 996 2009-03-31 01:15:35Z amyzeta $ Estimation of the Number of Nucleotide Substitutions in the Control Region of Mitochondrial DNA in Humans and Chimpanzees. Koichiro Tamura and Masatoshi Nei, 1993 Estimated Distance is d = 2 (pi(A) pi(G) k_R + pi(T) pi(C) k_Y + PI(A)PI(C)) t, where k_R/k_Y are the rates of Purine/Pyrimidine respectivly. When distances grow large, the formulas break as estimates of number of transition/transversion becomes inconsistent, which results in negative logs. Returning "infinity" is not optimal as it breaks operations such as constructing consensus trees where distances for resampled sequences vary between (say) 2-3 and out "infinity" 10. As a workaround I try to reduce the number of transitions/transversions by the minimum amout which brings the estimates back to a consistent state.
Author:
  Joseph Heled

## Constructor Summary

Constructors
Constructor
Description
`TamuraNeiDistanceMatrix(Alignment alignment, ProgressListener progress)`
`TamuraNeiDistanceMatrix(Alignment alignment, ProgressListener progress, boolean useTwiceMaximumDistanceWhenPairwiseDistanceNotCalculatable)`

## Method Summary

### Methods inherited from class BasicDistanceMatrix

`getDistance, getDistance, getDistances, getSize, getSubmatrix, getTaxa`

### Methods inherited from class Object

`equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Constructor Details

### TamuraNeiDistanceMatrix

public TamuraNeiDistanceMatrix(Alignment alignment, ProgressListener progress, boolean useTwiceMaximumDistanceWhenPairwiseDistanceNotCalculatable) throws CannotBuildDistanceMatrixException

Throws:
  `CannotBuildDistanceMatrixException` - only if useTwiceMaximumDistanceWhenPairwiseDistanceNotCalculatable is false

### TamuraNeiDistanceMatrix

public TamuraNeiDistanceMatrix(Alignment alignment, ProgressListener progress) throws CannotBuildDistanceMatrixException

Throws:
  `CannotBuildDistanceMatrixException`