Dear Cyril, I like you script a lot as it made it easier to understand it more. May I ask if you have a similar script for plotting the dispersion derivative and their different meaning with the canonical (i.e. similar to the temporal plots)? Many thanks Aser On Thu, Oct 13, 2016 at 11:49 AM, cyril pernet <[log in to unmask]> wrote: > Hi Jiang : > >> Dear spm experts, >> >> I have some questions about the calculation of the latency of the BOLD >> response and the explaination of the temporal derivative of parametric >> regressor. >> >> (1) The latency is estimated by the ratio of derivative parameter (beta2) >> to canonical (beta1) parameter estimates and can be calculated by a >> function latency=2C/(1 + exp(D*beta2/ beta1))- C, C = 1.78 and D = 3.10 >> (Henson et al., 2002). However, the beta1 can either a positive or a >> negative value that lead to a response later than the canonical when the >> beta2 is positive and the beta1 is negative. >> > yes Henson is correct, the modelled hrf is simply obtained by summing the > double gamma + derivative > > beta2 + / beta1 + = early response (latency is negative) > beta2 - / beta1 - = early response (latency is negative) > beta2 - / beta1 + = delayed response (latency is positive) > beta2 + / beta1 - = delayed response (latency is positive) > -- see bottom for a simple script showing this > > Therefore, is it right to use the abosolute value of beta1 in this >> function to calculate the latency and the earlier or later of the BOLD >> response only depends on whether the derivative parameter is positive or >> negative rather than the canonical parameter. >> > no > >> (2) When we get a significant effect in the temporal derivative of >> parametric regressor (reaction time – mean(reaction time)), is the >> explaination right that for a region with deactivation, when we only put >> “1” on the “paraRT_TD” regressors, the significant regions means that the >> in the regions, the larger the reaction time, the larger the temporal >> derivative, and the earlier the BOLD response appear in the region. >> > > for a region with deactivation = you are already in an area where the hrf > regressor is negative > > when we only put “1” = I would never do that - always add an inclusive > mask (with lenient threshold) for the hrf regressor > > paraRT_TD” regressors = voxels that change trial to trial as a function of > RT > > interpretation = hrf peaks (earlier/latter, depends beta value) than > expected by trial to trial variations > > for be able to say 'the larger the reaction time, the earlier the BOLD > response appear ' you need to show a systematic change in the timing of the > peak, the temporal derivative doesn't do that - it only 'moves' earlier or > latter your RT regressor > > Cyril > > > ------------------------------------------------------------ > --------------------------- > For question 1, you can convince yourself running that simple example > > xBF.dt = 0.5; > xBF.name = 'hrf (with time derivative)'; > xBF.length = 20; > [xBF] = spm_get_bf(xBF) > > beta1=2; beta2=3; > latency=2*1.78/(1 + exp(3.1*beta2/beta1))- 1.78; > figure; subplot(2,2,1); plot(beta1*xBF.bf(:,1),'--','LineWidth',2); > hold on; plot(beta2*xBF.bf(:,2),'g--','LineWidth',2); > plot(beta1*xBF.bf(:,1)+beta2*xBF.bf(:,2),'r','LineWidth',2); > title(['Beta1 +, Beta2 +, latency=' num2str(latency)],'FontSize',13'); > axis tight; box on; grid on > > beta1=2; beta2=-3; > latency=2*1.78/(1 + exp(3.1*beta2/beta1))- 1.78; > subplot(2,2,2); plot(beta1*xBF.bf(:,1),'--','LineWidth',2); > hold on; plot(beta2*xBF.bf(:,2),'g--','LineWidth',2); > plot(beta1*xBF.bf(:,1)+beta2*xBF.bf(:,2),'r','LineWidth',2); > title(['Beta1 +, Beta2 -, latency=' num2str(latency)],'FontSize',13'); > axis tight; box on; grid on > > beta1=-2; beta2=3; > latency=2*1.78/(1 + exp(3.1*beta2/beta1))- 1.78; > subplot(2,2,3); plot(beta1*xBF.bf(:,1),'--','LineWidth',2); > hold on; plot(beta2*xBF.bf(:,2),'g--','LineWidth',2); > plot(beta1*xBF.bf(:,1)+beta2*xBF.bf(:,2),'r','LineWidth',2); > title(['Beta1 -, Beta2 +, latency=' num2str(latency)],'FontSize',13'); > axis tight; box on; grid on > > beta1=-2; beta2=-3; > latency=2*1.78/(1 + exp(3.1*beta2/beta1))- 1.78; > subplot(2,2,4); plot(beta1*xBF.bf(:,1),'--','LineWidth',2); > hold on; plot(beta2*xBF.bf(:,2),'g--','LineWidth',2); > plot(beta1*xBF.bf(:,1)+beta2*xBF.bf(:,2),'r','LineWidth',2); > title(['Beta1 -, Beta2 -, latency=' num2str(latency)],'FontSize',13'); > axis tight; box on; grid on > > [log in to unmask] > tel: +44 (0)131 465 9530 > http://www.sbirc.ed.ac.uk/cyril > http://www.ed.ac.uk/edinburgh-imaging > > > -- > The University of Edinburgh is a charitable body, registered in > Scotland, with registration number SC005336. >