01 – Instalando o SIESTA

Caixas com comandos ou edição de textos

Nesse tutorial há uma série de “caixas” com lista de comandos que são mostradas com o texto em verde. Por exemplo:

cd Simulations

Quando for necessário editar um arquivo de texto, a caixa com o texto para ser editado será indicado com texto em branco. Por exemplo:

FFLAGS = -O3 -fPIC -ftree-vectorize -fopenmp
LIBS = -L/usr/lib -lopenblas -fopenmp

A edição de texto pode ser realizada com qualquer software de edição de texto simples, como o VIM, EMACS, NANO, SUBLIME, ATOM, ou VSCODE. O software VIM é altamente recomendado para as edições de textos mostradas nesse tutorial.

Árvore de diretórios (opcional)

Para organizar a compilação e uso do SIESTA, nós recomendamos criar o diretório Simulations no $HOME usando:

cd ~
mkdir Simulations
cd Simulations

Em Simulations, vamos criar dois subdiretórios (siesta, materials). O diretório materials é criado na forma:

mkdir materials

Você pode usar diretórios diferentes para compilar e usar o SIESTA para simular os materiais. Apenas mude os diretórios de forma consistente com o tutorial.

Baixando o SIESTA

Baixe a versão mais recente do SIESTA com as modificações criada por esse grupo de pesquisa:

cd ~/Simulations/
git clone https://gitlab.com/leseixas/siesta.git

Isso vai criar o diretório siesta em ~/Simulations. Nós vamos fazer duas instalações do SIESTA, uma mais simples com o sistema de paralelização OpenMP. Uma outra instalação do SIESTA com outro tipo de paralelização (OpenMPI) será apresentada um outro tópico do tutorial.

Compilando SIESTA com OpenMP

No Ubuntu 18.04, uma instalação mais simples do SIESTA pode ser realizada usando o script build_omp.sh:

cd siesta
./build_omp.sh

Para a instalação das bibliotecas do linux, talvez seja necessário autorização de super-usuário. Essa instalação vai compilar o SIESTA usando 4 núcleos de processamento (4 cores). Para instalar usando um número diferente de 4 substitua o “4” da linha “make -j4” do scipt build_omp.sh pelo número desejado para o uso da instalação.

Essa compilação vai criar um arquivo executável siesta no diretório siesta/Obj. Esse programa já pode ser utilizado nessa forma. Entretanto, o script build_omp.sh também vai criar uma função de shell run_siesta no sistema que facilita o uso do programa. Para a realização da simulação é necessário de um arquivo input.fdf e os arquivos de pseudopotenciais de cada elemento químico do material a ser estudado. Atenção! Não tente fazer a simulação antes de ter preparado esses arquivos de entrada obrigatórios.

Também recomendamos criar um grupo de várias funções de shell que vão tornar o pós-processamento (extração de dados) mais fácil. Isso pode ser realizado com o script functions.sh executado no diretório raiz do siesta:

./functions.sh

Esse script criar as seguintes funções para pós-processamento:

siesta_getenergy
siesta_getfermi
siesta_getforces
siesta_getatoms
siesta_getcell

Além de algumas outras funções que serão mencionadas em uma outra seção do tutorial.

Com este script, também vamos poder utilizar a função run_siesta para execução de simulações. Para executar o siesta com 4 núcleos de processamento, fazemos o seguinte comando:

run_siesta &

O caractere “&” no final do comando run_siesta serve para deixar a execução no background do terminal. Com isso, você ainda pode fazer outras coisas enquanto a simulação está sendo realizada. Para executar a simulação com um número diferente de núcleos de processamento. Por exemplo, 2. Use o comando da seguite forma:

run_siesta 2 &

Próximo: 02 – Primeiras simulações com o SIESTA