To download TheVirtualBrain check out the download site
The TVB software package can be used in 3 different configurations:
on a single machine (personal usage). This machine will need to meet the Application requirements for both the visualization and the computation/storage part. Any operation launched will use resources from current machine (graphic card, CPU, disk and RAM).
in a client/server configuration, where TVB is installed on a server and made accessible to an unlimited number of users.
This configuration is recommended when you have a powerful server to be used as back-end, where TVB is running and simulation or analysis operations are to be executed. The server machine will not require powerful graphics, as visualization will not be done here at all. Only the computation requirements from above will need to be met by the server.
The visualization can be accessed from a personal computers by a browser (via HTTP). A network connection needs to exist between the server where TVB is running and the computer doing the visualization and access. http://${SERVER-IP}:8080 is the default URL.
using a cluster (similar with server installation, but with parallelization support). Please note that for cluster installations, OAR is expected to be configured separately from TVB and accessible to the user for which the TVB software is launched.
To install TheVirtualBrain unzip the package and it will create a folder TVB_Distribution.
TheVirtualBrain developers might need to install TVB differently.
TheVirtualBrain has a web application GUI interface that can be accessed remotely. See the GUI guide for how to use it.
It also has several flavors of scripting interfaces. These are powerful programmatic interfaces. Unlike the GUI they are not meant be used remotely and their leaning curve is steeper. See the console interface for usage.
In the TVB_Distribution folder you should find a sub-folder bin with a number of scripts:
On Linux these scripts will have the .sh termination, on Mac the .command termination and on Windows the .bat termination. We will omit the termination in this manual. For example if you are using Windows and tvb_start is mentioned in this document then tvb_start.bat is meant. The examples below are for Linux.
These scripts will start and control TheVirtualBrain.
For Mac users the TVB_Distribution folder contains an application file tvb.app. To start TheVirtualBrain in your web browser double click tvb.app. Please be patient, as depending on your computer resources, the startup process might take about 1-2 minutes.
On the latest versions of MacOS, you should allow from Settings –> Security and Privacy the newly downloaded executable to run.
For Linux and Windows users, to start TheVirtualBrain in your web-browser, run the tvb_start script in TVB_Distribution/bin. On all platforms you can also double click the script’s icon.
$ cd TVB_Distribution/bin
$ ./tvb_start.sh
To make sure that no processes will remain open after you use the application, you should always close TheVirtualBrain by running the tvb_stop script.
$ ./tvb_stop.sh
Note
The first time you configure TVB, it will write a file .tvb.configuration in your user home folder. In case you run into problems when this write is about to happen, you can set environment variable TVB_USER_HOME to a value more appropriate for your environment (for example pointing towards TVB_Distribution unzipped location). Specify a value for the environment variable TVB_USER_HOME in distribution command file to have it ready for multiple TVB runs.
There are more scripting interface flavors. They differ in what shell is used and in how many TheVirtualBrain services they use. In the COMMAND_PROFILE interfaces you can use the data management facilities of TheVirtualBrain. In the LIBRARY_PROFILE you use TheVirtualBrain as you would use a library and it will not manage data for you.
The most user friendly interface is the Jupyter notebook one. It is a LIBRARY_PROFILE interface. It’s shell is the browser based jupyter notebook. To launch it run the jupyter_notebook script from the TVB_Distribution/bin/ folder.
$ cd TVB_Distribution/bin
$ ./jupyter_notebook.sh
The distribution script is used from a terminal to control the TheVirtualBrain distribution. Run distribution -h too get help with this command:
$ ./distribution.sh -h
To access the console interface, run in a terminal distribution start COMMAND_PROFILE or distribution start LIBRARY_PROFILE. A Python shell will appear.
$ ./distribution.sh start COMMAND_PROFILE
One of the first actions you will have to perform after starting TheVirtualBrain is to configure it. If you are installing TheVirtualBrain for personal usage then the default configuration is sensible and you may accept it without detailed knowledge.
The default configuration will place TheVirtualBrain projects in a folder named TVB. This folder will be created in the users home folder.
However for a client server or cluster setup you will need to take some more time to configure TVB. See the Configuring TVB section for details.
To uninstall, stop TheVirtualBrain, then simply delete the distribution folder, TVB_Distribution/ :
$ ./tvb_stop.sh
$ rm -r TVB_Distribution/
This will not remove user data.
To upgrade to a new version, uninstall the current version then install the new distribution.
Do not remove your TheVirtualBrain projects stored in home_folder/TVB ! The first run after update will migrate your projects to the new version.
To purge all user data stored by TheVirtualBrain on your machine run the tvb_clean. It will reset your TVB database and delete all data stored by TheVirtualBrain. Be careful! Use this to get to a clean state, as if TheVirtualBrain had just been installed and never used.
Note
You do not have to do this to uninstall or update TheVirtualBrain !
$ # This will delete all TVB projects and configuration !
$ ./tvb_clean.sh
The above operation will not touch TVB_Distribution, which represents your downloaded TheVirtualBrain app, but only TVB generated user data, as result of using the GUI interface, mainly.
We keep TheVirtualBrain demo data versioned on Github: https://github.com/the-virtual-brain/tvb-data. There you can find a Default TVB Project, structural Connectivity, Surfaces, Mappings, Sensors, etc.
TheVirtualBrain application comes with a subset of this demo-data, which can be found inside TVB_Distribution under the following path:
Note
Everything under TVB_Distribution is not to be removed or edited.
The files under TVB_Distribution/..../tvb_data and the git repository tvb_data, can be used together with the GUI and/or the script interfaces, or taken as reference by you, when creating TVB compatible dataset.
The current TheVirtualBrain package was tested on :
As TheVirtualBrain redefines what’s possible in neuroscience utilizing off-the-shelf computer hardware, a few requirements are essential when using the software.
Requirements for front-end visualization:
Requirements for computation/storage power, dependent on the number of parallel simulations that will be executed concurrently: