That is helpful, I had been looking for something like that. It can be seen from a view of the list of events:
timing_tool.py -multi_timing stimuli/* -multi_timing_to_event_list GE:ALL -
or even
timing_tool.py -multi_timing stimuli/* -multi_timing_to_event_list GE:ALL - | grep voa
The voa events are always exactly 15.4 seconds (14 TRs) after every other event. Since these are TR-locked events and tents, and since the tents last 26 TRs, the first 11 TRs of the voa class (the first 11 regressors) will be exactly duplicated by the combination of the last 11 regressors from every other class. That is the multi-collinearity in the model, and it is why the condition number is high. It also explains why TENTzero did not help (removing the first and last regressors). There are 11 overlapping regressors, not just 2.
With fixed-shape basis functions, this model would be solvable, but not with all of the TENTs. Note that even sub-sampling the TENTs down to every 2 or 3 TRs might not be good enough, as there would still be the 12.1 seconds of consistent overlap. It would be helpful if there were some random jitter in the event timing.
- rick