Skip to content

Commit

Permalink
fix - correcting transpose character, see also #204
Browse files Browse the repository at this point in the history
  • Loading branch information
robertoostenveld committed Feb 18, 2020
1 parent 846ad33 commit 9258f03
Show file tree
Hide file tree
Showing 43 changed files with 159 additions and 159 deletions.
6 changes: 3 additions & 3 deletions COPYING.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ Creative Commons public licenses provide a standard set of terms and conditions

- **Considerations for licensors:** Our public licenses are intended for use by those authorized to give the public permission to use material in ways otherwise restricted by copyright and certain other rights. Our licenses are irrevocable. Licensors should read and understand the terms and conditions of the license they choose before applying it. Licensors should also secure all rights necessary before applying our licenses so that the public can reuse the material as expected. Licensors should clearly mark any material not subject to the license. This includes other CC-licensed material, or material used under an exception or limitation to copyright. [More considerations for licensors](http://wiki.creativecommons.org/Considerations_for_licensors_and_licensees#Considerations_for_licensors).

- **Considerations for the public:** By using one of our public licenses, a licensor grants the public permission to use the licensed material under specified terms and conditions. If the licensors permission is not necessary for any reason–for example, because of any applicable exception or limitation to copyright–then that use is not regulated by the license. Our licenses grant only permissions under copyright and certain other rights that a licensor has authority to grant. Use of the licensed material may still be restricted for other reasons, including because others have copyright or other rights in the material. A licensor may make special requests, such as asking that all changes be marked or described. Although not required by our licenses, you are encouraged to respect those requests where reasonable. [More considerations for the public](http://wiki.creativecommons.org/Considerations_for_licensors_and_licensees#Considerations_for_licensees).
- **Considerations for the public:** By using one of our public licenses, a licensor grants the public permission to use the licensed material under specified terms and conditions. If the licensor's permission is not necessary for any reason–for example, because of any applicable exception or limitation to copyright–then that use is not regulated by the license. Our licenses grant only permissions under copyright and certain other rights that a licensor has authority to grant. Use of the licensed material may still be restricted for other reasons, including because others have copyright or other rights in the material. A licensor may make special requests, such as asking that all changes be marked or described. Although not required by our licenses, you are encouraged to respect those requests where reasonable. [More considerations for the public](http://wiki.creativecommons.org/Considerations_for_licensors_and_licensees#Considerations_for_licensees).

## Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International Public License

Expand Down Expand Up @@ -64,7 +64,7 @@ a. **_License grant._**

A. **Offer from the Licensor – Licensed Material.** Every recipient of the Licensed Material automatically receives an offer from the Licensor to exercise the Licensed Rights under the terms and conditions of this Public License.

B. **Additional offer from the Licensor – Adapted Material.** Every recipient of Adapted Material from You automatically receives an offer from the Licensor to exercise the Licensed Rights in the Adapted Material under the conditions of the Adapters License You apply.
B. **Additional offer from the Licensor – Adapted Material.** Every recipient of Adapted Material from You automatically receives an offer from the Licensor to exercise the Licensed Rights in the Adapted Material under the conditions of the Adapter's License You apply.

C. **No downstream restrictions.** You may not offer or impose any additional or different terms or conditions on, or apply any Effective Technological Measures to, the Licensed Material if doing so restricts exercise of the Licensed Rights by any recipient of the Licensed Material.

Expand Down Expand Up @@ -110,7 +110,7 @@ b. **_ShareAlike._**

In addition to the conditions in Section 3(a), if You Share Adapted Material You produce, the following conditions also apply.

1. The Adapters License You apply must be a Creative Commons license with the same License Elements, this version or later, or a BY-NC-SA Compatible License.
1. The Adapter's License You apply must be a Creative Commons license with the same License Elements, this version or later, or a BY-NC-SA Compatible License.

2. You must include the text of, or the URI or hyperlink to, the Adapter's License You apply. You may satisfy this condition in any reasonable manner based on the medium, means, and context in which You Share Adapted Material.

Expand Down
22 changes: 11 additions & 11 deletions development/guideline/code.md
Original file line number Diff line number Diff line change
Expand Up @@ -58,16 +58,16 @@ should also have the same 'warning' or 'error' tag (e.g. `FieldTrip:fileio:fileN
In general (although some exceptions apply, see below) the specification of the dimensions in the data structure is like this

datastructure.aaa = 2-D array
datastructure.aaadimord = xxx_yyy
datastructure.aaadimord = 'xxx_yyy'
datastructure.xxx = scalar vector or cell-array that describes the 1st dimension
datastructure.yyy = scalar vector or cell-array that describes the 2st dimension

This can be extended like

datastructure.aaa
datastructure.aaadimord = xxx_yyy
datastructure.aaadimord = 'xxx_yyy'
datastructure.bbb
datastructure.bbbdimord = yyy_zzz
datastructure.bbbdimord = 'yyy_zzz'
datastructure.xxx
datastructure.yyy
datastructure.zzz
Expand All @@ -76,36 +76,36 @@ In case multiple fields in a structure have the same dimord, it is allowed to sp

datastructure.aaa
datastructure.bbb
datastructure.dimord = xxx_yyy % applies to aaa and bbb
datastructure.dimord = 'xxx_yyy' % applies to aaa and bbb
datastructure.xxx
datastructure.yyy

And furthermore

datastructure.aaa
datastructure.bbb
datastructure.dimord = xxx_yyy % applies to all fields that do not specify their own dimord
datastructure.dimord = 'xxx_yyy' % applies to all fields that do not specify their own dimord
datastructure.ccc
datastructure.cccdimord = yyy_zzz % applies only to ccc
datastructure.cccdimord = 'yyy_zzz' % applies only to ccc
datastructure.xxx
datastructure.yyy
datastructure.zzz

If a structure only contains a single data field, all fields (i.e. the only one) have the same dimensions and therefore a general dimord can be used instead of a field-specific one. So the structure would be

datastructure.aaa = 2-D array
datastructure.dimord = xxx_yyy
datastructure.dimord = 'xxx_yyy'
datastructure.xxx = scalar vector or cell-array that describes the 1st dimension
datastructure.yyy = scalar vector or cell-array that describes the 2st dimension

Some high-level FieldTrip functions allow or require the specification of the parameter on which to perform their algorithm, whereas other functions do not require or allow the parameter to be specified. If the parameter is not specified, and if the non-specific “dimord” only refers to a single data field, that field is considered to be the main data and will be used as input for the algorithm.

The known exceptions are

- the dimension chan is described with the cell-array vector label'
- the dimension chancmb is described with the cell-array labelcmb, which is a Nx2 array
- if the dimension is indicated as '{xxx}, then it refers to a cell-array description. An example is {pos}\_ori_time for vector dipole moments as a function of time, that are estimated for multiple dipole positions. The positions are here represented in a cell-array to allow for positions (from a 3-D regular grid) outside the brain where the computation is not done. The alternative would be to use a 3D array with pos_ori_time with NaNs to indicate that the data at some positions does not apply, but that is memory-wise inefficient.
- if the dimension is indicated as (xxx), then it refers to a struct-array description. We dont have this worked out in detail and we dont use it.
- the dimension 'chan' is described with the cell-array vector 'label'
- the dimension 'chancmb' is described with the cell-array 'labelcmb', which is a Nx2 array
- if the dimension is indicated as '{xxx}', then it refers to a cell-array description. An example is '{pos}\_ori_time' for vector dipole moments as a function of time, that are estimated for multiple dipole positions. The positions are here represented in a cell-array to allow for positions (from a 3-D regular grid) outside the brain where the computation is not done. The alternative would be to use a 3D array with pos_ori_time with NaNs to indicate that the data at some positions does not apply, but that is memory-wise inefficient.
- if the dimension is indicated as '(xxx)', then it refers to a struct-array description. We don't have this worked out in detail and we don't use it.
- some fields contain supportive information and not actual data, and therefore are not described with a dimord. Examples are cumtapcnt, sampleinfo, trialinfo.
- some dimensions do not have an explicit description and are only implicitly numbered. examples are “comp” and “rpt”.
- rpt is used for repetitions, which are usually trials, but in timelock (ERP) structures we use “rpt" and “subj” interchangeably. The dimord “subj_chan_time" is used to represent an ERP that cas been concatenated over subjects.
Expand Down
6 changes: 3 additions & 3 deletions development/realtime/neuromag.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ The following are the optional arguments available to the use

- bufhost: specifies the hostname of the computer hosting the FieldTrip buffer. This option automatically makes rtMEG communicate with an external host and not lunch its own thread of the FieldTrip buffer.

- bufport: what port to use for communications. If --ftbuffer is specified, this is the port to send the data to in the computer hosting the FieldTrip buffer. If ftbuffer was not specified, then this is the port the buffer will be listening to for reading requests.
- bufport: what port to use for communications. If --ftbuffer is specified, this is the port to send the data to in the computer hosting the FieldTrip buffer. If 'ftbuffer' was not specified, then this is the port the buffer will be listening to for reading requests.

- fixchunksize: **ONLY USE IT IN CASE OF ABNORMAL PROGRAM TERMINATION!** If a problem occur and the program unlikely crashes with an unclean exit, it might not properly reset the chunk size to the old value (i.e. if the program was invoked with the chunksize flag when it crashed). Therefore, this argument sets the chunk size to the parameter set in the argument and then quits the program.

Expand All @@ -51,9 +51,9 @@ The following are the optional arguments available to the use

This section gives a simplistic overview of the Acquisition system and how rtMEG fits in. This knowledge is not necessary to run the program, but it might come handy if you want to understand a bit of what is going on behind the scenes.

Each DSP (Digital Signal Processor) manages 12 different channels in the MEG machine (in the most common setup). The several DSPs then send the data they acquire from the channels to the real-time computer (in packets of 28 samples per channel, in the usual setup). The real-time computer sorts the data and applies some calibration values to them. The Acquisition computer talks to the real-time computer to receive the data. It receives the data by requesting "buflen" datapoints per packet, and hence the need for the buflen option. If not used, rtMEG uses the default settings, which are usually around 1s second of data (e.g. buflen=1000 for sampling rate of 1Khz), which is fine for the regular data saving operations, but will be too long for a real-time application.
Each DSP (Digital Signal Processor) manages 12 different channels in the MEG machine (in the most common setup). The several DSPs then send the data they acquire from the channels to the real-time computer (in packets of 28 samples per channel, in the usual setup). The real-time computer sorts the data and applies some calibration values to them. The Acquisition computer talks to the real-time computer to receive the data. It receives the data by requesting "buflen" datapoints per packet, and hence the need for the 'buflen' option. If not used, rtMEG uses the default settings, which are usually around 1s second of data (e.g. buflen=1000 for sampling rate of 1Khz), which is fine for the regular data saving operations, but will be too long for a real-time application.

The data received from the real-time computer are then stored in a local buffer that is used by different Neuromag programs, such as the visualization interface. So, rtMEG taps into this local buffer and reads the data being retrieved from the real-time computer. Once the data has been read, rtMEG writes them to a FieldTrip buffer, which can be easily read by several different clients (see above) using an open source format. This FieldTrip buffer can be run by rtMEG itself, or by a separate computer in the network (i.e. the ftbuffer option).
The data received from the real-time computer are then stored in a local buffer that is used by different Neuromag programs, such as the visualization interface. So, rtMEG taps into this local buffer and reads the data being retrieved from the real-time computer. Once the data has been read, rtMEG writes them to a FieldTrip buffer, which can be easily read by several different clients (see above) using an open source format. This FieldTrip buffer can be run by rtMEG itself, or by a separate computer in the network (i.e. the 'ftbuffer' option).

### Tips

Expand Down
2 changes: 1 addition & 1 deletion development/realtime/openbci.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ This page describes the interface between the 8-channel [OpenBCI](http://www.ope

{% include image src="/assets/img/development/realtime/openbci/8_perspective_1024x1024.jpg" width="400" %}

The FTDI chip on the OpenBCI dongle requires you to install the FTDI drivers on your machine. You may already have these installed, if youve worked with Arduino or other USB hardware accessories. You can download the latest FTDI drivers for your operating system [here](http://www.ftdichip.com/Drivers/VCP.htm).
The FTDI chip on the OpenBCI dongle requires you to install the FTDI drivers on your machine. You may already have these installed, if you've worked with Arduino or other USB hardware accessories. You can download the latest FTDI drivers for your operating system [here](http://www.ftdichip.com/Drivers/VCP.htm).

## Standalone interface with openbci2ft

Expand Down
2 changes: 1 addition & 1 deletion example/common_filters_in_beamforming.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ The general procedure is as follow
FIXME Code for reconstruction of single trial data is incomplete

In the following, scripts for both approaches are presented.
Lets say we have data for two conditions, condition A and B, and we assume that the same sources are active in both, but to a different extent.
Let's say we have data for two conditions, condition A and B, and we assume that the same sources are active in both, but to a different extent.

We have the preprocessed data for both conditions (_dataA_ and _dataB_) and we precomputed the grid and the volume conduction model (_grid_ and _vol_). For more information on how to do this, have a look at the [beamformer tutorial](/tutorial/beamformer) and the FieldTrip functions **[ft_prepare_leadfield](/reference/ft_prepare_leadfield)** and **[ft_prepare_headmodel](/reference/ft_prepare_headmodel)** with method='singleshell'.

Expand Down
6 changes: 3 additions & 3 deletions example/ecog_ny.md
Original file line number Diff line number Diff line change
Expand Up @@ -122,7 +122,7 @@ The analysis of event-related potentials is done in accordance with the standard
ERP_object_bl = ft_timelockbaseline(cfg,ERP_object);
ERP_face_bl = ft_timelockbaseline(cfg,ERP_face);

For plotting the data we select channel 'IO_03', located in or in close proximity of the fusiform face area, which is known to strongly respond to face stimuli. In agreement with the literature, the ERPs appear to be larger for 'face' compared to object stimuli. Before plotting, we need to average the data across trials, because we kept the individual trials when initially calling ft_timelockanalysis.
For plotting the data we select channel 'IO_03', located in or in close proximity of the fusiform face area, which is known to strongly respond to face stimuli. In agreement with the literature, the ERPs appear to be larger for 'face' compared to 'object' stimuli. Before plotting, we need to average the data across trials, because we kept the individual trials when initially calling ft_timelockanalysis.

cfg = [];
cfg.avgoverrpt = 'yes';
Expand Down Expand Up @@ -229,7 +229,7 @@ Although the visual inspection of the data indicated stronger ERP responses for
[chans time] = find(stats_HGP.mask);
chans = unique(chans)

There are six channels with significantly different HGP time courses when comparing the objects and faces conditions. We will plot each of these channels using **[ft_singleplotER](/reference/ft_singleplotER)**.
There are six channels with significantly different HGP time courses when comparing the 'objects' and 'faces' conditions. We will plot each of these channels using **[ft_singleplotER](/reference/ft_singleplotER)**.

% first, average over trials, otherwise we'll have problems with ft_singleplotER
cfg = [];
Expand Down Expand Up @@ -302,7 +302,7 @@ To visualize the time-frequency data from the two conditions, we will plot TFRs

#### 4.2 Time-frequency statistics

In the next step, we statistically compare the TFRs of the house and face conditions using cluster-based permutation statistics, as implemented in **[ft_freqstatistics](/reference/ft_freqstatistics)**. The statistical approach is presented in more detail in one of the [statistics tutorials](/tutorial/cluster_permutation_freq).
In the next step, we statistically compare the TFRs of the 'house' and 'face' conditions using cluster-based permutation statistics, as implemented in **[ft_freqstatistics](/reference/ft_freqstatistics)**. The statistical approach is presented in more detail in one of the [statistics tutorials](/tutorial/cluster_permutation_freq).

cfg = [];
cfg.latency = [0 .6];
Expand Down
Loading

0 comments on commit 9258f03

Please sign in to comment.