Using GRiP

GRiP comes in three interfaces:

command line (CLI)

The Command Line Interface (CLI) can be run from the terminal and, thus, can be easily used on Linux or Mac or Windows operating systems. To start the simulation, the following command needs to by typed in the terminal

java -Xms32m -Xmx3072m -jar gripCLI.jar params.grp 100

The first parameter represents the parameters file, while the second parameter specifies the number of intermediary points used to track progress through the current simulation.

Note that we asked the system to allocate between 32MB and 3GB of RAM. The user can change the maximum used memory using different values. For smaller systems, the user can start the application with a lower maximum value, such as 2 GB of RAM.

graphical user interface (GUI)

GRiP comes also with a Graphical User Interface (GUI), which can be started from the terminal by typing the following command

java -Xms32m -Xmx3072m -jar gripGUI.jar

The application starts in the simulation setup mode.


Below the menu, there is the parameters input area, where the input parameters values are specified and edited. When the mouse is moved over the text field or checkbox it will generate a Tool Tip with the description of that field. In the case of file choosers, the mouse over the browse button will generate a Tool Tip with the description of the field, while over the non-editable text field a Tool Tip with the full path of the file. The parameters in the setup area are grouped in six section, each in a individual tab.

Finally, at the bottom of the GUI we find the simulation area. To start the simulation the user needs to first load the model, which is achieved by clicking the `Load' button.

Once the model was loaded, the user does not have access to the parameters input area, but they can see the output of the status file. Next, the user can unload the model by clicking `Unload' button (to change the parameters) or start the simulation by clicking `Start' button. The simulation progress is presented in the bottom middle progress bar, and the elapsed and estimated time of the simulation are displayed in the bottom right area.


source code

Since we make the Java source code available, anyone can modify the program to suit various situations, specific to the user. However, the simplest usage of this application does not require knowledge of programming, but rather starting the application graphical or command line interfaces and providing a correct set of parameters for the system.


The steady state files and the dynamic behaviour file(s) are written in csv files. We optioned for this type of file because it can be easily imported and processed in various statistical software (such as R, Matlab/Octave, Maple) and appropriate columns (or functional combination of columns) can be easily plotted in graphical software (such as R or Gnuplot).

Below we will give some examples of graphs plotting the output generated by GRiP.

Affinity vs Occupancy

We considered a random 250 bp DNA sequence and TF molecules which can bind/unbind, hop, jump, slide left/right. The top two figures consider 1 TF molecule, while the bottom two ones consider 2 TF molecules. The second and the last ones consider that a TF molecule covers more than one base pair when representing the occupancy and affinity, while the other two (first and third) the occupancy is represented as the first base pair covered. In the last two figures we use the wig step of 5 and in the last one a wig threshold of 0.5.

affinity vs occupancy

Dynamic Behaviour of TF molecules

We consider a random 250 bp DNA and TF molecules which can bind/unbind, hop, jump, slide left/right. Top 1 TF molecule Bottom 3 TF molecules. On y-axis we represent the position on the DNA, while on the x-axis the time when the position was recorded. The black line on the y-axis represents the affinity for that position of a TF molecule.

dynamic behaviour

Dynamic DNA occupancy

We consider a random 46000 bp DNA and 100 non-cognate TF molecules which can bind/unbind, hop, jump, slide left/right.

free sites

Sliding lengths histogram

We plot the sliding lengths and the actual sliding lengths of a TF on the E.Coli genome.

sliding lengths