20890<_VersionPersist dt:dt="int">50SessionProcPsychology Software Tools, Inc. (Brandon S. Cernicky & Amy Eschman)This experiment illustrates a method used to rerun error trials.
If a response is scored as incorrect (i.e., Stim.ACC = 0), the
values for that trial are used to populate a second List. The
second List is then used to rerun error trials after all of the trials
have been run once. The conditional allows for the re-running
of error trials only if errors occur.
This example reruns trials until all are answered correctly.
2013-08-19T15:43:00.000536870912DisplayDisplay<_VersionPersist dt:dt="int">1-164048016white1NoKeyboardKeyboard<_VersionPersist dt:dt="int">1-1101MouseMouse<_VersionPersist dt:dt="int">1-1100SoundSound<_VersionPersist dt:dt="int">1-122205016-1-10-1BlockTrialSubTrialLogLevel5LogLevel6LogLevel7LogLevel8LogLevel9LogLevel1010SubjectPlease enter the Subject Number (1-32767, 0=No Data Logging):0-1-11032767SessionPlease enter the Session Number (1-32767):0-1-11132767GroupPlease enter Subject's Group (0-32767):0001032767NamePlease enter Subject's Name:100255AgePlease enter Subject's Age (0-150):00000150SexPlease enter Subject's Sex:200malemalefemaleHandednessEnter Subject's Handedness:200leftleftrightResearcherIDPlease enter Researcher's ID:0001032767SessionProcProcedure{D51688C9-D420-4FE9-A9F0-FB53EDDCAFD8}20887<_VersionPersist dt:dt="int">1- InitErrorCount
- BlockList
- Goodbye
1InitErrorCountBlockListGoodbyeGoodbyeTextDisplay{B89DFB6D-A1A9-4E41-87C2-400087465710}20887<_VersionPersist dt:dt="int">1OnsetDelay0OnsetTime0DurationError0PreRelease0Duration0StartTime0OffsetTime0FinishTime0TimingMode0CustomOnsetTime0CustomOffsetTime0ActionDelay0ActionTime0TargetOffsetTime0TargetOnsetTime0OffsetDelay0RTTime0ACC0RT0RESP0CRESP0Tag010000010blackwhiteopaqueblack0centercenter100%100%centercentercentercenterNoCourier New18YesNoNoNoGoodbye!-1BlockListList{A7D7DA1A-2D2A-4A8B-8E03-02D20D5C586D}20887<_VersionPersist dt:dt="int">1- BlockProc
00000001100Weight17510Nested17511Procedure175121 BlockProcBlockProcProcedure{482A1C5A-9288-4611-A9B2-37441F51279A}20887<_VersionPersist dt:dt="int">1- Rerun
- TrialList
- NeedtoRerun
- RepeatTrials
- Repeat
- EndOfBlock
1RerunTrialListNeedtoRerunRepeatTrialsRepeatEndOfBlockRerunLabel{E55CEF02-602D-4211-9A14-900B79170D6E}20887<_VersionPersist dt:dt="int">1TrialListList{F5D898CB-A821-431A-8728-41E1E49F0099}20887<_VersionPersist dt:dt="int">1Stimulus1CorrectAnswer1Correct1- TrialProc
10000001100Weight17510Nested17511Procedure17512Stimulus0?75188CorrectAnswer0?91188Correct0?751881 TrialProc A 0 01 TrialProc B 1 01 TrialProc C 1 01 TrialProc D 1 0TrialProcProcedure{0AD5DFDF-8F9B-45E9-86FD-2257DD2532AF}20887<_VersionPersist dt:dt="int">1- Stim
- TrackErrors
1StimTrackErrorsStimTextDisplay{5E414F64-0041-4C03-B245-7647C899C456}20887<_VersionPersist dt:dt="int">1OnsetDelay1OnsetTime1DurationError1PreRelease0Duration0StartTime0OffsetTime0FinishTime0TimingMode0CustomOnsetTime0CustomOffsetTime0ActionDelay0ActionTime0TargetOffsetTime0TargetOnsetTime0OffsetDelay0RTTime1ACC1RT1RESP1CRESP1Tag0KeyboardKeyboard01[CorrectAnswer]1111YesAllYes-10010blackwhiteopaqueblack0centercenter100%100%centercentercentercenterNoCourier New18YesNoNoNoIs [Stimulus] a vowel?
Press '0' for a vowel
Press '1' for a consonant-1TrackErrorsInLine{B09003C9-AFCD-4268-8902-5D5B18384A3C}20887<_VersionPersist dt:dt="int">1
'On incorrect trials, write the current trial info to the TrialList.
If Stim.ACC = 0 Then
g_nErrorCount = g_nErrorCount + 1
Else
c.SetAttribAtSource "Correct", 1
End If
NeedtoRerunInLine{23549A5D-19F2-4E0F-9A21-F37BE92B0146}20887<_VersionPersist dt:dt="int">1
' Examine the "Correct" attribute for all levels
' If Correct = 1, it was correct, so set weight to 0 (don't rerun)
' If Correct = 0, it was incorrect, so set weight to 1 to rerun
If g_nErrorCount > 0 Then
Dim i As Integer
For i = 1 To g_nTotalLevels
If TrialList.GetAttrib(i, "Correct") = "0" Then
TrialList.SetWeight i, 1
Else
TrialList.SetWeight i, 0
End If
Next i
'Reset TrialList with new values
TrialList.Reset
'Reset g_nErrorCount to keep track of new errors
g_nErrorCount = 0
Else
'No error trials to run
GoTo EndOfBlock
End If
RepeatTrialsTextDisplay{8237F799-263D-490C-BD26-4A74014ED4B1}20887<_VersionPersist dt:dt="int">1OnsetDelay0OnsetTime0DurationError0PreRelease0Duration0StartTime0OffsetTime0FinishTime0TimingMode0CustomOnsetTime0CustomOffsetTime0ActionDelay0ActionTime0TargetOffsetTime0TargetOnsetTime0OffsetDelay0RTTime0ACC0RT0RESP0CRESP0Tag010000010blackwhiteopaqueblack0centercenter100%100%centercentercentercenterNoCourier New18YesNoNoNoAny trials you may have answered incorrectly will be repeated now.-1RepeatInLine{26B2AA2A-6D99-4444-88A3-A1676B49502C}20887<_VersionPersist dt:dt="int">1
'No error trials to run
GoTo Rerun
EndOfBlockLabel{7CD7056B-458E-485E-8420-2A7E5D0F8A51}20887<_VersionPersist dt:dt="int">1InitErrorCountInLine{214B74D2-D60C-4DE3-8815-87EBB6A403E1}20887<_VersionPersist dt:dt="int">1
'g_nErrorCount is used to keep track of the number of trials
'on which the response is incorrect.
g_nErrorCount = 0
'g_nTotalLevels is simply the number of levels in the TrialList
g_nTotalLevels = TrialList.Order.Count
Dim g_nErrorCount As Long
Dim g_nTotalLevels As Long