1. Introduction
1.1. What is ABCrystal?
ABCrystal is a light-weighted but powerful program for atomic and molecular crystal structure predictions. In one sentence, with a molecular structure and its Z, ABCrystal will give you a set of possible crystal structures (both atomic positions and cell are optimized) under specified pressure and crystal family in several seconds or hours by itself without any third-party software.
1.2. ABCrystal Information
ABCrystal was initialized by Dr. Jun Zhang since 2015 and is still actively developed. If you have any bug reports, comments, suggestions or the possibility of cooperation on ABCrystal, please feel free to contact to Dr. Jun Zhang via E-mail:
The latest version of ABCrystal can be obtained from:
1.3. ABCrystal Citation
Attention
The best way to support the development of ABCrystal is that in any published works using ABCrystal, please include the following references:
Zhang, J. ABCrystal XX 2024, XX, XX-XX.
Zhang, J.; Dolg, M. Global Optimization of Clusters of Rigid Molecules Using the Artificial Bee Colony Algorithm. Phys. Chem. Chem. Phys. 2016, 18, 3003-3010.
1.4. Installation of ABCrystal
ABCrystal is an out-of-box program. When you download ABCrystal, it is a .zip or .tar.gz file. Once you decompress it, ABCrystal is ready to work so actually no installation is needed. Please note that the current version of ABCrystal does not have a graphic user interface (GUI). One must use it in the command line of Windows or Linux.
Below are some tips about running ABCrystal.
1.4.1. For Windows Users
You can call ABCrystal with its absolute path every time, or set path variable to the directory where ABCrystal resides.
Assume you put ABCrystal in the directory D:\ABCrystal
, then right-click This PC and click Properties, Advanced System Settings, and Environment Variables. In System variables
, select PATH
and click Edit. In the editbox, add ;D:\ABCrystal
at the end of the texts in it, and click OK to confirm it.
Tip
Now, you can press Shift and right-click in any explorer window and click Open cmd window here to call the command line. Type abcrystal
to confirm that you can already call ABCrystal commands.
1.4.2. For Linux Users
You can call ABCrystal with its absolute path every time, or set path variable to the directory where ABCrystal resides.
Assume you put ABCrystal in the directory /home/you/bin/ABCrystal
, then open your .bashrc
and at the end of the file, add the following statement:
1export PATH=$PATH:/home/you/bin/ABCrystal
2export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/you/bin/ABCrystal
then run source ~/.bashrc
. Type abcrystal
to confirm that you can already call ABCrystal commands.
Sometimes you may encounter some errors during running ABCrystal on Linux. Here are some useful tips.
Tip
/usr/lib64/libstdc++.so.6: version `GLIBCXX 3.4.21’ not found
Please install or activate a GCC of higher version, like GCC 8.1.0. Sometimes you can try commands like module load gcc/8.1.0
to solve this problem.
Tip
Incorrect format near …
If you prepare an input file on Windows and copy it to Linux, ABCrystal may not recognize its format and report such an error. In this case, please transform the Windows file format into Linux one by dos2unix
or using :set fileformat=unix
in VIM.
1.4.3. For OpenMP
ABCrystal is parallelized by OpenMP. By default, it will use up all the CPU cores by default. If you want to change this behavior, please set OMP_NUM_THREADS
variable to the number of CPU cores you want to use.
1.5. ABCrystal Files
When you decompress ABCrystal, you will find several files, including executables and some plain text files:
abcrystal
The ABCrystal essential file.topgen
It generates topology information for a molecule to be calculated.testfiles
Files for testing ABCrystal functions.misc/charmm36
Some collected CHARMM force field parameter files forrigidmol
.misc/crystal-cp2k-dft.inp
An input template file for CP2K to perform DFT calculations for crystals.