Chapter 5: multiple-source transparent measurement
%LOAD DATA
clear
load multitemp.mat
%normal likelihood function
Ln=@(Dhat,SDhat,Nd) -Nd*log(Slist)-(Nd/2)*(((Dhat-Mlist)./Slist).^2+(SDhat./Slist).^2);
%Analysis loop
L2=-Slist; Lm=zeros(1401,1); Ls=zeros(1401,1); S=size(D,2);
for s=1:S,
L2=L2+Ln(mean(D(:,s)),std(D(:,s)),size(D,1)); end
%plot the mu posterior
figure; hold on
LS=logsum(L2,2,diff(Slist(1,1:2))); plot(Mlist(:,1),exp(LS-max(LS)),'k-','LineWidth',4); axis([95 105 0 1.01]); box off
for s=1:S, plot(mean(D(:,s)),.95,'ko','MarkerFaceColor',[.3 .4 .7],'MarkerSize',8); end
stem(mean(D(:)),[.4],'k-','MarkerFaceColor','k','LineWidth',3.5,'MarkerSize',11)
%plot the sigma posterior
figure; hold on
LS=logsum(L2,1,diff(Mlist(1:2,1))); plot(Slist(1,:),exp(LS-max(LS)),'k-','LineWidth',4); axis([0 10 0 1.01]); box off
for s=1:S, plot(std(D(:,s)),.95,'ko','MarkerFaceColor',[.3 .4 .7],'MarkerSize',8); end
stem(std(D(:)),.4,'k-','MarkerFaceColor','k','LineWidth',3.5,'MarkerSize',11)