Group: Awaiting Activation
Posts: 11,
Visits: 52
|
Dear divine beings of the inquisit:
I am adapting the "SINGLE N-BACK TASK NON_ADAPTIVE (2- KEY VERSION)" by Katja Borchert to complete a 1 back task. I have a sequence of 7 stimuli, and would like all adjacent pairs (stimuli 1&2, stimuli 2&3 etc....) to be presented back to back for all pairs for at least two times within a block. How could I accomplish that without making the block unnecessarily long?
Currently I have target appearing 50% of the time, and the rest of the nontargets randomly chosen from the rest of the stimuli. Below is code for selecting the stimuli. Any help/suggestions are very welcomed!
############################## ######STIMULI-SELECTION: face
*list.notargetvalue selects any of the 7 faces (item indices) but the one selected for values.currenttarget <list notargetvalue> /items = (1, 2, 3, 4, 5, 6, 7) / not = (values.currenttarget) / replace = true </list>
***randomly selects one of the faces as start value <picture startshape> / items = shapes /select = replace /size = (40%, 40%) </picture>
***selects any shape but the established target <picture nontargetshape> / items = shapes / select = notargetvalue /size = (40%, 40%) </picture>
***selects the item with the same item number as the established target <picture targetshape> /items = shapes /select = values.currenttarget /size = (40%, 40%) </picture>
############################## ######trila nontarget
<trial nontarget> / stimulustimes = [0 = nontargetshape] / validresponse = (38, 30) / correctresponse = (38) / ontrialbegin = [ {if (values.N == 1) values.currenttarget = values.minus1}; {if (values.N == 2) values.currenttarget = values.minus2}; {if (values.N == 3) values.currenttarget = values.minus3}; {if (values.N == 4) values.currenttarget = values.minus4} ] / ontrialbegin = [values.trial_Hit = 0; values.trial_Miss = 0; values.trial_CR = 0; values.trial_FA = 0] / ontrialend = [ values.minus4 = values.minus3; values.minus3 = values.minus2; values.minus2 = values.minus1; values.minus1 = picture.nontargetshape.currentitemnumber; values.CorrReject = values.CorrReject + trial.nontarget.correct; values.trial_CR = trial.nontarget.correct; {if (trial.nontarget.response == 30) {values.FalseA = values.FalseA + trial.nontarget.error; values.trial_FA = trial.nontarget.error; values.TotalFA = values.TotalFA + trial.nontarget.error}}; values.DV = (values.TotalHits - values.TotalFA)/values.TotalBlocks; ] / responsetime = 0 / posttrialpause = 250 </trial>
|