Melhorando a Convergência no ANSYS CFX – Parte 1: Conhecendo o Solver

Introdução

Nesta nova série de postagens da InFinite, o leitor irá conhecer melhor os detalhes por trás do ANSYS CFX, um dos softwares de CFD mais utilizados na indústria, no que diz respeito à convergência de simulações. Está com problema de divergência? O caso não roda de jeito nenhum, ou dá resultados esquisitos? Acompanhe os novos artigos e aprenda mais sobre como resolver este problema.

Nesta primeira postagem, serão apresentadas algumas características relevantes do Solver do ANSYS CFX (parte do software que soluciona de fato a simulação).

Volumes de Controle baseados no Nó versus no Elemento

Uma das características mais importantes do solver é a forma como o mesmo trata os volumes de controle. Sabemos que, em um problema de Volumes Finitos, resolvemos as equações governantes (que podem ser as de Navier-Stokes, de Energia, de Energia Cinética Turbulenta e muito mais) em cada volume de controle. Para isso, nós discretizamos uma geometria complexa em vários pequenos elementos (normalmente tetraédricos ou hexaédricos).

Mas observe que não necessariamente o elemento da malha delimita o volume de controle em que serão resolvidas as equações discretizadas! E esta é a grande diferença entre uma metodologia centrada no Nó ou no Elemento. Quando tratamos o elemento da malha como o próprio volume de controle a ser calculada a conservação, estamos diante de uma abordagem centrada (ou baseada) no Elemento. Já, para entender melhor a metodologia centrada no Nó, a figura a seguir, retirada do manual do CFX, nos auxiliará.

node centered

Observe que a malha é representada pelos nós (círculos brancos) e arestas (linhas pretas sólidas). Já a delimitação do volume de controle utilizado para calcular as equações é formado pela união de todos os centros dos volumes e os pontos médios das arestas.

O ANSYS CFX utiliza a abordagem centrada no nó, portanto, quando utilizamos uma malha, na verdade o Solver interpreta-a de forma a resolver o problema em uma malha um pouco diferente, que é construída a partir da malha original.

Não existe forma certa ou errada de tratar a malha, no entanto, para o metodologia centrada no nó, há um esforço computacional inicial para a construção de uma nova malha similar, no entanto também há uma facilidade de interpolação dos valores nas faces do volume.

Solução Segregada versus Acoplada

Uma das características mais valiosas do ANSYS CFX é o Solver acoplado, é um dos poucos no mercado com esta vantagem. Mas o que quer dizer Acoplado ou Segregado? Diz respeito à forma como as equações das variáveis hidrodinâmicas (campo de pressão e as 3 componentes da velocidade) são resolvidas.

Em um solver Segregado, que é mais simples e comum, primeiro se chuta um campo de pressão inicial, então a partir deste campo são encontradas as três componentes da velocidade (resolvendo as equações de momentum), e então é resolvida a equação da continuidade (conservação de massa) como forma de corrigir o campo de pressão chutado inicialmente. Com este novo campo de pressão, a iteração é refeita (encontra-se um campo de velocidades ainda mais correto, que permite encontrar um outro campo de pressão ainda mais correto). Os algoritmos mais famosos para resolver este problema não-linear iterativo de acoplamento entre pressão e velocidade são SIMPLE (e seus derivados, como SIMPLER e SIMPLEC) e o PISO. No entanto, por serem métodos iterativos, levam várias iterações para convergir para um campo correto de pressão e velocidade, e normalmente necessitam de parâmetros de relaxação, para que não haja divergência da simulação devido a mudanças abruptas nos campos.

Já um solver Acoplado, que é mais complexo e custoso do ponto de vista de programação, se aproveita do acoplamento das equações hidrodinâmicas (campo de pressão e velocidade) para resolvê-las todas em conjunto. Também é um processo iterativo, já que o sistema é não-linear, mas converge em bem menos iterações que um SIMPLE ou PISO. Este é o método usado pelo solver do ANSYS CFX (e também pelo ANSYS Fluent, caso o usuário selecione a opção no software).

Esquema Pseudo-Transiente

Ligado intimamente ao solver acoplado, o esquema pseudo-transiente ajuda bastante na convergência dos problemas do CFX. A grande ideia por trás do pseudo-transiente é que, para o solver, todos os problemas são transientes, até mesmo os que definimos como estado estacionário. No fim das contas, um estado estacionário nada mais é do que um caso transiente que se estabilizou; e é exatamente isto que o solver busca. Quando escolhemos o estado estacionário no Setup, o solver inicializa o domínio (com campos que o usuário fornece ou que ele estima) e começa uma simulação transiente. A simulação, portanto, é dada como convergida quando as variáveis não mudam mais no domínio dada uma devida tolerância.

O fato de usar um esquema Pseudo-Transiente faz com que tenha que haver um Pseudo Passo de Tempo, que seria o equivalente ao passo de tempo em uma simulação transiente comum. Deve ser de um valor tal que nem seja muito longo e perca os fenômenos relevantes para a modelagem e deixe a simulação instável, nem muito curto que demore demais e torne a convergência lenta. Acaba funcionando similar aos parâmetros de relaxação ao resolver o sistema não-linear, e seu valor deve ser estimado e usado com atenção.

Resíduos Máximos e RMS

O solver do CFX acompanha a convergência normalmente através dos resíduos RMS de cada variável do problema. Mas o que são resíduos RMS?

O resíduo é a medida do desbalanceamento local das variáveis, ou seja, se há ou não conservação das quantidades importantes do problema (e sempre deve haver!) no volume analisado. Está ligado principalmente à qualidade da solução do sistema de equações: quanto maiores os resíduos, pior estará a solução.

O RMS é uma sigla em inglês para Root Mean Square, que se traduz como Raiz do Valor Quadrado Médio, ou Valor Eficaz. É uma espécie de média dos resíduos em todos os volumes de controle: quando a solução no domínio simulado tem boa qualidade, o valor RMS dos resíduos decresce.

residuos_momento_interno

A imagem mostra um exemplo de gráfico de convergência dos resíduos RMS, retirada dos artigos da própria InFinite. Observa-se que quando maior o número de iterações, para uma simulação bem feita, há o decaimento dos resíduos.

O valor dos resíduos RMS ou máximo (o maior desbalanceamento em um volume do domínio) serve para julgar se a simulação pode ser considerada convergida ou não. Isto é, quando se encontram abaixo de um valor determinado (resíduos RMS abaixo de 1e-4 até 1e-6, ou resíduos máximos abaixo de 1e-3 até 1e-5), a simulação é finalizada.

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair /  Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair /  Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair /  Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair /  Alterar )

w

Conectando a %s