Millisecond Forums

trialduration error message

https://forums.millisecond.com/Topic27856.aspx

By Tylhi - 10/9/2019

Hi,

I try to change one thing in a script that I created and used for study, but it's doesn't works and I don't undestrand why. 

I want to add a trialduration (1000 ms) on my actual trail (Go), but when I add the line /trialduration = 1000 in my trial, Inquisit told my that I do a mistake.

There is my trial :

<trial Go>
/ ontrialbegin = [
     values.gotype = list.Go.nextvalue;
     values.trialcount+=1;

if (parameters.runRandomITI == true){
values.ITI = list.intertrialIntervals.nextvalue;
} else {
values.ITI = parameters.fixedITI;
};

   trial.Go.insertstimulustime(picture.X, (values.ITI));
  trial.Go.insertstimulustime(clearscreen, (values.ITI + parameters.pictureDuration));
]

/ stimulustimes = [0 = clearscreen]
/ beginresponsetime = values.ITI
/ response = timeout(parameters.RW)
/ validresponse = (57, noresponse)
/ correctresponse = (57)
/ response = timeout(parameters.RW)
/ trialduration = 1000

/ ontrialend = [
 list.accuracy.insertitem(trial.Go.correct, 1);
 list.accuracy_G.insertitem(trial.Go.correct, 1);
 
 if (trial.Go.correct)
{
list.latencies.insertitem(trial.Go.latency, 1);
list.latencies_G.insertitem(trial.Go.latency, 1);
};
values.itempic = picture.X;
trial.Go.resetstimulusframes();
]
/ recorddata = true

</trial>

My script works well without the "trialduration". I just need that the stimulus "Go" appear for 500 ms and 500ms before the next stimulus. I hope you could help me.

Thanks in advance,
Best

Margaux


By Dave - 10/9/2019

Tylhi - 10/10/2019
Hi,

I try to change one thing in a script that I created and used for study, but it's doesn't works and I don't undestrand why. 

I want to add a trialduration (1000 ms) on my actual trail (Go), but when I add the line /trialduration = 1000 in my trial, Inquisit told my that I do a mistake.

There is my trial :

<trial Go>
/ ontrialbegin = [
     values.gotype = list.Go.nextvalue;
     values.trialcount+=1;

if (parameters.runRandomITI == true){
values.ITI = list.intertrialIntervals.nextvalue;
} else {
values.ITI = parameters.fixedITI;
};

   trial.Go.insertstimulustime(picture.X, (values.ITI));
  trial.Go.insertstimulustime(clearscreen, (values.ITI + parameters.pictureDuration));
]

/ stimulustimes = [0 = clearscreen]
/ beginresponsetime = values.ITI
/ response = timeout(parameters.RW)
/ validresponse = (57, noresponse)
/ correctresponse = (57)
/ response = timeout(parameters.RW)
/ trialduration = 1000

/ ontrialend = [
 list.accuracy.insertitem(trial.Go.correct, 1);
 list.accuracy_G.insertitem(trial.Go.correct, 1);
 
 if (trial.Go.correct)
{
list.latencies.insertitem(trial.Go.latency, 1);
list.latencies_G.insertitem(trial.Go.latency, 1);
};
values.itempic = picture.X;
trial.Go.resetstimulusframes();
]
/ recorddata = true

</trial>

My script works well without the "trialduration". I just need that the stimulus "Go" appear for 500 ms and 500ms before the next stimulus. I hope you could help me.

Thanks in advance,
Best

Margaux



Please provide the full script as well as the exact wording of the actual error message. The code snippet you posted is not sufficient to determine where your mistake is. I'll note that you have several possibly contradictory parameters in the trial limiting its duration:
Two /response attributes with a timeout and the /trialduration

/ stimulustimes = [0 = clearscreen]
/ beginresponsetime = values.ITI
/ response = timeout(parameters.RW)
/ validresponse = (57, noresponse)
/ correctresponse = (57)
/ response = timeout(parameters.RW)
/ trialduration = 1000
By Tylhi - 10/9/2019

Dave - 10/10/2019
Tylhi - 10/10/2019
Hi,

I try to change one thing in a script that I created and used for study, but it's doesn't works and I don't undestrand why. 

I want to add a trialduration (1000 ms) on my actual trail (Go), but when I add the line /trialduration = 1000 in my trial, Inquisit told my that I do a mistake.

There is my trial :

<trial Go>
/ ontrialbegin = [
     values.gotype = list.Go.nextvalue;
     values.trialcount+=1;

if (parameters.runRandomITI == true){
values.ITI = list.intertrialIntervals.nextvalue;
} else {
values.ITI = parameters.fixedITI;
};

   trial.Go.insertstimulustime(picture.X, (values.ITI));
  trial.Go.insertstimulustime(clearscreen, (values.ITI + parameters.pictureDuration));
]

/ stimulustimes = [0 = clearscreen]
/ beginresponsetime = values.ITI
/ response = timeout(parameters.RW)
/ validresponse = (57, noresponse)
/ correctresponse = (57)
/ response = timeout(parameters.RW)
/ trialduration = 1000

/ ontrialend = [
 list.accuracy.insertitem(trial.Go.correct, 1);
 list.accuracy_G.insertitem(trial.Go.correct, 1);
 
 if (trial.Go.correct)
{
list.latencies.insertitem(trial.Go.latency, 1);
list.latencies_G.insertitem(trial.Go.latency, 1);
};
values.itempic = picture.X;
trial.Go.resetstimulusframes();
]
/ recorddata = true

</trial>

My script works well without the "trialduration". I just need that the stimulus "Go" appear for 500 ms and 500ms before the next stimulus. I hope you could help me.

Thanks in advance,
Best

Margaux



Please provide the full script as well as the exact wording of the actual error message. The code snippet you posted is not sufficient to determine where your mistake is. I'll note that you have several possibly contradictory parameters in the trial limiting its duration:
Two /response attributes with a timeout and the /trialduration

/ stimulustimes = [0 = clearscreen]
/ beginresponsetime = values.ITI
/ response = timeout(parameters.RW)
/ validresponse = (57, noresponse)
/ correctresponse = (57)
/ response = timeout(parameters.RW)
/ trialduration = 1000

Hi,

Thank you for your anwser.

Inquisit doen't tell me a error message just that my script contain one error. But I found a solution :)

I tried to change :
<trial Go>
[...]
/ stimulustimes = [0 = clearscreen]
/ beginresponsetime = values.ITI
/ response = timeout(parameters.RW)
/ validresponse = (57, noresponse)
/ correctresponse = (57)
/ response = timeout(parameters.RW)
[...]
</trial>

in:
<trial Go>
[...]
/ stimulustimes = [0 = clearscreen]
/ beginresponsetime = values.ITI
/ validresponse = (57, noresponse)
/ correctresponse = (57)
/ trialduration = 1000
[...]
</trial>

And it's works well ! :)

Thank you for your time and your help,
Best,
Margaux