Back to the main page.

Bug 1443 - ICA component rejection followed by leadfield computation

Reported 2012-04-23 18:28:00 +0200
Modified 2015-01-27 17:13:37 +0100
Product: FieldTrip
Component: core
Version: unspecified
Hardware: PC
Operating System: Windows
Importance: P3 normal
Assigned to: Johanna
Depends on:
See also:

Johanna - 2012-04-23 18:28:04 +0200

Hello, (Should this be sent to the email list instead?) Something is not clear in the documentation (possibly incorrect in the code?), in going through the steps of ft_componentanalysis, ft_rejectcomponent, ft_prepare_leadfield, which I am attempting for 275 CTF MEG data.[]=ft&s[]=rejectcomponent implies that the MEG *coils* (not chan) are important for leadfield calculation. ft_componentanalysis correctly puts NaN in chanpos and chanori for 'comp', since these are meaningless here. However, when calling ft_rejectcomponent, one may optionally include the original 'rawdata' from which 'comp' was created: raw_rej1=ft_rejectcomponent(cfg,comp,rawdata); which results in raw_rej1 with grad including the original chanpos/ori, whereas raw_rej2=ft_rejectcomponent(cfg,comp); results in the grad of raw_rej2 containing NaN for chanpos/ori. The raw_rej1.grad.tra and raw_rej2.grad.tra are slightly different from each other (see lines 121 versus 134 of ft_rejectcomponent). But otherwise raw_rej1.trial and raw_rej2.trial are the same. When calling ft_prepare_leadfield with the cfg.grad=raw_rej2.grad, then no xgrid/ygrid/zgrid points are created, because lines 307-313 of ft_prepare_sourcemodel use chanpos. Thus, my conclusion is that raw_rej1.grad should be used with ft_prepare_leadfield. Is this correct? If so, is raw_rej1.grad.tra correct for leadfield computation? And then this should be made more clear in the documention/wiki. If not, then what is recommended to do? Thank you, Johanna

Johanna - 2012-04-24 10:34:44 +0200

see bug 1249

Jan-Mathijs Schoffelen - 2012-05-16 07:35:37 +0200

Good point! Let's discuss this with JM and implement some changes to the code/documentation

Johanna - 2013-02-06 14:39:08 +0100

see bug 1959.

Johanna - 2013-02-06 17:38:09 +0100

testing function added, test_bug1443

Johanna - 2013-09-24 15:30:42 +0200

I added an extra sentence to the comments/help of ft_rejectcomponent to further encourage and clarify when/why to use the third input argument of 'data'. I checked the wiki, and all examples in tutorials of calling ft_rejectcomponent use the third argument. Other issues of the bug seem either fixed via other closed bugs or addressed via other still-open bugs.