SlideShare uma empresa Scribd logo
1 de 27
Baixar para ler offline
Federal de Uberlândia Universidade
Faculdade de Engenharia Química
1
SIMULAÇÃO COMPUTACIONAL DA DINÂMICA DE FLUIDOS (CFD)
UTILIZANDO O SOFTWARE LIVRE OPENFOAM RELEASE 1.4.1
SOUZA, D.B.1
e MURATA, V.V.2
FACULDADE DE ENGENHARIA QUÍMICA DA UNIVERSIDADE FEDERAL DE
UBERLÂNDIA
AV. JOÃO NAVES DE ÁVILA, 2121. BLOCO K DO CAMPUS SANTA MÔNICA.
UBERLÂNDIA. MG.
deliobs@gmail.com, valeria@ufu.br
RESUMO
A simulação computacional da dinâmica de fluidos tem aplicações práticas importantes na
área de Engenharia Química, como na previsão da poluição atmosférica, no estudo de padrões
de escoamento na perfuração de poços de petróleo ou no projeto e na análise de desempenho
de equipamentos de separação, mistura e reação. Neste trabalho são apresentados as
características gerais do software livre OpenFOAM e os princípios do Método dos Volumes
Finitos implementado no software livre Scilab. O sistema operacional utilizado é o Linux.
Além de disseminar a cultura de utilização de softwares livres, que não exigem o pagamento
de licenças proprietárias, para fins de ensino e de pesquisa, este trabalho avalia o OpenFOAM
como alternativa aos softwares comerciais como o Fluent®
, regularmente utilizado em vários
projetos e pesquisas desenvolvidas na Faculdade de Engenharia Química da Universidade
Federal de Uberlândia. São apresentadas simulações da difusão unidimensional não
estacionária com condições de contorno de primeiro tipo, que demonstram a relação entre a
precisão da solução e o número de volumes finitos internos. A simulação do escoamento de
um fluido numa cavidade é apresentada e discutida. Os resultados preliminares apresentados
indicam que o OpenFOAM tem características de robustez e interação com o usuário
suficientes para elegê-lo como uma alternativa confiável aos softwares comerciais para a
simulação de processos químicos.
PALAVRAS-CHAVE:
OpenFOAM, CFD, Volumes Finitos, Scilab
Federal de Uberlândia Universidade
Faculdade de Engenharia Química
2
ABSTRACT
The computer simulation of the dynamics of fluids has important practical applications in the
field of Chemical Engineering, and in anticipation of air pollution, the study of patterns of
‘flow in the drilling of oil wells or the design and analysis of performance of separation
equipment, mixing and reaction. This work presents the general characteristics of free
software OpenFOAM and also the principles of Finite Volumes Method employed in the
solution of ordinary and partial differential equations. The operational system employed is
Linux. In addition to spreading the culture of using free software that does not require the
payment of allowances own, for education and research, this work assesses possibilities for
the use of free software OpenFOAM as an alternative to commercial software such as Fluent,
regularly used in various projects and researches undertaken at the School of Chemical
Engineering of Federal University of Uberlândia. The simulations of the one-dimensional and
dynamic diffusion problem with first kind conditions demonstrate the relationship between
accuracy of the solution and number of internal finite volumes. The simulation of the flow of
a fluid into a cavity obtained by the software OpenFOAM is also presented. These preliminary
results indicate that the OpenFOAM has characteristics of strength and interaction with the
user enough to elect him as a reliable alternative to commercial software for the simulation of
chemical processes.
Keywords:
OpenFOAM, CFD, Finite Volumes, Scilab
1. INTRODUÇÃO
O conhecimento prévio das características
de um fluido específico sob diferentes
condições ajuda consideravelmente no
projeto de tubulações, na escolha de
bombas ou turbinas que o impulsionarão e
na definição de aplicações relacionadas ao
cotidiano. Um exemplo é a previsão da
capacidade de aderência e do nível de
deformação do asfalto quando submetido a
altas tensões superficiais. em que cita-se o
exemplo do asfalto quando submetido a
altas tensões superfiiciais.
A Dinâmica dos Fluidos Computacional
(DFC), em inglês Computational Fluid
Dynamics (CFD), utiliza-se de métodos
numéricos e algoritmos para resolver e
Federal de Uberlândia Universidade
Faculdade de Engenharia Química
3
analisar problemas de escoamento de
fluidos, que em muitos casos não possuem
solução por métodos analíticos. Logo, DFC
é uma ferramenta que possibilita o estudo
da transferência de massa, energia, reações
químicas, interações entre fluidos e
estruturas, por meio da construção de um
sistema virtual que represente os principais
aspectos do sistema real.
O alto custo das licenças de aquisição é um
fator determinante para que haja pouca
disseminação de softwares de simulação
computacional no meio acadêmico. O
trabalho visa propor o uso do software
OpenFOAM .
2. CARACTERÍSTICAS GERAIS DO
SOFTWARE LIVRE OPENFOAM
O OpenFOAM é um software de
distribuição livre e que portanto pode ser
copiado, modificado e até redistribuído, e
pode ser executado em distribuições
LINUX (Debian , Ubuntu, etc) tanto em
versões de 32 bits como de 64 bits. Isso
representa uma grande vantagem visto que
a plataforma de suporte também é livre, ou
seja, são eliminados custos com a aquisição
do Sistema Operacional e do software
empregado na simulação. A tecnologia
desse programa consiste em um conjunto de
módulos em C++
, usados para construir
resolvedores que simulam problemas
específicos em engenharia; utilidades
empregadas nas tarefas de pré-
processamento e pós-processamento como
visualização de dados e processamento de
malhas; bibliotecas para criação de
ferramentas como banco de modelos
físicos. As equações diferenciais parciais
que governam cada caso são discretizadas
no tempo e no espaço sucessivamente,
sendo que no espaço considera-se uma
geometria variável, utilizando o método dos
volumes finitos.
O ambiente Linux teve sua origem com o
Unix no ano de 1970. O Linux é uma cópia
do Unix feita por Linus Torwald, estudante
finlândes do curso de Ciência da
Computação.
Inicialmente o Unix era usado apenas em
ambientes corporativos e educacionais. A
primeira versão desse sistema foi a 1.0 que
surgiu em março de 1992. Estima-se que
atualmente o Linux tenha cerca de dez
milhões de usuários, sendo empregado em
ambientes corporativos, acadêmicos e
domésticos. O Linux possui usuários e
consultores especializados ao redor do
mundo inteiro, que estão capacitados a
informar e resolver quaisquer tipos de bugs
relacionados ao software.
O atual ambiente Linux mescla operações
em linha de comando (realizadas no
terminal) e operações em ambiente gráfico,
tal como as realizadas no Windows. O
Federal de Uberlândia Universidade
Faculdade de Engenharia Química
4
conjunto de todas essas multi-funções é
gerenciado pelo Kernel, que em relação aos
concorrentes como Windows e o próprio
UNIX, é mais leve, pois dispõe de 12
milhões de linhas de código, enquanto que
os outros dois dispõe de 50 e 30 milhões de
linhas respectivamente.
O Linux possui diversas distribuições que
estão regulamentadas pelos termos da GNU
(General Public License), um programa
pode ser modificado, desde que isso seja
colocado em código fonte e aberto, para que
outros usuários tenham a oportunidade de
incorporar ao Kernel, compatibilidade que
os satisfaçam, tal como a instalação de
pacotes de utilidades particular, ou até
mesmo a implementação de sistemas de
proteção para o SO que atendam as suas
necessidades. Tais melhorias, todavia, não
podem ser comercializadas, ficando
portanto acessíveis á outros usuários sem
quaisquer ônus financeiro. As principais
distribuições existentes são: Red Hat 6.0,
Debian, Slackware, Caldera OperaLink e o
S.u.S.E Linux.
O ambiente de trabalho em algumas
distribuições assemelha-se muito com o
sistema operacional Windows. As
operações com os diretórios são feitas por
janelas, há uma organização hierárquica de
pastas, o processo de acesso ao ambiente de
trabalho é feito mediante a criação de
usuários no sistema, que possui pastas
próprias que não estão localizadas no
diretório raiz, mas sim dentro de uma outra
pasta, o que ajuda a proteger esse diretório
contra possíveis ataques de invasores.
2.1 Instalação do OpenFOAM
Dentro do contexto do ambiente de trabalho
Linux, onde nem todos os pacotes já se
encontram compilados ou dispõem de
ícones, que fazem link com os respectivos
arquivos de instalação, faz-se necessário
dispor de certa habilidade em trabalhar no
ambiente do terminal (tal como o DOS).
Isso se torna útil para tornar mais fácil a
extração de pacotes e sua posterior
compilação. Para a instalação do
OpenFOAM isso também se faz necessário,
uma vez que os pacotes não estão
compilados, logo sua instalação não é tão
trivial.
A primeira parte na instalação desse
software consiste em criar pastas dentro do
diretório Home/nomedousuário/, que serão
utilizadas para descompactar todo o
software que será previamente baixado da
internet pelo endereço,
http://www.opencfd.co.uk/openfoam/downlo
ad.html. Nessa descrição será mostrado o
processo de instalação da versão
OpenFOAM 1.4.1, para o sistema
operacional Ubuntu 7.10 nas plataformas de
32 e 64 bits.
Federal de Uberlândia Universidade
Faculdade de Engenharia Química
5
Deve-se inicialmente abrir a janela do
terminal, a partir de: Aplicações>
Acessórios> Console, onde a seguinte linha
será mostrada:
usuário@nomedocomputador:~$.
Digite: mkdir OpenFOAM. Por esse
comando cria-se o diretório OpenFOAM.
Em seguida entra-se no diretório acima
criado e cria-se o diretório linux (32 bits) e
linux64 (64bits). A partir do seguintes
comandos:
cd OpenFOAM
mkdir linux (para a versão de 32 bits) ou
mkdir linux64 (para a versão de 64 bits)
Baixe os arquivos de instalação:
OpenFOAM-1.4.1.General.gtgz
OpenFOAM-1.4.1.linuxGccDPOpt.gtgz
OpenFOAM-1.4.1.linuxGccSPOpt.gtgz
para dentro do diretório OpenFOAM.
No diretório
/Home/usuário/OpenFOAM/linux,
coloque os seguintes arquivos que também
devem ser baixados da internet
gcc-1.4.1.linux.tgz
paraview-1.4.1.linux.tgz
j2sdk-1.4.1.linux.tgz
Os arquivos agora deverão ser
descompactados dentro dos seus
respectivos diretórios.
Com a janela aberta anteriormente digite o
comando: cd .., de modo a voltar ao
diretório OpenFOAM. Nesse diretório
digite então os seguintes comandos:
tar xzvf OpenFOAM-1.4.1.General.gtgz
tar xzvf OpenFOAM-
1.4.1.linuxGccDPOpt.gtgz
tar xzvf OpenFOAM-
1.4.1.linuxGccSPOpt.gtgz
Isso irá descompactar todo estrutura
principal do OpenFOAM. Durante esse
processo a descompactação deverá ser
mostrada na janela do terminal.
Terminada essa etapa digite novamente o
comando cd linux, ou cd linux64 (para
sistemas de 64 bits), de modo a mudar para
dentro desse diretório. Tal como feito
anteriormente digite o comando tar xzvf,
porém agora para os arquivos contidos no
diretório.
tar xzvf gcc-1.4.1.linux.tgz
tar xzvf paraview-1.4.1.linux.tgz
tar xzvf j2sdk-1.4.1.linux.tgz
Feito isso, toda a estrutura do software já
está instalada no disco rígido do
computador, porém deve-se editar o arquivo
.bashrc localizado no diretório
/Home/usuário, para que o Linux reconheça
a existência do programa. Ainda na mesma
janela do terminal digite o comando cd, em
seguida digite o seguinte comando:
gedit .bashrc
fazendo com que esse arquivo seja aberto
com o editor de texto. Deve-se então
adicionar a seguinte linha ao final do
mesmo:
# Configuração do OpenFOAM
Federal de Uberlândia Universidade
Faculdade de Engenharia Química
6
.$HOME/OpenFOAM/OpenFOAM-
1.4.1/.OpenFOAM-1.4.1/bashrc (todo
esse comando é digitado na mesma
linha).
Para sistemas de 64 bits deve-se ainda
adicionar a seguinte linha para que o Linux
reconheça que a versão instalada é
compatível com a plataforma usada:
$WM_64=on.
Após esse passo, salve o arquivo .bashrc e
digite o seguinte comando no terminal:
.$HOME/.bashrc. Feche a janela do
terminal e a abra novamente, deverá ser
verificado o aparecimento de três linhas
referentes à instalação do software. Um
bom teste para verificar o resultado da
instalação é o comando
foamInstallationTest. Caso o relatório
final apresente: Critical systems ok e Base
configuration ok, o sistema está
configurado de modo correto, caso
contrário, pode ser recomendado a
instalação de softwares que estiverem
faltando. É comum durante esse resultado
aparecem problemas de comunicação com o
ssh ou com o rsh, deve-se então recorrer
ao pacote de gerenciamento de softwares
(como Synaptics, por exemplo) que está
localizado em: Sistema> Administração>
Gerenciador de Pacotes Synaptics e
instalar o software Openssh e suas
dependências e executar novamente o
comando foamInstallationTest.
Caso todas as configurações estejam
corretas, o próximo passo é fazer a cópias
de todos os casos pré-programados no
software para outro diretório de modo que
os mesmos possam ser modificados sem
quaisquer riscos de danos. Para tanto abra
uma janela do terminal e digite nela o
seguinte comando:
mkdir-p
$HOME/OpenFOAM/${LOGNAME}-
1.4.1/run
isso fará com que o diretório
nomedousuário-1.4.1/run seja criado dentro
da pasta OpenFOAM. Em seguida digite o
seguinte comando para copiar os arquivos
para a pasta criada:
cp -r $WM_PROJECT_DIR/tutorials
$HOME/OpenFOAM/${LOGNAME}-
1.4.1/run
2.2 Etapas de pré-processamento, solução
e pós-processamento
O processo de simulação computacional da
dinâmica de fluids compreende três
estágios: pré-processamento, solução e pós-
processamento. Estas etapas são detalhadas
na seqüência.
2.2.1 Pré-Processamento
Consiste na criação da malha que
compreende o domínio a ser estudado e na
Federal de Uberlândia Universidade
Faculdade de Engenharia Química
7
definição dos resolvedores a serem
utilizados. O OpenFOAM considera faces
internas que conectam duas células e faces
externas que pertencem somente a uma
célula e que também representam o
contorno do domínio. As condições de
contorno nas faces podem ser do tipo
Dirichlet onde o valor da variável
dependente é fixo no contorno e do tipo
Neumann que representa o gradiente da
variável normal ao contorno ou outras
definidas por condições físicas. No
OpenFOAM são utilizadas as seguintes
bibliotecas para construção do domínio do
problema a ser estudado:
boxTurb – Faz uma caixa de turbulência
que se conforma à um dado espectro de
energia.
engineSwirl – Gera um escoamento para
cálculos em motores.
mapFields – Mapeia os campos de volume,
lendo e interpolando todos os campos
presentes no diretório de tempo. Casos
paralelos ou não são tratados sem a
necessidade de reconstrui-los.
setFields – Seleciona uma célula definida
através de um dicionário.
blockMesh – Gera a malha utilizada na
resolução do caso estudado.
a) Conversão de Malha
ansysToFoam – Converte um arquivo de
malha ANSYS, exportado a parir de I-
DEAS para o formato OpenFOAM .
ccm26toFoam – Conversor de malhas CCM
para o formato OpenFOAM utilizando as
bibliotecas da versão 2.6 do CCM.
cfxToFoam – Conversor de uma malha CFX
para o formato Foam.
fluentMeshToFoam – Converte uma malha
gerada no Fluent para o formato
OpenFOAM incluindo o tratamento de
regiões de fronteira.
FoamMeshToFluent – Transforma uma
malha do formato FOAM para o Fluent.
GambitToFoam – Converte uma malha feita
pelo GAMBIT para o formato OpenFOAM
gmshToFoam – Faz a leitura de um arquivo
do tipo .msh escrito pelo Gmsh.
ideasUnvToFoam – Converte malhas a
partir do I-DESA formato .unv para o
formato OpenFOAM.
kivaToFoam – Conversor para uma malha
Federal de Uberlândia Universidade
Faculdade de Engenharia Química
8
do tipo KIVA3v para outro no formato
OpenFOAM.
mshToFoam – Lê um arquivo no formato
.msh gerado por um Sistema
netgenNeutralToFoam – Faz a leitura de um
arquivo no formato Netgen 4.4.
plot3dToFoam – conversor para malhas do
tipo Plot3d (formato ascii).
SammToFoam – Conversor de malhas do
tipo STAR-CDSAMM para o formato
FOAM.
starTofoam – Conversor de malhas STAR-
CD SAMM para do formato OpenFOAM.
tetgentoFoam Faz a leitura de arquivos do
tipo .ele, .node e .faces tal como escrito
pelo tetgen
writeMeshObj – Faz a depuração de
malhas. Malhas escritas com três arquivos
separados OBJ podem ser vistos com
javaview por exemplo.
• Manipulação de malhas
attachMesh – Anexar topologicamente
malhas soltas usando modificadores
prescritos de malhas.
autoPatch – Divisor de faces externas
dentro de pacotes baseados em
características dos ângulos
cellSet – Seleciona uma célula definida
através de um dicionário.
checkMesh – Avalia a validade uma malha
de pontos gerada.
couplePatches – Utilitário para gravação
cíclica e processadores de pacotes/
createPatch – Utilitário para criar pacotes
das fronteiras selecionadas. As faces são
criadas, seja por pacotes já existentes ou a
partir do faceSet.
deformedGeom – Deforma uma polyMesh
usando um deslocamento do campo U e um
fator de escala fornecidos como
argumentos.
faceSet – Seleciona uma face definida
através de um dicionário.
flattenMesh – Achatam-se os planos da
frente e de trás de uma malha cartesiana
bidimensional.
insideCells – Toma células com centro no
interior da superfície. Requer que essa seja
fechada e conectada pelos extremos.
Federal de Uberlândia Universidade
Faculdade de Engenharia Química
9
mergeMeshes – Utilitário cuja função é
juntar duas malhas
moveEngineMesh – Resolvedor para
movimentação de malhas para cálculos em
motores.
moveDynamicMesh – Utilitário para
movimentação de malha e mudanças
topologicas.
moveMesh – Resolvedor para
movimentação de malhas.
objToVTK – Faz a leitura de um arquivo da
linha obj e converte para dentro do vtk.
pointSet – Seleciona um ponto e o define
através de um dicionário.
refineMesh – Utilitário para refinar células
tanto de domínios tridimensionais quanto
bidimensionais.
renumberMesh – Renumera a lista de
células, lendo e renumerando todos os
campos a partir dos diretórios de tempo.
rotateMesh – Rotaciona a malha e os
campos a partir de uma direção n1 para
outra n2.
splitMeshRegions – Particiona a malha
dentro de múltiplas regiões e então as
escreve dentro de diretórios consecutivos de
tempo. Cada região é definida como um
domínio em que as células podem ser
“alcançadas” .
splitMesh – Particionador de malhas
criando faces internas e externas. Usa
attachDetach.
stitchMesh – “Costura” uma malha.
subsetMesh – Seleciona uma secção de
malha baseado em cellSet.
transformPoints – Transforma os pontos da
malha no diretório polyMesh.
tetDecomposition – Toma uma malha e a
decomposição dentro de um tetraedro
utilizando célula de face.
zipUpMesh – Faz a leitura numa malha em
seguida “fecha”as células dentro um
poliedro de modo válido.
b) Solução
Utilização das equações nos solucionadores
previamente escolhidos no passo anterior
para geração de resultados.
O OpenFOAM utiliza alguns
Federal de Uberlândia Universidade
Faculdade de Engenharia Química
10
solucionadores que estão divididos por
categoria em vários diretórios, que são:
escoamentos incompressíveis, combustão e
análise de estress em corpos sólidos
• Escoamentos Incompressíveis
boundaryFOAM - Solucionador para
esocamentos turbulentos no estado
estacionário para uma dimensão que gera as
condições da camada limite para uso na
simulação.
IcoDyMFoam – Solucionador de
escoamentos de fluidos incompressíveis
laminares e Newtonianos, utilizando uma
malha dinâmica.
IcoFoam - Solucionador para escoamento
transiente, laminar de fluidos Newtonianos.
NonNewtonianoIcoFoam – Resolve
escoamentos fluidos incompressíveis não-
Newtonianos em regime transiente.
turbFoam - Solucionador para escoamentos
turbulentos em regime transiente de fluidos
incompressíveis.
• Escoamento compressível
rhopSimplefoam – Solucionador para
escoamentos em regime turbulento de
fluidos compressíveis no estado
estacionário para ventilação e transferência
de energia.
rhoSonicfoam – Resolvedor de escoamento
de Density-base
rhoTurbFoam – Resolvedor de escoamentos
turbulentos em estado transiente para
fluidos compressíveis.
sonicFoamAutoMotion – Resolve
problemas de escoamentos laminares
transônicos ou supersônicos de um gás
compressível em estado transiente e com
movimentação da malha.
sonicLiquidFoam – Resolve problemas
cujas as características são: fluxo laminar
de líquidos compressíveis transônicos ou
supersônicos
sonicTurbFoam – Resolvedor para
escoamentos turbulentos trans ou
supersônicos de gases compressíveis.
• Escoamentos Multifásicos
bubbleFoam – Solucionador para
escoamentos incompressíveis de fluidos
bifásicos.
Federal de Uberlândia Universidade
Faculdade de Engenharia Química
11
cavitatingFoam – Soluciona escoamentos
de fluidos compressíveis em estado líquido
através do modelamento por equações de
estado barotrópicas.
interFoam – É um solucionador para
fluidos incompressíveis, que capta a
interface pelo uso do método VOF, que
utiliza malhas cartesianas para calcular o
fluxo de fluidos que passam por objetos
sólidos. Esse método computacional,
permite o trabalho com duas fases que não
se misturam, através do compartilhamento
das variáveis usadas pelas duas fases. Isso
permite determinar o volume de cada fase.
lesInterFoam – Solucionador para dois
fluidos incompressíveis, que captura a sua
interface. A turbulência é modelada
utilizando um modelo LES, que consiste na
simulação de grandes fluxos turbulentos
multiphaseInterFoam – Soluciona
escoamentos em que podem estar
envolvidas quaisquer quantidades de
fluidos incompressíveis e imiscíveis. O
resolvedor consegue capturar as multiplas
interfaces existentes usando um método
VOF.
rasInterFoam – Solucionador para dois
tipos de fluidos mostrando sua interface.
A turbulência é modeladda pelo uso
de modelo RANS (Reynolds Average
Navier-Stokes turbulence model)
selecionado, ou seja, utiliza as equações de
Navier-Stokes para escoamentos
turbulentos
settlingFoam – Soluciona dois fluidos
incompressíveis para simular a resolução da
fase dispersa.
twoPhaseEulerFoam – Solucionador para
sistemas de dois fluidos incompressíveis
com duas fases em que uma delas está
dispersa, como por exemplo, bolhas de gás
em um líquido.
twoLiquidMixingFoam – Resolve um
sistema formado pela mistura de dois
liquidos incompressíveis.
• Simulação Numérica Direta e
Large Eddy Simulation (LES) ou
simulação de grandes escalas.
channelOodles – Resolvedor LES para
escoamentos incompressíveis num canal
dnsFoam – Resolvedor de simulação direta
em caixas isotrópicas
Combustão
coldEngineFoam – Solucionador para
Federal de Uberlândia Universidade
Faculdade de Engenharia Química
12
escoamentos frios em motores de
combustão interna.
dieselEngineFoam – Código para resolução
de combustão à diesel via dispersão de pe-
quenas gotas.
engineFoam – Resolvedor para casos em
que há combustão interna em motores.
reactingFoam – código pra resolução de
sistemas com reação química.
xiFoam – Soluciona sistemas com
escoamentos turbulentos em que há fluidos
previamente misturados ou parcialmente
misturados.
Xoodles – Utilizado para sistemas nas
mesmas condições do resolvedor anterior,
porém são utilizados modelos do tipo LES.
Resolvedores para transferência de energia
buoyantFoam – Resolvedor para fluidos
compressiveis em escoamento turbulento
em estado transiente para ventilação e
transferência de energia.
buoyantSimpleFoam – Resolvedor para o
estado estacionário de flutuações em
escoamentos turbulentos de fluidos
compressíveis para transferência de calor
em sistemas de ventilação.
• Eletromagnético
eletrostaticFoam – Resolvedor para
sistemas eletromagnéticos
mhdFoam – Resolvedor para sistemas de
Hidrodinâmica Magnética. Os escoamentos
são fluidos incompressíveis laminares sob
influência de um campo magnético.
• Análise de tensões em sólidos
solidDisplacementFoam – Fornece a
resolução transiente segregada utilizando o
método dos volumes finitos de esforços
elásticos lineares, pequenas tensões de um
corpo sólido. Há também opções para
cálculo da difusão térmica.
SolidEquilibriumDisplacementFoam –
Resolvedor para o estado estacionário
segregado para volumes finitos de uma
deformação linear elástica, pequenas
deformações de um corpo sólido.
• Finance
financialFoam – Solucionador de Black-
Scholes para preços e comodidades
c) Pós-processamento
Federal de Uberlândia Universidade
Faculdade de Engenharia Química
13
Apresentação dos resultados obtidos a partir
da manipulação das equações que
governam o escoamento estudado sob modo
gráfico e por meio de relatórios onde são
informados resíduos e acurácia do método
empregado, além do tempo de
processamento.
Os utilitários de Pós processamento estão
divididos nas seguintes categorias: Pós
processamento de gráficos, Conversores de
dados para pós processamento, Pós-
processamento dos domínios de velocidade,
Pós-processamento dos campos de tensões,
Pós-processamento em paredes, Pós-
processamento em patches, Utilitários
diversos de Pós-processamento e Pós
procesamento em paralelo.
• Pós-Processamento de gráficos
ensight76Foamexes – Módulos para
EnSight 7.6 para leitura de dados
OpenFOAM diretamente sem necessidade
de tradução por qualquer outro programa.
paraFoam – É o principal ferramenta de
pós-processamento provida com o
OpenFOAM é um módulo leitor para rodar
com o ParaView, uma aplicação cujo
código fonte é aberto. Essa ferramenta é
utilizada para exibição de todos os
resultados obtidos na simulação do
escoamento estudado.
• Conversores para pós
processamento de dados
foamDataToFluent – Traduz dados do
formato OpenFOAM para o formato Fluent.
foamToEnsight – Tradução de dados do
OpenFOAM para o formato EnSight.
foamToFieldview – Esse utilitário cria o
diretório Fieldview no diretório de casos,
apagando quaisquer diretórios Fieldview
existentes no processo. Por padrão o
conversor lê os dados em todos os
diretórios de tempo e os escreve dentro de
um conjunto de arquivos da forma
<case>_nn.uns. onde nn é um contador que
incrementa uma unidade ao diretório de
tempo, ou seja, cria o diretório 1, o
diretório 2 e assim sucessivamente.
foamToGMV – Traduz saídas do tipo
FOAM para arquivos possam ser lidos pelo
GMV.
foamToVTK – É um escritor de arquivos no
formato VTK.
smapToFoam – Traduz um arquivo de
dados do tipo STAR-CD SMAP para
formato OpenFOAM.
Federal de Uberlândia Universidade
Faculdade de Engenharia Química
14
• Pós-processamento dos campos de
velocidade
Co – Programa para desenho de gráficos
configuráveis.
divU – Calcula e escreve o divergente do
campo de velocidade U para cada tempo.
enstrophy – Calcula e escreve a vorticidade
η
flowType – Calcula e escreve o tipo de
velocidade U de escoamento para cada
intervalo de tempo.
Lambda2 – Calcula e escreve o segundo
maior valor da soma dos quadrados das
partes simétricas e anti-simétricas do
gradiente do tensor velocidade, para cada
tempo.
mach – Calcula e escreve o número de
Mach local a partir do campo de velocidade
para cada intervalo de tempo.
magGradU – Calcula e escreve um escalar
que é magntude do campo de velocidade
para cada tempo
magU – Calcula e escreve a magnitude do
gradiente de velocidade U para cada tempo.
Pe – Calcula e escreve o número Pe com o
surfaceScalarField obtido a partir do campo
phi para cada tempo.
Q – Calcula e escreve o segundo tensor
invariante do gradiente de velocidade para
cada tempo.
streamFunction – Calcula e escreve a
funçãode escoamento da velocidade U em
cada tempo.
Ucomponentes – Escreve as três
coordenadas escalares do vetor U (Ux, Uy,
Uz) para cada intervalo de tempo.
uprime – Calcula e escreve o campo de
escalares de uprime para cada intervalo de
tempo
vorticity – Calcula e escreve a vorticidade
do campo de velocidade U para cada tempo.
• Pos-Processamento dos domínios
de Tensões
R – calcula e escreve o tensor de Reynolds
® para o passo atualizado de tempo.
Rcomponents – Calcula e escreve os
campos de escalares das seis componentes
do tensor de Reynolds para cada tempo.
Federal de Uberlândia Universidade
Faculdade de Engenharia Química
15
stressComponents – Calcula e escreve o
campo de escalares do tensor de tensôes
sigma para cada tempo.
• Pós-Processamento em paredes
checkyPlus – Calcula e reporta yplus para
todas as partes da parede, em cada tempo
numa base de dados.
wallGradU – Calcula e escreve o gradiente
de U em toda parede do domínio
wallHeatFlux – Calcula e escreve o fluxo
de calor por todas as partes como uma
condição de fronteira e imprime também o
fluxo integrado para todas as partes da
parede.
wallShearStress – Faz o calculo e escreve a
tensão de cisalhamento nas paredes para o
passo atual do tempo.
yplusLES – Calcula yplus nas células das
proximidades por meio de um Modelo de
simulação de turbulência para grandes
escalas (Large Eddy Simulation – LES).
• Pós processamento em cavidades
patchAverage – Calcula a média dos
domínios sobre todas as cavidades.
patchIntegrate – Integra os dominíos sobre
todas as cavidades.
engineComRatio – Calcula a taxa de
compressão geométrica.
postChannel – Faz o pós-processamento de
dados a partir dos cálculos para um
escoamento num canal.
plot – Faz o cálculo da pressão total para
cada intervalo de tempo
sample – Faz a amostragem de dados num
domínio com a escolha de esquemas de
interpolação, opções de amostragem e
formatos de escrita.
sampleSurface – Faz a amostragem por
superfície. Pode ser rodado em paralelo
wdot – Calcula e escreve wdot para cad
tempo.
writeCellCentres – Escreve os tres
componentes dos centróides das células
com volScalarFields.
Apresentadas as principais funções do
OpenFoam release 4.1.1, os fundamentos
do método dos Volumes Finitos utilizado
como resolvedor numérico das equações
são resumidos na sequência.
Federal de Uberlândia Universidade
Faculdade de Engenharia Química
16
3. O MÉTODO DOS VOLUMES
FINITOS
O método dos volumes finitos é comumente
empregado na resolução de problemas de
valores de contorno que possuam pelo
menos uma coordenada espacial, pode ser
também utilizado na solução de problemas
de valores inicais que sejam compostos por
sucessivos problemas de valores de
contorno que tenham solução para cada
instante de tempo.
Esse método pode ser empregado para a
simulação de modelos distribuídos
representados por equações diferenciais
parciais ou ordinárias.
O método dos volumes finitos pode ser
confundido com o método das diferenças
finitas, já que em muitos casos obtem-se
equações de discretização idênticas para os
domínios estudados, todavia o primeiro
método possue um embasamento físico, que
é o princípio de conservação de grandezas
físicas em um volume de controle definido,
o segundo possue dedução puramente
matemática, utilizando séries de Taylor para
aproximação das derivadas.
Pode-se tomar o exemplo da equação da
continuidade. Essa equação é deduzida a
partir da conservação de massa num
determinado volume de controle:
. 0
1
A Eq. (01) é deduzida levando-se em
consideração o seguinte volume de controle
Figura 1: Volume de controle
Nessa dedução são consideradas as entradas
e saídas existentes nas três direções, em que
se teria o caso mais geral possível, sendo
válido tanto para o transporte de massa
como também para o transporte de energia.
O método dos volumes finitos propõem-se
então a avaliar os termos das equações
diferenciais que regem esse tipo problema,
levando-se em consideração as
propriedades conservativas a partir da
aproximação dos termos diferenciais, por
diferenças numéricas comuns do tipo Δ, ou
seja, a quantidade da grandeza física que sai
de um volume de controle subtraída da
quantidade que entra.
Tal processo então significa uma
aproximação, o que pode gerar diferenças
significativas no resultado numérico, isso
então é corrigido a partir da divisão do
z
y x
Federal de Uberlândia Universidade
Faculdade de Engenharia Química
17
domínio estudado em diversos sub-
domínios, internos ao domínio. A
conservação da grandeza estudada será
então avaliada ao longo desses
subdomínios, de modo que cada um desses
sub-espaços seja estudado. Isso significa
então integrar a equação, seja de quantidade
de movimento, da continuidade, ou do
transporte de energia térmica, entre um
ponto inicial e um ponto final.
A construção desses volumes internos éfeita
a partir da definição de um nó
computacional, que normalmente está
localizado no centróide do su-domínio (P).
Define-se em seguida as faces, que serão as
fronteiras desses volumes (w, e) conforme
apresentado na Fig. 2 para uma malha
unidirecional.
Figura 2 – Malha computacional gerada
pela aplicação do método dos volumes
finitos (adaptado de Pinto e Lage (2001))
3.1 Aplicação do método na Difusão
Unidimensional de energia por uma
região plana e finita
A difusão térmica unidimensional é regida
pela equação diferencial parcial Eq. (1):
(6)
Essa equação é uma simplicação da
equação do transporte de energia:
(7)
Em que é a grandeza conservada, é a
difusividade da grandeza conservada e por
último S é o termo de geração. Deve-se
lembrar que em (1) estão suprimidos os
termos de condução em duas direções,
levando-se em conta um sistema de
coordenadas cartesianas.
O procedimento de discretização descrito
no item anterior deve ser adotado agora
para a equação (1) de modo a “transformá-
la” em uma equação algébrica. Integrando o
termodo lado esquerdo de (1), em relação
ao tempo e em relação ao espaço.
∆
∆
∆
(4)
∆
∆
∆
(5)
∆
Federal de Uberlândia Universidade
Faculdade de Engenharia Química
18
em que os termos e e w são referências a
malha da fig. 2. Deve-se considerar que
entre t e t+Δt, os valores da grandeza
estudada são constantes e seus valores serão
estudados no limite superior do intervalo
(Método de Ëuler), os termos integrados no
espaço, tem seus valores definidos no
centro P, do volume finito cujas faces são e
e w. A equação acima, tem portanto a
seguinte forma:
∆ ∆
∆ ∆ (8)
em que o sobrescrito 0 indica a avaliação da
grandeza no instante , equanto que os
termos sem esse sobrescrito são avaliados
em ∆ .
Os termos expressos por derivadas parciais
no segundo membro dessa equação podem
ser aproximados no centro do volume finito
a partir de sua avaliação nas façes do
volume finito.
(9)
(10)
O termo fonte , é fortemente não-
linear. Esse termo deve ser linearizado,
ficando o mesmo expresso pela Eq. (8):
(11)
Voltando à equação Eq.(5), substituindo
Eq.(6), Eq.(7) e Eq.(8), obtem-se Eq. (9)
∆
∆ ∆ ∆
(12)
divindindo ambos os lados por ∆ e
colocando , e em evidência, tem-
se Eq. (10).
∆
∆
∆
∆
∆
∆
(13)
Fazendo com que:
(14)
(15)
∆
∆
∆ (16)
Os termos de Eq. (10) serão dados por Eq.
(14-16)
∆
∆
∆ (17)
∆
∆
(18)
∆ (19)
Substituindo as equações Eq(14-16) em Eq.
(10), chega-se em Eq (20):
Federal de Uberlândia Universidade
Faculdade de Engenharia Química
19
(20)
que deve ser aplicada para cada ponto da
malha unidimensional, o sistema matricial
do tipo . , terá a matriz A no
formato tridiagonal, ou seja, com os
elementos da diagonal acima e a baixo da
principal não nulos e o restante nulos.
Diante do exposto podemos então
considerar a resoução seguinte problema de
estabelecimento de um perfil de
temperatura numa região plana finita.
A partir simplificação da equação Eq. (6),
considerando a densidade e difusividade
como 1 e desconsiderando o termo de
geração, tem-se Eq. (21) e as condições de
resolução do problema em Eq. (22-24)
, 0 1 (21)
0, 0 (22)
0, 1 (23)
1, 0 (24)
Nessa análise consideraremos ∆
. Em função disso os coeficientes e
serão calculados aplicando-se a razão
∆
,
em que ∆ é o tamanho de cada volume
interno.
Como as condições de contorno associadas
ao modelos são de primeiro as equações
discretas são geradas para os volumes
internos do domínio, começando a partir da
posição
∆
, e terminando em 1
∆
.
Como os volumes internos são constantes,
essa equação toma a forma de Eq. (25):
,
1, … , ,
(25)
sendo m a quantidade de subdomínios.
Aplicada sob todos os volumes internos,
obtemos um conjunto de equações
algébricas da forma de Eq. (25), que pode
ser colocado em forma matricial dada por
Eq. (26).
(26)
em que A possui uma estrutura do tipo
tridiagnoal:
0
0
…
…
0
…
0
0
(27)
Esse tipo de sistema pode ser resolvido pelo
algorítmo Thomas, pelo qual as operações
de eliminação Gaussian são realizadas
apenas com os elemenos não nulos de A.
Conforme escrito nas Eq. (28-29).
, ,
1, …
(28)
Federal de Uberlândia Universidade
Faculdade de Engenharia Química
20
, 1, … , (29)
Através de uma substituição reversa chega-
se a Eq. (31) e Eq.(32):
, 1, 2, … ,1 (30)
, 1,
2, … ,1
(31)
que é a solução do sistema de equações
dado por Eq. (26).
O método dos Volumes Finitos foi
implementado no software livre Scilab e
aplicado na solução numérica do problema
descrito. Os detalhes do algoritmo e uma
descrição do código implementado são
apresentados na seqüência
3.2 Implementação no Software Scilab
O método descrito acima foi então
implementado no software Scilab, cuja
licença também é livre.
//Evolucao do Perfil de temperatura admimensional na
parede plana
//volumes de controle com tamanhos constantes
mode(-1)
lines(0)
clear
clc
clf
//função----------------------------------------------
function[phi]=TDMAsolve(A,B)
n=size(A,1);
a(1)=A(1,1);
b(1)=B(1);
for i=2:n
a(i)=A(i,i)-A(i,i-1)*A(i-1,i)/a(i-1);
b(i)=B(i)-(A(i,i-1)/a(i-1))*b(i-1);
end;
phi(n)=b(n)/a(n);
for k=1:n-1
phi(n-k)=(b(n-k)-A(n-k,n-k+1)*phi(n-k+1))/a(n-k)
end;
endfunction
//Descrição do Domínio-------------------------------
txt=['Dominio (0 a 1)';'Numero de volumes
internos';'Tempo inicial';'Tempo de simulacao'];
valor=x_mdialog('Condicoes do
Problema',txt,['1';'4';'0';'1'])
dom=evstr(valor(1));
N=evstr(valor(2));
ti=evstr(valor(3));
temp=evstr(valor(4));
Dx=dom/(N+1);
Dt=Dx/2
Ntemp=(temp)/Dt;
clc;
//Condições do problema------------------------------
txt=['phi(0,t)';'phi(x,0)';'phi(1,t)'];
ci=x_mdialog('Condicoes do tipo phi(x,t)',txt,['0';'0';'1'])
phiot=evstr(ci(1))
phixo=evstr(ci(2))
phi1t=evstr(ci(3))
clc
aux=1/Dx; CI=[phiot]; CC=[phi1t]; P=[]; phio=[];
Federal de Uberlândia Universidade
Faculdade de Engenharia Química
21
for i=1:1:N
phio=[phio; phixo];
for j=1:1:N
if (i==j) then
A(i,j)=2*aux+Dx/Dt;
elseif (i-j==1)
A(i,j)=-aux;
elseif (i-j==-1)
A(i,j)=-aux;
elseif (j==1)
B(j,1)=aux*phiot+(Dx/Dt)*phixo;
elseif (j==N) then
B(j,1)=(Dx/Dt)*phixo+aux*phi1t;
else
B(j,1)=(Dx/Dt)*phixo;
end;
end;
end;
for t=ti+Dt:Dt:temp
CI=[CI phiot];
CC=[CC phi1t];
[phi]=TDMAsolve(A,B);
P=[P phi];
x=[0:Dx:dom]
L=[phiot;phi;phi1t]//vetor auxiliar
plot2d(x,L,5)
for j=1:N
if (j==1)
B(j,1)=aux*phiot+(Dx/Dt)*phi(j,1);
elseif (j==N) then
B(j,1)=(Dx/Dt)*phi(j,1)+aux*phi1t;
else
B(j,1)=(Dx/Dt)*phi(j,1);
end;
end;
end;
xtitle('Solucao Numerica', 'x','phi');
P=[CI; phio P; CC];
x_message('fim da simulacao');
3.3 Descrição da rotina computacional
A rotina do programa apresentado pode-ser
descrita de modo sucinto da seguinte forma:
São informadas à rotina as condições do
domínio, o tempo de simulação.
Em seguida são colocadas as condições
iniciais e de contorno para o caso proposto.
Tais valores são armazenados em suas
respectivas variáveis.
Inicia-se apartir daí o cálculo dos
coeficientes de Eq. (8), a matriz A é então
prenchida uma única vez num laço ao longo
do espaço.
A matríz mostrada em Eq. (26),
chamada por B no algorítmo é também
prenchida.
A rotina entra num laço que varia no tempo
e no espaço, de modo é calcular todos os
valores , chamado de phi na rotina
computacional, através da função
TDMAsolve. Essa função faz a
manipulação dos elemenos de A, pelo
Algorítmo de Thomas e os aplica no
cálculo dos valores de .
3.3.1 Efeito do aumento do número de
volumes internos
Com o algorítmo mostrado no item anterior
pôde-se fazer uma avaliaçao do aumento do
número de volume internos na precisão das
curvas obitidas ao longo do espaço, pôde-
se ainda fazer uma comparação com a
Figura 3 – Algoritmo utilizado na resolução do
problema de difusão de energia numa região
plana
Federal de Uberlândia Universidade
Faculdade de Engenharia Química
22
solução analítica obtida quando são
empregados a mesma quantidade de dados.
A seguir são mostrados resultados da
simulação quando são definidos na rotina
respectvamente 4 e 400 volumes internos
Nota-se, que ao se aumentar em dez vezes a
resolução da malha computacional a
variação de temperatura ao longo do tempo
e da posição na barra pode ser detectada
com maior acurácia. Vê-se isso ao se
avaliar a conformidade das curvas
apresentadas em ambas as figuras. Na
primeira, a oscilação se dá de modo mais
abrupto ao longo da posição enquanto que
na segunda essa oscilação apresenta-se de
modo mais suave. O que indica uma maior
precisão de dados ao longo do domínio da
barra.
A solução mostrada na Fig. 4 e Fig. 5 foi
comparada com a solução da EDP que rege
o problema, obtida a partir das funções
internas do Maple 12.0, utilizando-se as
linhas de comandos mostradas na Fig. 6. O
gráfico obtido pelo Maple 12.0 é
apresentado na Fig. 7 para tempos
específicos. Os perfis obtidos são
equivalentes aos gerados pelo código
implementado, demonstrando a precisão da
solução, que aumenta com o número de
volumes finitos utilizado.
Figura 4 – Difusão unidimensional para uma
barra subdvidida em 4 volumes de controle
internos
Figura 5 – Difusão unidimensional para uma
barra subdivida em 400 volumes de controle
internos
Federal de Uberlândia Universidade
Faculdade de Engenharia Química
23
4. SIMULAÇÃO DO
ESCOAMENTO DE UM FLUXO DE
CAVIDADE (LID-DRIVEN CAVITY
FLOW)UTILIZANDO O OPENFOAM
O estudo consiste em mostrar as etapas de
pré-processamento, solução e pós
processamento utilizando o software livre
OpenFOAM, para um problema envolendo
um escoamento de um fluido isotérmico,
incompressível, dentro de um domínio
quadrado, considerando o espaço bi-
dimensional.
As equações que governam o estudo desse
caso, são as de Navier-Stoques para o
domínio bi-dimensional dadas por Eq. (32-
34)
. 0 (32)
. . . (33)
. . . 34
> t:='t':with(PDEtools):
> de1:=diff(Phi(x,t),t)=diff(Phi(x,t),x,x);
Sol1:=pdsolve(de1,{Phi(0,t)=1,Phi(1,t)=0,
Phi(x,0)=0},type=numeric);
Figura 6 – Algorítmo implementado em Maple
para reresolução da EDP da difusão
unidimensional de calor
Figura 7 – Solução obtida utilzando o Maple
12.0
phi
Federal de Uberlândia Universidade
Faculdade de Engenharia Química
24
O termo fonte da equação pode ser escrito
por Eq. (35-36):
.
35
.
(36)
4.1 Modelo numérico utilizado na
discretização do domínio
A Eq. (33) pode ser escrita na forma de Eq.
(37)
(37)
Que integrada sob o volume de controle
fornece Eq. (38):
∑ . . ∆ (38)
Em que J e S podem ser escritos na forma
de Eq. (39) e Eq. (40):
(39)
(40)
A malha utilizada para representação do
problema é mostrada na Fig. 8:
As avaliações dos termos de fluxo são feitas
por Eq. (41-44):
. ∆
∆
∆
(41)
(42)
. ∆
∆
∆
(43)
(44)
O termo fonte da Eq. (36) pode ser avaliado
pela expressão
∆
∆ ∆ .
Os modelos para as células da fronteira do
domínio são dados Eq(45-46):
∆
(45)
Figura 8 – Malha utilizada na resolução da
equação de transporte (extraída de Ambatipudi
(2008))
Federal de Uberlândia Universidade
Faculdade de Engenharia Química
25
∆
(46)
Na face oeste o termo de convecção será
zero, devido a condição da velocidade de
fronteira, porém na face leste ele pode ser
calculado por ∆
4.2 Algorítmo simplificado de resolução
Nessa etapa será usado o métdo de resolução
por equações de pressão “linkadas”proposto
inicialmente por Patankar e Spalding. Por ele
será substituído na equação da continuidade a
equação de momento u e v resultando na
equação de pressão discretas. Nesse método no
entanto são adotadas correções para as
velocidades que sao dadas por Eq. (47-
49)uações abaixo:
′ (47)
′ (48)
′ (49)
Em que , e são valores estimados e ′
,
′
e ′
são valores corrigidos. Tem-se as Eq.
(50-51)
′ ′
∆ ′ ′
(50)
′ ′
∆ ′ ′
(51)
Aproximações para a correção de
velocidade são feitas ignorando-se
∑ ′
e ∑ ′
, substituindo esses valores
para a velocidade corrigida na equação da
continuidade gera-se a Eq. (52-58) escritas
em função da pressão:
′ ′
(52)
∆ (53)
∆ (54)
∆ (55)
∆ (56)
(57)
(58)
Em que
∆
e ∆
4.3 Resultados pelo OpenFOAM para o
problema do escoamento em cavidade
Uma malha uniforme é proposta para as
direções x e y. As equações de momento são
então discretizada pelo algorítmo descrito
anteriormente. Os resultados foram obtidos
para um caso bidimensional utilizando uma
malhar tridimensional (20x20)
Figura 9
paro cas
ambiente
Figura
escoame
escoame
5. C
PARA T
9 – Simulaç
so cavity uti
e linux
10 – Var
ento do fl
ento
CONCLUSÃ
TRABALHO
Fede
F
ção das linh
ilizando o O
riação da
luido na d
ÃO E SUGE
OS FUTURO
eral de Ub
Faculdade d
has de corre
OpenFOAM
velocidade
direção x
ESTÕES
OS
berlândia
de Engenha
ente
em
de
do
Ne
com
Sc
aco
de
ma
O
din
con
per
ma
res
pro
pro
for
do
ap
a
sof
afi
viá
ex
sob
op
int
A
de
me
sof
mu
sua
com
a Universi
aria Químic
este trabalho
mputacional
ilab, que é
oplado ao Al
sistemas de
atriz de coefi
programa
nâmica da
ndições de
rmitiu avali
alha de disc
sultados ob
ocessamento
ocessamento
ram executad
escoamento
ós superados
instalação
ftware. Os
irmar que o
ável para a s
igindo do u
bre as equaç
eradores vet
teração com
disponibilida
propriedad
elhor avaliad
ftware na
ulticomponen
a interação c
mo o Fluent
idade
ca
o foi implem
l utilizand
o Método d
lgoritmo de
equações alg
icientes com
foi usado
difusão u
contorno
iar o efeito
cretização so
btidos. As
o, process
o do softwar
das com suce
o de um flu
s todos os pr
do sistema
resultados
OpenFOAM
imulação da
usuário conh
ões fundame
toriais e tenso
o usuário e r
ade de corre
des físico-q
da, assim com
a simulaç
nte com ge
com outros
e o CFX.
mentado um
do o softwa
dos Volume
Thomas para
gébricas line
estrutura tri
para a s
unidimension
de primeiro
do refinam
obre a prec
etapas d
samento e
re livre Ope
esso para a s
uido numa c
roblemas inic
a operaciona
obtidos p
M é uma al
a dinâmica de
hecimento d
entais do mo
oriais e tendo
robustez sati
elações para
químicas d
mo o desemp
ão de
eometria com
softwares co
26
ma rotina
are livre
s Finitos
a solução
eares com
diagonal.
imulação
nal com
o tipo e
mento da
cisão dos
de pré-
e pós-
enFOAM
imulação
cavidade,
ciais com
al e do
permitem
lternativa
e fluidos,
detalhado
odelo e os
o grau de
sfatórios.
predição
deve ser
penho do
sistemas
mplexa e
omerciais
Federal de Uberlândia Universidade
Faculdade de Engenharia Química
27
6. BIBLIOGRAFIA
AMBATIPUDI, V. - Simple Solver for Drive
Cavity flow problem, p13 – 14, 2008.
Comunicação pessoal
MORIMOTO, E.C. Linux entendendo e
dominando. Disponível somente com login: <
http://www.apostilando.com/download.php?cod
=3074&categoria=Linux>: Acesso em
26/09/2008 .
PINTO, J.C. e LAGE, P.L.C. Métodos
Numéricos em Problemas de Engenharia
Química.Rio de Janeiro: Editora, 2001. 139p.
OpenCFD, 2007, User Guide OpenFoam 1.4.1:
Disponível em:
http://www.opencfd.co.uk/openfoam/doc/user.
Acessado em: 23/09/2007
VICENTE, R. Comparative Study of the CFD
codes Mistral and OpenFOAM. Thesis Report.
Vermiolle-France

Mais conteúdo relacionado

Semelhante a Relatório Final - PIBIC 2

Conceitos de sistemas operacionais
Conceitos de sistemas operacionaisConceitos de sistemas operacionais
Conceitos de sistemas operacionaisAparicio Junior
 
O que é o Linux? Quais seus benefícios?
O que é o Linux? Quais seus benefícios?O que é o Linux? Quais seus benefícios?
O que é o Linux? Quais seus benefícios?Rodnei Reis
 
Fundamentos da Linguagem Digital - Módulo 01
Fundamentos da Linguagem Digital - Módulo 01Fundamentos da Linguagem Digital - Módulo 01
Fundamentos da Linguagem Digital - Módulo 01midiasdigitais
 
Sistema Operativo Open Source
Sistema Operativo Open SourceSistema Operativo Open Source
Sistema Operativo Open SourceDiogo Silva
 
Linux do mec
Linux do mecLinux do mec
Linux do mecLeciOne
 
So2 aula00-cic4 na446-segunda
So2 aula00-cic4 na446-segundaSo2 aula00-cic4 na446-segunda
So2 aula00-cic4 na446-segundaAnderson Favaro
 
Desconstruindo monolitos - Construindo microservicos em Delphi
Desconstruindo monolitos - Construindo microservicos em DelphiDesconstruindo monolitos - Construindo microservicos em Delphi
Desconstruindo monolitos - Construindo microservicos em DelphiFelipe Caputo
 
TDCPOA2018 - Trilha Delphi - Desconstruindo Monolitos Delphi
TDCPOA2018 - Trilha Delphi - Desconstruindo Monolitos DelphiTDCPOA2018 - Trilha Delphi - Desconstruindo Monolitos Delphi
TDCPOA2018 - Trilha Delphi - Desconstruindo Monolitos DelphiMayara Fernandes
 
Quem Tem Medo do Terminal?
Quem Tem Medo do Terminal?Quem Tem Medo do Terminal?
Quem Tem Medo do Terminal?Fabio Spanhol
 
Sistemas Operacionais 2 -aula00
Sistemas Operacionais 2 -aula00Sistemas Operacionais 2 -aula00
Sistemas Operacionais 2 -aula00Anderson Favaro
 
Curso Básico de Linux
Curso Básico de LinuxCurso Básico de Linux
Curso Básico de LinuxJonata Marim
 

Semelhante a Relatório Final - PIBIC 2 (20)

Conceitos de sistemas operacionais
Conceitos de sistemas operacionaisConceitos de sistemas operacionais
Conceitos de sistemas operacionais
 
O que é o Linux? Quais seus benefícios?
O que é o Linux? Quais seus benefícios?O que é o Linux? Quais seus benefícios?
O que é o Linux? Quais seus benefícios?
 
Fundamentos da Linguagem Digital - Módulo 01
Fundamentos da Linguagem Digital - Módulo 01Fundamentos da Linguagem Digital - Módulo 01
Fundamentos da Linguagem Digital - Módulo 01
 
Sistema operacional-1-ano-de-informatica-completa
Sistema operacional-1-ano-de-informatica-completaSistema operacional-1-ano-de-informatica-completa
Sistema operacional-1-ano-de-informatica-completa
 
Sistema Operativo Open Source
Sistema Operativo Open SourceSistema Operativo Open Source
Sistema Operativo Open Source
 
Linux do mec
Linux do mecLinux do mec
Linux do mec
 
Introdução Linux
Introdução LinuxIntrodução Linux
Introdução Linux
 
apresenta_linux_ceue
apresenta_linux_ceueapresenta_linux_ceue
apresenta_linux_ceue
 
So2 aula00-cic4 na446-segunda
So2 aula00-cic4 na446-segundaSo2 aula00-cic4 na446-segunda
So2 aula00-cic4 na446-segunda
 
unix_basico.pdf
unix_basico.pdfunix_basico.pdf
unix_basico.pdf
 
Informática Educacional
Informática EducacionalInformática Educacional
Informática Educacional
 
Desconstruindo monolitos - Construindo microservicos em Delphi
Desconstruindo monolitos - Construindo microservicos em DelphiDesconstruindo monolitos - Construindo microservicos em Delphi
Desconstruindo monolitos - Construindo microservicos em Delphi
 
TDCPOA2018 - Trilha Delphi - Desconstruindo Monolitos Delphi
TDCPOA2018 - Trilha Delphi - Desconstruindo Monolitos DelphiTDCPOA2018 - Trilha Delphi - Desconstruindo Monolitos Delphi
TDCPOA2018 - Trilha Delphi - Desconstruindo Monolitos Delphi
 
Quem Tem Medo do Terminal?
Quem Tem Medo do Terminal?Quem Tem Medo do Terminal?
Quem Tem Medo do Terminal?
 
Linux
LinuxLinux
Linux
 
Sistemas Operacionais 2 -aula00
Sistemas Operacionais 2 -aula00Sistemas Operacionais 2 -aula00
Sistemas Operacionais 2 -aula00
 
Curso Básico de Linux
Curso Básico de LinuxCurso Básico de Linux
Curso Básico de Linux
 
Modelo osi
Modelo osiModelo osi
Modelo osi
 
Open Source
Open SourceOpen Source
Open Source
 
Open Source
Open SourceOpen Source
Open Source
 

Relatório Final - PIBIC 2

  • 1. Federal de Uberlândia Universidade Faculdade de Engenharia Química 1 SIMULAÇÃO COMPUTACIONAL DA DINÂMICA DE FLUIDOS (CFD) UTILIZANDO O SOFTWARE LIVRE OPENFOAM RELEASE 1.4.1 SOUZA, D.B.1 e MURATA, V.V.2 FACULDADE DE ENGENHARIA QUÍMICA DA UNIVERSIDADE FEDERAL DE UBERLÂNDIA AV. JOÃO NAVES DE ÁVILA, 2121. BLOCO K DO CAMPUS SANTA MÔNICA. UBERLÂNDIA. MG. deliobs@gmail.com, valeria@ufu.br RESUMO A simulação computacional da dinâmica de fluidos tem aplicações práticas importantes na área de Engenharia Química, como na previsão da poluição atmosférica, no estudo de padrões de escoamento na perfuração de poços de petróleo ou no projeto e na análise de desempenho de equipamentos de separação, mistura e reação. Neste trabalho são apresentados as características gerais do software livre OpenFOAM e os princípios do Método dos Volumes Finitos implementado no software livre Scilab. O sistema operacional utilizado é o Linux. Além de disseminar a cultura de utilização de softwares livres, que não exigem o pagamento de licenças proprietárias, para fins de ensino e de pesquisa, este trabalho avalia o OpenFOAM como alternativa aos softwares comerciais como o Fluent® , regularmente utilizado em vários projetos e pesquisas desenvolvidas na Faculdade de Engenharia Química da Universidade Federal de Uberlândia. São apresentadas simulações da difusão unidimensional não estacionária com condições de contorno de primeiro tipo, que demonstram a relação entre a precisão da solução e o número de volumes finitos internos. A simulação do escoamento de um fluido numa cavidade é apresentada e discutida. Os resultados preliminares apresentados indicam que o OpenFOAM tem características de robustez e interação com o usuário suficientes para elegê-lo como uma alternativa confiável aos softwares comerciais para a simulação de processos químicos. PALAVRAS-CHAVE: OpenFOAM, CFD, Volumes Finitos, Scilab
  • 2. Federal de Uberlândia Universidade Faculdade de Engenharia Química 2 ABSTRACT The computer simulation of the dynamics of fluids has important practical applications in the field of Chemical Engineering, and in anticipation of air pollution, the study of patterns of ‘flow in the drilling of oil wells or the design and analysis of performance of separation equipment, mixing and reaction. This work presents the general characteristics of free software OpenFOAM and also the principles of Finite Volumes Method employed in the solution of ordinary and partial differential equations. The operational system employed is Linux. In addition to spreading the culture of using free software that does not require the payment of allowances own, for education and research, this work assesses possibilities for the use of free software OpenFOAM as an alternative to commercial software such as Fluent, regularly used in various projects and researches undertaken at the School of Chemical Engineering of Federal University of Uberlândia. The simulations of the one-dimensional and dynamic diffusion problem with first kind conditions demonstrate the relationship between accuracy of the solution and number of internal finite volumes. The simulation of the flow of a fluid into a cavity obtained by the software OpenFOAM is also presented. These preliminary results indicate that the OpenFOAM has characteristics of strength and interaction with the user enough to elect him as a reliable alternative to commercial software for the simulation of chemical processes. Keywords: OpenFOAM, CFD, Finite Volumes, Scilab 1. INTRODUÇÃO O conhecimento prévio das características de um fluido específico sob diferentes condições ajuda consideravelmente no projeto de tubulações, na escolha de bombas ou turbinas que o impulsionarão e na definição de aplicações relacionadas ao cotidiano. Um exemplo é a previsão da capacidade de aderência e do nível de deformação do asfalto quando submetido a altas tensões superficiais. em que cita-se o exemplo do asfalto quando submetido a altas tensões superfiiciais. A Dinâmica dos Fluidos Computacional (DFC), em inglês Computational Fluid Dynamics (CFD), utiliza-se de métodos numéricos e algoritmos para resolver e
  • 3. Federal de Uberlândia Universidade Faculdade de Engenharia Química 3 analisar problemas de escoamento de fluidos, que em muitos casos não possuem solução por métodos analíticos. Logo, DFC é uma ferramenta que possibilita o estudo da transferência de massa, energia, reações químicas, interações entre fluidos e estruturas, por meio da construção de um sistema virtual que represente os principais aspectos do sistema real. O alto custo das licenças de aquisição é um fator determinante para que haja pouca disseminação de softwares de simulação computacional no meio acadêmico. O trabalho visa propor o uso do software OpenFOAM . 2. CARACTERÍSTICAS GERAIS DO SOFTWARE LIVRE OPENFOAM O OpenFOAM é um software de distribuição livre e que portanto pode ser copiado, modificado e até redistribuído, e pode ser executado em distribuições LINUX (Debian , Ubuntu, etc) tanto em versões de 32 bits como de 64 bits. Isso representa uma grande vantagem visto que a plataforma de suporte também é livre, ou seja, são eliminados custos com a aquisição do Sistema Operacional e do software empregado na simulação. A tecnologia desse programa consiste em um conjunto de módulos em C++ , usados para construir resolvedores que simulam problemas específicos em engenharia; utilidades empregadas nas tarefas de pré- processamento e pós-processamento como visualização de dados e processamento de malhas; bibliotecas para criação de ferramentas como banco de modelos físicos. As equações diferenciais parciais que governam cada caso são discretizadas no tempo e no espaço sucessivamente, sendo que no espaço considera-se uma geometria variável, utilizando o método dos volumes finitos. O ambiente Linux teve sua origem com o Unix no ano de 1970. O Linux é uma cópia do Unix feita por Linus Torwald, estudante finlândes do curso de Ciência da Computação. Inicialmente o Unix era usado apenas em ambientes corporativos e educacionais. A primeira versão desse sistema foi a 1.0 que surgiu em março de 1992. Estima-se que atualmente o Linux tenha cerca de dez milhões de usuários, sendo empregado em ambientes corporativos, acadêmicos e domésticos. O Linux possui usuários e consultores especializados ao redor do mundo inteiro, que estão capacitados a informar e resolver quaisquer tipos de bugs relacionados ao software. O atual ambiente Linux mescla operações em linha de comando (realizadas no terminal) e operações em ambiente gráfico, tal como as realizadas no Windows. O
  • 4. Federal de Uberlândia Universidade Faculdade de Engenharia Química 4 conjunto de todas essas multi-funções é gerenciado pelo Kernel, que em relação aos concorrentes como Windows e o próprio UNIX, é mais leve, pois dispõe de 12 milhões de linhas de código, enquanto que os outros dois dispõe de 50 e 30 milhões de linhas respectivamente. O Linux possui diversas distribuições que estão regulamentadas pelos termos da GNU (General Public License), um programa pode ser modificado, desde que isso seja colocado em código fonte e aberto, para que outros usuários tenham a oportunidade de incorporar ao Kernel, compatibilidade que os satisfaçam, tal como a instalação de pacotes de utilidades particular, ou até mesmo a implementação de sistemas de proteção para o SO que atendam as suas necessidades. Tais melhorias, todavia, não podem ser comercializadas, ficando portanto acessíveis á outros usuários sem quaisquer ônus financeiro. As principais distribuições existentes são: Red Hat 6.0, Debian, Slackware, Caldera OperaLink e o S.u.S.E Linux. O ambiente de trabalho em algumas distribuições assemelha-se muito com o sistema operacional Windows. As operações com os diretórios são feitas por janelas, há uma organização hierárquica de pastas, o processo de acesso ao ambiente de trabalho é feito mediante a criação de usuários no sistema, que possui pastas próprias que não estão localizadas no diretório raiz, mas sim dentro de uma outra pasta, o que ajuda a proteger esse diretório contra possíveis ataques de invasores. 2.1 Instalação do OpenFOAM Dentro do contexto do ambiente de trabalho Linux, onde nem todos os pacotes já se encontram compilados ou dispõem de ícones, que fazem link com os respectivos arquivos de instalação, faz-se necessário dispor de certa habilidade em trabalhar no ambiente do terminal (tal como o DOS). Isso se torna útil para tornar mais fácil a extração de pacotes e sua posterior compilação. Para a instalação do OpenFOAM isso também se faz necessário, uma vez que os pacotes não estão compilados, logo sua instalação não é tão trivial. A primeira parte na instalação desse software consiste em criar pastas dentro do diretório Home/nomedousuário/, que serão utilizadas para descompactar todo o software que será previamente baixado da internet pelo endereço, http://www.opencfd.co.uk/openfoam/downlo ad.html. Nessa descrição será mostrado o processo de instalação da versão OpenFOAM 1.4.1, para o sistema operacional Ubuntu 7.10 nas plataformas de 32 e 64 bits.
  • 5. Federal de Uberlândia Universidade Faculdade de Engenharia Química 5 Deve-se inicialmente abrir a janela do terminal, a partir de: Aplicações> Acessórios> Console, onde a seguinte linha será mostrada: usuário@nomedocomputador:~$. Digite: mkdir OpenFOAM. Por esse comando cria-se o diretório OpenFOAM. Em seguida entra-se no diretório acima criado e cria-se o diretório linux (32 bits) e linux64 (64bits). A partir do seguintes comandos: cd OpenFOAM mkdir linux (para a versão de 32 bits) ou mkdir linux64 (para a versão de 64 bits) Baixe os arquivos de instalação: OpenFOAM-1.4.1.General.gtgz OpenFOAM-1.4.1.linuxGccDPOpt.gtgz OpenFOAM-1.4.1.linuxGccSPOpt.gtgz para dentro do diretório OpenFOAM. No diretório /Home/usuário/OpenFOAM/linux, coloque os seguintes arquivos que também devem ser baixados da internet gcc-1.4.1.linux.tgz paraview-1.4.1.linux.tgz j2sdk-1.4.1.linux.tgz Os arquivos agora deverão ser descompactados dentro dos seus respectivos diretórios. Com a janela aberta anteriormente digite o comando: cd .., de modo a voltar ao diretório OpenFOAM. Nesse diretório digite então os seguintes comandos: tar xzvf OpenFOAM-1.4.1.General.gtgz tar xzvf OpenFOAM- 1.4.1.linuxGccDPOpt.gtgz tar xzvf OpenFOAM- 1.4.1.linuxGccSPOpt.gtgz Isso irá descompactar todo estrutura principal do OpenFOAM. Durante esse processo a descompactação deverá ser mostrada na janela do terminal. Terminada essa etapa digite novamente o comando cd linux, ou cd linux64 (para sistemas de 64 bits), de modo a mudar para dentro desse diretório. Tal como feito anteriormente digite o comando tar xzvf, porém agora para os arquivos contidos no diretório. tar xzvf gcc-1.4.1.linux.tgz tar xzvf paraview-1.4.1.linux.tgz tar xzvf j2sdk-1.4.1.linux.tgz Feito isso, toda a estrutura do software já está instalada no disco rígido do computador, porém deve-se editar o arquivo .bashrc localizado no diretório /Home/usuário, para que o Linux reconheça a existência do programa. Ainda na mesma janela do terminal digite o comando cd, em seguida digite o seguinte comando: gedit .bashrc fazendo com que esse arquivo seja aberto com o editor de texto. Deve-se então adicionar a seguinte linha ao final do mesmo: # Configuração do OpenFOAM
  • 6. Federal de Uberlândia Universidade Faculdade de Engenharia Química 6 .$HOME/OpenFOAM/OpenFOAM- 1.4.1/.OpenFOAM-1.4.1/bashrc (todo esse comando é digitado na mesma linha). Para sistemas de 64 bits deve-se ainda adicionar a seguinte linha para que o Linux reconheça que a versão instalada é compatível com a plataforma usada: $WM_64=on. Após esse passo, salve o arquivo .bashrc e digite o seguinte comando no terminal: .$HOME/.bashrc. Feche a janela do terminal e a abra novamente, deverá ser verificado o aparecimento de três linhas referentes à instalação do software. Um bom teste para verificar o resultado da instalação é o comando foamInstallationTest. Caso o relatório final apresente: Critical systems ok e Base configuration ok, o sistema está configurado de modo correto, caso contrário, pode ser recomendado a instalação de softwares que estiverem faltando. É comum durante esse resultado aparecem problemas de comunicação com o ssh ou com o rsh, deve-se então recorrer ao pacote de gerenciamento de softwares (como Synaptics, por exemplo) que está localizado em: Sistema> Administração> Gerenciador de Pacotes Synaptics e instalar o software Openssh e suas dependências e executar novamente o comando foamInstallationTest. Caso todas as configurações estejam corretas, o próximo passo é fazer a cópias de todos os casos pré-programados no software para outro diretório de modo que os mesmos possam ser modificados sem quaisquer riscos de danos. Para tanto abra uma janela do terminal e digite nela o seguinte comando: mkdir-p $HOME/OpenFOAM/${LOGNAME}- 1.4.1/run isso fará com que o diretório nomedousuário-1.4.1/run seja criado dentro da pasta OpenFOAM. Em seguida digite o seguinte comando para copiar os arquivos para a pasta criada: cp -r $WM_PROJECT_DIR/tutorials $HOME/OpenFOAM/${LOGNAME}- 1.4.1/run 2.2 Etapas de pré-processamento, solução e pós-processamento O processo de simulação computacional da dinâmica de fluids compreende três estágios: pré-processamento, solução e pós- processamento. Estas etapas são detalhadas na seqüência. 2.2.1 Pré-Processamento Consiste na criação da malha que compreende o domínio a ser estudado e na
  • 7. Federal de Uberlândia Universidade Faculdade de Engenharia Química 7 definição dos resolvedores a serem utilizados. O OpenFOAM considera faces internas que conectam duas células e faces externas que pertencem somente a uma célula e que também representam o contorno do domínio. As condições de contorno nas faces podem ser do tipo Dirichlet onde o valor da variável dependente é fixo no contorno e do tipo Neumann que representa o gradiente da variável normal ao contorno ou outras definidas por condições físicas. No OpenFOAM são utilizadas as seguintes bibliotecas para construção do domínio do problema a ser estudado: boxTurb – Faz uma caixa de turbulência que se conforma à um dado espectro de energia. engineSwirl – Gera um escoamento para cálculos em motores. mapFields – Mapeia os campos de volume, lendo e interpolando todos os campos presentes no diretório de tempo. Casos paralelos ou não são tratados sem a necessidade de reconstrui-los. setFields – Seleciona uma célula definida através de um dicionário. blockMesh – Gera a malha utilizada na resolução do caso estudado. a) Conversão de Malha ansysToFoam – Converte um arquivo de malha ANSYS, exportado a parir de I- DEAS para o formato OpenFOAM . ccm26toFoam – Conversor de malhas CCM para o formato OpenFOAM utilizando as bibliotecas da versão 2.6 do CCM. cfxToFoam – Conversor de uma malha CFX para o formato Foam. fluentMeshToFoam – Converte uma malha gerada no Fluent para o formato OpenFOAM incluindo o tratamento de regiões de fronteira. FoamMeshToFluent – Transforma uma malha do formato FOAM para o Fluent. GambitToFoam – Converte uma malha feita pelo GAMBIT para o formato OpenFOAM gmshToFoam – Faz a leitura de um arquivo do tipo .msh escrito pelo Gmsh. ideasUnvToFoam – Converte malhas a partir do I-DESA formato .unv para o formato OpenFOAM. kivaToFoam – Conversor para uma malha
  • 8. Federal de Uberlândia Universidade Faculdade de Engenharia Química 8 do tipo KIVA3v para outro no formato OpenFOAM. mshToFoam – Lê um arquivo no formato .msh gerado por um Sistema netgenNeutralToFoam – Faz a leitura de um arquivo no formato Netgen 4.4. plot3dToFoam – conversor para malhas do tipo Plot3d (formato ascii). SammToFoam – Conversor de malhas do tipo STAR-CDSAMM para o formato FOAM. starTofoam – Conversor de malhas STAR- CD SAMM para do formato OpenFOAM. tetgentoFoam Faz a leitura de arquivos do tipo .ele, .node e .faces tal como escrito pelo tetgen writeMeshObj – Faz a depuração de malhas. Malhas escritas com três arquivos separados OBJ podem ser vistos com javaview por exemplo. • Manipulação de malhas attachMesh – Anexar topologicamente malhas soltas usando modificadores prescritos de malhas. autoPatch – Divisor de faces externas dentro de pacotes baseados em características dos ângulos cellSet – Seleciona uma célula definida através de um dicionário. checkMesh – Avalia a validade uma malha de pontos gerada. couplePatches – Utilitário para gravação cíclica e processadores de pacotes/ createPatch – Utilitário para criar pacotes das fronteiras selecionadas. As faces são criadas, seja por pacotes já existentes ou a partir do faceSet. deformedGeom – Deforma uma polyMesh usando um deslocamento do campo U e um fator de escala fornecidos como argumentos. faceSet – Seleciona uma face definida através de um dicionário. flattenMesh – Achatam-se os planos da frente e de trás de uma malha cartesiana bidimensional. insideCells – Toma células com centro no interior da superfície. Requer que essa seja fechada e conectada pelos extremos.
  • 9. Federal de Uberlândia Universidade Faculdade de Engenharia Química 9 mergeMeshes – Utilitário cuja função é juntar duas malhas moveEngineMesh – Resolvedor para movimentação de malhas para cálculos em motores. moveDynamicMesh – Utilitário para movimentação de malha e mudanças topologicas. moveMesh – Resolvedor para movimentação de malhas. objToVTK – Faz a leitura de um arquivo da linha obj e converte para dentro do vtk. pointSet – Seleciona um ponto e o define através de um dicionário. refineMesh – Utilitário para refinar células tanto de domínios tridimensionais quanto bidimensionais. renumberMesh – Renumera a lista de células, lendo e renumerando todos os campos a partir dos diretórios de tempo. rotateMesh – Rotaciona a malha e os campos a partir de uma direção n1 para outra n2. splitMeshRegions – Particiona a malha dentro de múltiplas regiões e então as escreve dentro de diretórios consecutivos de tempo. Cada região é definida como um domínio em que as células podem ser “alcançadas” . splitMesh – Particionador de malhas criando faces internas e externas. Usa attachDetach. stitchMesh – “Costura” uma malha. subsetMesh – Seleciona uma secção de malha baseado em cellSet. transformPoints – Transforma os pontos da malha no diretório polyMesh. tetDecomposition – Toma uma malha e a decomposição dentro de um tetraedro utilizando célula de face. zipUpMesh – Faz a leitura numa malha em seguida “fecha”as células dentro um poliedro de modo válido. b) Solução Utilização das equações nos solucionadores previamente escolhidos no passo anterior para geração de resultados. O OpenFOAM utiliza alguns
  • 10. Federal de Uberlândia Universidade Faculdade de Engenharia Química 10 solucionadores que estão divididos por categoria em vários diretórios, que são: escoamentos incompressíveis, combustão e análise de estress em corpos sólidos • Escoamentos Incompressíveis boundaryFOAM - Solucionador para esocamentos turbulentos no estado estacionário para uma dimensão que gera as condições da camada limite para uso na simulação. IcoDyMFoam – Solucionador de escoamentos de fluidos incompressíveis laminares e Newtonianos, utilizando uma malha dinâmica. IcoFoam - Solucionador para escoamento transiente, laminar de fluidos Newtonianos. NonNewtonianoIcoFoam – Resolve escoamentos fluidos incompressíveis não- Newtonianos em regime transiente. turbFoam - Solucionador para escoamentos turbulentos em regime transiente de fluidos incompressíveis. • Escoamento compressível rhopSimplefoam – Solucionador para escoamentos em regime turbulento de fluidos compressíveis no estado estacionário para ventilação e transferência de energia. rhoSonicfoam – Resolvedor de escoamento de Density-base rhoTurbFoam – Resolvedor de escoamentos turbulentos em estado transiente para fluidos compressíveis. sonicFoamAutoMotion – Resolve problemas de escoamentos laminares transônicos ou supersônicos de um gás compressível em estado transiente e com movimentação da malha. sonicLiquidFoam – Resolve problemas cujas as características são: fluxo laminar de líquidos compressíveis transônicos ou supersônicos sonicTurbFoam – Resolvedor para escoamentos turbulentos trans ou supersônicos de gases compressíveis. • Escoamentos Multifásicos bubbleFoam – Solucionador para escoamentos incompressíveis de fluidos bifásicos.
  • 11. Federal de Uberlândia Universidade Faculdade de Engenharia Química 11 cavitatingFoam – Soluciona escoamentos de fluidos compressíveis em estado líquido através do modelamento por equações de estado barotrópicas. interFoam – É um solucionador para fluidos incompressíveis, que capta a interface pelo uso do método VOF, que utiliza malhas cartesianas para calcular o fluxo de fluidos que passam por objetos sólidos. Esse método computacional, permite o trabalho com duas fases que não se misturam, através do compartilhamento das variáveis usadas pelas duas fases. Isso permite determinar o volume de cada fase. lesInterFoam – Solucionador para dois fluidos incompressíveis, que captura a sua interface. A turbulência é modelada utilizando um modelo LES, que consiste na simulação de grandes fluxos turbulentos multiphaseInterFoam – Soluciona escoamentos em que podem estar envolvidas quaisquer quantidades de fluidos incompressíveis e imiscíveis. O resolvedor consegue capturar as multiplas interfaces existentes usando um método VOF. rasInterFoam – Solucionador para dois tipos de fluidos mostrando sua interface. A turbulência é modeladda pelo uso de modelo RANS (Reynolds Average Navier-Stokes turbulence model) selecionado, ou seja, utiliza as equações de Navier-Stokes para escoamentos turbulentos settlingFoam – Soluciona dois fluidos incompressíveis para simular a resolução da fase dispersa. twoPhaseEulerFoam – Solucionador para sistemas de dois fluidos incompressíveis com duas fases em que uma delas está dispersa, como por exemplo, bolhas de gás em um líquido. twoLiquidMixingFoam – Resolve um sistema formado pela mistura de dois liquidos incompressíveis. • Simulação Numérica Direta e Large Eddy Simulation (LES) ou simulação de grandes escalas. channelOodles – Resolvedor LES para escoamentos incompressíveis num canal dnsFoam – Resolvedor de simulação direta em caixas isotrópicas Combustão coldEngineFoam – Solucionador para
  • 12. Federal de Uberlândia Universidade Faculdade de Engenharia Química 12 escoamentos frios em motores de combustão interna. dieselEngineFoam – Código para resolução de combustão à diesel via dispersão de pe- quenas gotas. engineFoam – Resolvedor para casos em que há combustão interna em motores. reactingFoam – código pra resolução de sistemas com reação química. xiFoam – Soluciona sistemas com escoamentos turbulentos em que há fluidos previamente misturados ou parcialmente misturados. Xoodles – Utilizado para sistemas nas mesmas condições do resolvedor anterior, porém são utilizados modelos do tipo LES. Resolvedores para transferência de energia buoyantFoam – Resolvedor para fluidos compressiveis em escoamento turbulento em estado transiente para ventilação e transferência de energia. buoyantSimpleFoam – Resolvedor para o estado estacionário de flutuações em escoamentos turbulentos de fluidos compressíveis para transferência de calor em sistemas de ventilação. • Eletromagnético eletrostaticFoam – Resolvedor para sistemas eletromagnéticos mhdFoam – Resolvedor para sistemas de Hidrodinâmica Magnética. Os escoamentos são fluidos incompressíveis laminares sob influência de um campo magnético. • Análise de tensões em sólidos solidDisplacementFoam – Fornece a resolução transiente segregada utilizando o método dos volumes finitos de esforços elásticos lineares, pequenas tensões de um corpo sólido. Há também opções para cálculo da difusão térmica. SolidEquilibriumDisplacementFoam – Resolvedor para o estado estacionário segregado para volumes finitos de uma deformação linear elástica, pequenas deformações de um corpo sólido. • Finance financialFoam – Solucionador de Black- Scholes para preços e comodidades c) Pós-processamento
  • 13. Federal de Uberlândia Universidade Faculdade de Engenharia Química 13 Apresentação dos resultados obtidos a partir da manipulação das equações que governam o escoamento estudado sob modo gráfico e por meio de relatórios onde são informados resíduos e acurácia do método empregado, além do tempo de processamento. Os utilitários de Pós processamento estão divididos nas seguintes categorias: Pós processamento de gráficos, Conversores de dados para pós processamento, Pós- processamento dos domínios de velocidade, Pós-processamento dos campos de tensões, Pós-processamento em paredes, Pós- processamento em patches, Utilitários diversos de Pós-processamento e Pós procesamento em paralelo. • Pós-Processamento de gráficos ensight76Foamexes – Módulos para EnSight 7.6 para leitura de dados OpenFOAM diretamente sem necessidade de tradução por qualquer outro programa. paraFoam – É o principal ferramenta de pós-processamento provida com o OpenFOAM é um módulo leitor para rodar com o ParaView, uma aplicação cujo código fonte é aberto. Essa ferramenta é utilizada para exibição de todos os resultados obtidos na simulação do escoamento estudado. • Conversores para pós processamento de dados foamDataToFluent – Traduz dados do formato OpenFOAM para o formato Fluent. foamToEnsight – Tradução de dados do OpenFOAM para o formato EnSight. foamToFieldview – Esse utilitário cria o diretório Fieldview no diretório de casos, apagando quaisquer diretórios Fieldview existentes no processo. Por padrão o conversor lê os dados em todos os diretórios de tempo e os escreve dentro de um conjunto de arquivos da forma <case>_nn.uns. onde nn é um contador que incrementa uma unidade ao diretório de tempo, ou seja, cria o diretório 1, o diretório 2 e assim sucessivamente. foamToGMV – Traduz saídas do tipo FOAM para arquivos possam ser lidos pelo GMV. foamToVTK – É um escritor de arquivos no formato VTK. smapToFoam – Traduz um arquivo de dados do tipo STAR-CD SMAP para formato OpenFOAM.
  • 14. Federal de Uberlândia Universidade Faculdade de Engenharia Química 14 • Pós-processamento dos campos de velocidade Co – Programa para desenho de gráficos configuráveis. divU – Calcula e escreve o divergente do campo de velocidade U para cada tempo. enstrophy – Calcula e escreve a vorticidade η flowType – Calcula e escreve o tipo de velocidade U de escoamento para cada intervalo de tempo. Lambda2 – Calcula e escreve o segundo maior valor da soma dos quadrados das partes simétricas e anti-simétricas do gradiente do tensor velocidade, para cada tempo. mach – Calcula e escreve o número de Mach local a partir do campo de velocidade para cada intervalo de tempo. magGradU – Calcula e escreve um escalar que é magntude do campo de velocidade para cada tempo magU – Calcula e escreve a magnitude do gradiente de velocidade U para cada tempo. Pe – Calcula e escreve o número Pe com o surfaceScalarField obtido a partir do campo phi para cada tempo. Q – Calcula e escreve o segundo tensor invariante do gradiente de velocidade para cada tempo. streamFunction – Calcula e escreve a funçãode escoamento da velocidade U em cada tempo. Ucomponentes – Escreve as três coordenadas escalares do vetor U (Ux, Uy, Uz) para cada intervalo de tempo. uprime – Calcula e escreve o campo de escalares de uprime para cada intervalo de tempo vorticity – Calcula e escreve a vorticidade do campo de velocidade U para cada tempo. • Pos-Processamento dos domínios de Tensões R – calcula e escreve o tensor de Reynolds ® para o passo atualizado de tempo. Rcomponents – Calcula e escreve os campos de escalares das seis componentes do tensor de Reynolds para cada tempo.
  • 15. Federal de Uberlândia Universidade Faculdade de Engenharia Química 15 stressComponents – Calcula e escreve o campo de escalares do tensor de tensôes sigma para cada tempo. • Pós-Processamento em paredes checkyPlus – Calcula e reporta yplus para todas as partes da parede, em cada tempo numa base de dados. wallGradU – Calcula e escreve o gradiente de U em toda parede do domínio wallHeatFlux – Calcula e escreve o fluxo de calor por todas as partes como uma condição de fronteira e imprime também o fluxo integrado para todas as partes da parede. wallShearStress – Faz o calculo e escreve a tensão de cisalhamento nas paredes para o passo atual do tempo. yplusLES – Calcula yplus nas células das proximidades por meio de um Modelo de simulação de turbulência para grandes escalas (Large Eddy Simulation – LES). • Pós processamento em cavidades patchAverage – Calcula a média dos domínios sobre todas as cavidades. patchIntegrate – Integra os dominíos sobre todas as cavidades. engineComRatio – Calcula a taxa de compressão geométrica. postChannel – Faz o pós-processamento de dados a partir dos cálculos para um escoamento num canal. plot – Faz o cálculo da pressão total para cada intervalo de tempo sample – Faz a amostragem de dados num domínio com a escolha de esquemas de interpolação, opções de amostragem e formatos de escrita. sampleSurface – Faz a amostragem por superfície. Pode ser rodado em paralelo wdot – Calcula e escreve wdot para cad tempo. writeCellCentres – Escreve os tres componentes dos centróides das células com volScalarFields. Apresentadas as principais funções do OpenFoam release 4.1.1, os fundamentos do método dos Volumes Finitos utilizado como resolvedor numérico das equações são resumidos na sequência.
  • 16. Federal de Uberlândia Universidade Faculdade de Engenharia Química 16 3. O MÉTODO DOS VOLUMES FINITOS O método dos volumes finitos é comumente empregado na resolução de problemas de valores de contorno que possuam pelo menos uma coordenada espacial, pode ser também utilizado na solução de problemas de valores inicais que sejam compostos por sucessivos problemas de valores de contorno que tenham solução para cada instante de tempo. Esse método pode ser empregado para a simulação de modelos distribuídos representados por equações diferenciais parciais ou ordinárias. O método dos volumes finitos pode ser confundido com o método das diferenças finitas, já que em muitos casos obtem-se equações de discretização idênticas para os domínios estudados, todavia o primeiro método possue um embasamento físico, que é o princípio de conservação de grandezas físicas em um volume de controle definido, o segundo possue dedução puramente matemática, utilizando séries de Taylor para aproximação das derivadas. Pode-se tomar o exemplo da equação da continuidade. Essa equação é deduzida a partir da conservação de massa num determinado volume de controle: . 0 1 A Eq. (01) é deduzida levando-se em consideração o seguinte volume de controle Figura 1: Volume de controle Nessa dedução são consideradas as entradas e saídas existentes nas três direções, em que se teria o caso mais geral possível, sendo válido tanto para o transporte de massa como também para o transporte de energia. O método dos volumes finitos propõem-se então a avaliar os termos das equações diferenciais que regem esse tipo problema, levando-se em consideração as propriedades conservativas a partir da aproximação dos termos diferenciais, por diferenças numéricas comuns do tipo Δ, ou seja, a quantidade da grandeza física que sai de um volume de controle subtraída da quantidade que entra. Tal processo então significa uma aproximação, o que pode gerar diferenças significativas no resultado numérico, isso então é corrigido a partir da divisão do z y x
  • 17. Federal de Uberlândia Universidade Faculdade de Engenharia Química 17 domínio estudado em diversos sub- domínios, internos ao domínio. A conservação da grandeza estudada será então avaliada ao longo desses subdomínios, de modo que cada um desses sub-espaços seja estudado. Isso significa então integrar a equação, seja de quantidade de movimento, da continuidade, ou do transporte de energia térmica, entre um ponto inicial e um ponto final. A construção desses volumes internos éfeita a partir da definição de um nó computacional, que normalmente está localizado no centróide do su-domínio (P). Define-se em seguida as faces, que serão as fronteiras desses volumes (w, e) conforme apresentado na Fig. 2 para uma malha unidirecional. Figura 2 – Malha computacional gerada pela aplicação do método dos volumes finitos (adaptado de Pinto e Lage (2001)) 3.1 Aplicação do método na Difusão Unidimensional de energia por uma região plana e finita A difusão térmica unidimensional é regida pela equação diferencial parcial Eq. (1): (6) Essa equação é uma simplicação da equação do transporte de energia: (7) Em que é a grandeza conservada, é a difusividade da grandeza conservada e por último S é o termo de geração. Deve-se lembrar que em (1) estão suprimidos os termos de condução em duas direções, levando-se em conta um sistema de coordenadas cartesianas. O procedimento de discretização descrito no item anterior deve ser adotado agora para a equação (1) de modo a “transformá- la” em uma equação algébrica. Integrando o termodo lado esquerdo de (1), em relação ao tempo e em relação ao espaço. ∆ ∆ ∆ (4) ∆ ∆ ∆ (5) ∆
  • 18. Federal de Uberlândia Universidade Faculdade de Engenharia Química 18 em que os termos e e w são referências a malha da fig. 2. Deve-se considerar que entre t e t+Δt, os valores da grandeza estudada são constantes e seus valores serão estudados no limite superior do intervalo (Método de Ëuler), os termos integrados no espaço, tem seus valores definidos no centro P, do volume finito cujas faces são e e w. A equação acima, tem portanto a seguinte forma: ∆ ∆ ∆ ∆ (8) em que o sobrescrito 0 indica a avaliação da grandeza no instante , equanto que os termos sem esse sobrescrito são avaliados em ∆ . Os termos expressos por derivadas parciais no segundo membro dessa equação podem ser aproximados no centro do volume finito a partir de sua avaliação nas façes do volume finito. (9) (10) O termo fonte , é fortemente não- linear. Esse termo deve ser linearizado, ficando o mesmo expresso pela Eq. (8): (11) Voltando à equação Eq.(5), substituindo Eq.(6), Eq.(7) e Eq.(8), obtem-se Eq. (9) ∆ ∆ ∆ ∆ (12) divindindo ambos os lados por ∆ e colocando , e em evidência, tem- se Eq. (10). ∆ ∆ ∆ ∆ ∆ ∆ (13) Fazendo com que: (14) (15) ∆ ∆ ∆ (16) Os termos de Eq. (10) serão dados por Eq. (14-16) ∆ ∆ ∆ (17) ∆ ∆ (18) ∆ (19) Substituindo as equações Eq(14-16) em Eq. (10), chega-se em Eq (20):
  • 19. Federal de Uberlândia Universidade Faculdade de Engenharia Química 19 (20) que deve ser aplicada para cada ponto da malha unidimensional, o sistema matricial do tipo . , terá a matriz A no formato tridiagonal, ou seja, com os elementos da diagonal acima e a baixo da principal não nulos e o restante nulos. Diante do exposto podemos então considerar a resoução seguinte problema de estabelecimento de um perfil de temperatura numa região plana finita. A partir simplificação da equação Eq. (6), considerando a densidade e difusividade como 1 e desconsiderando o termo de geração, tem-se Eq. (21) e as condições de resolução do problema em Eq. (22-24) , 0 1 (21) 0, 0 (22) 0, 1 (23) 1, 0 (24) Nessa análise consideraremos ∆ . Em função disso os coeficientes e serão calculados aplicando-se a razão ∆ , em que ∆ é o tamanho de cada volume interno. Como as condições de contorno associadas ao modelos são de primeiro as equações discretas são geradas para os volumes internos do domínio, começando a partir da posição ∆ , e terminando em 1 ∆ . Como os volumes internos são constantes, essa equação toma a forma de Eq. (25): , 1, … , , (25) sendo m a quantidade de subdomínios. Aplicada sob todos os volumes internos, obtemos um conjunto de equações algébricas da forma de Eq. (25), que pode ser colocado em forma matricial dada por Eq. (26). (26) em que A possui uma estrutura do tipo tridiagnoal: 0 0 … … 0 … 0 0 (27) Esse tipo de sistema pode ser resolvido pelo algorítmo Thomas, pelo qual as operações de eliminação Gaussian são realizadas apenas com os elemenos não nulos de A. Conforme escrito nas Eq. (28-29). , , 1, … (28)
  • 20. Federal de Uberlândia Universidade Faculdade de Engenharia Química 20 , 1, … , (29) Através de uma substituição reversa chega- se a Eq. (31) e Eq.(32): , 1, 2, … ,1 (30) , 1, 2, … ,1 (31) que é a solução do sistema de equações dado por Eq. (26). O método dos Volumes Finitos foi implementado no software livre Scilab e aplicado na solução numérica do problema descrito. Os detalhes do algoritmo e uma descrição do código implementado são apresentados na seqüência 3.2 Implementação no Software Scilab O método descrito acima foi então implementado no software Scilab, cuja licença também é livre. //Evolucao do Perfil de temperatura admimensional na parede plana //volumes de controle com tamanhos constantes mode(-1) lines(0) clear clc clf //função---------------------------------------------- function[phi]=TDMAsolve(A,B) n=size(A,1); a(1)=A(1,1); b(1)=B(1); for i=2:n a(i)=A(i,i)-A(i,i-1)*A(i-1,i)/a(i-1); b(i)=B(i)-(A(i,i-1)/a(i-1))*b(i-1); end; phi(n)=b(n)/a(n); for k=1:n-1 phi(n-k)=(b(n-k)-A(n-k,n-k+1)*phi(n-k+1))/a(n-k) end; endfunction //Descrição do Domínio------------------------------- txt=['Dominio (0 a 1)';'Numero de volumes internos';'Tempo inicial';'Tempo de simulacao']; valor=x_mdialog('Condicoes do Problema',txt,['1';'4';'0';'1']) dom=evstr(valor(1)); N=evstr(valor(2)); ti=evstr(valor(3)); temp=evstr(valor(4)); Dx=dom/(N+1); Dt=Dx/2 Ntemp=(temp)/Dt; clc; //Condições do problema------------------------------ txt=['phi(0,t)';'phi(x,0)';'phi(1,t)']; ci=x_mdialog('Condicoes do tipo phi(x,t)',txt,['0';'0';'1']) phiot=evstr(ci(1)) phixo=evstr(ci(2)) phi1t=evstr(ci(3)) clc aux=1/Dx; CI=[phiot]; CC=[phi1t]; P=[]; phio=[];
  • 21. Federal de Uberlândia Universidade Faculdade de Engenharia Química 21 for i=1:1:N phio=[phio; phixo]; for j=1:1:N if (i==j) then A(i,j)=2*aux+Dx/Dt; elseif (i-j==1) A(i,j)=-aux; elseif (i-j==-1) A(i,j)=-aux; elseif (j==1) B(j,1)=aux*phiot+(Dx/Dt)*phixo; elseif (j==N) then B(j,1)=(Dx/Dt)*phixo+aux*phi1t; else B(j,1)=(Dx/Dt)*phixo; end; end; end; for t=ti+Dt:Dt:temp CI=[CI phiot]; CC=[CC phi1t]; [phi]=TDMAsolve(A,B); P=[P phi]; x=[0:Dx:dom] L=[phiot;phi;phi1t]//vetor auxiliar plot2d(x,L,5) for j=1:N if (j==1) B(j,1)=aux*phiot+(Dx/Dt)*phi(j,1); elseif (j==N) then B(j,1)=(Dx/Dt)*phi(j,1)+aux*phi1t; else B(j,1)=(Dx/Dt)*phi(j,1); end; end; end; xtitle('Solucao Numerica', 'x','phi'); P=[CI; phio P; CC]; x_message('fim da simulacao'); 3.3 Descrição da rotina computacional A rotina do programa apresentado pode-ser descrita de modo sucinto da seguinte forma: São informadas à rotina as condições do domínio, o tempo de simulação. Em seguida são colocadas as condições iniciais e de contorno para o caso proposto. Tais valores são armazenados em suas respectivas variáveis. Inicia-se apartir daí o cálculo dos coeficientes de Eq. (8), a matriz A é então prenchida uma única vez num laço ao longo do espaço. A matríz mostrada em Eq. (26), chamada por B no algorítmo é também prenchida. A rotina entra num laço que varia no tempo e no espaço, de modo é calcular todos os valores , chamado de phi na rotina computacional, através da função TDMAsolve. Essa função faz a manipulação dos elemenos de A, pelo Algorítmo de Thomas e os aplica no cálculo dos valores de . 3.3.1 Efeito do aumento do número de volumes internos Com o algorítmo mostrado no item anterior pôde-se fazer uma avaliaçao do aumento do número de volume internos na precisão das curvas obitidas ao longo do espaço, pôde- se ainda fazer uma comparação com a Figura 3 – Algoritmo utilizado na resolução do problema de difusão de energia numa região plana
  • 22. Federal de Uberlândia Universidade Faculdade de Engenharia Química 22 solução analítica obtida quando são empregados a mesma quantidade de dados. A seguir são mostrados resultados da simulação quando são definidos na rotina respectvamente 4 e 400 volumes internos Nota-se, que ao se aumentar em dez vezes a resolução da malha computacional a variação de temperatura ao longo do tempo e da posição na barra pode ser detectada com maior acurácia. Vê-se isso ao se avaliar a conformidade das curvas apresentadas em ambas as figuras. Na primeira, a oscilação se dá de modo mais abrupto ao longo da posição enquanto que na segunda essa oscilação apresenta-se de modo mais suave. O que indica uma maior precisão de dados ao longo do domínio da barra. A solução mostrada na Fig. 4 e Fig. 5 foi comparada com a solução da EDP que rege o problema, obtida a partir das funções internas do Maple 12.0, utilizando-se as linhas de comandos mostradas na Fig. 6. O gráfico obtido pelo Maple 12.0 é apresentado na Fig. 7 para tempos específicos. Os perfis obtidos são equivalentes aos gerados pelo código implementado, demonstrando a precisão da solução, que aumenta com o número de volumes finitos utilizado. Figura 4 – Difusão unidimensional para uma barra subdvidida em 4 volumes de controle internos Figura 5 – Difusão unidimensional para uma barra subdivida em 400 volumes de controle internos
  • 23. Federal de Uberlândia Universidade Faculdade de Engenharia Química 23 4. SIMULAÇÃO DO ESCOAMENTO DE UM FLUXO DE CAVIDADE (LID-DRIVEN CAVITY FLOW)UTILIZANDO O OPENFOAM O estudo consiste em mostrar as etapas de pré-processamento, solução e pós processamento utilizando o software livre OpenFOAM, para um problema envolendo um escoamento de um fluido isotérmico, incompressível, dentro de um domínio quadrado, considerando o espaço bi- dimensional. As equações que governam o estudo desse caso, são as de Navier-Stoques para o domínio bi-dimensional dadas por Eq. (32- 34) . 0 (32) . . . (33) . . . 34 > t:='t':with(PDEtools): > de1:=diff(Phi(x,t),t)=diff(Phi(x,t),x,x); Sol1:=pdsolve(de1,{Phi(0,t)=1,Phi(1,t)=0, Phi(x,0)=0},type=numeric); Figura 6 – Algorítmo implementado em Maple para reresolução da EDP da difusão unidimensional de calor Figura 7 – Solução obtida utilzando o Maple 12.0 phi
  • 24. Federal de Uberlândia Universidade Faculdade de Engenharia Química 24 O termo fonte da equação pode ser escrito por Eq. (35-36): . 35 . (36) 4.1 Modelo numérico utilizado na discretização do domínio A Eq. (33) pode ser escrita na forma de Eq. (37) (37) Que integrada sob o volume de controle fornece Eq. (38): ∑ . . ∆ (38) Em que J e S podem ser escritos na forma de Eq. (39) e Eq. (40): (39) (40) A malha utilizada para representação do problema é mostrada na Fig. 8: As avaliações dos termos de fluxo são feitas por Eq. (41-44): . ∆ ∆ ∆ (41) (42) . ∆ ∆ ∆ (43) (44) O termo fonte da Eq. (36) pode ser avaliado pela expressão ∆ ∆ ∆ . Os modelos para as células da fronteira do domínio são dados Eq(45-46): ∆ (45) Figura 8 – Malha utilizada na resolução da equação de transporte (extraída de Ambatipudi (2008))
  • 25. Federal de Uberlândia Universidade Faculdade de Engenharia Química 25 ∆ (46) Na face oeste o termo de convecção será zero, devido a condição da velocidade de fronteira, porém na face leste ele pode ser calculado por ∆ 4.2 Algorítmo simplificado de resolução Nessa etapa será usado o métdo de resolução por equações de pressão “linkadas”proposto inicialmente por Patankar e Spalding. Por ele será substituído na equação da continuidade a equação de momento u e v resultando na equação de pressão discretas. Nesse método no entanto são adotadas correções para as velocidades que sao dadas por Eq. (47- 49)uações abaixo: ′ (47) ′ (48) ′ (49) Em que , e são valores estimados e ′ , ′ e ′ são valores corrigidos. Tem-se as Eq. (50-51) ′ ′ ∆ ′ ′ (50) ′ ′ ∆ ′ ′ (51) Aproximações para a correção de velocidade são feitas ignorando-se ∑ ′ e ∑ ′ , substituindo esses valores para a velocidade corrigida na equação da continuidade gera-se a Eq. (52-58) escritas em função da pressão: ′ ′ (52) ∆ (53) ∆ (54) ∆ (55) ∆ (56) (57) (58) Em que ∆ e ∆ 4.3 Resultados pelo OpenFOAM para o problema do escoamento em cavidade Uma malha uniforme é proposta para as direções x e y. As equações de momento são então discretizada pelo algorítmo descrito anteriormente. Os resultados foram obtidos para um caso bidimensional utilizando uma malhar tridimensional (20x20)
  • 26. Figura 9 paro cas ambiente Figura escoame escoame 5. C PARA T 9 – Simulaç so cavity uti e linux 10 – Var ento do fl ento CONCLUSÃ TRABALHO Fede F ção das linh ilizando o O riação da luido na d ÃO E SUGE OS FUTURO eral de Ub Faculdade d has de corre OpenFOAM velocidade direção x ESTÕES OS berlândia de Engenha ente em de do Ne com Sc aco de ma O din con per ma res pro pro for do ap a sof afi viá ex sob op int A de me sof mu sua com a Universi aria Químic este trabalho mputacional ilab, que é oplado ao Al sistemas de atriz de coefi programa nâmica da ndições de rmitiu avali alha de disc sultados ob ocessamento ocessamento ram executad escoamento ós superados instalação ftware. Os irmar que o ável para a s igindo do u bre as equaç eradores vet teração com disponibilida propriedad elhor avaliad ftware na ulticomponen a interação c mo o Fluent idade ca o foi implem l utilizand o Método d lgoritmo de equações alg icientes com foi usado difusão u contorno iar o efeito cretização so btidos. As o, process o do softwar das com suce o de um flu s todos os pr do sistema resultados OpenFOAM imulação da usuário conh ões fundame toriais e tenso o usuário e r ade de corre des físico-q da, assim com a simulaç nte com ge com outros e o CFX. mentado um do o softwa dos Volume Thomas para gébricas line estrutura tri para a s unidimension de primeiro do refinam obre a prec etapas d samento e re livre Ope esso para a s uido numa c roblemas inic a operaciona obtidos p M é uma al a dinâmica de hecimento d entais do mo oriais e tendo robustez sati elações para químicas d mo o desemp ão de eometria com softwares co 26 ma rotina are livre s Finitos a solução eares com diagonal. imulação nal com o tipo e mento da cisão dos de pré- e pós- enFOAM imulação cavidade, ciais com al e do permitem lternativa e fluidos, detalhado odelo e os o grau de sfatórios. predição deve ser penho do sistemas mplexa e omerciais
  • 27. Federal de Uberlândia Universidade Faculdade de Engenharia Química 27 6. BIBLIOGRAFIA AMBATIPUDI, V. - Simple Solver for Drive Cavity flow problem, p13 – 14, 2008. Comunicação pessoal MORIMOTO, E.C. Linux entendendo e dominando. Disponível somente com login: < http://www.apostilando.com/download.php?cod =3074&categoria=Linux>: Acesso em 26/09/2008 . PINTO, J.C. e LAGE, P.L.C. Métodos Numéricos em Problemas de Engenharia Química.Rio de Janeiro: Editora, 2001. 139p. OpenCFD, 2007, User Guide OpenFoam 1.4.1: Disponível em: http://www.opencfd.co.uk/openfoam/doc/user. Acessado em: 23/09/2007 VICENTE, R. Comparative Study of the CFD codes Mistral and OpenFOAM. Thesis Report. Vermiolle-France