annotate toolboxes/FullBNT-1.0.7/bnt/CPDs/@discrete_CPD/CPD_to_pi.m @ 0:cc4b1211e677 tip

initial commit to HG from Changeset: 646 (e263d8a21543) added further path and more save "camirversion.m"
author Daniel Wolff
date Fri, 19 Aug 2016 13:07:06 +0200
parents
children
rev   line source
Daniel@0 1 function pi = CPD_to_pi(CPD, msg_type, n, ps, msg, evidence)
Daniel@0 2 % COMPUTE_PI Compute pi vector (discrete)
Daniel@0 3 % pi = compute_pi(CPD, msg_type, n, ps, msg, evidence)
Daniel@0 4 % Pearl p183 eq 4.51
Daniel@0 5
Daniel@0 6 switch msg_type
Daniel@0 7 case 'd',
Daniel@0 8 T = prod_CPT_and_pi_msgs(CPD, n, ps, msg);
Daniel@0 9 pi = pot_to_marginal(marginalize_pot(T, n));
Daniel@0 10 pi = pi.T(:);
Daniel@0 11 case 'g',
Daniel@0 12 error('can only convert discrete CPD to Gaussian pi if observed')
Daniel@0 13 end