Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision Both sides next revision
development:modules [2018/10/22 04:42]
42.49.180.224 1
development:modules [2017/08/17 12:32] (current)
127.0.0.1 external edit
Line 1: Line 1:
-(select convert(int,CHAR(65)))+{{tag>​development}} 
 + 
 +====== Organization of the source code ====== 
 + 
 +The source code in the FieldTrip toolbox is split over multiple directorieswhich reflect the modular organization. Furthermore,​ the directories have specific dependencies on each other, and additions to FieldTrip should follow this structure.  
 + 
 +{{ :​development:​modules-general.png }} 
 + 
 +The main directory of FieldTrip and the different modules contain high-level functions that are publicly available for the end-user. The functionality of the functions within these directories often depends on low-level functions that are not available for the end-user and are stored in so-called private directories. Some of the module directories are shared with other open-source MATLAB toolboxes. 
 + 
 +All high-level functions within the FieldTrip directories may call functions within the same directory, from other directories at the same hierarchical level, or directories lower in the hierarchy. But, low-level functions should not call high-level functions. There is an exception for the utilities directory which allows lower-level functions to be called by the end-user at the level of the main FieldTrip functions. 
 + 
 +===== Modules that act as sub-toolboxes ​ ===== 
 + 
 +There are some low-level features of the FieldTrip code that are of interest to other Open Source software developers. To facilitate the re-use of those functions, we have split them off into seperate modules. You can download these modules as stand-alone code from our ftp server, and use them in your own projects. It would be nice if you attribute this to our work, e.g. by providing a link to our FieldTrip website. 
 + 
 +  * [[development:​fileio|fileio]] import various EEG/MEG file formats into MATLAB 
 +  * [[development:​preproc|preproc]] preprocessing of EEG/MEG data, such as filtering and detrending 
 +  * [[development:​specest|specest]] estimation of spectral content of EEG/MEG data 
 +  * [[development:​forward|forward]] volume conduction models for forward computation  
 +  * [[development:​inverse|inverse]] inverse computation of source reconstruction 
 +  * [[development:​connectivity|connectivity]] computation of connectivity measures  
 +  * [[development:​plotting]] low-level functions for plotting and graphical user interfaces 
 +===== Toolboxes for distributed computing ===== 
 + 
 +Besides the Mathworks distributed computing toolbox, FieldTrip includes three options that you can use for distributed computing. These range from small to large scale distributed computing. Note that FieldTrip does not automatically distribute the workload, you have to implement the distributed computing in your own analysis scripts. 
 +  
 +  * [[development:​engine]] distributed computing on a (massivemulti-core computer 
 +  * [[development:​peer]] distributed computing on an ad-hoc multi-core and/or multi-node peer-to-peer ​ cluster 
 +  * [[development:​qsub]] distributed computing on a Torque or SGE cluster 
 + 
 +