Olá, Comunidade!

Vocês devem ter notado que o site ficou um período fora do ar (do dia 26 até o dia 30 de maio de 2024).

Consegui recuperar tudo, e ainda fiz um UPGRADE no servidor! Agora estamos em um servidor dedicado no BRASIL!
Isso vai fazer com que o acesso fique mais rápido (espero 🙏)

Já arrumei os principais bugs que aparecem em uma atualização!
Mas, se você encontrar alguma coisa diferente, que não funciona direito, me envie uma MP avisando que eu arranjo um tempo pra arrumar!

Vamos crescer essa comunidade juntos 🥰

Grande abraço a todos,
Prof. Caju

ALGORITMOS E IMPLEMENTAÇÕESMétodo de newton

Implementação de equações dentro da computação, programação e algoritmos.

Moderador: [ Moderadores TTB ]

Avatar do usuário

Autor do Tópico
cidadantas
iniciante
Mensagens: 6
Registrado em: 08 Jun 2019, 17:48
Última visita: 10-08-19
Jun 2019 08 17:52

Método de newton

Mensagem não lida por cidadantas »

USANDO O SCILAB: Como calcular a raiz a quinta de um número S, onde o S é o único parâmetro de entrada

Editado pela última vez por cidadantas em 08 Jun 2019, 17:52, em um total de 1 vez.
Avatar do usuário

baltuilhe
2 - Nerd
Mensagens: 229
Registrado em: 05 Abr 2015, 16:39
Última visita: 02-05-24
Agradeceu: 5 vezes
Agradeceram: 95 vezes
Jun 2019 08 19:10

Re: Método de newton

Mensagem não lida por baltuilhe »

Quer ajuda com o scilab ou 'na mão'? :)

Avatar do usuário

Autor do Tópico
cidadantas
iniciante
Mensagens: 6
Registrado em: 08 Jun 2019, 17:48
Última visita: 10-08-19
Jun 2019 08 19:12

Re: Método de newton

Mensagem não lida por cidadantas »

QUero ajudo no Scilab
Editado pela última vez por cidadantas em 08 Jun 2019, 19:13, em um total de 1 vez.
Avatar do usuário

Autor do Tópico
cidadantas
iniciante
Mensagens: 6
Registrado em: 08 Jun 2019, 17:48
Última visita: 10-08-19
Jun 2019 09 04:46

Re: Método de newton

Mensagem não lida por cidadantas »

Mas poderia ser não mão também, qualquer um dos dois
Avatar do usuário

baltuilhe
2 - Nerd
Mensagens: 229
Registrado em: 05 Abr 2015, 16:39
Última visita: 02-05-24
Agradeceu: 5 vezes
Agradeceram: 95 vezes
Jun 2019 09 09:26

Re: Método de newton

Mensagem não lida por baltuilhe »

Bom dia!

Para calcular a raiz quinta de um número S podemos utilizar a seguinte função:
[tex3]f(x)=x^5-S[/tex3]

E, desta função, buscar uma raiz, que será a resposta.

O método de Newton-Raphson é um método iterativo, que consiste em utilizar um valor inicial em uma função e, a cada novo valor, substituir este na mesma função, até 'convergir' para a resposta.
A função é a seguinte:
[tex3]\varphi(x_k)=x_k-\dfrac{f(x_k)}{f(x_k)}=x_{k+1}[/tex3]

Agora, precisamos derivar a função inicial:
[tex3]f'(x)=5x^4[/tex3]

Bom, como não temos a raiz quinta de S, temos que arbitrar um número inicial para a mesma, podemos iniciar com S/5 (um quinto) do valor, como estimativa inicial.
Agora, só substituir.

Vamos testar?

Para S=32, S/5=32/5=6,4

Montando a tabela:
[tex3]\begin{array}{r|r|r|r}\hline\\x&f(x)&f'(x)&\varphi(x)\\
\hline
6,4000&10.705,4182&8.388,6080&5,1238\\
5,1238&3.499,5133&3.446,1857&4,1083\\
4,1083&1.138,3365&1.424,3562&3,3091\\
3,3091&364,7797&599,5281&2,7007\\
2,7007&111,6752&265,9962&2,2809\\
2,2809&29,7350&135,3303&2,0612\\
2,0612&5,2049&90,2507&2,0035\\
2,0035&0,2810&80,5615&2,0000\\
2,0000&0,0000&80,0000&\color{green}\boxed{2,0000}\\
\hline
\end{array}[/tex3]

Espero ter ajudado!
Avatar do usuário

Autor do Tópico
cidadantas
iniciante
Mensagens: 6
Registrado em: 08 Jun 2019, 17:48
Última visita: 10-08-19
Jun 2019 11 19:31

Re: Método de newton

Mensagem não lida por cidadantas »

Bautuilhe, boa noite!

Por que vc escolheu S/5 como aproximação inicial?
Isso se aplica para qualquer número real?
Se eu escolher um número muito próximo de 0, isso não tenderia ao infinito?
Ou como eu faria para mostrar que s/5 < S^1/5
Editado pela última vez por cidadantas em 11 Jun 2019, 19:32, em um total de 2 vezes.
Avatar do usuário

baltuilhe
2 - Nerd
Mensagens: 229
Registrado em: 05 Abr 2015, 16:39
Última visita: 02-05-24
Agradeceu: 5 vezes
Agradeceram: 95 vezes
Jun 2019 11 20:55

Re: Método de newton

Mensagem não lida por baltuilhe »

baltuilhe escreveu: 09 Jun 2019, 09:26 Bom dia!

Para calcular a raiz quinta de um número S podemos utilizar a seguinte função:
[tex3]f(x)=x^5-S[/tex3]

E, desta função, buscar uma raiz, que será a resposta.

O método de Newton-Raphson é um método iterativo, que consiste em utilizar um valor inicial em uma função e, a cada novo valor, substituir este na mesma função, até 'convergir' para a resposta.
A função é a seguinte:
[tex3]\varphi(x_k)=x_k-\dfrac{f(x_k)}{f(x_k)}=x_{k+1}[/tex3]

Agora, precisamos derivar a função inicial:
[tex3]f'(x)=5x^4[/tex3]

Bom, como não temos a raiz quinta de S, temos que arbitrar um número inicial para a mesma, podemos iniciar com S/5 (um quinto) do valor, como estimativa inicial.
Agora, só substituir.

Vamos testar?

Para S=32, S/5=32/5=6,4

Montando a tabela:
[tex3]\begin{array}{r|r|r|r}\hline\\x&f(x)&f'(x)&\varphi(x)\\
\hline
6,4000&10.705,4182&8.388,6080&5,1238\\
5,1238&3.499,5133&3.446,1857&4,1083\\
4,1083&1.138,3365&1.424,3562&3,3091\\
3,3091&364,7797&599,5281&2,7007\\
2,7007&111,6752&265,9962&2,2809\\
2,2809&29,7350&135,3303&2,0612\\
2,0612&5,2049&90,2507&2,0035\\
2,0035&0,2810&80,5615&2,0000\\
2,0000&0,0000&80,0000&\color{green}\boxed{2,0000}\\
\hline
\end{array}[/tex3]

Espero ter ajudado!
cidadantas escreveu: 11 Jun 2019, 19:31 Bautuilhe, boa noite!

Por que vc escolheu S/5 como aproximação inicial?
Isso se aplica para qualquer número real?
Se eu escolher um número muito próximo de 0, isso não tenderia ao infinito?
Ou como eu faria para mostrar que s/5 < S^1/5
Boa noite!

Pra falar bem a verdade... eu só peguei um número 'menor' do que S inicial.

Poderia ter tomado outro valor qualquer. Até o próprio 32.
Vamos simular?

Para S=32:

Montando a tabela:
[tex3]\begin{array}{r|r|r|r}\hline\\x&f(x)&f'(x)&\varphi(x)\\
\hline
32,0000&33.554.400,0000&5.242.880,0000&25,6000\\
25,6000&10.995.084,2778&2.147.483,6480&20,4800\\
20,4800&3.602.847,7019&879.609,3022&16,3840\\
16,3840&1.180.559,6207&360.287,9702&13,1073\\
13,1073&386.839,0199&147.578,4562&10,4861\\
10,4861&126.753,6131&60.454,1312&8,3894\\
8,3894&41.525,9875&24.768,1524&6,7128\\
6,7128&13.598,7120&10.152,7768&5,3734\\
5,3734&4.447,6683&4.168,3741&4,3064\\
4,3064&1.449,0572&1.719,6001&3,4637\\
3,4637&466,5415&719,6662&2,8154\\
2,8154&144,8889&314,1452&2,3542\\
2,3542&40,3131&153,5831&2,0917\\
2,0917&8,0403&95,7123&2,0077\\
2,0077&0,6208&81,2391&2,0001\\
2,0001&0,0080&80,0160&2,0000\\
2,0000&0,0000&80,0000&\color{green}\boxed{2,0000}\\
\hline
\end{array}[/tex3]

Demora um pouco mais... mas acaba convergindo :)
Avatar do usuário

Autor do Tópico
cidadantas
iniciante
Mensagens: 6
Registrado em: 08 Jun 2019, 17:48
Última visita: 10-08-19
Jun 2019 11 21:50

Re: Método de newton

Mensagem não lida por cidadantas »

como eu tô fazendo o código, eu tava tentando achar uma forma de dar o chute inicial para que ele convergisse mais rápido para qualquer S. Sei lá. Acho q estou viajando nisso... pq no algoritmo o único dado de entrada vai ser S

Editado pela última vez por cidadantas em 11 Jun 2019, 21:52, em um total de 1 vez.
Responder
  • Tópicos Semelhantes
    Respostas
    Exibições
    Última mensagem

Voltar para “ALGORITMOS E IMPLEMENTAÇÕES”