Presenting stimuli at random/using pre-set values


Author
Message
Christin41
Christin41
Associate Member (186 reputation)Associate Member (186 reputation)Associate Member (186 reputation)Associate Member (186 reputation)Associate Member (186 reputation)Associate Member (186 reputation)Associate Member (186 reputation)Associate Member (186 reputation)Associate Member (186 reputation)
Group: Forum Members
Posts: 12, Visits: 74
Hello,

We programmed an experiment in which participants get shown facial expressions of two different actors that are morphed to differing degrees ranging from 1 to 99, leading us to have two times 99 different images. Which of the two actors are being shown is being selected randomly within a picture element - with each picture element representing one degree of morphing (e.g. Disgust_Fear_1 representing degree 1). All of these picture elements are then combined in a list and which element is chosen out of the list is controlled by the value for selectedimage. This value is being calculated on trial begin and is the primerPSE, a value differing for each participant that denotes their personal "middle" for the morphing degrees, minus or plus 3, 9, or 15 (i.e. - 15, - 9, - 3, + 3, +9, +15) depending on the trial (e.g. trial minus15 is PSE - 15). What degree of morphing is being shown is thus different for each participant and based on their personal "primerPSE". 

The issue is now, however, that two different primerPSEs need to be entered based on the actor (so each actor having a differing PSE). Also each actor should be shown an equal amount of times will still being shown at random. How can this be realized? (I am sorry about this very vague question, but I am just very unsure how to go about this). Thank you so much in advance!!

Here is in code what I just described above:

<values>
/ primerPSE = 50
/ selectedimage = 0
/ correctmouseevent = 0
</values>

<picture Disgust_Fear_1>
/ items = ("28_Disgust_Fear_1.BMP","33_Disgust_Fear_1.BMP")
/ select = noreplace
</picture>

<picture Disgust_Fear_2>
/ items = ("28_Disgust_Fear_2.BMP","33_Disgust_Fear_2.BMP")
/ select = noreplace
</picture>

...

<picture Disgust_Fear_99>
/ items = ("28_Disgust_Fear_99.BMP","33_Disgust_Fear_99.BMP")
/ select = noreplace
</picture>

<list Fear_Pictures>
/ items = (picture.Disgust_Fear_1, picture.Disgust_Fear_2, picture.Disgust_Fear_3, picture.Disgust_Fear_4, picture.Disgust_Fear_5, picture.Disgust_Fear_6,
picture.Disgust_Fear_7, picture.Disgust_Fear_8, picture.Disgust_Fear_9, picture.Disgust_Fear_10, picture.Disgust_Fear_11, picture.Disgust_Fear_12,
picture.Disgust_Fear_13, picture.Disgust_Fear_14, picture.Disgust_Fear_15, picture.Disgust_Fear_16, picture.Disgust_Fear_17, picture.Disgust_Fear_18,
picture.Disgust_Fear_19, picture.Disgust_Fear_20, picture.Disgust_Fear_21, picture.Disgust_Fear_22, picture.Disgust_Fear_23, picture.Disgust_Fear_24,
picture.Disgust_Fear_25, picture.Disgust_Fear_26, picture.Disgust_Fear_27, picture.Disgust_Fear_28, picture.Disgust_Fear_29, picture.Disgust_Fear_30,
picture.Disgust_Fear_31, picture.Disgust_Fear_32, picture.Disgust_Fear_33, picture.Disgust_Fear_34, picture.Disgust_Fear_35, picture.Disgust_Fear_36,
picture.Disgust_Fear_37, picture.Disgust_Fear_38, picture.Disgust_Fear_39, picture.Disgust_Fear_40, picture.Disgust_Fear_41, picture.Disgust_Fear_42,
picture.Disgust_Fear_43, picture.Disgust_Fear_44, picture.Disgust_Fear_45, picture.Disgust_Fear_46, picture.Disgust_Fear_47, picture.Disgust_Fear_48,
picture.Disgust_Fear_49, picture.Disgust_Fear_50, picture.Disgust_Fear_51, picture.Disgust_Fear_52, picture.Disgust_Fear_53, picture.Disgust_Fear_54,
picture.Disgust_Fear_55, picture.Disgust_Fear_56, picture.Disgust_Fear_57, picture.Disgust_Fear_58, picture.Disgust_Fear_59, picture.Disgust_Fear_60,
picture.Disgust_Fear_61, picture.Disgust_Fear_62, picture.Disgust_Fear_63, picture.Disgust_Fear_64, picture.Disgust_Fear_65, picture.Disgust_Fear_66,
picture.Disgust_Fear_67, picture.Disgust_Fear_68, picture.Disgust_Fear_69, picture.Disgust_Fear_70, picture.Disgust_Fear_71, picture.Disgust_Fear_72,
picture.Disgust_Fear_73, picture.Disgust_Fear_74, picture.Disgust_Fear_75, picture.Disgust_Fear_76, picture.Disgust_Fear_77, picture.Disgust_Fear_78,
picture.Disgust_Fear_79, picture.Disgust_Fear_80, picture.Disgust_Fear_81, picture.Disgust_Fear_82, picture.Disgust_Fear_83, picture.Disgust_Fear_84,
picture.Disgust_Fear_85, picture.Disgust_Fear_86, picture.Disgust_Fear_87, picture.Disgust_Fear_88, picture.Disgust_Fear_89, picture.Disgust_Fear_90,
picture.Disgust_Fear_91, picture.Disgust_Fear_92, picture.Disgust_Fear_93, picture.Disgust_Fear_94, picture.Disgust_Fear_95, picture.Disgust_Fear_96,
picture.Disgust_Fear_97, picture.Disgust_Fear_98, picture.Disgust_Fear_99)
/ selectionmode = values.selectedimage
</list>

<trial minus15>
/ ontrialbegin = [trial.minus15.resetstimulusframes();
      values.selectedimage = values.primerPSE - 15;
   ]
/ stimulustimes = [0 = 3; 1000 = 2; 2000 = 1; 3000 = list.Fear_Pictures; 7200 = Answer;]
/ pretrialpause = noreplace(1050,1550,2050,2550)
/ beginresponsetime = 7200
/ response = timeout(2500)
/ validresponse = (lbuttondown, rbuttondown)
/ inputdevice = mousekey
/ responseinterrupt = immediate
/ iscorrectresponse = [trial.minus15.response == values.correctmouseevent]
</trial>

...

<trial plus15>
/ ontrialbegin = [trial.plus15.resetstimulusframes();
  values.selectedimage = values.primerPSE + 15;
 ]
/ stimulustimes = [0 = 3; 1000 = 2; 2000 = 1; 3000 = list.Fear_Pictures; 7200 = Answer;]
/ pretrialpause = noreplace(1050,1550,2050,2550)
/ beginresponsetime = 7200
/ response = timeout(2500)
/ validresponse = (lbuttondown, rbuttondown)
/ inputdevice = mousekey
/ responseinterrupt = immediate
/ iscorrectresponse = [trial.plus15.response == values.correctmouseevent]
</trial>

<block Disgust_L_Fear_R>
/ onblockbegin = [values.correctmouseevent = "rbuttondown"]
/ trials = [1-24 = noreplace(minus15,minus9,minus3,plus3,plus9,plus15)]
/ bgstim = (disgust_left, fear_right)
</block>

<block Disgust_R_Fear_L>
/ onblockbegin = [values.correctmouseevent = "lbuttondown"]
/ trials = [1-24 = noreplace(minus15,minus9,minus3,plus3,plus9,plus15)]
/ bgstim = (disgust_right, fear_left)
</block>

<expt>
/blocks = [1-6=noreplace(Disgust_L_Fear_R, Disgust_R_Fear_L)]
</expt>

Dave
Dave
Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)
Group: Administrators
Posts: 12K, Visits: 98K
Christin41 - 12/18/2020
Hello,

We programmed an experiment in which participants get shown facial expressions of two different actors that are morphed to differing degrees ranging from 1 to 99, leading us to have two times 99 different images. Which of the two actors are being shown is being selected randomly within a picture element - with each picture element representing one degree of morphing (e.g. Disgust_Fear_1 representing degree 1). All of these picture elements are then combined in a list and which element is chosen out of the list is controlled by the value for selectedimage. This value is being calculated on trial begin and is the primerPSE, a value differing for each participant that denotes their personal "middle" for the morphing degrees, minus or plus 3, 9, or 15 (i.e. - 15, - 9, - 3, + 3, +9, +15) depending on the trial (e.g. trial minus15 is PSE - 15). What degree of morphing is being shown is thus different for each participant and based on their personal "primerPSE". 

The issue is now, however, that two different primerPSEs need to be entered based on the actor (so each actor having a differing PSE). Also each actor should be shown an equal amount of times will still being shown at random. How can this be realized? (I am sorry about this very vague question, but I am just very unsure how to go about this). Thank you so much in advance!!

Here is in code what I just described above:

<values>
/ primerPSE = 50
/ selectedimage = 0
/ correctmouseevent = 0
</values>

<picture Disgust_Fear_1>
/ items = ("28_Disgust_Fear_1.BMP","33_Disgust_Fear_1.BMP")
/ select = noreplace
</picture>

<picture Disgust_Fear_2>
/ items = ("28_Disgust_Fear_2.BMP","33_Disgust_Fear_2.BMP")
/ select = noreplace
</picture>

...

<picture Disgust_Fear_99>
/ items = ("28_Disgust_Fear_99.BMP","33_Disgust_Fear_99.BMP")
/ select = noreplace
</picture>

<list Fear_Pictures>
/ items = (picture.Disgust_Fear_1, picture.Disgust_Fear_2, picture.Disgust_Fear_3, picture.Disgust_Fear_4, picture.Disgust_Fear_5, picture.Disgust_Fear_6,
picture.Disgust_Fear_7, picture.Disgust_Fear_8, picture.Disgust_Fear_9, picture.Disgust_Fear_10, picture.Disgust_Fear_11, picture.Disgust_Fear_12,
picture.Disgust_Fear_13, picture.Disgust_Fear_14, picture.Disgust_Fear_15, picture.Disgust_Fear_16, picture.Disgust_Fear_17, picture.Disgust_Fear_18,
picture.Disgust_Fear_19, picture.Disgust_Fear_20, picture.Disgust_Fear_21, picture.Disgust_Fear_22, picture.Disgust_Fear_23, picture.Disgust_Fear_24,
picture.Disgust_Fear_25, picture.Disgust_Fear_26, picture.Disgust_Fear_27, picture.Disgust_Fear_28, picture.Disgust_Fear_29, picture.Disgust_Fear_30,
picture.Disgust_Fear_31, picture.Disgust_Fear_32, picture.Disgust_Fear_33, picture.Disgust_Fear_34, picture.Disgust_Fear_35, picture.Disgust_Fear_36,
picture.Disgust_Fear_37, picture.Disgust_Fear_38, picture.Disgust_Fear_39, picture.Disgust_Fear_40, picture.Disgust_Fear_41, picture.Disgust_Fear_42,
picture.Disgust_Fear_43, picture.Disgust_Fear_44, picture.Disgust_Fear_45, picture.Disgust_Fear_46, picture.Disgust_Fear_47, picture.Disgust_Fear_48,
picture.Disgust_Fear_49, picture.Disgust_Fear_50, picture.Disgust_Fear_51, picture.Disgust_Fear_52, picture.Disgust_Fear_53, picture.Disgust_Fear_54,
picture.Disgust_Fear_55, picture.Disgust_Fear_56, picture.Disgust_Fear_57, picture.Disgust_Fear_58, picture.Disgust_Fear_59, picture.Disgust_Fear_60,
picture.Disgust_Fear_61, picture.Disgust_Fear_62, picture.Disgust_Fear_63, picture.Disgust_Fear_64, picture.Disgust_Fear_65, picture.Disgust_Fear_66,
picture.Disgust_Fear_67, picture.Disgust_Fear_68, picture.Disgust_Fear_69, picture.Disgust_Fear_70, picture.Disgust_Fear_71, picture.Disgust_Fear_72,
picture.Disgust_Fear_73, picture.Disgust_Fear_74, picture.Disgust_Fear_75, picture.Disgust_Fear_76, picture.Disgust_Fear_77, picture.Disgust_Fear_78,
picture.Disgust_Fear_79, picture.Disgust_Fear_80, picture.Disgust_Fear_81, picture.Disgust_Fear_82, picture.Disgust_Fear_83, picture.Disgust_Fear_84,
picture.Disgust_Fear_85, picture.Disgust_Fear_86, picture.Disgust_Fear_87, picture.Disgust_Fear_88, picture.Disgust_Fear_89, picture.Disgust_Fear_90,
picture.Disgust_Fear_91, picture.Disgust_Fear_92, picture.Disgust_Fear_93, picture.Disgust_Fear_94, picture.Disgust_Fear_95, picture.Disgust_Fear_96,
picture.Disgust_Fear_97, picture.Disgust_Fear_98, picture.Disgust_Fear_99)
/ selectionmode = values.selectedimage
</list>

<trial minus15>
/ ontrialbegin = [trial.minus15.resetstimulusframes();
      values.selectedimage = values.primerPSE - 15;
   ]
/ stimulustimes = [0 = 3; 1000 = 2; 2000 = 1; 3000 = list.Fear_Pictures; 7200 = Answer;]
/ pretrialpause = noreplace(1050,1550,2050,2550)
/ beginresponsetime = 7200
/ response = timeout(2500)
/ validresponse = (lbuttondown, rbuttondown)
/ inputdevice = mousekey
/ responseinterrupt = immediate
/ iscorrectresponse = [trial.minus15.response == values.correctmouseevent]
</trial>

...

<trial plus15>
/ ontrialbegin = [trial.plus15.resetstimulusframes();
  values.selectedimage = values.primerPSE + 15;
 ]
/ stimulustimes = [0 = 3; 1000 = 2; 2000 = 1; 3000 = list.Fear_Pictures; 7200 = Answer;]
/ pretrialpause = noreplace(1050,1550,2050,2550)
/ beginresponsetime = 7200
/ response = timeout(2500)
/ validresponse = (lbuttondown, rbuttondown)
/ inputdevice = mousekey
/ responseinterrupt = immediate
/ iscorrectresponse = [trial.plus15.response == values.correctmouseevent]
</trial>

<block Disgust_L_Fear_R>
/ onblockbegin = [values.correctmouseevent = "rbuttondown"]
/ trials = [1-24 = noreplace(minus15,minus9,minus3,plus3,plus9,plus15)]
/ bgstim = (disgust_left, fear_right)
</block>

<block Disgust_R_Fear_L>
/ onblockbegin = [values.correctmouseevent = "lbuttondown"]
/ trials = [1-24 = noreplace(minus15,minus9,minus3,plus3,plus9,plus15)]
/ bgstim = (disgust_right, fear_left)
</block>

<expt>
/blocks = [1-6=noreplace(Disgust_L_Fear_R, Disgust_R_Fear_L)]
</expt>

I don't understand the question. Specifically, it's not clear to me at all what / where in the code the "two different actors" come into play.
Dave
Dave
Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)
Group: Administrators
Posts: 12K, Visits: 98K
Dave - 12/18/2020
Christin41 - 12/18/2020
Hello,

We programmed an experiment in which participants get shown facial expressions of two different actors that are morphed to differing degrees ranging from 1 to 99, leading us to have two times 99 different images. Which of the two actors are being shown is being selected randomly within a picture element - with each picture element representing one degree of morphing (e.g. Disgust_Fear_1 representing degree 1). All of these picture elements are then combined in a list and which element is chosen out of the list is controlled by the value for selectedimage. This value is being calculated on trial begin and is the primerPSE, a value differing for each participant that denotes their personal "middle" for the morphing degrees, minus or plus 3, 9, or 15 (i.e. - 15, - 9, - 3, + 3, +9, +15) depending on the trial (e.g. trial minus15 is PSE - 15). What degree of morphing is being shown is thus different for each participant and based on their personal "primerPSE". 

The issue is now, however, that two different primerPSEs need to be entered based on the actor (so each actor having a differing PSE). Also each actor should be shown an equal amount of times will still being shown at random. How can this be realized? (I am sorry about this very vague question, but I am just very unsure how to go about this). Thank you so much in advance!!

Here is in code what I just described above:

<values>
/ primerPSE = 50
/ selectedimage = 0
/ correctmouseevent = 0
</values>

<picture Disgust_Fear_1>
/ items = ("28_Disgust_Fear_1.BMP","33_Disgust_Fear_1.BMP")
/ select = noreplace
</picture>

<picture Disgust_Fear_2>
/ items = ("28_Disgust_Fear_2.BMP","33_Disgust_Fear_2.BMP")
/ select = noreplace
</picture>

...

<picture Disgust_Fear_99>
/ items = ("28_Disgust_Fear_99.BMP","33_Disgust_Fear_99.BMP")
/ select = noreplace
</picture>

<list Fear_Pictures>
/ items = (picture.Disgust_Fear_1, picture.Disgust_Fear_2, picture.Disgust_Fear_3, picture.Disgust_Fear_4, picture.Disgust_Fear_5, picture.Disgust_Fear_6,
picture.Disgust_Fear_7, picture.Disgust_Fear_8, picture.Disgust_Fear_9, picture.Disgust_Fear_10, picture.Disgust_Fear_11, picture.Disgust_Fear_12,
picture.Disgust_Fear_13, picture.Disgust_Fear_14, picture.Disgust_Fear_15, picture.Disgust_Fear_16, picture.Disgust_Fear_17, picture.Disgust_Fear_18,
picture.Disgust_Fear_19, picture.Disgust_Fear_20, picture.Disgust_Fear_21, picture.Disgust_Fear_22, picture.Disgust_Fear_23, picture.Disgust_Fear_24,
picture.Disgust_Fear_25, picture.Disgust_Fear_26, picture.Disgust_Fear_27, picture.Disgust_Fear_28, picture.Disgust_Fear_29, picture.Disgust_Fear_30,
picture.Disgust_Fear_31, picture.Disgust_Fear_32, picture.Disgust_Fear_33, picture.Disgust_Fear_34, picture.Disgust_Fear_35, picture.Disgust_Fear_36,
picture.Disgust_Fear_37, picture.Disgust_Fear_38, picture.Disgust_Fear_39, picture.Disgust_Fear_40, picture.Disgust_Fear_41, picture.Disgust_Fear_42,
picture.Disgust_Fear_43, picture.Disgust_Fear_44, picture.Disgust_Fear_45, picture.Disgust_Fear_46, picture.Disgust_Fear_47, picture.Disgust_Fear_48,
picture.Disgust_Fear_49, picture.Disgust_Fear_50, picture.Disgust_Fear_51, picture.Disgust_Fear_52, picture.Disgust_Fear_53, picture.Disgust_Fear_54,
picture.Disgust_Fear_55, picture.Disgust_Fear_56, picture.Disgust_Fear_57, picture.Disgust_Fear_58, picture.Disgust_Fear_59, picture.Disgust_Fear_60,
picture.Disgust_Fear_61, picture.Disgust_Fear_62, picture.Disgust_Fear_63, picture.Disgust_Fear_64, picture.Disgust_Fear_65, picture.Disgust_Fear_66,
picture.Disgust_Fear_67, picture.Disgust_Fear_68, picture.Disgust_Fear_69, picture.Disgust_Fear_70, picture.Disgust_Fear_71, picture.Disgust_Fear_72,
picture.Disgust_Fear_73, picture.Disgust_Fear_74, picture.Disgust_Fear_75, picture.Disgust_Fear_76, picture.Disgust_Fear_77, picture.Disgust_Fear_78,
picture.Disgust_Fear_79, picture.Disgust_Fear_80, picture.Disgust_Fear_81, picture.Disgust_Fear_82, picture.Disgust_Fear_83, picture.Disgust_Fear_84,
picture.Disgust_Fear_85, picture.Disgust_Fear_86, picture.Disgust_Fear_87, picture.Disgust_Fear_88, picture.Disgust_Fear_89, picture.Disgust_Fear_90,
picture.Disgust_Fear_91, picture.Disgust_Fear_92, picture.Disgust_Fear_93, picture.Disgust_Fear_94, picture.Disgust_Fear_95, picture.Disgust_Fear_96,
picture.Disgust_Fear_97, picture.Disgust_Fear_98, picture.Disgust_Fear_99)
/ selectionmode = values.selectedimage
</list>

<trial minus15>
/ ontrialbegin = [trial.minus15.resetstimulusframes();
      values.selectedimage = values.primerPSE - 15;
   ]
/ stimulustimes = [0 = 3; 1000 = 2; 2000 = 1; 3000 = list.Fear_Pictures; 7200 = Answer;]
/ pretrialpause = noreplace(1050,1550,2050,2550)
/ beginresponsetime = 7200
/ response = timeout(2500)
/ validresponse = (lbuttondown, rbuttondown)
/ inputdevice = mousekey
/ responseinterrupt = immediate
/ iscorrectresponse = [trial.minus15.response == values.correctmouseevent]
</trial>

...

<trial plus15>
/ ontrialbegin = [trial.plus15.resetstimulusframes();
  values.selectedimage = values.primerPSE + 15;
 ]
/ stimulustimes = [0 = 3; 1000 = 2; 2000 = 1; 3000 = list.Fear_Pictures; 7200 = Answer;]
/ pretrialpause = noreplace(1050,1550,2050,2550)
/ beginresponsetime = 7200
/ response = timeout(2500)
/ validresponse = (lbuttondown, rbuttondown)
/ inputdevice = mousekey
/ responseinterrupt = immediate
/ iscorrectresponse = [trial.plus15.response == values.correctmouseevent]
</trial>

<block Disgust_L_Fear_R>
/ onblockbegin = [values.correctmouseevent = "rbuttondown"]
/ trials = [1-24 = noreplace(minus15,minus9,minus3,plus3,plus9,plus15)]
/ bgstim = (disgust_left, fear_right)
</block>

<block Disgust_R_Fear_L>
/ onblockbegin = [values.correctmouseevent = "lbuttondown"]
/ trials = [1-24 = noreplace(minus15,minus9,minus3,plus3,plus9,plus15)]
/ bgstim = (disgust_right, fear_left)
</block>

<expt>
/blocks = [1-6=noreplace(Disgust_L_Fear_R, Disgust_R_Fear_L)]
</expt>

I don't understand the question. Specifically, it's not clear to me at all what / where in the code the "two different actors" come into play.

Guessing here, but something like this:

<values>
/ actornumber = 1
/ actor1_PSE = 50
/ actor2_PSE = 20


/ primerPSE = 0
/ selectedimage = 0
/ correctmouseevent = 0
</values>

<picture Disgust_Fear_1>
/ items = ("28_Disgust_Fear_1.BMP","33_Disgust_Fear_1.BMP")
/ select = values.actornumber
</picture>

<picture Disgust_Fear_2>
/ items = ("28_Disgust_Fear_2.BMP","33_Disgust_Fear_2.BMP")
/ select = values.actornumber
</picture>

...

<picture Disgust_Fear_99>
/ items = ("28_Disgust_Fear_99.BMP","33_Disgust_Fear_99.BMP")
/ select = values.actornumber
</picture>

<list Fear_Pictures>
/ items = (picture.Disgust_Fear_1, picture.Disgust_Fear_2, picture.Disgust_Fear_3, picture.Disgust_Fear_4, picture.Disgust_Fear_5, picture.Disgust_Fear_6,
picture.Disgust_Fear_7, picture.Disgust_Fear_8, picture.Disgust_Fear_9, picture.Disgust_Fear_10, picture.Disgust_Fear_11, picture.Disgust_Fear_12,
picture.Disgust_Fear_13, picture.Disgust_Fear_14, picture.Disgust_Fear_15, picture.Disgust_Fear_16, picture.Disgust_Fear_17, picture.Disgust_Fear_18,
picture.Disgust_Fear_19, picture.Disgust_Fear_20, picture.Disgust_Fear_21, picture.Disgust_Fear_22, picture.Disgust_Fear_23, picture.Disgust_Fear_24,
picture.Disgust_Fear_25, picture.Disgust_Fear_26, picture.Disgust_Fear_27, picture.Disgust_Fear_28, picture.Disgust_Fear_29, picture.Disgust_Fear_30,
picture.Disgust_Fear_31, picture.Disgust_Fear_32, picture.Disgust_Fear_33, picture.Disgust_Fear_34, picture.Disgust_Fear_35, picture.Disgust_Fear_36,
picture.Disgust_Fear_37, picture.Disgust_Fear_38, picture.Disgust_Fear_39, picture.Disgust_Fear_40, picture.Disgust_Fear_41, picture.Disgust_Fear_42,
picture.Disgust_Fear_43, picture.Disgust_Fear_44, picture.Disgust_Fear_45, picture.Disgust_Fear_46, picture.Disgust_Fear_47, picture.Disgust_Fear_48,
picture.Disgust_Fear_49, picture.Disgust_Fear_50, picture.Disgust_Fear_51, picture.Disgust_Fear_52, picture.Disgust_Fear_53, picture.Disgust_Fear_54,
picture.Disgust_Fear_55, picture.Disgust_Fear_56, picture.Disgust_Fear_57, picture.Disgust_Fear_58, picture.Disgust_Fear_59, picture.Disgust_Fear_60,
picture.Disgust_Fear_61, picture.Disgust_Fear_62, picture.Disgust_Fear_63, picture.Disgust_Fear_64, picture.Disgust_Fear_65, picture.Disgust_Fear_66,
picture.Disgust_Fear_67, picture.Disgust_Fear_68, picture.Disgust_Fear_69, picture.Disgust_Fear_70, picture.Disgust_Fear_71, picture.Disgust_Fear_72,
picture.Disgust_Fear_73, picture.Disgust_Fear_74, picture.Disgust_Fear_75, picture.Disgust_Fear_76, picture.Disgust_Fear_77, picture.Disgust_Fear_78,
picture.Disgust_Fear_79, picture.Disgust_Fear_80, picture.Disgust_Fear_81, picture.Disgust_Fear_82, picture.Disgust_Fear_83, picture.Disgust_Fear_84,
picture.Disgust_Fear_85, picture.Disgust_Fear_86, picture.Disgust_Fear_87, picture.Disgust_Fear_88, picture.Disgust_Fear_89, picture.Disgust_Fear_90,
picture.Disgust_Fear_91, picture.Disgust_Fear_92, picture.Disgust_Fear_93, picture.Disgust_Fear_94, picture.Disgust_Fear_95, picture.Disgust_Fear_96,
picture.Disgust_Fear_97, picture.Disgust_Fear_98, picture.Disgust_Fear_99)
/ selectionmode = values.selectedimage
</list>

// 4 minus15 trials in each block; we want 2 x actor 1 and 2 x actor 2
<list minus15_actornumbers>
/ items = (1,1,2,2)
</list>
...
// 4 plus15 trials in each block; we want 2 x actor 1 and 2 x actor 2
<list plus15_actornumbers>
/ items = (1,1,2,2)
</list>



<trial minus15>
/ ontrialbegin = [
    values.actornumber = list.minus15_actornumbers.nextvalue;
    if (values.actornumber == 1) {
        values.primerPSE = values.actor1_PSE;
    } else if (values.actornumber == 2) {
        values.primerPSE = values.actor2_PSE;
    };
]

/ ontrialbegin = [trial.minus15.resetstimulusframes();
  values.selectedimage = values.primerPSE - 15;
 ]
/ stimulustimes = [0 = 3; 1000 = 2; 2000 = 1; 3000 = list.Fear_Pictures; 7200 = Answer;]
/ pretrialpause = noreplace(1050,1550,2050,2550)
/ beginresponsetime = 7200
/ response = timeout(2500)
/ validresponse = (lbuttondown, rbuttondown)
/ inputdevice = mousekey
/ responseinterrupt = immediate
/ iscorrectresponse = [trial.minus15.response == values.correctmouseevent]
</trial>

...

<trial plus15>
/ ontrialbegin = [
    values.actornumber = list.plus15_actornumbers.nextvalue;
    if (values.actornumber == 1) {
        values.primerPSE = values.actor1_PSE;
    } else if (values.actornumber == 2) {
        values.primerPSE = values.actor2_PSE;
    };
]

/ ontrialbegin = [trial.plus15.resetstimulusframes();
values.selectedimage = values.primerPSE + 15;
]
/ stimulustimes = [0 = 3; 1000 = 2; 2000 = 1; 3000 = list.Fear_Pictures; 7200 = Answer;]
/ pretrialpause = noreplace(1050,1550,2050,2550)
/ beginresponsetime = 7200
/ response = timeout(2500)
/ validresponse = (lbuttondown, rbuttondown)
/ inputdevice = mousekey
/ responseinterrupt = immediate
/ iscorrectresponse = [trial.plus15.response == values.correctmouseevent]
</trial>

<block Disgust_L_Fear_R>
/ onblockbegin = [values.correctmouseevent = "rbuttondown"]
/ trials = [1-24 = noreplace(minus15,minus9,minus3,plus3,plus9,plus15)]
/ bgstim = (disgust_left, fear_right)
</block>

<block Disgust_R_Fear_L>
/ onblockbegin = [values.correctmouseevent = "lbuttondown"]
/ trials = [1-24 = noreplace(minus15,minus9,minus3,plus3,plus9,plus15)]
/ bgstim = (disgust_right, fear_left)
</block>

<expt>
/blocks = [1-6=noreplace(Disgust_L_Fear_R, Disgust_R_Fear_L)]
</expt>
Christin41
Christin41
Associate Member (186 reputation)Associate Member (186 reputation)Associate Member (186 reputation)Associate Member (186 reputation)Associate Member (186 reputation)Associate Member (186 reputation)Associate Member (186 reputation)Associate Member (186 reputation)Associate Member (186 reputation)
Group: Forum Members
Posts: 12, Visits: 74
Dave - 12/18/2020
Christin41 - 12/18/2020
Hello,

We programmed an experiment in which participants get shown facial expressions of two different actors that are morphed to differing degrees ranging from 1 to 99, leading us to have two times 99 different images. Which of the two actors are being shown is being selected randomly within a picture element - with each picture element representing one degree of morphing (e.g. Disgust_Fear_1 representing degree 1). All of these picture elements are then combined in a list and which element is chosen out of the list is controlled by the value for selectedimage. This value is being calculated on trial begin and is the primerPSE, a value differing for each participant that denotes their personal "middle" for the morphing degrees, minus or plus 3, 9, or 15 (i.e. - 15, - 9, - 3, + 3, +9, +15) depending on the trial (e.g. trial minus15 is PSE - 15). What degree of morphing is being shown is thus different for each participant and based on their personal "primerPSE". 

The issue is now, however, that two different primerPSEs need to be entered based on the actor (so each actor having a differing PSE). Also each actor should be shown an equal amount of times will still being shown at random. How can this be realized? (I am sorry about this very vague question, but I am just very unsure how to go about this). Thank you so much in advance!!

Here is in code what I just described above:

<values>
/ primerPSE = 50
/ selectedimage = 0
/ correctmouseevent = 0
</values>

<picture Disgust_Fear_1>
/ items = ("28_Disgust_Fear_1.BMP","33_Disgust_Fear_1.BMP")
/ select = noreplace
</picture>

<picture Disgust_Fear_2>
/ items = ("28_Disgust_Fear_2.BMP","33_Disgust_Fear_2.BMP")
/ select = noreplace
</picture>

...

<picture Disgust_Fear_99>
/ items = ("28_Disgust_Fear_99.BMP","33_Disgust_Fear_99.BMP")
/ select = noreplace
</picture>

<list Fear_Pictures>
/ items = (picture.Disgust_Fear_1, picture.Disgust_Fear_2, picture.Disgust_Fear_3, picture.Disgust_Fear_4, picture.Disgust_Fear_5, picture.Disgust_Fear_6,
picture.Disgust_Fear_7, picture.Disgust_Fear_8, picture.Disgust_Fear_9, picture.Disgust_Fear_10, picture.Disgust_Fear_11, picture.Disgust_Fear_12,
picture.Disgust_Fear_13, picture.Disgust_Fear_14, picture.Disgust_Fear_15, picture.Disgust_Fear_16, picture.Disgust_Fear_17, picture.Disgust_Fear_18,
picture.Disgust_Fear_19, picture.Disgust_Fear_20, picture.Disgust_Fear_21, picture.Disgust_Fear_22, picture.Disgust_Fear_23, picture.Disgust_Fear_24,
picture.Disgust_Fear_25, picture.Disgust_Fear_26, picture.Disgust_Fear_27, picture.Disgust_Fear_28, picture.Disgust_Fear_29, picture.Disgust_Fear_30,
picture.Disgust_Fear_31, picture.Disgust_Fear_32, picture.Disgust_Fear_33, picture.Disgust_Fear_34, picture.Disgust_Fear_35, picture.Disgust_Fear_36,
picture.Disgust_Fear_37, picture.Disgust_Fear_38, picture.Disgust_Fear_39, picture.Disgust_Fear_40, picture.Disgust_Fear_41, picture.Disgust_Fear_42,
picture.Disgust_Fear_43, picture.Disgust_Fear_44, picture.Disgust_Fear_45, picture.Disgust_Fear_46, picture.Disgust_Fear_47, picture.Disgust_Fear_48,
picture.Disgust_Fear_49, picture.Disgust_Fear_50, picture.Disgust_Fear_51, picture.Disgust_Fear_52, picture.Disgust_Fear_53, picture.Disgust_Fear_54,
picture.Disgust_Fear_55, picture.Disgust_Fear_56, picture.Disgust_Fear_57, picture.Disgust_Fear_58, picture.Disgust_Fear_59, picture.Disgust_Fear_60,
picture.Disgust_Fear_61, picture.Disgust_Fear_62, picture.Disgust_Fear_63, picture.Disgust_Fear_64, picture.Disgust_Fear_65, picture.Disgust_Fear_66,
picture.Disgust_Fear_67, picture.Disgust_Fear_68, picture.Disgust_Fear_69, picture.Disgust_Fear_70, picture.Disgust_Fear_71, picture.Disgust_Fear_72,
picture.Disgust_Fear_73, picture.Disgust_Fear_74, picture.Disgust_Fear_75, picture.Disgust_Fear_76, picture.Disgust_Fear_77, picture.Disgust_Fear_78,
picture.Disgust_Fear_79, picture.Disgust_Fear_80, picture.Disgust_Fear_81, picture.Disgust_Fear_82, picture.Disgust_Fear_83, picture.Disgust_Fear_84,
picture.Disgust_Fear_85, picture.Disgust_Fear_86, picture.Disgust_Fear_87, picture.Disgust_Fear_88, picture.Disgust_Fear_89, picture.Disgust_Fear_90,
picture.Disgust_Fear_91, picture.Disgust_Fear_92, picture.Disgust_Fear_93, picture.Disgust_Fear_94, picture.Disgust_Fear_95, picture.Disgust_Fear_96,
picture.Disgust_Fear_97, picture.Disgust_Fear_98, picture.Disgust_Fear_99)
/ selectionmode = values.selectedimage
</list>

<trial minus15>
/ ontrialbegin = [trial.minus15.resetstimulusframes();
      values.selectedimage = values.primerPSE - 15;
   ]
/ stimulustimes = [0 = 3; 1000 = 2; 2000 = 1; 3000 = list.Fear_Pictures; 7200 = Answer;]
/ pretrialpause = noreplace(1050,1550,2050,2550)
/ beginresponsetime = 7200
/ response = timeout(2500)
/ validresponse = (lbuttondown, rbuttondown)
/ inputdevice = mousekey
/ responseinterrupt = immediate
/ iscorrectresponse = [trial.minus15.response == values.correctmouseevent]
</trial>

...

<trial plus15>
/ ontrialbegin = [trial.plus15.resetstimulusframes();
  values.selectedimage = values.primerPSE + 15;
 ]
/ stimulustimes = [0 = 3; 1000 = 2; 2000 = 1; 3000 = list.Fear_Pictures; 7200 = Answer;]
/ pretrialpause = noreplace(1050,1550,2050,2550)
/ beginresponsetime = 7200
/ response = timeout(2500)
/ validresponse = (lbuttondown, rbuttondown)
/ inputdevice = mousekey
/ responseinterrupt = immediate
/ iscorrectresponse = [trial.plus15.response == values.correctmouseevent]
</trial>

<block Disgust_L_Fear_R>
/ onblockbegin = [values.correctmouseevent = "rbuttondown"]
/ trials = [1-24 = noreplace(minus15,minus9,minus3,plus3,plus9,plus15)]
/ bgstim = (disgust_left, fear_right)
</block>

<block Disgust_R_Fear_L>
/ onblockbegin = [values.correctmouseevent = "lbuttondown"]
/ trials = [1-24 = noreplace(minus15,minus9,minus3,plus3,plus9,plus15)]
/ bgstim = (disgust_right, fear_left)
</block>

<expt>
/blocks = [1-6=noreplace(Disgust_L_Fear_R, Disgust_R_Fear_L)]
</expt>

I don't understand the question. Specifically, it's not clear to me at all what / where in the code the "two different actors" come into play.

My apologies for being unclear.  The different actors are denoted in the name of the image file with 28 standing for one actor and 33 for the other (based on their ages). So each picture element contains two images, each of one actor 

e.g. <picture Disgust_Fear_1>
/ items = ("28_Disgust_Fear_1.BMP","33_Disgust_Fear_1.BMP")
/ select = noreplace
</picture>
Christin41
Christin41
Associate Member (186 reputation)Associate Member (186 reputation)Associate Member (186 reputation)Associate Member (186 reputation)Associate Member (186 reputation)Associate Member (186 reputation)Associate Member (186 reputation)Associate Member (186 reputation)Associate Member (186 reputation)
Group: Forum Members
Posts: 12, Visits: 74
Dave - 12/18/2020
Dave - 12/18/2020
Christin41 - 12/18/2020
Hello,

We programmed an experiment in which participants get shown facial expressions of two different actors that are morphed to differing degrees ranging from 1 to 99, leading us to have two times 99 different images. Which of the two actors are being shown is being selected randomly within a picture element - with each picture element representing one degree of morphing (e.g. Disgust_Fear_1 representing degree 1). All of these picture elements are then combined in a list and which element is chosen out of the list is controlled by the value for selectedimage. This value is being calculated on trial begin and is the primerPSE, a value differing for each participant that denotes their personal "middle" for the morphing degrees, minus or plus 3, 9, or 15 (i.e. - 15, - 9, - 3, + 3, +9, +15) depending on the trial (e.g. trial minus15 is PSE - 15). What degree of morphing is being shown is thus different for each participant and based on their personal "primerPSE". 

The issue is now, however, that two different primerPSEs need to be entered based on the actor (so each actor having a differing PSE). Also each actor should be shown an equal amount of times will still being shown at random. How can this be realized? (I am sorry about this very vague question, but I am just very unsure how to go about this). Thank you so much in advance!!

Here is in code what I just described above:

<values>
/ primerPSE = 50
/ selectedimage = 0
/ correctmouseevent = 0
</values>

<picture Disgust_Fear_1>
/ items = ("28_Disgust_Fear_1.BMP","33_Disgust_Fear_1.BMP")
/ select = noreplace
</picture>

<picture Disgust_Fear_2>
/ items = ("28_Disgust_Fear_2.BMP","33_Disgust_Fear_2.BMP")
/ select = noreplace
</picture>

...

<picture Disgust_Fear_99>
/ items = ("28_Disgust_Fear_99.BMP","33_Disgust_Fear_99.BMP")
/ select = noreplace
</picture>

<list Fear_Pictures>
/ items = (picture.Disgust_Fear_1, picture.Disgust_Fear_2, picture.Disgust_Fear_3, picture.Disgust_Fear_4, picture.Disgust_Fear_5, picture.Disgust_Fear_6,
picture.Disgust_Fear_7, picture.Disgust_Fear_8, picture.Disgust_Fear_9, picture.Disgust_Fear_10, picture.Disgust_Fear_11, picture.Disgust_Fear_12,
picture.Disgust_Fear_13, picture.Disgust_Fear_14, picture.Disgust_Fear_15, picture.Disgust_Fear_16, picture.Disgust_Fear_17, picture.Disgust_Fear_18,
picture.Disgust_Fear_19, picture.Disgust_Fear_20, picture.Disgust_Fear_21, picture.Disgust_Fear_22, picture.Disgust_Fear_23, picture.Disgust_Fear_24,
picture.Disgust_Fear_25, picture.Disgust_Fear_26, picture.Disgust_Fear_27, picture.Disgust_Fear_28, picture.Disgust_Fear_29, picture.Disgust_Fear_30,
picture.Disgust_Fear_31, picture.Disgust_Fear_32, picture.Disgust_Fear_33, picture.Disgust_Fear_34, picture.Disgust_Fear_35, picture.Disgust_Fear_36,
picture.Disgust_Fear_37, picture.Disgust_Fear_38, picture.Disgust_Fear_39, picture.Disgust_Fear_40, picture.Disgust_Fear_41, picture.Disgust_Fear_42,
picture.Disgust_Fear_43, picture.Disgust_Fear_44, picture.Disgust_Fear_45, picture.Disgust_Fear_46, picture.Disgust_Fear_47, picture.Disgust_Fear_48,
picture.Disgust_Fear_49, picture.Disgust_Fear_50, picture.Disgust_Fear_51, picture.Disgust_Fear_52, picture.Disgust_Fear_53, picture.Disgust_Fear_54,
picture.Disgust_Fear_55, picture.Disgust_Fear_56, picture.Disgust_Fear_57, picture.Disgust_Fear_58, picture.Disgust_Fear_59, picture.Disgust_Fear_60,
picture.Disgust_Fear_61, picture.Disgust_Fear_62, picture.Disgust_Fear_63, picture.Disgust_Fear_64, picture.Disgust_Fear_65, picture.Disgust_Fear_66,
picture.Disgust_Fear_67, picture.Disgust_Fear_68, picture.Disgust_Fear_69, picture.Disgust_Fear_70, picture.Disgust_Fear_71, picture.Disgust_Fear_72,
picture.Disgust_Fear_73, picture.Disgust_Fear_74, picture.Disgust_Fear_75, picture.Disgust_Fear_76, picture.Disgust_Fear_77, picture.Disgust_Fear_78,
picture.Disgust_Fear_79, picture.Disgust_Fear_80, picture.Disgust_Fear_81, picture.Disgust_Fear_82, picture.Disgust_Fear_83, picture.Disgust_Fear_84,
picture.Disgust_Fear_85, picture.Disgust_Fear_86, picture.Disgust_Fear_87, picture.Disgust_Fear_88, picture.Disgust_Fear_89, picture.Disgust_Fear_90,
picture.Disgust_Fear_91, picture.Disgust_Fear_92, picture.Disgust_Fear_93, picture.Disgust_Fear_94, picture.Disgust_Fear_95, picture.Disgust_Fear_96,
picture.Disgust_Fear_97, picture.Disgust_Fear_98, picture.Disgust_Fear_99)
/ selectionmode = values.selectedimage
</list>

<trial minus15>
/ ontrialbegin = [trial.minus15.resetstimulusframes();
      values.selectedimage = values.primerPSE - 15;
   ]
/ stimulustimes = [0 = 3; 1000 = 2; 2000 = 1; 3000 = list.Fear_Pictures; 7200 = Answer;]
/ pretrialpause = noreplace(1050,1550,2050,2550)
/ beginresponsetime = 7200
/ response = timeout(2500)
/ validresponse = (lbuttondown, rbuttondown)
/ inputdevice = mousekey
/ responseinterrupt = immediate
/ iscorrectresponse = [trial.minus15.response == values.correctmouseevent]
</trial>

...

<trial plus15>
/ ontrialbegin = [trial.plus15.resetstimulusframes();
  values.selectedimage = values.primerPSE + 15;
 ]
/ stimulustimes = [0 = 3; 1000 = 2; 2000 = 1; 3000 = list.Fear_Pictures; 7200 = Answer;]
/ pretrialpause = noreplace(1050,1550,2050,2550)
/ beginresponsetime = 7200
/ response = timeout(2500)
/ validresponse = (lbuttondown, rbuttondown)
/ inputdevice = mousekey
/ responseinterrupt = immediate
/ iscorrectresponse = [trial.plus15.response == values.correctmouseevent]
</trial>

<block Disgust_L_Fear_R>
/ onblockbegin = [values.correctmouseevent = "rbuttondown"]
/ trials = [1-24 = noreplace(minus15,minus9,minus3,plus3,plus9,plus15)]
/ bgstim = (disgust_left, fear_right)
</block>

<block Disgust_R_Fear_L>
/ onblockbegin = [values.correctmouseevent = "lbuttondown"]
/ trials = [1-24 = noreplace(minus15,minus9,minus3,plus3,plus9,plus15)]
/ bgstim = (disgust_right, fear_left)
</block>

<expt>
/blocks = [1-6=noreplace(Disgust_L_Fear_R, Disgust_R_Fear_L)]
</expt>

I don't understand the question. Specifically, it's not clear to me at all what / where in the code the "two different actors" come into play.

Guessing here, but something like this:

<values>
/ actornumber = 1
/ actor1_PSE = 50
/ actor2_PSE = 20


/ primerPSE = 0
/ selectedimage = 0
/ correctmouseevent = 0
</values>

<picture Disgust_Fear_1>
/ items = ("28_Disgust_Fear_1.BMP","33_Disgust_Fear_1.BMP")
/ select = values.actornumber
</picture>

<picture Disgust_Fear_2>
/ items = ("28_Disgust_Fear_2.BMP","33_Disgust_Fear_2.BMP")
/ select = values.actornumber
</picture>

...

<picture Disgust_Fear_99>
/ items = ("28_Disgust_Fear_99.BMP","33_Disgust_Fear_99.BMP")
/ select = values.actornumber
</picture>

<list Fear_Pictures>
/ items = (picture.Disgust_Fear_1, picture.Disgust_Fear_2, picture.Disgust_Fear_3, picture.Disgust_Fear_4, picture.Disgust_Fear_5, picture.Disgust_Fear_6,
picture.Disgust_Fear_7, picture.Disgust_Fear_8, picture.Disgust_Fear_9, picture.Disgust_Fear_10, picture.Disgust_Fear_11, picture.Disgust_Fear_12,
picture.Disgust_Fear_13, picture.Disgust_Fear_14, picture.Disgust_Fear_15, picture.Disgust_Fear_16, picture.Disgust_Fear_17, picture.Disgust_Fear_18,
picture.Disgust_Fear_19, picture.Disgust_Fear_20, picture.Disgust_Fear_21, picture.Disgust_Fear_22, picture.Disgust_Fear_23, picture.Disgust_Fear_24,
picture.Disgust_Fear_25, picture.Disgust_Fear_26, picture.Disgust_Fear_27, picture.Disgust_Fear_28, picture.Disgust_Fear_29, picture.Disgust_Fear_30,
picture.Disgust_Fear_31, picture.Disgust_Fear_32, picture.Disgust_Fear_33, picture.Disgust_Fear_34, picture.Disgust_Fear_35, picture.Disgust_Fear_36,
picture.Disgust_Fear_37, picture.Disgust_Fear_38, picture.Disgust_Fear_39, picture.Disgust_Fear_40, picture.Disgust_Fear_41, picture.Disgust_Fear_42,
picture.Disgust_Fear_43, picture.Disgust_Fear_44, picture.Disgust_Fear_45, picture.Disgust_Fear_46, picture.Disgust_Fear_47, picture.Disgust_Fear_48,
picture.Disgust_Fear_49, picture.Disgust_Fear_50, picture.Disgust_Fear_51, picture.Disgust_Fear_52, picture.Disgust_Fear_53, picture.Disgust_Fear_54,
picture.Disgust_Fear_55, picture.Disgust_Fear_56, picture.Disgust_Fear_57, picture.Disgust_Fear_58, picture.Disgust_Fear_59, picture.Disgust_Fear_60,
picture.Disgust_Fear_61, picture.Disgust_Fear_62, picture.Disgust_Fear_63, picture.Disgust_Fear_64, picture.Disgust_Fear_65, picture.Disgust_Fear_66,
picture.Disgust_Fear_67, picture.Disgust_Fear_68, picture.Disgust_Fear_69, picture.Disgust_Fear_70, picture.Disgust_Fear_71, picture.Disgust_Fear_72,
picture.Disgust_Fear_73, picture.Disgust_Fear_74, picture.Disgust_Fear_75, picture.Disgust_Fear_76, picture.Disgust_Fear_77, picture.Disgust_Fear_78,
picture.Disgust_Fear_79, picture.Disgust_Fear_80, picture.Disgust_Fear_81, picture.Disgust_Fear_82, picture.Disgust_Fear_83, picture.Disgust_Fear_84,
picture.Disgust_Fear_85, picture.Disgust_Fear_86, picture.Disgust_Fear_87, picture.Disgust_Fear_88, picture.Disgust_Fear_89, picture.Disgust_Fear_90,
picture.Disgust_Fear_91, picture.Disgust_Fear_92, picture.Disgust_Fear_93, picture.Disgust_Fear_94, picture.Disgust_Fear_95, picture.Disgust_Fear_96,
picture.Disgust_Fear_97, picture.Disgust_Fear_98, picture.Disgust_Fear_99)
/ selectionmode = values.selectedimage
</list>

// 4 minus15 trials in each block; we want 2 x actor 1 and 2 x actor 2
<list minus15_actornumbers>
/ items = (1,1,2,2)
</list>
...
// 4 plus15 trials in each block; we want 2 x actor 1 and 2 x actor 2
<list plus15_actornumbers>
/ items = (1,1,2,2)
</list>



<trial minus15>
/ ontrialbegin = [
    values.actornumber = list.minus15_actornumbers.nextvalue;
    if (values.actornumber == 1) {
        values.primerPSE = values.actor1_PSE;
    } else if (values.actornumber == 2) {
        values.primerPSE = values.actor2_PSE;
    };
]

/ ontrialbegin = [trial.minus15.resetstimulusframes();
  values.selectedimage = values.primerPSE - 15;
 ]
/ stimulustimes = [0 = 3; 1000 = 2; 2000 = 1; 3000 = list.Fear_Pictures; 7200 = Answer;]
/ pretrialpause = noreplace(1050,1550,2050,2550)
/ beginresponsetime = 7200
/ response = timeout(2500)
/ validresponse = (lbuttondown, rbuttondown)
/ inputdevice = mousekey
/ responseinterrupt = immediate
/ iscorrectresponse = [trial.minus15.response == values.correctmouseevent]
</trial>

...

<trial plus15>
/ ontrialbegin = [
    values.actornumber = list.plus15_actornumbers.nextvalue;
    if (values.actornumber == 1) {
        values.primerPSE = values.actor1_PSE;
    } else if (values.actornumber == 2) {
        values.primerPSE = values.actor2_PSE;
    };
]

/ ontrialbegin = [trial.plus15.resetstimulusframes();
values.selectedimage = values.primerPSE + 15;
]
/ stimulustimes = [0 = 3; 1000 = 2; 2000 = 1; 3000 = list.Fear_Pictures; 7200 = Answer;]
/ pretrialpause = noreplace(1050,1550,2050,2550)
/ beginresponsetime = 7200
/ response = timeout(2500)
/ validresponse = (lbuttondown, rbuttondown)
/ inputdevice = mousekey
/ responseinterrupt = immediate
/ iscorrectresponse = [trial.plus15.response == values.correctmouseevent]
</trial>

<block Disgust_L_Fear_R>
/ onblockbegin = [values.correctmouseevent = "rbuttondown"]
/ trials = [1-24 = noreplace(minus15,minus9,minus3,plus3,plus9,plus15)]
/ bgstim = (disgust_left, fear_right)
</block>

<block Disgust_R_Fear_L>
/ onblockbegin = [values.correctmouseevent = "lbuttondown"]
/ trials = [1-24 = noreplace(minus15,minus9,minus3,plus3,plus9,plus15)]
/ bgstim = (disgust_right, fear_left)
</block>

<expt>
/blocks = [1-6=noreplace(Disgust_L_Fear_R, Disgust_R_Fear_L)]
</expt>

So I believe your "guessed" solution would work!  I will try it out now, thank you very much!

GO

Merge Selected

Merge into selected topic...



Merge into merge target...



Merge into a specific topic ID...




Reading This Topic

Explore
Messages
Mentions
Search