___________________________________________________________________________________________________________________ CONTINUOUS PERFORMANCE TEST (CPT) - Hebrew Version *long version* ___________________________________________________________________________________________________________________ last updated: 09-24-2024 by K. Borchert (katjab@millisecond.com) for Millisecond Software, LLC Script Copyright © 09-24-2024 Millisecond Software Millisecond Software thanks Ilana Hairston (hanahai@telhai.ac.il) for sharing the Hebrew translations! Note from Ilana Hairston: This script was adapted to be used in Hebrew. Some of the instructions are hidden due to problems with display of Hebrew fonts. If you want to edit the text, copy and paste the element into any simple text editor, make the changes and then paste back into Inquisit. GOOD LUCK! ___________________________________________________________________________________________________________________ BACKGROUND INFO ___________________________________________________________________________________________________________________ This script implements the Continuous Performance Test, a test of sustained and selective attention. This script implements the long version of the task (adult version). Reference: Rosvold, H.E., Mirsky, A., Sarason, M., Bransome, E.D., Jr., and Beck, L.H. A Continuous Performance Test of brain damage. Journal of Consulting Psychology, 20, 343 (1956). ___________________________________________________________________________________________________________________ TASK DESCRIPTION ___________________________________________________________________________________________________________________ Participants get presented a sequence of letters (one-by-one). Task1: press the Spacebar whenever the letter is an X Task2: press the Spacebar whenever the letter is an X that follows an A. ___________________________________________________________________________________________________________________ DURATION ___________________________________________________________________________________________________________________ long version: the default set up takes appr. 25min to run ___________________________________________________________________________________________________________________ DATA OUTPUT DICTIONARY ___________________________________________________________________________________________________________________ The fields in the data files are: (1) Raw data file: 'cpt_rosvold_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. phase: current phase of the procedure: "x practice" vs. "x test", "ax practice" vs. "ax test" blockCountXPractice: counts the number of practice blocks run for phase X blockCountXTest: counts the number of test blocks run for phase X blockCountAxPractice: counts the number of practice blocks run for phase AX blockCountAxTest: counts the number of test blocks run for phase AX previousLetter: the letter presented in the previous trial currentLetter: the letter presented in the current trial response: the scancode for the key that was pressed (if any) 57 = spacebar press; 0 = noResponse correct: whether the response was correct: 1 = correct; 0 = error latency: the response time in milliseconds; measured from onset of letter (2) Summary data file: 'cpt_rosvold_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) blockCountXPractice: counts the number of practice blocks run for phase X blockCountXTest: counts the number of test blocks run for phase X blockCountAxPractice: counts the number of practice blocks run for phase AX blockCountAxTest: counts the number of test blocks run for phase AX xTestSignalTrialCount: counts all signal (=target) trials during Phase X xTestMissCount : number of errors when X was presented but no response was given during Phase X xTestMissRate : omission rate during Phase X xTestHitRate: hit rate during Phase X xTestNoiseTrialCount: counts all non-signal (= non target) trials during Phase X xTestFalseAlarmCount: number of false alarms during Phase X xTestFalseAlarmRate: commission rate during Phase X xTestCorrRejectRate: correct rejection rate during Phase X /////signal detection measures: zHitRatextest: the calculate z-score of the hitRate during Phase X zFARaTextest: the calculated z-score of the falseAlarm/commission rate during Phase X Note: *Adjustments to z-scores as recommended by: Gregg, A. & Sedikides, C. (2010). Narcissistic Fragility: Rethinking Its Links to Explicit and Implicit Self-esteem, Self and Identity, 9:2, 142-161 (p.148) => Adjustments are made if the FArate (hitRate) = 0 (increased to 0.005) or 1 (decreased to 0.995)* dPrimeXTest: Computes d' (parametric measure of discriminability btw. signals and noise) => Range (in this script): -5.1516586840152740479 <= dprime <= 5.1516586840152740479 (=perfect performance) => The higher the value, the better signals (go stims) were overall distinguished from noise (nogo stims) (d' = 0: chance performance; negative d-primes: participant treated nontargets as targets and targets as nontargets) cXTest: 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 is present (liberal response style); may favor faster responding in speed-accuracy trade-off response paradigms positive: favoring caution (conservative response style) axTestSignalTrialCount: counts all signal (=target) trials during Phase AX axTestMissCount: number of errors when X was presented but no response was given during Phase AX axTestMissRate: omission rate during Phase AX axTestHitRate: hit rate during Phase AX axTestNoiseTrialCount: counts all non-signal (= non target) trials during Phase AX axTestFalseAlarmCount: number of false alarms during Phase AX axTestFalseAlarmRate: commission rate during Phase AX axTestCorrRejectRate: correct rejection rate during Phase AX /////signal detection measures: zHitRateAXTest: the calculate z-score of the hitRate during Phase AX zFARateAXTest: the calculated z-score of the falseAlarm/commission rate during Phase AX dPrimeAXTest: d' for Phase AX cAXTest: calculated c-criterion for Phase AX ___________________________________________________________________________________________________________________ EXPERIMENTAL SET-UP ___________________________________________________________________________________________________________________ (1) phase "X": - 2 blocks practice - 20 (long version) test blocks (duration of test blocks: ~ ~10 min total for long version) - each blocks runs 31 letters with 8 targets (order is randomly determined) - the no-target letters are selected randomly WITH replacement from item.xLetters (2) phase "AX" - 2 blocks practice - 20 (long version) test blocks - each block runs 31 letters with: 6 targets (target = letter X that follows an A) ~10 min total for long version) - the no-target letters are selected randomly WITH replacement from item.axLetters (with the constraint that no A is followed by an X) Note: in this script, any letter can precede an X (including X itself); any letter can follow an A (including A itself); the number of 'no-signal As' as well as 'no target Xs' are randomly determined per block Trial Sequence: letter (690ms)-> ISI: blank screen (230ms)-> letter.... response is accepted until end of letter duration (trial timings can be edited under section Editable Parameters) ___________________________________________________________________________________________________________________ INSTRUCTIONS ___________________________________________________________________________________________________________________ see 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: /restTime: the time of the rest duration in ms (default: 120000ms => 2 min) /letterDuration: duration of the letters in ms (default: 690ms) (time to respond) /isi: interstimulus interval (= blank screen) in ms (default: 230ms) /letterHeight: the size (proportional to canvas height) of the the letters (default: 8%)