<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
{font-family:"Cambria Math";
panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
{font-family:Calibri;
panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
{margin:0in;
font-size:11.0pt;
font-family:"Calibri",sans-serif;
mso-ligatures:standardcontextual;}
span.EmailStyle17
{mso-style-type:personal-compose;
font-family:"Calibri",sans-serif;
color:windowtext;}
.MsoChpDefault
{mso-style-type:export-only;
font-size:11.0pt;}
@page WordSection1
{size:8.5in 11.0in;
margin:70.85pt 70.85pt 56.7pt 70.85pt;}
div.WordSection1
{page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang="EN-US" link="#0563C1" vlink="#954F72" style="word-wrap:break-word">
<div class="WordSection1">
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Hi <br>
I am trying to use the DICS method on the simulated EEG data. I have used template head model and source model. However, I am still unable to find the source in the correct position. I have also ensured that electrodes are well aligned with the head model.
Below given is the script. Any further directions to pursue will be appreciated.<o:p></o:p></p>
<p class="MsoNormal">Thanks<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">% Add FieldTrip path and set defaults<o:p></o:p></p>
<p class="MsoNormal">addpath('C:\ToolBoxes\fieldtrip-20240110');<o:p></o:p></p>
<p class="MsoNormal">ft_defaults;<o:p></o:p></p>
<p class="MsoNormal">frequency = 10; % Frequency of interest<o:p></o:p></p>
<p class="MsoNormal">%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">% Create template head model and source model and lead field matrix<o:p></o:p></p>
<p class="MsoNormal">mri = ft_read_mri('C:\ToolBoxes\fieldtrip-20240110\template\headmodel\standard_mri.mat');<o:p></o:p></p>
<p class="MsoNormal">cfg = [];<o:p></o:p></p>
<p class="MsoNormal">segmented_mri = ft_volumesegment(cfg, mri);<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">headmodel = load('C:\ToolBoxes\fieldtrip-20240110\template\headmodel\standard_bem.mat'); % Load a standard BEM model<o:p></o:p></p>
<p class="MsoNormal">headmodel=headmodel.vol;<o:p></o:p></p>
<p class="MsoNormal">sourcemodel=load('C:\ToolBoxes\fieldtrip-20240110\template\sourcemodel\standard_sourcemodel3d5mm.mat');<o:p></o:p></p>
<p class="MsoNormal">sourcemodel=sourcemodel.sourcemodel;<o:p></o:p></p>
<p class="MsoNormal">elec = ft_read_sens('C:\ToolBoxes\fieldtrip-20240110\template\electrode\standard_1020.elc');<o:p></o:p></p>
<p class="MsoNormal">cfg = [];<o:p></o:p></p>
<p class="MsoNormal">cfg.grid = sourcemodel;<o:p></o:p></p>
<p class="MsoNormal">cfg.elec = elec; % Standard electrode positions (e.g., 10-20 system)<o:p></o:p></p>
<p class="MsoNormal">cfg.headmodel = headmodel;<o:p></o:p></p>
<p class="MsoNormal">cfg.reducerank = 2; % Reduce rank for EEG<o:p></o:p></p>
<p class="MsoNormal">leadfield = ft_prepare_leadfield(cfg);<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">%%%%%%%%%%%%%%%%%%%<o:p></o:p></p>
<p class="MsoNormal">% Create simulated data<o:p></o:p></p>
<p class="MsoNormal">cfg = [];<o:p></o:p></p>
<p class="MsoNormal">cfg.ntrials = 10;<o:p></o:p></p>
<p class="MsoNormal">cfg.triallength = 10;<o:p></o:p></p>
<p class="MsoNormal">cfg.fsample = 1000;<o:p></o:p></p>
<p class="MsoNormal">cfg.dip.unit = 'mm';<o:p></o:p></p>
<p class="MsoNormal">cfg.dip.pos = [-40 -20 50]; % left motor cortex<o:p></o:p></p>
<p class="MsoNormal">cfg.dip.mom = cfg.dip.pos/norm(cfg.dip.pos); % radial<o:p></o:p></p>
<p class="MsoNormal">cfg.dip.frequency = frequency;<o:p></o:p></p>
<p class="MsoNormal">cfg.elec = elec;<o:p></o:p></p>
<p class="MsoNormal">cfg.headmodel = headmodel;<o:p></o:p></p>
<p class="MsoNormal">data = ft_dipolesimulation(cfg);<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">%figure<o:p></o:p></p>
<p class="MsoNormal">%ft_plot_dipole(cfg.dip.pos, cfg.dip.mom, 'unit', 'mm')<o:p></o:p></p>
<p class="MsoNormal">figure<o:p></o:p></p>
<p class="MsoNormal">ft_plot_sens(elec, 'label', 'label');<o:p></o:p></p>
<p class="MsoNormal">ft_plot_headmodel(headmodel);<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">%%%%%%%%%%%%%%%%%%%<o:p></o:p></p>
<p class="MsoNormal">% Create reference channel for coherence<o:p></o:p></p>
<p class="MsoNormal">trial = cell(size(data.trial));<o:p></o:p></p>
<p class="MsoNormal">for k = 1:numel(trial)<o:p></o:p></p>
<p class="MsoNormal"> trial{k} = sin(2.*pi.*frequency.*data.time{k});<o:p></o:p></p>
<p class="MsoNormal">end<o:p></o:p></p>
<p class="MsoNormal">refdata.trial = trial;<o:p></o:p></p>
<p class="MsoNormal">refdata.time = data.time;<o:p></o:p></p>
<p class="MsoNormal">refdata.label = {'refchan'};<o:p></o:p></p>
<p class="MsoNormal">data = ft_appenddata([], data, refdata);<o:p></o:p></p>
<p class="MsoNormal">%%%%%%%%%%%%%%%%%%%<o:p></o:p></p>
<p class="MsoNormal">% Time frequency analysis<o:p></o:p></p>
<p class="MsoNormal">cfg = [];<o:p></o:p></p>
<p class="MsoNormal">cfg.method = 'mtmfft';<o:p></o:p></p>
<p class="MsoNormal">cfg.output = 'powandcsd';<o:p></o:p></p>
<p class="MsoNormal">cfg.tapsmofrq = 4;<o:p></o:p></p>
<p class="MsoNormal">cfg.foilim = [frequency frequency];<o:p></o:p></p>
<p class="MsoNormal">freq = ft_freqanalysis(cfg, data);<o:p></o:p></p>
<p class="MsoNormal">%%%%%%%%%%%%%%%%%%%%<o:p></o:p></p>
<p class="MsoNormal">% DICS source analysis<o:p></o:p></p>
<p class="MsoNormal">cfg = [];<o:p></o:p></p>
<p class="MsoNormal">cfg.method = 'dics'; <o:p></o:p></p>
<p class="MsoNormal">cfg.frequency = frequency; <o:p></o:p></p>
<p class="MsoNormal">cfg.grid = leadfield; <o:p></o:p></p>
<p class="MsoNormal">cfg.headmodel = headmodel; <o:p></o:p></p>
<p class="MsoNormal">cfg.dics.projectnoise = 'yes'; <o:p></o:p></p>
<p class="MsoNormal">cfg.dics.lambda = '10%'; <o:p></o:p></p>
<p class="MsoNormal">cfg.dics.keepfilter = 'yes'; <o:p></o:p></p>
<p class="MsoNormal">cfg.dics.realfilter = 'yes'; <o:p></o:p></p>
<p class="MsoNormal">cfg.channel = 'EEG';<o:p></o:p></p>
<p class="MsoNormal">cfg.senstype = 'eeg';<o:p></o:p></p>
<p class="MsoNormal">cfg.refchan = {'refchan'};<o:p></o:p></p>
<p class="MsoNormal">cfg.elec = elec;<o:p></o:p></p>
<p class="MsoNormal">%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%<o:p></o:p></p>
<p class="MsoNormal">% Plotting the source<o:p></o:p></p>
<p class="MsoNormal">source = ft_sourceanalysis(cfg, freq);<o:p></o:p></p>
<p class="MsoNormal">sourceNAI = source;<o:p></o:p></p>
<p class="MsoNormal">sourceNAI.avg.pow = source.avg.pow ./ source.avg.noise;<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">cfg = [];<o:p></o:p></p>
<p class="MsoNormal">cfg.downsample = 2;<o:p></o:p></p>
<p class="MsoNormal">cfg.parameter = 'pow';<o:p></o:p></p>
<p class="MsoNormal">sourceNAIInt = ft_sourceinterpolate(cfg, sourceNAI , mri);<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">maxval = max(sourceNAIInt.pow, [], 'all');<o:p></o:p></p>
<p class="MsoNormal">cfg = [];<o:p></o:p></p>
<p class="MsoNormal">cfg.method = 'ortho';<o:p></o:p></p>
<p class="MsoNormal">cfg.funparameter = 'pow';<o:p></o:p></p>
<p class="MsoNormal">cfg.funcolormap = 'cool';<o:p></o:p></p>
<p class="MsoNormal">ft_sourceplot(cfg, sourceNAIInt);<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
</body>
</html>