340 likes | 466 Views
Aplicações de Métodos Matemáticos. Prof. Nestor Roqueiro Laboratório de Controle de Processos EQA - UFSC e-mail: nestor@enq.ufsc.br. O Problema.
E N D
Aplicações de Métodos Matemáticos Prof. Nestor Roqueiro Laboratório de Controle de Processos EQA - UFSC e-mail: nestor@enq.ufsc.br
O Problema • Os modelos matemáticos que representam processos ou equipamentos são sistemas de equações algébricas, diferenciais e integrais que, em geral, não tem solução analítica. • Para obter soluções, portanto, devem ser utilizados métodos numéricos. • Para solução numérica de problemas de medio e grande porte é necessário o auxilio de computadores. • E para que os computadores funcionem são necessários programas.
A Solução • Comprar o software que resolva a classe de problemas que deseja tratar • Desenvolver seus proprios programas • Contratar alguem que desenvolva os programas • Fazer combinações das três propostas acima
A Melhor Solução • A melhor solução depende da verba disponível mas, em geral, o conhecimento de uma linguagem de programação de alto nível e programas que auxiliem na resolução de problemas numéricos costumam ser a solução mais eficiente, e mais barata.
Os Problemas Matemáticos • Os problmas matemáticos que sugem na modelagem de processos e equipamentos são: • Solução de sistemas de equaçoes algébricas • Solução de sistemas de equações diferencias ordinárias • Solução de sistemas de equações diferenciais parciais • Ajuste de curvas e interpolação • Otimização
A Aula de Hoje • Nesta aula abordademos: • Solução de sistema de equações algébricas (raízes) • Solução numérica de EDO com condições iniciais • Solução numérica de EDO com condições de contorno • Solução numérica de EDP • Interpolação
Software • Usaremos o Matlab que combina uma linguagem de programação de alto nível com bibliotecas de programas de diversas áreas do conhecimento. Esta característica facilita a implementação de soluções numéricas.
Objetivo da Aula • Resolver numericamente problemas matemáticos provenientes da modelagem de processos ou equipamentos.
Reator Continuo em Estado Estacionario O modelo é: os programas usados para resolver são: ‘reator’ e ‘cstr’
Simulação de um tanque de nivel O tanque de nivel está representado pela equação: os programas usados para resolver são: ‘edo’, ‘nivel’ e ‘tanque’.
Pellet de Catalisador O pellet está representado pela equação: os programas para solução numérica são ‘pell’ e ‘pellet’
Matemática simbólica Em uma calculadora a linha de comando y=sin(x) dará erro se não for atribuído previamente um valor a x
Em cálculo simbólico é possível operar expressões como sin(x) sem atribuir valores numéricos às variáveis. Ex: Cálculo da derivada de sin(x) >>f='sin(x)' >>diff(f) >> cos(x)
Outros exemplos Determinante de uma matriz simbólica M=sym('[a,b;c,d]'); determ(M) Integral f=int('x^3/sqrt(1-x)','a','b')
Conversão de variáveis • Para converter uma variável simbólica em numérica usa-se numeric Ex: phi='(1+sqrt(5))/2' numeric(phi)
Substituição de variáveis • Para substituir uma variável em uma expressão simbólica usa-se subs Ex: f='a*x^2+b*x+c' subs(f,'s','x')
Derivação • Para derivação analítica utiliza-se a função diff Ex: f='a*x^3+b*x^2-x+c' diff(f,'b',2)%deriva em relação a b duas vezes
Integração • Para integração analítica utiliza-se a função int Ex: f=('sin(s+2*x)') int(f,'s','m','n')
Resolução de equações algébricas • Um sistema de equações algébricas e2='u=c+d+v-10' e1='d+(c+u)/2=v' e3='v+d=u+c/4' e4='v+u=c+8*d-1' resolve-se usando [uu,cc,dd,vv]=solve(e1,e2,e3,e4,'u,c,d,v')
Resolução de equações diferenciais • Uma equação diferencial pode ser resolvida usando a função dsolve Ex: y=dsolve('D2y-2*Dy-3*y=0','y(0)=0','y(1)=1') tentar também y=dsolve('D2y-2*Dy-3*y=0')
Formatação e simplificação Para simplificar expressões usa-se a função simple f='(1/x^3+6/x^2+12/x+8)^(1/3)' y=simple(f) e para melhorar a apresentação usa-se pretty(y)
Representação gráfica • Para representar graficamente uma expressão simbólica como: y='-5*t^2+20*t+30' ezplot(y)
Simulação de um tanque de nível O tanque de nível está representado pela equação: A solução analítica pode ser calculada como: h=dsolve('Dh=q/A-Cv*h') e a solução pode ser observada usando pretty(h)
Para representar graficamente usa-se a função ezplot, mas antes devem ser substituídos os valores de q,A,C1 e Cv h=subs(h,'2','q') h=subs(h,'5','C1') h=subs(h,'1','Cv') h=subs(h,'10','A') ezplot(h)
Problema Proposto Resolver y”-xy-y=0 Para resolver y=dsolve('D2y-x*Dy-y=0','y(0)=1','Dy(0)=2') Para representar graficamente ezplot(y)
Pellet de Catalisador O pellet está representado pela equação: E a linha de comando para resolver é: Ca=dsolve('x^2*D2y+x*Dy+x^2*y*k=0','Dy(0)=0','y(R)=Cas','x') Ca=subs(Ca,'1','Cas') Ca=subs(Ca,'1','k') Ca=subs(Ca,'1','R') plot(1/besselj(0,1)*besselj(0,[0:0.01:1]))
Soluções • caso1 y=dsolve('Dy=1+y^2','x') • caso2 y=dsolve('2*x*y*Dy-y^2+x^2=0','y(1)=1','x') ezplot('(-x^2+2*x)^(1/2)')