Baixe o app para aproveitar ainda mais
Prévia do material em texto
1 UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ GRADUAÇÃO ENGENHARIA DE BIOPROCESSOS E BIOTECNOLOGIA ATIVIDADE COMPLEMENTAÇÃO DE CARGA HORÁRIA – CCH CÁLCULO NUMÉRICO ZEROS DE FUNÇÕES REAIS Matemática Aplicada Carolyne Crivelli Gabriella Pereira Bendo Campus Toledo, junho 2018 2 SUMÁRIO 1 Introdução ......................................................................................................................... 3 2 Desenvolvimento .............................................................................................................. 4 2.1 Método da bissecção ..................................................................................................... 4 2.2 Capacidade calorífica .................................................................................................... 5 2.3 Scilab ............................................................................................................................. 5 3 Estudo de Caso ................................................................................................................ 6 4 Resultado e Discussões ................................................................................................... 7 5 Conclusão ....................................................................................................................... 10 Referências........................................................................................................................ 11 3 1 Introdução Ao longo da história, o problema de calcular as raízes de uma equação sempre es- teve presente. Em 1700 a.C., foi descoberto registro egípcios sobre os cálculos de raízes usando equações de segundo grau [1]. Ademais, no século XVI os matemáticos italianos conseguiram encontrar uma fórmula geral para calcular as raízes de equações de terceiro e quarto grau. Todavia, tais fórmulas são muito complexas e não são usadas na atualidade. Mas no século posterior, a descoberta das fórmulas das equações de terceiro e quarto grau, Niels Abel provou que não tem uma fórmula para equações de grau maior ou igual a cinco [2]. Com isto, faz-se necessária a utilização de métodos numéricos para que assim possa calcular raízes aproximadas de uma determinada equação. Dentre os métodos que podem ser usados é o da bissecção, no qual seu princípio básico é repetir o mesmo procedimento inúmeras vezes, empregando o resultado obtido na última interação até alcançar uma certa precisão. Uma aplicação importante que faz o uso deste, é na determinação de capacidade calorífica para estabelecer o comportamento de um fluido em diversas situações. Em razão disso, este trabalho tem objetivo de usar o método da bissecção para encontrar a raiz de uma determinada função de capacidade calorífica em função da temperatura. 4 2 Desenvolvimento Para o desenvolvimento do trabalho, foram necessários estudos sobre o método da bissecção, da capacidade calorífica e desenvolvimento do algoritmo, utilizando o Scilab. Com isto, nos itens 2.1; 2.2 e 2.3 serão abordados sobre estes assuntos. 2.1 Método da bissecção Comumente encontram-se problemas na Ciência e na Engenharia onde há a necessidade de se determinar a raiz de uma equação polinomial, chamada de zero de função, ou seja, para determinada f(x), pretende-se encontrar um número ɛ em que f(ɛ)=0. Assim, equações polinomiais, de grau igual ou superior a dois, podem ter suas raízes calculadas ou aproximadas por métodos numéricos. Embora a raiz não apresente exatidão em alguns casos, é possível estimar um erro máximo, por conseguinte com precisão prefixada [3]. Segundo Neide (2006) [4], se uma função contínua f(x) real assumir, em um intervalo [a,b], valores em que f(a) e f(b) possuem valores com sinais opostos de modo que f(a) * f(b) < 0, existe no intervalo pelo menos um zero de função, f(ɛ)=0, em que ɛ ∈ (a,b). Figura 1: Interpretação geométrica do método da bissecção. Fonte: Barroso et al, 1987. [3]. Um modelo matemático utilizado para a determinação de raízes é o método da bissecção, em que o intervalo [a,b] é dividido ao meio (x0=(b+a)/2) de modo que resulte em dois novos subintervalos, [a,x0] e [x0,b], a serem considerados, caso o valor médio obtido tenha f(x0)=0, então ɛ=x0; caso contrário a raiz encontra-se onde a função tem sinais opostos nos pontos extremos, ou seja, f(a) * f(x0) < 0, então ɛ ∈ (a,x0); se não f(x0) * f(b) < 0, então ɛ ∈ (x0,b). O processo é repetido para o novo subintervalo que apresenta a raiz até se obtenha o zero com precisão fixada [5]. 5 2.2 Capacidade calorífica A capacidade térmica ou calorífica de determinado fluido, ou calor específico quando apresentados por razão de unidade de massa, tem importância termodinâmica para previsão do comportamento do fluido em determinada situação. É a grandeza física que determina a relação entre a quantidade de calor fornecida a um corpo e a variação de temperatura observada neste As propriedades cv ou cp, relacionam a variação de temperatura de um sistema com a quantidade de calor adicionado por transferência de calor (as letras subscritas representam o fator que é mantido constante durante a análise, que em cv o volume é constante e cp a pressão é constante) [6]. O calor específico tem unidade de energia por massa e temperatura, no Sistema Internacional kJ/kg.K; pode ser determinada por equações polinomiais de gruas variáveis, seus coeficientes variam para cada caso. Logo, métodos numéricos podem ser aplicados para determinação da temperatura em uma capacidade térmica específica. 2.3 Scilab O software utilizado para a programação é o Scilab 5.4.1, sendo que este é empregado na computação numérica, onde oferta um ambiente computacional para inúmeras aplicações. O Scilab foi desenvolvido em 1990 por pesquisadores franceses, e distribuído gratuitamente para ser usado tanto para estudos científicos quanto para fins educacionais [7]. É uma linguagem de programação de alto nível que possui diversos instrumentos numéricos. Pode-se desenvolver algoritmos complexos em poucas linhas de código se comparar com linguagens como C++, por exemplo. Além disso, há várias funções matemáticas já feitas, o que poupa muito trabalho na hora de programar. 6 3 Estudo de Caso Aplicação proposto por Barroso et al (1987) [1]: A capacidade calorífica cp (cal.K-1.mol-1) da água em função da temperatura T(K) é dada por: 𝐶𝑝(𝑇) = 7.219 + 2.374 × 10−3𝑇 + 2.67 × 10−7𝑇2 300 ⩽ 𝑇 ⩽ 1500 Para sabermos a que temperatura temos uma determinada capacidade calorífica c fazemos: Cp(T) − c = 0 Em vista disto, em que temperatura a água tem capacidade calorífica igual a 10 cal.K- 1 .mol-1 ? 7 4 Resultado e Discussões Como o enunciado propõe, devemos usar a relação Cp(T) – c = 0 em que c = 10 cal.K-1 .mol-1 . De modo que, obtemos a relação: Cp(T) − c = 0 Cp(T) − 10 = 0 Sabendo que Cp(T) = 7.219 + 2.374 × 10−3T + 2.67 × 10−7T2 e substituindo na equação a cima: (7.219 + 2.374 × 10−3T + 2.67 × 10−7T2) − 10 = 0 −2.781 + 2.374 × 10−3T + 2.67 × 10−7T2 = 0 Organizando os termos do maior grau ao menor obtemos: 2.67 × 10−7T2 + 2.374 × 10−3T − 2.781 = 0 Para determinação dos zeros da equação acima, utilizou-se o método descrito posteriormente, o método da bissecção. Primeiramente, há a necessidade da verificação se existem raízes no intervalo dado, portanto plotou-se o gráfico: Gráfico 1: Gráfico da função da capacidade calorífica. Fonte: Das autoras. Para tal, foi desenvolvidocódigo na plataforma Scilab 5.4.1. Descrito a baixo: 8 function [y]=f(x) y =(2.67 *10^(-7)*x^2 + 2.374*10^(-3)*x-2.781); endfunction function bissecao(a, b, precisao, interacoes) i=1; fa = f(a); fb=f(b); while(interacoes>=i) x= (a+b) /2; mprintf("\nInteração = %d, raiz = %3.6f, f(x) = %3.6f, b-a = %3.6f, a=%3.6f,b=%3.6f, fa=%3.6f, fb=%3.6f \n", i,x,f(x),(b- a)/2,a,b,fa,fb); fx=f(x); if (fx ==0.0 | (b-a)/2 < precisao) then mprintf ("\nRaiz da função é : %3.6f", x) break; end i = i +1; if(fa * fx > 0.0)then a=x; fa=fx; else b=x; end end if (i>interacoes) then mprintf("\nSolução não encontrada com a precisão exigida"); end endfunction Para execução do código, foram utilizados os valores como descritos no estudo de caso, sendo que a variável ‘a’ é a temperatura inicial de 300K, a variável ‘b’ é a temperatura máxima, que é de 1500K. O número de interações e a precisão não foram definidos pelo exercício, assim foi decidido deixar 20 interações com uma precisão de 0,01. Deste modo, o resultado gerado foi: Interações Raiz X (b-a)/2 a b F(a) F(b) 1 900.000000 -0.428130 600.0000 300.0000000 1500.000000 - + 2 1200.000000 0.452280 300.0000 900.0000000 1500.000000 - + 3 1050.000000 0.006067 150.0000 900.0000000 1200.000000 - + 4 975.000000 -0.212533 75.00000 900.0000000 1050.000000 - + 5 1012.500000 -0.103608 37.50000 975.0000000 1050.000000 - + 6 1031.250000 -0.048864 18.75000 1012.500000 1050.000000 - + 7 1040.625000 -0.021422 9.375000 1031.250000 1050.000000 - + 8 1045.312500 -0.007683 4.687500 1040.625000 1050.000000 - + 9 1047.656250 -0.000809 2.343750 1045.312500 1050.000000 - + 10 1048.828125 0.002629 1.171875 1047.656250 1050.000000 - + 11 1048.242188 0.000910 0.585938 1047.656250 1048.828125 - + 12 1047.949219 0.000050 0.292969 1047.656250 1048.242188 - + 9 Interações Raiz X (b-a)/2 a b F(a) F(b) 13 1047.802734 -0.000380 0.146484 1047.656250 1047.949219 - + 14 1047.875977 -0.000165 0.073242 1047.802734 1047.949219 - + 15 1047.912598 -0.000057 0.036621 1047.875977 1047.949219 - + 16 1047.930908 -0.000004 0.018311 1047.912598 1047.949219 - + 17 1047.940063 0.000023 0.009155 1047.930908 1047.949219 - + Tabela 1: Dados gerados a partir da função utilizando o método da bissecção. Fonte: Das autoras. Para chegar na raiz com precisão de 0,01 foram necessárias 17 interações, não 20 como foi definido inicialmente. Com isto, a raiz aproximada da função é de 1047.940063. 10 5 Conclusão O exercício proposto pedia para que temperatura a capacidade calorífica seria de 10 cal.K-1 .mol-1, usando o método da bissecção foi descoberto que a temperatura deveria ser 1047.940063K, portanto este valor é o zero da função. O método da bissecção trata-se de um método simples, mas que muitas vezes exige um número maior de interações para chegar em uma precisão maior. Ainda assim, é eficiente na resolução de equações polinomiais de graus elevados. Por fim, a equação de segundo grau poderia ser realizada por meio do método analítico, no entanto, torna-se mais fácil e com menos margem de erros usando um artifício do cálculo numérico. 11 Referências [1] LOBO, F. C. G. D. Números complexos, polinômios e equações algébricas. 2017. Dissertação (Mestrado em Matemática) Instituto de Matemática, Estatística e Computação Científica da Universidade Estadual de Campinas, São Paulo. [2] PROJETO UFRJ. Método da bissecção. 2018. Disponível em: http://www.im.ufrj.br/dmm/projeto/projetoc/precalculo/sala/conteudo/capitulos/cap114.html Acesso em: 19 de jun. de 2018. [3] BARROSO, L. C. et al., Cálculo Numérico (Com Aplicações).2ª.ed. São Paulo: Harbra, 1987. [4] FRANCO, Neide Bertoldi. Cálculo Numérico. São Paulo: Pearson, 2006. [5] ASSANO. C. H. Cálculo numérico: fundamentos e aplicações. 2009. Departamento de Matemática Aplicada – IME-USP. [6] MORAN, M. J.; SHAPIRO, H. N. Princípios de termodinâmica para engenharia. 6. ed. Rio de Janeiro: LTC, 2009. [7] BARRETO L. S. Iniciação ao Scilab. 2008. Instituto Superior de Agronomia de Lisboa, Portugal. Disponível em: <http://www.inf.ufpr.br/kunzle/disciplinas/ci202/Inicia%C3%A7%C3%A3o%20ao%20Scilab %20-%20Lu%C3%ADs%20Soares%20Barreto.pdf>. Acesso em: 19 de jun. de 2018.
Compartilhar