Python - Obtengo Resultados inf y nan en mis iteraciones

 
Vista:
sin imagen de perfil
Val: 22
Ha disminuido su posición en 2 puestos en Python (en relación al último mes)
Gráfica de Python

Obtengo Resultados inf y nan en mis iteraciones

Publicado por Laura (9 intervenciones) el 13/03/2021 18:53:25
Hola a todos estoy desarrollando un ejercicio en el cual debo utilizar el metodo de la Regula Falsi,pero al momento de obtener las iteracciones correspondientes en los resultados me salen valores inf y nan que podra ser lo que sucede,alguien podria orientarme por favor.

Aqui el codigo
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
from numpy import exp as e
 
Ri = 9
Rr = 10
i = 0
Er = 0
x = 1
 
def F(n):
    return 745*(1-e(-x/10))-49*x
 
#Funcion para calcular el error relativo
def error (Rra,Rrn):
    Erel = abs((Rrn - Rra) / Rrn) * 100
    return Erel
 
 
print ('{:^15}{:^15}{:^15}{:^15}{:^15}{:^25}'.format('# iter','Ri','Rs','Rr','F(Rr)','Erel(%)'))
 
while (i < 10):
    Er = error(Rra,Rr)
    Rra = Rr #Rra sera el Rr anterior para determinar el error relativo
    if F(Ri) * F(Rr) < 0:
        Rs = Rr
    elif F(Ri) * F(Rr) > 0:
        Ri = Rr
    elif F(Rr) == 0:
        print('La raiz es',Rr)
 
    Rr = (F(Rs)*Ri -F(Ri)*Rs)/(F(Rs) - F(Ri))
 
    i = i + 1
 
     #Condicional para el primer error relativo
 
    if i == 1:
             print ('{:^15}{:^15.10f}{:^15.10f}{:^15.10f}{:^15.10f}'.format(i-1,Ri,Rs,Rr,F(Rr)))
    elif i > 1:
             print ('{:^15}{:^15.10f}{:^15.10f}{:^15.10f}{:^15.10f}{:^25.10f}'.format(i-1,Ri,Rs,Rr,F(Rr),Er))

Los resultados que obtengo

1
2
3
4
5
6
7
8
9
10
11
12
# iter           Ri             Rs             Rr            F(Rr)              Erel(%)
       0        10.0000000000  10.0000000000       nan       21.8961235632
       1             nan       10.0000000000       nan       21.8961235632            nan
       2             nan       10.0000000000       nan       21.8961235632            nan
       3             nan       10.0000000000       nan       21.8961235632            nan
       4             nan       10.0000000000       nan       21.8961235632            nan
       5             nan       10.0000000000       nan       21.8961235632            nan
       6             nan       10.0000000000       nan       21.8961235632            nan
       7             nan       10.0000000000       nan       21.8961235632            nan
       8             nan       10.0000000000       nan       21.8961235632            nan
       9             nan       10.0000000000       nan       21.8961235632            nan
/usr/local/lib/python3.7/dist-packages/ipykernel_launcher.py:30: RuntimeWarning: invalid value encountered in double_scalars
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 2.808
Oro
Ha mantenido su posición en Python (en relación al último mes)
Gráfica de Python

Obtengo Resultados inf y nan en mis iteraciones

Publicado por tincopasan (1082 intervenciones) el 14/03/2021 00:15:35
¿realmente querés que adivinemos donde puede estar el error, cuando las funciones en si no andan porque no hay forma de saber como como le pasas los argumentos?
Espero que alguien pueda hacerlo en base a ese solo código.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar