Foto de Daniela I.
Daniela há 4 anos
Enviada pelo
Site

Cálculo numérico - método de newton

Gostaria de saber se alguém pode me ajudar com o código em Python para resolução de sistemas não lineares pelo Método de Newton com ciritério de parada de erro < 0.01. Estou fazendo meu programa porém ele não está rodando e não encontro o erro, alguém poderia ajudar?

Cálculo Cálculo Numérico
1 resposta
Professor Jefferson G.
Identidade verificada
  • CPF verificado
  • E-mail verificado
Respondeu há 4 anos
Contatar Jefferson

Olá, aqui está um código exemplo do método de Newton-Raphson para a função f(x) = x^2 + x - 3:

#!/usr/bin/env python
# -*- coding: utf-8 -*-

# Definição da função analisada
def f(x):
    return x**2 + x - 3.0

# Definição da primeira derivada da função f(x)
def derivada1_f(x):
    return 2.0*x + 1.0

# Definição da segunda derivada da função f(x)
def derivada2_f(x):
    return 2.0

# Método de Newton-Raphson
def newton_raphson(x0, error):
    if f(x0) * derivada2_f(x0) <= 0:
        print("Condição de convergência não satisfeita: f(x0)*f''(x0) <= 0")
        return None
    while True:
        x1 = x0 - f(x0)/derivada1_f(x0)
        print("x = {:1.14e}, error = {:1.14e}".format(x1, abs(x1 - x0)))
        if abs(x1 - x0) <= error:
            break
        x0 = x1
    return x1

if __name__ == "__main__":
    newton_raphson(10.0, 1e-3)

Um professor já respondeu

Envie você também uma dúvida grátis
Ver resposta
Tutoria com IA
Converse com a Minerva IA e aprenda, tire dúvidas e resolva exercícios
Minerva IA
do Profes
Respostas na hora
100% no WhatsApp
Envie suas dúvidas pelo App. Baixe agora
Prefere professores para aulas particulares ou resolução de atividades?
Aulas particulares
Encontre um professor para combinar e agendar aulas particulares Buscar professor
Tarefas
Envie sua atividade, anexe os arquivos e receba ofertas dos professores Enviar tarefa