Script Author: Katja Borchert, Ph.D. (katjab@millisecond.com), Millisecond
SCRIPT INFO
Created: January 29, 2014
Last Modified: January 05, 2023 by K. Borchert (katjab@millisecond.com), Millisecond
Script Copyright © Millisecond Software, LLC
This script implements an approximation of the classic Sperling task to investigate iconic memory as described in:
Sperling, G. (1960). The information available in brief visual presentations. Psychological Monographs, 74(11), 1-29.
IMPORTANT NOTE: Sperling (1960) used a tachistoscope for his 7 studies. This script adapts his procedures to the computer screen.
40 minutes
Participants focus on a fixation cross in the middle of the screen. When they feel ready, they can press the Spacebar. One of 4 types of consonant letter matrices (2x3 = 33, 2x4 = 44, 3x3 = 333, 3x4= 444) appears in the center for a short duration. For partial reports, a tone indicates which row of the matrix to concentrate on and participants are asked (in this script) to enter their recalled letter in provided textboxes.
The default set-up of this script only runs: 3x3 matrices. To add different matrices to the default procedure, please go to the end of the script for more information.
By default, participants are asked to work throught the Whole Report (WR) procedure and the Partial Report (PR)
procedure (counterbalanced by groupnumber). Go to section(s) EXPERIMENT/BLOCKS to learn more about how to change
the default settings.
Default procedure for ClassicSperlingTask.iqjs:
1 = generalinstructions (presents general instructions for the task)
2 = instructions_WR (presents instructions for the WP procedure)
3 = demo_WR (runs 1 33-matrix sequence)
4 = start (runs the start instructions)
5 = w333 (runs 30 trials with 3x3 matrices for whole reports)
6 = instructions_PR (presents instructions for the PP procedure)
7 = tonetraining (add a tone training; see more info below)
8 = demo_PR (runs 1 33-matrix sequence)
9 = start (runs the start instructions)
10 = p333 (runs 30 trials with 3x3 matrices for partial reports)
Tone Training for PR procedure:
There are 3 tones used for the PR procedure in this script (-> item.signals).
The highest tone signals row 1 (= top); the intermediate tone signals row 2
(regardless of whether there are 2 or 3 rows);
the deepest tone signals row 3 (only used in matrices with 3 rows).
block.tonetraining introduces these tones to the participants and adds a brief tone training
(a tone is played and participants
have to press 1, 2, 3 to indicate which row was signaled) with 15 trials (5 trials per tone).
The tone training can be repeated as many times as participants want it to.
Demos:
Before the actual test, participants are given one Demo trial for either the WR or the PR procedure.
Only 2x3 matrices are used for the demos. No feedback is given to participants.
Test:
- By default, participants are asked to work throught the WR procedure and the PR procedure (counterbalanced
by groupnumber). Go to section EXPERIMENT to learn more about how to change this default setting.
- The first 10 trials in each test block are considered training trials and responses don't count
towards summary variables.
- The default background of the screen for all trial sequences is black with a gray center field in which the
matrices appear in black on white (size/screen location of matrices as well as color/size of
exposure field can be edited
via EDITABLE CODE -> Editable Parameters)
The matrices are removed by covering them up with the gray center field for 500ms.
- Participants are asked to enter their responses in provided textboxes.
Trial Sequence:
fixation cross (waits for spacebar response)
->delay of 500ms: letter matrix for 500ms (default)
->mask for 500ms (+signal)
-> response screen
The following changes can be implemented:
(1) Type of report (partial vs. whole): tested in blocked design => go to section EXPERIMENT
and change the type of blocks run by the script.
By default: whole and partial procedure are both run (order counterbalanced by groupnumber).
(2) Number of rows and columns (sizes of matrices):
the script provides code to run 2 x 3 ('33'), 2 x 4 ('44'), 3 x 3 ('333'), 3 x 4 ('444') matrices.
Go to section EXPERIMENT/BLOCKS to customize which matrices to run.
By default: only 3x3 matrices are run
(3) Matrix exposure duration: change under EDITABLE CODE -> Editable Lists
default: 500ms only
(4) Response delay duration (relevant for partial reporting): change under EDITABLE CODE -> Editable Lists
default: 0ms only
(5) Number of trials: change under EDITABLE CODE -> Editable Parameters !AND! under section BLOCKS
default: 30 per matrix
(6) Pre and Post-Exposure field size and color -> EDITABLE CODE -> Editable PARAMETERS
The matrices select randomly from 21 consonants (-> list.consonant) with no repeated letters.
The appearance of the matrices (size and location) can be fine-tuned via EDITABLE CODE -> Editable Parameters
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: classicsperlingtask_summary*.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 |
| meanW444 | Mean number of actually recalled letters of the whole matrix by matrix size for Whole Reports meanP33- |
| meanP444 | Mean number of correctly recalled letters in partial (p) reports by matrix size estwP33- |
| estwP444 | Estimated mean number of correctly recalled letters of the entire matrix based on partial reports by matrix size => mean number of correctly recalled letters in partial (p) reports * number of rows of the whole matrix meanP33Row1- |
| meanP444Row3 | Mean number of correctly recalled letters of a specific targetrow in partial (p) reports by matrix size (e.g. Mean Recall p33 Row1 => mean number of correctly recalled letters for targetrow 1 for partial report for matrix 33 (2 rows, 3 columns) |
File Name: classicsperlingtask_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 |
| reportType | 1 = partial report 2 = whole report (tested in blocked design in this script) |
| stimulusItem | Presented stimulusitems |
| exposureDuration | Current exposure duration |
| signalDelay | Current signal delay |
| nrRows | Number of rows of the current matrix |
| nrColumns | Number of columns of the current matrix |
| training | 0 = actual test trials; 1 = training trials row1String- |
| row3String | Stores the presented string of letters by matrix row |
| targetrow | The row that should be recalled in partial reports (1-3) |
| soundFile | Stores the current sound file (relevant only for partial reports) row1string_r - |
| row3StringR | Stores the recall response by row (the string of letters of each matrix row as entered during recall) |
| countCorrectPos | Counts the correctly recalled letters (correct letter in correct position) for the current matrix/row |
| countCorrect | Counts the correctly recalled letters (independent of position) |
| repeat | 0 = no letter is repeated in the recalled matrix 1 = there was at least one repeated letter in the recalled matrix => if repeat = 1 the response is considered invalid (is NOT included into the descriptive summary statistics) |
The procedure can be adjusted by setting the following parameters.
| Name | Description | Default |
|---|---|---|
| nrCriticalTrialsperMatrix | Number of critical (aka count towards descriptive summary statistics) trials per matrix (default: 30) !!!If this number is changed, go to section BLOCK and follow instructions change the number of trials run during test blocks accordingly Number should be divisible by 2 and 3. | |
| fixationCrossPosttrialPause | Pause (in ms) after fixation cross disappears and matrix is presented (default: 500ms) Appearance of Matrices | |
| boxHeight | The height of the individual matrix boxes that contain the letters in percentage of canvas height (default: 15%) | |
| fixationCrossHeight | The height of the fixation cross in percentage of canvas height | 5% |
| xMatrix33:- | ||
| yMatrix444 | The coordinates for the different matrices (33 -> 444) Size/Color of the Pre and Post Exposure Fields | |
| exposurefieldWidth | Width (in percentage of canvas width) of the exposure field | 70% |
| exposurefieldHeight | Height (in percentage of canvas height) of the exposure field | 70% |
| preexposurefieldR | The red component of the preexposure field | 100 |
| preexposurefieldG | The green component of the preexposure field | 100 |
| preexposurefieldB | The blue component of the preexposure field | 100 |
| postexposurefieldR | The red component of the postexposure field | 100 |
| postexposurefieldG | The green component of the postexposure field | 100 |
| postexposurefieldB | The blue component of the postexposure field | 100 |
| fixationColor | The color of the fixation cross | black |