Return to the Perceptual Vigilance Task - Keyboard Input page
														
___________________________________________________________________________________________________________________	

							*PERCEPTUAL VIGILANCE TEST (simple Visual Reaction Time Task)*
											input device: keyboard
___________________________________________________________________________________________________________________	


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

Script Copyright © 12-17-2019 Millisecond Software

___________________________________________________________________________________________________________________
BACKGROUND INFO 	
___________________________________________________________________________________________________________________	
This script runs a simple visual reaction time task similar to the one described by:

Wilkinson, R. T., & Houghton, D. (1982). Field test of arousal: 
A portable reaction timer with data storage. Human Factors, 24, 487-493.

___________________________________________________________________________________________________________________
TASK DESCRIPTION
___________________________________________________________________________________________________________________	
Participant are asked to press the SPACEBAR as soon as they see a red circle appearing on screen.
Afterwards, their reaction is displayed for 0.5s (editable). The test is timed and stops after 10min (editable).
Mean and Median latency, latency standard deviation as well as minimum latency and maximum latency
are recorded in the summary data file.
___________________________________________________________________________________________________________________	
DURATION 
___________________________________________________________________________________________________________________	
the default set-up of the script takes appr. 10 minutes to complete

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

(1) Raw data file: 'perceptualvigilancetask_keyboard_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. 
									
parameters.testduration:			duration of test: recommended minimum time is 600000ms => 10 min																			
parameters.targetcolor:			the current color of the target circle
parameters.targetsize:				the current color of the target circle
parameters.fixed:					1= fixed position of target; 0 = random position of target
parameters.targetx:				the x-coordinate of the target circle
parameters.targety:				the y-coordinate of the target circle


values.stiminterval:				determines how long the focus stimulus is shown before the target stimulus is presented
values.trialStart:					script.elapsedtime (in ms) at start of trial (script.elapsedtime measured from start of script)
shape.targetcircle.timestamp:		script.elapsedtime (in ms) of last circle appearance

values.lastCircleTimestamp:		stores the script.elapsedtime of the circle appearance in the previous trial
										Note: if response was made BEFORE the appearance of a new circle, 
										lastCircleTimestamp = shape.targetcircle.timestamp; otherwise
										they differ
										
response:						the scancode of the key pressed (here: 57 = spacebar)
values.rt_elapsed:					script.elapsedtime (in ms) at time of response (Note: elapsedtime = time elapsed from start of script)

values.rt:						stores the current response latency (in ms); 
								calculated as the difference of elapsedtime of response and elapsedtime of circle									
								Note: if response was made BEFORE onset of circle Latency = "early response"

values.EarlyResponse:				1 = the response was given before the circle appeared
								0 = the response was given after the circle appeared
								
values.countEarlyResponses:		count of all early responses
									
values.countResponses:			running count of the number of responses made 
								(includes early responses but excludes the first response made)


(2) Summary data file: 'perceptualvigilancetask_keyboard_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.testduration:			duration of test: recommended minimum time is 600000ms => 10 min																			
parameters.targetcolor:			the current color of the target circle
parameters.targetsize:				the current color of the target circle
parameters.fixed:					1= fixed position of target; 0 = random position of target
parameters.targetx:				the x-coordinate of the target circle
parameters.targety:				the y-coordinate of the target circle								
								

values.countEarlyResponses:				count of all early responses
									
values.countResponses:					running count of the number of responses made 
										(includes early responses but excludes the first response made)
										
expressions.proportionEarlyResponses: 				proportion early responses (in relation to total number of responses made)

									
Note: latency data is based on valid responses only (excludes early responding)
									
expressions.meanRT:								mean response latency in ms (for trials that were responded to)
expressions.Std,:									standard deviation of the response latencies (for trials that were responded to)
expressions.medianRT:							median latency in ms (for trials that were responded to)
expressions.minRT:								minimum response latency (in ms)
expressions.maxRT:								maximum response latency (in ms)


___________________________________________________________________________________________________________________	
EXPERIMENTAL SET-UP 
___________________________________________________________________________________________________________________	
(a) By default, the target stimulus appears in the center of the screen. Changes can be made under 
"Editable Parameters", including changing the script so that the target stimuli appear randomly in one of 9 screen positions.

(b) By default, the time intervals are randomly chosen  (with replacement) from 1000ms, 2000ms, 3000ms, 4000ms, 5000ms, 6000ms, 7000ms, 8000ms, 9000ms, 10000ms
Changes can easily be made under "Editable Lists"

(c) By default, the test runs for 10 Minutes. Changes can be made under "Editable Parameters -> parameters.testduration"

(d) By default, the color of the circle is red. Changes can be made under "Editable Parameters"

Procedure:
Task starts with the presentation of a red circle (this response latency not considered for summary statistics).
Immediately after the left or right mouse button response, the next trial starts randomly selecting one of the 
10 possible stimintervals.
If a response is made prior to the appearance of the red circle, the trial terminates and a new trial starts.
The number of early responses are counted.

___________________________________________________________________________________________________________________
INSTRUCTIONS 
___________________________________________________________________________________________________________________
The instructions can be easily changed under "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:

/targetcolor:							sets the color of the circle; the default is red
/targetsize:							sets the size of the circle; the default is 10% of the vertical screen
/targetx:								sets the x-coordinate of  the target circle ; the default is the center (50%)
/targety:								sets the y-coordinate of the target circle , the default is the center (50%)
/feedbackheight:						height of feedback text stimulus (relative to canvas height) (default: 5%)

/fixed:								determines whether to use the fixed coordinates for the target stimulus (= 1)
									or to select randomly from 9 different screen positions (= 0);  
									default is 1 (= fixed position)

/testduration:							duration of test: recommended minimum time is 600000ms => 10 min

/presenttrialfeedback:					true = after each trial the response latency is reported (default)
									false = no trial response latencies are reported
										
/rtfeedback_duration:					duration of feedback (default: 500ms)
										Note: feedback duration is counted towards taskduration