ETAC questions


I am using ETAC in 3dttest++ and have a couple of questions I posted a few months ago, but didn’t get a response.

  1. I’ve noticed that the stats file that 3dttest++ outputs with -etac turned on has slightly different z-scores than if I run 3dttest++ without -etac but instead use just -toz or -clustsim. I poked around in the source code and I think it is because of a subtraction that is implemented to the degrees of freedom when -etac is invoked. In line 4685 of the source code there is:

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

Could you explain to me why this is necessary?

  1. I’ve been using the default options for my analyses, but have been playing around with options to try to understand what is happening under the hood better. I’ve stumbled onto an unexpected outcome where I get no clusters passing the correction if I set hpow to 0 or to 2, but I do get significant clusters if I set it to a combination of the both.

These two do not produce significant clusters:

-ETAC_opt NN=2:sid=2:hpow=0:pthr=0.01/0.001/19:name=h0:fpr=5

-ETAC_opt NN=2:sid=2:hpow=2:pthr=0.01/0.001/19:name=h2:fpr=5

But this one does with everything else left the same:

-ETAC_opt NN=2:sid=2:hpow=0,2:pthr=0.01/0.001/19:name=multi:fpr=5

I expected the multi threshold to increase the thresholds used by running more comparisons, but it doesn’t seem like that is happening. Could someone also explain to me why that occurs?

Thank you so much in advance!

I’m bumping this to see if someone could please help me with these two questions. To summarize, they are:

  1. Why does 3dttest++ change the temporal degrees of freedom when -etac is invoked?
  2. Why would including multiple hpows when -etac is invoked produce significant clusters that don’t pass correction for any hpow setting alone?

I’d be happy to provide some data if that would help diagnose what I’m seeing. Thanks so much!