Return to the Test of Variables of Attention for Children page
T.O.V.A. (Test of Variables of Attention) - visual stimuli
For Ages: 4 & 5 year old children
last updated: 03-12-2020 by K. Borchert (email@example.com) for Millisecond Software, LLC
Script Copyright © 03-12-2020 Millisecond Software
This script implements and administers: T.O.V.A. (Test of Variables of Attention),
a computerized test of sustained attention and impulsivity.
The T.o.V.A. is a Continuous Performance Test (CPT) with a simple shape in 2 different
screen positions (top square/bottom square).
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.
Note: this script runs the half design used for children ages 4 & 5
Participants are presented 2 different stimuli (for 100ms) at a constant pace (every 2s).
If the stimulus is a target (aka top square), they are asked to press the Spacebar.
If it's not a target (aka bottom square), they are asked to simply wait for the
the default set-up of the script takes appr. 13 minutes to complete
DATA FILE INFORMATION
The default data stored in the data files are:
(1) Raw data file: 'tova_ages4and5_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
script.sessionid: 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.
values.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
values.anticipatoryResponse: 1 = response is anticipatory (latency < parameters.minValidLatency; default: 200ms);
0 = response is not anticipatory
values.commissionerror: 1 = valid commission error (excludes anticipatory responses);
0 = no valid commission error
values.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_ages4and5_summary*.iqdat' (a separate file for each participant)
computer.platform: the platform the script was run on (win/mac/ios/android)
script.startdate: date script was run
script.starttime: time script was started
script.subjectid: assigned subject id number
script.groupid: assigned group id number
script.sessionid: assigned session id number
script.elapsedtime: time it took to run script (in ms); measured from onset to offset of script
script.completed: 0 = script was not completed (prematurely aborted);
1 = script was completed (all conditions run)
parameters.minValidLatency: minimum latency in ms that is considered valid and not anticipatory (default: 200)
values.sum_anticipatoryResponses: sums up number of anticipatory responses across all test trials
expressions.percentAnticipatoryResponses: percentage of anticipatory response during test trials
(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
values.propcorrect_practice: overall proportion correct of practice trials
expressions.overallproportioncorrect: overall proportion correct of all experimental trials (across all test blocks)
expressions.meanPostCommissionRT: mean correct hit latencies (in ms) committed immediately after a commission error (across all test blocks)
expressions.meanHitRT: mean hit latency (in ms) of all experimental trials (across all test blocks)
expressions.SDHitRT: standard deviation of all hit latencies (across all test blocks)
expressions.hitRate: mean hit rate (across all test blocks)
expressions.omissionsRate: mean omissions rate (across all test blocks)
expressions.commissionRate: mean false alarm rate (across all test blocks)
expressions.z_hr: z-value of mean hit rate (across all test blocks)
expressions.z_FAr: z-value of mean False Alarm rate (across all test blocks)
expressions.dprime: d' (parametric measure of discriminability). (across all test blocks)
expressions.meanHitRT_LF: mean hit latency (in ms) in low frequency condition
expressions.SDHitRT_LF: standard deviation of all hit latencies in low frequency condition
expressions.hitRate_LF: mean hit rate in low frequency condition
expressions.omissionsRate_LF: mean omissions rate in low frequency condition
expressions.commissionRate_LF: mean false alarm rate in low frequency condition
expressions.z_hr_LF: z-value of mean hit rate in low frequency condition
expressions.z_FAr_LF: z-value of mean False Alarm rate in low frequency condition
expressions.dprime_LF: d' (parametric measure of discriminability) in low frequency condition
expressions.meanHitRT_HF: mean hit latency (in ms) in high frequency condition
expressions.SDHitRT_HF: standard deviation of all hit latencies in high frequency condition
expressions.hitRate_HF: mean hit rate in high frequency condition
expressions.omissionsRate_HF: mean omissions rate in high frequency condition
expressions.commissionRate_HF: mean false alarm rate in high frequency condition
expressions.z_hr_HF: z-value of mean hit rate in high frequency condition
expressions.z_FAr_HF: z-value of mean False Alarm rate in high frequency condition
expressions.dprime_HF: d' (parametric measure of discriminability) in high frequency condition
5 blocks: total of 374 trials (324 test trials and 50 practice trials); takes ~13 minutes
Practice: 50 trials with target:nontarget frequency = 1:1 (lasts ~2 minutes)
1. Low Frequency: 162 trials with 36 targets, 126 nontargets (1:3.5)(lasts ~5.5 minutes)
2. High Frequency: 162 trials with 126 targets, 36 nontargets (3.5:1)(lasts ~5.5 minutes)
1. Test purpose and instructions displayed.
1b. 2-min Practice Session begins
2. low frequency 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. high frequency 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).
see section Editable Instructions
(from Greenberg & Waldman, 1993)
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
false (0): no feedback is provided during practice (default)