In using PsPM (v 3.1.1) 1st level GLM for SCR module via the Batch editor, no matter what options I choose under the "Basis Function" (with possible options of scrf0, scrf1, scrf2, or fir), the resulting output GLM file will always adopt scrf1 (i.e. scrf + time derivative) as the basis function, and the corresponding variable glm.input.bf always reflects the default basis function (i.e., scrf1; glm.input.bf.fhandle = @scr_bf_scrf; glm.input.bf.args = 1) and the ouputs (i.e. glm.stats) consistently have two (bf1, bf2) regressors per condition regardless of my choice of basis functions.
The matlabbatch variable [matlabbatch{1}.pspm{1}.first_level{1}.scr{1}.glm_scr.bf.XX] seemed to vary according to my choice of basis function, but it somehow did not lead to different model ouputs.
I have tried this in the GUI/Batch editor multiple times and across different versions of matlab (2010 and 2016), but the problem persists. Hope I could get some advice as to what might have gone wrong. Thank you!
Best,
Lily
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I could not reproduce the error you reported; the "default" SCRF1 is defined only for the matlabbatch GUI; but once the job is collected or when the GLM is run, no default is set and the execution should yield an error if anything went wrong.
Just to be sure: did you use different GLM file names or paths for the different jobs, or did you choose to overwrite existing files?
Could you kindly provide me with a batch job and a data/condition file so I can reproduce and investigate this problem?
Thanks
Dominik
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Thanks so much for looking into this problem, which I found strange as well, after repeated trials with still no luck. To answer your concern, everything ran with no error or warning message. I did not choose to overwrite existing files. But the output is still (invariably) based on scrf1 basis function.
Please find attached a data file, a batch job file (in which I selected FIR as the basis function), and the output model file. Make sure you provide a valid output directory and link the data file (which were not specified in the batch job to de-identify the information). If you do have a valid FIR model output, please let me know where I can find the FIR statistics. Thanks again!
thanks for exposing this - it was indeed a bug which entirely deleted any basis function definition in the job and this led to the default.
I attach a fix for version v3.1.1 - could you overwrite the respective file in the scr_cfg subfolder of your PsPM installation. Please let me know if you need this for any other version or if it does not work. It will be included in the next release.
Hi Dr. Bach,
In using PsPM (v 3.1.1) 1st level GLM for SCR module via the Batch editor, no matter what options I choose under the "Basis Function" (with possible options of scrf0, scrf1, scrf2, or fir), the resulting output GLM file will always adopt scrf1 (i.e. scrf + time derivative) as the basis function, and the corresponding variable glm.input.bf always reflects the default basis function (i.e., scrf1; glm.input.bf.fhandle = @scr_bf_scrf; glm.input.bf.args = 1) and the ouputs (i.e. glm.stats) consistently have two (bf1, bf2) regressors per condition regardless of my choice of basis functions.
The matlabbatch variable [matlabbatch{1}.pspm{1}.first_level{1}.scr{1}.glm_scr.bf.XX] seemed to vary according to my choice of basis function, but it somehow did not lead to different model ouputs.
I have tried this in the GUI/Batch editor multiple times and across different versions of matlab (2010 and 2016), but the problem persists. Hope I could get some advice as to what might have gone wrong. Thank you!
Best,
Lily
Hi Lily - thanks for getting in touch. I'll investigate and get back to you shortly. Best, Dominik
Hi Lily
I could not reproduce the error you reported; the "default" SCRF1 is defined only for the matlabbatch GUI; but once the job is collected or when the GLM is run, no default is set and the execution should yield an error if anything went wrong.
Just to be sure: did you use different GLM file names or paths for the different jobs, or did you choose to overwrite existing files?
Could you kindly provide me with a batch job and a data/condition file so I can reproduce and investigate this problem?
Thanks
Dominik
Hi Dominik,
Thanks so much for looking into this problem, which I found strange as well, after repeated trials with still no luck. To answer your concern, everything ran with no error or warning message. I did not choose to overwrite existing files. But the output is still (invariably) based on scrf1 basis function.
Please find attached a data file, a batch job file (in which I selected FIR as the basis function), and the output model file. Make sure you provide a valid output directory and link the data file (which were not specified in the batch job to de-identify the information). If you do have a valid FIR model output, please let me know where I can find the FIR statistics. Thanks again!
Best,
Lily
Hi Lily
thanks for exposing this - it was indeed a bug which entirely deleted any basis function definition in the job and this led to the default.
I attach a fix for version v3.1.1 - could you overwrite the respective file in the scr_cfg subfolder of your PsPM installation. Please let me know if you need this for any other version or if it does not work. It will be included in the next release.
Best wishes
Dominik
Last edit: Dominik Bach 2017-06-09