Home > vbmeg > functions > leadfield > eeg > vb_bem_inverse_eeg.m

vb_bem_inverse_eeg

PURPOSE ^

transform matrix to map dipole potencial to EEG potencial

SYNOPSIS ^

function [Peeg] = vb_bem_inverse_eeg(D,IXeeg,BEM)

DESCRIPTION ^

 transform matrix to map dipole potencial to EEG potencial
  [Peeg] = vb_bem_inverse_eeg(D,IXeeg,BEM)
 D     : Solid angle matrix for boundary surfaces [Nvertex x Nvertex]
 IXeeg : Vertex index for EEG sensor [Nsensor x 1]
 BEM.sigma     = conductivity for each layer, 各領域の伝導率 
               = [sigma(1), ..., sigma(Nsurf), 0]
 BEM.Nvertex   = # of vertex for each layer, 各境界面の頂点
               = [ start_id(1)     end_id(1)     ; 
                             ...                 ;
                   start_id(Nsurf) end_id(Nsurf) ]
               = [開始インデックス, 終了インデックス]

 Peeg : transform matrix to map dipole potencial to EEG potencial
        [Nsensor x Nvertex]
 Peeg : 双極子ポテンシャルからEEG センサポテンシャルへの変換行列

 2004-02-06 Taku Yoshioka
 2004-12-26 M. Sato modified
 2007-12-16  M. Sato Input & output are changed
 2008-10-8  M. Sato input is changed from 'Keeg' to 'BEM'
 2009-10-8  M. Sato correct constant factor : 1/sigma(1)

 Copyright (C) 2011, ATR All Rights Reserved.
 License : New BSD License(see VBMEG_LICENSE.txt)

CROSS-REFERENCE INFORMATION ^

This function calls: This function is called by:

SOURCE CODE ^

0001 function    [Peeg] = vb_bem_inverse_eeg(D,IXeeg,BEM)
0002 % transform matrix to map dipole potencial to EEG potencial
0003 %  [Peeg] = vb_bem_inverse_eeg(D,IXeeg,BEM)
0004 % D     : Solid angle matrix for boundary surfaces [Nvertex x Nvertex]
0005 % IXeeg : Vertex index for EEG sensor [Nsensor x 1]
0006 % BEM.sigma     = conductivity for each layer, 各領域の伝導率
0007 %               = [sigma(1), ..., sigma(Nsurf), 0]
0008 % BEM.Nvertex   = # of vertex for each layer, 各境界面の頂点
0009 %               = [ start_id(1)     end_id(1)     ;
0010 %                             ...                 ;
0011 %                   start_id(Nsurf) end_id(Nsurf) ]
0012 %               = [開始インデックス, 終了インデックス]
0013 %
0014 % Peeg : transform matrix to map dipole potencial to EEG potencial
0015 %        [Nsensor x Nvertex]
0016 % Peeg : 双極子ポテンシャルからEEG センサポテンシャルへの変換行列
0017 %
0018 % 2004-02-06 Taku Yoshioka
0019 % 2004-12-26 M. Sato modified
0020 % 2007-12-16  M. Sato Input & output are changed
0021 % 2008-10-8  M. Sato input is changed from 'Keeg' to 'BEM'
0022 % 2009-10-8  M. Sato correct constant factor : 1/sigma(1)
0023 %
0024 % Copyright (C) 2011, ATR All Rights Reserved.
0025 % License : New BSD License(see VBMEG_LICENSE.txt)
0026 
0027 %  変数の次元
0028 NS = length(IXeeg);  % # of sensor
0029 NV = size(D,1);      % # of vertex
0030 
0031 % 境界面頂点からEEGセンサへの射影行列
0032 Proj = zeros(NS,NV);
0033 
0034 for n=1:NS
0035     Proj(n,IXeeg(n)) = 1/(4*pi);
0036 end
0037     
0038 % Peeg : 双極子ポテンシャル P0 からEEG センサポテンシャルへの変換行列
0039 % P    : 求めたい境界面上のポテンシャル
0040 % P0   : 境界面上の双極子ポテンシャル
0041 % D    : 境界面立体角係数行列
0042 % Keeg : 多層モデルポテンシャル(EEG) 補正係数
0043 % P(EEG) : EEG センサポテンシャル
0044 % Proj   : EEG センサへの射影行列
0045 %
0046 %  D * P = Keeg .* P0
0047 %      P = inv(D) * (Keeg .* P0)
0048 % P(EEG) = Proj * P = (Proj * inv(D)) * (Keeg' .* P0)
0049 %        = Peeg * P0
0050 %  Peeg  = (Proj * inv(D)) .* Keeg
0051 %
0052 
0053 Peeg = Proj/D;
0054 
0055 % 多層モデルの場合: 伝導率による補正
0056 if exist('BEM','var'),
0057     if isempty(BEM), return; end;
0058     
0059     % 多層モデルの場合: 伝導率による補正
0060     
0061     Nvertex = BEM.Nvertex;        % 各境界面の頂点
0062     Nsurf    = size(Nvertex,1);    % 境界面の数
0063     sigma    = BEM.sigma  ;        % 各領域の伝導率
0064     
0065     if length(sigma)== Nsurf, sigma = [sigma(:); 0]; end;
0066     
0067     Keeg    = ones(1,NV);        % EEG ポテンシャル 計算補正係数
0068     
0069     % 境界面に関するループ
0070     for i=1:Nsurf,
0071         ix = Nvertex(i,1):Nvertex(i,2);
0072         
0073         % ポテンシャル係数
0074         Keeg(ix) = 1/(sigma(i) + sigma(i+1));
0075         %Keeg(ix) = sigma(1)/(sigma(i) + sigma(i+1));
0076         %Keeg(ix) = 2*sigma(2)/(sigma(i) + sigma(i+1));
0077     end
0078     
0079     Peeg = vb_repmultiply(Peeg , Keeg);
0080 end;
0081

Generated on Mon 22-May-2023 06:53:56 by m2html © 2005