Skip to content

Commit a9d3d9e

Browse files
committed
create readme file for the translational localizer
1 parent 01f3fb5 commit a9d3d9e

File tree

2 files changed

+53
-30
lines changed

2 files changed

+53
-30
lines changed

README.md

Lines changed: 0 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -4,33 +4,3 @@ This repo collects the most common localizers in use to define hMT/V5
44

55
1. Radial Motion
66
2. [Translational motion](/Visual-loc_translational) (4 directions: up-, dowm-, left-, right-ward)
7-
8-
## Requirements
9-
10-
Make sure that the following toolboxes are installed and added to the matlab / octave path.
11-
12-
For instructions see the following links:
13-
14-
| Requirements | Used version |
15-
|----------------------------------------------------------|--------------|
16-
| [CPP_BIDS](https://github.com/cpp-lln-lab/CPP_BIDS) | ? |
17-
| [CPP_PTB](https://github.com/cpp-lln-lab/CPP_PTB) | ? |
18-
| [PsychToolBox](http://psychtoolbox.org/) | >=3.0.14 |
19-
| [Matlab](https://www.mathworks.com/products/matlab.html) | >=20117 |
20-
| or [octave](https://www.gnu.org/software/octave/) | >=4.? |
21-
22-
## Installing dependencies
23-
24-
All the dependencies needed to run this are listed in the [mpm-requirements.txt file](.mpm-requirements.txt). If those functions are not in the matlab path the scripts in this repository will not work.
25-
26-
If you are using the [matlab package manager](https://github.com/mobeets/mpm), you can simply download the appropriate version of those dependencies and add them to your path by running the `getDependencies` function.
27-
28-
```matlab
29-
getDependencies('update')
30-
```
31-
32-
If you only already have the appropriate version but just want to add them to the matlab path, then run.
33-
34-
```matlab
35-
getDependencies()
36-
```

Visual-loc_translational/README.md

Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,12 +33,65 @@ getDependencies()
3333

3434
### visualLocTranslational
3535

36+
Running this script will show blocks of motion dots (soon also moving gratings) and static dots. Motion blocks will show dots(/gratings) moving in one of four directions (up-, down-, left-, and right-ward)
37+
38+
By default it is run in `Debug mode` meaning that it does not run care about subjID, run n., fMRI triggers, Eye Tracker, etc..
39+
40+
Any details of the experiment can be changed in `setParameters.m` (e.g., experiment mode, motion stimuli details, exp. design, etc.)
41+
3642
### setParameters
3743

44+
`setParameters.m` is the core engine of the experiment. It contains the following tweakable sections:
45+
46+
- Debug mode setting
47+
- MRI settings
48+
- Engine parameters:
49+
- Monitor parameters
50+
- Monitor parameters for PsychToolBox
51+
- Keyboards
52+
- Experiment Design
53+
- Visual Stimulation
54+
- Task(s)
55+
- Instructions
56+
- Task #1 parameters
57+
3858
### subfun/doDotMo
3959

60+
#### Input:
61+
- `Cfg`: PTB/machine configurations returned by `setParameters` and `initPTB`
62+
- `ExpParameters`: parameters returned by `setParameters`
63+
- `logFile`: structure that stores the experiment logfile to be saved
64+
65+
#### Output:
66+
- Event `onset`
67+
- Event `duration`
68+
69+
The dots are drawn on a square that contains the round aperture, then any dots outside of the aperture is turned into a NaN so effectively the actual number of dots on the screen at any given time is not the one that you input but a smaller number (nDots / Area of aperture) on average.
70+
4071
### subfun/expDesign
72+
Creates the sequence of blocks and the events in them. The conditions are consecutive static and motion blocks (Gives better results than randomised). It can be run as a stand alone without inputs to display a visual example of possible design.
73+
74+
#### EVENTS
75+
The `numEventsPerBlock` should be a multiple of the number of "base" listed in the `motionDirections` and `staticDirections` (4 at the moment).
76+
77+
#### TARGETS:
78+
- If there are 2 targets per block we make sure that they are at least 2 events apart.
79+
- Targets cannot be on the first or last event of a block
80+
81+
#### Input:
82+
- `expParameters`: parameters returned by `setParameters`
83+
- `displayFigs`: a boolean to decide whether to show the basic design matrix of the design
84+
85+
#### Output:
86+
- `ExpParameters.designBlockNames` is a cell array `(nr_blocks, 1)` with the name for each block
87+
- `ExpParameters.designDirections` is an array `(nr_blocks, numEventsPerBlock)` with the direction to present in a given block
88+
- `0 90 180 270` indicate the angle
89+
- `-1` indicates static
90+
- `ExpParameters.designSpeeds` is an array `(nr_blocks, numEventsPerBlock) * speedEvent`
91+
- `ExpParameters.designFixationTargets` is an array `(nr_blocks, numEventsPerBlock)` showing for each event if it should be accompanied by a target
4192

4293
### subfun/eyeTracker
94+
Eyetracker script, still to be debugged. Will it probably moved in the CPP_PTB package. It deals with the calibration (dufault or custom), eye movements recording and saving the files.
4395

4496
### subfun/wait4Trigger
97+
Simple functions that counts the triggers sent by the MRI computer to the stimulation computer to sync brain volume recordings and stimulation.

0 commit comments

Comments
 (0)