BIO-UV GROUP
REGLES ET METHODES COMPTABLES
M´etodo Gradiente Bi-Conjugado
O uso de gradientes conjugados para a resolu¸c˜ao do sistema de Poisson ´e indica¸c˜ao prevalente na literatura em especial associada ao emprego de pr´e-condicionadores conforme descrito no cap´ıtulo 4. Algumas observa¸c˜oes de crater gen´erico devem ser feitas em rela¸c˜ao a implementa¸c˜ao de gradientes conjugados que se deve adotar.
1. Sistemas de Poisson monof´asicos (um ´unico fluido) s˜ao sim´etricos, mas quando existe uma superf´ıcie livre e se quer impor que a press˜ao zero na borda seja obtida pela interpola¸c˜ao da press˜ao em c´elulas fluidas e no ar, essa propriedade pode ser perdida. Express˜oes desse processo de interpola¸c˜ao substituem ou s˜ao embutidas nas equa¸c˜oes que exprimem o Laplaciano em c´elulas junto a borda destruindo-se assim a simetria do sistema. Para abranger tamb´em essa formula¸c˜ao n˜ao sim´etrica o esquema usando gradientes conjugados cl´assico ´e subtituido por um empregando gradientes bi-conjugados, tamb´em descrito no cap´ıtulo 4.
2. O m´etodo bi-conjugado, entretanto, tem que manter vari´aveis relativas a ma- triz transposta e portanto ter requesitos de mem´oria maiores. Na imple- menta¸c˜ao cl´assica da vers˜ao dita estabilizada, que adotamos nesse trabalho, oito matrizes adicionais de dimens˜oes iguais a da grade das velocidades s˜ao empregadas, o que considerando restri¸c˜oes de mem´oria razo´aveis (≤ 8Gb) li- mita consideravelmente o tamanho dessa grade. Isso a menos que se recorra a mecanismos de swap, o que se contrap˜oe ao fato de que estamos empregando essas 8 estruturas, exatamente, para agilizar o processo.
3. Tendo em vista, reduzir os requisitos de mem´oria, fomos a outro extremo, empregando um modelo em que se efetua um pr´e-processamento b´asico, dis- pensando essas matrizes adicionais. Com isso ampliam-se consideravelmente as dimens˜oes dos problemas que podem ser tratados, mas ficou a quest˜ao de quanto se perde em performance por usar um sistema simplista assim. Para avaliar esse aspecto fizemos um confronto entre essa implementa¸c˜ao e a do m´etodo bi-conjugado para nosso exemplo padr˜ao que est´a definido numa ma-
lha (32x32x32). O resultado est´a expresso na tabela abaixo. A precis˜ao exigida como condi¸c˜ao de parada foi a mesma nos dois casos.
Itera¸c˜ao Gradiente Conjugado Gradiente Biconjugado N´umero de Tempo por N´umero de Tempo por c´elulas fluido itera¸c˜ao c´elulas fluido itera¸c˜ao
100 804 0.01s 787 0.01s 200 1536 0.01s 1532 0.02s 300 2320 0.02s 2313 0.03s 400 3752 0.06s 3802 0.05s 500 5101 0.12s 5152 0.07s 1000 10200 0.36s 10530 0.12s 1500 14995 0.60s 14944 0.20s 2000 18434 0.84s 18704 0.68s 3000 26218 1.33s 25229 0.31s 3600 31634 1.78s 29811 0.34s
Tabela 8.4: Compara¸c˜ao entre os m´etodos Gradiente Conjugado e Gradiente Bicon- jugado para solu¸c˜ao da equa¸c˜ao de Poisson.
Na tabela acima pode-se observar que a medida que aumenta a massa fluida a proposta mais elaborada vai se tornando notoriamente mais eficiente apesar de uma itera¸c˜ao dela ser consideravelmente mais longa. O n´umero de itera¸c˜oes at´e a convergˆencia, ´e, entretanto bem menor. Os resultados dessa tabela indicaram a seguinte formula¸c˜ao para resolver o trade-off entre performance e dispˆendio de mem´oria:
1. Dimens˜oes reduzidas - Gradiente Bi-Conjugado Estabilizado. O dispˆendio de mem´oria entre as diferentes vers˜oes do m´etodo Bi-Conjugado ´e basicamente 2. Dimens˜oes maiores at´e um determinado limite - Gradiente Conjugado com
pr´e-condicionamento simples.
3. Al´em desse limite - Empregar itera¸c˜oes de Jacobi como ´e feito usualmente em implementa¸c˜oes em GPU.
Observa¸c˜ao: Nos restringimos a reportar esse ´unico caso, devido ao fato dos re- sultados em rela¸c˜ao ao tempo relativo de tratamento da borda e o percentual de perda de volume ficarem bastante pr´oximos em v´arias situa¸c˜oes, onde utilizamos combina¸c˜oes das seguintes varia¸c˜oes:
• Resolu¸c˜ao: Grades 32x32x32 ou 64x64x64;
• Posi¸c˜oes de fluxo de entrada: Orif´ıcios de entrada de fluido definidos em dife- rentes paredes do cubo;
Cap´ıtulo 9
Conclus˜oes e Trabalhos Futuros
9.1
Conclus˜oes
Grande parte do trabalho realizado na constru¸c˜ao desta tese foi despendida na cons- tru¸c˜ao de um sistema para simula¸c˜ao de fluidos e interface tracking segundo uma abordagem cl´assica via Fast Marching/Level Sets. Pelo uso intensivo desse sistema e observando as circunstˆancias em que ele n˜ao respondia de forma inteiramente ade- quada se pode apresentar uma s´erie de propostas que enfocam especificamente esses casos.
Elementos de inova¸c˜ao - e a´ı reside a contribui¸c˜ao cient´ıfica do trabalho - existem tanto na forma de efetuar a advec¸c˜ao em uma c´elula de borda, quanto na obten¸c˜ao das aproxima¸c˜oes planares de sua face externa e na pr´opria forma de evoluir a borda ou ainda de modelar o sistema de Poisson, como especificado nas se¸c˜oes 7.2, 7.3, 7.4 e 7.5. A abordagem n˜ao inteiramente f´ısica especificada no capitulo 6, tem objetivos mais modestos mas permite introduzir uma nova c´elula a massa fluida de forma gradativa.
Limita¸c˜oes para as abordagens introduzidas aqui s˜ao diversas. Entre elas o fato do n´ıvel de detalhamento estar vinculado ao das aproxima¸c˜oes poligonais obtidas pelo Marching-Cubes, a complexidade de ter que lidar com retalhos de c´elulas e a utiliza¸c˜ao de esquemas cuja paraleliza¸c˜ao n˜ao pode se dar de forma completa.
Por outro lado uma metodologia em que os pontos de corte da borda nas arestas s˜ao computados diretamente num esquema ”forward”pode preservar estruturas mais finas muito embora tamb´em possa gerar solu¸c˜oes mais rugosas em situa¸c˜oes em que
o esquema cl´assico funciona bem. ´E em fun¸c˜ao dessas propriedades complementares que surgiu a id´eia de se aplicar uma ou outra metodologia conforme as circunstˆancias, o que tamb´em tem um sentido inovador.