# Bayesian sampling of multi-optima OU models

### Description

Runs a reversible-jump Markov chain Monte Carlo on continuous phenotypic data on a phylogeny, sampling possible shift locations and shift magnitudes, and shift numbers.

### Usage

1 2 3 4 5 |

### Arguments

`tree` |
a phylogenetic tree of class 'phylo' |

`dat` |
a named vector of continuous trait values matching the tips in tree |

`SE` |
The standard error of the data. Either a single value applied to all the data, or a vector of length(dat). |

`model` |
The parameterization of the OU model used. Either "OU" for standard parameterization with alpha and sigma^2; "OUrepar" for phylogenetic half-life and stationary variance (Vy), or "QG" for the Lande model, with parameters h^2 (heritability), P (phenotypic variance), omega^2 (width of adaptive landscape), and Ne (effective population size) |

`prior` |
A prior function of class 'priorFn' that gives the prior distribution of all parameters |

`ngen` |
The number of generations to run the Markov Chain |

`samp` |
The frequency at which Markov samples are retained |

`chunk` |
The number of samples retained in memory before being written to a file |

`control` |
A list providing a control object governing how often and which proposals are used |

`tuning` |
A named vector that governs how liberal or conservative proposals are that equals the number of proposal mechanisms. |

`new.dir` |
If TRUE, then results are stored in a new temporary directory. If FALSE, results are written to the current working directory. If a character string, then results are written to that working directory. |

`plot.freq` |
How often plots should be made during the mcmc. If NULL, then plots are not produced |

`outname` |
The prefix given to files created by the mcmc |

`ticker.freq` |
How often a summary log should be printed to the screen |

`tuning.int` |
How often the tuning parameters should be adjusted as a fraction of the total number of generations (currently ignored) |

`startpar` |
A list with the starting parameters for the mcmc. If NULL, starting parameters are simulated from the prior distribution |

`moves` |
A named list providing the proposal functions to be used in the mcmc. Names correspond to the parameters to be modified in the parameter list. See 'details' for default values. |

`control.weights` |
A named vector providing the relative frequency each proposal mechanism is to be used during the mcmc |

`lik.fn` |
Likelihood function to be evaluated. Defaults to |

### Details

By default, the alpha, sig2 (and various reparameterizations of these parameters) are adjusted with multiplier proposals, theta are adjusted with sliding window proposals, and the number of shifts is adjusted by splitting and merging, as well as sliding the shifts both within and between branches. Allowed shift locations are specified by the prior function (see make.prior()).