Anais do XXV Encontro de Iniciação Científica e Pós-Graduação do ITA - XXV ENCITA / 2019
Instituto Tecnológico de Aeronáutica, São José dos Campos, SP, Brasil, XXV 7 de novembro de 2019.
INTEGRAÇÃO DE SOFTWARES CFD PARA
AERODINÂMICA FACILITADA
Nicholas Alexandre Marins Benson
Instituto Tecnológico de Aeronáutica, Praça Marechal Eduardo Gomes nº 50, São José dos Campos - SP, 12228-900
FATEC - Prof. Jessen Vidal, Av. Cesare Mansueto Giulio Lattes, 1350 - Eugênio de Melo, São José dos Campos - SP, 12247-014
Bolsista PIBIC-CNPq
benson@[Link]
Rodrigo Costa Moura
Instituto Tecnológico de Aeronáutica, Praça Marechal Eduardo Gomes nº 50, São José dos Campos - SP, 12228-900
moura@[Link]
Viviane Ribeiro de Siqueira
FATEC - Prof. Jessen Vidal, Av. Cesare Mansueto Giulio Lattes, 1350 - Eugênio de Melo, São José dos Campos - SP, 12247-014
[Link]@[Link]
Resumo. O presente trabalho busca o desenvolvimento de metodologias para a criação automatizada de malhas computacionais
utilizadas em simulações CFD para aerodinâmica de escoamentos externos. Tais metodologias se fazem necessárias para acelerar
a etapa de pré-processamento na prática do CFD, a qual normalmente exige experiência do usuário e demanda tempo
considerável. Devido ao caráter exploratório do presente trabalho, focou-se em aerofólios aeronáuticos bidimensionais, porém os
algoritmos desenvolvidos permitem extensão natural para três dimensões. Os algoritmos em questão foram criados em plataforma
Matlab®, a qual foi integrada a um software livre para finalização e visualização das malhas. Simulações variadas sobre malhas-
teste geradas foram conduzidas também em um software livre, apesar da possibilidade do uso de softwares comerciais com igual
facilidade. As metodologias propostas foram validadas para escoamentos não-viscosos (do tipo Euler compressível) bem como
viscosos (do tipo RANS), envolvendo ondas de choque e geometrias multielemento, mostrando boa concordância com resultados
experimentais de referência.
Palavras chave: malhas computacionais, CFD, aerodinâmica.
1. Introdução
Uma das dificuldades na prática das simulações em dinâmica dos fluidos computacional (CFD) é gerar uma malha
refinada o bastante para dar resultados precisos e que ao mesmo tempo seja simples o suficiente para ter o mínimo de
custo computacional. Criar malhas para CFD é dispendioso, demanda tempo e experiência do usuário e pode gerar erros
se não for feita corretamente (Hirsch, 2007). Tal dificuldade motiva uma metodologia para automatizar o processo,
especialmente em se tratando de geometrias complexas. Este projeto visa, portanto, o desenvolvimento de estratégias
para a automatização da geração de malhas computacionais, acelerando assim a fase de pré-processamento na prática do
CFD e permitindo que usuários com pouca experiência em CFD possam gerar malhas computacionais com grande
facilidade.
O objeto de estudo são geometrias típicas do contexto aeronáutico, especialmente para escoamentos externos, um
dos focos do Laboratório Avançado de Simulações Computacionais em Aerodinâmica (LASCA) do Instituto
Tecnológico de Aeronáutica (ITA), onde o presente trabalho foi desenvolvido.
Este projeto teve a intenção de usar softwares livres (ao menos parcialmente), com a finalidade de reduzir custos
sem perder a confiabilidade dos resultados. Apesar disso, a abordagem desenvolvida poderá ser usada mesmo em
softwares comerciais, pois os algoritmos de automatização propostos são genéricos o suficiente para serem usados em
qualquer classificação de software. Devido ao caráter exploratório do presente projeto, focou-se em geometrias
bidimensionais. Apesar disso, os algoritmos relevantes foram desenvolvidos tendo em mente uma fácil extensão destes
para três dimensões em trabalhos futuros.
No ciclo da metodologia, optou-se pelo Matlab® como software de interface, onde o usuário define os principais
parâmetros da malha. Então o Matlab® gera um arquivo fonte de geometria que é carregado pelo Gmsh® para criação e
visualização da malha. O Gmsh® (Geuzaine et al., 2009) é um software livre capaz de gerar malhas complexas através
de um pseudolinguagem de programação própria, incorporando inclusive várias funções relevantes à geração de
malhas. Este, por sua vez, é capaz de salvar o arquivo de malha final em diferentes formatos específicos para serem
carregados em softwares de simulação CFD. Um desses softwares é o chamado Su2®, um código livre desenvolvido na
Universidade de Stanford (Economon et al., 2016), escolhido para as simulações de validação desse projeto. A Figura 1
representa a interação que tais softwares possuem para o objetivo desse trabalho.
Anais do XXV ENCITA, ITA, 7 de novembro de 2019.
Figura 1. Fluxograma dos processos e softwares utilizados.
Os algoritmos foram criados em ambiente Matlab® e foram nomeados de forma que o usuário possa ter uma prévia
noção de sua função: Betterpoints, que cria pontos de forma mais arranjada conforme a curvatura do aerofólio;
Geowriter, que escreve o código da geometria para leitura do software Gmsh®; Zonecreator, que cria uma zona
específica delimitada pela camada-limite onde será gerada a parte estruturada de uma malha híbrida e o Zonelimiter,
que limita a espessura de zonas estruturadas para evitar o cruzamento de zonas próximas onde há mais de um elemento
a ser simulado e.g. flaps ou slats. Os mesmos serão explicados ao longo desse artigo dentro de seções que demonstram
sua funcionalidade. Os algoritmos acima compõem toda metodologia pensada para o estudo de perfis aeronáuticos em
duas dimensões e é gerenciada por uma rotina chamada Commander, no ambiente Matlab® ela comanda todas as
funções para a criação automatizada de malhas para CFD.
Deve-se também levar em conta que há possibilidade de refinamento adaptativo automatizado da malha
computacional em prol de um menor custo de simulação para um dado número de graus de liberdade (elementos de
malha) disponíveis. Tal desenvolvimento seria, todavia, feito num projeto posterior ao atual.
O presente artigo está organizado no seguinte forma: Na seção 2 a metodologia e os algoritmos serão explicados
detalhadamente, enquanto na seção 3 serão mostrados os resultados de simulações sobre malhas obtidas com essa
metodologia, comparando-as com resultados experimentais obtidos em túnel de vento. Finalmente, na seção 4 são
discutidas as conclusões, bem como alternativas de trabalhos futuros.
2. Metodologia
Inicialmente, o esforço do trabalho foi concentrado na geração de malhas não estruturadas de triângulos visando
simulações não viscosas (do tipo Euler compressível) sobre geometrias simples (seção 2.1). Em seguida, foco foi dado a
malhas híbridas para simulações viscosas (dos tipos Navier-Stokes ou RANS) envolvendo camada limite sobre
geometrias mais complexas (seção 2.2). Em tais casos, uma zona estruturada de quadriláteros é gerada junto à
superfície relevante, enquanto triângulos são usados para cobrir o restante do domínio. Além disso, um algoritmo
específico (Zonelimiter) teve de ser desenvolvido para evitar o cruzamento de zonas estruturadas próximas em
geometrias envolvendo múltiplos elementos (seção 2.3). Na Figura 2 observa-se um fluxograma detalhando o
seguimento dos processos desenvolvidos para cada tipo de simulação.
Figura 2. Fluxograma dos processos de geração das geometrias.
2.1. Malhas não estruturadas para geometrias mais simples
As malhas não-estruturadas de triângulos são comumente utilizadas para simulações não viscosas do tipo Euler e
constituem o tipo de malha mais simples que a metodologia é capaz de criar. A geometria usada para gerá-las necessita
somente das informações da superfície do aerofólio e da fronteira externa do domínio denominada farfield, que pode ser
do formato desejado pelo usuário. Neste artigo, por simplicidade, foram empregadas fronteiras externas circulares. A
seguir serão descritos os mecanismos para geração das malhas em questão.
Anais do XXV ENCITA, ITA, 7 de novembro de 2019.
2.1.1. Betterpoints
Encontram-se, em sites especializados, informações sobre a geometria de inúmeros tipos de perfis aerodinâmicos
2D (valores de x e y em um plano cartesiano), porém nem sempre tais informações são satisfatórias para a criação de
malhas em quaisquer condições: número de pontos é insuficiente e/ou espaçamento indesejável. Para a padronização
desses dados, foi criado um sistema de rotinas chamado Betterpoints, que distribui pontos de suporte sobre a superfície
do perfil, concentrando-os em regiões de maior curvatura. Estes pontos de suporte serviram então de vértices para
triângulos da malha computacional, sendo esta a topologia típica dos elementos de malha para simulações Euler. Pelo
espaçamento dos pontos, os comprimentos característicos dos elementos de malha ficam naturalmente definidos na
vizinhança da superfície do perfil. Por fim, o usuário define as características (incluindo o número de nós) ao longo da
fronteira exterior do domínio de cálculo e o Gmsh® é então capaz de gerar a malha desejada (triangulação do domínio)
com métodos próprios.
A principal sub-rotina do Betterpoints, chamada pts_distrib, gera um conjunto de N pontos (N dado pelo usuário)
ao longo do intervalo ξ entre [0, 1] seguindo uma função dada η = η(ξ) de espaçamento relativo entre pontos. Ao fim do
algoritmo o espaçamento entre quaisquer dois pontos consecutivos deve ser proporcional ao valor da função η entre os
dois pontos em questão. O algoritmo segue os seguintes passos.
Cria-se o vetor Xs com as coordenadas dos N pontos inicialmente equispaçados de tal forma que Xs(1) = 0 e Xs(N)
= 1, as coordenadas das bordas não são alteradas ao longo das iterações. Note que através de um mapeamento, essas
bordas correspondem aos limites da superfície considerada.
Calcula-se o vetor Ds de tamanho N-1 que armazena as distâncias entre pontos consecutivos. Cria-se o vetor Dt
equivalente ao Ds, mas que armazenará as distancias objetivo ou “target”, sendo Dt re-calculado com base em η(ξ) a
cada iteração após as posições Xs serem alteradas. Ao longo das iterações, Ds deve convergir para Dt através de um
processo de relaxação.
Dá-se início às iterações, onde primeiramente calcula-se um valor de η para cada intervalo entre pontos Xs(i) e
Xs(i+1) consecutivos; o valor representativo para cada intervalo é tomado como sendo mínimo entre η(Xs(i)),
η(Xs(i+1)) e η(0.5*(Xs(i)+Xs(i+1)), sendo esse valor mínimo atribuído a Dt(i) do intervalo em questão; usa-se o valor
mínimo para garantir que regiões de malha fina sejam de fato refinados.
Em seguida, o vetor Ds é atualizado, recebendo o valor da Eq. (1), onde rf é um fator de relaxação, tipicamente de
ordem 0,1. Tal relaxação favorece a convergência do algoritmo ao causar a atualização gradual das posições Xs, que
serão redefinidas a partir do vetor Ds; a Eq. (1) pode ser entendida como uma média ponderada entre valores Ds
originais, que recebem peso 1/(1+rf), e os valores-objetivo Dt, que recebem peso rf/(1+rf).
Ds ( k ) rf * Dt ( k )
Ds (1)
1 rf
O próximo passo consiste em normalizar os novos valores de Ds para garantir que os pontos continuem dentro do
intervalo [0, 1]; para tanto, basta dividir cada componente de Ds pela soma de todos os seus componentes, conforme a
Eq. (2).
Ds(k ) (rf Dt (k ))
Ds i (2)
Ds(k )
k
Finalmente, ao término de cada iteração, recalcula-se o vetor Xs com base no vetor Ds atualizado, através da soma
cumulativa dos valores dos intervalos armazenados em Ds.
Pode-se ainda calcular um indicador de convergência de algoritmo, por exemplo, a soma dos componentes do vetor
|Ds-oldDs|, onde oldDs corresponde ao vetor Ds salvo no inicio de cada passo da iteração.
Com isso, retorna-se ao item 4 e o processo continua até um numero limite de iterações prescrito pelo usuário. Uma
vez convergido o algoritmo, o indicador de convergência em questão permanece inalterado a cada nova iteração. Os
pontos finalmente obtidos serão usados como base para uma spline que define a superfície de cada aerofólio.
Vale ressaltar que, no caso de malhas contendo parte estruturada junto à superfície para captura de camadas-limite,
um subconjunto dos pontos obtidos pelo Betterpoints será usado como "colunas" de blocos estruturados que formam
essa região da malha. Essas colunas são segmentos normais à superfície que delimitam tais blocos, conforme melhor
discutido na seção 2.2.1.
Anais do XXV ENCITA, ITA, 7 de novembro de 2019.
2.1.2. Geowriter
Depois de criados novos pontos, estes são passados em forma matricial (com duas colunas representando os valores
de x e y, e o número de linhas correspondente ao de pontos gerados no Betterpoints) para a rotina Geowriter.
O Geowriter é composto por sub-rotinas que escrevem cada parte da geometria sendo tratada em linguagem própria
do Gmsh®, o qual efetivamente gera as malhas para simulação CFD. Cada sub-rotina tem a função de escrever uma
parte da geometria (e.g. pontos, linhas, superfícies, etc), levando em consideração as predeterminações iniciais do
usuário como diâmetro da fronteira externa (ou farfield) em relação à corda do perfil, número de nós ao longo da
fronteira e ao longo do aerofólio.
Após escrever o arquivo da geometria (extensão “.geo”), este pode ser aberto Gmsh para efetiva geração de malha e
visualização. No Gmsh®, pode-se então salvar o arquivo final da malha na extensão de preferência, dentre várias opções
possíveis associadas a diversos códigos CFD atuais.
2.2. Malhas híbridas para geometrias mais complexas
Para fins do presente estudo, simulações do tipo RANS diferem do tipo Euler basicamente por considerar camadas-
limite em sua formulação, no que se faz necessário um tipo de malha que facilite a captura desse fenômeno. A camada-
limite é uma estreita região observada em escoamentos viscosos onde a velocidade do fluido tende a zero quando
aproximada da superfície do corpo devido à força de atrito que retarda as partículas.
Apesar de simulações RANS fornecerem resultados com malhas não estruturadas de triângulos, elas têm melhor
desempenho quando são utilizadas malhas híbridas, em que a área em torno do aerofólio possuiu malha estruturada de
quadriláteros. Os processos para criação de tal geometria serão discutidos nos tópicos a seguir.
2.2.1 Zonecreator
Para a simulação de escoamentos viscosos possivelmente turbulentos, foi desenvolvida uma rotina chamada
Zonecreator, que define uma zona estruturada de quadriláteros junto a cada superfície de aerofólio tendo em vista a
captura de camadas-limite. Os passos dessa rotina são descritos abaixo.
Após a execução da rotina Betterpoins, escolhe-se um subconjunto dos pontos de superfície para servirem de
suporte para segmentos perpendiculares à superfície. Tais segmentos serão como colunas delimitando blocos de malha
estruturada que formam a zona da camada-limite. Cada bloco é também delimitado pela spline que define o aerofólio e
por uma curva paralela à spline da base do bloco. A altura dos segmentos de coluna é definida pelo usuário, tendo por
referência a espessura da camada limite. Esta altura pode ser constante ou calculada externamente. De fato, uma opção
já integrada à plataforma Matlab® consiste em utilizar um perfil de espessuras de camada-limite calculada pelo software
Xfoil® (Drela, 1989), que apesar de ser de baixa fidelidade no contexto do CFD, fornece rapidamente boas estimativas
para fins de geração de malha.
No ambiente Matlab®, o usuário também prescreve quantas subcamadas existem na zona estruturada, bem como o
fator de estiramento entre elas. Esta informação da composição dos elementos retangulares é então repassada ao Gmsh®
que, por sua vez, gera malhas híbridas, com triângulos na região além da camada-limite.
2.2.2 Zonelimiter
Nos casos em que perfis aerodinâmicos são constituídos por mais de um elemento (e.g. flaps ou slats), a abordagem
foi criar um algoritmo que limitasse a região estruturada da malha para que a geometria de um elemento não ultrapasse
o outro. Esse algoritmo foi denominado Zonelimiter, e permite a conservação de um "corredor" livre de dada largura
entre zonas estruturadas de elementos adjacentes. Esse corredor é preenchido posteriormente (no Gmsh®) por uma
triangulação não estruturada, i.e. a mesma utilizada longe das superfícies.
O algoritmo em questão baseia-se na marcha temporal dos pontos que definem as colunas de suporte para cada
bloco de quadriláteros que compõe a zona estruturada de um dado elemento. Essa marcha temporal pode ser facilmente
implementada em ambiente Matlab® por rotinas do próprio software. A dinâmica de cada ponto inicialmente na própria
superfície consiste num movimento em linha reta, normal à superfície e para longe desta. A marcha de cada ponto
termina quando a distância deste à superfície atinge uma altura especificada (associada à espessura da camada-limite)
ou quando a distância do "corredor" entre este ponto e o ponto mais próximo dele dentre todos os pontos dos outros
elementos atingir um valor especificado. Esse algoritmo mostrou-se simples e suficientemente robusto em todas as
simulações de teste conduzidas no presente estudo. Sua utilização é ilustrada na seção 3.3.
3. Resultados obtidos
A seguir serão descritos os resultados de simulações sobre malhas obtidas por meio das metodologias propostas, os
quais são comparados com resultados experimentais de referencia para validação.
Anais do XXV ENCITA, ITA, 7 de novembro de 2019.
3.1. Malhas para simulações do tipo Euler
Para soluções não viscosas, o algoritmo básico utilizado da plataforma Matlab® é o Betterpoints, o qual distribuí de
forma ótima pontos sobre superfícies relevantes. Essa informação é repassada ao Gmsh® que gera uma triangulação do
domínio computacional usando métodos próprios. Finalmente, o software Su2® é apenas usado após estas etapas para
executar a simulação desejada. A Figura 3 ilustra uma malha típica desse tipo, correspondente ao perfil RAE-2822, que
foi testada numa simulação Euler de escoamento transônico para Mach = 0.729, ângulo de ataque AoA = 2.31°, sendo a
distribuição de pressão obtida mostrada na Fig. 6, conforme discutido na seção seguinte.
Ressalta-se que o perfil RAE-2822 foi escolhido como referência dada à disponibilidade de resultados
experimentais em estudos anteriores (Cook et al, 1076).
Figura 3 – Perfil RAE-2822 com malha para simulações do tipo Euler. Ampliação nos bordos de ataque (inferior-
esquerdo) e de fuga (inferior-direito).
3.2. Malhas para simulações laminares ou do tipo RANS
Um exemplo de tais malhas obtido com a metodologia proposta é dado nas Fig. 4 e Fig. 5, que mostra uma malha
híbrida gerada para o perfil RAE-2822 e o campo de número de Mach do resultado de uma simulação do tipo RANS.
Note que nesse caso em particular, a espessura da zona estruturada rente à superfície foi definida com um valor
constante. Aqui o número de Reynolds vale 6,5×10⁶, sendo o número de Mach e o ângulo de ataque iguais aos da seção
anterior.
Figura 4 - Exemplo de malha híbrida para simulações do tipo RANS com cores indicando a distribuição do número de
Mach: vista geral.
Anais do XXV ENCITA, ITA, 7 de novembro de 2019.
Figura 5 - Exemplo de malha híbrida para simulações do tipo RANS com cores indicando a distribuição do número de
Mach: vista ampliada no bordo de ataque.
Para efeito de validação a distribuição do valor do coeficiente de pressão (Cp) é comparado, podendo ser observado
na Fig. 6 que mostra a distribuição de Cp para simulações do tipo Euler e RANS (malhas das Fig. 3 e Fig. 4,
respectivamente) bem como valores experimentais de referência ressaltados na seção 3.1.
Figura 6 - Distribuição do valor de Cp ao longo da superfície do RAE-2822, para ângulo de ataque AoA = 2.31°,
número de Mach = 0.729 e número de Reynolds = 6,5×10⁶. Resultados experimentais de Cook et al. (1979).
Percebe-se que em termos gerais as distribuições de Cp concordam com os dados experimentais, especialmente
para solução RANS pórem a posição da onda de choque (variação maior na parte superior do gráfico) não foi tão bem
capturada pelas simulações. Este resultado poderia ser melhorado com o refinamento adicional na região do choque,
mas já foge ao objetivo deste projeto. Mais importante é permitir ao usuário controlar a espessura da região estruturada
da malha contendo a camada limite, o que é facilmente feito pela plataforma Matlab® desenvolvida. O principal critério
de qualidade na resolução de camada limite turbulenta em simulações do tipo RANS está relacionada à espessura
normalizada da primeira camada de malha junto à parede (chamada de y+), que deve estar abaixo de 1 na maior parte
da superfície. A Figura 7 mostra a distribuição de y+ ao longo da superfície (obtida com a malha da Fig. 4), indicando
uma boa aproximação da camada limite para esse caso.
Anais do XXV ENCITA, ITA, 7 de novembro de 2019.
Figura 7 - Distribuição do valor de y+ ao longo da superfície do RAE-2822, obtida da simulação RANS representada
pela Fig. 4.
3.3. Malhas para simulações do tipo RANS multi-elemento
Nos casos em que os perfis aerodinâmicos são acompanhados por um ou mais elementos e.g. flaps ou slats, a
abordagem foi criar um algoritmo que limitasse a espessura das regiões estruturadas da malha para que a geometria de
um dado elemento não ultrapasse o outro. Para tanto foi empregado o algoritmo Zonelimiter, discutido na seção 2.2.2.
Os testes foram feitos com o perfil NLR-7301, também escolhido por haver resultados experimentais para referência
(Cook et al., 1979; Martin, 1994). Na Figura 8 pode-se observar a malha híbrida obtida e na Fig. 9 a região estruturada
ao longo do flap e na proximidade do bordo-de-fuga do elemento principal.
Figura 8 – Malha híbrida sobre perfil NLR-7301.
Anais do XXV ENCITA, ITA, 7 de novembro de 2019.
Figura 9 – Malha híbrida sobre perfil NLR-7301: vista ampliada do flap.
Observa-se também na Fig. 9 que a espessura da camada-limite não está constante ao longo da superfície, como era
o caso na malha da Fig. 4. Isso se deve ao uso do Xfoil®, conforme mencionado na seção 2.2.1, para se estimar a
variação da espessura da camada-limite ao longo dos elementos. O mesmo mostrou-se robusto em diversos aspectos e
foi testado com sucesso na solução RANS do perfil NRL-7301. A Figura 10 mostra a comparação da distribuição de Cp
obtido pelo Su2® e com resultados experimentais. Nesse caso, os parâmetros da simulação/experimentais são AoA =
6,0°, número de Mach =0,182 e número de Reynolds = 2,51×10⁶.
Figura 10 – Distribuição de Cp ao longo da superfície do NLR-7301 para AoA = 6.0°, número de Mach = 0.185 e
número de Reynolds = 2,51×10⁶. Dados experimentais de Martin (1994).
Os valores de y+ para esse estudo também foram analisados, com a finalidade de observar a precisão do Xfoil® em
estimar a espessura da camada-limite. Tal distribuição de y+ é mostrada na Fig. 11. Como se pode perceber, valores
abaixo de 1 não são naturalmente obtidos para esse caso. Como o valor máximo de y+ foi 5, o ajuste necessário seria
simplesmente especificar uma espessura cinco vezes menor para a zona estruturada do elemento principal.
Anais do XXV ENCITA, ITA, 7 de novembro de 2019.
Figura 11 - Distribuição de y+ ao longo da superfície do NLR-7301, obtida da simulação RANS da malha representada
na Fig. 8.
O fato das estimativas advindas do Xfoil® não terem se mostradas precisas nesse caso está relacionado ao aerofólio
em questão possuir mais de um elemento. Isso ocorre porque o Xfoil® não suporta múltiplos elementos naturalmente, de
modo que as estimativas utilizadas aqui foram baseadas em cálculos independentes no Xfoil® para o elemento principal
somente e, em seguida, para seu flap também isolado. Apesar disso, as estimativas do Xfoil® servem bem como chutes
iniciais, funcionando melhor para aerofólios de um único elemento.
4. Conclusões
Foi proposta uma metodologia para a geração automatizada de malhas bidimensionais sobre geometrias típicas
do contexto aeronáutico. A definição geométrica das malhas é feita em ambiente Matlab®, enquanto a geração das
malhas em si é feita pelo software livre Gmsh®. Simulações CFD conduzidas no software livre Su2® foram utilizadas
com sucesso para confirmar a validade das malhas obtidas pela metodologia proposta. A metodologia proposta permite
aos usuários de CFD obterem malhas de boa qualidade de forma automatizada, sem despender tempo e energia típicos
da geração manual de malhas computacionais.
Os algoritmos principais da metodologia são três, a saber: o Betterpoints, que distribui um número dado de
pontos sobre a superfície de um aerofólio seguindo uma função densidade que concentra pontos em regiões de maior
curvatura; o Zonecreator, que define uma zona estruturada de malha sobre superfícies relevantes para melhor captura de
camadas-limite, usando para tanto uma espessura constante ou variável calculada externamente; e o Zonelimiter, o qual
limita localmente o crescimento de zonas estruturadas de elementos próximos que caso contrário poderiam se cruzar,
levando a malhas inválidas.
Os algoritmos acima podem ser facilmente implementados em outras plataformas (que não o Matlab®), assim
como malhas podem ser obtidas e simuladas em outros softwares que não o Gmsh® e o Su2®. Isso faz o presente estudo
mais geral e mais “portátil” em termos de aplicação. Além disso, os algoritmos desenvolvidos foram projetados tendo
em vista a facilidade de extensão para malhas tridimensionais em um projeto de iniciação científica, bem como em uma
dissertação de mestrado que trata de refinamento adaptativo, ambos em desenvolvimento no mesmo sítio em que esse
presente projeto foi desenvolvido.
5. Agradecimentos
Os autores agradecem ao CNPq pela bolsa PIBIC de iniciação científica, sem a qual este trabalho não teria sido
possível. O primeiro autor ressalta a contribuição e apoio do Sr. Paulo Henrique Ferreira, aluno de doutorado do ITA e
integrante do Laboratório Avançado de Simulação Computacional em Aerodinâmica (LASCA), ambiente no qual este
trabalho foi realizado.
Anais do XXV ENCITA, ITA, 7 de novembro de 2019.
6. Referências
Cook, P.H., M.A. McDonald, M.C.P. Firmin, 1979, "Aerofoil RAE 2822 - Pressure Distributions, and Boundary Layer
and Wake Measurements, Experimental Data Base for Computer Program Assessment”, AGARD Report AR 138.
Drela M., 1989, XFOIL: An Analysis and Design System for Low Reynolds Number Airfoils. In: Mueller T.J. (eds) Low
Reynolds Number Aerodynamics. Lecture Notes in Engineering, vol 54, pp 1-12, Springer
Economon, T. D. et al., 2016, “SU2: An Open-Source Suite for Multiphysics Simulation and Design.”, AIAA Journal
54. Disponivel em: <[Link] e <[Link] Acesso em
11/03/2019
Geuzaine C. Remacle J. F., 2009, “Gmsh: a three-dimensional finite element mesh generator with built-in pre- and
post-processing facilities.”, International Journal for Numerical Methods in Engineering 79(11), pp. 1309-1331.
Hirsch, C. 2007, “Numerical Computation of Internal and External Flows: The Fundamentals of Computational Fluid
Dynamics.”, Butterworth-Heinemann, 2 ed. 680 p.
Martin, B., 1994, “A selection of experimental test cases for the validation of CFD codes. Advisory Report 303,
AGARD”, Neuilly-sur-Seine, France, Volume 1, Chapter 5 (Summaries of the Test Cases).
MATLAB. Disponível em: <[Link] Acesso em 11/03/2019.