Return to the Integrated Visual and Auditory Continuous Performance Test (IVA-CPT) page
						
						 INTEGRATED VISUAL AND AUDITORY CONTINUOUS PERFORMANCE TEST (IVACPT)
SCRIPT INFO

Script Author: Katja Borchert, Ph.D. (katjab@millisecond.com) for Millisecond Software, LLC
Date: 01-31-2014
last updated: 08-15-2016 by K.Borchert for Millisecond Software LLC

Script Copyright © 08-15-2016 Millisecond Software


BACKGROUND INFO 

											*Purpose*
This script implements the Integrated Visual and Auditory Continuous Performance Test (IVACPT) based on
information in:

E. Strauss, E. M. S. Sherman, & O. Spreen (2006). A Compendium of Neuropsychological Tests: Administration, Norms, and Commentary.
3rd ed., Oxford University Press, New York, (p.575-582)

!Note: the script is a best guess effort by Millisecond Software. Differences between the commercially
available IVA+Plus CPT and this script are likely.


											  *Task*
Participants are presented digits (here: 1 or 2) in visual or auditory form. One of the digits is
defined as the target or GO digit (here: 1), the other digit is the nontarget or NOGO digit (here: 2).
Participants are asked to press the response key (here: Spacebar) whenever they see OR hear a GO digit (here: 1) but
to refrain from responding whenever they see OR hear a NOGO digit (here: 2).


DATA FILE INFORMATION: 
The default data stored in the data files are:

(1) Raw data file: 'IVACPT_raw*.iqdat' (a separate file for each participant)

build:							Inquisit build
computer.platform:				the platform the script was run on
date, time, subject, group:		date and time script was run with the current subject/groupnumber 
/phase:							"warmup", "practice", "test", "cooldown"
blockcode, blocknum:			the name and number of the current block
trialcode, trialnum: 			the name and number of the currently recorded trial
									(Note: not all trials that are run might record data) 
/set:							setcount (5 sets of 100 trials are run; each set consists of 2 Blocks of 50 trials)
/testblockcount:				counts the number of test blocks run
/counttrials_block:				counts the trials run in a block
/counttrials_total:				counts the trials run across all test blocks
/targetdigit:					stores the digit that is assigned target status
/currentdigit:					variable used to select the digit for the current trial
									=> separate measure for off-task behavior
/modalityType:					1 = visual; 2 = audio
/trialtype:						1 = Go; 2 = NoGo								
response:						the participant's response for that trial
correct:						the correctness of the response
latency: 						the response latency in ms
									Note: for test trials values.rt_test contains the actual response latency
/rt_test: 						stores the latency (in ms) of the left mouse click in test (and practice) trials 

/Hits_visual:					cumulative count of Hits in visual trials 
/FAs_visual:					cumulative count of False Alarms in visual trials
/Misses_visual:					cumulative count of Misses in visual trials
/CRs_visual:					cumulative count of Correct Rejections in visual trials
/Hits_audio-
/CRs_audio:						same for auditory trials

(2) Summary data file: 'IVACPT_summary*.iqdat' (a separate file for each participant)

script.startdate:				date script was run
script.starttime:				time script was started
script.subjectid:				subject id number
script.groupid:					group id number
script.elapsedtime:				time it took to run script (in ms)
computer.platform:				the platform the script was run on
/completed:						0 = script was not completed (prematurely aborted); 1 = script was completed (all conditions run)
script.startdate:				date script was run
script.starttime:				time script was started
script.subjectid:				subject id number
script.groupid:					group id number
script.elapsedtime:				time it took to run script (in ms)
/completed:						0 = script was not completed; 1 = script was completed (all conditions run)
/counttrials:					counts the trials run across all test blocks
/meanRT_visualbaseline1-
/STD_audiobaseline1:			store Mean and standard deviations of visual and auditory response latencies (in ms) for the warm-up baseline (1)
/meanRT_visualbaseline2-
/STD_audiobaseline2: 			store Mean and standard deviations of visual and auditory response latencies (in ms) for the cool-down baseline (2)
/propcorrect_overall:			the proportion correct responses across all test trials
/hitRate_overall:				the overall hit rate across all test trials (=correct responses in Go trials)
/hitRate_V:						the overall hit rate across all visual test trials (=correct responses in visual Go trials)
/hitRate_A:						the overall hit rate across all auditory test trials (=correct responses in auditory Go trials)
/FaRate_overall:				the overall false alarm rate across all test trials (=error responses in NoGo trials)
/FaRate_V:						the overall false alarm rate across all visual test trials (=error responses in visual NoGo trials)
/FaRate_A:						the overall false alarm rate across all auditory test trials (=error responses in auditory NoGo trials)

/meanRT_hits -
/meanRT_FaA  					mean latencies in ms of hits and false alarms across and separate for visual (V) and auditory (A) conditions
									Note: see under section Expressions for further summary variables that are calculated and could be
									added to the datafile (e.g. standard deviations)

/meanRT_Set12V:					mean latency (in ms) of hits for visual trials in the 1. and 2. sets (combined)
/meanRT_Set45V:					mean latency (in ms) of hits for visual trials in the 4. and 5. sets (combined)
/meanRT_Set12A:					mean latency (in ms) of hits for auditory trials in the 1. and 2. sets (combined)
/meanRT_Set45A:					mean latency (in ms) of hits for auditory trials in the 4. and 5. sets (combined)
/meanRT_moretargetV:			mean latency (in ms) of hits for visual trials in high frequency target blocks
/meanRT_fewertargetV:			mean latency (in ms) of hits for visual trials in low frequency target blocks
/meanRT_moretargetA:			mean latency (in ms) of hits for auditory trials in high frequency target blocks
/meanRT_fewertargetA:			mean latency (in ms) of hits for auditory trials in low frequency target blocks
/Q1_V:							Q1 (25th percentile) of visual hit latencies in ms
/medianRT_hits_V:				visual hit latency (in ms) median (50th percentile)
/Q3_V:							Q3 (75th percentile) of visual hit latencies in ms
/Q1_A:							Q1 (25th percentile) of auditory hit latencies in ms
/medianRT_hits_A:				auditory hit latency (in ms) median (50th percentile)
/Q3_A:							Q3 (75th percentile) of auditory hit latencies in ms
									
																										
Subscale Raw Scores:
 
Note: these summary statistics are a best guess effort of Millisecond Software and might not
be comparable to the scores obtained with commercially available programs  (see section EXPRESSIONS)

/PRA_perc:			'Prudence Auditory Scale Percent (100-((PRA#/75) x 100)'
					=> in script: 100 - ((expressions.FAs_A/75) * 100)
/PRV_perc:			'Prudence Visual Scale Percent (100-((PRV#/65) x 100)'
					=> in script: 100 - ((expressions.FAs_V/65) * 100)

/VIA_perc:			'Vigilance Auditory Scale Percent (100-((VIA#/45) x 100)'
					=> in script: 100 - ((expressions.Misses_A/45) * 100)
/VIV_perc:			'Vigilance Visual Scale Percent (100-((VIV#/45) x 100)'
					=> in script: 100 - ((expressions.Misses_V/45) * 100)

/CONA:				'Consistency Auditory Scale ((Quartile 1 RT/Quartile 3RT) x 100)'
									=> in script: (Q1 or visual hit RTs / Q3 of visual hit RTs)) * 100
/CONV:				'Consistency Visual Scale ((Quartile 1 RT/Quartile 3RT) x 100)'
									=> in script: ((Q1 of auditory hit RTs / Q3 of auditory hit RTs)) * 100

/STMA:				'Stamina Auditory Scale ((Sets 1 + 2)/(Sets 4 + 5)) x 100'
									=> in script: ((mean latency of auditory hits in sets 1 and 2 / mean latency of auditory hits in sets 4 and 5)) * 100
/STMV:				'Stamina Visual Scale ((Sets 1 + 2)/(Sets 4 + 5)) x 100'
									=> in script: ((mean latency of visual hits in sets 1 and 2 / mean latency of visual hits in sets 4 and 5)) * 100

/MNA:				'Mean Auditory reaction time for all trials (Speed Scale)'
									=> in this script: mean latency of hits across all auditory test trials
/MNV:				'Mean Visual reaction time for all trials (Speed Scale, Max N = 125)'
									=> in this script: mean latency of hits across all visual test trials

/FOCA:				'Focus Auditory Scale ((1 - (SD/MN)) x 100)'
									=> in this script: (1 - (standard deviation of auditory hit latencies/mean hit latency for auditory trials)) * 100
/FOCV:				'Focus Visual Scale ((1 - (SD/MN)) x 100)'
									=> in this script: (1 - (standard deviation of visual hit latencies/mean hit latency for visual trials)) * 100

/RFRA:				'Ratio Frequent/Rare Auditory RT x 100 (Readiness Scale)'
									=> in this script: (mean auditory hit latency in blocks with frequent targets/mean auditory hit latency in blocks with rare targets) * 100
/RFRV:				'Ratio Frequent/Rare Visual RT x 100 (Readiness Scale)'
									=> in this script: (mean visual hit latency in blocks with frequent targets/mean visual hit latency in blocks with rare targets) * 100

/RVAC:				Ratio Visual/Auditory Combined RT x 100 (Balance Scale)
									=> in this script: (mean visual hit latency/mean auditory hit latency) * 100

/RWCA:				Ratio Warm-up/Cool-down Auditory RT x 100 (Persistence Scale)
									=> in this script: (mean auditory latency from baseline1 / mean auditory latency from baseline2) * 100
/RWCV:				Ratio Warm-up/Cool-down Visual RT x 100 (Persistence Scale)
									=> in this script: (mean visual latency from baseline1 / mean visual latency from baseline2) * 100

/AAQ:				'Auditory Attention Quotient (based on VIA_perc + FOCA + MNA)
/ARCQ:				'Auditory Response Control Quotient (based on: PRA_perc + CONA + STMA)

/VAQ:				'Visual Attention Quotient (based on VIV_perc + FOCV + MNV)
/VRCQ:				'Visual Response Control Quotient (based on: PRV_perc + CONV + STMV)

/FAQ:				'Full Scale Attention Quotient (based on AAQ + VAQ)
/FRCQ:				'Full Scale Response Control Quotient (based on ARCQ + VRCQ)

/SMA:				'Sensory/Motor Auditory Scale (better of Warm-up/Cool down RT)
					=> in this script: the faster mean reaction time of audio warm-up (baseline1) or audio cool-down (baseline2)
/SMV: 				'Sensory/Motor Visual Scale (better of Warm-up/Cool down RT)
					=> in this script: the faster mean reaction time of visual warm-up (baseline1) or visual cool-down (baseline2)

					
EXPERIMENTAL SET-UP
	
a) Warm-up Baseline:
- 2 blocks (one for visual assessment, one for audio assessment) for warm-up at the beginning of the session
- each block runs for parameters.baselinetrialnumber (-> editable parameter, default: 30)
- Trial Sequence: after a randomly selected time period (-> list.iti_baseline, editable list) a stimulus is presented and 
baseline response latencies are measured
- default response is a left mouse button press
- at the end of each blocks mean reaction times (as well as their stds) are stored for comparison purposes
=> as a measure of Persistence scores RWCA/RWCV calculate the ratios of the warm-up mean latencies to the equivalent cool-down mean latencies
separately for audio (A) and visual (V) latencies.

!Note: The Baseline Phase in this script is a best guess effort by Millisecond Software LLC

b) Practice:
- 1 block of practice trials between baseline blocks and test blocks
- practice block is equivalent to a test block with parameters.practicetrialnumber (editable parameter, default: 50)
but does not count towards summary scores.
- by default, the frequency of targets equals that of non-targets during the practice session.

!Note: The Practice Phase in this script is a best guess effort by Millisecond Software LLC

c) Test:
- 10 Blocks of 50 trials (Total: 500) divided into 5 sets: the first block in a set presents a high frequency of
targets (default: 84%); the second block in a set presents a low frequency of targets (16%) (-> parameters.highfrequency, editable parameter)
- Half of the trials in each block present visual stimuli, half the trials present auditory stimuli;
the order is randomly determined
- the order of Go and Nogo trials is randomly determined in each block
- The visual stimuli appear in a box in the middle of the screen for parameters.visualstimulusduration (default: 167ms, editable parameter)
- the auditory stimuli are played for 500ms (length of the audio files) - to change the length different audio files have to be used
- the total trialduration (and the time to collect responses) is parameters.trialduration (default: 1500ms, editable parameter)
- response mode is the mouse

d) Cooling-down Baseline (same as (a))
- 2 blocks (one for visual assessment, one for audio assessment) for cool-down at the end of the session

!Note: The Baseline Phase in this script is a best guess effort by Millisecond Software LLC


STIMULI
visual stimuli (default: digits 1 and 2) and audio stimuli can be edited under 
section Editable Stimuli

The visual digits are presented in a frame in the middle of the screen. Size of the
digits and the frames can be edited under section Editable Parameters

INSTRUCTIONS
The provided instructions are written by Millisecond Software and are presented in the form of
htmlpages. The html files can be edited.

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:

/fontsize:								fontsize of the visual digits in screen height percentages (default: 10%)
/framewidth:							the width of the frame in screen height percentages (default: 10%)
/frameheight:							the height of the frame in screen height percentages (default: 20%)

/visualstimulusduration:				presentation duration of the visual digits in ms (default: 167ms)
											Note: duration of audio files is controlled by length of audio file (here: 500ms)
/trialduration:							the total duration (in ms) of the test trials (= the time participants have to respond)
										before the next stimulus is presented (default: 1500ms)

/trialnumber:							the number of trials in a block (here: 50)
											Note: in this script the 'official' sets of 100 trials each are divided up into 2
													blocks of 50 trials: the first block is the one to present a higher frequency of targets
													and the second block presents a lower frequency of targets
/baselinetrialnumber:					the number of trials run in a baseline block (default: 35)
											Note: each baseline block lasts roughly ~1min
/practicetrialnumber:					the number of trials run during practice
											Note: 60 trials lasting 1500ms (default) each ~ 1.5min
	
/highfrequency:							sets the frequency of targets (nontargets) in the blocks in which targets (nontargets) are 
										presented more frequently (default: 0.84)

Copyright © Millisecond Software. All rights reserved.
Contact | Terms of Service | Security Statement | Employment