Sorry, I found the error.
Susanne
On 20.06.2014 14:40, Susanne Dietrich wrote:
> Hi SPM experts,
>
> I get different results when I use the SPM Menu window or batch the DCM model specification. What could be the reason?
>
> Thanks in advance
> Susanne
>
> In the SPM Menu window I click the following buttons:
>
> Timing information
> slice timing [s] 1.6
> Echo time TE [s] 0.04
>
> Model options
> modulatory effects bilinear
> states per regions one
> stochastic effects no
>
>
> For batch I used the following script:
>
>
> %----------------------------------------------
> % Driving input APv blind group
> %----------------------------------------------
> %----------------------------------------------
> clear all
> data_path = '/server/fo2-14/data4/data2/DCM_fa3s/110_89/'
> cd(data_path)
> % Initialise SPM
> %--------------------------------------------------------------------------
> %spm('Defaults','fMRI');
> %spm_jobman('initcfg');
> %spm_get_defaults('cmdline',1);
> % SPECIFICATION DCM "driving input and intrinsic connectivity within V1-Pv-A1"
> %--------------------------------------------------------------------------
>
> %%%%%%%%%%%%%%%%%%%%%%%%
> % m5 fw/bw-A=V=P-fw/bw
> %%%%%%%%%%%%%%%%%%%%%%%%
> %%%%%%%%%%%%%%%%%%%%%%%%
> % run1
> %%%%%%%%%%%%%%%%%%%%%%%%
>
> load(fullfile(data_path,'SPM.mat'));
> load(fullfile(data_path,'VOI_A1_1.mat'),'xY');
> DCM.xY(1) = xY;
> load(fullfile(data_path,'VOI_Pv_1.mat'),'xY');
> DCM.xY(2) = xY;
> load(fullfile(data_path,'VOI_V1_1.mat'),'xY');
> DCM.xY(3) = xY;
> DCM.n = length(DCM.xY); % number of regions
> DCM.v = length(DCM.xY(1).u); % number of time points
> DCM.Y.dt = SPM.xY.RT;
> DCM.Y.X0 = DCM.xY(1).X0;
> for i = 1:DCM.n
> DCM.Y.y(:,i) = DCM.xY(i).u;
> DCM.Y.name{i} = DCM.xY(i).name;
> end
> DCM.Y.Q = spm_Ce(ones(1,DCM.n)*DCM.v);
>
> DCM.U.dt = SPM.Sess(1).U(1).dt;
> DCM.U.name = [SPM.Sess(1).U.name];
> DCM.U.u = [SPM.Sess(1).U(1).u(33:end,1) ...
> SPM.Sess(1).U(2).u(33:end,1) ...
> SPM.Sess(1).U(3).u(33:end,1) ...
> SPM.Sess(1).U(4).u(33:end,1)];
>
> DCM.delays = repmat(SPM.xY.RT,DCM.n,1);
> DCM.TE = 0.04;
>
> DCM.options.nonlinear = 0;
> DCM.options.two_state = 0;
> DCM.options.stochastic = 0;
> DCM.options.nograph = 1;
>
> DCM.a = [1 1 1; 1 1 1; 1 1 1]; % [A1>A1 Pv>A1 V1>A1; A1>Pv Pv>Pv V1>Pv; A1>V1 Pv>V1 V1>V1];
> DCM.b = zeros(3,3,4);
> DCM.c = [1 1 1 1; 1 1 1 1; 0 0 0 0]; % A1: rv_sl rv_ss sl sl; Pv: rv_sl rv_ss sl sl; V1: rv_sl rv_ss sl sl];
> DCM.d = zeros(3,3,0);
>
> save(fullfile(data_path,'finalDCMInputAPv_m5_1.mat'),'DCM');
>
>
> %----------------------------------------------
> %----------------------------------------------
> % ESTIMATION
> %----------------------------------------------
> spm_dcm_estimate(fullfile(data_path, 'finalDCMInputAPv_m5_1.mat'));
>
>
>
> %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
> %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
> %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
>
> %----------------------------------------------
> % Driving input APv blind group
> %----------------------------------------------
> %----------------------------------------------
> clear all
> data_path = '/server/fo2-14/data4/data2/DCM_fa3s/110_89/'
> cd(data_path)
> % Initialise SPM
> %--------------------------------------------------------------------------
> %spm('Defaults','fMRI');
> %spm_jobman('initcfg');
> %spm_get_defaults('cmdline',1);
> % SPECIFICATION DCM "driving input and intrinsic connectivity within V1-Pv-A1"
> %--------------------------------------------------------------------------
>
> %%%%%%%%%%%%%%%%%%%%%%%%
> % m5 fw/bw-A=V=P-fw/bw
> %%%%%%%%%%%%%%%%%%%%%%%%
> %%%%%%%%%%%%%%%%%%%%%%%%
> % run2
> %%%%%%%%%%%%%%%%%%%%%%%%
>
> load(fullfile(data_path,'SPM.mat'));
> load(fullfile(data_path,'VOI_A1_2.mat'),'xY');
> DCM.xY(1) = xY;
> load(fullfile(data_path,'VOI_Pv_2.mat'),'xY');
> DCM.xY(2) = xY;
> load(fullfile(data_path,'VOI_V1_2.mat'),'xY');
> DCM.xY(3) = xY;
> DCM.n = length(DCM.xY); % number of regions
> DCM.v = length(DCM.xY(1).u); % number of time points
> DCM.Y.dt = SPM.xY.RT;
> DCM.Y.X0 = DCM.xY(1).X0;
> for i = 1:DCM.n
> DCM.Y.y(:,i) = DCM.xY(i).u;
> DCM.Y.name{i} = DCM.xY(i).name;
> end
> DCM.Y.Q = spm_Ce(ones(1,DCM.n)*DCM.v);
>
> DCM.U.dt = SPM.Sess(1).U(1).dt;
> DCM.U.name = [SPM.Sess(1).U.name];
> DCM.U.u = [SPM.Sess(1).U(1).u(33:end,1) ...
> SPM.Sess(1).U(2).u(33:end,1) ...
> SPM.Sess(1).U(3).u(33:end,1) ...
> SPM.Sess(1).U(4).u(33:end,1)];
>
> DCM.delays = repmat(SPM.xY.RT,DCM.n,1);
> DCM.TE = 0.04;
>
> DCM.options.nonlinear = 0;
> DCM.options.two_state = 0;
> DCM.options.stochastic = 0;
> DCM.options.nograph = 1;
>
> DCM.a = [1 1 1; 1 1 1; 1 1 1]; % [A1>A1 Pv>A1 V1>A1; A1>Pv Pv>Pv V1>Pv; A1>V1 Pv>V1 V1>V1];
> DCM.b = zeros(3,3,4);
> DCM.c = [1 1 1 1; 1 1 1 1; 0 0 0 0]; % A1: rv_sl rv_ss sl sl; Pv: rv_sl rv_ss sl sl; V1: rv_sl rv_ss sl sl];
> DCM.d = zeros(3,3,0);
>
> save(fullfile(data_path,'finalDCMInputAPv_m5_2.mat'),'DCM');
>
>
> %----------------------------------------------
> %----------------------------------------------
> % ESTIMATION
> %----------------------------------------------
> spm_dcm_estimate(fullfile(data_path, 'finalDCMInputAPv_m5_2.mat'));
>
>
> %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
> %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
> %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
>
> %----------------------------------------------
> % Driving input APv blind group
> %----------------------------------------------
> %----------------------------------------------
> clear all
> data_path = '/server/fo2-14/data4/data2/DCM_fa3s/110_89/'
> cd(data_path)
> % Initialise SPM
> %--------------------------------------------------------------------------
> %spm('Defaults','fMRI');
> %spm_jobman('initcfg');
> %spm_get_defaults('cmdline',1);
> % SPECIFICATION DCM "driving input and intrinsic connectivity within V1-Pv-A1"
> %--------------------------------------------------------------------------
>
> %%%%%%%%%%%%%%%%%%%%%%%%
> % m5 fw/bw-A=V=P-fw/bw
> %%%%%%%%%%%%%%%%%%%%%%%%
> %%%%%%%%%%%%%%%%%%%%%%%%
> % run3
> %%%%%%%%%%%%%%%%%%%%%%%%
>
> load(fullfile(data_path,'SPM.mat'));
> load(fullfile(data_path,'VOI_A1_3.mat'),'xY');
> DCM.xY(1) = xY;
> load(fullfile(data_path,'VOI_Pv_3.mat'),'xY');
> DCM.xY(2) = xY;
> load(fullfile(data_path,'VOI_V1_3.mat'),'xY');
> DCM.xY(3) = xY;
> DCM.n = length(DCM.xY); % number of regions
> DCM.v = length(DCM.xY(1).u); % number of time points
> DCM.Y.dt = SPM.xY.RT;
> DCM.Y.X0 = DCM.xY(1).X0;
> for i = 1:DCM.n
> DCM.Y.y(:,i) = DCM.xY(i).u;
> DCM.Y.name{i} = DCM.xY(i).name;
> end
> DCM.Y.Q = spm_Ce(ones(1,DCM.n)*DCM.v);
>
> DCM.U.dt = SPM.Sess(1).U(1).dt;
> DCM.U.name = [SPM.Sess(1).U.name];
> DCM.U.u = [SPM.Sess(1).U(1).u(33:end,1) ...
> SPM.Sess(1).U(2).u(33:end,1) ...
> SPM.Sess(1).U(3).u(33:end,1) ...
> SPM.Sess(1).U(4).u(33:end,1)];
>
> DCM.delays = repmat(SPM.xY.RT,DCM.n,1);
> DCM.TE = 0.04;
>
> DCM.options.nonlinear = 0;
> DCM.options.two_state = 0;
> DCM.options.stochastic = 0;
> DCM.options.nograph = 1;
>
> DCM.a = [1 1 1; 1 1 1; 1 1 1]; % [A1>A1 Pv>A1 V1>A1; A1>Pv Pv>Pv V1>Pv; A1>V1 Pv>V1 V1>V1];
> DCM.b = zeros(3,3,4);
> DCM.c = [1 1 1 1; 1 1 1 1; 0 0 0 0]; % A1: rv_sl rv_ss sl sl; Pv: rv_sl rv_ss sl sl; V1: rv_sl rv_ss sl sl];
> DCM.d = zeros(3,3,0);
>
> save(fullfile(data_path,'finalDCMInputAPv_m5_3.mat'),'DCM');
>
>
> %----------------------------------------------
> %----------------------------------------------
> % ESTIMATION
> %----------------------------------------------
> spm_dcm_estimate(fullfile(data_path, 'finalDCMInputAPv_m5_3.mat'));
>
>
> %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
> %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
> %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
>
> %----------------------------------------------
> % Driving input APv blind group
> %----------------------------------------------
> %----------------------------------------------
> clear all
> data_path = '/server/fo2-14/data4/data2/DCM_fa3s/110_89/'
> cd(data_path)
> % Initialise SPM
> %--------------------------------------------------------------------------
> %spm('Defaults','fMRI');
> %spm_jobman('initcfg');
> %spm_get_defaults('cmdline',1);
> % SPECIFICATION DCM "driving input and intrinsic connectivity within V1-Pv-A1"
> %--------------------------------------------------------------------------
>
> %%%%%%%%%%%%%%%%%%%%%%%%
> % m5 fw/bw-A=V=P-fw/bw
> %%%%%%%%%%%%%%%%%%%%%%%%
> %%%%%%%%%%%%%%%%%%%%%%%%
> % run4
> %%%%%%%%%%%%%%%%%%%%%%%%
>
> load(fullfile(data_path,'SPM.mat'));
> load(fullfile(data_path,'VOI_A1_4.mat'),'xY');
> DCM.xY(1) = xY;
> load(fullfile(data_path,'VOI_Pv_4.mat'),'xY');
> DCM.xY(2) = xY;
> load(fullfile(data_path,'VOI_V1_4.mat'),'xY');
> DCM.xY(3) = xY;
> DCM.n = length(DCM.xY); % number of regions
> DCM.v = length(DCM.xY(1).u); % number of time points
> DCM.Y.dt = SPM.xY.RT;
> DCM.Y.X0 = DCM.xY(1).X0;
> for i = 1:DCM.n
> DCM.Y.y(:,i) = DCM.xY(i).u;
> DCM.Y.name{i} = DCM.xY(i).name;
> end
> DCM.Y.Q = spm_Ce(ones(1,DCM.n)*DCM.v);
>
> DCM.U.dt = SPM.Sess(1).U(1).dt;
> DCM.U.name = [SPM.Sess(1).U.name];
> DCM.U.u = [SPM.Sess(1).U(1).u(33:end,1) ...
> SPM.Sess(1).U(2).u(33:end,1) ...
> SPM.Sess(1).U(3).u(33:end,1) ...
> SPM.Sess(1).U(4).u(33:end,1)];
>
> DCM.delays = repmat(SPM.xY.RT,DCM.n,1);
> DCM.TE = 0.04;
>
> DCM.options.nonlinear = 0;
> DCM.options.two_state = 0;
> DCM.options.stochastic = 0;
> DCM.options.nograph = 1;
>
> DCM.a = [1 1 1; 1 1 1; 1 1 1]; % [A1>A1 Pv>A1 V1>A1; A1>Pv Pv>Pv V1>Pv; A1>V1 Pv>V1 V1>V1];
> DCM.b = zeros(3,3,4);
> DCM.c = [1 1 1 1; 1 1 1 1; 0 0 0 0]; % A1: rv_sl rv_ss sl sl; Pv: rv_sl rv_ss sl sl; V1: rv_sl rv_ss sl sl];
> DCM.d = zeros(3,3,0);
>
> save(fullfile(data_path,'finalDCMInputAPv_m5_4.mat'),'DCM');
>
>
> %----------------------------------------------
> %----------------------------------------------
> % ESTIMATION
> %----------------------------------------------
> spm_dcm_estimate(fullfile(data_path, 'finalDCMInputAPv_m5_4.mat'));
>
>
> %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
> %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
> %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
>
> %----------------------------------------------
> % Driving input APv blind group
> %----------------------------------------------
> %----------------------------------------------
> clear all
> data_path = '/server/fo2-14/data4/data2/DCM_fa3s/110_89/'
> cd(data_path)
> % Initialise SPM
> %--------------------------------------------------------------------------
> %spm('Defaults','fMRI');
> %spm_jobman('initcfg');
> %spm_get_defaults('cmdline',1);
> % SPECIFICATION DCM "driving input and intrinsic connectivity within V1-Pv-A1"
> %--------------------------------------------------------------------------
>
> %%%%%%%%%%%%%%%%%%%%%%%%
> % m5 fw/bw-A=V=P-fw/bw
> %%%%%%%%%%%%%%%%%%%%%%%%
> %%%%%%%%%%%%%%%%%%%%%%%%
> % run5
> %%%%%%%%%%%%%%%%%%%%%%%%
>
> load(fullfile(data_path,'SPM.mat'));
> load(fullfile(data_path,'VOI_A1_5.mat'),'xY');
> DCM.xY(1) = xY;
> load(fullfile(data_path,'VOI_Pv_5.mat'),'xY');
> DCM.xY(2) = xY;
> load(fullfile(data_path,'VOI_V1_5.mat'),'xY');
> DCM.xY(3) = xY;
> DCM.n = length(DCM.xY); % number of regions
> DCM.v = length(DCM.xY(1).u); % number of time points
> DCM.Y.dt = SPM.xY.RT;
> DCM.Y.X0 = DCM.xY(1).X0;
> for i = 1:DCM.n
> DCM.Y.y(:,i) = DCM.xY(i).u;
> DCM.Y.name{i} = DCM.xY(i).name;
> end
> DCM.Y.Q = spm_Ce(ones(1,DCM.n)*DCM.v);
>
> DCM.U.dt = SPM.Sess(1).U(1).dt;
> DCM.U.name = [SPM.Sess(1).U.name];
> DCM.U.u = [SPM.Sess(1).U(1).u(33:end,1) ...
> SPM.Sess(1).U(2).u(33:end,1) ...
> SPM.Sess(1).U(3).u(33:end,1) ...
> SPM.Sess(1).U(4).u(33:end,1)];
>
> DCM.delays = repmat(SPM.xY.RT,DCM.n,1);
> DCM.TE = 0.04;
>
> DCM.options.nonlinear = 0;
> DCM.options.two_state = 0;
> DCM.options.stochastic = 0;
> DCM.options.nograph = 1;
>
> DCM.a = [1 1 1; 1 1 1; 1 1 1]; % [A1>A1 Pv>A1 V1>A1; A1>Pv Pv>Pv V1>Pv; A1>V1 Pv>V1 V1>V1];
> DCM.b = zeros(3,3,4);
> DCM.c = [1 1 1 1; 1 1 1 1; 0 0 0 0]; % A1: rv_sl rv_ss sl sl; Pv: rv_sl rv_ss sl sl; V1: rv_sl rv_ss sl sl];
> DCM.d = zeros(3,3,0);
>
> save(fullfile(data_path,'finalDCMInputAPv_m5_5.mat'),'DCM');
>
>
> %----------------------------------------------
> %----------------------------------------------
> % ESTIMATION
> %----------------------------------------------
> spm_dcm_estimate(fullfile(data_path, 'finalDCMInputAPv_m5_5.mat'));
>
>
>
--
Dr. Susanne Dietrich
Dept. of Neurology / MEG-Center
University of Tübingen
Otfried-Müller-Str. 47
72076 Tübingen
phone: ++49 (0)7071-29 87708
fax: ++49 (0)7071-29 5706
email: [log in to unmask]
|