Beamforming - filter dimensions

Christine Gruetzner christine.gruetzner at GOOGLEMAIL.COM
Wed Jul 1 17:19:29 CEST 2009

Dear All,

I'm using LCMV beamforming and I have a question regarding the
dimensions of the filter. We have two different configurations for
LCMV (see below) that result in one-dimensional filters (in the first
case) and three-dimensional filters (in the second case). It seems
that the only difference between the two configurations is the option
cfg.projectmom = 'yes' (in the first configuration) vs. cfg.projectmom
= 'no' (in the second configuration).

Do you have any idea what makes the difference and why I only get
one-dimensional filters in the first configuration? Which would be the
correct options to use?


configuration 1:
cfg = [];
    % replaced by:
    fullnameGrid = strcat(mripath, DesignLCMVSources{i,2});
    cfg = load(fullnameGrid);
    cfg.vol = cfg.hdm;

    %General source computation parameters
    cfg.method = 'lcmv';
    cfg.lambda = 0.05; % regularization of 0.5%
    cfg.powmethod = 'trace'; % compute rms power per dipolelocation
over all available directions = 'text';   % give feedback on the progress of the calculations
    cfg.keepfilter = 'yes';  % keep the beamformer filters (virtual
electrodes) for later use
    % cfg.singletrial = 'yes';
    cfg.keepmom = 'yes';
    cfg.projectmom = 'yes';
    cfg.keeptrial = 'yes';

    InFilename = strcat(datapath, DesignLCMVSources{i,1});
    load(InFilename); % a variable named TLDataOut must exist in the InFile
    DataLCMVIn = TLDataOutNew; clear TLDataOutNew; % for clarity of
code remove if too slow
    cfg.cov = DataLCMVIn.cov;

    DataLCMVOut = sourceanalysis(cfg, DataLCMVIn);
configuration 2:
        % cfgLCMV.frequency = ... % the bandwidth in LCMV comptations is
        % chosen in preprocessing (aka FreqLimits)
        % cfgLCMV.projectnoise='yes'; % ???
        cfgLCMV.lambda = DICSlambda ; % use the same as for DICS here
        cfgLCMV.powmethod  = 'trace';

        cfgLCMV.fixedori       = 'no';
        cfgLCMV.projectnoise   = 'no'; % these filters are for
computing virtual electrodes later
        cfgLCMV.projectmom     = 'no';

        % computation
        cfgLCMV.dim=[Nx Ny Nz]
        disp('running LCMV source analysis for common filters/virtual

The aim of this list is to facilitate the discussion between users of the FieldTrip  toolbox, to share experiences and to discuss new ideas for MEG and EEG analysis. See also and

More information about the fieldtrip mailing list