[FieldTrip] Forward model for dipoles with fixed position and orientation

Leonardo Barbosa lsbarbosa at gmail.com
Tue Feb 1 03:05:59 CET 2011


Dear Fieldtrip users,

I'm trying to create a forward model for a fixed number of dipoles with
fixed positions and orientations (extracted from a MRI image using
freesurfer and a downsampling algorithm) so I can use it with my inverse
algorithm.
I read this tutorial <http://fieldtrip.fcdonders.nl/tutorial/headmodel>, a
few examples<http://fieldtrip.fcdonders.nl/example/compute_forward_simulated_data_and_apply_a_dipole_fit>and
function
headers <http://fieldtrip.fcdonders.nl/reference/ft_dipolefitting>, but I
still didn't find exactly what I'm trying to do.

Is it possible to have as a result of *ft_compute_leadfield*,
(and*ft_prepare_leadfield
*?,* ft_prepare_sourcemodel*?) a leadfield that depends only on the
*intensity* of the dipole? Because it has a fixed orientation, and the idea
is exactly reduce the number of unknowns. I noticed that SPM creates what
I'm trying to do (as copied below), but I'm trying to stay within fieldtrip
definitions so I can use it's inverse solutions to compare with mine,
although I only found examples for beamformers inverse solutions, and not
sparse methods. So this is the second question: is there any example of
source-space based sparse methods inverse solutions?

Thanks in advance for any help,

Best Regards
Leonardo Barbosa

Here is the SPM code (inside *spm_eeg_lgainmat*)

       % Forward computation

%--------------------------------------------------------------------------
        [vol, sens] = forwinv_prepare_vol_sens(vol, sens, 'channel',
forward(ind).channels);
        nvert = size(vert, 1);

        spm('Pointer', 'Watch');drawnow;
        spm_progress_bar('Init', nvert, ['Computing ' modality '
leadfields']); drawnow;
        if nvert > 100, Ibar = floor(linspace(1, nvert,100));
        else Ibar = [1:nvert]; end

        Gxyz = zeros(length(forward(ind).channels), 3*nvert);
        for i = 1:nvert

            Gxyz(:, (3*i- 2):(3*i))  = forwinv_compute_leadfield(vert(i, :),
sens, vol);

            if ismember(i, Ibar)
                spm_progress_bar('Set', i); drawnow;
            end

        end

        spm_progress_bar('Clear');
        spm_progress_bar('Init', nvert, ['Orienting ' modality '
leadfields']); drawnow;

        G{ind} = zeros(size(Gxyz, 1), size(Gxyz, 2)/3);
        for i = 1:nvert

            G{ind}(:, i) = Gxyz(:, (3*i- 2):(3*i))*norm(i, :)';

            if ismember(i, Ibar)
                spm_progress_bar('Set', i); drawnow;
            end

        end

        spm_progress_bar('Clear');
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.science.ru.nl/pipermail/fieldtrip/attachments/20110201/0b151a12/attachment.html>


More information about the fieldtrip mailing list