Winmostar(TM) V9用Cygwinインストールマニュアル

 cygwin_wmのビルド方法


WinmostarのMD, Solidメニューのソルバ起動、ポスト処理等を行うには、各種パッケージがCygwin上でコンパイルされ実行できる形にインストールされていることを前提としています。
各種ソルバに依存するパッケージは下記の通りです。

Gromacs : Cygwin, Gromacs, Acpype, AmberTools, ERmod
LAMMPS : Cygwin, Acpype, AmberTools (LAMMPS本体のインストール方法はこちら)
Amber : Cygwin, AmberTools
MODYLAS : Cygwin, MODYLAS, Acpype, AmberTools
Quantum ESPRESSO : Cygwin, Phonopy, BoltzTraP (Quantum ESPRESSO本体のインストール方法はこちら)
OpenMX : Cygwin, OpenMX

これらのパッケージのライセンスはGNU GPL(PhoonopyはBSDライセンス)のもとに配布されており、無償で利用することができます。

弊社環境にて動作を確認した実行環境はWindows 10です。
計算結果の保証は致しかねますのでご了承願います。

 1. Cygwin

Cygwinのsetup-x86.exeをhttp://www.cygwin.com/からダウンロードします。
※2018/4/12現在の最新バージョンは2.891です。
setup-x86.exeのウィザードにしたがってcygwinをインストールします。
インストールする必要のあるパッケージはAll defaultと下記のパッケージです。
バージョン番号は動作確認したバージョンです。

  Archive - libbz2-devel 1.0.6-3
  Archive - unzip 6.0-17
  Devel - autoconf 13-1
  Devel - cmake 3.6.2-1
  Devel - flex 2.6.4-2
  Devel - gcc-fortran 6.4.0-5
  Devel - gcc-g++ 6.4.0-5
  Devel - make 4.2.1-2
  Devel - pkg-config 0.29.1-1
  Devel - subversion 1.9.7-2
  Graphics - gnuplot 5.2.2-1
  Graphics - ImageMagick 6.9.9.11-3
  Graphics - ghostscript 9.23-1
  Interpreters - m4 1.4.18-1
  Libs - libboost-devel 1.64.0-1
  Libs - libfftw3-devel 3.3.6-pl1-1
  Libs - libfreetype-devel 2.6.5-1
  Libs - libmpfr4 3.1.6-1p1
  Libs - libnetcdf-devel 4.6.1-1
  Libs - libopenmpi-devel 1.10.7-1
  Libs - libpng-devel 1.6.34-1
  Libs - zlib-devel 1.2.11-1
  Math - bc 1.06.95-2s
  Math - liblapack-devel 3.7.1-1
  Net - openssh 7.7p1-1
  Python - python-h5py 2.5.0-1
  Python - python2-cython 0.25.2-1
  Python - python2-devel 2.7.14-1
  Python - python2-numpy 1.11.2-1
  Python - python2-pip 9.0.1-1
  Python - python2-yaml 3.12-1
  Science - openbabel 2.3.2-6
  Shells - tcsh 6.20.00-1
  Utils - dos2unix 7.4.0-1
  Utils - patchutils 0.3.4-1
  Web - wget 1.19.1-2


Package: _/libfontconfig-common
fontconfig_dtd.sh exit code 2

というメッセージが出ることがありますが、ここでは無視します。
文字化け防止のために言語を英語にしておきます。
/etc/profile.d/lang.sh
を編集して、
export LANG=C
を追加しておきます。

また、graceをインストールする必要がありますが、cygwinのパッケージには問題があるので、手動でインストールします。
grace-5.1.25.tar.gzをftp://plasma-gate.weizmann.ac.il/pub/grace/src/grace5/からダウンロードします。
Cygwinのterminalを立ち上げ、下記のようにコンパイルします。

$ tar xvfz grace-5.1.25.tar.gz
$ cd grace-5.1.25
$ ./configure
$ make
$ make install

/etc/profile.d/winmostar.shに
export PATH=$PATH:/usr/local/grace/bin
を追加します。

 2. Gromacs

gromacs-5.0.7.tar.gzをhttp://www.gromacs.org/Downloadsからダウンロードします。
※5.1以降はgmx rdfに互換性がないため、5.0.7を使用します。
Cygwinのterminalを立ち上げ、下記のようにコンパイルします。(AVXを有効にする場合は、cmake時に-DGMX_SIMD=AVX_256とします)

$ tar xvfz gromacs-5.0.7.tar.gz
$ cd gromacs-5.0.7
$ mkdir build
$ cd build
$ cmake .. -DGMX_BUILD_OWN_FFTW=ON -DGMX_GPU=OFF -DGMX_SIMD=SSE2 -DGMX_DOUBLE=OFF -DGMX_USE_RDTSCP=OFF
$ make
$ make install
$ cd ..
$ mkdir build_d
$ cd build_d
$ cmake .. -DGMX_BUILD_OWN_FFTW=ON -DGMX_GPU=OFF -DGMX_SIMD=SSE2 -DGMX_DOUBLE=ON -DGMX_USE_RDTSCP=OFF
$ make
$ make install

/usr/local/gromacsにインストールされます。

/etc/profile.d/winmostar.sh に
source /usr/local/gromacs/bin/GMXRC
を追加します。

make時にFFTWが自動的にダウンロードされますが、お使いのネットワークによってはプロキシサーバによって遮断されることがあります。
その場合は、あらかじめFFTWのみをビルドしたうえで、cmakeのオプションから-DGMX_BUILD_OWN_FFTWを除いてGromacsをビルドしてください。

 3. AmberTools

AmberTools14.tar.bz2をhttp://ambermd.org/AmberTools14-get.htmlからダウンロードします。
下記のようにコンパイルします。

$ tar xfj AmberTools14.tar.bz2
$ mv amber14 /usr/local/
$ cd /usr/local/amber14
$ export AMBERHOME=`pwd`
$ echo y | ./configure -cygwin -noX11 -nosse gnu
$ source amber.sh
$ make install

/etc/profile.d/winmostar.sh に
source /usr/local/amber14/amber.sh
を追加します。

※コンパイルに失敗した場合は下記のように修正します。

・AmberTools/src/chamber/psf_strings.F90

llの宣言をlen=llの前に移動させます。

 subroutine next_float(l,ll,value)

   implicit none

   real(kind=8) :: value
   character(len=ll), intent(inout) :: l
   character(len=ll) :: tmp_l
   character(len=80) :: fmt
   integer, intent(inout) :: ll

↓

 subroutine next_float(l,ll,value)

   implicit none

   real(kind=8) :: value
   integer, intent(inout) :: ll
   character(len=ll), intent(inout) :: l
   character(len=ll) :: tmp_l
   character(len=80) :: fmt


subroutine skip_field(l,ll)
   implicit none
   character(len=ll), intent(inout) :: l
   character(len=ll) :: tmp_l
   integer, intent(inout) :: ll

↓

subroutine skip_field(l,ll)
   implicit none
   integer, intent(inout) :: ll
   character(len=ll), intent(inout) :: l
   character(len=ll) :: tmp_l

・AmberTools/src/cpptraj/src/StringRoutines.cpp

先頭行に
#define _GNU_SOURCE
を追加します。

・AmberTools/src/reduce/reduce_src/GraphToHoldScores.cpp

先頭行に
#include <iostream>
を追加します。

さらに、DegreeTwoEdge_ths::whichVertex関数内で

        std::cerr << "CRITICAL ERROR IN whichVertex(" << vertex_index << ") called on edge [" <<

↓

        std::cerr << "CRITICAL ERROR IN whichVertex(" << vertex_index << ") called on edge [";

とします。

・AmberTools/src/cphstats/utilities.cpp

bool fexists(string const& fname) {
   ifstream f(fname.c_str());
   return f;
}

↓

bool fexists(string const& fname) {
   ifstream f(fname.c_str());
   return bool(f);
}

とします。

 4. Acpype

下記のようにAcpypeを取得します。

$ svn checkout http://svn.code.sf.net/p/ccpn/code/branches/stable/ccpn/python/acpype/ acpype -r 8810

カレントディレクトリがC:\cygwin_wmの下にある場合、pythonの実行に失敗することがあるため、 acpypeのpythonを絶対パスで指定するようにします。
$ vi acpype/acpype.py
#!/usr/bin/env python

#!/usr/bin/python

$ mv acpype /usr/local

/etc/profile.d/winmostar.sh に
export PATH=$PATH:/usr/local/acpype
を追加します。

また、簡易インストール方法で配布されているcygwin_wmのacpype.pyには、対応する原子を増やすための修正が入っています。

 5. ERmod

ermod-0.3.4.tar.gzをhttp://sourceforge.net/projects/ermod/files/?source=navbarからダウンロードします。
以下のようにコンパイルします。

$ tar xvfz ermod-0.3.4.tar.gz
$ cd ermod-0.3.4/vmdplugins
$ make
$ cp compile/*.so libexec/
$ cd ..
$ ./configure --prefix=/usr/local/ermod --disable-mpi --enable-openmp
簡易インストール方法で配布されているcygwin_wmでは--disable-optオプションを追加しています。
$ make
$ make install

詳細はERmodのwikiページにてご確認下さい。

 6. MODYLAS

MODYLASの利用にはMODYLASライセンスへの同意が必要です。

MODYLAS_1.0.4.tar_1.gzをhttp://www.modylas.org/から入手します。
以下のようにコンパイルします。

$ tar xvfz MODYLAS_1.0.4.tar_1.gz
$ cd MODYLAS_1.0.4/source
$ vi configure
COMDEFSの#以降を削除し、-openmp -parallel -fppを-cppにします。
$ ./configure --with-kind-fortran-compiler=INTEL --prefix=/usr/local/MODYLAS_1.0.4
$ cd src
$ vi parse_f.f
parse_f.fの363行目の
9000 format(‘ERROR:…’, i)

9000 format(‘ERROR:…’, i8)
に書き換えます。
$ make
$ make install

/etc/profile.d/winmostar.sh に
export PATH=$PATH:/usr/local/MODYLAS_1.0.4/bin
を追加します。

詳細はMODYLASのHPにてご確認下さい。

 7. OpenMX

openmx3.8(openmx3.8.tar.gz)およびpatch(ここでは05/Mar./2018版のpatch3.8.4.tar.gzとする)をhttp://www.openmx-square.org/download.htmlから入手します。
以下のようにコンパイルします。

$ tar xvfz openmx3.8.tar.gz
$ cd openmx3.8/source
$ cp ../../patch3.8.4.tar.gz .
$ tar xvfz patch3.8.4.tar.gz
$ touch TRAN_Main_Analysis.c
$ touch TRAN_Main_Analysis_NC.c
$ vi makefile
makefileにおいてCC, FC, CPPFLAGS, LIBを以下の様に変更します。
CC=gcc -fopenmp -O3 -I/usr/include -Dkcomp -Dnosse
FC=gfortran -O3 -I/usr/include -Dkcomp
CPPFLAGS=-DNDEBUG
LIB=-static /usr/lib/libfftw3.dll.a -llapack -lblas -lgfortran /usr/lib/libmpi_mpifh.dll.a /usr/lib/libmpi.dll.a -lquadmath

$ vi openmx_common.h
openmx_common.hのfp_bsizeの値(59行目で定義)を以下の様に変更します。
#define fp_bsize 200000

$ make
$ make install
$ gcc bandgnu13.c -lm -o ../work/bandgnu13.exe
$ make DosMain
$ cp -r ../../openmx3.8 /usr/local

次に、fermisurfer_1.7.1.zipをhttps://ja.osdn.net/projects/fermisurfer/releases/から入手します。
以下のように解凍しインストールします。
$ unzip fermisurfer_1.7.1.zip
$ cp -r fermisurfer /usr/local/

最後に /etc/profile.d/winmostar.sh に
export PATH=$PATH:/usr/local/openmx3.8/work:/usr/local/fermisurfer/bin
export OPENMX_DATA_PATH=/usr/local/openmx3.8/DFT_DATA13
を追加します。

詳細はOpenMXのHPおよびFermiSurferのHPにてご確認下さい。

 8. Phonopy

phonopy-1.12.6.53.tar.gz をhttps://pypi.python.org/pypi/phonopy/1.12.6.53から入手します。
以下のようにコンパイルします。

$ tar xvfz phonopy-1.12.6.53.tar.gz
$ cd phonopy-1.12.6.53
$ python setup.py install

 9. MDTraj

https://github.com/mdtraj/mdtraj/releases/tag/1.9.0からmdtraj-1.9.0.tar.gzを取得します。
mdtraj-1.9.0.patchを取得します。
以下のようにコンパイルします。

$ pip2 install ase matplotlib pandas
$ tar xvfz mdtraj-1.9.0.tar.gz
$ cd mdtraj-1.9.0
$ patch -u -p1 -d mdtraj < ../mdtraj-1.9.0.patch
$ python2 setup.py install

 10. BoltzTraP

https://www.imc.tuwien.ac.at/forschungsbereich_theoretische_chemie/forschungsgruppen/prof_dr_gkh_madsen_theoretical_materials_chemistry/boltztrap/からBoltzTraP.tar.bz2(v1.2.5)を取得します。
以下のようにコンパイルします。

$ tar xvfj BoltzTraP.tar.bz2
$ cd boltztrap-1.2.5/src/
$ rm BoltzTraP
$ make
$ cd ../..
$ mv boltztrap-1.2.5/ /usr/local/

/etc/profile.d/winmostar.sh に
export PATH=$PATH:/usr/local/boltztrap-1.2.5/src
export PATH=$PATH:/usr/local/boltztrap-1.2.5/util
を追加します。

以上で、インストールは完了です。

 Citation

1. SOUSA DA SILVA, A. W. & VRANKEN, W. F. ACPYPE - AnteChamber PYthon Parser interfacE.
BMC Research Notes 2012, 5:367 doi:10.1186/1756-0500-5-367 http://www.biomedcentral.com/1756-0500/5/367

2. Antechamber
J. Wang, W. Wang, P.A. Kollman and D.A. Case. "Automatic atom type and bond type perception in molecular mechanical calculations".
Journal of Molecular Graphics and Modelling, 25, 247-260 (2006).
J. Wang, R.M. Wolf, J.W. Caldwell, P.A. Kollman and D.A. Case. "Development and testing of a general AMBER force field".
Journal of Computational Chemistry, 25, 1157-1174 (2004).



Copyright 2008-2019 X-Ability Co., Ltd.