This function must be passed a valid Morphy object, or R may crash.
For most users, the function `TreeLength()`

will be more appropriate.

## Usage

```
MorphyTreeLength(tree, morphyObj)
MorphyLength(
parent,
child,
morphyObj,
inPostorder = FALSE,
nTaxa = mpl_get_numtaxa(morphyObj)
)
GetMorphyLength(parentOf, leftChild, rightChild, morphyObj)
C_MorphyLength(parentOf, leftChild, rightChild, morphyObj)
```

## Arguments

- tree
A tree of class

`phylo`

, with tip labels in the order generated by`RenumberTips`

, i.e. corresponding to the sequence of taxa in the corresponding Morphy object.- morphyObj
Object of class

`morphy`

, perhaps created with`PhyDat2Morphy()`

.- parent
Integer vector corresponding to the first column of the edge matrix of a tree of class

`phylo`

, i.e.`tree$edge[, 1]`

.- child
Integer vector corresponding to the second column of the edge matrix of a tree of class

`phylo`

, i.e.`tree$edge[, 2]`

.- parentOf
For each node, numbered in postorder, the number of its parent node.

- leftChild
For each internal node, numbered in postorder, the number of its left child node or tip.

- rightChild
For each internal node, numbered in postorder, the number of its right child node or tip.

## Functions

`MorphyLength()`

: Faster function that requires internal tree parameters. Node numbering must increase monotonically away from root.`GetMorphyLength()`

: Fastest function that requires internal tree parameters`C_MorphyLength()`

: Direct call to C function. Use with caution.

## See also

PhyDat2Morphy

Other tree scoring:
`CharacterLength()`

,
`IWScore()`

,
`LengthAdded()`

,
`MinimumLength()`

,
`TaxonInfluence()`

Other tree scoring:
`CharacterLength()`

,
`IWScore()`

,
`LengthAdded()`

,
`MinimumLength()`

,
`TaxonInfluence()`