Script Author: Katja Borchert, Ph.D. (katjab@millisecond.com), Millisecond
Created: January 13, 2014
Last Modified: January 30, 2024 by K. Borchert (katjab@millisecond.com), Millisecond
Script Copyright © Millisecond Software, LLC
This script runs a Partial Report Procedure, a test of iconic memory.
The implemented procedures is based on: Lu, Neuse, Madigan, & Dosher (2005). Fast decay of iconic memory in observers with mild cognitive impairments. PNAS; 102; 1797-1802.
NOTE: this script includes a helper script to convert the percentage correct (for four-alternative forced-identification) to d' scores (main Dependent Variable) as was done by Lu et al (2005). This helper script uses the conversion table by Hacker & Ratcliff (1979) and interpolates the final d' scores for the given percentages.
Hacker, M.J & Ratcliff, R. (1979). A revised table of d' for M-alternative forced choice. Perception & Psychophysics, 26, 168- 170.
15 minutes
Participants view a circle made up of 8 letters (randomly sampled from: D, F, J, K) for a very brief duration. Depending on condition, an arrow is presented before (=pre-cue), with (=simultaneous cue), or after (=post-cue) the letter circle that points to one of the 8 letter positions. Participants are asked to enter the letter into the keyboard*. Several Stimulus Onset Asynchronies (SOA) are tested in the post-cue position.
• In contrast to Lu et al (2005) this script requires participants to enter the letter directly into the keyboard. Alternatively, they could say the letter and experimenter types it in for them (as done in Lu et al).
3 conditions: pre-cue, simultan(eous) cue, post-cue
Pre-cue: arrow cue appears shortly before letter circle (only one SOA -> list.soaPreCue)
-> arrow and letter circle overlap
Simultan: arrow cue appears together with letter circle (SOA = 0)
Post-cue: arrow cue appears shortly after letter circle (6 SOA -> list.soaPostCue; randomly selected with replacement)
-> no overlap of arrow and letter circle
8 target positions -> equally sampled across each condition (->list.targetPosition)
By default, the script runs the pre-cue condition, the simultaneous cue condition and the post-cue
condition in this order (see section EXPERIMENT). Each of these conditions can be skipped by changing an
editable value (e.g. /runPreCue = false).
By default, each condition starts out with 20 practice trials that are followed by 96 test trials
(number of trials can be edited under Editable Values).
participants are required to type in the letters directly into the keyboard (no voice recordings)
Letter circles => letters are randomly sampled with replacement from list.consonant (D, F, J, K)
Size of letters, letter circle and arrows can be controlled via editable values: EDITABLE CODE -> Editable Values
Instructions are not original to the task. They are provided by Millisecond
as htm pages and simple page elements and can be edited either by changing
the provided html files or directly under Editable Instructions.
To edit html-files: open the respective documents in simple Text Editors such as TextEdit (Mac)
or Notepad (Windows).
File Name: partialreportprocedureSummary*.iqdat
| Name | Description |
|---|---|
| inquisit.version | Inquisit version number |
| computer.platform | Device platform: win | mac |ios | android |
| startDate | Date the session was run |
| startTime | Time the session was run |
| subjectId | Participant ID |
| groupId | Group number |
| sessionId | Session number |
| elapsedTime | Session duration in ms |
| completed | 0 = Test was not completed 1 = Test was completed |
| parameters- runPreCue | True (1) = script runs preCue condition (default) false (0) = script does NOT run preCue condition |
| parameters- runSimultan | True (1) = script runs simultan condition (default) false (0) = script does NOT run simultan condition |
| parameters- runPostCue | True (1) = script runs postCue condition (default) false (0) = script does NOT run postCue condition propCorrectSoa1- |
| propCorrectSoa6 | Proportion correct items recalled for postCue soa1-soa6 (across all postCue test blocks) |
| propCorrectPostCue | Proportion correct items recalled in postCue condition across all SOAs (across all postCue test blocks) |
| propCorrectPreCue | Proportion correct items recalled in preCue condition (across all preCue test blocks) |
| propCorrectSimultan | Proportion correct items recalled in simultan condition (across all simultan test blocks) d-scores: store all the d' scores (calculated by included script: ProportionCorrectTo_dscoreConversion.iqjs) IF the given p-values are within range (0.01 < p < 0.99) otherwise d-value = "by hand" |
| parameters- runPConversion | True (1) = script automically converts the p-values (proportion corrects) into d'-scores using values (and interpolation) published by Hacker & Ratcliff (1979) (default) border p-values (p-values < 0.01 and p-values > 0.99 have to be calculated manually) false (0) = script does not convert the p-values (proportion corrects) into d'-scores d'-scores: store all the d' scores (calculated by included script: ProportionCorrectTo_dscoreConversion.iqjs) d' (dprime) = main dependent variable, measure of target detection sensitivity given the number of alternative forced choice response options (m) dPrimeSoa1 - dPrimeSoa6 dPrimePreCue- dPrimeSimultan |
| m | Number of forced choices available (here: 4 as there are 4 letters to choose from: D, F, J, K) ! correct latency data is stored in separate lists (see section LISTS) and could easily be used to calculate mean latencies of correct responses in the different conditions. |
File Name: partialreportprocedure_raw*.iqdat
| Name | Description |
|---|---|
| build | Inquisit version number |
| computer.platform | Device platform: win | mac |ios | android |
| date | Date the session was run |
| time | Time the session was run |
| subject | Participant ID |
| group | Group number |
| session | Session number |
| blockCode | Name of the current block |
| blockNum | Number of the current block |
| trialCode | Name of the current trial |
| trialNum | Number of the current trial |
| condition | 1 = preCue condition; 2 = simultan condition; 3 = postCue condition |
| soa | Stores the current soa (stimulus onset asynchrony) preCue: time between onset of cue and onset of letter circle postCue: time between onset of letter circle and onset of cue |
| soaIndex | Stores the index of the currently sampled SOA (the smaller the index the smaller the SOA) |
| targetPosition | Stores the position of the target (position 1-8; position 1 is 12 0'clock position; clockwise) |
| arrowRotation | The rotation degree of the arrow letter1- |
| letter8 | Store the letters that are presented in each letter location ( position 1 is 12 0'clock position; clockwise) 1 = 0degrees 2 = 45degrees 3 = 90degrees 4 = 135degrees 5 = 180degrees 6 = 225degrees 7 = 270degrees 8 = 315degrees |
| targetLetter | Stores the target letter |
| response | The participant's response (scancode of response key) 32 = D 33 = F 36 = J 37 = K |
| correct | The correctness of the response (1 = correct;0 = otherwise) |
| latency | The response latency (ms) calculated at the end of all experimental blocks order reported: postCue (soa1-soa6), preCue, simultan |
| p | P-values (proportions correct) for which a d'-value needs to be found (given m) |
| d | Contains the calculated d'-value for the given p d' (dprime) = main dependent variable, measure of target detection sensitivity given the number of alternative forced choice response options (m) |
| m | Number of forced choices available |
The procedure can be adjusted by setting the following parameters.
| Name | Description | Default |
|---|---|---|
| fontSizeTarget | Fontsize of the targets/letters in canvas height percentages | 10% |
| fontSizeFixation | Fontsize of the fixation mark in canvas height percentages | 3% |
| signalPictureHeight | Size of arrow pictures in canvas heigh percentage | 10% |
| radiusScreenProportion | The proportion of the letter circle radius relative to canvas height ( see Lu et al (2005), p.1798, for size information on their display) | 0.3 |
| stimCircleDuration | Presentation duration of the targets/letters | 105ms |
| fixationDuration | Presentation duration of the fixation stimulus | 400ms |
| iti | Intertrial interval between sequences | 500ms |
| nrPracticeTrials | Number of practice trials in each condition | 20 |
| nrTrialsPostCue | Number of postCue trials during a test block should be a multiple of 8 (targetPositions) and 6 (SOAs) | 96 |
| nrTrialsPreCue | Number of preCue trials during a test block | 96 |
| nrTrialsSimultan | Number of simultan trials during a test block | 96 |
| runPreCue | True = script runs preCue condition (default) false = script does NOT run preCue condition | |
| runSimultan | True = script runs simultan condition (default) false = script does NOT run simultan condition | |
| runPostCue | True = script runs postCue condition (default) false = script does NOT run postCue condition | |
| runPConversion | True = script automically converts the p-values into d'-scores using values (and interpolation) published by Hacker & Ratcliff (1979) (default) border p-values (p-values < 0.01 and p-values > 0.99 have to be calculated manually) false = script does not convert the p-values into d-scores |