Paralelização do cálculo da entropia configuracional
Autor(a) principal: | |
---|---|
Data de Publicação: | 2018 |
Tipo de documento: | Trabalho de conclusão de curso |
Idioma: | por |
Título da fonte: | Repositório Institucional da UCS |
Texto Completo: | https://repositorio.ucs.br/11338/4768 |
Resumo: | Em sistemas amorfos a rede de ligações entre os átomos permite uma vasta quantidade de topologias, sendo denominada de entropia configuracional o número de diferentes topologias que um material pode ter. Neste trabalho, foi desenvolvida uma implementação para o cálculo da entropia configuracional baseada no método proposto por Vink e Barkema e publicado no periódico Physical Review Letters, volume 89 de julho de 2002. Esse método baseia-se na utilização da teoria da informação, onde somente as posições dos átomos e as ligações entre eles são utilizadas. Para o cálculo da entropia configuracional, são geradas posições aleatórias e são gerados os grafos formados com os vizinhos mais próximos de cada uma dessas posições. Além disso, é utilizada a técnica de isomorfismo de grafos para compará-los e a entropia de Shannon é calculada com as probabilidades de cada topologia ocorrer. A implementação foi desenvolvida utilizando as linguagens de programação Python e C++. Foram utilizados os pacotes na linguagem Python: ASE, para manipulação de estruturas atômicas; Matplotlib, para criação de gráficos e NumPy, para realização de cálculos matriciais e vetoriais. Já na linguagem C++ foram utilizadas as bibliotecas: PyBind11, para realizar a comunicação entre as linguagens Python e C++; Aboria, para o tratamento de partículas; BGL, para o tratamento de grafos; e Nauty, para as verificações de isomorfismo. A paralelização foi feita utilizando a API OpenMP. Para a validação da implementação, foi utilizada a estrutura cristalina do Cobre e uma estrutura amorfa de Silício e Oxigênio disponibilizada por Vink. Para a estrutura do Cobre foi obtido o resultado de 0 kb, o que é condizente com a entropia configuracional esperada em materiais cristalinos. Já para a estrutura amorfa, foi encontrado o resultado de 0,88 kb, que é um valor idêntico ao apresentado por Vink e Barkema no artigo publicado no Physical Review Letters. Já a paralelização resultou em um Speedup de 3,1x utilizando 12 cores (sic). |
id |
UCS_7bcd2534e0b89c3cb16db7fd7bfd6a72 |
---|---|
oai_identifier_str |
oai:repositorio.ucs.br:11338/4768 |
network_acronym_str |
UCS |
network_name_str |
Repositório Institucional da UCS |
repository_id_str |
|
spelling |
Scalon, Henrique LuísDorneles, Ricardo VargasMartinotto, André LuisPerottoni, Cláudio Antônio2019-06-24T19:37:28Z2019-06-24T19:37:28Z2019-06-242018-12-05https://repositorio.ucs.br/11338/4768Em sistemas amorfos a rede de ligações entre os átomos permite uma vasta quantidade de topologias, sendo denominada de entropia configuracional o número de diferentes topologias que um material pode ter. Neste trabalho, foi desenvolvida uma implementação para o cálculo da entropia configuracional baseada no método proposto por Vink e Barkema e publicado no periódico Physical Review Letters, volume 89 de julho de 2002. Esse método baseia-se na utilização da teoria da informação, onde somente as posições dos átomos e as ligações entre eles são utilizadas. Para o cálculo da entropia configuracional, são geradas posições aleatórias e são gerados os grafos formados com os vizinhos mais próximos de cada uma dessas posições. Além disso, é utilizada a técnica de isomorfismo de grafos para compará-los e a entropia de Shannon é calculada com as probabilidades de cada topologia ocorrer. A implementação foi desenvolvida utilizando as linguagens de programação Python e C++. Foram utilizados os pacotes na linguagem Python: ASE, para manipulação de estruturas atômicas; Matplotlib, para criação de gráficos e NumPy, para realização de cálculos matriciais e vetoriais. Já na linguagem C++ foram utilizadas as bibliotecas: PyBind11, para realizar a comunicação entre as linguagens Python e C++; Aboria, para o tratamento de partículas; BGL, para o tratamento de grafos; e Nauty, para as verificações de isomorfismo. A paralelização foi feita utilizando a API OpenMP. Para a validação da implementação, foi utilizada a estrutura cristalina do Cobre e uma estrutura amorfa de Silício e Oxigênio disponibilizada por Vink. Para a estrutura do Cobre foi obtido o resultado de 0 kb, o que é condizente com a entropia configuracional esperada em materiais cristalinos. Já para a estrutura amorfa, foi encontrado o resultado de 0,88 kb, que é um valor idêntico ao apresentado por Vink e Barkema no artigo publicado no Physical Review Letters. Já a paralelização resultou em um Speedup de 3,1x utilizando 12 cores (sic).Entropia (Teoria da informação)Grafos de ligaçãoParalelização do cálculo da entropia configuracionalinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/bachelorThesisporreponame:Repositório Institucional da UCSinstname:Universidade de Caxias do Sul (UCS)instacron:UCSinfo:eu-repo/semantics/openAccessUniversidade de Caxias do SulBacharelado em Ciência da ComputaçãoTHUMBNAILTCC Henrique Luis Scalon.pdf.jpgTCC Henrique Luis Scalon.pdf.jpgGenerated Thumbnailimage/jpeg1179https://repositorio.ucs.br/xmlui/bitstream/11338/4768/4/TCC%20Henrique%20Luis%20Scalon.pdf.jpg79bde72d92774795dda72e4b024c8676MD54ORIGINALTCC Henrique Luis Scalon.pdfTCC Henrique Luis Scalon.pdfapplication/pdf2222098https://repositorio.ucs.br/xmlui/bitstream/11338/4768/1/TCC%20Henrique%20Luis%20Scalon.pdfe9ab48ea414707fd36653a5bd5ee07cfMD51LICENSElicense.txtlicense.txttext/plain; charset=utf-8510https://repositorio.ucs.br/xmlui/bitstream/11338/4768/2/license.txt0bfdaf5679b458f1c173109e3e8d8e40MD52TEXTTCC Henrique Luis Scalon.pdf.txtTCC Henrique Luis Scalon.pdf.txtExtracted texttext/plain81480https://repositorio.ucs.br/xmlui/bitstream/11338/4768/3/TCC%20Henrique%20Luis%20Scalon.pdf.txtd57098807aa58e3240e106b7c171a3f7MD5311338/47682019-07-25 02:18:47.261oai:repositorio.ucs.br:11338/4768Repositório de Publicaçõeshttp://repositorio.ucs.br/oai/requestopendoar:2024-05-06T10:01:02.817744Repositório Institucional da UCS - Universidade de Caxias do Sul (UCS)false |
dc.title.pt_BR.fl_str_mv |
Paralelização do cálculo da entropia configuracional |
title |
Paralelização do cálculo da entropia configuracional |
spellingShingle |
Paralelização do cálculo da entropia configuracional Scalon, Henrique Luís Entropia (Teoria da informação) Grafos de ligação |
title_short |
Paralelização do cálculo da entropia configuracional |
title_full |
Paralelização do cálculo da entropia configuracional |
title_fullStr |
Paralelização do cálculo da entropia configuracional |
title_full_unstemmed |
Paralelização do cálculo da entropia configuracional |
title_sort |
Paralelização do cálculo da entropia configuracional |
author |
Scalon, Henrique Luís |
author_facet |
Scalon, Henrique Luís |
author_role |
author |
dc.contributor.other.none.fl_str_mv |
Dorneles, Ricardo Vargas |
dc.contributor.author.fl_str_mv |
Scalon, Henrique Luís |
dc.contributor.advisor1.fl_str_mv |
Martinotto, André Luis Perottoni, Cláudio Antônio |
contributor_str_mv |
Martinotto, André Luis Perottoni, Cláudio Antônio |
dc.subject.por.fl_str_mv |
Entropia (Teoria da informação) Grafos de ligação |
topic |
Entropia (Teoria da informação) Grafos de ligação |
description |
Em sistemas amorfos a rede de ligações entre os átomos permite uma vasta quantidade de topologias, sendo denominada de entropia configuracional o número de diferentes topologias que um material pode ter. Neste trabalho, foi desenvolvida uma implementação para o cálculo da entropia configuracional baseada no método proposto por Vink e Barkema e publicado no periódico Physical Review Letters, volume 89 de julho de 2002. Esse método baseia-se na utilização da teoria da informação, onde somente as posições dos átomos e as ligações entre eles são utilizadas. Para o cálculo da entropia configuracional, são geradas posições aleatórias e são gerados os grafos formados com os vizinhos mais próximos de cada uma dessas posições. Além disso, é utilizada a técnica de isomorfismo de grafos para compará-los e a entropia de Shannon é calculada com as probabilidades de cada topologia ocorrer. A implementação foi desenvolvida utilizando as linguagens de programação Python e C++. Foram utilizados os pacotes na linguagem Python: ASE, para manipulação de estruturas atômicas; Matplotlib, para criação de gráficos e NumPy, para realização de cálculos matriciais e vetoriais. Já na linguagem C++ foram utilizadas as bibliotecas: PyBind11, para realizar a comunicação entre as linguagens Python e C++; Aboria, para o tratamento de partículas; BGL, para o tratamento de grafos; e Nauty, para as verificações de isomorfismo. A paralelização foi feita utilizando a API OpenMP. Para a validação da implementação, foi utilizada a estrutura cristalina do Cobre e uma estrutura amorfa de Silício e Oxigênio disponibilizada por Vink. Para a estrutura do Cobre foi obtido o resultado de 0 kb, o que é condizente com a entropia configuracional esperada em materiais cristalinos. Já para a estrutura amorfa, foi encontrado o resultado de 0,88 kb, que é um valor idêntico ao apresentado por Vink e Barkema no artigo publicado no Physical Review Letters. Já a paralelização resultou em um Speedup de 3,1x utilizando 12 cores (sic). |
publishDate |
2018 |
dc.date.submitted.none.fl_str_mv |
2018-12-05 |
dc.date.accessioned.fl_str_mv |
2019-06-24T19:37:28Z |
dc.date.available.fl_str_mv |
2019-06-24T19:37:28Z |
dc.date.issued.fl_str_mv |
2019-06-24 |
dc.type.status.fl_str_mv |
info:eu-repo/semantics/publishedVersion |
dc.type.driver.fl_str_mv |
info:eu-repo/semantics/bachelorThesis |
format |
bachelorThesis |
status_str |
publishedVersion |
dc.identifier.uri.fl_str_mv |
https://repositorio.ucs.br/11338/4768 |
url |
https://repositorio.ucs.br/11338/4768 |
dc.language.iso.fl_str_mv |
por |
language |
por |
dc.rights.driver.fl_str_mv |
info:eu-repo/semantics/openAccess |
eu_rights_str_mv |
openAccess |
dc.source.none.fl_str_mv |
reponame:Repositório Institucional da UCS instname:Universidade de Caxias do Sul (UCS) instacron:UCS |
instname_str |
Universidade de Caxias do Sul (UCS) |
instacron_str |
UCS |
institution |
UCS |
reponame_str |
Repositório Institucional da UCS |
collection |
Repositório Institucional da UCS |
bitstream.url.fl_str_mv |
https://repositorio.ucs.br/xmlui/bitstream/11338/4768/4/TCC%20Henrique%20Luis%20Scalon.pdf.jpg https://repositorio.ucs.br/xmlui/bitstream/11338/4768/1/TCC%20Henrique%20Luis%20Scalon.pdf https://repositorio.ucs.br/xmlui/bitstream/11338/4768/2/license.txt https://repositorio.ucs.br/xmlui/bitstream/11338/4768/3/TCC%20Henrique%20Luis%20Scalon.pdf.txt |
bitstream.checksum.fl_str_mv |
79bde72d92774795dda72e4b024c8676 e9ab48ea414707fd36653a5bd5ee07cf 0bfdaf5679b458f1c173109e3e8d8e40 d57098807aa58e3240e106b7c171a3f7 |
bitstream.checksumAlgorithm.fl_str_mv |
MD5 MD5 MD5 MD5 |
repository.name.fl_str_mv |
Repositório Institucional da UCS - Universidade de Caxias do Sul (UCS) |
repository.mail.fl_str_mv |
|
_version_ |
1813258430075371520 |