Resolução de "equações impossíveis"...

Fórum sobre técnicas matemáticas úteis na preparação olímpica

Mensagempor jap em Segunda Dez 04, 2006 1:32 am

E para breve...

O mais louco e cool 8) dos métodos para resolver equações impossíveis! :shock:

Stay tuned :wink:
José António Paixão
Departamento de Física da FCTUC
Avatar do utilizador
jap
Site Admin
Site Admin
 
Mensagens: 6790
Registado: Quinta Nov 09, 2006 9:34 pm
Localização: Univ. de Coimbra

Mensagempor pmp em Segunda Dez 04, 2006 1:58 pm

Experimentei o método do Newton, fiquei surpreendido. :D

Como 60% da volume da bola está submerso, diria que ficava o raio submerso, mais meio centímetro, isto é, a profundidade seria 6 cm ou 0.06 m. Aplicando o método do Newton, o valor extraído é 0.062366666....~ m, que já me parece óptimo. :D
Avatar do utilizador
pmp
down-Quark!
down-Quark!
 
Mensagens: 232
Registado: Segunda Nov 13, 2006 3:35 pm
Localização: Ponta Delgada/ Porto

Mensagempor jap em Segunda Dez 04, 2006 10:18 pm

E aqui vai o método mais louco e cool de resolver "equações impossíveis". :shock:
Este método designa-se IPF (Iterador de Ponto Fixo), mas também é conhecido cá entre nós, por Isto Pode ser que Funcione! :lol:
Na realidade, como vão ver, funciona muitas vezes...

Bom, vamos ao que interessa.

Seja f(x)=0 a equação que pretendemos resolver. Para aplicar este método temos de reescrever a equação na forma x = g(x), o que normalmente não é muito difícil...

Agora o método IPF é mesmo muito simples. Precisamos de um valor x_0 próximo da raíz da equação, que teremos de adivinhar. A partir desse valor aproximado, calcula-se a sequencia de valores
x_{n+1} = g(x_n), ou seja
x_1 = g(x_0)
x_2 = g(x_1)
etc...

Se a série x_nconvergir para um número, esse número é, obviamente, solução da equação f(x)=0!

Exemplifico, para verem como é estupidamente simples.

Suponhamos que pretendemos resolver a equação \cos(x)-x=0, que pode ser reescrita na forma x =\ cos(x). Seja x_0 = 1(radiano) como hipótese de partida. Aplicando a regra acima obtemos

\cos(1) = 0.540302305868
\cos(0.540302305868) =0.857553215846
e por aí fora, obtemos sucessivamente para x_n
0.654289790498
0.793480358743
0.701368773623
0.763959682901
0.722102425027
0.750417761764
0.731404042423
0.744237354901
0.735604740436
0.74142508661
0.737506890513
0.740147335568
0.738369204122
0.739567202212
0.738760319874
0.739303892397
0.73893775671
0.739184399771
0.739018262427
0.73913017653
0.739054790747
0.739105571927
0.739071365299
0.739094407379
0.739078885995
0.739089341403
0.739082298522
0.739087042695
0.739083846965
0.739085999648
0.739084549575
0.739085526362
0.739084868387
0.739085311607
0.739085013048
0.739085214161
0.739085078689
0.739085169945
0.739085108474
0.739085149881
0.739085121989
0.739085140777
0.739085128121
0.739085136647
0.739085130904
0.739085134772
0.739085132166
0.739085133922
0.739085132739
0.739085133536
0.739085132999
0.739085133361
0.739085133117
0.739085133281
0.739085133171
0.739085133245
0.739085133195
0.739085133229
0.739085133206
0.739085133221
0.739085133211
0.739085133218
0.739085133213
0.739085133216
0.739085133214
0.739085133216
0.739085133215
0.739085133215
0.739085133215
0.739085133215
0.739085133215
0.739085133215
0.739085133215

Bom encontrámos a solução! Reparem que é muito fácil de aplicar este algoritmo numa calculadora. É só calcular \cos(1)e \cos do que dá e \cos do que dá e \cos do que dá, ou seja, é só carregar furiosamente na tecla coseno para obter o resultado! Ora experimentem lá... :D


Para outras funções, basta programar na caluladora a funçãog(x) (é preciso transformar previamente f(x)=0 em x = g(x)) e ir calculando, sucessivamente, valores de g(x) a partir de um valor inicial que teremos de "adivinhar" próximo da solução. A convergência para a solução pode ser rápida, lenta, ou não convergir de todo (daí o nome :wink:).
Mas digam lá que não é cool...

Ora experimentem aplicar este método para encontrar a solução do problema da boia...

:wink:
José António Paixão
Departamento de Física da FCTUC
Avatar do utilizador
jap
Site Admin
Site Admin
 
Mensagens: 6790
Registado: Quinta Nov 09, 2006 9:34 pm
Localização: Univ. de Coimbra

Mensagempor jmgb em Quarta Dez 06, 2006 1:34 am

E não é que toda a gente se adiantou, e já não há nada para escrever? :shock:

Abraço, boa noite...
João Gama
(IPhO 2006 - Singapura)
Avatar do utilizador
jmgb
down-Quark!
down-Quark!
 
Mensagens: 267
Registado: Sexta Nov 10, 2006 1:10 am
Localização: Lisboa (IST) Braga (Casa)

Mensagempor jap em Quinta Dez 07, 2006 10:54 pm

Alguém experimentou o método IPF? :roll:
José António Paixão
Departamento de Física da FCTUC
Avatar do utilizador
jap
Site Admin
Site Admin
 
Mensagens: 6790
Registado: Quinta Nov 09, 2006 9:34 pm
Localização: Univ. de Coimbra

Mensagempor kelker em Sexta Maio 11, 2007 12:09 pm

jap Escreveu:Alguém experimentou o método IPF? :roll:


Bem, eu só vi agora este tópico.

Por acaso se o fosse resolver sozinho, usaria o Método de Newton imediatamente, visto ser o único que me lembraria...


Quanto ao método IPF... Muito bom... Eu experimentei no matlab, fiz o seguinte programa:
function y= ipf(x)
y= (0.165*x^2-3.993*10^-4)^(1/3)

Depois corri-o com x=1... A partir da iteração número 30 já tinha um bom resultado! :)
Avatar do utilizador
kelker
down-Quark!
down-Quark!
 
Mensagens: 148
Registado: Terça Mar 13, 2007 10:56 pm
Localização: Aveiro & Leiria

Mensagempor jap em Sábado Maio 12, 2007 12:07 am

kelker Escreveu:
jap Escreveu:Alguém experimentou o método IPF? :roll:


Bem, eu só vi agora este tópico.

Por acaso se o fosse resolver sozinho, usaria o Método de Newton imediatamente, visto ser o único que me lembraria...


Quanto ao método IPF... Muito bom... Eu experimentei no matlab, fiz o seguinte programa:
function y= ipf(x)
y= (0.165*x^2-3.993*10^-4)^(1/3)

Depois corri-o com x=1... A partir da iteração número 30 já tinha um bom resultado! :)


Pois o IPF (quando funciona!) é impressionante pela simplicidade! :D
José António Paixão
Departamento de Física da FCTUC
Avatar do utilizador
jap
Site Admin
Site Admin
 
Mensagens: 6790
Registado: Quinta Nov 09, 2006 9:34 pm
Localização: Univ. de Coimbra

Mensagempor hexphreak em Terça Nov 27, 2007 5:51 pm

Queria só deixar aqui um exemplo mais simples do método de Newton, que não sei se é um clássico, mas vem no livro Elementary Numerical Analysis (Conte & de Boor): encontrar a raiz quadrada de um número real positivo.

Encontrar este valor é equivalente a resolver a equação f(x) &=& x^2 - N &=& 0. Assim, f'(x) &=& 2x, e a função iterativa é:

g(x) &=& x - \frac{x^2 - N}{2x} &=& \frac{1}{2}(x + \frac{N}{x})

Por exemplo, para N &=& 2 e x_0 &=& 2, temos a seguinte sequência:

x_0 &=& 2\\
\indent x_1 &=& 1.5\\
\indent x_2 &=& 1.41666666...\\
\indent x_3 &=& 1.41421568...\\
\indent x_4 &=& 1.41421356...

Que converge muito rapidamente: em apenas quatro iterações já temos uma precisão de 8 casas decimais! :shock:
Avatar do utilizador
hexphreak
top-Quark!
top-Quark!
 
Mensagens: 1959
Registado: Segunda Nov 05, 2007 8:52 pm
Localização: Maia/Porto

Anterior

Voltar para Técnicas matemáticas

Quem está ligado

Utilizadores a navegar neste fórum: Nenhum utilizador registado e 0 visitantes

cron