Last data update: 2014.03.03

R: Parallel Tempering MCMC
parallel.temperR Documentation

Parallel Tempering MCMC

Description

Parallel Tempering MCMC

Performs Parallel Tempering MCMC to explore the species state space. Two types of moves are implemented: a mutation step (within chain) and an exchange step (between neighboring chains). If working with BLASTn data, use parallel.temper.nucl().

parallel.temper.explicit is the same function as parallel.temper but with a more involved syntax.

Usage

parallel.temper(step2, readSupport = 10, noChains = 12, seed = 1)

parallel.temper.explicit(readSupport = 10, noChains = 12, pij.sparse.mat,
  read.weights, ordered.species, gen.prob.unknown, outDir, seed = 1)

Arguments

readSupport

The number of reads the user requires in order to believe in the presence of the species. It is used to compute the penalty factor. The default value is 10. We compute the logarithmic penalty value as the log-likelihood difference between two models: one where all N reads belong to the "unknown" category and one where r reads have a perfect match to some unspecified species and the remaining reads belong to the "unknown" category.

noChains

The number of parallel chains to run. The default value is 12.

seed

Optional argument that sets the random seed (default is 1) to make results reproducible.

step2

list. The output from reduce.space(). Alternatively, it can be a character string containing the path name of the ".RData" file where step2 list was saved.

pij.sparse.mat

sparse matrix of generative probabilities, see value of ?reduce.space.

read.weights

see ?reduce.space.

ordered.species

see ?reduce.space.

gen.prob.unknown

see ?reduce.space.

outDir

see ?reduce.space.

Value

step3: A list with two elements. The first one (result) is a list that records MCMC information from each parallel chain. The second one (duration) records how much time the MCMC exploration took.

See Also

parallel.temper.nucl This function should be used when working with BLASTn data.

Examples

## See vignette for more details

## Not run: 
# Either load the object created by previous step (i.e from function reduce.space() )
data(step2)   ## example output of reduce.space
step3<-parallel.temper(step2=step2)

# or alternatively point to the location of the step2.RData object
step3 <- parallel.temper(step2="/pathtoFile/step2.RData")

## End(Not run)

Results