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.
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)