Se não houver uma versão do MEEP no repositório oficial, considere instalá-la a partir da fonte, conforme indicado:
-
Para evitar o caso, se algo der errado, precisamos substituir o
make install
porcheckinstall
:sudo apt-get update && sudo apt-get install checkinstall
-
Dependências: Em uma janela do terminal, executamos:
sudo apt-get install libtool* mpich-dev* lapack* guile-2.0 guile-2.0-dev readline-dev fftw3-* paraview hdf5-* gcc-c++ scalapack-* paraview*
-
Ambientes Variáveis: Em uma janela do terminal, executamos:
gedit .bashrc
Você pode usar outros editores de texto, se quiser. Mover para a última linha e terminar aqui:
LDFLAGS="-L/usr/local/lib -lm" export LDFLAGS CPPFLAGS="-I/usr/local/include" export CPPFLAGS LD_LIBRARY_PATH="/usr/local/lib:$LD_LIBRARY_PATH" export LD_LIBRARY_PATH PATH=/lib64/mpich/bin:$PATH export PATH
Crie o diretório
t
e digite:mkdir t cd t
-
Carregar, compilar e configurar a biblioteca FFTW com suporte de MPI. Esta biblioteca já foi definida em um estágio 1, mas a biblioteca hdf5, por algum motivo, não funciona corretamente. Portanto, é necessário compilá-lo e configurá-lo a partir dos códigos-fonte:
Para este propósito, em uma janela do terminal, executamos:
wget http://www.hdfgroup.org/ftp/HDF5/current/src/hdf5-1.8.14.tar.gz tar -xf hdf5-1.8.14.tar.gz cd hdf5-1.8.14 CC=mpicc CXX=mpicxx F77=mpif77 ./configure –-enable-parallel –prefix=/usr/local make -j4 sudo checkinstall cd ..
-
Biblioteca Libctl: No mesmo lugar que executamos:
wget http://ab-initio.mit.edu/libctl/libctl-3.2.2.tar.gz tar -xf libctl-3.2.2.tar.gz cd libctl-3.2.2 CC=/lib64/mpich/bin/mpicc CXX=/lib64/mpich/bin/mpicxx F77=/lib64/mpich/bin/mpif77 ./configure make -j4 sudo checkinstall cd ..
-
MPB: Nós compilamos e configuramos sem suporte de MPI e OpenMP:
wget http://ab-initio.mit.edu/mpb/mpb-1.5.tar.gz tar -xf mpb-1.5.tar.gz cd mpb-1.5/ CC=/lib64/mpich/bin/mpicc CXX=/lib64/mpich/bin/mpicxx F77=/lib64/mpich/bin/mpif77 ./configure make -j4 sudo checkinstall make distclean
Com suporte de MPI e OpenMP:
CC=/lib64/mpich/bin/mpicc CXX=/lib64/mpich/bin/mpicxx F77=/lib64/mpich/bin/mpif77 ./configure --with-mpi --with-openmp make -j4 sudo checkinstall cd ..
-
Harminv. Execute:
wget http://ab-initio.mit.edu/harminv/harminv-1.4.tar.gz tar -xf harminv-1.4.tar.gz cd harminv-1.4/ CC=/lib64/mpich/bin/mpicc CXX=/lib64/mpich/bin/mpicxx F77=/lib64/mpich/bin/mpif77 ./configure make sudo checkinstall cd ..
-
MEEP. Sem suporte de MPI e OpenMP:
wget http://ab-initio.mit.edu/meep/meep-1.3.tar.gz tar -xf meep-1.3.tar.gz cd meep-1.3/ CC=/lib64/mpich/bin/mpicc CXX=/lib64/mpich/bin/mpicxx F77=/lib64/mpich/bin/mpif77 ./configure make -j4 sudo checkinstall make distclean
Com suporte de MPI e OpenMP:
CC=/lib64/mpich/bin/mpicc CXX=/lib64/mpich/bin/mpicxx F77=/lib64/mpich/bin/mpif77 ./configure --with-mpi make -j4 sudo checkinstall
-
h5utils. Os programas MPB e MEEP salvam os resultados dos cálculos em arquivos com expansão .h5. Nota: Este pacote (h5utils) compreende um conjunto de programas para trabalhar com arquivos h5, tais como h5tpl (para conversão de arquivos h5 para o formato gráfico png), h5tovtk (conversão para o formato vtk conveniente para exibição por meio do programa Paraview) e h5totxt (conversão para um formato de texto). Se não definir e usar esses programas, muitos resultados de cálculo estarão simplesmente indisponíveis para visualização.
wget http://ab-initio.mit.edu/h5utils/h5utils-1.12.1.tar.gz tar -xf http://ab-initio.mit.edu/h5utils/h5utils-1.12.1.tar.gz cd h5utils-1.12.1 CC=/lib64/mpich/bin/mpicc CXX=/lib64/mpich/bin/mpicxx F77=/lib64/mpich/bin/mpif77 ./configure make -j4 sudo checkinstall cd ..
Se isso acontecer, a execução do comando "make-j4" foi interrompida com um erro "[writepng.o] of Error 1", então, em vez dos três últimos comandos que executamos:
make h5totxt make h5tovtk sudo mv h5tovtk /usr/local/bin/ sudo mv h5totxt /usr/local/bin/ cd ..
Para mais informações, consulte this .