Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ETAC Question #530

Open
salilabwfu opened this issue Oct 5, 2023 · 3 comments
Open

ETAC Question #530

salilabwfu opened this issue Oct 5, 2023 · 3 comments

Comments

@salilabwfu
Copy link

Hi, I'm trying to understand what is happening under the hood in ETAC a bit better and noticed that there is a degrees of freedom adjustment that is performed that I do not understand.

Specifically, in lines 4685-4687:

if( do_Xclustsim && dofsub == 0 ){ dofsub = (int)rintf(0.0999f*(nval_AAA+nval_BBB)) ; }

When doing the permutations later, (if I understand correctly) -dofsub is used (lines 5379-5380):
if( dofsub != 0 ) sprintf( cmd+strlen(cmd) , " -dofsub %d",-dofsub) ;

Does this subtract DOF in the initial z stats that are computed but add DOF for the permutations? Could you help me understand why these two operations are needed? Thanks in advance.

@afni-rwcox
Copy link
Contributor

afni-rwcox commented Oct 7, 2023

dofsub is subtracted from the degrees of freedom computed from the number of samples (datasets - covariates - 1) in order to make the z-statistics -- computed from the t-statistics -- which are passed to 3dXClustSim (does the actual ETAC work) less significant. This adjustment makes the false positive rates of the ETAC multi-thresholding process be a little closer to their goals.

I'll add that I've been retired for 2 years now, and don't have precise memories of making this adjustment any more. Or about many of the inner details of AFNI.

@salilabwfu
Copy link
Author

Thanks so much for this response and for all of the work you've put into AFNI! The dofsub makes sense to me now, but I am still a bit confused why negative dofsub is used later in the code when doing the random sign tests:

if( dofsub != 0 ) sprintf( cmd+strlen(cmd) , " -dofsub %d",-dofsub) ;

I suppose this might not matter if the end results still appropriately control FWE as your paper shows.

Doesn't the -dofsub end up adding to the degrees of freedom. In my case, dofsub ends up being set to 2. In the initial z image that is created, -dofsub 2 is applied, but during the random sign tests, it instead runs -dofsub -2. I've pasted the full output of an ETAC run below in case that helps. The part that I am unsure of is this:

3dttest++ -DAFNI_AUTOMATIC_FDR=NO -DAFNI_DONT_LOGFILE=YES -RANDOMSIGN 360 -nomeans -toz
-seed 7920114 4381664 -nopermute -dofsub -2 -mask group_mask+tlrc.HEAD
-zskip 24 -setA RepeatPE_Etac.resid.nii
-prefix ./RepeatPE_Etac.0002.sdat &> /dev/null

Thanks again for any insight that you have!

Executing the command: bash -c cd /codedir; ./RepeatPE.GroupAnalysis.sh
++ 3dttest++: AFNI version=AFNI_22.1.14 (Jun 24 2022) [64-bit]
++ Authored by: Zhark++
++ === argv[2] = -setA
++ option -setA :: processing as LONG form (label label dset label dset ...)
++ have 24 volumes corresponding to option '-setA'
++ === argv[52] = -zskip
++ === argv[54] = -seed
++ === argv[57] = -prefix
++ === argv[59] = -Etac
++ Number of 3dXClustSim threads set to 28
++ === argv[60] = -mask
++ 51413 voxels in -mask dataset
++ brickwise_num set to 1
++ -setweight pre-processing: nAwt=0 nBwt=0
++ -zskip: require at least 24 (out of 24) nonzero values for setA
++ === ETAC memory requirements:

  • = 1,036,486,080 (1.0 billion) bytes of pseudo-data in temporary .sdat files.
  • = It is best to store these files on a solid-state disk (SSD)
  • = using the '-tempdir' option.
  • === ETAC will also use additional memory for the cluster tables
  • = which is hard to predict, but can be as much as the amount
  • = listed above.
  • === There are 63,214,600,192 (63 billion) bytes of memory on your system.
    ++ loading -setA datasets
    ++ t-testing:0123456789.0123456789.0123456789.0123456789.0123456789.!
  • saving results into output volumes
    ++ ---------- End of analyses -- freeing workspaces ----------
    ++ Creating FDR curves in output dataset
    *+ WARNING: Smallest FDR q [1 PE_Zscr] = 0.558397 ==> few true single voxel detections
  • Added 1 FDR curve to dataset
    ++ Output dataset ./RepeatPE_Etac+tlrc.BRIK
    ++ Output dataset ./RepeatPE_Etac.resid.nii
    ++ ================ Starting -Etac calculations ================
  • === temporary files will have prefix RepeatPE_Etac ===
  • === running 28 -randomsign jobs (360 iterations per job) ===
  • === creating 1,036,486,080 (1.0 billion) bytes of pseudo-data in .sdat files ===
  • --- 3dXClustSim reads .sdat files to compute cluster-threshold statistics ---
  • --- there is 63,214,600,192 (63 billion) bytes of memory on your system ---
  • cmd command #0 [icase=0]:
    3dttest++ -DAFNI_AUTOMATIC_FDR=NO -DAFNI_DONT_LOGFILE=YES -RANDOMSIGN 360 -nomeans -toz
    -seed 5697812 2159362 -nopermute -dofsub -2 -mask group_mask+tlrc.HEAD
    -zskip 24 -setA RepeatPE_Etac.resid.nii
    -prefix ./RepeatPE_Etac.0000.sdat
  • start_job Running:
    3dttest++ -DAFNI_AUTOMATIC_FDR=NO -DAFNI_DONT_LOGFILE=YES -RANDOMSIGN 360 -nomeans -toz
    -seed 5697812 2159362 -nopermute -dofsub -2 -mask group_mask+tlrc.HEAD
    -zskip 24 -setA RepeatPE_Etac.resid.nii
    -prefix ./RepeatPE_Etac.0000.sdat
    ++ 3dttest++: AFNI version=AFNI_22.1.14 (Jun 24 2022) [64-bit]
    ++ Authored by: Zhark++
    ++ 51413 voxels in -mask dataset
    ++ option -setA :: processing as SHORT form (all values are datasets)
    ++ have 24 volumes corresponding to option '-setA'
    ++ -zskip: require at least 24 (out of 24) nonzero values for setA
    ++ random seeds are 5697812 2159362
  • start_job Running:
    3dttest++ -DAFNI_AUTOMATIC_FDR=NO -DAFNI_DONT_LOGFILE=YES -RANDOMSIGN 360 -nomeans -toz
    -seed 6808963 3270513 -nopermute -dofsub -2 -mask group_mask+tlrc.HEAD
    -zskip 24 -setA RepeatPE_Etac.resid.nii
    -prefix ./RepeatPE_Etac.0001.sdat &> /dev/null
    ++ opened file ./RepeatPE_Etac.0000.sdat for output
    ++ loading -setA datasets
  • start_job Running:
    3dttest++ -DAFNI_AUTOMATIC_FDR=NO -DAFNI_DONT_LOGFILE=YES -RANDOMSIGN 360 -nomeans -toz
    -seed 7920114 4381664 -nopermute -dofsub -2 -mask group_mask+tlrc.HEAD
    -zskip 24 -setA RepeatPE_Etac.resid.nii
    -prefix ./RepeatPE_Etac.0002.sdat &> /dev/null
  • start_job Running:
    3dttest++ -DAFNI_AUTOMATIC_FDR=NO -DAFNI_DONT_LOGFILE=YES -RANDOMSIGN 360 -nomeans -toz
    -seed 9031265 5492815 -nopermute -dofsub -2 -mask group_mask+tlrc.HEAD
    -zskip 24 -setA RepeatPE_Etac.resid.nii
    -prefix ./RepeatPE_Etac.0003.sdat &> /dev/null
  • start_job Running:
    3dttest++ -DAFNI_AUTOMATIC_FDR=NO -DAFNI_DONT_LOGFILE=YES -RANDOMSIGN 360 -nomeans -toz
    -seed 10142416 6603966 -nopermute -dofsub -2 -mask group_mask+tlrc.HEAD
    -zskip 24 -setA RepeatPE_Etac.resid.nii
    -prefix ./RepeatPE_Etac.0004.sdat &> /dev/null
  • start_job Running:
    3dttest++ -DAFNI_AUTOMATIC_FDR=NO -DAFNI_DONT_LOGFILE=YES -RANDOMSIGN 360 -nomeans -toz
    -seed 11253567 7715117 -nopermute -dofsub -2 -mask group_mask+tlrc.HEAD
    -zskip 24 -setA RepeatPE_Etac.resid.nii
    -prefix ./RepeatPE_Etac.0005.sdat &> /dev/null
  • start_job Running:
    3dttest++ -DAFNI_AUTOMATIC_FDR=NO -DAFNI_DONT_LOGFILE=YES -RANDOMSIGN 360 -nomeans -toz
    -seed 12364718 8826268 -nopermute -dofsub -2 -mask group_mask+tlrc.HEAD
    -zskip 24 -setA RepeatPE_Etac.resid.nii
    -prefix ./RepeatPE_Etac.0006.sdat &> /dev/null
  • start_job Running:
    3dttest++ -DAFNI_AUTOMATIC_FDR=NO -DAFNI_DONT_LOGFILE=YES -RANDOMSIGN 360 -nomeans -toz
    -seed 13475869 9937419 -nopermute -dofsub -2 -mask group_mask+tlrc.HEAD
    -zskip 24 -setA RepeatPE_Etac.resid.nii
    -prefix ./RepeatPE_Etac.0007.sdat &> /dev/null
    ++ t-test randomsign: + start_job Running:
    3dttest++ -DAFNI_AUTOMATIC_FDR=NO -DAFNI_DONT_LOGFILE=YES -RANDOMSIGN 360 -nomeans -toz
    -seed 14587020 11048570 -nopermute -dofsub -2 -mask group_mask+tlrc.HEAD
    -zskip 24 -setA RepeatPE_Etac.resid.nii
    -prefix ./RepeatPE_Etac.0008.sdat &> /dev/null
  • start_job Running:
    3dttest++ -DAFNI_AUTOMATIC_FDR=NO -DAFNI_DONT_LOGFILE=YES -RANDOMSIGN 360 -nomeans -toz
    -seed 15698171 12159721 -nopermute -dofsub -2 -mask group_mask+tlrc.HEAD
    -zskip 24 -setA RepeatPE_Etac.resid.nii
    -prefix ./RepeatPE_Etac.0009.sdat &> /dev/null
  • start_job Running:
    3dttest++ -DAFNI_AUTOMATIC_FDR=NO -DAFNI_DONT_LOGFILE=YES -RANDOMSIGN 360 -nomeans -toz
    -seed 16809322 13270872 -nopermute -dofsub -2 -mask group_mask+tlrc.HEAD
    -zskip 24 -setA RepeatPE_Etac.resid.nii
    -prefix ./RepeatPE_Etac.0010.sdat &> /dev/null
  • start_job Running:
    3dttest++ -DAFNI_AUTOMATIC_FDR=NO -DAFNI_DONT_LOGFILE=YES -RANDOMSIGN 360 -nomeans -toz
    -seed 17920473 14382023 -nopermute -dofsub -2 -mask group_mask+tlrc.HEAD
    -zskip 24 -setA RepeatPE_Etac.resid.nii
    -prefix ./RepeatPE_Etac.0011.sdat &> /dev/null
  • start_job Running:
    3dttest++ -DAFNI_AUTOMATIC_FDR=NO -DAFNI_DONT_LOGFILE=YES -RANDOMSIGN 360 -nomeans -toz
    -seed 19031624 15493174 -nopermute -dofsub -2 -mask group_mask+tlrc.HEAD
    -zskip 24 -setA RepeatPE_Etac.resid.nii
    -prefix ./RepeatPE_Etac.0012.sdat &> /dev/null
  • start_job Running:
    3dttest++ -DAFNI_AUTOMATIC_FDR=NO -DAFNI_DONT_LOGFILE=YES -RANDOMSIGN 360 -nomeans -toz
    -seed 20142775 16604325 -nopermute -dofsub -2 -mask group_mask+tlrc.HEAD
    -zskip 24 -setA RepeatPE_Etac.resid.nii
    -prefix ./RepeatPE_Etac.0013.sdat &> /dev/null
  • start_job Running:
    3dttest++ -DAFNI_AUTOMATIC_FDR=NO -DAFNI_DONT_LOGFILE=YES -RANDOMSIGN 360 -nomeans -toz
    -seed 21253926 17715476 -nopermute -dofsub -2 -mask group_mask+tlrc.HEAD
    -zskip 24 -setA RepeatPE_Etac.resid.nii
    -prefix ./RepeatPE_Etac.0014.sdat &> /dev/null
  • start_job Running:
    3dttest++ -DAFNI_AUTOMATIC_FDR=NO -DAFNI_DONT_LOGFILE=YES -RANDOMSIGN 360 -nomeans -toz
    -seed 22365077 18826627 -nopermute -dofsub -2 -mask group_mask+tlrc.HEAD
    -zskip 24 -setA RepeatPE_Etac.resid.nii
    -prefix ./RepeatPE_Etac.0015.sdat &> /dev/null
  • start_job Running:
    3dttest++ -DAFNI_AUTOMATIC_FDR=NO -DAFNI_DONT_LOGFILE=YES -RANDOMSIGN 360 -nomeans -toz
    -seed 23476228 19937778 -nopermute -dofsub -2 -mask group_mask+tlrc.HEAD
    -zskip 24 -setA RepeatPE_Etac.resid.nii
    -prefix ./RepeatPE_Etac.0016.sdat &> /dev/null
  • start_job Running:
    3dttest++ -DAFNI_AUTOMATIC_FDR=NO -DAFNI_DONT_LOGFILE=YES -RANDOMSIGN 360 -nomeans -toz
    -seed 24587379 21048929 -nopermute -dofsub -2 -mask group_mask+tlrc.HEAD
    -zskip 24 -setA RepeatPE_Etac.resid.nii
    -prefix ./RepeatPE_Etac.0017.sdat &> /dev/null
  • start_job Running:
    3dttest++ -DAFNI_AUTOMATIC_FDR=NO -DAFNI_DONT_LOGFILE=YES -RANDOMSIGN 360 -nomeans -toz
    -seed 25698530 22160080 -nopermute -dofsub -2 -mask group_mask+tlrc.HEAD
    -zskip 24 -setA RepeatPE_Etac.resid.nii
    -prefix ./RepeatPE_Etac.0018.sdat &> /dev/null
    0 + start_job Running:
    3dttest++ -DAFNI_AUTOMATIC_FDR=NO -DAFNI_DONT_LOGFILE=YES -RANDOMSIGN 360 -nomeans -toz
    -seed 26809681 23271231 -nopermute -dofsub -2 -mask group_mask+tlrc.HEAD
    -zskip 24 -setA RepeatPE_Etac.resid.nii
    -prefix ./RepeatPE_Etac.0019.sdat &> /dev/null
  • start_job Running:
    3dttest++ -DAFNI_AUTOMATIC_FDR=NO -DAFNI_DONT_LOGFILE=YES -RANDOMSIGN 360 -nomeans -toz
    -seed 27920832 24382382 -nopermute -dofsub -2 -mask group_mask+tlrc.HEAD
    -zskip 24 -setA RepeatPE_Etac.resid.nii
    -prefix ./RepeatPE_Etac.0020.sdat &> /dev/null
  • start_job Running:
    3dttest++ -DAFNI_AUTOMATIC_FDR=NO -DAFNI_DONT_LOGFILE=YES -RANDOMSIGN 360 -nomeans -toz
    -seed 29031983 25493533 -nopermute -dofsub -2 -mask group_mask+tlrc.HEAD
    -zskip 24 -setA RepeatPE_Etac.resid.nii
    -prefix ./RepeatPE_Etac.0021.sdat &> /dev/null
  • start_job Running:
    3dttest++ -DAFNI_AUTOMATIC_FDR=NO -DAFNI_DONT_LOGFILE=YES -RANDOMSIGN 360 -nomeans -toz
    -seed 30143134 26604684 -nopermute -dofsub -2 -mask group_mask+tlrc.HEAD
    -zskip 24 -setA RepeatPE_Etac.resid.nii
    -prefix ./RepeatPE_Etac.0022.sdat &> /dev/null
  • start_job Running:
    3dttest++ -DAFNI_AUTOMATIC_FDR=NO -DAFNI_DONT_LOGFILE=YES -RANDOMSIGN 360 -nomeans -toz
    -seed 31254285 27715835 -nopermute -dofsub -2 -mask group_mask+tlrc.HEAD
    -zskip 24 -setA RepeatPE_Etac.resid.nii
    -prefix ./RepeatPE_Etac.0023.sdat &> /dev/null
  • start_job Running:
    3dttest++ -DAFNI_AUTOMATIC_FDR=NO -DAFNI_DONT_LOGFILE=YES -RANDOMSIGN 360 -nomeans -toz
    -seed 32365436 28826986 -nopermute -dofsub -2 -mask group_mask+tlrc.HEAD
    -zskip 24 -setA RepeatPE_Etac.resid.nii
    -prefix ./RepeatPE_Etac.0024.sdat &> /dev/null
  • start_job Running:
    3dttest++ -DAFNI_AUTOMATIC_FDR=NO -DAFNI_DONT_LOGFILE=YES -RANDOMSIGN 360 -nomeans -toz
    -seed 33476587 29938137 -nopermute -dofsub -2 -mask group_mask+tlrc.HEAD
    -zskip 24 -setA RepeatPE_Etac.resid.nii
    -prefix ./RepeatPE_Etac.0025.sdat &> /dev/null
  • start_job Running:
    3dttest++ -DAFNI_AUTOMATIC_FDR=NO -DAFNI_DONT_LOGFILE=YES -RANDOMSIGN 360 -nomeans -toz
    -seed 34587738 31049288 -nopermute -dofsub -2 -mask group_mask+tlrc.HEAD
    -zskip 24 -setA RepeatPE_Etac.resid.nii
    -prefix ./RepeatPE_Etac.0026.sdat &> /dev/null
  • start_job Running:
    3dttest++ -DAFNI_AUTOMATIC_FDR=NO -DAFNI_DONT_LOGFILE=YES -RANDOMSIGN 360 -nomeans -toz
    -seed 35698889 32160439 -nopermute -dofsub -2 -mask group_mask+tlrc.HEAD
    -zskip 24 -setA RepeatPE_Etac.resid.nii
    -prefix ./RepeatPE_Etac.0027.sdat &> /dev/null
    123456789.0123456789.0123456789.0123456789.0123456789.0!
    ++ saving main effect t-stat MIN/MAX values in ./RepeatPE_Etac.0000.minmax.1D
    ++ output short-ized file ./RepeatPE_Etac.0000.sdat with 51413 values for each of 360 volumes
  • ======= end of .sdat output run of 3dttest++ =======
  • 3dttest++ ===== simulation jobs have finished (55.7 s elapsed)
  • 3dttest++ ===== starting 3dXClustSim : elapsed = 58.4 s
  • Running
    3dXClustSim -DAFNI_DONT_LOGFILE=YES -DAFNI_AUTOGZIP=NO
    -nolocal -global
    -prefix RepeatPE_Etac.default.ETAC.nii -FPR 5.0
    -hpow 2 -sorter -NN2 -2sid
    -insdat group_mask+tlrc.HEAD ./RepeatPE_Etac.0000.sdat ./RepeatPE_Etac.0001.sdat ./RepeatPE_Etac.0002.sdat ./RepeatPE_Etac.0003.sdat ./RepeatPE_Etac.0004.sdat ./RepeatPE_Etac.0005.sdat ./RepeatPE_Etac.0006.sdat ./RepeatPE_Etac.0007.sdat ./RepeatPE_Etac.0008.sdat ./RepeatPE_Etac.0009.sdat ./RepeatPE_Etac.0010.sdat ./RepeatPE_Etac.0011.sdat ./RepeatPE_Etac.0012.sdat ./RepeatPE_Etac.0013.sdat ./RepeatPE_Etac.0014.sdat ./RepeatPE_Etac.0015.sdat ./RepeatPE_Etac.0016.sdat ./RepeatPE_Etac.0017.sdat ./RepeatPE_Etac.0018.sdat ./RepeatPE_Etac.0019.sdat ./RepeatPE_Etac.0020.sdat ./RepeatPE_Etac.0021.sdat ./RepeatPE_Etac.0022.sdat ./RepeatPE_Etac.0023.sdat ./RepeatPE_Etac.0024.sdat ./RepeatPE_Etac.0025.sdat ./RepeatPE_Etac.0026.sdat ./RepeatPE_Etac.0027.sdat
    ++ 3dXClustSim: AFNI version=AFNI_22.1.14 (Jun 24 2022) [64-bit]
    ++ Authored by: Lamont Cranston
    ++ Loading -insdat datasets
    ++ Single FPR goal: 5.0%
    ++ p-value thresholds: 0.0100 0.0090 0.0080 0.0070 0.0060 0.0050 0.0040 0.0030 0.0020 0.0010
    ++ min cluster size : 5 voxels
    ++ 3dXClustSim: Using 28 OpenMP threads
    ++ STEP 1a: start 2-sided clustering with NN=2 and 10 p-thresholds
  • STEP 1b: merge cluster lists (7.4s elapsed)
  • STEP 1d: compute global ETAC thresholds (7.4s)
    ++ STEP 1d.a: adjusting per-voxel FOM thresholds to reach FPR=5.00% (7.5s)
  •  #1: Testing global thresholds at 0.006993 ==> 71
    
  •      global FPR=1.33% (15.9s)
    
  •  #2: Testing global thresholds at 0.0155384 ==> 157
    
  •      global FPR=2.85% (24.4s)
    
  •  #3: Testing global thresholds at 0.027287 ==> 275
    
  •      global FPR=4.80% (33.1s)
    
  • global ETAC thresholds written to globalETAC.mthresh.RepeatPE_Etac.default.ETAC.A.05perc.niml
    ++ === 3dXClustSim ends: Elapsed time 33.1s
    ++ 3dttest++ ----- merging 1 blur cases to make 2-sided activation mask
  • Running
    3dMultiThresh -input ./RepeatPE_Etac+tlrc.HEAD -1tindex 1 -maskonly
    -prefix RepeatPE_Etac.ETACtmask.global.A.nii -mthresh globalETAC.mthresh.RepeatPE_Etac.default.ETAC.A.05perc.niml -allmask RepeatPE_Etac.ETACamask.global.A.nii A
    ++ 3dMultiThresh: AFNI version=AFNI_22.1.14 (Jun 24 2022) [64-bit]
    ++ -mthresh global parameters
  •  clustering NN=2  thresholding=2-sided  10 thresholds  1 hpows
    

++ Output dataset ./RepeatPE_Etac.ETACtmask.global.A.nii
0
++ Output dataset ./RepeatPE_Etac.ETACamask.global.A.nii

  • Running
    3dmask_tool -input RepeatPE_Etac.ETACtmask.global..nii -union -prefix RepeatPE_Etac.default.ETACmask.global.2sid.05perc.nii.gz
    ++ processing 1 input dataset(s), NN=2...
    ++ padding all datasets by 0 (for dilations)
    ++ frac 0 over 1 volumes gives min count 0
    ++ voxel limits: 0 clipped, 0 survived, 325325 were zero
    ++ writing result RepeatPE_Etac.default.ETACmask.global.2sid.05perc.nii.gz...
    ++ Output dataset ./RepeatPE_Etac.default.ETACmask.global.2sid.05perc.nii.gz
  • Running
    3dbucket -prefix RepeatPE_Etac.default.ETACmaskALL.global.2sid.05perc.nii.gz RepeatPE_Etac.ETACamask.global..nii
    ++ 3dbucket: AFNI version=AFNI_22.1.14 (Jun 24 2022) [64-bit]
  • Running
    \rm RepeatPE_Etac.ETACtmask..nii RepeatPE_Etac.ETACamask..nii
    ++ 3dttest++ ----- Cleaning up intermediate files:
  • Running
    \rm -vf RepeatPE_Etac.resid.nii ./RepeatPE_Etac.0000.sdat ./RepeatPE_Etac.0001.sdat ./RepeatPE_Etac.0002.sdat ./RepeatPE_Etac.0003.sdat ./RepeatPE_Etac.0004.sdat ./RepeatPE_Etac.0005.sdat ./RepeatPE_Etac.0006.sdat ./RepeatPE_Etac.0007.sdat ./RepeatPE_Etac.0008.sdat ./RepeatPE_Etac.0009.sdat ./RepeatPE_Etac.0010.sdat ./RepeatPE_Etac.0011.sdat ./RepeatPE_Etac.0012.sdat ./RepeatPE_Etac.0013.sdat ./RepeatPE_Etac.0014.sdat ./RepeatPE_Etac.0015.sdat ./RepeatPE_Etac.0016.sdat ./RepeatPE_Etac.0017.sdat ./RepeatPE_Etac.0018.sdat ./RepeatPE_Etac.0019.sdat ./RepeatPE_Etac.0020.sdat ./RepeatPE_Etac.0021.sdat ./RepeatPE_Etac.0022.sdat ./RepeatPE_Etac.0023.sdat ./RepeatPE_Etac.0024.sdat ./RepeatPE_Etac.0025.sdat ./RepeatPE_Etac.0026.sdat ./RepeatPE_Etac.0027.sdat
    removed 'RepeatPE_Etac.resid.nii'
    removed './RepeatPE_Etac.0000.sdat'
    removed './RepeatPE_Etac.0001.sdat'
    removed './RepeatPE_Etac.0002.sdat'
    removed './RepeatPE_Etac.0003.sdat'
    removed './RepeatPE_Etac.0004.sdat'
    removed './RepeatPE_Etac.0005.sdat'
    removed './RepeatPE_Etac.0006.sdat'
    removed './RepeatPE_Etac.0007.sdat'
    removed './RepeatPE_Etac.0008.sdat'
    removed './RepeatPE_Etac.0009.sdat'
    removed './RepeatPE_Etac.0010.sdat'
    removed './RepeatPE_Etac.0011.sdat'
    removed './RepeatPE_Etac.0012.sdat'
    removed './RepeatPE_Etac.0013.sdat'
    removed './RepeatPE_Etac.0014.sdat'
    removed './RepeatPE_Etac.0015.sdat'
    removed './RepeatPE_Etac.0016.sdat'
    removed './RepeatPE_Etac.0017.sdat'
    removed './RepeatPE_Etac.0018.sdat'
    removed './RepeatPE_Etac.0019.sdat'
    removed './RepeatPE_Etac.0020.sdat'
    removed './RepeatPE_Etac.0021.sdat'
    removed './RepeatPE_Etac.0022.sdat'
    removed './RepeatPE_Etac.0023.sdat'
    removed './RepeatPE_Etac.0024.sdat'
    removed './RepeatPE_Etac.0025.sdat'
    removed './RepeatPE_Etac.0026.sdat'
    removed './RepeatPE_Etac.0027.sdat'
  • 3dttest++ =============== -Etac work is finished :) ===============
    ++ ----- 3dttest++ says so long, farewell, and happy trails to you :) -----`

@afni-rwcox
Copy link
Contributor

afni-rwcox commented Nov 17, 2023 via email

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants