wolffd@0: function y = sample_node(CPD, pev) wolffd@0: % SAMPLE_NODE Draw a random sample from P(Xi | x(pi_i), theta_i) (gmux) wolffd@0: % y = sample_node(CPD, parent_evidence) wolffd@0: % wolffd@0: % parent_ev{i} is the value of the i'th parent wolffd@0: wolffd@0: dpval = pev{CPD.dps}; wolffd@0: x = pev{CPD.cps(dpval)}; wolffd@0: y = gsamp(CPD.mean(:,dpval) + CPD.weights(:,:,dpval)*x(:), CPD.cov(:,:,dpval), 1); wolffd@0: y = y(:);