# Installation

## System requirements

1. Minimum version of Matlab is R2016b 64-bit. Octave is not supported.
2. Spinach requires 4 GB of RAM for basic simulations, 16 GB for advanced simulations and 64 GB for protein simulations.
3. Spinach requires Parallel Computing Toolbox and Optimisation Toolbox. There is no way to make it work if those are not installed.

## Installation instructions

1. Add the following directories, including subdirectories, to the the top (not the bottom) of the Matlab path list (Menu/File/Set Path):

      <spinach root>/kernel
<spinach root>/etc
<spinach root>/experiments
<spinach root>/interfaces


You may need to allow write access to <matlab root>/toolbox/local/pathdef.m in order to be able to save the updated path file. Make it dead certain that you get the path settings right and there are no other functions in the path that have the same names as Spinach functions: path and name collision with pre-existing user files is the most popular support forum topic.

2. Disable the automatic parallel pool shutdown by unticking the box at Preferences/Parallel Computing Toolbox.

3. Get yourself a second screen if you do not have one already. Having the documentation page on a separate screen is very convenient.

## Getting started

The best way to get started is to look through the code in the /examples directory. Clicking on any Spinach function in the example files and pressing Ctrl-D (Windows) or Shift-Cmd-D (Mac) brings up the function text. All functions are extensively annotated, it is always a good idea to look inside, even if you are not an expert in Matlab programming.

## Multicore and GPU support

The default settings in the example set are conservative. If you have a system with a good GPU, more than 16 GB of RAM, and more than 4 CPU cores, you can usually speed most calculations up significantly by adding

    sys.enable={'greedy','gpu'};


to Spinach options specification. See expert-level options for further details.

Version 1.10, authors: Ilya Kuprov