FSL is the FMRIB Software Library. It is a C / C++ / Tcl/Tk package written by the FMRIB in Oxford.
For more information see:
You can find the FSL example data set in /imaging/local/software/fsl/feeds.
The data for the FSL course is in /imaging/local/fsl/fsl_course_data.
Using the latest version of FSL on the CBU cluster
Before using fsl you need to run
cbufsl
This will open a new terminal windonw which will have the latest version of fsl set up and ready to use.
Using a specific version of FSL on the CBU systems
If you need to use a specific version, rather than the one pointed to by /imaging/local/software/fsl/latest, then you can specify which version you need (e.g., version 5.0.7) by running:
cbufsl -v 5.0.7
Alternatively, you can define the path to the version of FSL you want, and put something like this at the end of your ~/.cshrc file:
setenv FSLDIR /imaging/local/software/fsl/v5.0.7/x86_64/fsl
source ${FSLDIR}/etc/fslconf/fsl.csh
set path = (${FSLDIR}/bin $path)
Please note that from version 5.0.10 onwards fslview was deprecated and a new viewer called fsleyes was introduced. fsleyes will not work on the old CBU cluster (login nodes login11 to 20 and login-gpu02 to 05).
Using the latest version of FSL
Before running fsl you need to run
fsl_4.1.2_setup
which is the latest version of fsl at the moment. By running this command you are also using load sharing with any fsl command. If you want to check if you are using the latest version try
which fsl
Using a specific version of FSL on the CBU systems
If you need to use a specific version, rather than the one pointed to by /imaging/local/linux/bin/fsl, then define the path to the version of FSL you want, and put something like this at the end of your ~/.cshrc file:
# FSL stuff
setenv FSLDIR /imaging/local/linux/bin/fsl-4.1.2
source ${FSLDIR}/etc/fslconf/fsl.csh
set path = (${FSLDIR}/bin $path)
If you want to use the loadsharing system, then replace the last line above with the following:
set path = (${FSLDIR}/bin/loadshare/bin $path)
In order for this to work when you login across linux machines, you will (I'm afraid) also need to put the same lines in your ~/.login file. Put these lines somewhere between the lines # Space for personal defaults and # End space for personal defaults in the ~/.login file. By using this method load sharing is not used automatically.
FSL ALIAS suggestions
Occasionally, the FSL GUIs will freeze if you launch them from a terminal with the '&' command and then try to use the terminal. To avoid this problem just add a couple ALIAS commands to your .cshrc file, as follows:
#FSL Aliases
alias fslview 'xterm -e fslview &'
alias fsl 'xterm -e fsl &'
(Remember to source the .cshrc file after editing it, by typing 'source ~/.cshrc' in a terminal)
Now when you type 'fsl' in a terminal it will open the GUI from a new terminal (if you close the new terminal it will close the GUI, and viceversa). This will allow you to still use the terminal in which you typed 'fsl' without freezing the GUI.
If there are other GUIs you use often, just create other alias commands just by teplacing 'guiname' with the command to call the GUI in the following line:
alias guiname 'xterm -e guiname &'
Testing New FSL Versions
FSL has a little tool called FEEDS suite that can be used to run tests on a new FSL installation, to check that all the bits and pieces run smoothly. I [MM] created a small script that allows to run the FEEDS suite by typing one command (I show the help line that is printed if you omit the two arguments):
./Evaluation_Script_1.csh 'fslversion' 'fslbit'
*****USAGE: Evaluation_Script_1.sh 'fslver' 'fslbit'
'fslver' is the FSL version (e.g. fsl-4.1.4)
'fslbit' is the 'bit' version (i.e. 64 or 32) [default 64]
The only presupposition of this script is that the version you want to test (fsl-#.#.#) has been unpacked in the following path:
/imaging/local/software/fsl/fsl64/fsl-#.#.#/fsl (for the 64 bit)
/imaging/local/software/fsl/fsl32/fsl-#.#.#/fsl (for the 32 bit)
To test the latest fsl (4.1.4 64bit) you just have to type:
./Evaluation_Script_1.csh fsl-4.1.4
(The script will warn you that if the second argument is missing it defaults to 64bit)
To test the 32bit version, however, you have to specify that:
./Evaluation_Script_1.csh fsl-4.1.4 32
Once you launch the command it will ask you to check the FSL path and version details before running FEEDS. Once testing is done, the info is saved by default in a file named Feeds_Report_fsl-#.#.#_##bit.log. The important thing is that no error exceeds 1% (in fact the last line of the log should let you know whether all errors are below 1%). If you get errors in excess of that figure and you are sure the installation was correct, you may want to send the log to the FSL people for help.
See the FEEDS page here: http://www.fmrib.ox.ac.uk/fsl/feeds/doc/index.html
2008/12/15 Installed latest FSL
Type
fsl_4.1.2_setup
to use it[RC]
2008/10/6 small FSL patch requested by Mirjana
Ask her if you're curious [RC]
2008/9/15 FSL patches applied as requested by Eleftherios
You may now choose between the patched version
fsl_4.1.0_setup
and the unpatched one
fsl_4.1.0_nopatches_setup
[RC]
2008/9/1 and 2008/9/2 Installed FSL 4.1.0
Type
fsl_4.1.0_setup
to use it
Fixed, added load sharing wrappers, accidentally deleted fsl3.2, hope no-one need it.
[RC]
2008/02/06 Added load balancing to FSL
All FSL 4.0.1 commands are now executed with load balancing.
Details... wrote python script /imaging/local/spm/loadshare/runfsl.py which launches an FSL command on the currently least busy machine. Then, /imaging/local/spm/loadshare/fslwrappers.py which makes symbolic links in /imaging/local/linux/bin/fsl-4.01/bin/loadshare/bin
This directory is now added by fsl_4.0.1_setup instead of the one with the actual commands in.
If you wish to run multiple scripts or jobs in parallel launch with separate xterms like this:
xterm -e [your command 1] &
xterm -e [your command 2] &
e.g., xterm -e feat myscript.fsf &
[RC, MM]
2007/12/12 Added FSL 4.0.1
To use, type
fsl_4.0.1_setup
at the Linux prompt