Documentaciónnewton_raphson(expr, x0, tol, max_iter)
Nombre
newton_raphson - Aproxima una raiz de f(x)=0 con el metodo de Newton-Raphson.
Sinopsis
x = numericos.newton_raphson(expr, x0, tol, max_iter)
Descripcion
Aplica iteraciones sucesivas de Newton-Raphson para acercarse a una raiz de la expresion dada.
Formula principal:
Es util cuando se dispone de una buena aproximacion inicial y la funcion es suficientemente suave cerca de la raiz.
Validaciones y casos borde
- Valida que
tolsea mayor que cero. - Valida que
max_itersea entero y mayor que cero. - Si la aproximacion actual ya cumple
ABS(f(x)) < tol, la retorna sin calcular una derivada innecesaria. - Si la derivada numerica es casi nula, emite
ERROR(). - Si no converge dentro de
max_iter, retorna la ultima aproximacion calculada.
Comportamiento
- Evalua
f(x)conRESOLVER(). - Aproxima la derivada con
numericos.derivada_central(). - Detiene el proceso cuando
ABS(f(x)) < tolo se alcanzamax_iter. - Si la derivada se hace casi nula, emite
ERROR()para evitar una division inestable.
Funciones API relacionadas
numericos.biseccion()numericos.falsa_posicion()numericos.secante()
Parámetros
| Parámetro | Tipo | Descripción |
|---|---|---|
| expr | STRING | Expresion matematica en texto evaluada por RESOLVER(). |
| x0 | NUMERICO | Posicion inicial en x; en formulas se representa como . |
| tol | NUMERICO | Tolerancia numerica usada como criterio de parada. |
| max_iter | NUMERICO | Cantidad maxima de iteraciones permitidas. |
Valor de retorno
NUMERICO - Raiz aproximada de la ecuacion.
Ejemplo
ejemplo.blox
INCLUIR "vectores.api"
INCLUIR "graficos.api"
INCLUIR "numericos.api"
FUNCION PRINCIPAL
INICIO "Ejemplo Newton-Raphson con RESOLVER()"
STRING f
NUMERICO raiz, x0
// Queremos resolver f(x) = 0
f = "x^2 - 2" // raíz verdadera: sqrt(2) ≈ 1.4142...
x0 = 1 // aproximación inicial
raiz = numericos.newton_raphson(f, x0, 0.000001, 50)
IMPRIMIR("\nRaiz aproximada: ", raiz:8)
IMPRIMIR("\n")
// Ver la función y la raíz en un gráfico
graficos.graficar_funcion(f, 1, 3, 100,
f,
"PROG900 - API - NUMERICOS - 1.1 Newton-Raphson.png")
FINAL
Restringido: este ejemplo no puede ejecutarse en el Playground web porque la API requerida no está disponible en el sandbox.