Home > spm_vbglmar_slice > spm_vb_w.m

spm_vb_w

PURPOSE ^

Variational Bayes for GLM-AR modelling in a slice - update w

SYNOPSIS ^

function [slice] = spm_vb_w (Y,slice)

DESCRIPTION ^

 Variational Bayes for GLM-AR modelling in a slice - update w
 FORMAT [slice] = spm_vb_w (Y,slice)

 Y             [T x N] time series 
 slice         data structure 

 %W% Nelson Trujillo-Barreto and Will Penny %E%

CROSS-REFERENCE INFORMATION ^

This function calls: This function is called by:

SOURCE CODE ^

0001 function [slice] = spm_vb_w (Y,slice)
0002 % Variational Bayes for GLM-AR modelling in a slice - update w
0003 % FORMAT [slice] = spm_vb_w (Y,slice)
0004 %
0005 % Y             [T x N] time series
0006 % slice         data structure
0007 %
0008 % %W% Nelson Trujillo-Barreto and Will Penny %E%
0009 
0010 if slice.verbose
0011     disp('Updating w');
0012 end
0013 
0014 X = slice.X;
0015 T = slice.T;
0016 p = slice.p;
0017 N = slice.N;
0018 k = slice.k;
0019 Bk = kron(diag(slice.mean_alpha),slice.D);
0020 B = slice.Hw*Bk*slice.Hw';
0021 
0022 if p > 0
0023     voxel=spm_vb_get_Ab (Y,slice);
0024 end
0025 
0026 for n=1:N,
0027     block_n           = [(n-1)*k+1:n*k];
0028     block_ni          = [1:N*k];
0029     block_ni(block_n) = [];
0030     Bnn               = B(block_n,block_n);
0031     Bni               = B(block_n,block_ni);
0032         
0033     if p > 0
0034         slice.w_cov{n}        = inv(slice.mean_lambda(n)*voxel(n).A + Bnn);
0035         w_mean = slice.w_cov{n} * (slice.mean_lambda(n)*voxel(n).b-Bni*slice.w_mean(block_ni,1));
0036     else
0037         slice.w_cov{n}        = inv(slice.mean_lambda(n)*slice.XTX + Bnn);
0038         w_mean = slice.w_cov{n} * (slice.mean_lambda(n)*slice.XTY(:,n)-Bni*slice.w_mean(block_ni,1));
0039     end
0040     slice.w_mean(block_n,1)=w_mean;
0041     slice.w2{n}=w_mean*w_mean'+slice.w_cov{n};
0042     
0043     % Update intermediate quantities
0044     if p>0
0045         slice.I.W_tilde(:,:,n)=reshape(slice.I.D(:,:,n)'*w_mean,p,p);
0046     end
0047 end
0048

Generated on Mon 23-Aug-2004 14:59:38 by m2html © 2003