Letter Wheel Task - Session 3

Technical Manual

Script Author: Katja Borchert, Ph.D. (katjab@millisecond.com), Millisecond

Credits:
Millisecond thanks Dr. Eric Altmann and his lab for collaborating on this script!

Created: January 07, 2020

Last Modified: January 08, 2025 by K. Borchert (katjab@millisecond.com), Millisecond

Script Copyright © Millisecond Software, LLC

Background

This script implements the Letter Wheel task (Burgoyne et al, 2019), a test of spacekeeping abilities that taps primarily spatial mechanisms.

References

Burgoyne, A.P., David Z. Hambrick, D.Z. & Erik M. Altmann, E.M. (2019). Placekeeping Ability as a Component of Fluid Intelligence: Not Just Working Memory Capacity. The American Journal of Psychology , Vol. 132, No. 4 (Winter 2019), pp. 439-449

Duration

25 minutes

Description

Participants are presented with a circle of 9 letters randomly placed in 9 possible circle positions ( the actual letters stay the same across all trials, however their circle positions will change). Participants are asked to alphabetize sequences of 3 adjacent letters ('triplets'). Each trial, the starting letter of the next target triplet shifts clockwise one position around the circle. Participants have to keep track -from one trial to the next- of the position of the first letter of the target triplet even if they are interrupted at random points by 'interruption trials'. During those interruption trials (always 5 trials) participant are presented with 7-9 stars and have to enter the number of stars presented. Only correct responses will allow participants to return to the letterwheel.

Procedure

(1) Intro: introduction + 6 demo trials (with circles, only correct solutions accepted)

(2) Practice: 25 practice letterwheel trials
- 3 interruptions (each interruption runs 5 star trials)
participants receive circled triplets after the first interruption only
- only correct responses accepted for the letterwheel and the interruption trials

(3) Test: 2 blocks with appr. 63 trials each
- Each block runs 8 interruptions + 1 ( the nineth interruption is the end of the block)**
- interruption trials require a correct response to move on
- the first letterwheel trial only shows the circled letters
• sequence Error: the script establishes which triplet was worked upon and selects the next triplet in sequence
based on erroneous response (that is sequence errors lead to a sequence adjustment)
• nonsequence Error: next triplet is selected in sequence based on current target triplet
(=> no sequence adjustments)

The Number Of Trials (N) Before An Interruption Occurs Is Calculated By:
N = B + floor(-ln(U(0, 1))/R) (see expressions.generateNextInterruption)

B = 4 (see parameters.MinTestRun)
R = .288 is the rate parameter for the exponential distribution,
U(0, 1) is a random sample from a uniform distribution bounded by 0 and 1.

The average number of uninterrupted trials before an interruption (N) sampled with this equation is
~7.

Stimuli

letterwheel:
- 9 letters arranged in a circle, the size of the circle can be adjusted (presented white on black)

stars:
7-9 stars are presented in randomly selected positions of a 8 columns x 6 rows matrix (presented white on black)
(star size can be adjusted under section Editable Parameters)

Error message:
the error message in this script is a flickering white box presented as an animated gif.
The flickering occurs at 100Hz and the stimulus is presented for 200ms.
Edit the errormessage under section Editable Stimuli.

Instructions

provided by Millisecond - can be edited under section Editable Instructions
The provided instructions are based on the originals provided by Dr. Eric Altmann

Summary Data

File Name: letterwheel_session2_summary*.iqdat

Data Fields

NameDescription
inquisit.version Inquisit version number
computer.platform Device platform: win | mac |ios | android
computer.touch 0 = device has no touchscreen capabilities; 1 = device has touchscreen capabilities
computer.hasKeyboard 0 = no external keyboard detected; 1 = external keyboard detected
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
countAlphabet Number of times the alphabeth was requested across test blocks
list.interruptions.mean Mean number of trials run before an interruption
nTrialsOverall The number of letterwheel test trials run (across all blocks)
nCorrectOverall The number of correct letterwheel test trials (across all blocks)
nSequenceErrorsOverall The number of sequence errors -errortype 1/2- made (across all blocks)
corrRTOverall The mean response time for entering a correct letterwheel solution
nTrialsBlock1 The number of letterwheel test trials run in block1
nCorrectBlock1 The number of correct letterwheel test trials in block1
nSequenceErrorsBlock1 The number of sequence errors -errortype 1/2- made in block1
corrRTBlock1 The mean response time for entering a correct letterwheel solution in block1
nTrialsBlock2 The number of letterwheel test trials run in block2
nCorrectBlock2 The number of correct letterwheel test trials in block2
nSequenceErrorsBlock2 The number of sequence errors -errortype 1/2- made in block2
corrRTBlock2 The mean response time for entering a correct letterwheel solution in block2

Raw Data

File Name: letterwheel_session2_raw*.iqdat

Data Fields

NameDescription
build Inquisit version number
computer.platform Device platform: win | mac |ios | android
computer.touch 0 = device has no touchscreen capabilities; 1 = device has touchscreen capabilities
computer.hasKeyboard 0 = no external keyboard detected; 1 = external keyboard detected
date Date the session was run
time Time the session was run
subject Participant ID
group Group number
session Session number
blockcode The name the current block (built-in Inquisit variable)
blocknum The number of the current block (built-in Inquisit variable)
trialcode The name of the currently recorded trial (built-in Inquisit variable)
trialnum The number of the currently recorded trial (built-in Inquisit variable)
trialnum is a built-in Inquisit variable; it counts all trials run
even those that do not store data to the data file.
testBlockCounter Counts the number of test blocks run
countDemoTrials The number of demo trials run (note: a 'trial' is completed if three letters have been entered)
countPracticeTrials The number of practice trials run
trialCountPerBlock The number of test trials run per block (resets for each block)
interruptionCount The number of interruptions run
interruption Stores the number of trials (+ parameters.MinRunlength) that will be run until the next scheduled interruption
Letterwheel Variables
letter1 - letter9 Stores the letters that appear in the 9 spots in the letter wheel (for reference purposes: '1' sits in the 3 o'clock position)
123 - 912 Store the alphabetized triplets for all 9 possible letter triplets (for reference purposes: '1' sits in the 3 o'clock position)
targetPosition1 Stores position (1-9) of the first letter of the currently targeted triplet
targetPosition2 Stores position (1-9) of the second letter of the currently targeted triplet
targetPosition3 Stores position (1-9) of the third letter of the currently targeted triplet
targetLetter1 Stores the letter presented in targetPosition1 of the currently targeted triplet
targetLetter2 Stores the letter presented in targetPosition2 of the currently targeted triplet
targetLetter3 Stores the letter presented in targetPosition3 of the currently targeted triplet
correctSolution Stores the alphabetized order of the three target letters
countLetters The number of letters entered ( 3 -> last input for a trial)
Letterwheel Custom Dvs (Note: Dvs Stored When Values.Countletters = 3)
responseTriplet The entered response (the three letters as entered)
responseTripletAcc 1 = the response Triplet is the same as the correct Solution; 0 = otherwise
responseTripletRT The response time (in ms); measured from onset of first letter wheel until third letter is entered
errorType 0 = correct response (correct sequence & correctly alphabetized)
1 = sequence error (wrong triplet selected) but chosen triplet correctly alphabetized
2 = sequence error (wrong triplet selected) and chosen triplet was incorrectly alphabetized
3 = non-sequence error (correct triplet selected) but triplet was incorrectly alphabetized
sequenceError 1 = participant worked on the wrong triplet (errorType1/errorType2)
0 = otherwise
nonSequenceError 1 = any error other than a sequence error (errorType3/errorType4)
0 = otherwise
selectedTargetPosition The starting position of the triplet that participant worked upon
Notes
1) the script will use this position to the targetPosition1 clockwiese to the next spot on the letter wheel
2) for errorType4, the script will use the current targetPosition1 as no better triplet could have been established
Interruption Variables
starCount The number of stars presented during one interruption trial
Built-In Inquisit Dvs For All Performance Metrics Recording Trials
response The participant's response (scancode of response button)
Example
spacebar = 57, b = 48, c = 47, d = 32 etc.
scancodes for number buttons look confusing
Example: "1" can be represented by scancode 2 or 79
responseText The translated scancode (example: B for scancode 48)
for spacebar (scancode 57), the column will look empty (as it shows a space)
For number buttons, it will store the actual number pressed
correct Accuracy of response: 1 = correct response; 0 = otherwise
latency The response latency (in ms) of the current trial
Note
trial.letterwheel: response time of making current response; measured from onset of letters
trial.interruption: response time of hitting the number key; measured from onset of stars

Parameters

The procedure can be adjusted by setting the following parameters.

NameDescriptionDefault
Design
numberOfInterruptionTrials The number of star trials to run per interruption5
numberDemoTrials The number of demo trials to run ( demo trials run during instruction block with circles for every trial)6
numberOfTestBlocks The number of letterwheel test blocks to run ( the script only collects summary data for up to 2 blocks)2
minRunLength Minimum number of trials to run before the next interruption (Min: 1)4
testTrialRuns 1 + number of interruptions in the test block9
Sizing Parameters
starSize The proportional sizing of the star (max: 10%)3%
starSurroundArea The proportional sizing of the area surrounding the star (max. 10%)7%
Response Keys
wheelLetter1 "z"
wheelLetter2 "x"
wheelLetter3 "d"
wheelLetter4 "c"
wheelLetter5 "t"
wheelLetter6 "b"
wheelLetter7 "y"
wheelLetter8 "h"
wheelLetter9 "n"