simuladores para o c álculo do fator de atrito para fluidos lei de
TRANSCRIPT
SIMULADORES PARA O CALCULO DO FATOR DE ATRITO PARA FLUIDOS
LEI DE POTENCIA EM DUTOS CIRCULARES E ANULARES
Yuri Lemos de Oliveira Pinto
Projeto de Graduacao apresentado ao Curso de
Engenharia Mecanica da Escola Politecnica, da
Universidade Federal do Rio de Janeiro, como
parte dos requisitos necessarios a obtencao do
tıtulo de Engenheiro.
Orientador: Daniel Onofre de Almeida Cruz
D.Sc.
Rio de Janeiro
Marco de 2016
SIMULADORES PARA O CALCULO DO FATOR DE ATRITO PARA FLUIDOS
LEI DE POTENCIA EM DUTOS CIRCULARES E ANULARES
Yuri Lemos de Oliveira Pinto
PROJETO DE GRADUACAO SUBMETIDO AO CORPO DOCENTE DO
CURSO DE ENGENHARIA MECANICA DA ESCOLA POLITECNICA
DA UNIVERSIDADE FEDERAL DO RIO DE JANEIRO COMO PARTE
DOS REQUISITOS NECESSARIOS PARA A OBTENCAO DO GRAU DE
ENGENHEIRO MECANICO.
Examinado por:
Prof. Atila Pantaleao Silva Freire, Ph.D.
Prof. Daniel Onofre de Almeida Cruz, D.Sc.
Prof. Juliana Braga Rodrigues Loureiro, D.Sc.
RIO DE JANEIRO, RJ – BRASIL
MARCO DE 2016
Pinto, Yuri Lemos de Oliveira
Simuladores para o Calculo do Fator de Atrito
para Fluidos Lei de Potencia em Dutos Circulares e
Anulares/Yuri Lemos de Oliveira Pinto. – Rio de Janeiro:
UFRJ/Escola Politecnica, 2016.
XIV, 59 p.: il.; 29, 7cm.
Orientador: Daniel Onofre de Almeida Cruz D.Sc.
Projeto de Graduacao – UFRJ/Escola Politecnica/Curso
de Engenharia Mecanica, 2016.
Referencias Bibliograficas: p. 45 – 47.
1. Fator de atrito. 2. Abaco de Moody. 3. Fluidos
Lei de Potencia. 4. Escoamento interno turbulento. 5.
Duto anular. I. D.Sc., Daniel Onofre de Almeida Cruz. II.
Universidade Federal do Rio de Janeiro, Escola Politecnica,
Curso de Engenharia Mecanica. III. Tıtulo.
iii
Aos meus avos.
iv
Agradecimentos
Primeiramente, gostaria de agradecer aos meus avos, Jose Soares e Wilma. Nada
do que consegui na minha vida ate agora seria possıvel sem seu apoio e amor
incondicionais. Nunca serei capaz de retribuir tamanha generosidade. Gostaria
tambem de agradecer a minha mae, Rita de Cassia, e ao meu irmao, Joao Victor,
por estarem sempre presentes na minha vida.
Aos meus tios, Braulio e Steven, cujo carinho nao conhece fronteiras. As minhas
tias, Didi e Lili, e minha avo Aparecida por tantos domingos em famılia. As pessoas
desse paragrafo, devo lembra-los que a distancia atual e somente geografica.
Gostaria de agradecer aos professores Atila Freire e Juliana Loureiro ao se
disporem com prontidao a compor a banca avaliadora deste trabalho. Ao professor
Daniel Cruz, principalmente, pela orientacao, paciencia, inspiracao e exemplo.
Aos colegas e professores do NIDF, em especial a Cecilia Mageski, Daniel Ramos
e Gabriel Farah pela ajuda fundamental, ora em mecanica dos fluidos, ora em
programacao ora em qualquer outro assunto. Suas sugestoes e respostas as minhas
duvidas significaram muito para mim e foram de imensa contribuicao para este
trabalho.
As coordenadoras do Projeto Alunos Contadores de Historias, Regina Fonseca,
Sonia Motta e Veronica Viana pela oportunidade de contar historias no IPPMG e de
me tornar um aluno apoiador. Aos demais alunos e pessoas que conheci por conta
do projeto, em especial a Filipe, Marcia, Mariana, Raphael e Vivianne. Todos voces
mudaram a minha historia.
A Felipe, Marcelo, Paulo e Vitor, cuja nossa amizade remete aos nossos tempos
de pH e ja tem quase uma decada. Impressionante e perceber que so se trata do
comeco. Aos meus amigos de Colegio Metropolitano que datam de um tempo ainda
mais remoto. Saibam que voces sempre terao lugar no meu futuro.
Aos meus colegas de engenharia mecanica e de UFRJ, por toda contribuicao
que deram a minha vida academica e pessoal. Aos meus amigos de Duisburg e de
toda a Alemanha. Ihr seid aus einer anderen Welt. Nao vou nomea-los por serem
muitos e por ter total certeza de que os proprios sabem quem sao. A Universitat
Duisburg-Essen, em especial a Florian Vollweiler, por ter me acolhido como aluno. A
CAPES e ao DAAD pelo apoio e pela oportunidade unica.
v
Resumo do Projeto de Graduacao apresentado a Escola Politecnica/UFRJ como
parte dos requisitos necessarios para a obtencao do grau de Engenheiro Mecanico.
SIMULADORES PARA O CALCULO DO FATOR DE ATRITO PARA FLUIDOS
LEI DE POTENCIA EM DUTOS CIRCULARES E ANULARES
Yuri Lemos de Oliveira Pinto
Marco/2016
Orientador: Daniel Onofre de Almeida Cruz D.Sc.
Curso: Engenharia Mecanica
O fator de atrito e fundamental no calculo da perda de carga e no subsequente
dimensionamento de bombas. Dutos circulares e anulares sao de grande importancia
na industria do petroleo. Na maior parte do tempo, sao escoados nesses dutos fluidos
lei de potencia.
Contudo, poucas equacoes para o fator de atrito para esses fluidos na literatura
contem a rugosidade. Este trabalho fornece ao leitor um simulador capaz de obter
o fator de atrito para fluidos lei de potencia em dutos circulares e gerar abacos de
Moody para eles. Para isso, lanca-se mao de uma equacao valida para fluidos lei de
potencia com o termo rugoso. Alem disso, apresenta-se um codigo computacional
que calcula o fator de atrito para dutos anulares do mesmo modelo de fluidos.
Palavras-chave: Fator de atrito, Abaco de Moody, Fluidos Lei de Potencia,
Escoamento interno turbulento, Duto anular
vi
Abstract of Undergraduate Project presented to POLI/UFRJ as a partial fulfillment
of the requirements for the degree of Engineer.
FRICTION FACTOR CALCULATORS FOR POWER LAW FLUIDS IN
CIRCULAR AND ANNULAR PIPES
Yuri Lemos de Oliveira Pinto
March/2016
Advisor: Daniel Onofre de Almeida Cruz D.Sc.
Department: Mechanical Engineering
The friction factor is crucial to calculate the pressure drop in pipes and subse-
quently in the dimensioning of pumps. Pipe and annular flow are truly important to
the oil industry. Most of the time power law fluids are flowing through those pipes.
However, few friction factor equations for this type of fluids in the literature
contain roughness. This work provides the reader a simulator capable of obtaining
the friction factor for power law fluids in pipe flow. It also plots a Moody’s chart
for the specified fluid. In order to do that, a friction factor equation for power law
fluids that has a roughness term is used. Besides that, a computer code for power
law fluids annular flow is presented.
Keywords: Friction factor, Pressure drop, Moody chart, Power-law fluids, Turbu-
lent pipe flow, Annular pipe
vii
Sumario
Lista de Figuras x
Lista de Tabelas xi
1 Introducao 1
1.1 Motivacao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2 Objetivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.3 Organizacao do Trabalho . . . . . . . . . . . . . . . . . . . . . . . . . 2
2 Revisao Bibliografica e Estado da Arte 3
2.1 Fluidos newtonianos . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
2.2 Fluidos nao newtonianos . . . . . . . . . . . . . . . . . . . . . . . . . 4
2.3 Regimes de escoamento e os numeros de Reynolds . . . . . . . . . . . 7
2.4 Escoamento interno laminar completamente desenvolvido em um duto 8
2.5 Escoamento turbulento . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.6 Fator de atrito de Darcy-Weisbach . . . . . . . . . . . . . . . . . . . 15
2.6.1 Escoamento laminar em dutos . . . . . . . . . . . . . . . . . . 16
2.6.2 Escoamento turbulento em dutos: A equacao de Colebrook . . 17
2.6.3 Outras equacoes importantes . . . . . . . . . . . . . . . . . . 18
2.6.4 Correlacao utilizada . . . . . . . . . . . . . . . . . . . . . . . 19
2.6.5 Fator de atrito em dutos anulares . . . . . . . . . . . . . . . . 20
2.7 Abaco de Moody . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.8 Perda de carga . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
2.8.1 Perda de carga distribuıda . . . . . . . . . . . . . . . . . . . . 25
2.8.2 Perda de carga localizada . . . . . . . . . . . . . . . . . . . . 25
2.9 Caracterizacao da geometria . . . . . . . . . . . . . . . . . . . . . . . 26
2.9.1 Dutos circulares . . . . . . . . . . . . . . . . . . . . . . . . . . 26
2.9.2 Dutos anulares . . . . . . . . . . . . . . . . . . . . . . . . . . 26
2.10 Funcoes transcendentais e implıcitas . . . . . . . . . . . . . . . . . . . 27
2.11 Calculo de raızes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
viii
3 Metodologia 29
3.1 Implementacao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
3.2 Validacao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
4 Simulador para dutos circulares 33
4.1 Dados de entrada e saıda . . . . . . . . . . . . . . . . . . . . . . . . . 33
4.2 Interface com o usuario e descricao do codigo implementado . . . . . 34
5 Resultados e Discussao 36
5.1 Resultados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
5.2 Discussao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
6 Consideracoes Finais 43
6.1 Conclusao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
6.2 Trabalhos Futuros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
Referencias Bibliograficas 45
A Codigos em Python para dutos circulares 48
A.1 Contas.py . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
A.2 Moody.py . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
B Codigo no Mathematica para dutos anulares 58
ix
Lista de Figuras
2.1 Aproximacao da taxa de cisalhamento . . . . . . . . . . . . . . . . . 4
2.2 Classificacao reologica de fluidos. Adaptado de STEFFE [1996]. . . . 5
2.3 Velocidade axial em um duto liso para tres tipos de fluidos: n = 1,
n = 0.75 e n = 0.5 de cima para baixo. O escoamento acontece da
esquerda para direita. Branco representa alta velocidade. Os dados e
a figura sao provenientes de simulacoes DNS de ANBARLOOEI et al.
[2015a]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
2.4 Volume de controle diferencial em um duto. . . . . . . . . . . . . . . 9
2.5 Perfis de velocidade laminar e turbulento. . . . . . . . . . . . . . . . . 14
2.6 Estrutura da camada limite turbulenta. . . . . . . . . . . . . . . . . . 15
2.7 Divisoes Estrutura da camada limite turbulenta. . . . . . . . . . . . . 15
2.8 Abaco de Moody . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
3.1 Fluxograma para obtencao o fator de atrito e dos resultados subsequentes 31
5.1 Pagina do Laboratorio de Escoamentos Multifasicos. . . . . . . . . . 37
5.2 Abaco de Moody para n = 0.7. . . . . . . . . . . . . . . . . . . . . . 37
5.3 Abaco de Moody para n = 0.9. . . . . . . . . . . . . . . . . . . . . . 38
5.4 Abaco de Moody para n = 1.1. . . . . . . . . . . . . . . . . . . . . . 38
5.5 Comparacao entre dados experimentais e do modelo para o fator de
atrito anular com as equacoes (2.61) e COLEBROOK e WHITE [1937]. 39
5.6 Graficos para 3 ındices de comportamento diferente. . . . . . . . . . . 40
5.7 Erro relativo da comparacao entre dados experimentais e do modelo
para o fator de atrito anular. . . . . . . . . . . . . . . . . . . . . . . . 41
x
Lista de Tabelas
2.1 Diferenciacao entre fluidos lei de potencia. . . . . . . . . . . . . . . . 6
2.2 Estrutura da camada limite turbulenta. . . . . . . . . . . . . . . . . . 14
2.3 Rugosidade superficial de certos materiais usados em engenharia,
adaptado de FOX et al. [1985] . . . . . . . . . . . . . . . . . . . . . . 24
3.1 Calculos realizados pelo algoritmo implementado . . . . . . . . . . . . 30
4.1 Dados de entrada (inputs) . . . . . . . . . . . . . . . . . . . . . . . . 33
4.2 Dados de entrada adicionais para dutos anulares (inputs) . . . . . . . 34
4.3 Dados de saıda (outputs) . . . . . . . . . . . . . . . . . . . . . . . . . 34
4.4 Possıveis erros nos dados de entrada . . . . . . . . . . . . . . . . . . . 35
xi
Nomenclatura
px Propriedade media do fluido
∆B Termo rugoso da (2.50)
∆P Perda de carga total em unidades de pressao∑F Somatorio de forcas
A Area da secao transversal
a Parametro da equacao (2.59)
Ac Constante universal da (2.41)
An Parametro da equacao (2.55)
B Constante universal da (2.43)
b Parametro da equacao (2.59)
Bn Parametro da equacao (2.55)
C Coeficiente de Hazen-Williams
c1 Constante de integracao
c2 Constante de integracao
Cn Parametro da equacao (2.55)
D Diametro do duto
DH Diametro hidraulico do duto
Di Diametro externo do duto interno
Dm Diametro onde a velocidade e maxima
Do Diametro interno do duto externo
xii
Dmedio Diametro medio do duto
g Aceleracao da gravidade local
hd Perda de carga distribuıda em unidades de comprimento
hl Perda de carga localizada em unidades de comprimento
hT Perda de carga total em unidades de comprimento
K Indice de consistencia
Kacidente Valor tabelado para dada perda de carga localizada
L Comprimento do duto
l Comprimento caracterıstico
Lε Efeito Rugoso
Leq Comprimento equivalente
n Indice de comportamento
O Perımetro hidraulico, wetted perimeter
P Pressao
p′x Flutuacao da propriedade do fluido
px Propriedade do fluido
Q Vazao volumetrica
R Raio do duto
Ri Raio externo do duto interno
Rm Raio onde a velocidade e maxima
Ro Raio interno do duto externo
Re Numero de Reynolds
ReCL Numero de Reynolds definido por CLAPP [1961]
ReMR Numero de Reynolds generalizado
u Componente da velocidade na direcao do cisalhamento
xiii
u+ Velocidade adimensional
uτ Velocidade de friccao
v Componente da velocidade na direcao perpendicular do cisalhamento
y+ Comprimento adimensional
z Altura geometrica
Letras gregas
γ Taxa de deformacao
ε Rugosidade da tubulacao
ε+ Rugosidade adimensional
η Viscosidade aparente
Γ Perfil da esteira
γ Viscosidade generalizada
κ Coeficiente de correcao de energia cinetica
Λ Fator de atrito de Darcy
Λi Fator de atrito de Darcy do duto interno
Λo Fator de atrito de Darcy do duto externo
µ Viscosidade absoluta, dinamica ou newtoniana
ν Viscosidade cinematica
ρ Massa especıfica
ρw Massa especıfica na regiao da parede
τ Tensao de cisalhamento
τo Tensao de cedencia
τw Tensao na parede
θ Angulo formado pela taxa de deformacao
κ Constante de von Karman
xiv
Capıtulo 1
Introducao
O escoamento em dutos de fluidos lei de potencia e de grande importancia para
diversas industrias. A do petroleo usa dutos desde a exploracao offshore do oleo bruto
ate o transporte de seus derivados, por exemplo. Para que esses fluidos escoem, sao
necessarias bombas com potencia suficiente para compensar a diferenca de pressao
nessas tubulacoes.
A fim de dimensiona-las, a perda de carga e uma grandeza fundamental a ser
calculada. Contudo, e preciso antes conhecer o fator de atrito. Ha diversas formas
e expressoes para se obte-lo presentes na literatura. Uma das mais difundidas e o
abaco de Moody [MOODY, 1944a]. Com ele, basta saber a rugosidade e diametro
do duto e o numero de Reynolds do escoamento para se obter o fator de atrito da
situacao em questao.
Entretanto, ha limitacoes severas para o uso deste grafico e das equacoes presentes
na literatura. Primeiro, o abaco de Moody somente e valido para fluidos newtonianos,
como a agua, sendo que a reologia da maioria dos fluidos existentes e nao newtoniana.
A segunda e que as expressoes usadas para calcula-lo e o seu proprio formato limitam
seu uso apenas para dutos de geometria circular.
Grande parte dos dutos nao apresenta o formato circular, como, por exemplo, os
dutos anulares. O fator de atrito em tais dutos, portanto, nao poderia ser calculado
a partir do abaco de Moody. Mesmo assim engenheiros o fazem. Um procedimento
parecido e igualmente incorreto acontece com fluidos nao newtonianos, quando estes
sao tratados como newtonianos. Os erros desses calculos sao consideraveis — figura
5.5.
1.1 Motivacao
Ha uma lacuna na literatura com relacao ao calculo do fator de atrito para
fluidos lei de potencia. Nao existem muitas correlacoes para fluidos power law com
rugosidade em dutos circulares. COLEBROOK e WHITE [1937] so e valida para
1
fluidos newtonianos. DODGE [1959] nao apresenta o termo rugoso, tao importante
especialmente quando o regime do escoamento e completamente turbulento. Nao ha
nenhum grafico semelhante ao de Moody para fluidos nao newtonianos.
Para dutos anulares, as expressoes sao ainda mais escassas e existem poucos
dados experimentais com fluidos nao newtonianos. Como esses fluidos estao presentes
em muitas aplicacoes de engenharia, faz-se necessario ferramentas mais precisas e
robustas para a obtencao do fator de atrito para ambos os formatos de dutos.
1.2 Objetivos
O objetivo principal desse trabalho e introduzir uma forma de se calcular o fator
de atrito para fluidos lei de potencia em dutos circulares e anulares. Para isso, foi
desenvolvido um simulador capaz de gerar abacos de Moody para esses fluidos, alem
do valor do fator de atrito na situacao representada pelos dados de entrada. A
equacao utilizada ainda nao foi publicada, mas suas constantes sao apresentadas em
ANBARLOOEI et al. [2015b].
Para dutos anulares, como ha uma dificuldade a mais na representacao por conta
do numero elevado de parametros (numero de Reynolds, ındice de comportamento e
rugosidades relativas), serao apresentados os estudos em andamento, sendo o mais
importante deles um codigo computacional capaz de calcular o fator de atrito anular
juntamente com graficos que comparam os valores obtidos com dados experimentais.
Este algoritmo foi validado por dados experimentais [KELESSIDIS et al., 2011].
1.3 Organizacao do Trabalho
No capıtulo 2 revisa-se a teoria e bibliografia empregada e apresenta-se o estado
da arte.
No capıtulo 3 tem-se a metodologia utilizada, culminando nos algoritmos imple-
mentados para os calculos do fator de atrito (apendices A e B). Ja, no capıtulo 4, e
tratado o simulador para dutos circulares de fato.
No capıtulo 5 comenta-se os resultados obtidos e promove-se uma breve discussao.
No 6 chega-se as conclusoes e sugere-se possıveis continuacoes deste trabalho.
A ultima parte deste trabalho e dedicada a secao pos-textual - referencias e
apendices.
2
Capıtulo 2
Revisao Bibliografica e Estado da
Arte
2.1 Fluidos newtonianos
Fluidos newtonianos sao aqueles cujas tensoes cisalhantes τ sao linearmente
proporcionais a taxa de deformacao dudy
. Esta relacao e representada pela viscosidade
absoluta (ou dinamica) µ . Pode-se interpretar a viscosidade como uma maneira de se
quantificar a resistencia do fluido ao escoamento - pense em qual meio seria mais facil
nadar: agua ou oleo. Cabe ressaltar que a viscosidade de fluidos newtonianos e uma
propriedade termodinamica - depende de pressao e principalmente da temperatura.
Representando algebricamente a relacao acima descrita tem-se:
τ = µdu
dy(2.1)
Sendo que u e a componente da velocidade na direcao do cisalhamento e y a
direcao perpendicular a ele. E comum que a taxa de deformacao seja escrita como γ.
A igualdade vem da seguinte aproximacao infinitesimal representada na figura 2.1:
tan θ ≈ δθ =δuδt
δy(2.2)
γ =δθ
δt=δu
δy(2.3)
A equacao (2.1) se chama Lei de Newton da viscosidade para o escoamento
unidimensional. E valido ressaltar que o comportamento reologico desses fluidos e
independente do tempo e agua e seu exemplo mais comum.
3
Figura 2.1: Figura ilustrando a equacao (2.3). Adaptado de WHITE et al. [2003]
2.2 Fluidos nao newtonianos
Fluidos nao newtonianos sao aqueles que nao podem ser descritos pela lei de
Newton da viscosidade. Tais fluidos podem apresentar diversos comportamentos.
Podem ser dependentes ou independentes do tempo. Podem apresentar tensao de
cedencia. Alguns deles podem ate se comportar como solidos em determinadas
situacoes. A figura 2.2 sao nomeados alguns desses comportamentos.
Plasticos de Bingham comportam-se como fluidos newtonianos assim que a
tensao passa de um certo limiar denominado tensao de cedencia τo. Antes seu
comportamento e similar ao de um solido. Maionese e pasta de dente sao exemplos.
Seu comportamento e regido pela seguinte equacao:
τ = τo + ηγ (2.4)
sendo η a viscosidade aparente definida como a razao entre a tensao de cisalhamento
e a taxa de deformacao:
η =τ
γ(2.5)
Fluidos viscoelasticos apresentam caracterısticas de solidos (elasticidade) e de
fluidos (viscosidade) ao se deformarem. Fluidos de Kelvin-Voigt e de Maxwell
apresentam comportamento que se encaixa nessa categoria. Creme de chantilly e um
exemplo classico.
Com relacao ao comportamento no tempo, aqueles que sao dependentes se
subdividem em tixotropicos e reopeticos. Sob tensoes cisalhantes, a viscosidade
4
Figura 2.2: Classificacao reologica de fluidos. Adaptado de STEFFE [1996].
aparente de fluidos tixotropicos diminui com o tempo, enquanto a de reopeticos
aumenta. Iogurte e um exemplo do primeiro e tinta de impressora do ultimo.
Quanto aos que independem do tempo, ha diversos modelos encontrados na
literatura que buscam uma alternativa para a relacao entre a tensao cisalhante e a
taxa de deformacao, como o fluido de Carreau. Contudo, o mais usado e o modelo
da lei de potencia.
Este modelo e caracterizado por dois parametros: os ındices de consistencia K e
de comportamento n. A equacao que os rege e:
τ = Kγn (2.6)
Note que (2.6) e igual a (2.1) quando n = 1; K passa a representar a viscosidade
newtoniana. Quando n < 1 a viscosidade aparente diminui conforme a tensao cisa-
lhante aumenta. Estes sao denominados de fluidos pseudoplasticos ou reofluidificantes
(shear thinning). Se n > 1, a viscosidade aparente tem o comportamento contrario,
aumentando conforme aumenta-se o cisalhamento. Estes fluidos se chamam dilatantes
ou reoespessantes (shear thickening). Na figura 2.3, pode-se perceber a influencia
do n no comportamento do escoamento em fluidos newtonianos e reofluidificantes.
Quanto maior n, maior sera o desbalanco de momento.
Ainda no caso dos fluidos power-law pode-se reescrever a (2.6) da seguinte forma:
τ = K(dudy
)n−1du
dy(2.7)
Assim a viscosidade aparente (2.5) pode ser redefinida como:
5
Figura 2.3: Velocidade axial em um duto liso para tres tipos de fluidos: n = 1,n = 0.75 e n = 0.5 de cima para baixo. O escoamento acontece da esquerda paradireita. Branco representa alta velocidade. Os dados e a figura sao provenientes desimulacoes DNS de ANBARLOOEI et al. [2015a].
Tabela 2.1: Diferenciacao entre fluidos lei de potencia.
Comportamento Indice de comportamentoReofluidificante n < 1
Newtoniano n = 1Reoespessante n > 1
η = K(dudy
)n−1
(2.8)
Ao se comparar com (2.1), percebe-se que apenas substiui-se a viscosidade newtoniana
µ pela aparente η.
Ha diversos outros modelos que descrevem o comportamento de fluidos nao newto-
nianos, como o de Casson e Robertson-Stiff. O modelo de Herschel-Bulkley combina
a tensao de cedencia dos plasticos de Bingham (2.2) com a lei de potencia (2.6),
por exemplo. Ha tambem modelos mais complexos, contendo ate cinco parametros.
MITCHELL e MISKA [2011] apresenta alguns desses modelos, alem dos anteriores.
6
2.3 Regimes de escoamento e os numeros de Rey-
nolds
A importancia do numero de Reynolds e caracterizar o escoamento para fluidos
newtonianos — laminar, transicao ou turbulento. Este relaciona as forcas de inercia
com as forcas viscosas atraves da seguinte expressao:
Re =forcas de inercia
forcas viscosas=
ρu2
lµul2
=ρul
µ=ul
ν(2.9)
em que: ρ, µ, ν e u sao, respectivamente, a massa especıfica, viscosidade dinamica,
viscosidade cinematica e velocidade media do fluido em questao e l e o comprimento
caracterıstico. Para escoamentos internos, este comprimento e o diametro hidraulico
da tubulacao DH .
Em um escoamento interno, e comum se obter a velocidade media atraves da
medicao in situ da vazao volumetrica e utilizando-se a seguinte equacao:
u =Q
A(2.10)
sendo A a area da secao transversal.
Quanto ao carater do escoamento de fluidos newtonianos, para aproximadamente
Re < 2100 tem-se escoamento laminar, em que o fluido escoa em camadas (laminas)
paralelas sem que uma tenha influencia na outra. Dependendo das condicoes do
problema, pode-se haver regimes laminares para numeros de Reynolds bem mais
elevados.
Entre em torno de 2100 < Re < 4000 ocorre o regime de transicao. Embora o
processo se de de uma forma muito complexa, ja se entende que ha uma sequencia
de estagios. E importante notar que ha tanto transicao laminar-turbulenta quanto o
contrario. Cabe ainda ressaltar que nao ha uma teoria geral muito devido ao que
acontece na transicao — em regimes com numero de Reynolds moderados.
Para numeros de Reynolds maiores que 4000, ha a turbulencia, processo este
caracterizado por mudancas aleatorias no campo tridimensional de velocidades. Estas
mudancas causam alteracoes caoticas nas propriedades do escoamentos. Devido a
essas flutuacoes, a analise completa do escoamento torna-se extremamente complicada.
Como em muitas aplicacoes as medias das propriedades fısicas independem do
tempo, costuma-se tratar turbluencia da seguinte maneira:
px = px + p′x (2.11)
em que px e a propriedade a ser estudada e px e sua media e p′x e a flutuacao em
7
torno dessa media. Alem disso, a media pode ser definida como:
px(x, y, z) =1
T
∫ T
0
px(x, y, z, t)dt (2.12)
Outra caracterıstica da turbulencia e sua grande capacidade mistura, especial-
mente frente a difusao. Sendo esta devida ao carater aleatorio desse escoamento
e a riqueza de escalas. Esta ultima e devida aos vortices formados em diversas
direcoes que percorrem tamanhos desde a proximos do comprimento caracterıstico
ate pequenas escalas; este comprimento caracterıstico se chama comprimento de Kol-
mogorov — KOLMOGOROV [1941]. Em suma, pode-se dizer que as consequencias
da turbulencia sao: caos, riqueza de escalas e mistura. Para mais sobre turbulencia,
recorra a SILVA FREIRE et al. [2002].
Para os fluidos power-law, deve-se corrigir o calculo do numero de Reyndols,
levando em consideracao os parametros do fluido — n e K. Este e o numero de
Reynolds generalizado. Sua formulacao e a seguinte:
ReMR =ρu2−nDn
H
γ(2.13)
em que DH e o diametro hidraulico e γ e a viscosidade generalizada, sendo esta
equivalente a:
γ = K(3n+ 1
4n
)8n−1 (2.14)
quando n = 1 (2.13) e igual a (2.9).
Nesse caso, para se determinar o carater laminar do escoamento utiliza-se o
seguinte criterio:
ReMR < (ReMR)crıtico (2.15)
em que abaixo de ReMR < (ReMR)crıtico tem-se o regime laminar. Ha algumas
maneiras de se obter esse valor limıtrofe. DARBY [2001] propos o seguinte:
(ReMR)crıtico = 2100 + 875(1− n) (2.16)
2.4 Escoamento interno laminar completamente
desenvolvido em um duto
O escoamento completamente desenvolvido e aquele em que o perfil de velocidade
independe da posicao longitudinal ao longo do duto. No caso laminar, a regiao
anterior a esse regime e denominada regiao de entrada e seu comprimento e medido
8
em funcao do diametro do duto e depende do numero de Reynolds [FOX et al., 1985].
∂u(x, y)
∂x= 0⇒ u = u(y) (2.17)
sendo x o eixo longitudinal e y o transversal do tubo.
Uma das equacoes fundamentais para escoamentos internos e a conservacao
da massa. Com ela, sabe-se que a velocidade media ao longo do duto pode ser
calculada pela equacao (2.10). Alternativamente, pode-se tambem integrar o perfil
de velocidade ao longo da secao transversal:
u =1
A
∫A
udA (2.18)
Figura 2.4: Volume de controle diferencial em um duto. Adaptado de FOX et al.[1985].
Partindo do volume de controle diferencial da figura 2.4 pode-se fazer uma analise
das forcas. Em funcao da pressao no duto tem-se:
dFantes = P2πrdr (2.19)
dFdepois = −
(P +
∂P
∂xdx
)2πrdr (2.20)
Analogamente, pode-se pensar nos esforcos esforcos provenientes da tensao de
cisalhamento:
dFacima = −τ2πrdx (2.21)
dFabaixo =
(τ +
dτ
drdr
)2π(r + dr)dx (2.22)
9
Ao fazer o balanco de forcas ao longo de x torna-se possıvel relacionar tensao de
cisalhamento com a pressao:
∑Fx = −∂P
∂x2πrdrdx+ τ2πdrdx+
dτ
dr2πrdrdx = 0 (2.23)
Rearranjando a equacao (2.23) tem-se:
∂P
∂x=
1
r
d(rτ)
dr(2.24)
Como a pressao e uniforme e o escoamento e completamente desenvolvido, tem-se
os dois lados da igualdade (2.24) sao constantes. Logo, pode-se proceder da seguinte
forma:
d(rτ)
dr= r
∂P
∂x
rτ =r2
2
(∂P
∂x
)+ c1
τ =r
2
(∂P
∂x
)+c1
r
(2.25)
Com a Lei de Newton da viscosidade (2.1), pode-se obter o perfil de velocidade
desse escoamento:
µdu
dr=r
2
(∂P
∂x
)+c1
r
u =r2
4µ
(∂P
∂x
)+c1
µln r + c2
Em dutos nao anulares, c1 deve ser 0, pois, caso contrario, quando r fosse igual
a 0 a tensao seria infinita o que violaria princıpios fısicos. c2 e definido atraves da
condicao de nao deslizamento na parede (u(r = R) = 0) e vale:
0 =R2
4µ
(∂P
∂x
)+ c2
c2 = −R2
4µ
(∂P
∂x
)
10
Com isso, chega-se o perfil de velocidade em duto para escoamentos laminares e:
u =r2
4µ
(∂P
∂x
)− R2
4µ
(∂P
∂x
)
u = −R2
4µ
(∂P
∂x
)[1−
(r
R
)2] (2.26)
A partir da equacao (2.26) pode-se caracterizar a vazao:
Q =
∫A
udA =
∫A
u2πrdr
Q = −∫ R
0
R2
4µ
(∂P
∂x
)[1−
(r
R
)2]2πrdr
Q = −πR4
8µ
∂P
∂x=πR4
8µ
∆P
L=π∆PD4
128µL
essa expressao e importante, pois ela e o ponto de partida para se chegar analitica-
mente no fator de atrito em regime laminar — discutido em 2.6.1.
2.5 Escoamento turbulento
Escoamentos turbulentos sao baseados em teorias semi-empıricas e em dados
experimentais, visto que, ao contrario de certos casos laminares, solucoes analıticas
ainda nao sao possıveis.
Uma grande diferenca quanto ao escoamento laminar e no calculo da tensao de
cisalhamento. No caso turbulento a lei de newton da viscosidade (2.1) nao e valida.
Para chegar-se na tensao e preciso primeiramente tratar as equacoes de Navier-Stokes.
Estas sao as seguintes:
∂−→u∂t
+ (−→u · ∇)−→u = −1
ρ∇P + ν∇2−→u (2.27)
∇.−→u = 0 (2.28)
(2.28) e a equacao da continuidade (conservacao de massa) e (2.27) e o conjunto
de equacoes de movimento. Em turbulencia e comum construir modelos baseados
em medias e flutuacoes — (2.11) e (2.12). De acordo com SILVA FREIRE [1990], no
11
caso bidimensional, ao fazer esse tratamento para (2.27) e (2.28) resulta em:
u∂u
∂x+ v
∂u
∂y= −1
ρ
∂P
∂x− ∂u′v′
∂y− ∂u′2
∂x+ ν
[∂2u
∂x2+∂2u
∂y2
]
u∂v
∂x+ v
∂v
∂y= −1
ρ
∂P
∂y− ∂u′v′
∂x− ∂v′2
∂y+ ν
[∂2v
∂x2+∂2v
∂y2
] (2.29)
∂u
∂x+∂v
∂y= 0 (2.30)
(2.29) sao as equacoes de Reynolds. Note que ha dois termos a mais por equacao. Esses
termos representam as tensoes turbulentas geradas pelas flutuacoes com o escoamento
medio. Com eles, pode-se finalmente representar as tensoes de cisalhamento no regime
turbulento atraves do tensor de Reynolds:
τij = −ρ
[u′2 u′v′
u′v′ v′2
](2.31)
Ainda partindo de (2.29) e definindo uma espessura de camada limite (compri-
mento caracterıstico na direcao transversal) chega-se nas equacoes de camada limite
turbulenta:
u∂u
∂x+ v
∂u
∂y= −1
ρ
∂P
∂x− ∂u′v′
∂y+ ν
∂2u
∂y2(2.32)
Pode-se perceber que o termo difusivo e composto por duas parcelas:
− ∂u′v′
∂y+ ν
∂2u
∂y2(2.33)
sendo que a primeira e a tensao turbulenta e a segunda e a componente laminar.
Modelar u′v′ e o chamado problema de fechamento.
Alem disso, com (2.32) pode se definir a estrutura da camada limite turbulenta
partindo de estimativas de ordem de grandeza, similares a analise de camada limi-
nar. Perto da parede o efeito predominante e a de difusao molecular e tem-se um
escoamento similar ao de Couette:
ν∂2u
∂y2= 0 (2.34)
visto que a ordem do termo viscoso e muito superior a do termo turbulento:
O
(ν∂2u
∂y2
)� O
(∂u′v′
∂y
)(2.35)
12
Integra-se duas vezes para obter a velocidade media:
ν∂u
∂y= c1 =
τwρ
u =τwµy
(2.36)
Para analisar a parede, define-se uma velocidade caracterıstica uτ como:
uτ =
√τwρw
(2.37)
uτ e a velocidade de friccao.
Substituindo (2.37) em (2.36) tem-se:
u =u2τ
νy
u
uτ=uτνy
(2.38)
que e o perfil de velocidade na subcamada viscosa. A espessura desta e de aproxima-
damente 1% da camada limite e ela e importante, pois nela se da o arrasto devido a
aderencia do fluido a parede.
Na regiao a seguir o termo turbulento e predominante o que signifca que esta e
governada por:
− ∂u′v′
∂y= C =
τwρ
(2.39)
ela e denomidada regiao turbulenta. Isso ocorre, pois:
O
(∂u′v′
∂y
)� O
(ν∂2u
∂y2
)(2.40)
Seu perfil de velocidade e logarıtmico e determinado pela lei de parede:
u
uτ=
1
κlnuτy
ν+ Ac(ε) (2.41)
em que κ e a constante de von Karman e Ac e outra constante universal.
Apos a regiao completamente turbulenta, a equacao da camada limite se resume
aos termos de inercia:
u∂u
∂x+ v
∂u
∂y= −1
ρ
∂P
∂x+O(u′v′) (2.42)
13
Para ela ha uma extensao de (2.41) denominada lei da esteira:
u
uτ=
1
κlnuτy
ν+ A+
P
k
(1− cos
(πy
δ
))(2.43)
em que Γ depende do gradiente de pressao e se chama de perfil da esteira.
Figura 2.5: Perfis de velocidade laminar e turbulento. Adaptado de SILVA FREIRE[1990]
Tabela 2.2: Estrutura da camada limite turbulenta.
Regiao Perfil de velocidade Equacao do perfilSubcamada viscosa Linear (2.38)
Buffer Layer — transicao Superposicao (2.38) e (2.41)Turbulencia Logarıtmico Lei da Parede (2.41)
Inercia — esteira Funcao da pressao Lei da Esteira (2.43)
A figura 2.5 ilustra que o perfil de velocidade chega a uma velocidade proxima
ao do escoamento externo em uma espessura menor de camada limite. Com isso, a
capacidade de mistura do escoamento e maior. A figura 2.6 mostra qual e o perfil
de velocidade na camada limite em dutos. Enquanto isso, a figura 2.7 mostra a
estrutura da camada limite em placas. Em dutos nao ha a regiao de esteira, visto
que os termos convectivos sao nulos; ∂u∂x
e v sao nulos.
14
Figura 2.6: Estrutura da camada limite turbulenta, sendo δ a espessura da camadalimite. Adaptado de SILVA FREIRE [1990]
Figura 2.7: Divisoes da estrutura da camada limite turbulenta
2.6 Fator de atrito de Darcy-Weisbach
O fator de atrito de Darcy-Weisbach e o numero adimensional usado na equacao
de perda de carga de Darcy-Weisbach — DARCY [1857] e WEISBACH [1848]. Esta
pode ser caracterizada da seguinte forma:
hd = ΛL
DH
u2
2g(2.44)
15
em que Λ e o fator de atrito supracitado, hd e a perda de carga distribuıda em unidades
de comprimento devida ao atrito (head loss due to friction), L e o comprimento
e DH o diametro hidraulico do duto, u a velocidade media do escoamento e g e a
aceleracao da gravidade. Esta equacao e importante para a determinacao da potencia
necessaria de bombeamento, por exemplo. Ela foi deduzida por analise dimensional
e experimentos e o fator de atrito nada mais e do que um grupo adimensional —
dependente da rugosidade relativa e do numero de Reynolds. A constante 12
esta
relacionado com a razao entre perda de carga e energia cinetica por unidade de
massa.
FANNING [1896] foi pioneiro ao quantificar os efeitos da velocidade e da rugosi-
dade da parede no fator de atrito. Nao deve-se confundir o fator de atrito de Darcy
pelo de Fanning, sendo o primeiro equivalente a quatro vezes o segundo.
E comum encontrar ambos dependendo da aplicacao. O de Fanning e mais
utilizado em engenharia quımica e na industria de alimentos, enquanto o de Darcy
e o mais comum em engenharia mecanica. Como o tıtulo da secao indica, neste
trabalho sera usado somente o fator de atrito de Darcy.
Ha diversas correlacoes para o fator de atrito. Seus limites de validade dependem
do regime de escoamento, que e determinado pelo numero de Reynolds. A reologia
do fluido tambem e crucial, sendo que a maioria das expressoes so funcionam para
o caso newtoniano. Alem disso, para dutos rugosos, o numero de Reynolds nao e
suficiente para se determinar o fator atrito, devendo assim levar-se em consideracao
a rugosidade relativa ε/D da tubulacao.
2.6.1 Escoamento laminar em dutos
Para um escoamento laminar(i.e. Re < 2100) de fluidos newtonianos em dutos
lisos, usa-se a expressao:
Λ =64
Re(2.45)
que e determinada analiticamente atraves da expressao (2.44) e da equacao da vazao,
em termos de pressao (2.4).
Para o calculo da perda de carga para fluidos incompressıveis newtonianos em
um tubo cilındrico em regime laminar ha a lei de Hagen-Poiseuille — HAGEN [1839],
POUISEUILLE [1840a] e POUISEUILLE [1840b]:
∆P =32µLu
D2(2.46)
16
Note-se que ao substituir (2.45) na equacao (2.44) tem-se:
∆P
ρ= hdg =
64
Re
L
D
u2
2(2.47)
Ao substituir o numero de Reynolds (2.9) em (2.47) obtem-se:
∆P = ρ64µ
ρuD
L
D
u2
2=
32µLu
D2(2.48)
que e exatamente a lei de Hagen-Pouiseuille (2.46).
2.6.2 Escoamento turbulento em dutos: A equacao de Co-
lebrook
Quando se precisa calcular a perda de carga para o caso turbulento e comum
lancar-se mao da equacao de COLEBROOK e WHITE [1937] para obter-se o fator
de atrito:1√Λ
= −2 log(ε/D
3.7+
2.51
Re√
Λ
)(2.49)
Esta e valida entre: 3000 < Re < 108. Note que (2.49) e implıcita em Λ,
ocasionando uma dificuldade extra em sua solucao. Para contornar esse problema, e
comum realizar um metodo iterativo, usando uma correlacao explıcita para calcular
o valor do Λ dentro do log para inicializa-lo. Cabe notar que MOODY [1944a] usou
(2.45) e (2.49) para construir seu abaco.
Segundo WHITE e CORFIELD [2006], a lei da parede (2.41) pode ser interpretada
como uma equacao para o fator de atrito. Para chegar na equacao de (2.49) e preciso
antes inserir um termo com rugosidade ∆B e definir uma rugosidade adimensional
ε+ como εuτν
, u+ como uuτ
e y+ sendo uτyν
. Assim, a lei de parede com rugosidade
pode ser reescrita da seguinte forma:
u+ =1
κlnyuτν
+B −∆B(k+) (2.50)
sendo u+ funcao de y+ e ε+.
Com isso, basta substituir (2.50) na equacao da vazao (2.18):
u =Q
A=
1
πR2
∫ ∞0
u2πrdr =1
R2
∫ ∞0
u2(R− y)dy (2.51)
sendo y = R− r (dy = −dr).Ao integra-la em y, obtem-se um novo perfil logarıtmico. Deve-se agora reorganizar
a equacao (2.51), utilizandos os numeros adimensionais de Reynolds e o fator de
17
atrito. Este pode ser escrito em funcao da velocidade de friccao:
Λ =τwρu
Λ =u2τ
u2
(2.52)
Apos isso, surgira uma equacao tipo Prandtl (2.55) com constantes a serem
determinadas experimentalmente. Pode-se notar tambem que o logartimo na equacao
de Colebrook (2.49) esta em base 10, enquanto o da lei da parede (2.50) e natural.
Essa mudanca se deve somente a tradicao de se representar em base 10 o fator de
atrito e nao ha motivo fısico por tras.
2.6.3 Outras equacoes importantes
Alguns pesquisadores tentaram aproximar (2.49) por equacoes explıcitas. HAA-
LAND [1983] obteve boa congruencia com dados experimentais atraves da seguinte
formula:1√Λ
= −1.8 log((ε/D
3.7
)1.1
+6.9
Re
)(2.53)
Para fluidos nao newtonianos em escoamentos laminares, a expressao mais usual
e semelhante a (2.45). Deve-se atentar apenas para o uso do numero de Reynolds
generalizado ReMR:
Λ =64
ReMR
(2.54)
Para escoamentos em dutos lisos, pode-se dividir em tres tipos de equacoes: tipo
Prandtl, tipo Blasius e generalizadas.
As tipo Prandtl assumem a seguinte forma:
1√Λ
= An log(ReMRΛBn) + Cn (2.55)
em que An, Bn e Cn sao parametros obtidos empiricamente. A equacao de DODGE
[1959] e um exemplo de equacao tipo Prandtl. Ela e valida entre 2900 < ReMR <
36000 e 0.2 < n < 2.0. Sua forma e a seguinte:
1√Λ
=( 2
n0.75
)log(ReMR
Λ1−n2
22−n
)−( 0.2
n1.2
)(2.56)
Alternativamente, CLAPP [1961] desenvolveu a seguinte equacao:
1√Λ
=(2.265
n
)log(ReCL
Λ1−n2
22−n
)+(1.345
n
)− 2.95 + 0.345
(5− 8
n
)(2.57)
18
com
ReCL =Dnu2−nρ
K8n−1(2.58)
valida em 0.698 < n < 0.813 e 5480 < ReCL < 42800.
E possıvel notar que as equcao tipo Prandtl sao implıcitas no fator de atrito.
Pensando nisso, as equacoes tipo Blasius foram desenvolvidas para possibilitar o
calculo do fator de atrito de forma explıcita. Estas assumem a seguinte forma:
Λ =a
RebMR
(2.59)
em que a e b sao obtidos experimentalmente. DODGE [1959] chegaram aos seguintes
valores para esses parametros:
a = 0.266 + 0.047n (2.60)
b = 0.365− 0.1775n+ 0.0625n2 (2.61)
validos em: 3000 < ReMR < 105. As equacoes que nao se encaixam nos tipos (2.55)
nem (2.59) sao nomeadas de generalizadas. Elas podem ser tanto implıcitas quanto
explıcitas.
Para escoamentos com fluidos lei de potencia em dutos rugosos ha poucas cor-
relacoes encontradas na literatura. TORRANCE [1963] propos uma expressao para o
regime totalmente turbulento, mas esta independe do numero de Reynolds. KAWASE
et al. [1994] apresenta uma equacao para regimes turbulentos que leva em consideracao
rugosidade e reologia do fluido.
GOTSCHLICH et al. [2011] fez uma extensa revisao bibliografica, contendo outras
expressoes para o calculo do fator de atrito alem das apresentadas nessa subsecao.
2.6.4 Correlacao utilizada
A correlacao usada foi desenvolvida por Santos, C.M.M. (comunicacao interna) e
e funcao das seguintes propriedades:
Λ = Λ(ReMR, n, ε/D) (2.62)
Sua forma e a seguinte:
1√Λ
= −2.0log
(1.26
1n2
2−nn
Re1nMRΛ
2−n2n
+ 100.1(
1− 1n
)0.27ε/D
)(2.63)
sendo esta valida para escoamentos turbulentos.
Sua grande vantagem e conter os tres parametros: rugosidade relativa (do duto),
19
numero de Reynolds (do escoamento) e ındice de comportamento (da reologia do
fluido empregado), alem de ter sido validada experimentalmente. E interessante notar
que para fluidos newtonianos (n = 1) esta converge para a equacao de Colebrook
(2.49).
A correlacao acima foi validada por dados experimentais existentes na literatura.
Cabe ressaltar que ha poucos artigos contendo dados para escoamentos em dutos
rugosos de fluidos lei da potencia. Ela pode ser obtida de modo analogo a de
Colebrook (2.49), sendo que seu termo rugoso ∆B passa a ser dependente da reologia
do fluido:
∆B = ∆B(ε+)
ε+ =εD(K
ρu2−nτ
) 1n
(2.64)
Para escoamentos completamente turbulentos note que:
limReMR→∞
1.261n2
2−nn
Re1nMRΛ
2−n2n
→ 0 (2.65)
e a equacao passa a depender somente do termo rugoso. Situacoes que apresentam
numeros de Reynolds muito elevados denomina-se o escoamento de totalmente rugoso
(fully rough flow), pois o arrasto passa a depender somente da rugosidade relativa,
como visto em (2.65).
2.6.5 Fator de atrito em dutos anulares
Para escoamentos laminares, o calculo do fator de atrito e o mesmo de (2.45). So
deve-se atentar que o diametro hidraulico usado no numero de Reynolds para dutos
anulares e diferente.
Em escoamentos turbulentos, com relacao a dutos circulares, ha bem menos
expressoes e dados experimentais para o fator de atrito em dutos anulares, embora a
teoria empregada seja bastante similar — balanco de forcas e conservacao da massa,
basicamente. Em MITCHELL e MISKA [2011] pode-se encontrar tres recomendacoes.
Para fluidos newtonianos deve-se usar COLEBROOK e WHITE [1937]. Para fluidos
lei de potencia deve-se usar DODGE [1959] e equacoes tipo Blasius para certas
solucoes de polımeros e suspensoes de argilas. Ha tambem uma expressao para
plasticos de Bingham.
A teoria apresentada a seguir foi desenvolvida por Cruz, D.O.A. (comunicacao
interna). Esta foi desenvolvida para fluidos lei de potencia. Para esses fluidos em
20
dutos anulres, e preciso de um sistema de duas equacoes que calculem o fator de
atrito da parte externa do duto interno e da interna do duto externo — Λi e Λo.
Com esse sistema, pode-se relaciona-las em funcao da razao entre os raios e assim
obter a equacao do atrito.
Para chegar nesse sistema, sao necessarias quatro equacoes: Balanco de forcas
no anel interno, balanco de forcas no anel externo, igualdade entre os perfis de
velocidade e equacao da vazao. Estes perfis sao logarıtmicos e partem em direcoes
opostas (um da parede externa do duto interno e outro da parede interna do duto
externo) e se encontram, apresentando uma regiao de maximo no mesmo anel — Rm,
ou raio de velocidade maxima. Aqui sera apresentado um modelo para fluidos lei de
patencia em dutos com rugosidade.
As duas primeiras relacionam as tensoes cisalhantes com a diferenca de pressao.
Divide-se em Rm a regiao entre dutos — o annulus. De Rm ate o raio externo faz-se
o balanco de forcas ao longo do duto para o tubo externo e do raio interno Ri ate
Rm para o duto interno. Estas equacoes sao as seguintes:
∑Fxexterno = τwo2πRodx−∆Pπ(R2
o −R2m) = 0 (2.66)
∑Fxinterno = τwi2πRidx−∆Pπ(R2
m −R2i ) = 0 (2.67)
elas podem ser adimensionalizadas para serem expressas em funcao do atrito.
Para dutos anulares, os perfis de velocidade turbulentos a partir de cada parede
tambem sao reproduzidos por uma lei logarıtmica. A terceira equacao consite na
igualdade dos perfis de velocidade logarıtmicos em Rm, onde esta e maxima:
uok
logRo −Rm
LoLεo+Buo =
uik
logRm −Ri
LiLεi+Bui (2.68)
esses perfis foram obtidos da equacao (2.41).
Sua forma adimensional e a seguinte:
√Λo
klog
Do
2
(1− Dm
Do
)LoLεo
+B√
Λo =
√Λi
klog
Do
2
(DmDo− Dm
Do
)LiLεi
+B√
Λi (2.69)
sendo Lε o efeito rugoso igual a 1 + αε. B e α sao definidos em funcao da reologia
do fluido:
B = 3, 33− 5, 44 log n+ 2, 19n−1,84 (2.70)
α = 0.3e0.1(
1− 1n
)(2.71)
21
Analogamente a dutos circulares, a ultima equacao e a da vazao. Calcula-se a
velocidade media a partir dela, ao integrar por partes e posteriormente adimensiona-
liza-la:
u =
∫ Rm
Ri
(uik
logr −Ri
LiLεi+Bui
)2πrdr+
∫ Ro
Rm
(uok
logRo − rLoLεo
+Buo
)2πrdr (2.72)
u = − 1
2k(R2o −R2
i )((Ri −Rm)ui
((2Bk − 3)Ri + (2Bk − 1)Rm + 2(Ri +Rm) log
Rm −Ri
LiLε
)
+(Rm −Ro)uo
((2Bk − 1)Rm + (2Bk − 3)Ro + 2(Rm +Ro) log
Ro −Rm
LoLε
))
Ao adimensionalizar a equacao acima tem-se:
1
2k(1− DiDo
2)
((Dm −Di
Do
)√Λi
((2Bk − 3)
Di
Do
+ (2Bk − 1)Dm
Do
+ 2
((Dm +Di
Do
)
logDo
2
Dm−DiDo
LiLεi
)+ (1− Dm
Do
)√
Λo
(Dm
Do
(2Bk − 1) + (2Bk − 3)
(Dm
Do
+ 1
)
logDo
2
1− DmDo
LoLεo
))= 1
sendo que Dm pode ser obtido da seguinte expressao do diametro de velocidade
maxima:
Dm
Do
=
√DiDo
√Λi + Di
DoΛo√
DiDo
Λi + Λo
(2.73)
Ao reorganizar a equacao adimensionalizada acima, pode-se obter expressoes em
funcao de parametros adimensionais como o numero de Reynolds e os fatores de
atrito:Do
2
1
LoLεo=
12
Re1nMR
6+2n
81n
(1√8
√Λo
) 2−nn
+ 2α εoDo
(2.74)
Do
2
1
LiLεi=
12
Re1nMR
6+2n
81n
(1√8
√Λi
) 2−nn
+ 2α εiDo
(2.75)
Com elas, pode-se chegar no sistema de equacoes do atrito atraves de — Apendice
B. Adimensionalizando o gradiente de pressao (obtido atraves do balanco de forcas)
22
na secao anular, e possıvel se chegar em uma relacao que resulta no fator de atrito
para fluidos lei de potencia em dutos anulares:
Λ =DiDo
Λi + Λo
1−(DiDo
)2 (2.76)
A validade deste modelo e limitada nao somente pela reologia do fluido (leia-se
n), mas tambem pelo raio interno. Para tubos internos capilares a equacao nao
apresenta bons resultados, sendo assim nao valida. Essa mesma deducao apresentada
e valida para fluidos com tensao inicial (Herschel-Bulkley), fazendo-se as devidas
correcoes em Λo e Λi ao considerar o numero de Hedstrom generalizado.
2.7 Abaco de Moody
O objetivo principal de Lewis F. Moody ao publicar o seu artigo [MOODY, 1944a]
foi proporcionar aos engenheiros uma maneira simples de se obter o fator de atrito
para o calculo de perda de carga. Esta se encontra na figura 2.8. O abaco de Moody
consiste basicamente em um grafico de fator de atrito de Darcy pelo numero de
Reynolds, calculado para varias rugosidades relativas.
Sua leitura e costumeiramente feita partindo-se verticalmente de um numero
de Reynolds ate que se encontre a curva para a rugosidade relativa do problema.
Chegando a esse ponto, faz-se a leitura do fator de atrito no eixo vertical a esquerda.
Figura 2.8: Abaco de Moody [MOODY, 1944b]
23
Entretanto, o abaco de Moody aparesenta certas limitacoes. A maior delas e que
este so e valido para fluidos newtonianos em dutos circulares. Como sabe-se de 2.2,
ha varios outros tipos de fluidos de grande importancia e a nao-newtoniedade do
fluido (indicada por seu ındice de comportamento n) e uma influencia consideravel
no fator de atrito — quanto maior n, maior sera o fator de atrito, ceteris paribus.
Portanto, faz-se necessario a existencia de uma ferramenta capaz de expandir o
horizonte de aplicacoes deste grafico tao importante.
Tabela 2.3: Rugosidade superficial de certos materiais usados em engenharia, adap-tado de FOX et al. [1985]
Material Rugosidade ε [mm]Aco rebitado 0,9-9
Concreto 0,3-3Madeira 0,2-0,9
Ferro fundido 0,26Ferro galvanizado 0,15
Ferro fundido asfaltado 0,12Aco comercial ou ferro forjado 0,046
Trefilado 0,0015
2.8 Perda de carga
A perda de carga e um dos calculos mais importantes para os engenheiros
hidraulicos, pois com ela pode-se dimensionar bombas entre outros equipamentos. A
perda de carga total pode ser definida a partir da equacao da energia (adapta-se o
teorema de Bernoulli para fluidos reais):
hT =
(P1
ρ+ κ1
u21
2+ gz1
)−(P2
ρ+ κ2
u22
2+ gz2
)(2.77)
em que P e a pressao, ρ e o peso especıfico, u a velocidade media, g a aceleracao da
gravidade e z a altura (geometrica). κ e um fator de correcao da energia cinetica, que
para escoamentos laminares e 2 e para turbulentos fica entre 1.01 e 1.10. A equacao
(2.78) representa a correcao para κ de fluidos nao newtonianos em regime laminar.
Essa expressao e comumente encontrada em livros introdutorios de mecanica dos
fluidos [FOX et al., 1985] e de bombas industriais [DE MATTOS e DE FALCO,
1998].
κ =2(2n+ 1)(5n+ 3)
3(3n+ 1)2(2.78)
Para tubulacoes novas de determinados materiais, como o aco, ha valores para
24
a perda de carga diretamente tabelados. Eles foram calculados pelo Hydraulic
Institute e dependem somente da vazao e diametro do tubo e sao fornecidos para
certo comprimento de duto — usualmente 100ft ou 100m.
Um calculo alternativo ao de Darcy-Weisbach e atraves da formula de Hazen-
Williams que pode ser expressa por:
u = 0, 355CD0,63h0,54d (2.79)
em que u, D e hd sao as grandezas usualmente associadas e C e o coeficiente de
Hazen-Williams (i.e. o ”fator de atrito”dessa equacao). C depende do material e
idade da tubulacao e e tabelado. Para diametros pequenos (menores que 50mm),
ha tambem as formulas de Flamant e Fair-Whipple-Hsiao. Os abacos para elas
encontram-se em DE MATTOS e DE FALCO [1998].
2.8.1 Perda de carga distribuıda
A perda de carga total pode ser distribuıda em duas partes: distribuıda e locali-
zada. Excetuando em tubulacoes que apresentem muitos acidentes por comprimento
de duto, a perda de carga distribuıda e a de maior importancia. Por isso, ela tambem
e conhecida como perda maior.
Essa e calculada atraves da expressao de Darcy-Weisbach (2.44), em que o calculo
do fator de atrito e crucial. Na secao sobre esse fator foram apresentadas diversas
formulacoes. Excetuando a do regime laminar com fluidos newtonianos, todas as
outras sao semiempıricas.
2.8.2 Perda de carga localizada
A perda de carga localizada pode ser causada por quaisquer motivos que alterem o
fluxo do fluido a ser escoado. Acessorios, como valvulas, curvas ou joelhos, mudancas
de areas, alem da entrada e da saıda da tubulacao causam perda de carga localizada.
Elas podem ser minimizadas, caso a tubulacao apresente grandes trechos retos.
Ha dois metodos para se calcular esse tipo de perda de carga: Metodo direto e
metodo do comprimento equivalente. O primeiro e calculado atraves da seguinte
expressao:
hl = Kacidenteu2
2g(2.80)
em que Kacidente e um valor experimentalmente obtido e tabelado para cada tipo de
acidente.
O metodo do comprimento equivalente consiste em transformar o valor do acidente
em comprimento de duto reto adicional ao trechos retos da tubulacao. Estes valores
25
(Leq) tambem se encontram tabelados nos livros citados nessa secao para fluidos
newtonianos.
hl = ΛLeqD
u2
2g(2.81)
Ha poucos dados tabelados para fluidos nao newtonianos. GOTSCHLICH et al.
[2011] faz um levantamento dos encontrados atualmente na literatura.
2.9 Caracterizacao da geometria
A geometria tem papel fundamental no calculo do numero de Reynolds. Para
escoamentos internos, o comprimento caracterıstico assume a forma de diametro
hidraulico. Este e calculado da seguinte maneira:
DH =4A
O(2.82)
em que A e a area da secao transversal e O e o perımetro da superfıcie em contato
com o fluido (wetted perimeter).
Dutos e tubulacoes podem assumir os mais variados formatos: Circulares, anulares,
quadrados, retangulares entre outros. Em um poco de perfuracao os dois primeiros
sao os mais utilizados.
2.9.1 Dutos circulares
Para dutos circulares o calculo do diametro hidraulico e:
DH =4π(D2/4)
πD= D (2.83)
que e o proprio diametro da tubulacao.
E o formato mais usual de tubulacao. Seu escopo de utilizacao vai desde a
tubos que transportam agua em uma residencia ate oleodutos que percorrem paıses
transportando petroleo e seus derivados.
2.9.2 Dutos anulares
Dutos anulares sao de vital importancia para a industria de petroleo. Eles sao
encontrados em pocos de perfuracao, por exemplo. Neles lama de perfuracao, um
fluido nao newtoniano, e injetada pela parte interna do duto, retornando pela parte
anular, com o objetivo de proteger a broca, igualar a pressao do poco a externa e
prevenir que outros fluidos entrem no poco. Apos retirar a broca, usa-se ainda o
duto anular para cimentacao de sua parte externa a fim de manter a integridade
26
deste. Em casos que e preciso perfurar mais profundamente, ha a repeticao destas
etapas, passando dutos por dentro dos anteriores.
Em dutos anulares o diametro hidraulico e o seguinte:
DH =4π(D2
o −D2i )/4
π(Do +Di)= Do −Di (2.84)
sendo Do o diametro do duto externo e Di o diametro do duto interno.
A equacao (2.84) nao depende diretamente dos diametros, mas sim da diferenca
entre eles. Por isso, sua generalidade e limitada. Como ha uma correlacao direta entre
o diametro externo e o hidraulico, optou-se por usar o externo nesse trabalho. Note
que, caso prefira-se calcular o numero de Reynolds atraves do diametro hidraulico,
basta recorrer a seguinte igualdade: Do = DH +Di.
Outro diametro muito utilizado para fins de engenharia e o diametro medio
(Dmedio = Do+Di2
). Em tubulacoes anulares e comum que engenheiros usem tanto
o diametro medio como o diametro hidraulico para poder calcular o numero de
Reynolds da situacao em questao. Independetemente da reologia do fluido usado,
com esse calculo e com a rugosidade relativa, usa-se a equacao (2.49) para obter-se
um fator de atrito.
O procedimento descrito acima apresenta alguns problemas. A equacao (2.49) foi
desenvolvida para dutos circulares e fluidos newtonianos. Logo, usa-la para fluidos
nao newtonianos em dutos anulares e extrapolar os limites da teoria desenvolvida.
Para dutos anulares com fluidos Herschel-Bulkley, ? apresenta algumas correcoes.
2.10 Funcoes transcendentais e implıcitas
Funcoes transcendentais sao aquelas que nao podem ser representadas por funcoes
algebricas. Em outras palavras, elas nao podem ser construıdas por um numero
finito de operacoes elementares — soma, subtracao, multiplicao, divisao e raiz de um
numero inteiro.
Funcoes exponenciais e trigonometricas e suas inversas sao exemplos de funcoes
transcendentais. Quanto as equacoes que calculam o fator de atrito, as equacoes tipo
Prandtl (2.55) e a equacao (2.49) de COLEBROOK e WHITE [1937] sao alguns dos
muitos exemplos encontrados na literatura.
A multiplicidade desses casos nao e uma coincidencia. Funcoes transcendentais sao
de grande utilidade em analise dimensional, pois elas so possuem sentido fısico com
argumentos adimensionais, o que facilita a identificacao de erros de dimensionalidade.
Note que o logaritmando da equacao (2.49), por exemplo, so depende do numero de
Reynolds e da rugosidade relativa — ambos valores adimensionais.
A funcao implıcita e definida como sendo aquela em que as variaveis nao possuem
27
uma relacao explıcita entre si, sendo necessario uma relacao algebrica. Funcoes
inversas e algebricas sao funcoes implıcitas. Alem disso, o cırculo tambem e um
exemplo. (2.85) representa este tipo de relacao
x = f(x) (2.85)
2.11 Calculo de raızes
Encontrar a raiz de uma equacao pode ser uma tarefa nao trivial. Polinomios
de ordem superior a 2 ja causam problemas para serem resolvidos analiticamente,
passando a necessitar-se de um metodo numerico. Essa tarefa pode ser especialmente
ardua, quando se trata de funcoes implıcitas que e o caso da (2.63). Contudo,
felizmente ha diversos metodos robustos para se obter uma solucao numerica. RUG-
GIERO [1988] apresenta os mais tradicionais. E comum tambem buscar solucoes ad
hoc.
Uma alternativa para funcoes implıcitas e torna-las explıcitas e usar o metodo
de iteracao linear (MIL). Para explicitar uma equacao e preciso criar uma variavel
nova, ao renomear em apenas um dos lados da equacao a variavel que faz da funcao
ser implıcita. Esse artifıcio somente nao resolveria o problema. E preciso tambem
estimar um valor inicial x0 para esta variavel a fim de iniciar um metodo iterativo.
A aplicacao do MIL consiste em transformar uma funcao f(x) = 0 em x = g(x),
pois, ao resolver x = g(x) tem-se a raiz do problema f(x) = 0. Como a funcao ja foi
explicitada, basta apenas realizar algumas manipulacoes algebricas para tal. Com isso,
e preciso entao resolver x = g(x) iterativamente, o que significa criar uma sequencia
em x a partir do ponto x0 calculada segundo xi+1 = g(xi), em que i = 0, 1, 2, 3, ...n
ate que xn esteja proximo o bastante da raiz. Geralmente estabelece-se o criterio de
convergecia como: ∣∣∣∣∣xn − xn−1
xn
∣∣∣∣∣ < δ (2.86)
sendo δ dependente de certos fatores, desde a caracterıstica do problema fısico a
precisao da maquina utilizada.
Para diminuir o numero de iteracoes, pode-se sobrerelaxar o passo. O que
consiste em utilizar mais informacao da iteracao anterior. A sobrerelaxacao pode ser
perigosa ao fazer com que o algoritmo convirga para valores errados. Seu oposto e a
subrelaxacao, em que se usa menos da informacao recem calculada com relacao a
que ja se possuıa.
28
Capıtulo 3
Metodologia
Para dutos anulares, usou-se o Wolfram Mathematica o que resumiu a solucao a
um comando — FindRoot. Nao foi possıvel obter uma solucao em Python precisa o
suficiente para o sistema de equacoes do atrito anular devido a sua complexidade.
Atraves do metodo da bissecao ou de outros metodos iterativos foi possıvel resolver as
duas equacoes separadamente. Entretanto, quando se tratava do sistema, o algoritmo
nao convergia. O codigo em Wolfram Mathematica encontra-se no apendice B.
Com isso, neste capıtulo sera abordado o metodo utilizado para resolver a equacao
2.63 para dutos circulares. As etapas necessarias para a solucao foram: Implementacao
e validacao. Estas sao complementares e, ate certo ponto, simultaneas. Sempre
que algum erro era encontrado na implementacao, voltou-se a realizar testes ate se
chegar em um codigo final robusto e eficiente — em torno de 30 iteracoes ja se obtia
o resultado esperado. Este codigo esta presente no apendice A e seu algortimo logico
esta representado no fluxograma da figura 3.1.
3.1 Implementacao
Como o objetivo do trabalho era gerar um simulador online, foi preciso usar uma
linguagem de programacao capaz de obter dados de um formulario html desta. Por
isso, optou-se por usar o Python. Enquanto a maneira encontrada de fazer essa
conexao sera abordada no proximo capıtulo, este se concentra no amago do problema:
Como resolver as equacoes que calculam o fator de atrito.
O grande desafio desta situacao e resolver as equacoes implıcitas nesta linguagem.
Caso o programa fosse escrito no Wolfram Matheamtica, por exemplo, um comando
(FindRoot) bastaria para realizar essa rotina. No Python essa funcao nao esta
disponıvel.
Para isso, a primeira ideia foi tornar a equacao implıcita em explıcita. Com isso
29
Tabela 3.1: Calculos realizados pelo algoritmo implementado
Calculo EquacaoVelocidade Media (2.10)
Numero de Reynolds (2.13)Fator de Atrito (3.1) sujeita a (3.2)Perda de carga (3.3)
Potencia de bombeamento (3.4)
a equacao (2.63) fica com o seguinte formato:
Λt =
(− 2.0log
(1.26
1n2
2−nn
Re1nMRΛ
2−n2nt−1
+ 100.1(
1− 1n
)0.27ε/D
))−2
(3.1)
sendo t = 1, 2, 3...
Com (3.1) e possıvel estabelecer uma rotina iterativa em que se calcula Λt a partir
de um valor para Λt−1. Assim e possıvel usar na iteracao seguinte o valor obtido
fora do logaritmo (Λt) dentro do logaritmo (Λt−1). Repete-se esse processo ate que o
criterio de convergencia seja saciado. Este criterio foi estabelciodo como:
|Λt − Λt−1|Λt−1
< 10−6 (3.2)
esse valor nao corresponde com a precisao real da equacao.
Para t = 0 usou-se um valor de 0.03 para o fator de atrito, pois foi constatado
que nao fazia diferenca no numero de iteracoes usar este valor inicial ou os obtidos
atraves da equacao do regime laminar (2.45) ou da equacao de Blasius (2.59).
Para o calculo da perda de carga modificou-se a equacao (2.44) para exprimir
valores em unidades de pressao. O calculo feito foi o seguinte:
∆P = ΛρLu2
2D(3.3)
Tendo a perda de carga, pode-se calcular a potencia de bombeamento necessaria:
Wbomba = ∆PQ (3.4)
em que Q e a vazao volumetrica.
A figura 3.1 resume os calculos feitos pelo programa.
30
Figura 3.1: Fluxograma para obtencao o fator de atrito e dos resultados subsequentes.
31
3.2 Validacao
Nesta etapa foram realizados testes para saber o comportamento das equacoes e
obter valores confiaveis para serem usados como referencia. O programa usado foi
o Wolfram Mathematica, em especial a sua funcao FindRoot. Com ela, tem-se uma
maneira rapida e direta de obter o fator de atrito.
Primeiramente, comparou-se (2.63) e (3.1) e, para o caso newtoniano, comparou-
se com a equacao de COLEBROOK e WHITE [1937]. Foi possıvel verificar que
os valores eram identicos para toda a faixa valida desta equacao — 0.4 < n < 1.6.
Sabendo-se disso, passa-se a ter a certeza que qualquer valor discrepante obtido no
Python e por conta de um problema do metodo de solucao (i.e. no algoritmo).
32
Capıtulo 4
Simulador para dutos circulares
O simualdor tem duas tarefas principais. A primeira delas e calcular os resultados
para a situacao exata que o usuario indicou atraves dos inputs. A segunda e gerar
um abaco de Moody com base na reologia do fluido em questao — leia-se n (ındice
de comportamento).
A motivacao por tras de se ter um abaco de Moody e que, dado que o fluido ja foi
especificado, pode-se fazer comparacoes diretas para determinar diametro e material
da tubulacao.
4.1 Dados de entrada e saıda
Os dados de entrada podem ser dividos em: Propriedades reologicas do fluido,
caracterısticas geometricas da tubulacao e vazao volumetrica do escoamento. As
tabelas 4.1 e 4.3 contem todos os parametros e resultados do programa para dutos
circulares.
Tabela 4.1: Dados de entrada (inputs)
Indice de comportamento n [adimensional]
Indice de consistencia K [adimensional]Massa especıfica ρ [kg/m3]
Comprimento do duto L [m]Diametro do duto D [m]
Rugosidade relativa ε/D [adimensional; m/m]Vazao volumetrica Q [m3/s]
Para dutos anulares, os resultados seriam os mesmos. Entretanto, precisa-se de
mais dados de entrada, pois estes sao compostos por dois dutos (tabela 4.2).
33
Tabela 4.2: Dados de entrada adicionais para dutos anulares (inputs)
Diametro externo do duto interno Di [m]Rugosidade relativa externa do duto interno εi/Di [adimensional; m/m]
Tabela 4.3: Dados de saıda (outputs)
Fator de atrito Λ [adimensional]Perda de carga distribuıda ∆P [kPa]
Potencia de bombeamento Wbomba [kW ]
4.2 Interface com o usuario e descricao do codigo
implementado
O codigo descrito a seguir se encontra no apendice A.2. O usuario tem con-
tato com o programa atraves da pagina do Laboratorio de Escoamentos Mul-
tifasicos e pode ser encontrado em: www.escoamentosmultifasicos.coppe.ufrj.
br/simuladores/Moody.html. Ela consiste basicamente de um formulario html com
a formatacao css padrao dos simuladores desta pagina. Nele o usuario deve escrever
os parametros da situacao desejada.
Ao preenche-lo e apertar o botao Submit, o programa Moody.py e responsavel
por adquirir esses dados. Para isso, usa-se a classe FieldStorage juntamente com o
modulo cgi. Basta instanciar uma vez (cgi.FieldStorage) para tornar essa operacao
possıvel. Nesse codigo usa-se get — especificamente a funcao getfirst — para obter
cada parametro de entrada. Com ela, pode-se depois armanzenar esses inputs em
uma lista.
Para garantir que o programa ira usar dados coerentes, algumas restricoes foram
impostas ao usuario atraves de erros mais comuns que poderiam ocorrer. Caso
o usuario cometa um deles, este sera especificado e retornado atraves de uma
mensagem explicativa e especıfica dos parametros que contem o problema. Estes
erros se encontram na tabela 4.4.
Alem disso, o programa ainda substitui ”,”por ”.”para que o Python interprete
corretamente as casas decimais — alem de indexar a lista corretamente. Com excecao
dos erros que afetam o ındice de comportamento, o programa mesmo assim e capaz
de gerar o abaco de Moody. Em outras palavras, basta que o parametro n esteja
correto.
Feito o tratamento desses erros, os calculos necessarios comecam a ser feitas.
Estas foram explicadas no capıtulo 3 e no fluxograma da figura 3.1. Esses calculos
foram definidos por funcoes e estao presentes em um outro arquivo denominado
34
Tabela 4.4: Possıveis erros nos dados de entrada
Todo parametro deve ser um numero.Todo parametro deve ser positivo.
O ındice de comportamento deve ser um valor entre 0.4 e 1.6.O ındice de consitencia deve ser um valor entre entre 0 e 1.
A rugosidade relativa deve ser menor que 0.1.
Contas.py (apendice A.1).
Para atualizar o formulario com os resultados, foram defenidas as seguintes
funcoes: loadHTML e generateHTML. A primeira e responsavel por criar o html
desse simulador em especıfico. Ja a segunda e necessaria para ataulizar o formulario
da pagina com os resultados e com a figura do abaco de Moody.
Figura esta que e gerada pela funcao generateSVG com auxılio da biblioteca
matplotlib. Em especial, foi-se usado o comando pyplot que permite com que esta
biblioteca funcione como o MATLAB.
Funcoes como as do tipo .set foram usadas para formatar o grafico. A figura
gerada e do formato SVG. Escolheu-se este formato, pois e um desenho vetorial
(i.e. um vetor), permitindo assim modificar suas dimensoes sem que hajam grandes
distorcoes nem perdas de qualidade.
Para que o arquivo da figura possa ser retornado ao formulario do site do
laboratorio, lancou-se mao da classe io. io.StringIO tranforma a figura em um stream
de dados que e convertida para uma string com o uso de .getvalue.
35
Capıtulo 5
Resultados e Discussao
5.1 Resultados
O resultado principal e o simulador presente na pagina do laboratorio — figura
5.1. Este resultado e significativo, pois trata-se de uma ferramanta inedita. Pode-
se obter o fator de atrito de forma simples, direta e gratuita tanto para regimes
laminares quanto para turbulentos — nao e valido na transicao. Alem disso, e de
vasta aplicacao, podendo trabalhar desde fluidos reofluidificante ate a reoespessantes
— 0.4 < n < 1.6.
Pode-se perceber que a reologia do fluido influencia consideravelmente no valor
do fator de atrito para ambos os dutos. Quanto menor n, menor sera Λ — vide as
figuras 5.2, 5.3, 5.4 e, no caso anular, 5.6. Essa diminuicao no fator de atrito ocorre,
pois o fluido torna-se mais fino, diminuindo assim o atrito na parede.
O grafico do simulador se difere ao de Moody justamente pela influencia deste
parametro no calculo do fator de atrito.Enquanto que para a regiao laminar a
mesma equacao (2.45) e utilizada, para a regiao turbulenta usa-se a equacao (2.63),
desenvolvida no NIDF por Santos, C.M.M.(comunicacao interna) e validada experi-
mentalmente, ao inves da equacao (2.49) de COLEBROOK e WHITE [1937].
O simulador e simples e direto, pois basta este precisa somente dos dados essenciais
que nao devem ser problematicos de se obter. A reologia do fluido e de amplo acesso,
as caracterısticas do duto devem ser especificadas pelo fabricante — para dutos
circulares se encontram no proprio abaco para materiais mais utilizados — e a vazao
volumetrica e obtida atraves de medicoes.
O programa e gratuito, pois nao tem nenhum custo associado desde que se tenha
acesso a internet, podendo ser utilizado de um celular ou ate de uma Smart TV,
por exemplo. Por motivos obvios, o intuito deste trabalho nao foi desenvolver um
aplicativo para uma televisao inteligente, mas sim ter um dispositivo que independesse
de sistemas operacionais e de capacidade computacional que pudesse ser usado em
36
situacoes remotas, como em uma plataforma de exploracao de petroleo.
Figura 5.1: Pagina do Laboratorio de Escoamentos Multifasicos.
Figura 5.2: Abaco de Moody para n = 0.7.
Outro fato que merece destaque e que o codigo esta no servidor do laboratorio.
Com isso, este pode passar por alteracoes, a fim de manter o usuario sempre com o
programa mais atual possıvel, alem de ser executado de forma rapida.
Por fim, outra facilidade e para obter uma versao impressa do abaco. Basta clicar
ctrl + p para habilitar o modo de impressao e definir o Layout da folha como paisagem
para se ter um abaco de Moody para o ındice comportamento dado preenchendo-a
37
Figura 5.3: Abaco de Moody para n = 0.9.
Figura 5.4: Abaco de Moody para n = 1.1.
totalmente.
Quanto ao codigo para dutos anulares, percebe-se na figura 5.5 que este apresenta
boa congruencia com dados experimentais [KELESSIDIS et al., 2011] quando o
38
Figura 5.5: Grafico log-log para comparacao entre dados experimentais [KELESSIDISet al., 2011] e do modelo para o fator de atrito anular com as equacoes (2.61) eCOLEBROOK e WHITE [1937].
escoamento e completamente turbulento — figuras 5.5 e 5.7. O que acontece para em
torno de 60000. Logo, o algoritmo em apendice so deve ser usado para altos numeros
de Reynolds, nao sendo valido entao na transicao nem em regimes turbulentos com
Reynolds menores que 60000. Cabe lembrar que para regimes laminares a equacao
e semelhante a de dutos circulares e e provada analiticamente — atente-se como o
numero de Reynolds e especificado.
Ainda sobre a figura 5.5, pode-se perceber que usar as equacoes de tanto COLE-
BROOK e WHITE [1937] como (2.63) acarretam em erros consideraveis, mesmo ao
se usar o diametro hidraulico. COLEBROOK e WHITE [1937] esta mais proximo
dos dados experimentais, pois o fluido usado e reofluidificante (n = 0.8798).
5.2 Discussao
Primeiramente, pode-se discutir a relevancia de se ter um abaco de Moody
para fluidos nao newtonianos e do proprio abaco em um mundo com abundancia
de computadores e capacidade numerica. Em geral, engenheiros sao profissionais
39
Figura 5.6: Graficos log-log para 3 ındices de comportamento diferente: n = 0.7,n = 0.8 e n = 0.9; Di/Do = 0.6. Note a influencia direta do n no aumento do fatorde atrito.
objetivos que preferem praticidade em suas ferramentas utilizadas e estao mais
preocupados em ter um resultado; em parte, e por isso que o abaco de Moody original
se popularizou.
As equacoes do fator de atrito mais precisas para regimes turbulentos sao as
implıcitas, logo seu formato dificulta a resolucao destas. Nao e possıvel resolve-las no
Excel, por exemplo, e, por mais simples que seja, nem todos esses engenheiros sabem
utilizar ou tem acesso ao Wolfram Mathematica ou a softwares afins. Portanto, esse
motivo em si ja justificaria a perpetuacao nao so do abaco de Moody, mas tambem
do proprio simulador, visto que este resolve uma equacao dessa natureza, poupando
o trabalho do usuario.
Sobre o simulador, e valido discutir algumas das escolhas feitas. Primeiramente, o
por que de usar uma pagina da web mantida pelo servidor do laboratorio para compilar
o programa pode nao estar claro. O motivo principal para essa decisao e que basta
haver conexao de internet para poder acessar o programa, independentemente do
aparelho utilizado. Alem disso, nenhum programa precisa ser instalado no dispositivo
do usuario. Pode-se tambem lancar novas versoes sem que haja a necessidade de
atualizacoes por parte de quem esta usando o simulador. Com isso, o usuario tem
40
Figura 5.7: Erro relativo da comparacao entre dados experimentais e do modelo parao fator de atrito anular.
sempre a versao mais atual disponıvel.
Um aplicativo para celular e uma outra proposicao valida, ao inves de um
site. A grande vantagem deste e que nao precisaria estar conectado a internet.
Contudo, todas as vantagens citadas no paragrafo anterior seriam perdidas, alem de
ser necessario criar uma arquitetura especıfica para cada sistema operacional.
Quanto a dutos anulares, e questionavel a representacao do fator de atrito em
formato de abaco de Moody. Como ha mais parametros (4 contra 3 do caso circular)
passa a se ter dificuldades de representacao em um plano. Um simulador que gere
somente os resultados e os armazene passa a ser mais util ao inves de um abaco para
um engenheiro.
Um simulador em Python para dutos anulares nao foi desenvolvido, pois ate
a conclusao deste trabalho nao conseguiu-se solucionar o sistema de equacoes do
atrito. Diversos metodos foram testados, incluindo os que foram utilizados no
algoritmo final para resolver a equacao de dutos circulares. Atraves deste metodo e
da bissecao, conseguiu-se obter resultados satisfatorios para solucionar cada equacao
individualmente, mas esses nao condizem com a realidade.
Logo, como de se esperar, ficou claro que era preciso resolver o sistema simul-
41
taneamente. Um dos problemas enfrentados para tal foi que chegava-se no criterio
de parada de so uma equacao. Sendo que esta era a resposta local e nao uma raiz
de fato do sistema. Alem disso, quando essa situacao nao ocorria, o algoritmo nao
convergia, mesmo para um numero elevado de iteracoes.
Por isso, a fim de nao deixar o leitor sem nenhuma maneira de se obter o fator de
atrito neste caso, apresentou-se o codigo em Mathematica. O problema com este e
que nao foi possıvel integra-lo com um formulario html como no caso do duto circular
e, portanto, nao ha um simulador online disponıvel.
42
Capıtulo 6
Consideracoes Finais
6.1 Conclusao
Fez-se uma breve revisao sobre perda de carga e escoamento interno, com devida
atencao ao fator de atrito. Revisou-se a bibliografia e apresentou-se o estado da
arte das expressoes atraves da qual ele e calculado e representado tanto para fluidos
newtonianos como para nao newtonianos para dutos circulares.
Estudo este que culmina na apresentacao da equacao utilizada para fluidos lei
de potencia e qual a metodologia utilizada para resolve-la. A equacao (2.63) ja
foi validada, mas ainda nao publicada por se tratar de uma tese de doutorado em
andamento. Explicou-se tambem a teoria necessaria para se obter uma expressao
para dutos anulares para fluidos lei de potencia, a qual foi comparada com dados
experimentais — figura 5.5.
Pode-se tambem concluir que o abaco de Moody continua como uma forma
relevante de se obter o fator de atrito para dutos circulares. Representar em um
grafico semelhante ao de Moody para dutos anulares talvez nao seja a melhor opcao,
devido ao maior numero de parametros.
Outra conclusao e que o simulador presente no site do Laboratorio de Escoamentos
Multifasicos representa uma forma eficiente, direta e precisa para obter-se o fator de
atrito. Sendo assim uma poderosa ferramenta para engenheiros hidraulicos calcularem
perda de carga e dimensionarem bombas.
6.2 Trabalhos Futuros
Incorporar o calculo das perdas de carga menores e um caminho a ser seguido
para dar continuidade a esse trabalho. Para tal, e preciso primeiramente buscar
dados confiaveis para acidentes de tubulacao para fluidos nao newtonianos e materiais
relevantes industrialmente. O passo a seguir seria criar uma interface em que o
43
usuario fosse capaz de construir um modelo de sua tubulacao, ao incluir valvulas e
acessorios, curvas, joelhos e seus demais acidentes.
Criar um simulador online para dutos anulares e tambem um trabalho futuro
relevante. Como se tem um sistema de duas equacoes implıcitas com muitos termos
nao lineares, e preciso fazer uma escolha inteligente do metodo a ser implementado.
Os equipamentos utilizados para extracao em pocos de petroleo offshore sao
compostos por dutos circulares e anulares. Criar um codigo computacional, a
partir dos simuladores, capaz de modelar o escoamento nessa situacao e calcular
o fator de atrito seria relevante e de grande interesse para a industria do petroleo
especificamente.
44
Referencias Bibliograficas
STEFFE, J. F. Rheological methods in food process engineering. Freeman press,
1996.
ANBARLOOEI, H. R., CRUZ, D. O. A., RAMOS, F., et al. “Phenome-
nological Blasius-type friction equation for turbulent power-law fluid
flows”, Phys. Rev. E, v. 92, pp. 063006, Dec 2015a. doi: 10.1103/
PhysRevE.92.063006. Disponıvel em: <http://link.aps.org/doi/10.
1103/PhysRevE.92.063006>.
COLEBROOK, C., WHITE, C. “Experiments with fluid friction in roughened
pipes”, Proceedings of the royal society of london. series a, mathematical
and Physical sciences, pp. 367–381, 1937.
FOX, R. W., MCDONALD, A. T., PRITCHARD, P. J. Introduction to Fuid
Mechanics, v. 7. John Wiley & Sons New York, 1985.
CLAPP, R. M. “Turbulent heat transfer in pseudoplastic non-newtonian fluids.”
International Developments in Heat Transfer, ASME, Part III, Sec. A, p.
652–661, 1961.
MOODY, L. F. “Friction factors for pipe flow”, Trans. Asme, v. 66, n. 8, pp. 671–684,
1944a.
DODGE, D. W.; METZNER, A. B. “Turbulent flow of non-newtonian systems.”
AIChE Journal, v. 5, n. 6, p. 189–204, 1959.
ANBARLOOEI, H., COUTO, P., CRUZ, D. O. A., et al. “A new friction factor
equation for turbulent flow of purely viscous non-newtonian fluids”. In:
Proceedings of the 23rd ABCM International Congress of Mechanical
Engineering, 2015b.
KELESSIDIS, V. C., DALAMARINIS, P., MAGLIONE, R. “Experimental study
and predictions of pressure losses of fluids modeled as Herschel–Bulkley
in concentric and eccentric annuli in laminar, transitional and turbulent
45
flows”, Journal of Petroleum Science and Engineering, v. 77, n. 3, pp. 305–
312, 2011.
WHITE, F. M., OTHERS. Fluid mechanics. McGraw-Hill, New York, 2003.
MITCHELL, R. F., MISKA, S. Z. Fundamentals of drilling engineering. Richardson,
TX.: Society of Petroleum Engineers, 2011.
KOLMOGOROV, A. N. “The local structure of turbulence in incompressible viscous
fluid for very large Reynolds numbers”. In: Dokl. Akad. Nauk SSSR, v. 30,
pp. 299–303, 1941.
SILVA FREIRE, A., MENUT, P., SU, J. Turbulencia. 2002.
DARBY, R. “Feature report-Take the mystery out of non-Newtonian fluids”,
Chemical Engineering, v. 108, n. 3, pp. 66–73, 2001.
SILVA FREIRE, A. “Teoria de Camada Limite”. 1990.
DARCY, H. “Experimental research relating to the movement of water in pipes”,
Recherches Experimentales Relatives au Mouvement de L’Eau deans les
Tuyaux, 1857.
WEISBACH, J. L. Lehrbuch der ingenieur-und maschinen-mechanik: Statik der
bauwerke & mechanik der umtriebsmaschinen. Vieweg, 1848.
FANNING, J. T. A practical treatise on hydraulic and water-supply engineering. D.
Van Nostrand Company, 1896.
HAGEN, G. H. L. “Uber die Bewegung des Wassers in engen cylindrischen Rohren”,
Poggendorff’s Annalen der Physik und Chemie, , n. 46, pp. 123–32, 1839.
POUISEUILLE, J. “Recherches experimentales sur Ie mouvement des liquides dans
les tubes de tres petits diametres; Influence de la pression sur la quantite
de Iiquide qui traverse les tubes de tres petits diametres.” C.R. Acad. Sci.,
, n. 11, pp. 961–67, 1840a.
POUISEUILLE, J. “Recherches experimentales sur Ie mouvement des liquides
dans les tubes de tres petits diametres; II. Influence de la longueur sur
la quantite de liquide qui traverse les tubes de tres petits diametres; III.
Influence du diametre sur la quantite de liquide qui traverse les tubes de
tres petits diametres.” C.R. Acad. Sci., , n. 11, pp. 1014–48, 1840b.
WHITE, F. M., CORFIELD, I. Viscous fluid flow, v. 3. McGraw-Hill New York,
2006.
46
HAALAND, S. “Simple and explicit formulas for the friction factor in turbulent
pipe flow”, Journal of Fluids Engineering, v. 105, n. 1, pp. 89–90, 1983.
TORRANCE, B. M. “Friction factors for turbulent non-Newtonian flow in circular
pipes”, SA Mech. Eng, v. 13, pp. 89–91, 1963.
KAWASE, Y., SHENOY, A., WAKABAYASHI, K. “Friction and heat and mass
transfer for turbulent pseudoplastic non-newtonian fluid flows in rough
pipes”, The Canadian Journal of Chemical Engineering, v. 72, n. 5,
pp. 798–804, 1994.
GOTSCHLICH, M. F. L., OTHERS. Escoamento de fluıdos nao newtonianos:
revisao da literatura e analise de correlacoes para o fator de atrito e
coeficientes de perda localizada. Tese de Mestrado, Universidade Federal
de Santa Catarina, 2011.
MOODY, L. F. “Moody Diagram”. https://upload.wikimedia.org/wikipedia/
commons/8/80/Moody_diagram.jpg, 1944b. Acessado em 20/10/2015.
DE MATTOS, E. E., DE FALCO, R. Bombas industriais. Interciencia, 1998.
RUGGIERO, MARCIA A. GOMES E LOPES, V. L. R. Calculo Numerico: Aspectos
Teoricos e Computacionais. Pearson, 1988.
47
Apendice A
Codigos em Python para dutos
circulares
A.1 Contas.py
import math
def Velocity(q,d): \#Calculates mean velocity from volumetric flow.
u = float(4*q/(pow(d,2)*math.pi))
return u
def Reynolds(u,d,n,k,ro): \#Calculates generalized Reynolds number.
re = (2**(5 - 3*n)*d**n*n*ro*u**(2 - n))/(k*(1 + 3*n))
return re
def LFactor(re): \#Laminar flow equation for the friction factor.
f = 64/re
return f
def TFactor(re,n,kl): \#Turbulent flow equation\
for the friction factor.
bl = 0.03 \#To start the iteractive method.
i = 0
while i <= 100:
a = float(pow(1.26,1./n)*pow(2.,(2-n)/n))
b = float(pow(re,1./n)*pow(bl,(2.-n)/(2*n)))
c = float(0.27*float(kl)*pow(10,0.1*(1.-(1./n))))
48
f = pow(-2.*math.log10((a/b)+ c),-2)
if abs((f-bl)/f) <= pow(10,-6): \#Stop criteria
return f
else:
if f < 1:
bl = f
i = i + 1
else:
return ’Convergence Error type 1.’
return ’Convergence Error type 2.’
def PressureDrop(ro,f,u,d,l):
if (f == ’Convergence Error type 1.’) or\
(f == ’Convergence Error type 2.’):
#Only to let the program run without being interrupted\
by class error. This error is reported to the user.
return f
else:
p = float(pow(10,-3)*0.5*(1/d)*f*ro*l*pow(u,2)) #kPa
return p
def Power(p,q):
if (p == ’Convergence Error type 1.’)\
or (p == ’Convergence Error type 2.’):
#Only to let the program run without being interrupted\
by class error. This error is reported to the user.
return p
else:
w = float(p*q) # kWatt
return w
A.2 Moody.py
import cgi
import sys
import os
import cgitb
49
cgitb.enable(display=0) #doesn’t report the errors to the users
import Contas
import matplotlib
matplotlib.use(’SVG’)
import matplotlib.pyplot as plt
import io
import math
import numpy
import time
def getParametersCGI():
\#Creates a list with the parameters inputed by the user.
form = cgi.FieldStorage()#CGI Form
p = [] #Inputs
p.append(form.getfirst("n",""))
p.append(form.getfirst("k", ""))
p.append(form.getfirst("ro", ""))
p.append(form.getfirst("l", ""))
p.append(form.getfirst("d", ""))
p.append(form.getfirst("kl", ""))
p.append(form.getfirst("q", ""))
return p
def loadHTMLModel(filename):
path = os.path.join(os.path.dirname(os.path.realpath(__file__)),\
filename)
#realpath - returns the path of the specified filename
#dirname - returns the directory name of pathname
#join - joins the two paths: lab + Moody
#filename = Moody.html
with open(path, ’r’) as f:
#’r’ is the default method - open for reading;\
going to be used with StringIO;
#information available at: \
50
https://docs.python.org/3/library/functions.html
model = f.read()
return model
def main():
inputs1 = getParametersCGI()
#inputs1 = [’0.787’, ’0.37011’, ’1037.2’, ’100.0’, ’0.1524’,\
’0.003’, ’0.01’]
model = loadHTMLModel("MoodyModelo.html")
print("Content-type: text/html\n\n")
\#html format instead of plain text
#print("Content-type: text/plain\n\n")
\#plain text instead of html
numberErrorMessage = "Every parameter must be a number."
negativeErrorMessage = "Every parameter must be positive."
nErrorMessage = "Behavior Index must be between 0.4 and 1.6."
klErrorMessage = "Relative roughness must be smaller than 0.1."
kErrorMessage = "Consistency Index must be between 0 and 1."
ConvergenceError = "For those inputs\
the method did not converge."
nIsBad=False #Boolean variable
readError = False #Boolean variable
inputs2 = []
results = []
lstPoints = []
for i in range(len(inputs1)):
try: #Tests if it is float
inputs1[i] = inputs1[i].replace(’,’,’.’)\
#Replaces "," por "."
inputs2.append(float(inputs1[i]))
except:
inputs2.append(numberErrorMessage)
#Replaces a non-number parameter for the respective type of error.
results = [’-’,’-’,’-’]
if i == 0:
nIsBad = True
51
readError = True
else:
if inputs2[i] <= 0:
#Tests if the inputs are positive and \
if the user didn’t write anything.
if i == 0:
nIsBad = True
inputs2[i] = negativeErrorMessage
results = [’-’,’-’,’-’]
readError = True
if (not (inputs2[0] == negativeErrorMessage)) and \
(not (inputs2[0] == numberErrorMessage)):
if inputs2[0] > 1.6 or inputs2[0] < 0.4:
\# 0.4 < n < 1.6
inputs2[0] = nErrorMessage
results = [’-’,’-’,’-’]
nIsBad = True
readError = True
if (not (inputs2[1] == negativeErrorMessage)) and\
(not (inputs2[1] == numberErrorMessage)):
if inputs2[1] > 1: # 0 < k < 1
inputs2[1] = kErrorMessage
results = [’-’,’-’,’-’]
readError=True
if (not (inputs2[5] == negativeErrorMessage)) and\
(not (inputs2[5] == numberErrorMessage)):
if inputs2[5] > 0.1: # kl < 0.1
inputs2[5] = klErrorMessage
results = [’-’,’-’,’-’]
readError = True
num = inputs2[0]
global num #Only to show up at the chart title
if not nIsBad: #For the Moody’s Chart.
treynolds = [10**k for k in numpy.\
52
linspace(math.log(3000,10),8,100)]
kls = [0, pow(10,-6), 5*pow(10,-6), pow(10,-5),\
5*pow(10,-5),pow(10,-4),2*pow(10,-4), 5*pow(10,-4),\
0.001, 0.002, 0.005,0.01, 0.015, 0.02,0.03, 0.04, 0.05]
lstPoints.append(treynolds) #lstPoints[0] = faixa de Reynolds
for i in range(len(kls)):
ff = []
for j in range(len(treynolds)):
ff.append(float(Contas.TFactor(treynolds[j],\
inputs2[0],kls[i])))
lstPoints.append(ff)
lreynolds = [10**k for k in numpy.linspace(math.log(500,10),\
math.log(2300,10),20)]
#Reynolds points for the friction factors curves in the Moody Chart
lff = []
for w in range(len(lreynolds)):
lff.append(float(Contas.LFactor(lreynolds[w])))
lstPoints.append(lreynolds)
lstPoints.append(lff)
global readError
if not readError: #nIsBad would be redundant.
u = Contas.Velocity(inputs2[6],inputs2[4])
re = Contas.Reynolds(u,inputs2[4],inputs2[0],\
inputs2[1],inputs2[2])
if re > 2300:
f = Contas.TFactor(re,inputs2[0],inputs2[5])
else:
f = Contas.LFactor(re)
num3 = re #To plot the dot
num4 = f
global num3
global num4
53
if (f == ’Convergence Error type 1.’)or\
(f == ’Convergence Error type 2.’):
#Checks friction factor errors in Contas.py
results.append(ConvergenceError)
results.append(’-’)
results.append(’-’)
readError = True
else:
h = Contas.PressureDrop(inputs2[2],f,u,inputs2[4],\
inputs2[3])
w = Contas.Power(h,inputs2[6])
results.append(round(f,4))
results.append(round(h,4))
results.append(round(w,4))
print(generateHTML(model,inputs2,results,lstPoints))
return 0
def generateHTML(model,inputs,results,lstPoints):
#Updates input values, generates results and\
plots the Moody Chart in a html form
newHTML = model
patternPar = "##{0}p##"
patternRes = "##{0}r##"
patternGraf = "##{0}g##"
for i in range(len(inputs)):
#inputs2 isn’t a global variable; inputs = inputs2
newHTML = newHTML.replace(patternPar.format(i),\
str(inputs[i]))
for i in range(len(results)):
newHTML = newHTML.replace(patternRes.format(i),\
str(results[i]))
#Generates results
if len(lstPoints)>0:
newHTML = newHTML.replace(patternGraf.format("0")\
,generateSVG(lstPoints))
#Plots Moody Chart
else:
54
newHTML = newHTML.replace(patternGraf.format("0"),’’)
#If something wrong happens, it doesn’t plot anything
return newHTML
def generateSVG(lstPoints):
fig = plt.figure()
fig.set_size_inches(15,10) #To fit in a A4 sheet, landscape mode
kls = [0, pow(10,-6), 5*pow(10,-6), pow(10,-5), 5*pow(10,-5),\
pow(10,-4),2*pow(10,-4), 5*pow(10,-4), 0.001, 0.002, 0.005,\
0.01, 0.015, 0.02,0.03, 0.04, 0.05]
#Roughness labels
xf = 1.05*pow(10,8) #Roughness labels position
nErrorMessage = "Behavior Index must be between 0.4 and 1.6."
negativeErrorMessage = "Every parameter must be positive."
#Find where in the smooth pipe curve it is above the last value\
for the 1e-6 roughness;helps visualization,\
since it hides the smooth pipe curve.
i = 23
while lstPoints[1][i] >= lstPoints[2][99]:
i = i + 1
plt.text(0.6*lstPoints[0][i-1],lstPoints[2][99],r"Smooth Pipe",\
size=’small’,va=’center’,ha=’center’) #Smooth Pipe label
plt.loglog(lstPoints[0],lstPoints[1], color = ’black’,\
linewidth = 1)
plt.text(1.3*10**3,0.058,r"Laminar",size="small",va="center",\
ha="center", rotation = -70) #Laminar Flow label
plt.text(2*10**3,lstPoints[17][0],r"Transition",size="small",\
va="center",ha="center",) #Transition label
plt.text(1.5*10**6,lstPoints[17][50]+0.0025,r"Turbulent",\
size=’small’,va=’center’,ha=’center’)
#Turbulent Flow label; 50 is arbitrary, but works.
for i in range(2,len(lstPoints)-2):
#lstPoints[0] is for turbulent Reynolds number and lstPoints[1]
#is for smooth pipe.
if (math.log(lstPoints[i][99])-\
math.log(lstPoints[i-1][99]))>=0.05:
55
yf = lstPoints[i][-1]
plt.text(xf,yf,’{0}’.format(kls[i-2]),size=’small’\
,va=’center’)
plt.loglog(lstPoints[0],lstPoints[i],\
color = ’black’, linewidth = 1)
plt.loglog(lstPoints[-2],lstPoints[-1], color = ’black’\
, linewidth = 1)
if not readError:
if not(num4 == ’Convergence Error type 1.’)\
or (num4 == ’Convergence Error type 2.’):
#Plots the dot for the input situation.
if num3 > 10**2 and num3 < 10**8:
plt.loglog(num3,num4,’ro’)
ax = plt.gca() #gca = get current axis
ax.set_title(’Moody Chart for n = {}; \
NIDF - COPPE/UFRJ’.format(str(num)),y = 1.03)
ax.set_xlabel(’Reynolds Number, $Re_{MR}$’)
ax.set_ylabel(’Darcy Friction Factor, $f$’)
plt.text(1.07,0.5,r"Relative Roughness, \
$\epsilon/D$",transform=plt.gca()\
.transAxes,rotation=’vertical’,va=’center’)
ax.set_xlim([500,pow(10,8)])
ax.set_ylim([float(lstPoints[2][99]-0.001),\
float(lstPoints[17][0]+0.005)])
yformatter = matplotlib.ticker.FormatStrFormatter("%.3f")
ax.yaxis.set_major_formatter(yformatter)
ax.yaxis.set_minor_formatter(yformatter)
ax.minorticks_on()
if num == 1:
ax.set_title(’Moody Chart for Newtonian Fluids;\
NIDF - COPPE/UFRJ’.format(str(num)),y = 1.03)
else:
ax.set_title(’Moody Chart for n = {}; NIDF - \
COPPE/UFRJ’.format(str(num)),y = 1.03)
56
if num >0.48:
chart = [["Concrete,coarse","0.25"],
["Concrete, new smooth","0.025"],
["Drawn tubing","0.0025"],
["Glass, Plastic, Perspex","0.0025"],
["Iron, cast","0.15"],
["Sewers, old","3.0"],
["Steel, mortar lined","0.1"],
["Steel, rusted","0.5"],
["Steel, structural or forged","0.025"],["Water mains,\
old","1.0"]]
box = matplotlib.patches.Rectangle((0.02,0.02),0.31,0.2\
,fc=’white’,transform=plt.gca().transAxes)
#position(x,y),width,height
ax.add_patch(box)
table = plt.table(cellText=chart,colLabels=\
["Material",r"$\epsilon$ [mm]"]\
,colColours=[’white’]*2,bbox=(0.02,0.02,0.31,0.2))
table.set_fontsize(9.0)
table.set_zorder(500)
plt.grid(True,which=’both’,linestyle=’solid’,\
color=’gray’,alpha=0.5)
imgdata = io.StringIO()
#In computer science, a stream is a sequence of data elements\
made available over time; different than batches.
fig.savefig(imgdata, format = ’svg’)
imgdata.seek(0) #standard
return imgdata.getvalue()
\#returns a string that contains the image
if __name__ == "__main__":
#Finishes main routine; no use in this program;\
returns level errors
sys.exit(main())
57
Apendice B
Codigo no Mathematica para
dutos anulares
Dados de entrada
Di e o diametro externo do duto interno;
Do e o diametro interno do duto externo;
εi e o Rugosidade do duto interno;
εo e o Rugosidade do duto externo;
n e o Indice de comportamento;
k e o Indice de consistencia;
ReDR e o Reynolds generalizado.
Tutorial
1 - Carregue os dados de entrada;
2 - Carregue a funcao;
Caso deseje mudar os parametros de entrada, refaca os passos anteriores.
(*Exemplo de dados de entrada*)(*Exemplo de dados de entrada*)(*Exemplo de dados de entrada*)
n = 0.7;n = 0.7;n = 0.7;
k = 0.37;k = 0.37;k = 0.37;
Di = 0.1524;Di = 0.1524;Di = 0.1524;
Do = 0.254;Do = 0.254;Do = 0.254;
εi = 0.00025;εi = 0.00025;εi = 0.00025;
εo = 0.00025;εo = 0.00025;εo = 0.00025;
εoDo = εo/Do;εoDo = εo/Do;εoDo = εo/Do;
58
εiDo = εi/Do;εiDo = εi/Do;εiDo = εi/Do;
DiDo = Di/Do;DiDo = Di/Do;DiDo = Di/Do;
α = 0.3 ∗ e0.1(1− 1n);α = 0.3 ∗ e0.1(1− 1n);α = 0.3 ∗ e0.1(1− 1n);
BB = 5− 5.44 ∗ Log[n];BB = 5− 5.44 ∗ Log[n];BB = 5− 5.44 ∗ Log[n];
B = BB− (5./3.− 2.19 ∗ n−1.84) ;B = BB− (5./3.− 2.19 ∗ n−1.84) ;B = BB− (5./3.− 2.19 ∗ n−1.84) ;
(*Funcao*)(*Funcao*)(*Funcao*)
Plot[Plot[Plot[(− DiDofdi+fdo
(−1+DiDo2)
)/.
(− DiDofdi+fdo
(−1+DiDo2)
)/.
(− DiDofdi+fdo
(−1+DiDo2)
)/.
FindRoot[FindRoot[FindRoot[{
12√
2k
{1
2√
2k
{1
2√
2k
(BB(−√
fdi +√
fdo)k−
(BB(−√
fdi +√
fdo)k−
(BB(−√
fdi +√
fdo)k−
√fdi Log
[10,−
((2√
2√
DiDofdi1n
(√DiDo
√DiDofdi + fdo−
√fdi + DiDofdo
)√fdi Log
[10,−
((2√
2√
DiDofdi1n
(√DiDo
√DiDofdi + fdo−
√fdi + DiDofdo
)√fdi Log
[10,−
((2√
2√
DiDofdi1n
(√DiDo
√DiDofdi + fdo−
√fdi + DiDofdo
)(3 + n)ReDR
1n
)/(3 + n)ReDR
1n
)/(3 + n)ReDR
1n
)/(√
DiDofdi + fdo(
641n
√fdi + 4
√2fdi
1n (3 + n)ReDR
1nαεiDo
)))]+
(√DiDofdi + fdo
(64
1n
√fdi + 4
√2fdi
1n (3 + n)ReDR
1nαεiDo
)))]+
(√DiDofdi + fdo
(64
1n
√fdi + 4
√2fdi
1n (3 + n)ReDR
1nαεiDo
)))]+
√fdoLog
[10,(
2√
2fdo1n
(√DiDofdi + fdo−
√DiDo
√fdi + DiDofdo
)√fdoLog
[10,(
2√
2fdo1n
(√DiDofdi + fdo−
√DiDo
√fdi + DiDofdo
)√fdoLog
[10,(
2√
2fdo1n
(√DiDofdi + fdo−
√DiDo
√fdi + DiDofdo
)(3 + n)ReDR
1n
)/(3 + n)ReDR
1n
)/(3 + n)ReDR
1n
)/(√
DiDofdi + fdo(
641n
√fdo + 4
√2fdo
1n (3 + n)ReDR
1nαεoDo
))])== 0,
(√DiDofdi + fdo
(64
1n
√fdo + 4
√2fdo
1n (3 + n)ReDR
1nαεoDo
))])== 0,
(√DiDofdi + fdo
(64
1n
√fdo + 4
√2fdo
1n (3 + n)ReDR
1nαεoDo
))])== 0,(√
2DiDofdi3/2 − 3√
2DiDo3fdi3/2 + 2√
2DiDofdi√
fdo− 2√
2DiDo2√
fdifdo+(√
2DiDofdi3/2 − 3√
2DiDo3fdi3/2 + 2√
2DiDofdi√
fdo− 2√
2DiDo2√
fdifdo+(√
2DiDofdi3/2 − 3√
2DiDo3fdi3/2 + 2√
2DiDofdi√
fdo− 2√
2DiDo2√
fdifdo+
3√
2fdo3/2 −√
2DiDo2fdo3/2 + 2√
2DiDo3/2√
fdi√
DiDofdi + fdo√
fdi + DiDofdo3√
2fdo3/2 −√
2DiDo2fdo3/2 + 2√
2DiDo3/2√
fdi√
DiDofdi + fdo√
fdi + DiDofdo3√
2fdo3/2 −√
2DiDo2fdo3/2 + 2√
2DiDo3/2√
fdi√
DiDofdi + fdo√
fdi + DiDofdo
−2√
2√
DiDo√
fdo√
DiDofdi + fdo√
fdi + DiDofdo + 8DiDofdik − 8DiDo3fdik−−2√
2√
DiDo√
fdo√
DiDofdi + fdo√
fdi + DiDofdo + 8DiDofdik − 8DiDo3fdik−−2√
2√
DiDo√
fdo√
DiDofdi + fdo√
fdi + DiDofdo + 8DiDofdik − 8DiDo3fdik−
2√
2BDiDofdi3/2k + 2√
2BDiDo3fdi3/2k + 8fdok − 8DiDo2fdok − 2√
2Bfdo3/2k+2√
2BDiDofdi3/2k + 2√
2BDiDo3fdi3/2k + 8fdok − 8DiDo2fdok − 2√
2Bfdo3/2k+2√
2BDiDofdi3/2k + 2√
2BDiDo3fdi3/2k + 8fdok − 8DiDo2fdok − 2√
2Bfdo3/2k+
2√
2BDiDo2fdo3/2k + 2√
2DiDo(−1 + DiDo2
)fdi3/2Log
[10,−
((2√
2√
DiDofdi1n2
√2BDiDo2fdo3/2k + 2
√2DiDo
(−1 + DiDo2
)fdi3/2Log
[10,−
((2√
2√
DiDofdi1n2
√2BDiDo2fdo3/2k + 2
√2DiDo
(−1 + DiDo2
)fdi3/2Log
[10,−
((2√
2√
DiDofdi1n(√
DiDo√
DiDofdi + fdo−√
fdi + DiDofdo)
(3 + n)ReDR1n
)/ (√DiDofdi + fdo
(√DiDo
√DiDofdi + fdo−
√fdi + DiDofdo
)(3 + n)ReDR
1n
)/ (√DiDofdi + fdo
(√DiDo
√DiDofdi + fdo−
√fdi + DiDofdo
)(3 + n)ReDR
1n
)/ (√DiDofdi + fdo(
641n
√fdi + 4
√2fdi
1n (3 + n)ReDR
1nαεiDo
)))]+
(64
1n
√fdi + 4
√2fdi
1n (3 + n)ReDR
1nαεiDo
)))]+
(64
1n
√fdi + 4
√2fdi
1n (3 + n)ReDR
1nαεiDo
)))]+
2√
2(−1 + DiDo2
)fdo3/2Log
[10,(
2√
2fdo1n
(√DiDofdi + fdo2
√2(−1 + DiDo2
)fdo3/2Log
[10,(
2√
2fdo1n
(√DiDofdi + fdo2
√2(−1 + DiDo2
)fdo3/2Log
[10,(
2√
2fdo1n
(√DiDofdi + fdo
−√
DiDo√
fdi + DiDofdo)
(3 + n)ReDR1n
)/−√
DiDo√
fdi + DiDofdo)
(3 + n)ReDR1n
)/−√
DiDo√
fdi + DiDofdo)
(3 + n)ReDR1n
)/(√
DiDo fdi + fdo(
641n
√fdo + 4
√2fdo
1n
(√DiDo fdi + fdo
(64
1n
√fdo + 4
√2fdo
1n
(√DiDo fdi + fdo
(64
1n
√fdo + 4
√2fdo
1n (3 + n) ReDR
1nαεoDo
))])/(3 + n) ReDR
1nαεoDo
))])/(3 + n) ReDR
1nαεoDo
))])/(
8(−1 + DiDo2
)(DiDo fdi + fdo } k) == 0}
(8(−1 + DiDo2
)(DiDo fdi + fdo } k) == 0}
(8(−1 + DiDo2
)(DiDo fdi + fdo } k) == 0} , {fdo , 0.01}, {fdi, 0.01}] ,, {fdo , 0.01}, {fdi, 0.01}] ,, {fdo , 0.01}, {fdi, 0.01}] ,
{ReDR, 30000, 150000} ,AxesLabel→ {”ReMR”, “Fator de Atrito Anular”} ,{ReDR, 30000, 150000} ,AxesLabel→ {”ReMR”, “Fator de Atrito Anular”} ,{ReDR, 30000, 150000} ,AxesLabel→ {”ReMR”, “Fator de Atrito Anular”} ,
AxesOrigin→ {30000, 0.10}]AxesOrigin→ {30000, 0.10}]AxesOrigin→ {30000, 0.10}]
59