GENESIS Tutorial 1.1 (2022)
Installation of GENESIS for Tutorials
Preparation of the directory
First, let’s create a working directory for the GENESIS tutorials under your
home directory (/home/username/
) by executing the following commands. We will
set up a main directory named GENESIS_Tutorials-2022
, and inside it, create two
subdirectories: Programs
and Data
.
Programs
will store the main software used in this project, such as the GENESIS executable.Data
will store external resources that are commonly used throughout the tutorials, including PDB files (see Tutorial 2.1) and force field parameter files (see Tutorial 2.2).
Therefore, within the Data
directory, we will also create two subdirectories:
PDB
and Parameters
.
For downloading the actual tutorial materials, we will use Git to clone the
repository into a subdirectory named genesis_tutorial_materials
(starting from
Tutorial 3 onward).
# Move to the home directory
$ cd
$ pwd
/home/username
# Create a directory for this project
$ mkdir GENESIS_Tutorials-2022
$ cd GENESIS_Tutorials-2022
# Create main directories
$ mkdir Programs Data
$ git clone https://github.com/genesis-release-r-ccs/genesis_tutorial_materials
$ ls
Data Programs genesis_tutorial_materials
# Create sub-directories
$ mkdir Data/PDB
$ mkdir Data/Parameters
Download GENESIS
These tutorials were originally developed using GENESIS version 2.0.0. However, they are expected to be compatible with all releases in the GENESIS 2.x series.
Let’s download and put the GENESIS source code in Programs
:
# Put the source code of GENESIS in the "Programs" directory
$ cd Programs
$ git clone https://github.com/genesis-release-r-ccs/genesis.git
$ cd genesis
# Optional
$ git checkout v2.0.0
Install GENESIS
Now, let’s run the configure
command. This script automatically checks your
computing environment and generates a Makefile
with appropriate compilation
options for your system.
If you encounter any issues during this process, please refer to the GENESIS user manual or visit the Installation guide for troubleshooting tips.
Once configure completes successfully, compile and install the program using
make
and make install
.
This will create a bin
directory in your current location and install the
compiled programs there. After installation, you will find several executables
in the bin
directory. Among them, atdyn
and spdyn
are the main MD
programs. The rest are auxiliary tools for trajectory analysis.
Starting from Tutorial 3, we will use many of these tools throughout our simulations and analyses.
# Install GENESIS
$ ./configure
$ make
$ make install
Here, we did not add any options to the configure
command. This simple command
will install GENESIS running on a CPU. In fact, most tutorials are designed to
use the CPU version. If you want to run the tutorials using CPU+GPU, please add
the options for GPU. However, note that in this case only
spdyn
will be installed, and some tutorials cannot be run with spdyn
alone.
In the example above, we did not specify any options with the configure
command.
This default setup installs the CPU version of GENESIS, which is sufficient for
most of the tutorials in this series.
If you wish to run GENESIS using both CPU and GPU, please refer to the GPU installation options and add the appropriate flags during configuration.
Note: When using the GPU option, only the spdyn
program will be installed.
Some tutorials in this series require the atdyn
program and therefore cannot
be completed with spdyn
alone. Be sure to choose the installation method that
matches your needs.
Let’s check the directory
Now, we have constructed the following directory structure:
/home/username
+ GENESIS_Tutorials-2022 # Project name
|
+ Programs # Main software for this project
| + genesis
| + src # Source code of GENESIS 2.0.0
| + bin # Binary code of GENESIS 2.0.0
| + doc # User manual of GENESIS 2.0.0
| + tests # Regression tests
| + ...
|
+ Data # External data of this project
| + PDB
| + Parameters
|
+ genesis_tutorial_materials # Simulation materials
| + tutorial_2.3
| + tutorial_3.1
| + tutorial_3.2
| + ...
A Note on Installation and Directory Organization
Some users may wish to install programs in system-wide directories such as
/usr/local/bin
. However, this approach can make it difficult to trace where
the original source code resides, especially in large collaborative projects.
To avoid such confusion, we recommend installing all software locally, within
the project directory.
In our tutorial, we created a Data
directory to store all external input
files. This includes files such as PDB structures, force field parameters, and
other reference data. Keeping these files in a dedicated Data
directory helps
to clearly distinguish input data from the results and ensures that you can
easily track what was used during simulations. In real research scenarios, this
could include unpublished PDB files provided by collaborators — and it’s
especially important to preserve their integrity. Storing them in a dedicated
location helps avoid accidental overwrites or modifications.
Why Good Directory Hygiene Matters
Throughout this tutorial series, we will also introduce simple techniques to keep your project directory clean and well-organized. In computational research, large numbers of files are often generated automatically. Without a clear and consistent directory structure, it’s easy for things to get messy — leading to:
- Confusion and mistakes in simulation or analysis steps
- Difficulty in writing reports or publications
- Poor reproducibility and data traceability
- Frustration when handing the project off to other team members
A cluttered directory is not just inconvenient — it can also hinder your ability to publish results effectively.
By following the practices shown in this tutorial, we hope you will develop good habits for managing your research data and code, helping to maintain both scientific rigor and collaborative efficiency.
Written by Takaharu Mori@RIKEN Theoretical Molecular Science
Laboratory, Dec. 16, 2021
Edited by Cheng Tan@RIKEN Center for Computational Science, Jun. 05, 2025