AX-CPT范式的psychopy代码
时间: 2023-07-10 09:06:38 浏览: 319
AXCPT_注意力测试范式_AX-CPT_
5星 · 资源好评率100%
AX-CPT范式是一种心理学实验范式,用于研究认知控制。下面是一个基于Psychopy的AX-CPT范式的示例代码:
```python
from psychopy import visual, core, event
# 定义实验窗口
win = visual.Window([800, 600], monitor="testMonitor", units="deg")
# 定义刺激
cue_A = visual.TextStim(win, text='A', pos=[-2, 0], height=2)
cue_X = visual.TextStim(win, text='X', pos=[-2, 0], height=2)
target_A = visual.TextStim(win, text='A', pos=[2, 0], height=2)
target_B = visual.TextStim(win, text='B', pos=[2, 0], height=2)
# 定义实验参数
trial_num = 10
cue_time = 0.5
fixation_time = 1
isi_time = 1
target_time = 2
correct_resp = 'space'
incorrect_resp = 'none'
# 定义实验循环
for i in range(trial_num):
# 显示 A-X 刺激对
cue_A.draw()
win.flip()
core.wait(cue_time)
cue_X.draw()
win.flip()
core.wait(isi_time)
# 显示目标刺激
if i % 2 == 0:
target_A.draw()
else:
target_B.draw()
win.flip()
# 等待反应
resp = event.waitKeys(maxWait=target_time, keyList=[correct_resp, incorrect_resp])
# 显示反应结果
if resp == [correct_resp]:
feedback = visual.TextStim(win, text='Correct', pos=[0, 0], height=2)
else:
feedback = visual.TextStim(win, text='Incorrect', pos=[0, 0], height=2)
feedback.draw()
win.flip()
core.wait(isi_time)
# 显示十字架
fixation = visual.TextStim(win, text='+', pos=[0, 0], height=2)
fixation.draw()
win.flip()
core.wait(fixation_time)
# 关闭实验窗口
win.close()
```
在这个代码中,我们首先定义了实验窗口和刺激,然后设置了一些实验参数,如试次数、刺激呈现时间和反应键等。在实验循环中,我们按照AX-CPT范式的流程依次呈现 A-X 刺激对、目标刺激、等待反应、反应结果和十字架,最后关闭实验窗口。
阅读全文