Capítulo 3 Método dos Elementos Discretos e Desafios de

Propaganda
Minicursos
43
Capítulo
3
Método dos Elementos Discretos e Desafios de
Desempenho Computacional
Manuel Osório Binelo1, Oleg Khatchtourian2, Edson Luiz Padoin3,
Rodolfo França de Lima4
1
Manuel é formado em Ciência da Computação pela UNICRUZ, é mestre em
Modelagem Matemática pela UNIJUI e doutor em Engenharia de Teleinformática pela
UFC. Hoje é professor do curso de Ciência da Computação da UNICRUZ, professor do
curso de Ciência da Computação da UNIJUI e professor do Programa de Pós Graduação
em Modelagem Matemática da UNIJUI. Atua principalmente nas áreas de Engenharia
de Biosistemas, Modelagem Matemática e Métodos Numéricos Computacionais.
2
Oleg é formado em Engenharia Aeronáutica - Kazan Aviation Institute, Rússia (1968).
Fez doutorado em Engenharia Aeronáutica - Kazan Aviation Institute (1978).
Atualmente é professor titular da UNIJUI, professor doutor da UNICRUZ e professor
orientador ad hoc da UFRGS. Tem experiência nas áreas de Engenharia Agrícola, de
Engenharia Mecânica e de Matemática, com ênfase em modelagem de sistemas de
aeração para armazenamento de grãos, secagem de grãos, fenômenos de transporte,
métodos numéricos, modelagem matemática.
3
Edson é Doutor em Ciência da Computação pela UFRGS (2016) e Mestre em Eng. da
Produção ênfase Tecnologia da Informação pela UFSM (2001) tendo desenvolvido seu
PhD internship pela Université Grenoble Alpes, na França. Atualmente é professor na
UNIJUI, atuando nas áreas de processamento paralelo, balanceamento de carga,
sistemas operacionais e distribuídos e paralelização de aplicações para dispositivos de
baixo consumo.
4
Rodolfo é mestre em Modelagem Matemática pelo Programa de Pós-Graduação em
Modelagem Matemática da UNIJUÍ. Possui graduação em Matemática - Licenciatura
Plena na UPF. Tem experiência na área de matemática aplicada. Já atuou ministrando
aulas das disciplinas de Introdução ao Cálculo, Cálculo Diferencial e Integral I e II,
Álgebra Linear e Geometria Analítica. Atualmente é doutorando em Modelagem
Matemática pela UNIJUÍ.
44
Método dos Elementos Discretos e Desafios de Desempenho Computacional
Resumo
O método dos elementos discretos (MED) é um método numérico computacional capaz
de simular a movimentação e a interação de um grande número de partículas. O MED
pode ser aplicado em problemas tais como: movimentação de grãos em equipamentos
agrícolas, movimentação e processamento de materiais granulares em diversos ramos
da indústria, mecânica de solos, entre outros. Existem diferentes pacotes de software
para a computação numérica do método, entre os diferentes pacotes podemos destacar
o software Woo, que é software livre e multiplataforma. O objetivo deste capítulo
apresentar o MED, seu modelo matemático e sua aplicação em diversos campos. Em
seguida é apresentado o software Woo e sua arquitetura computacional. As simulações
realizadas com Woo são criadas por meio de scripts em linguagem Python. Será
explorada a estrutura dos scripts de simulação e a parametrização dos modelos de
contato. Um aspecto importante do MED é seu custo computacional, sendo a principal
abordagem para a diminuição desse custo a execução paralela.
3.1. Introdução ao Método dos Elementos Discretos
O Método dos Elementos Discretos é um método de simulação numérica do movimento
de um grande número de partículas (normalmente modeladas por geometrias simples)
dentro de um sistema fixo ou móvel variante com o tempo. (MESQUITA, et al. 2012).
O MED foi desenvolvido por Cundall e Strack (1979), sendo baseado em um esquema
numérico explícito no qual a interação das partículas é monitorada individualmente. Em
cada contato e o sistema é modelado usando as leis do movimento (MONTELLANO et
al., 2011). Estes elementos discretos podem ser rígidos ou deformáveis e interagem
entre si por meio de forças de contato normais e cisalhantes (tangenciais).
O MED tem larga aplicação no tratamento de materiais granulados, ao contrário do
Método dos Elementos Finitos (MEF), o MED trata de um sistema não-contínuo.
Consolidou-se como uma poderosa ferramenta para as indústrias que trabalham com
material granulado devido à sua dinâmica, que envolve as propriedades físicas e
mecânicas dos materiais, tais como, atrito de rolamento e deslizamento (SANTOS et al.
2012).
Segundo Geng (2010) o MED oferece a possibilidade de investigar o comportamento
mecânico de materiais granulares, tanto a nível micro e macro, sendo um método
superior na modelagem de um material descontínuo do que outras ferramentas
numéricas como MEF. Ele considera a interação de partículas em escala, permitindo que
as respostas micro - mecânicas do material a ser estudado sejam analisadas em detalhes.
No MED, a interação das partículas discretas é monitorada contato por contato e o
movimento das partículas é calculado partícula por partícula.
De acordo com Montellano et al (2011) o MED é comumente usado para determinar o
comportamento do material granular em silos e tremonhas, incluindo as pressões
exercidas pelo material armazenado a modificação do fluxo através da inclusão e da
descarga de grãos. É também frequentemente usado na indústria farmacêutica,
mineração e indústrias de alimentos, bem como no desenho de construções,
terraplanagem e máquinas agrícolas.
Segundo Dang e Meguid (2010) o MED é uma ferramenta poderosa na simulação
numérica do comportamento de materiais granulares. Ele preenche a lacuna entre a
Minicursos
45
mecânica do contínuo e investigações de modelagem física. Apesar dos avanços, alguns
dos principais problemas ainda precisam ser resolvidos, incluindo o desenvolvimento de
modelos realistas de grande escala com condições iniciais semelhantes aos encontrados
em problemas reais.
Simulações numéricas usando o MED se tornaram uma ferramenta valiosa para o estudo
de diferentes fenômenos que ocorrem em escala micro em materiais granulares,
fornecendo um laboratório virtual que permite ao pesquisador realizar experiências que
são difíceis ou impossíveis de realizar em experimentos físicos. O MED é utilizado
principalmente para estudar a estrutura de tecido e materiais granulares sob
carregamento ou descarga e dá a contribuição no desenvolvimento de relações
constitutivas do solo usando discos (2D) e esferas (3D) (GENG, 2010).
Um dos atrativos do método é visualização virtual dos movimentos das partículas dentro
do sistema que está sendo estudado. O MED está se tornando largamente aceito como
um método efetivo para avaliar problemas de engenharia envolvendo materiais
granulados especialmente em problemas de escoamento de partículas, tendo assim
aplicação em várias áreas como, por exemplo, no campo da geofísica/sismologia, fratura
de rochas, mecânica de solos e mineração (MESQUITA, 2012).
Existem dois tipos principais de método de elementos discretos: Dinâmica Molecular
(DM) e Dinâmica de Contatos (DC). O DM é o método mais conhecido e mais utilizado
para simular o MED, é o tradicional método criado desenvolvido por Cundall e Strack
(1979). Este método descreve o comportamento granular por meio de discos ou esferas,
baseado em um esquema numérico explícito para as interações entre entidades.
O MED compreende dois estágios: o cálculo das forças de contato e posteriormente o
cálculo do movimento das partículas através da segunda Lei de Newton.
O método considera um número finito de partículas discretas interagindo por meio de
forças de contato e não-contato (ZHU et al., 2008). Em um primeiro momento as forças
de interação entre partículas são calculadas permitindo-se uma interpenetração entre os
seus elementos, utilizando estas informações para o cálculo da relação força –
movimento. (ZHU et al., 2008. DONZÉ et al., 2008. NEVES, 2009).
No segundo estágio a segunda lei de Newton é usada para determinar as velocidades e
acelerações de cada partícula, e a partir disso, a nova posição dos elementos. A
modelagem do movimento das partículas consiste na resolução da equação do
movimento da segunda lei de Newton através de integração numérica. As forças e
momentos externos agindo em cada partícula são devidos a choques com outras
partículas, choques com as superfícies de contorno do escoamento, força gravitacional e
também devido à influência de ondas provocadas por outras partículas que não estão em
contato, ou ainda devido ao fluido no qual às partículas estão contidas (NEVES, 2009.
MESQUITA, 2012).
A equação do movimento liga o movimento de cada elemento com a soma das forças
aplicadas ao comportamento dinâmico deste elemento, em que se considera que a
velocidade e aceleração são constantes em cada passo de tempo. Isto é feito através de
um método de diferenças finitas, sendo que o intervalo de tempo escolhido é
suficientemente pequeno para que a perturbação induzida se propague entre um
elemento e seus vizinhos. Assim, a cada passo de tempo, o equilíbrio de forças para um
determinado elemento é calculado de acordo com todas as forças aplicadas a este
elemento (DONZÉ, 1997).
46
Método dos Elementos Discretos e Desafios de Desempenho Computacional
No método conhecido como Dinâmica de Contatos (DC) não é possível a
interpenetração entre os elementos nos seus contatos. Ele possui um esquema numérico
para trabalhar com muitos contatos, com a integração das forças de contato e não das
forças propriamente especificadas (NEVES, 2009).
No MED os modelos são baseados em diversas leis constitutivas para os contatos entre
entidades. O modelo de contato mais simples é admitir leis de contato lineares para
força normal e cisalhante, além de coeficientes constantes para rigidez, ângulo de atrito
e atrito de rolamento (NEVES, 2009. GENG, 2010).
Para Langston (2004) a principal limitação para uso do MED é a exigência
computacional, uma vez que o método inerentemente usa um esquema de integração de
tempo explícito e repete cálculos sequenciais ao longo de um período de tempo
limitado, com passos muito pequenos de tempo. Outro fator negativo do MED é a
dificuldade na construção de abstrações ou simplificações para os problemas. No
Método dos Elementos Finitos (MEF), por exemplo, é possível simplificar o problema
usando menos, mas maiores elementos, criando um modelo de menor resolução do
problema. Outra estratégia consiste em limitar os graus de liberdade do problema,
utilizando modelos bidimensionais para problemas reais tridimensionais. Nenhuma
dessas estratégias são muito úteis ao MED, a criação de elementos maiores, ou reduzir
os graus de liberdade pode mudar o significado do modelo.
3.2. Formulação do Método dos Elementos Discretos
Nesta seção será apresentada uma breve descrição da formulação numérica presente nas
simulações MED explícitas. Estas descrições são dadas aproximadamente na ordem em
que aparecem na simulação. Duas partículas pode estabelecer uma nova interação, que
consiste em:
1. detecção de contato entre partículas;
2. criação de nova interação e determinar suas propriedades (tais como a rigidez), pois
elas são ou pré-computadas ou derivadas de propriedades de ambas as partículas;
Então, para as interações já existentes, são realizadas as operações:
1. avaliação da tensão;
2. estresse computacional baseada nas tensões;
3. aplicação da força para partículas em interação.
A interação entre partículas é abordada como um processo dinâmico com estados de
equilíbrio atingidos sempre que acontecer o equilíbrio das forças. As forças de contato e
deslocamento de um conjunto de partículas sujeito a um determinado estado de tensões
é encontrado por meio do monitoramento individual do movimento das partículas. O
comportamento dinâmico é representado numericamente por um algoritmo de solução
explícita no tempo para integrar as acelerações e velocidades, usando o método das
diferenças finitas centrais. O uso de um esquema numérico explícito possibilita simular
interações não lineares de um grande número de partículas. Se tais partículas são
consideradas rígidas, o comportamento dos contatos é caracterizado utilizando-se uma
abordagem de contato suave, na qual sua rigidez é mensurável no contato, então o
Minicursos
47
comportamento dinâmico do sistema é descrito em termos do movimento de cada
partícula e das forças entre partículas agindo em cada ponto de contato. Considerando a
segunda Lei de Newton, poderá haver equilíbrio estático (sem movimento) ou fluxo das
partículas (NEVES, 2009).
Algumas hipóteses referentes ao MED:
•
Os elementos discretos são tratados como corpos rígidos;
•
Interação atua esporadicamente entre dois elementos;
•
O comportamento de interação permite uma baixa sobreposição de elementos;
•
Os contatos ocorrem ao longo de uma área infimamente pequena (como um
ponto);
•
Todas as partículas são esféricas, com exceção de elementos aplicados às
condições de contorno;
•
A parede é assumida ser tão rígida que não acontece deslocamento ou
movimento resultante das interações entre parede e partícula;
•
Supõe-se que não há fluxo de ar;
Em uma simulação MED, a seguinte sequência é executada repetidamente de acordo
com Šmilauer (2010):
• Estabelecer as condições iniciais;
• detecção das colisões aproximadas;
• detectar as colisões exatas dos corpos e as interações de atualização, se
necessário;
• resolver interações, aplicando forças sobre as partículas;
• aplicar outras condições externas (força da gravidade, por exemplo);
• mudar a posição dos corpos com base em forças, integrando as equações de
movimento.
48
Método dos Elementos Discretos e Desafios de Desempenho Computacional
Figura 3. 1: Ciclo de cálculo do MED (Pinto, 2011)
3.2.1 Lei Força – Deslocamento
A lei Força – Deslocamento estabelece a relação entre as forças de contato atuando em
duas entidades com movimentos relativos entre elas. O contato pode ser formado por
duas partículas ou por uma partícula e uma parede sendo a sua posição representada
[C ]
como um ponto x i , em um plano o qual é definido pelo vetor normal a ele ni , sendo
este definido pela reta que une os centros das duas partículas (da partícula A para B). O
vetor normal é definido pela equação (3.1) conforme NEVES (2009):
x[i B]− x[i A]
ni =
d
(3.1)
Onde d é a distância entre os centros das duas partículas em contato. Este valor pode
ser determinado por (3.2):
d = |x i − x i
[ B]
|= √(x [iB ]− x [iA ])( x[iB]− x [i A ])
[A]
(3.2)
Minicursos
49
Figura 3. 2: Nomenclatura partícula – partícula, Itasca (2004)
Se o contato for partícula – parede, o vetor normal ni terá a direção da reta de menor
distância entre o centro da partícula e a parede. A superposição de uma partícula sobre
outra é definida pelo deslocamento relativo das partículas na direção normal e é dada
n
pela equação (3.3). A superposição é representada por U . As duas definições citadas
podem ser observadas nas figuras 3.2 e 3.3 (PINTO, 2011).
Figura 3. 3: Nomenclatura partícula – parede. Itasca (2004)
Conhecendo os raios das entidades em contato e a distância inicial entre elas, a
n
superposição das partículas em contato U pode ser determinada por:
50
Método dos Elementos Discretos e Desafios de Desempenho Computacional
{
A
(3.3)
B
n
− d ( part í cula− particula )
U = R +R
b
R − d( part í cula− par ede)
A
Sendo o R o raio da partícula A. Após a definição destas variáveis, a posição do
contato é determinada por:
{
(3.4)
1
x [i A ] + R [ A ]− U n ni ( part í cula− particula )
[C ]
2
xi =
1
x[i b] + R [b]− U n ni ( part í cula− parede)
2
(
(
)
)
O vetor força de contato F i (que representa a ação entre as esferas entre si e as esfera e
parede) gerada no contato é baseado na superposição de partículas. Este vetor pode ser
decomposto no sentido normal ou cisalhante em relação ao plano de contato. A força
total no contato é a soma destas, sendo a sua intensidade condicionada da lei de rigidez
adotada (NEVES, 2009. PINTO, 2011):
n
(3.5)
s
F i= F i + Fi
n
s
onde F i e F i denotam os vetores da força normal e cisalhante respectivamente.
As partículas atuam como se fossem unidas por molas nos seus contatos. Baseada nesta
hipótese, a força gerada no contato será o produto da deformação da mola pela sua
rigidez. Assim, o deslocamento no sentido normal que seria a deformação da mola nessa
orientação é a superposição de duas entidades. Desta maneira a força normal é
determinada pela equação:
F i = K ❑U ni
n
n
(3.6)
n
n
Sendo k a rigidez normal do contato, determinada pelo modelo de contato de rigidez
atual.
n
U < 0.
Adotando o critério de resistência à tração nula, tem-se que, se
n
U > 0), a força de contato cisalhante é
Caso a força normal seja de compressão (
calculada de forma incremental. Ou seja, quando um novo contato é formado, a força
cisalhante é nula e subsequentes deslocamentos tangenciais resultam em incrementos
desta força. O movimento do ponto de contato deve ser considerado durante este
procedimento. Para isso, é necessário atualizar o vetor de força normal ni e o novo
ponto de contato x c
a cada passo de integração (DUARTE, 2009). Na Figura 3.4 é
mostrado o movimento de duas partículas e a atualização desta componente tangencial a
cada novo ponto de contato
Minicursos
51
Figura 3. 4: Atualização da força tangencial a cada novo ponto de contato,
Duarte (2009)
As componentes da força cisalhante precisam ser atualizadas para a nova posição de
contato antes do acréscimo da força. Assim é possível determinar o incremento de
deslocamento cisalhante no contato usando a equação (3.7), que ocorre para cada passo
de tempo ∆ t (GENG, 2010):
s
(3.7)
s
∆ U i= V i ∆ t
Deste modo, pode-se determinar o incremento de força elástica cisalhante com a
equação (3.8):
s
s
s
∆ Fi = − k ∆ U i
(3.8)
s
Onde k é a rigidez de cisalhamento (força / deslocamento) com o contato (sendo seu
valor determinado pelo modelo de contato rigidez atual). Finalmente, a nova força de
contato de cisalhamento é calculada somando o antigo vetor força de cisalhamento
existente no início da iteração com o incremento de força cisalhante elástica (GENG,
2010):
s
s
s
F i = F j +∆ F i
(3.9)
Os valores estimados de força de contato normal e de cisalhamento, determinados pelas
equações (3.6) e (3.7), são ajustados para satisfazer as relações constitutivas de contato.
Depois destas correções, a força final do contato é transferida para as partículas
seguindo as equações:
[a1 ]
[a1 ]
[a2 ]
[a2 ]
Fi ← Fi − F i
Fi ← Fi − F i
(3.10)
52
Método dos Elementos Discretos e Desafios de Desempenho Computacional
1
1
2
2
]
]
[a ¹]
M [a
← M [i a ]− e ijk ω[aj ¹] (x[C
i
j − x j )F k
]
]
[C ]
[ a² ]
M [a
← M [i a ]− e ijk ω[a²
i
j (x j − x j )F k
[a j ]
[a j ]
j
são a força e momento aplicado para uma partícula a . e ijk é o
símbolo de permutação denominado por:
Onde F i
e Mi
{
0, se dois índices coincidem
eijk = 1, se i , j , k permuta em1 ,2 e 3
−1, outro caso
3.11
3.2.2 Lei de Movimento
Após o cálculo da força do contato e a sua contribuição para cada partícula, o
movimento das partículas pode ser determinado, pois o movimento de uma única
partícula é determinado por meio dos vetores de força e momento resultantes atuantes
sobre a mesma. Esse cálculo pode ser deduzido em função do movimento translacional
de um ponto na partícula e do movimento rotacional. O movimento translacional pode
ser escrito em termos de posição x , velocidade x́ e aceleração x́´ , e o movimento
rotacional em termos de sua velocidade angular ωi e aceleração angular ώi (DONZÉ,
1997. NEVES, 2009. GENG, 2010).
O movimento translacional é calculado como:
F i = m (x́ i − gi )
(3.12)
Sendo F i a força resultante de todas as forças externas atuantes na partícula, igual à
massa m da partícula e gi a aceleração da gravidade.
A rotação pode ser escrita como:
M i= H́ i
(3.13)
Sendo M i o momento resultante atuante na partícula e H́ i o momento angular da
partícula. A equação (3.13) pode ser reduzida pela equação de Euler para o movimento
como segue:
M 1 = I 1 ώ1 + (I 3 − I 2 )ω3 ω2
M 2= I 2 ώ2 + (I 1− I 3 )ω 1 ω3
(3.14)
Minicursos
53
M 3 = I 3 ώ3 + (I 2− I 1 )ω 2 ω1
Para uma partícula esférica de raio R , com a distribuição uniforme, o centro de massa
coincide com o centro da esfera. Qualquer sistema de coordenadas preso ao centro de
massa é um sistema de eixos – principais e com momentos de inércia iguais entre si,
para uma partícula em que seu eixo está fora do plano, ω1 = ω 2= 0 . Sendo o momento
de inércia I para uma partícula esférica dado pela equação (3.15), em um sistema
global a equação (3.14) pode ser escrita como (3.16) (Duarte, 2009):
I=
2
mR ²
5
(3.15)
2
m R ² ώi
5
M i = I ώi =
(3.16)
As equações de movimento dadas nas equações (3.12) e (3.16) são integradas usando
diferenças finitas centrais que envolvem um valor ∆ t para o passo de tempo. Os
valores de x́ e ωi são calculados para intervalos de t ±n ∆ t / 2 . No entanto, os valores
x i , x́ i , ώi , F i e M i são calculados em intervalos primários de t ±n ∆ t . As
acelerações são calculadas como:
(
∆t
(t +
(t−
)
1
x́ i =
x́ i 2 − x́ i
∆t
ώi =
(
(t +
1
ωi
∆t
∆t
)
2
)
∆t
)
2
(t−
− ωi
∆t
)
2
)
(3.17)
(3.18)
Estas equações podem ser substituídas em (3.12) e (3.16) determinando as velocidades
para o tempo t +n ∆ t /2 . Tem-se como resultado:
∆t
∆t
t+ )
t− )
(
(
2
2
x́
= x́
+
i
( )
)
( )
i
∆t
∆t
t+ )
t−
(
(
2
2
ω
=ω
+
i
(t)
i
Fi
+ gi ∆t
m
(t )
Mi
I
(3.19)
(3.20)
∆t
A velocidade mostrada nas equações acima é usada para atualizar a posição do centro da
partícula. A posição da partícula pode-se determinar como segue em (3.21):
(t + ∆t )
xi
(t )
(t + ∆ t /2)
= x i + x́ i
∆t
(3.21)
54
Método dos Elementos Discretos e Desafios de Desempenho Computacional
3.3 O software Woo
O pacote de software Woo (woodem.org) é um framework desenvolvido especialmente
para simulação de mecânica de materiais granulares, por meio da aplicação do MED,
descrito nas seções anteriores. O Woo é software livre sob licença GPL-2, o que permite
não apenas seu uso em diversos contextos (educacional, científico e profissional), como
também sua extensividade. Outra característica importante é ser multiplataforma,
funcionando tanto em MS Wondows quanto em SOs baseados em Linux.
3.3.1 Instalando o Woo
A instalação do Woo é bastante simples, no site (woodem.org) são disponibilizados os
pacotes binários para MS Windows e para algumas distribuições de Linux. Para outras
distribuições, ou ainda outros SOs, é possível compilar o Woo a partir dos fontes de um
repositório GitHub.
O Woo é escrito em C++11 e pode ser compilado com os compiladores GCC>=4.6 ou
CLang>=3.1. No entando, o compilador CLang não suporta todos os recursos, como
OpenMP, por exemplo, sendo recomendável portanto a compilação com GCC. O Woo
depende de uma série de bilbiotecas:
•
Boost, versão >= 1.48.
•
Python, versão 2.7 or >= 3.4
•
Eigen (funções matemáticas)
•
Qt5 e PyQt5
•
VTK (para exportar para Paraview)
•
GTS (manipulação de superfícies trianguladas)
•
FreeGLUT, GLE (gráficos com OpenGL)
3.3.2 Componentes do Woo
Os principais componentes do Woo são seu interpretador de scripts Python, sua janela
de comandos e sua interface gráfica. O software Woo não permite a definição e
manipulação da simulação por meio da interface gráfica, como é comum em aplicações
comerciais. As simulações são definidas através de um script em Python, que carrega os
módulos de simulação. Essa estratégia, embora tenha uma curva de aprendizado não tão
simples, agrega uma enorme flexibilidade nas simulações, permitindo a integração com
outros pacotes do Python.
A interface gráfica é utilizada para visualizar a simulação enquanto ela acontece, além
de permitir comandos básicos como pausar e resumir. Uma interação mais direta com a
simulação pode ser feita através da janela de comandos, onde é possível acessar os
componentes da simulação, adicionar novos componentes e executar comandos em
Python.
3.3.3 Estrutura básica de um script de simulação
Em um script de simulação os componentes básicos são:
•
uma seção onde são importados os componentes do Woo que serão utilizados;
Minicursos
55
•
uma seção onde são definidos os componentes da simulação, como geometrias
representando paredes ou obstáculos, fonte de partículas e definição de
materiais, por exemplo;
•
uma seção onde são definidos os motores que serão utilizados na simulação ;
•
uma seção opcional com mais funções definidas pelo usuário que podem ser
executadas durante a simulação.
Figura 3. 5: Exemplo de script de simulação
A Figura 3.5 ilustra um script básico com estes componestes. A simulação é composta
por três paredes e uma esfera. Na definição da cena é definido o valor da força de
gravidade, que age apenas sobre as partículas móveis, neste caso a esfera. Ao definir os
motores da simulação são adicionados os motores mínimos necessários, que calculam as
colisões entre os objetos e integram o movimento. Ao definir os motores é informado o
valor utilizado de damping, que é um fator de amortecimento para fenômenos físicos
não levados em consideração, como a dissipação de energia na forma de calor, por
exemplo. O parâmetro S.throttle é uilizado para que a simulação execute em um tempo
mais lento e é utilizado apenas para fins didáticos. A Figura 3.6 mostra o resultado da
execução do script.
56
Método dos Elementos Discretos e Desafios de Desempenho Computacional
Figura 3. 6: Resultado da simulação
3.3.4 Definição de materiais
No script da Figura 3.5 não são definidos os materiais das partículas, neste caso o Woo
usa uma definição padrão de material que não corresponde a um material real. A
definição do material é uma etapa muito importante para simulações mais realistas. O
material é definido por uma série de parâmetros físicos que podem ser obtidos em
ensaios de laboratório ou na literatura. A Figura 3.7 mostra um novo script onde são
definidos dois materiais diferentes e são adicionadas duas esferas à simulação, cada uma
de um material.
Minicursos
57
Figura 3. 7: Script com definição de material
Figura 3. 8: Esferas de diferentes materiais
58
Método dos Elementos Discretos e Desafios de Desempenho Computacional
Nesse caso são definidos para os materiais os seguintes parâmetros físicos:
•
density: densidade do material em Kg/m3;
•
young: módulo de Young, também chamado módulo de elasticidade, e é uma
medida de rigidez do meterial definido em Pa;
•
tanPhi: tangente do ângulo de atrito do material.Dependo do tipo de simulação e
do modelo de contato utilizado são necessárias definições mais complexas de
material utilizando mais parâmteros físicos.Neste exemplo, após alguns
segundos de simulação é possível notar que as esferas não chegam ao solo ao
mesmo tempo, pois depois de alguns quiques no solo, a diferença nos materiais
faz com que as esferas reajam de forma diferente, como pode ser visto na Figura
3.8.
3.3.5 Exportando os resultados
Em uma situação típica de pesquisa, o pesquisador não estará tão interessado em
acompanhar visualmente a simulação, mas sim em analisar dados da simulação após sua
execução.
Para obter estes dados é necessários exportá-los na forma de arquivos durante essa
execução. Existem dois métodos principais de exportar resultados, exportar imagens da
simulação, que são as mesmas imagens geradas na janela gráfica do Woo; ou ainda
exportar dados em formato VTK, que são lidos pelo software Paraview (paraview.org),
um software livre de visualização científica amplamente utilizado. A figura 3.9 ilustra
um script onde são adicionados os motores de exportação de imagem e VTK. O
parâmetro stepPeriod define o intervalo de passos de iteração, em que serão exportados
os dados.
Figura 3. 9: Exportando os dados
3.3.6 Considerações sobre desempenho computacional
Um ponto crítico na adoção do MED é o seu custo computacional. Para executar a
simulação o sistema precisa manter em memória a informação de cada uma das
partículas, e o passo temporal do método precisa ser pequeno, na ordem de 10-5
segundos. Para problemas típicos para MED, como por exemplo o escoamento de terra
em uma encosta, o escoamento de areia, ou a armazenagem de grão em um armazém, a
quantidade de partículas que precisam ser simuladas é enorme. Isso faz com que a
otimização do desempenho computacional do método seja vital para sua adoção.
Apenas como um exemplo ilustrativo, sem o rigor de uma análise mais completa,
vejamos o desempenho do script ilustrado na Figura 3.10.
Minicursos
59
Figura 3. 10: Script com com 100000 esferas
Este script simula a queda de cem mil esferas, o que é uma quantidade bastante pequena
de partículas se considerarmos os problemas reais descritos anteriormente. Essa
simulação requer 1GB de memória operacional e o passo de tempo de simulação é de
9x10-6 s. Um laptop de consumidor típico, equipado com processador Core i7 4720HQ,
é capaz de processar 14 iterações por segundo. Isso significa que para processar 10
segundos da simulação seriam necessárias 308,64 horas de processamento do laptop.
Como podemos perceber nesse exemplo, ainda que a memória seja um gargalo
importante, o pior limitante, sem dúvida, é o tempo de processamento.
A solução para essa questão passa em primeiro lugar, pela otimização dos próprios
algoritmos e bibliotecas utilizados, mas essa é uma solução que não é escalável, já que é
possível otimizar os algoritmos apenas até um certo ponto. Outra solução é a
computação paralela. O software Woo já compilado com suporte a OpenMP, para isto
basta usar a opção -j ao executar a simulação, para 8 threads por exemplo, a opção é -j8.
Como o OpenMP é uma solução para sistemas de memória compartilhada, seria
interessante o desenvolvimento de alternativas de execução para ambientes de memória
não compartilhada, o que aumentaria as possibilidades de aplicação do MED utilizando
Woo.
3.4 Conclusões
Foram apresentados o MED, seu modelo matemático e sua aplicação em diferentes
problemas. A relativa simplicidade de sua formulação matemática tem possibilitado sua
implementação em diferentes pacotes de software. O pacote de software Woo
apresentado, se destaca por ser software livre e multiplataforma. Outra característica
importe é sua flexibilidade na definição de cenários de simulação utilizando scripts
Python.
A principal questão para sua utilização é seu custo computacional, especialmente o
tempo de processamento. Ele possui suporte a OpenMP, o que possibilita sua execução
paralela em sistema de memória compartilhada. Um avanço futuro interessante seria a
60
Método dos Elementos Discretos e Desafios de Desempenho Computacional
possibilidade de execução em ambientes de memória não compartilhada, o que
aumentaria suas possibilidades de aplicação.
Referências
Boulic, R. and Renault, O. (1991) “3D Hierarchies for Animation”, In: New Trends in
Animation and Visualization, Edited by Nadia Magnenat-Thalmann and Daniel
Thalmann, John Wiley & Sons ltd., England.
Cumdall, P. A., & Strack, O. D. L. (1979). “Discrete numerical model for granular
assemblies. International Journal of Rock Mechanics and Mining Sciences and
Geomechanics”. Abstracts Geotechnique, 16, 77. doi:http://dx.doi.org/10.1016/01489062(79)91211-7.
Dang, H. K., Meguid, M. A. (2010). “Algorithm to generate a discrete element specimen
with predefined properties”. International Journal of Geomechanics (10), pages 8591.
Donzé F. V., Magnier S. A. (1997). “Spherical Discrete Element Code Spherical
Discrete Element Code SDEC V. 2.00”. GEOTOP, Université du Québec à Montréal.
Donzé F. V. Magnier, A. Daudeville, L. Mariotti, C. Davenne L. (1999). “Numerical
study of compressive behavior of concrete at high strain rates”. J. Eng. Mech., Am.
Soc. Civil Eng. 125: 1154–1163.
Duarte, L. S. (2009). “Simulação de grãos em GPU”. 58 f. Dissertação (Mestrado em
Informática). Pontifícia Universidade Católica, Rio de Janeiro.
Geng, X.; Fraser, W.; Vandenbygaart, B.; Smith, S.; Wadell, A.; Jiao, Y. & Patterson,
G. (2010) “Toward digital soil mapping in Canada: Existing soil survey data and
related expert knowledge”. Digital soil mapping; Progress in soil science, 2.
Amsterdam, Springer. p.325-335.
Itasca. (2004). “Particle Flow Code in 2 Dimensions (Online Manual, Version 3.1). “
Itasca Consulting Group.
Langston, P.A., Al-Awamleh, M.A., Fraige, F.Y., Asmar, B.N. (2004). “Distinct
element modelling of non-spherical frictionless particle flow”. Chemical Engineering
Science 59 (2), 425–435.
Mesquita, A., Silva, M. O., Santos, E.,Carvalho, L.C., Gomes, E., Neto, E., Mafra, M.
(2012). “Uso do método dos elementos discretos em manuseio de minérios e sua
contribuição para a pós graduação e graduação no curso de engenharia mecânica da
UFPA”. Anais: XL Congresso Brasileiro de Educação em Engenharia – COBENGE,
Belém, PA, Brasil.
Montellano, C. Ramirez, Á. Gallego, E. Ayuga, F. (2011). “Validation and experimental
calibration of 3D discrete element models for the simulation of the discharge flow in
silos”. Chemical Engineering Science Volume 66, Issue 21, 1 November, Pages
5116–5126.
Neves, C. E. V. (2009). “Comportamento de materiais granulares usando o método dos
elementos discretos”. 166 f. Dissertação (Mestrado em Geotecnia)-Universidade de
Brasília, Brasília.
Minicursos
61
Pinto, C. N. (2011). “Uso de elementos discretos na modelagem numérica da perfuração
de poços de petróleo por brocas PDC”. 139 f. Dissertação (Mestrado em Engenharia
Cívil). Pontífice Universidade Católica, Rio de Janeiro.
Santos, E.G. Mesquita, A.L.A. Gomes, L.M. Neto, E.F. Mafra, M.P. (2012). “Análise da
forma geométrica da partícula na aplicação do método dos elementos discretos –
DEM”. Anais: VII Congresso Nacional de Engenharia Mecânica – CONEM 2012,
São Luís-MA.
Šmilauer,V. Chareyre, B. (2010). “Yade dem formulation”. In Yade Documentation ( V.
Šmilauer, ed.), The Yade Project , 1st ed.
Zhu, H.P., Zhou, Z.Y., Yang, R.Y., Yu, A.B. (2008). “Discrete particle simulation of
particulate systems: Areview of major applications and findings”,
Chemical
Engineering Science, 62.
62
Método dos Elementos Discretos e Desafios de Desempenho Computacional
Download