___________________________________________________________________________________________________________________ T.O.V.A. (Test of Variables of Attention) - auditory stimuli ___________________________________________________________________________________________________________________ last updated: 10-04-2024 by K. Borchert (katjab@millisecond.com) for Millisecond Software, LLC Script Copyright © 10-04-2024 Millisecond Software ___________________________________________________________________________________________________________________ BACKGROUND INFO ___________________________________________________________________________________________________________________ This script implements and administers: T.O.V.A. (Test of Variables of Attention), a computerized test of sustained attention and impulsivity with auditory stimuli. The T.o.V.A. is a Continuous Performance Test (CPT) with two simple tones (high/low). Reference: Greenberg, L.M., & Waldman, I.D. (1993). Developmental normative data on the Test of Variable of Attention (T.O.V.A.™). Journal of Child Psychology and Psychiatry, 34, 1019–1030. Greenberg, L.M., Kindschi, C.L., Dupuy, T.R., Hughes, S.J. (2016). TOVA: Test of Variable Attention. Clinical Manual. http://files.tovatest.com/documentation/8/Clinical%20Manual.pdf ___________________________________________________________________________________________________________________ TASK DESCRIPTION ___________________________________________________________________________________________________________________ Participants are presented 2 different tones (each 100ms) at a constant pace (every 2s). If the stimulus is a target (aka high tone), they are asked to press the Spacebar. If it's not a target (aka low tone), they are asked to simply wait for the next stimulus. ___________________________________________________________________________________________________________________ DURATION ___________________________________________________________________________________________________________________ the default set-up of the script takes appr. 24 minutes to complete ___________________________________________________________________________________________________________________ DATA FILE INFORMATION ___________________________________________________________________________________________________________________ The default data stored in the data files are: (1) Raw data file: 'tova_auditory_raw*.iqdat' (a separate file for each participant) build: The specific Inquisit version used (the 'build') that was run computer.platform: the platform the script was run on (win/mac/ios/android) date, time: date and time script was run subject, group: with the current subject/groupnumber session: with the current session id blockcode, blocknum: the name and number of the current block (built-in Inquisit variable) trialcode, trialnum: the name and number of the currently recorded trial (built-in Inquisit variable) Note: trialnum is a built-in Inquisit variable; it counts all trials run; even those that do not store data to the data file such as feedback trials. Thus, trialnum may not reflect the number of main trials run per block. frequency: 1 = low frequency condition; 2 = high frequency condition; 0 = practice response: the participant's key response (scancodes: 57 = Spacebar; 0 = noresponse) correct: the correctness of the response (1 = correct; 0 = incorrect) latency: the response latency (in ms); measured from onset of target/nontarget anticipatoryResponse: 1 = response is anticipatory (latency < parameters.minValidLatency; default: 200ms); 0 = response is not anticipatory commissionerror: 1 = valid commission error (excludes anticipatory responses); 0 = no valid commission error postCommissionHit: 1 = valid hit (excludes anticipatory responses) immediately after a commission error; 0 = not a valid hit immediately after a commission error (2) Summary data file: 'tova_auditory_summary*.iqdat' (a separate file for each participant) inquisit.version: Inquisit version run computer.platform: the platform the script was run on (win/mac/ios/android) startDate: date script was run startTime: time script was started subjectid: assigned subject id number groupid: assigned group id number sessionid: assigned session id number elapsedTime: time it took to run script (in ms); measured from onset to offset of script completed: 0 = script was not completed (prematurely aborted); 1 = script was completed (all conditions run) (parameter) minValidLatency: minimum latency in ms that is considered valid and not anticipatory (default: 200) sum_anticipatoryResponses: sums up number of anticipatory responses across all test trials percentAnticipatoryResponses: percentage of anticipatory response during test trials Notes: (a) the following summary statistic exclude all anticipatory responses (default: responses with latencies < 200ms) (b) z-scores were adjusted according to Gregg & Sedikides (2010, p.148) If the hit rate / FA rate is 0 => 0.005 is used instead IF the hit rate / FA rate is 1.0 => 0.995 is used instead propcorrect_practice: overall proportion correct of practice trials overallproportioncorrect: overall proportion correct of all experimental trials (across all test blocks) meanPostCommissionRT: mean correct hit latencies (in ms) committed immediately after a commission error (across all test blocks) meanHitRT: mean hit latency (in ms) of all experimental trials (across all test blocks) SDHitRT: standard deviation of all hit latencies (across all test blocks) hitRate: hit rate (across all test blocks) omissionsRate: omissions rate (across all test blocks) commissionRate: false alarm rate (across all test blocks) crRate: correct rejection rate (across all test blocks) z_hr: z-value of hit rate (across all test blocks) z_FAr: z-value of False Alarm rate (across all test blocks) dprime: d' (parametric measure of discriminability). (across all test blocks) c: c-criterion in signal detection:The absolute value of c provides an indication of the strength of the response bias/response style negative: participant more likely to report that signal (go stims) is present (liberal response style); may favor faster responding in speed-accuracy trade-off response paradigms positive: favoring caution (conservative response style) meanHitRT_LF: mean hit latency (in ms) in low frequency condition (across both low frequency blocks) SDHitRT_LF: standard deviation of all hit latencies in low frequency condition (across both low frequency blocks) hitRate_LF: hit rate in low frequency condition (across both low frequency blocks) omissionsRate_LF: omissions rate in low frequency condition (across both low frequency blocks) commissionRate_LF: false alarm rate in low frequency condition (across both low frequency blocks) crRate_LF: correct rejection rate (across both low frequency blocks) z_hr_LF: z-value of hit rate in low frequency condition (across both low frequency blocks) z_FAr_LF: z-value of False Alarm rate in low frequency condition (across both low frequency blocks) dprime_LF: d' (parametric measure of discriminability) in low frequency condition (across both low frequency blocks) c_LF: c-criterium for low frequency condition meanHitRT_HF: mean hit latency (in ms) in high frequency condition (across both high frequency blocks) SDHitRT_HF: standard deviation of all hit latencies in high frequency condition (across both high frequency blocks) hitRate_HF: hit rate in high frequency condition (across both high frequency blocks) omissionsRate_HF: omissions rate in high frequency condition (across both high frequency blocks) commissionRate_HF: false alarm rate in high frequency condition (across both high frequency blocks) crRate_HF: correct rejection rate (across both high frequency blocks) z_hr_HF: z-value of hit rate in high frequency condition (across both high frequency blocks) z_FAr_HF: z-value of False Alarm rate in high frequency condition (across both high frequency blocks) dprime_HF: d' (parametric measure of discriminability) in high frequency condition (across both high frequency blocks) c_LF: c-criterium for high frequency condition meanHitRT_LF1: mean hit latency (in ms) in first low frequency block SDHitRT_LF1: standard deviation of all hit latencies in first low frequency block hitRate_LF1: hit rate in first low frequency block omissionsRate_LF1: omissions rate in first low frequency block commissionRate_LF1: false alarm rate in first low frequency block crRate_LF1: correct rejection rate in first low frequency block z_hr_LF1: z-value of hit rate in first low frequency block z_FAr_LF1: z-value of False Alarm rate in first low frequency block dprime_LF1: d' (parametric measure of discriminability) in first low frequency block c_LF1: c-criterium for first low frequency block meanHitRT_LF2: mean hit latency (in ms) in second low frequency block SDHitRT_LF2: standard deviation of all hit latencies in second low frequency block hitRate_LF2: hit rate in second low frequency block omissionsRate_LF2: omissions rate in second low frequency block commissionRate_LF2: false alarm rate in second low frequency block crRate_LF2: correct rejection rate in second low frequency block z_hr_LF2: z-value of hit rate in second low frequency block z_FAr_LF2: z-value of False Alarm rate in second low frequency block dprime_LF2: d' (parametric measure of discriminability) in second low frequency block c_LF2: c-criterium for second low frequency block meanHitRT_HF1: mean hit latency (in ms) in first high frequency block SDHitRT_HF1: standard deviation of all hit latencies in first high frequency block hitRate_HF1: hit rate in first high frequency block omissionsRate_HF1: omissions rate in first high frequency block commissionRate_HF1: false alarm rate in first high frequency block crRate_HF1: correct rejection rate in first high frequency block z_hr_HF1: z-value of hit rate in first high frequency block z_FAr_HF1: z-value of False Alarm rate in first high frequency block dprime_HF1: d' (parametric measure of discriminability) in first high frequency block c_HF1: c-criterium for first high frequency block meanHitRT_HF2: mean hit latency (in ms) in second high frequency block SDHitRT_HF2: standard deviation of all hit latencies in second high frequency block hitRate_HF2: hit rate in second high frequency block omissionsRate_HF2: missions rate in second high frequency block commissionRate_HF2: false alarm rate in second high frequency block crRate_HF2: correct rejection rate in second high frequency block z_hr_HF2: z-value of hit rate in second high frequency block z_FAr_HF2: z-value of False Alarm rate in second high frequency block dprime_HF2: d' (parametric measure of discriminability) in second high frequency block c_HF2: c-criterium for second high frequency block ___________________________________________________________________________________________________________________ EXPERIMENTAL SET-UP ___________________________________________________________________________________________________________________ 5 blocks: total of 698 trials (648 test trials and 50 practice trials); takes ~24 minutes (errorfeedback is optional, see section Editable Parameters) Practice: 50 trials with target:nontarget frequency = 1:1 (lasts ~2 minutes) Test Blocks: 1. Low Frequency1: 162 trials with 36 targets, 126 nontargets (1:3.5)(lasts ~5.5 minutes) => ~11 min on Low Frequency condition 2. Low Frequency1: 162 trials with 36 targets, 126 nontargets (1:3.5)(lasts ~5.5 minutes) => ~11 min on Low Frequency condition 3. High Frequency1: 162 trials with 126 targets, 36 nontargets (3.5:1)(lasts ~5.5 minutes) => ~11 min on Low Frequency condition 4. High Frequency1: 162 trials with 126 targets, 36 nontargets (3.5:1)(lasts ~5.5 minutes) => ~11 min on Low Frequency condition Test Procedures: 1. Test purpose and instructions displayed. 1b. 2-min Practice Session begins 2. First half of the test begins. 2a. target/Non-target stimulus presented briefly for 100ms (~22.2% of the stimuli are targets). 2b. Awaits for user response (space bar) or terminates after 2000ms. 2c. Go to 2a until half time is reached. 3. Second half of the test begins (unannounced). 3a. target/Non-target stimulus presented briefly for 100ms (~77.8% of the stimuli are targets). 3b. Awaits for user response (space bar) or terminates after 2000ms. 3c. Go to 3a until half time is reached 4. End of test (w/ thank you page). ___________________________________________________________________________________________________________________ STIMULI ___________________________________________________________________________________________________________________ see Greenberg et al (2016, p.16) target tone: 392hz with 0.8amplitude for 100ms; generated in Audacity non-target tone: 261.6hz with 1.0 amplitude for 100ms; generated in Audacity ___________________________________________________________________________________________________________________ INSTRUCTIONS ___________________________________________________________________________________________________________________ see section Editable Instructions (adapted from Greenberg & Waldman, 1993) ___________________________________________________________________________________________________________________ EDITABLE CODE ___________________________________________________________________________________________________________________ check below for (relatively) easily editable parameters, stimuli, instructions etc. Keep in mind that you can use this script as a template and therefore always "mess" with the entire code to further customize your experiment. The parameters you can change are: SOA: Time interval between onsets of target/non-target stimulus (in ms) (here: 2000ms) squaresize: the size of the target/nontarget shape in canvas height percentage (default: 5%) backgroundsize: the size of the white background in canvas height percentage (default: 50%) /minValidLatency: minimum latency in ms that is considered valid and not anticipatory (default: 200) /showPracticeFeedback: true (1): error feedback is presented during practice (default) false (0): no feedback is provided during practice