Upload
others
View
6
Download
0
Embed Size (px)
Citation preview
Introdução à Computação Numérica
Computação – 2º Semestre 2016/2017
Computação
Unidade curricular obrigatória (3 ECTS):
Mestrado Integrado em Engenharia Química e Bioquímica
Docência: Jorge Cruz (email: [email protected])
Aulas semanais:
1 teórica de 1.5 horas
1 prática de 2 horas (3 turnos: P1, P2 e P3)
Horário:
Teórica: 3ª Feira das 11h00 às 12h30 na Sala 1.15 do Ed.VII
P1: 3ª Feira das 9h às 11h no Lab. 112 do Ed. II.
P2: 4ª Feira das 9h às 11h no Lab. 110 do Ed. II.
P3: 4ª Feira das 12h às 14h no Lab. 110 do Ed. II.
Página: http://comp.ssdi.di.fct.unl.pt/
27 Março 2017 Introdução à Computação Numérica
Objectivos
Introdução aos princípios básicos da computação numérica que
envolve a articulação de:
conhecimentos de análise numérica
(algoritmos numéricos e suas propriedades)
conhecimentos de programação
(utilização de ambientes de computação científica)
Nas aulas teóricas são apresentados métodos numéricos para a
resolução de diferentes problemas de ciência e engenharia.
Nas aulas práticas são discutidos exemplos práticos de
aplicações em ciência e engenharia usando-se o MATLAB como
ambiente de programação e resolução de problemas.
3Introdução à Computação Numérica7 Março 2017
Programa
Introdução à Computação Numérica
Raízes de Equações não Lineares
Sistemas de Equações Lineares
Sistemas de Equações não Lineares
Optimização
Ajuste de Curvas
Integração Numérica
Equações Diferenciais Ordinárias
4Introdução à Computação Numérica7 Março 2017
Aulas Práticas Discussão de casos de estudo motivantes em diversas áreas de ciência e
engenharia: Análise Exploratória de Dados
Bungee Jumper
Efeito de Estufa
Atrito de um fluido
Circuitos Eléctricos
Propagação de Calor
Reacções Químicas
Deformação Elástica
Tratamento de Águas Residuais
Cinética Enzimática
Trabalho de uma Força
Valor Quadrático Médio
Modelo Predador-Presa
Apresentação de implementações (MATLAB) dos métodos numéricosadequados à sua resolução.
5Introdução à Computação Numérica7 Março 2017
Bibliografia
Steven C. Chapra. Applied Numerical Methods
with MATLAB for Engineers and Scientists, 3rd ed.,
McGraw-Hill Inc., 2011.
capítulos 1, 4, 5, 6, 8, 9, 12, 14, 15, 19, 20, 22 e 23.
Steven C. Chapra, Raymond P Canale. Numerical
Methods for Engineers, 6rd ed., McGraw-Hill Inc.,
2010.
capítulos 13, 14, 15 e 16.
6Introdução à Computação Numérica7 Março 2017
Software
MATLAB - The Language Of Technical Computing,
The MathWorks Inc., Natick, MA.
Ambiente de programação e resolução de problemas
utilizado na aulas práticas.
GNU Octave, John W. Eaton et al.
Software de uso livre que corresponde a um
subconjunto do MATLAB.
7Introdução à Computação Numérica7 Março 2017
Avaliação Componentes de Avaliação
Componente Laboratorial
Componente Teórico-Prática
Componente Laboratorial e Frequência Baseada num projecto de computação numérica desenvolvido em grupos de 3
alunos sob a orientação do docente. Realizado durante o tempo das aulas práticasreservado para esse efeito e complementado fora do horário das aulas
Durante as aulas práticas serão realizadas duas fichas de avaliação prática F1 e F2que deverão ser resolvidas no computador recorrendo ao projecto implementado.
A nota da componente laboratorial (CompL) é a média simples das notas dasduas fichas de avaliação prática:
CompL = (F1 + F2) / 2
Para obter frequência, é necessário que F1 >= 10 ou F2 >= 10.
Quem fez a prática em 2014/2015 ou 2015/2016, se não se inscrever em nenhumturno prático, mantém a nota da componente prática. Se se inscrever num turnoprático, a nota anterior será anulada e a nota da componente prática será a obtidaem 2016/2017
8Introdução à Computação Numérica7 Março 2017
Avaliação
Componente Teórico-Prática
A componente teórico-prática é composta por dois testes (noperíodo de aulas) ou por um exame (na Época de Recurso).
As três provas são individuais, escritas e sem consulta.
A nota da componente teórico-prática (CompTP) é a média dasnotas dos testes (T1 e T2) ou a nota do exame (Ex):
CompTP = (T1 + T2) / 2 ou CompTP = Ex
Para obter aprovação, é necessário que CompTP >= 7.5
Nota Final
A nota final (NF) dos alunos com frequência é:
NF = CompTP, se CompTP < 7.5;
NF = (CompL + CompTP) / 2, se CompTP >= 7.5
Todas as notas são arredondadas às décimas, excepto a notafinal que é arredondada às unidades.
9Introdução à Computação Numérica7 Março 2017
Modelos Matemáticos
Métodos Numéricos
10Introdução à Computação Numérica7 Março 2017
Modelos Matemáticos
Representações de sistemas reais que descrevem em
termos matemáticos as suas características relevantes.
Utilizados em todas as áreas de ciência e engenharia.
Podem ser de diversas formas:
sistemas de equações, inequações, equações diferenciais, …
Com o estudo de um modelo matemático e das suas
implicações esperamos compreender algo da realidade:
Explicar o funcionamento do sistema real modelado;
Perceber as propriedades dos seus componentes;
Prever o seu comportamento.
11Introdução à Computação Numérica7 Março 2017
Modelos Matemáticos
Alguns modelos são definidos por relações funcionais:
Variável Dependente – característica que reflete ocomportamento ou o estado do sistema
Variáveis Independentes – dimensões, como o tempo e oespaço, ao longo das quais é determinado ocomportamento do sistema
Parâmetros – constantes que caracterizam aspropriedades do modelo
Funções Externas – influências externas que actuamsobre o sistema
12Introdução à Computação Numérica
externasfunções
,parâmetros ,tesindependen
variáveisdependente
variávelf
7 Março 2017
Modelos Matemáticos
Problema: a velocidade de um bungee jumper
Segunda Lei de Newton:
a aceleração de um corpo é igual à razão entre a
força exercida sobre ele e a sua massa
A aceleração é a taxa de variação da velocidade:
acelerar um corpo é variar a sua velocidade num
período de tempo
13Introdução à Computação Numérica
m
Fa
adt
dv
7 Março 2017
Modelos Matemáticos
Problema: a velocidade de um bungee jumper
Num corpo em queda livre actuam duas forças:
A força da gravidade FD
A força da resistência do ar FR
14Introdução à Computação Numérica
RD FFF
m
F
dt
dv
7 Março 2017
Modelos Matemáticos
Problema: a velocidade de um bungee jumper
Num corpo em queda livre actuam duas forças:
A força da gravidade FD
A força da resistência do ar FR
De acordo com a 2ª lei de Newton:
em que g é a aceleração da gravidade.
15Introdução à Computação Numérica
RD FFF
m
FF
dt
dv RD
mgFD
7 Março 2017
Modelos Matemáticos
Problema: a velocidade de um bungee jumper
Num corpo em queda livre actuam duas forças:
A força da gravidade FD
A força da resistência do ar FR
A força da resistência do ar é aproximadamente
proporcional ao quadrado da velocidade do corpo:
em que cd é o coeficiente de resistência.
16Introdução à Computação Numérica
RD FFF
m
Fg
m
Fmg
dt
dv RR
2vcF dR
7 Março 2017
Modelos Matemáticos
Problema: a velocidade de um bungee jumper
Assumindo velocidade inicial nula: v(0)=0
Modelo diferencial:
e resolvendo em ordem a v obtém-se…
Modelo analítico:
17Introdução à Computação Numérica
0)0( v
m
vcg
dt
dv d
2
m
vcg
dt
dv d
2
t
m
gc
c
gmtv d
d
tanh
7 Março 2017
Modelos Matemáticos
Modelo para a velocidade de um bungee jumper:
Variável Dependente – a velocidade v
Variáveis Independentes – o tempo t
Parâmetros – a massa m e o coeficiente de
resistência cd
Funções Externas – a aceleração da gravidade g
18Introdução à Computação Numérica
t
m
gc
c
gmtv d
d
tanh
7 Março 2017
Modelos Matemáticos
Modelo para a velocidade de um bungee jumper:
Sendo g9.81 m/s2, assumindo valores para m e
cd é possível obter a velocidade v em função do
tempo t.
Por exemplo:
se a massa do bungee jumper é m=68.1 kg
e o seu coeficiente de resistência for cd =0.25 kg/m
19Introdução à Computação Numérica
t
m
gc
c
gmtv d
d
tanh
7 Março 2017
Modelos Matemáticos
Modelo para a velocidade de um bungee jumper:
Sendo g9.81 m/s2, assumindo valores para m e
cd é possível obter a velocidade v em função do
tempo t.
Por exemplo:
se a massa do bungee jumper é m=68.1 kg
e o seu coeficiente de resistência for cd =0.25 kg/m
20Introdução à Computação Numérica
tkg
mkgms
mkg
kgmstv
1.68
25.081.9tanh
25.0
1.6881.9 12
1
2
7 Março 2017
Modelos Matemáticos
Modelo para a velocidade de um bungee jumper:
Sendo g9.81 m/s2, assumindo valores para m e
cd é possível obter a velocidade v em função do
tempo t.
Por exemplo:
se a massa do bungee jumper é m=68.1 kg
e o seu coeficiente de resistência for cd =0.25 kg/m
21Introdução à Computação Numérica
1
1.68
25.081.9tanh
25.0
1.6881.9
msttv
7 Março 2017
Modelos Matemáticos
Modelo para a velocidade de um bungee jumper:
22Introdução à Computação Numérica
1
1.68
25.081.9tanh
25.0
1.6881.9
msttv
7 Março 2017
Modelos Matemáticos
Modelo para a velocidade de um bungee jumper:
Variável Dependente – a velocidade v
Variáveis Independentes – o tempo t
Parâmetros – a massa m e o coeficiente de
resistência cd
Funções Externas – a aceleração da gravidade g
Nem sempre é possível obter a solução analítica!
23Introdução à Computação Numérica
0)0( v
m
vcg
dt
dv d
2
7 Março 2017
Métodos Numéricos
Modelo para a velocidade de um bungee jumper:
A variação da velocidade
pode ser aproximada:
24Introdução à Computação Numérica
dv
dtv
tv ti1 v ti ti1 ti
0)0( v
m
vcg
dt
dv d
2
7 Março 2017
Métodos Numéricos
Modelo para a velocidade de um bungee jumper:
A variação da velocidade
pode ser aproximada:
25Introdução à Computação Numérica
dv
dtv
tv ti1 v ti ti1 ti
0)0( v
m
vcg
dt
dv d
2
7 Março 2017
Modelo para a velocidade de um bungee jumper:
Método de Euler:
iid
ii ttm
vcgtvtv
1
2
1
Métodos Numéricos
26Introdução à Computação Numérica
m
vcg
tt
tvtv d
ii
ii
2
1
1
0)0( v
m
vcg
dt
dv d
2
7 Março 2017
Resultados obtidos com o modelo analítico e
com o modelo diferencial (método de Euler):
g=9.81 m/s2; m=68.1 kg; cd =0.25 kg/m
Métodos Numéricos
27Introdução à Computação Numérica7 Março 2017
Métodos Numéricos
Usados para a obtenção de soluções numéricas quando não
podemos ou não desejamos usar métodos analíticos.
Os métodos numéricos conduzem a soluções aproximadas
de um modelo matemático.
O conhecimento dos métodos numéricos permite:
Perceber quais os métodos adequados ao modelo matemático
Escolher parametrizações dos métodos de acordo com as exigências
dos problemas que se pretende resolver
Prever a qualidade das aproximações obtidas por computação numérica
28Introdução à Computação Numérica7 Março 2017
Métodos Numéricos
Raízes de Equações não Lineares
Exemplo: Método da Bissecção
29Introdução à Computação Numérica
x2
21 cos x x 2 x 10 x 1.1 x 0.8 x 0.6
iteration step 1
7 Março 2017
Métodos Numéricos
Raízes de Equações não Lineares
Exemplo: Método da Bissecção
30Introdução à Computação Numérica
x2
21 cos x x 2 x 10 x 1.1 x 0.8 x 0.6
iteration step 2
7 Março 2017
Métodos Numéricos
Raízes de Equações não Lineares
Exemplo: Método da Bissecção
31Introdução à Computação Numérica
x2
21 cos x x 2 x 10 x 1.1 x 0.8 x 0.6
iteration step 3
7 Março 2017
a1 4
b1 2
c1 3
d1 3
row 1 row 2 row 3
examples
augmented matrix
normal vectors
row reduce
range
elementary row operations
click to multiply
factor 2
row 1 2 3
multiply
row
swap add multiple
of row
4 x 2 y 3 z 3
x 2 y 3 z 3
x 2 y z 3
Solution:
x 0, y 3, z 3
Métodos Numéricos
Sistemas de Equações Lineares
Exemplo: Método de Eliminação de Gauss
32Introdução à Computação Numérica7 Março 2017
Métodos Numéricos
33Introdução à Computação Numérica
a1 1
b11
2
c13
4
d13
4
row 1 row 2 row 3
examples
augmented matrix
normal vectors
row reduce
range
elementary row operations
click to multiply
factor1
2
row 1 2 3
multiply
row
swap add multiple
of row
xy
2
3 z
4
3
4
y3 z
2
3
2
z 3
Solution:
x 0, y 3, z 3
Sistemas de Equações Lineares
Exemplo: Método de Eliminação de Gauss
7 Março 2017
a1 1
b1 0
c1 0
d1 0
row 1 row 2 row 3
examples
augmented matrix
normal vectors
row reduce
range
elementary row operations
click to add multiple of row
of row 1 2 3
to row 1 2 3
factor1
2
multiply
row
swap add multiple
of row
x 0
y 3
z 3
Solution:
x 0, y 3, z 3
Métodos Numéricos
34Introdução à Computação Numérica
Sistemas de Equações Lineares
Exemplo: Método de Eliminação de Gauss
7 Março 2017
Métodos Numéricos
35Introdução à Computação Numérica
Sistemas de Equações não Lineares
Exemplo: Método de Newton-Raphson
7 Março 2017
Métodos Numéricos
36Introdução à Computação Numérica
Sistemas de Equações não Lineares
Exemplo: Método de Newton-Raphson
7 Março 2017
Métodos Numéricos
37Introdução à Computação Numérica
Sistemas de Equações não Lineares
Exemplo: Método de Newton-Raphson
7 Março 2017
Métodos Numéricos
Optimização
Exemplo: Programação Linear
38Introdução à Computação Numérica
solution at corner B C D E F B & C C & D D & E E & F F & A
objective function value 14.
equations
7 Março 2017
Métodos Numéricos
Optimização
Exemplo: Programação Linear
39Introdução à Computação Numérica
solution at corner B C D E F B & C C & D D & E E & F F & A
objective function value 2.
equations
7 Março 2017
Métodos Numéricos
Optimização
Exemplo: Programação Linear
40Introdução à Computação Numérica
solution at corner B C D E F B & C C & D D & E E & F F & A
objective function value 12.75
equations
7 Março 2017
Métodos Numéricos
Ajuste de Curvas
Exemplo: Método dos Mínimos Quadrados
41Introdução à Computação Numérica
polynomial degree 1
0.0 0.2 0.4 0.6 0.8 1.02
1
0
1
2
0.611549 x 0.174908
7 Março 2017
Métodos Numéricos
Ajuste de Curvas
Exemplo: Método dos Mínimos Quadrados
42Introdução à Computação Numérica
polynomial degree 3
0.0 0.2 0.4 0.6 0.8 1.02
1
0
1
2
12.1637 x3
20.2397 x2
8.9847 x 1.22189
7 Março 2017
Métodos Numéricos
Ajuste de Curvas
Exemplo: Método dos Mínimos Quadrados
43Introdução à Computação Numérica
polynomial degree 5
0.0 0.2 0.4 0.6 0.8 1.02
1
0
1
2
42.9881 x5
64.085 x4
15.5848 x3
63.05 x2
28.5173 x 3.27843
7 Março 2017
Métodos Numéricos
44Introdução à Computação Numérica
function sin x
magnifying tool
subintervals 2
method left sum right sum midpoint trapezoid Simpson
0
2sin x dx
approximate area 1.29612 exact area 1.41615
error 1.2 10 1
Integração Numérica
Exemplo: Regra do Trapézio
7 Março 2017
Métodos Numéricos
45Introdução à Computação Numérica
function sin x
magnifying tool
subintervals 4
method left sum right sum midpoint trapezoid Simpson
0
2sin x dx
approximate area 1.38652 exact area 1.41615
error 2.96 10 2
Integração Numérica
Exemplo: Regra do Trapézio
7 Março 2017
Métodos Numéricos
46Introdução à Computação Numérica
function sin x
magnifying tool
subintervals 8
method left sum right sum midpoint trapezoid Simpson
0
2sin x dx
approximate area 1.40876 exact area 1.41615
error 7.38 10 3
Integração Numérica
Exemplo: Regra do Trapézio
7 Março 2017
Métodos Numéricos
Equações Diferenciais Ordinárias
Exemplo: Modelo Predador-Presa
47Introdução à Computação Numérica
parameters
a 0.5
0.3
c 0.8
0.3
end time tmax 40
0 10 20 30 40
2
4
6
8
10
rabbits x
0 10 20 30 40
2
4
6
8
10
foxes y
0 1 2 3 4 5 6 7
0
1
2
3
4
5
rabbits x
foxe
sy
7 Março 2017
Métodos Numéricos
Equações Diferenciais Ordinárias
Exemplo: Modelo Predador-Presa
48Introdução à Computação Numérica
parameters
a 0.5
0.3
c 0.8
0.3
end time tmax 40
0 10 20 30 40
2
4
6
8
10
rabbits x
0 10 20 30 40
2
4
6
8
10
foxes y
0 1 2 3 4 5 6 7
0
1
2
3
4
5
rabbits x
foxe
sy
7 Março 2017
Métodos Numéricos
Equações Diferenciais Ordinárias
Exemplo: Modelo Predador-Presa
49Introdução à Computação Numérica
parameters
a 0.5
1.
c 0.8
0.2
end time tmax 40
0 10 20 30 40
2
4
6
8
10
rabbits x
0 10 20 30 40
2
4
6
8
10
foxes y
0 1 2 3 4 5 6 7
0
1
2
3
4
5
rabbits x
foxe
sy
7 Março 2017