Installation via PyCharm¶
The installation process is tested on three x86_64 platforms:
Linux (Ubuntu 18.04)
Mac OS (High Sierra 10.13.6)
The following software should be installed:
Git: for installing SPM, Psychtoolbox and OpenNFT
PyCharm Professional or Community
Python x86_64 3.6.0-3.8.6
The minimum system requirements for OpenNFT are 8 GB RAM, i5 CPU with 2 or 4 free cores for two modes of the software using 3 or 4 Matlab processes, respectively, which needs to be compromised with the neurofeedback study design complexity, computational demands and the repetition time of the data acquisition. The recommended system configuration is 16 GB RAM and i7 CPU with 4 free cores. The maximum number of Matlab processes is defined by the end-user and is limited by the local workstation capabilities.
Create Project by cloning from GitHub repository¶
Link to the main repository,
or, if you plan to contribute to the project, create the fork repository and use your own link:
Create and Activate Virtual Environment¶
To create the virtual environment, go to File -> Settings -> Project Interpreter
Set the new virtual environment location and choose the interpreter:
To activate virtual environment, close (click cross near Local) and re-open (click Terminal button) Terminal window.
Install from Project Directory¶
MATLAB will be found automatically
pip install -U pip setuptools wheel pip install -e .
If there are several MATLAB versions, you have to install requirements and specify the MATLAB root directory during OpenNFT installation.
pip install -U pip setuptools wheel pip install -U -r requirements.txt pip install --install-option "--matlab-root=<MATLABROOT>" -e .
Check the installation: Check Installation
Run Application from PyCharm¶
Create Run Configuration to run OpenNFT:
Specify the Module name as “opennft” (NOT Script path) and Project interpreter according to the created Virtual Environment:
To create the configuration, the checkbox
Store as project file may be required: Run configuration problem.
or run the command in the Terminal: