dipole moment

Robert Oostenveld r.oostenveld at FCDONDERS.RU.NL
Fri Sep 15 13:09:52 CEST 2006


Begin forwarded message:

> From: Nathan Weisz <weisz at lyon.inserm.fr>
> Date: 15. September 2006 12:47:48 MESZ
> To: FieldTrip discussion list <FIELDTRIP at NIC.SURFNET.NL>
> Subject: Re: [FIELDTRIP] dipole moment
>
> hi robert,
>
> thanks for the answer. i'm still a little bit confused. i think it
> has something to do with the units of my volume conductor.
>
> %%%%%
> here my original settings with cm units:
> vol   = [];
> vol.r = 12*[0.88 0.92 1.00]; % radii of spheres, the head radius is
> 12 cm
> vol.c = [1 1/80 1];
> vol.o = [0 0 0];
>
> cfg            = [];
> cfg.elec       = dataav.elec;
>     cfg.elec.pnt = 12*cfg.elec.pnt;
> cfg.vol        = vol;
> cfg.grid.pos=12*[-.51 -.37 .49; .51 -.37 .49;-.01 -.67 .08;.00 .33 .
> 59];
> grid = prepare_leadfield(cfg);
>
> lf1=grid.leadfield{1};
> lf2=grid.leadfield{2};
> lf3=grid.leadfield{3};
> lf4=grid.leadfield{4};
>
> dipmom1=pinv(lf1)*dataav.avg;
> dipmom2=pinv(lf2)*dataav.avg;
> dipmom3=pinv(lf3)*dataav.avg;
> dipmom4=pinv(lf4)*dataav.avg;
>
> %%%%
>
> ----> this yields huge value:
> >> max(mean(dipmom3))
>
> ans =
>
>   7.3627e+03
>
> now the same thing with unit sphere
>
> %%%
>
> vol   = [];
> vol.r = [0.88 0.92 1.00];
> vol.c = [1 1/80 1];
> vol.o = [0 0 0];
>
> cfg            = [];
> cfg.elec       = dataav.elec;
>     cfg.elec.pnt = cfg.elec.pnt;
> cfg.vol        = vol;
> cfg.grid.pos=[-.51 -.37 .49; .51 -.37 .49;-.01 -.67 .08;.00 .33 .59];
> grid = prepare_leadfield(cfg);
>
> lf1=grid.leadfield{1};
> lf2=grid.leadfield{2};
> lf3=grid.leadfield{3};
> lf4=grid.leadfield{4};
>
> dipmom1=pinv(lf1)*dataav.avg;
> dipmom2=pinv(lf2)*dataav.avg;
> dipmom3=pinv(lf3)*dataav.avg;
> dipmom4=pinv(lf4)*dataav.avg;
>
> %%%%
>
> >> max(mean(dipmom3))
>
> ans =
>
>    51.1298
>
> best,
> nathan
>
>
>
>
> On 08.09.2006, at 12:39, Robert Oostenveld wrote:
>
>> Hi Nathan,
>>
>> On 7 Sep 2006, at 23:19, Nathan Weisz wrote:
>>> my intention is to steal some code of the dipolefitting function
>>> to model source activity of raw EEG data (keep fixed locations,
>>> just analyse changes in dipole moment; i have a leadfield matrix
>>> using prepare_leadfield). to test things i used a visual ERP data
>>> set as outputted by timelockanalysis.
>>
>> Probably you could use dipolefitting with cfg.nonlinear='no' and
>> cfg.gridsearch='no', then the dipole(s) stays where you initially
>> put it(them), and only the moment is estimated. But your approach
>> is also fine.
>>
>>> the waveforms look fine, i just get really huge values: ~14000 as
>>> maximum dipole moments (the N1 is about 6000). so my question is
>>> what units i have? do i have to scale by 1000 to get nAm (14 & 6
>>> nAm would make sense) or do these values imply that something has
>>> gone completely wrong.
>>
>> There are different physical entities with different units
>> involved, you have to ensure that they are all consistent:
>> electrode positions and volume conductor geometry represent
>> distance (e.g. meter), tissue resistance is in ohm per distance
>> (ohm/m -> conductance is the other way around), potentials are in
>> volt (or often in uV), currents are in A (or mA, uA, nA). If you
>> mix them up, it is easy to get a factor of 10^n difference. E.g. I
>> presume that your N1 is not "6000" Volts (if so, then I would
>> rather stay away from your subject).
>>
>> Robert
>



More information about the fieldtrip mailing list