PennLINC / xcpEngine

Official public repository for the XCP Engine. This tool is deprecated in favor of XCP-D and ASLPrep.
MIT License
66 stars 42 forks source link

Task module not running for multi-session data #410

Open bdeck8317 opened 3 years ago

bdeck8317 commented 3 years ago

Describe the bug @a3sha2 , I am performing task regression using the Task.dsn and feat module. But only the files NavonLow seem to run. After further investigation my cohort file seems to be getting changed once I start running XCP. For example the cohort file which I create looks like Cohort file 1 below. But then when I submit the file to XCP it is overwritten with Cohort file 2 also shown below. This is very strange to me.

Cohort file

Cohort File 1
id0,id1,study,run,img,task_design
sub-DP5001,ses-NavonRealStim,NavonLow,run-1,fmriprep_out/fmriprep/sub-DP5001/ses-NavonRealStim/func/sub-DP5001_ses-NavonRealStim_task-NavonLow_run-1_space-T1w_desc-preproc_bold.nii.gz,task_designs/template.fsf
sub-DP5001,ses-NavonRealStim,NavonHigh,run-1,fmriprep_out/fmriprep/sub-DP5001/ses-NavonRealStim/func/sub-DP5001_ses-NavonRealStim_task-NavonHigh_run-1_space-T1w_desc-preproc_bold.nii.gz,task_designs/template.fsf
sub-DP5001,ses-StroopRealStim,StroopLow,run-1,fmriprep_out/fmriprep/sub-DP5001/ses-StroopRealStim/func/sub-DP5001_ses-StroopRealStim_task-StroopLow_run-1_space-T1w_desc-preproc_bold.nii.gz,task_designs/template.fsf
sub-DP5001,ses-StroopRealStim,StroopHigh,run-1,fmriprep_out/fmriprep/sub-DP5001/ses-StroopRealStim/func/sub-DP5001_ses-StroopRealStim_task-StroopHigh_run-1_space-T1w_desc-preproc_bold.nii.gz,task_designs/template.fsf
sub-DP5001,ses-StroopShamStim,StroopLow,run-1,fmriprep_out/fmriprep/sub-DP5001/ses-StroopShamStim/func/sub-DP5001_ses-StroopShamStim_task-StroopLow_run-1_space-T1w_desc-preproc_bold.nii.gz,task_designs/template.fsf
sub-DP5001,ses-StroopShamStim,StroopHigh,run-1,fmriprep_out/fmriprep/sub-DP5001/ses-StroopShamStim/func/sub-DP5001_ses-StroopShamStim_task-StroopHigh_run-1_space-T1w_desc-preproc_bold.nii.gz,task_designs/template.fsf
sub-DP5005,ses-NavonRealStim,NavonLow,run-1,fmriprep_out/fmriprep/sub-DP5005/ses-NavonRealStim/func/sub-DP5005_ses-NavonRealStim_task-NavonLow_run-1_space-T1w_desc-preproc_bold.nii.gz,task_designs/template.fsf
sub-DP5005,ses-NavonRealStim,NavonHigh,run-1,fmriprep_out/fmriprep/sub-DP5005/ses-NavonRealStim/func/sub-DP5005_ses-NavonRealStim_task-NavonHigh_run-1_space-T1w_desc-preproc_bold.nii.gz,task_designs/template.fsf
sub-DP5009,ses-NavonRealStim,NavonLow,run-1,fmriprep_out/fmriprep/sub-DP5009/ses-NavonRealStim/func/sub-DP5009_ses-NavonRealStim_task-NavonLow_run-1_space-T1w_desc-preproc_bold.nii.gz,task_designs/template.fsf
sub-DP5009,ses-NavonRealStim,NavonHigh,run-1,fmriprep_out/fmriprep/sub-DP5009/ses-NavonRealStim/func/sub-DP5009_ses-NavonRealStim_task-NavonHigh_run-1_space-T1w_desc-preproc_bold.nii.gz,task_designs/template.fsf
sub-DP5009,ses-StroopRealStim,StroopLow,run-1,fmriprep_out/fmriprep/sub-DP5009/ses-StroopRealStim/func/sub-DP5009_ses-StroopRealStim_task-StroopLow_run-1_space-T1w_desc-preproc_bold.nii.gz,task_designs/template.fsf
sub-DP5009,ses-StroopRealStim,StroopHigh,run-1,fmriprep_out/fmriprep/sub-DP5009/ses-StroopRealStim/func/sub-DP5009_ses-StroopRealStim_task-StroopHigh_run-1_space-T1w_desc-preproc_bold.nii.gz,task_designs/template.fsf
sub-DP5013,ses-NavonRealStim,NavonLow,run-1,fmriprep_out/fmriprep/sub-DP5013/ses-NavonRealStim/func/sub-DP5013_ses-NavonRealStim_task-NavonLow_run-1_space-T1w_desc-preproc_bold.nii.gz,task_designs/template.fsf
sub-DP5013,ses-NavonRealStim,NavonHigh,run-1,fmriprep_out/fmriprep/sub-DP5013/ses-NavonRealStim/func/sub-DP5013_ses-NavonRealStim_task-NavonHigh_run-1_space-T1w_desc-preproc_bold.nii.gz,task_designs/template.fsf
Cohort file 2
id0,id1,study,run,img,task_design
sub-DP5001,ses-NavonRealStim,NavonLow,run-1,fmriprep_out/fmriprep/sub-DP5001/ses-NavonRealStim/func/sub-DP5001_ses-NavonRealStim_task-NavonLow_run-1_space-T1w_desc-preproc_bold.nii.gz,task_designs/template.fsf
sub-DP5001,ses-StroopRealStim,StroopLow,run-1,fmriprep_out/fmriprep/sub-DP5001/ses-StroopRealStim/func/sub-DP5001_ses-StroopRealStim_task-StroopLow_run-1_space-T1w_desc-preproc_bold.nii.gz,task_designs/template.fsf
sub-DP5001,ses-StroopShamStim,StroopLow,run-1,fmriprep_out/fmriprep/sub-DP5001/ses-StroopShamStim/func/sub-DP5001_ses-StroopShamStim_task-StroopLow_run-1_space-T1w_desc-preproc_bold.nii.gz,task_designs/template.fsf
sub-DP5005,ses-NavonRealStim,NavonLow,run-1,fmriprep_out/fmriprep/sub-DP5005/ses-NavonRealStim/func/sub-DP5005_ses-NavonRealStim_task-NavonLow_run-1_space-T1w_desc-preproc_bold.nii.gz,task_designs/template.fsf
sub-DP5009,ses-NavonRealStim,NavonLow,run-1,fmriprep_out/fmriprep/sub-DP5009/ses-NavonRealStim/func/sub-DP5009_ses-NavonRealStim_task-NavonLow_run-1_space-T1w_desc-preproc_bold.nii.gz,task_designs/template.fsf
sub-DP5009,ses-StroopRealStim,StroopLow,run-1,fmriprep_out/fmriprep/sub-DP5009/ses-StroopRealStim/func/sub-DP5009_ses-StroopRealStim_task-StroopLow_run-1_space-T1w_desc-preproc_bold.nii.gz,task_designs/template.fsf
sub-DP5013,ses-NavonRealStim,NavonLow,run-1,fmriprep_out/fmriprep/sub-DP5013/ses-NavonRealStim/func/sub-DP5013_ses-NavonRealStim_task-NavonLow_run-1_space-T1w_desc-preproc_bold.nii.gz,task_designs/template.fsf```

**Design File**
Paste your entire design (`.dsn`) file between the triple backticks

!/usr/bin/env bash

###################################################################

�^�^� �^�^� �^�^� �^�^� �^�^� �^�^� �^�^� �^�^� �^�^� �^�^� �^�^� �^�^� �^�^� �^�^� �^�^� �^�^� �^�^� �^�^� �^�^� �^�^� �^�^�

###################################################################

###################################################################

This design file stores the values of all variables required to

execute a complete neuroimage processing pipeline. You may

execute the analysis specified in this design file by calling

(in any v4 or higher bash terminal):

#

xcpEngine .dsn

#

Variables fall into five general categories:

* ANALYSIS VARIABLES are used at all stages of this analysis.

* PIPELINE specifies the modules that comprise the analysis.

* MODULE VARIABLES are used during one stage of the analysis.

These are typically array variables with array

indices equal to the index of the module that

calls them.

* OUTPUT VARIABLES may be used at all stages of the analysis.

These are typically array variables with array

indices equal to the value of the primary

subject identifier. They will appear only in

localised design files.

###################################################################

###################################################################

ANALYSIS VARIABLES

###################################################################

analysis=task_root design=/data/task_designs/task_fcon.dsn sequence=anatomical standard=MNI%2x2x2

###################################################################

PIPELINE

###################################################################

pipeline=task,fcon,reho,alff,roiquant,norm

###################################################################

1 TASK

###################################################################

task_design[1]=template.fsf task_fmriprep[1]=1 task_rpsd[1]=6 task_rerun[1]=Y task_cleanup[1]=Y task_vol2del[1]=0 # first N volume to be deleted -- none in this case task_confound[1]='36p' # including acompcor parameters

###################################################################

2 FCON

###################################################################

fcon_atlas[2]=all fcon_metric[2]=corrcoef fcon_thr[2]=N fcon_pad[2]=FALSE fcon_rerun[2]=0 fcon_cleanup[2]=1

###################################################################

3 REHO

###################################################################

reho_nhood[3]=vertices reho_roikw[3]=0 # does nothing at the moment reho_sptf[3]=susan reho_smo[3]=6 reho_rerun[3]=0 reho_cleanup[3]=1

###################################################################

4 ALFF

###################################################################

alff_hipass[4]=0.01 alff_lopass[4]=0.08 alff_sptf[4]=susan alff_smo[4]=6 alff_rerun[4]=0 alff_cleanup[4]=1

###################################################################

5 ROIQUANT

###################################################################

roiquant_atlas[5]=all roiquant_globals[5]=1 roiquant_vol[5]=0 roiquant_rerun[5]=0 roiquant_cleanup[5]=1

###################################################################

6 NORM

###################################################################

norm_rerun[6]=0 norm_cleanup[6]=1

**Error message**
I have attached my log file.
[task_log.txt](https://github.com/PennBBL/xcpEngine/files/5567826/task_log.txt)

Runtime Information Docker

Docker command:

screen docker run -it -m 30g --cpus='12' \
    -v /Users/neurouser1/Documents/DP5/xcp/:/data \
    -v /Users/neurouser1/Documents/DP5/scratch/:/tmp \
    pennbbl/xcpengine:latest \
    -c /data/cohorts/DP5_task_cohort.csv \
    -d /data/task_designs/task_fcon.dsn \
    -o /data/xcpOutput/task_data/pre \
    -i /tmp/ \
    -r /data/
a3sha2 commented 3 years ago

from the log file, it look like everything ran fine. I would have suggest to use read only on the docker but xcp output needed to be written out

bdeck8317 commented 3 years ago

@a3sha2 , sorry I'm slightly confused. The 2nd cohort file I have posted was what xcp created for some reason. Xcp correctly ran all of the low conditions but ignored the high conditions.