This repository provides the WaNos used in the PCU-MOF Workflow. This workflow is built with the Simstack framework automates the construction, optimization, and prediction of electronic properties of the PCU topology of metal-organic frameworks. The PCU-MOF workflow consists of three central parts: (1) MOF Builder, (2) MOF Optimizer and (3) MOF Analyzer.
MOF Builder consists of the general WaNo MOF-input, where a user specifies linker molecules, metal node type and desired topology, DFT-Turbomole, where optimization of input linkers is done using TURBOMOLE software, LCmaker and AuToGraFS used to build periodic MOF model.
MOF Optimizer includes WaNo GULP for the pre-optimization of MOFs with the force field potentials, DFT-VASP for MOF optimization using quantum mechanical approach and Format-Converter designed to convert different file formats between software.
MOF Analyzer is assigned to calculate different properties of MOF based on both (a) DFT optimized structures (right branch) or (b) sampled MOF structures during molecular dynamics (MD) simulations using LAMMPS (left branch).
Figure below displays the PCU-MOF workflow as designed in the Simstack client.
Description of the PCU-MOF workflow and the demonstration of several use-cases are available here:
M. Mostaghimi, C. R. C. Rêgo, R. Haldar, C. Wöll, W. Wenzel, M. Kozlowska, Automated virtual design of organic semiconductors based on metal-organic frameworks, Front. Mater., 2022, 9: 840644.
To get this workflow up running:
- Download the Simstack client and install it on your local machine by following the steps detailed in the Simstack documentation.
- Copy the WaNos from this repository to your local WaNo Simstack directory.
- WaNo to perform Quantum Patch can be accessed from Nanomatch.
- The functionality of WaNos and implemented setup is available in the respective WaNo documentation.
After configuring SimStack and copying WaNos, PCU-MOF workflow can be used either on HPC resources provided by AG Wenzel or on the user specific HPC. WaNos are portable and do not depend on HPC architecture. To fulfill requirements of the second case, please follow installation instruction below. Consider also to adapt WaNos to concrete modules available on your HPC and configure both SimStack client and server before running the workflow.
If you want to use HPC resources of AG Wenzel (with already installed all necessary modules), please contact us via mariana.kozlowska@kit.edu and wolfgang.wenzel@kit.edu for an access. After copying WaNos from this repository into WaNos directory inside SimStack and/or workflow into the SimStack workflow directory, you can access WaNos and/or workflow directly via SimStack client. If you use PCU-MOF workflow, it is enough to upload user-defined xyz files of MOF linkers inside the workflow and specify the user-selected setup inside WaNos to run the workflow. You can also drag-and-drop WaNos in order to create your own workflow (keep in mind correct input-output file selection between WaNos). If the same setup should be used for the calculation of MOF library, it is enough just to specify xyz files in a workflow and click the Run button in SimStack. No further modifications are needed.
If you have access to the AG Wenzel HPC, copy the WORKFLOW/PCU-paper-workflow
in the workflow directory of your SimStack. After loading the SimStack, the workflow can be loaded and used straightly.
The best method for installing the software is installing ANACONDA with the following libraries:
ase 3.22.0
numpy 1.21.2
scikit-learn 0.24.1
scipy 1.6.2
os
time
optparse
logging
We installed the anaconda3 and created a py2 and installed the python 2 on it. In the Module directory, you can find the module file for lua module for the MOFsofts and anaconda. The paths of installation for them in the module file are:
Anaconda:/shared/software/anaconda3/
MOFsofts:/shared/software/chem/MOFsofts
If you just copied MOFsofts without module environment, export the following paths:
export PATH=/shared/software/chem/MOFsofts/bin:$PATH
export PATH=/shared/software/chem/MOFsofts/AuToGraFS:$PATH
AuToGraFS_HOME=/shared/software/chem/MOFsofts/AuToGraFS
Also for running lcmaker we need python2 that can run AuToGraFS. Here is a document that explain the installation of python2 environment on anaconda3: Create a Python 2 environment named py2, install Python 2.7:
conda create --name py2 python=2.7
Now you have two environments with which to work. You can install packages and run programs as desired in either one.
Activate and use the Python 2 environment.
Windows:
activate py2
macOS, Linux:
conda activate py2
After activation of py2 environment, the library for AuToGraFS must be installed:
ase, scipy, numpy<1.15.0
There is a module for anaconda for HPCs in the modules directory. The WaNos xml files should be edited according to the place of the related software.
If you are on HPC, make sure that you have access to openbable whenever you want to run the Achmol. If it is not available, you need to install OpenBabel (http://openbabel.org/wiki/Main_Page):
openbabel > 3.0.0
libxml2
swig
Eigen > 2
We used a costomized version of AuToGraFS that is available in AuToGraFS directory. It is based on the python 2 and call the mofgen.py file to run. to install it, copy the dirextory on your system and export the path in your shell. for bash :
export PATH=PATH_TO_AuToGraFS_DIR:$PATH
Caution: As mentioned above, these codes work with openbabel >3.0.0. We test it by compiling openbabel from the source code by the below explanation. You need the openbabel, which is installed or compiled with -DPYTHON_BINDINGS=ON and -DRUN_SWIG=ON . To this, you first need to install swing. If you are using Ubuntu or Mint Linux, you can use the below command.
sudo apt install swig libxml2-dev libxml2 libeigen3-dev
Download the openbabel from http://openbabel.org/wiki/Category: Installation After unzipping it, you can compile it with the below command.
cd TO_OPENBABEL_DIR
mkdir builder
cd builder
cmake .. -DPYTHON_BINDINGS=ON and -DRUN_SWIG=ON -DCMAKE_INSTALL_PREFIX=/opt/obabel/3.1.1
make
make install
After installing openbabel in the /opt/obabel/3.1.1, you should introduce it to your bash and also your python. For this, add the below lines to your bash and source it again.
export PATH=/opt/obabel/3.1.1/bin:$PATH
export LD_LIBRARY_PATH=/opt/obabel/3.1.1/lib:$LD_LIBRARY_PATH
export INCLUDE=/opt/obabel/3.1.1/include:$INCLUDE
export PYTHONPATH=/opt/obabel/3.1.1/lib:$PYTHONPATH
CAUTION: Edit all WaNos xml files in the way that passes the required software (anaconda, openbable, AuToGraFS). For the MOFsofts software, please communicate with Mersad.Mostaghimi@kit.edu.
If you are using PCU-MOF workflow and/or WaNos available in this repository, developed for the MOF design: LCmaker, AuToGraFS, GULP, lammps-interface, LAMMPS, Achmol, SuperCeller, cite us:
M. Mostaghimi, C. R. C. Rêgo, R. Haldar, C. Wöll, W. Wenzel, M. Kozlowska, Automated virtual design of organic semiconductors based on metal-organic frameworks, Front. Mater., 2022, 9: 840644.
If you are interested in further WaNos development for your specific case, contact us via mariana.kozlowska@kit.edu and wolfgang.wenzel@kit.edu
© M. Mostaghimi, C. R. C. Rêgo, W. Wenzel, M. Kozlowska Licensed under the GNU GENERAL PUBLIC LICENSE.