CGTools simulates lipid bilayer with a systematically solvent-free coarse-grained model. The source code can be downloaded here.
Related Information: Please find other related code and software in our Source Code Library.
|Basic Description||Installation||Quick Start||Code Structure||Tests & Examples||References||Contact|
License Information: CGTools is free software; you can redistribute it and/or modify it under the terms of the Creative Commons Non-Commercial License 3.0.
Written in Tcl, thus nothing need to be compiled. Untar the archive in any directory. Set the CGTOOLS_DIR environment variable to your shell, setting it to its installation path. For example, under bash, if extracting the archive in the HOME directory, one should add to ‘~/.bashrc’:
where the executable cgtoolsmain.tcl is located inside $CGTOOLS_DIR. Don’t forget to add this folder to your $PATH as well, and source your bash.
- In order for cgtools to be used whithin ESPResSo:
Open your espresso configuration file ‘~/.espressorc’ (create a new one if necessary) and add the following two lines:
lappend auto_path "$env(CGTOOLS_DIR)/srcmembrane/" source $env(ESPRESSO_SCRIPTS)/parallel_tempering.tcl
Also, for the force field to work properly, you should copy the ‘myconfig.h’ file included in the home directory of cgtools to the home directory of ESPResSo. This will activate all (or almost all!) the necessary features of ESPResSo to run the simulations properly.
- In order to use the ‘loadseries’ command in VMD, you must source a file to your ~/.vmdrc. To do so, copy the file ‘vmd_plg.tcl’ located in the ‘vmd_plugin/’ directory wherever you want. Then append (or create) the init file ~/.vmdrc by using
where you should replace […] by the directory you chose for the ‘vmd_plg.tcl’ file.
- Set path for executable ESPResSo file and scripts: For example, if installing ESPResSo in the HOME directory, and the executable file “Espresso_bin” is in the folder of “$HOME/Espresso/obj-Core-pc-linux”, one should add to ‘~/.bashrc’:
export PATH=$HOME/Espresso/obj-Core-pc-linux/:$PATH export ESPRESSO_SCRIPTS=~/Espresso/scripts"
cgtools will *not* run unless a configuration file is specified in argument. The main script should be parsed inside Espresso:
> Espresso cgtoolsmain.tcl [-new] [-replica [-connect HOST]] [-annealing] [-annealfast]
where the brackets represent optional choices.
'-new' starts a new computation by deleting the existing folder if there is any, without this choice, the simulation will resume from the last checkpoint. '-replica' starts a parallel tempering simulation host. The different simulation temperatures are parameterized in the CONFIG_FILE. '-connect HOST' argument is required for slaves to connect to the host. '-annealing' starts an annealing simulation. '-annealfast' starts a fast annealing process, afterwards equilibrium the system at the end temperature. Note that the optional arguments can be alternated, and they do not require brackets.
At the end, the script will have created a new directory with stored configuration files inside.
The ‘configs/’ folder contains several configuration files that are ready to be ran.
We refer the user to the ‘configs/examples’ folder which contains examples.
INITIAL CONFIGURATION FILEs:
Parameters for bonded interacting functions: set in ‘overlapcoffs/’ folder.
Nonbonded tabulated force field: set in ‘forcetables/’ folder.
The main script ‘cgtoolsmain.tcl’ is at the root of the archive. It mainly reads the configuration file, and starts relevant routines for the output.
The ‘configs/examples’ folder contains example scripts that can be used to build membranes.
The ‘srcmembrane/’ folder contains all the source code for membrane simulations.
- ‘espresso/’ – all routines that are related to the integration of the script in Espresso. From here will be ran the MD integrator to run a simulation.
- ‘generation/’ – will build a membrane, generate topology and configurations.
- ‘mmsg/’ – a standard output wrapper. Easier to determine to which part of the code a given message belongs to. This was written by Ira Cooke.
- ‘utils/’ – contains lots of useful routines. Mainly math-geometry functions that are used to build a membrane, read and write files.
- ‘analysis/’ – contains analysis routines for bilayer membrane.
Tests & Examples
The package includes simulation examples of POPC, DOPC and DPPC lipid systems.
- Compute RDFs, density profile of a POPC bilayer membrane, in the folder of “cgtools”, run a command line:
mpirun -np 4 Espresso_bin cgtoolsmain.tcl -n 4 configs/examples/popcbilayer.tcl
a output folder “popcbilayer_288” will be produced in the folder of cgtools.
- Simulate a self-assembly process of a lipid system, in the folder of “cgtools”, run a command line:
mpirun -np 4 Espresso_bin cgtoolsmain.tcl -n 4 configs/examples/random.tcl
a output folder “random_288” will be produced in the folder of cgtools.
- Simulate a DOPC bilayer membrane, in the folder of “cgtools”, run a command line:
mpirun -np 4 Espresso_bin cgtoolsmain.tcl -n 4 configs/examples/dopcbilayer.tcl
a output folder “dopcbilayer_288” will be produced in the folder of cgtools.
- Simulate a DPPC bilayer membrane, in the folder of “cgtools”, run a command line:
mpirun -np 4 Espresso_bin cgtoolsmain.tcl -n 4 configs/examples/dppcbilayer.tcl
a output folder “dppcbilayer_288” will be produced in the folder of cgtools.