annotate toolboxes/FullBNT-1.0.7/HMM/mc_sample.m @ 0:e9a9cd732c1e tip

first hg version after svn
author wolffd
date Tue, 10 Feb 2015 15:05:51 +0000
parents
children
rev   line source
wolffd@0 1 function S = mc_sample(prior, trans, len, numex)
wolffd@0 2 % SAMPLE_MC Generate random sequences from a Markov chain.
wolffd@0 3 % STATE = SAMPLE_MC(PRIOR, TRANS, LEN) generates a sequence of length LEN.
wolffd@0 4 %
wolffd@0 5 % STATE = SAMPLE_MC(PRIOR, TRANS, LEN, N) generates N rows each of length LEN.
wolffd@0 6
wolffd@0 7 if nargin==3
wolffd@0 8 numex = 1;
wolffd@0 9 end
wolffd@0 10
wolffd@0 11 S = zeros(numex,len);
wolffd@0 12 for i=1:numex
wolffd@0 13 S(i, 1) = sample_discrete(prior);
wolffd@0 14 for t=2:len
wolffd@0 15 S(i, t) = sample_discrete(trans(S(i,t-1),:));
wolffd@0 16 end
wolffd@0 17 end