Skip to content

Commit 315f09c

Browse files
committed
add laserIntervals file
1 parent 3f5afc0 commit 315f09c

File tree

1 file changed

+11
-4
lines changed

1 file changed

+11
-4
lines changed

projects/alejandro_FPLROptoChoiceWorld.py

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,8 @@
1111

1212

1313
class TrialsFPLROpto(BaseBpodTrialsExtractor):
14-
var_names = BiasedTrials.var_names + ('laser_stimulation',)
15-
save_names = BiasedTrials.save_names + ('_ibl_trials.laserStimulation.npy',)
14+
var_names = BiasedTrials.var_names + ('laser_stimulation', 'laser_intervals',)
15+
save_names = BiasedTrials.save_names + ('_ibl_trials.laserStimulation.npy', '_ibl_trials.laserIntervals.npy',)
1616

1717
def _extract(self, extractor_classes=None, **kwargs) -> dict:
1818

@@ -23,11 +23,18 @@ def _extract(self, extractor_classes=None, **kwargs) -> dict:
2323

2424
# Extract laser stimulation dataset
2525
laser_stimulation = np.zeros_like(out['table']['contrastLeft'])
26+
laser_intervals = np.full((out['table']['contrastLeft'].size, 2), np.nan)
2627
if 'FPR' in self.settings['PYBPOD_PROTOCOL']:
27-
laser_stimulation[~np.isnan(out['table']['contrastRight'])] = 1
28+
idx = ~np.isnan(out['table']['contrastRight'])
2829
elif 'FPL' in self.settings['PYBPOD_PROTOCOL']:
29-
laser_stimulation[~np.isnan(out['table']['contrastLeft'])] = 1
30+
idx = ~np.isnan(out['table']['contrastLeft'])
31+
32+
laser_stimulation[idx] = 1
33+
# Laser stimulated at goCue for 200 ms
34+
laser_intervals[idx, 0] = out['table']['goCue_times'][idx]
35+
laser_intervals[idx, 1] = out['table']['goCue_times'][idx] + 200 / 1e3
3036

3137
out['laser_stimulation'] = laser_stimulation
38+
out['laser_intervals'] = laser_intervals
3239

3340
return {k: out[k] for k in self.var_names} # Ensures all datasets present and ordered

0 commit comments

Comments
 (0)