Return to the Rapid Visual Information Processing page
													 
___________________________________________________________________________________________________________________	

										*RAPID VISUAL INFORMATION PROCESSING*
___________________________________________________________________________________________________________________	

Script Author: Katja Borchert, Ph.D. (katjab@millisecond.com) for Millisecond Software, LLC
last updated:  03-11-2020 by K. Borchert (katjab@millisecond.com) for Millisecond Software, LLC

Script Copyright © 03-11-2020 Millisecond Software

___________________________________________________________________________________________________________________
BACKGROUND INFO 	
___________________________________________________________________________________________________________________	
This script implements the Rapid Visual Information Processing Task, a measures of processing speed
and performance.

The implemented procedure is based on:

Wesnes, K. & Wartburton, D.M (1984), Effects of scopolamine and nicotine on human rapid information 
processing performance.  Psychopharmacology, 82, 147-150.

___________________________________________________________________________________________________________________
TASK DESCRIPTION
___________________________________________________________________________________________________________________	
A participant is presented with a series of digits (1-9) on a computer screen. The presentation time 
is 100 digits/min (or 1digit/600ms). The participant's task is to press a response key (here: Spacebar) 
as soon as she detects a series of three consecutive odd or three consecutive even digits.

___________________________________________________________________________________________________________________	
DURATION 
___________________________________________________________________________________________________________________	
the default set-up of the script takes appr. 14 minutes to complete

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

(1) Raw data file: 'rvip.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.focusdigit3:					the three digits that need to be checked to see if they are all odd or all even														
values.focusdigit2:
values.focusdigit1 :
values.digit:						the digit presented in the current trial
values.btwtargets_counter:			counts the number of digits between target trials

values.target:						0 = no target presented; 
									1 = target presented (the third digit in a row of either all odd or all even digits)
										Note: while the current digit may not be a target, the trial might still accept
										target responses if the previous target is still active
								
values.targetstarttime:				the script elapsed time (in ms) the last target was presented 
values.starttrialtime:				the script elapsed time the current trial started (in ms)
parameters.target_responsewindow:	the time window during which a target is active (here: up until 1500ms after onset of a target, consistent with Wesnes & Wartburton (1984))
values.target_responseendtime:		values.starttrial of a target-trial + values.interval (in ms)

values.targetactive:				0 = target not active; 
									1 = target still active (even though the currently presented digit itself might not be a target)
								
response:							the participant's response (e.g. scancode of response key)
										57 = spacebar
										0 = no response
																				
correct:							the correctness of the response (1 = correct; 0 = incorrect)

values.responsetime:				the script elapsed time when a spacebar response is made (in ms)

values.RT_hit:						the response latency (in ms) for the current Hit; 
										=> calculated as difference between responsetime-targetstarttime
										=> thus measures the time it took to hit spacebar after a target was presented 
										(latency measured from onset of last target) 

latency: 							the trial latency (in ms) (for the current trial)
										Note: measures the response time of hitting the spacebar measured
										from onset of current digit (if no response, this variable stores the trial duration)
										
										
values.Hit:							1 = spacebar press was registered during the current trial while a target was still active
									0 = no spacebar press was registered during the current trial while a target was still active
									"" (empty): no active target during the current trial
									
values.FA:							1 = spacebar press was registered during the current trial while no target was active
									0 = no spacebar press was registered during the current trial while no target was active
									"" (empty): the target was still active during the current trial
										
values.SumTargets:					counts how many targets have been presented
								
values.SumHit:						counts the number of Hits
values.SumFA:						counts the number of False Alarms


(2) Summary data file: 'rvip_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)
									
expressions.propcorrect:			proportion correct target detection (test)
values.SumTargets:					counts how many targets have been presented (test)
values.SumHit:						counts the number of Hits (test)
values.SumFA:						counts the number of False Alarms (test)
expressions.meanRT_hit:				determines the mean hit RT (in ms) - measured from onset of last target digit (test only)
expressions.Std_hit:				determines standard deviation of hit RTs (test only)
expressions.medianRT_hit:			determines the median hit RT (in ms) - measured from onset of last target digit (test only)

__________________________________________________________________________________________________________________	
EXPERIMENTAL SET-UP 
___________________________________________________________________________________________________________________	
This script provides a testing sequence of 1200 digits with 97 target sequences as well as a practice sequence 
of 20 digits with 2 target sequences. The target sequences (testing) are separated by a minimum of 5 and 
a maximum of 33 digits (Mean = 9.3). Feedback is provided at the end of each block - to remove feedback go to 
section BLOCKS and follow further instructions.

The response is scored as a Hit if the participant reacts within 1500ms (target response window described 
in article, can be changed by  experimenter in this script) of  onset of the last digit of a target sequence. 
Any response that occurs later is scored as a False Alarm. 

___________________________________________________________________________________________________________________	
STIMULI
___________________________________________________________________________________________________________________	
see section Editable Lists for the currently available stim sequences

___________________________________________________________________________________________________________________	
INSTRUCTIONS 
___________________________________________________________________________________________________________________	
to edit instructions, go to section Editable Instructions
	
___________________________________________________________________________________________________________________	
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:

getReadyDuration:				the duration (in ms) of the get-ready-trial (default: 2000ms)

target_responsewindow:			the time window (in ms) during which a target is active 
									(here: up until 1500ms after onset of a target, consistent with Wesnes & Wartburton (1984))
								
presentationtime:				how long (in ms) a stimulus is presented before the next one replaces it (= frequency of showing a stimulus) 
									(here: 100 digits/ 1min => 600ms per stimulus, consistent with Wesnes & Wartburton (1984).)
								
digitheight:						controls the size of the digits (percentage of screen height, default: 5%)

sequencelength_practice:		the length of the practice sequence
									Note: if the number is changed here, list.digitsequence_practice might also need to be updated
									
sequencelength_test:			the length of the test sequence
									Note: if the number is changed here, list.digitsequence might also need to be updated
																		
debugmode:						true (1): the script is run in debugmode (target alerts are presented on screen)
								false (0): the script is run in test mode (default)