14 feb. 2013

Encontrar la raíz de una función con fsolve

Este artículo explica como calcular la raíz de una función utilizando la función fsolve.

El artículo se basa en un artículo en Inglés "How to find the rooots of a function with fsolve".

La función fsolve retorna la raíces de una ecuación no lineal definida por f(x) = 0.
Para este caso se calculará la raíz de la función f(x) = x^3.

A continuación se muestra el código:


#Import fsolve para calcular la raiz de la funcion x^3

from scipy.optimize import fsolve

#Importar pylab

import pylab

#importar numpy

import numpy



#se calcula la potencia 3 de x con la funcion lambda

potencia3 = lambda x : x**3



#Se calcula la raiz de x^3 iniciando con x = 10

resultado = fsolve(potencia3,10) # starting from x = 10

print resultado



#Se define 400 valores de x entre -4 a 4

x = numpy.linspace(-4,4,400)

#Se genera la grafica, pasando el valor de x

#la potencia 3era de x, el valor de resultado, la potencia 3era de resultado

pylab.plot(x,potencia3(x),resultado,potencia3(resultado),'ro')

#Se define el grid

pylab.grid(b=1)

#Se muestra la grafica

pylab.show()

La gráfica muestra el punto donde se encuentra la raíz de la función:




 .
Publicar un comentario en la entrada

AddThis