Numericos Newton Raphson

Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Está en la página 1de 7

Universidad Nacional del Callao

Facultad de Ingeniería Eléctrica y Electrónica Escuela


Profesional de Ingeniería Eléctrica

“METODO DE NEWTON RAPHSON”

CURSO: Métodos Numéricos GRUPO HORARIO: 92G

PROFESOR: Fernández, Juan Raymundo

INTEGRANTES:

Olivera Bazán Jean Carlos 1623125083

Quispe Gonzales Juan Alberto 1713100017

Rufasto Asenjo Cristhian Manuel 1623125497

Yepez Dalens Yeremi 1513120156

SEMESTRE ACADEMICO: 2020A

Callao-Perú

Julio – 2020
Índice:
Introducción:.................................................................................................................................3
Métodos de Newton-Raphson........................................................................................................4
Ejemplo……………………………………………………………………………………………………………………………….Er
ror: Reference source not found
Ejercicios por Matlab.................................................................Error: Reference source not found
Ejercicio1...............................................................................Error: Reference source not found
Ejercicio2...............................................................................Error: Reference source not found
Introducción:

Muchos de los fenómenos de la vida real son modelados matemáticamente con el fin de poder
explicarse, sin embargo, en la mayoría de los casos estos no pueden ser solucionados por medio
de algún método exacto. Para ocasiones así, existen conjuntos de pasos que permiten entregar
aproximaciones a los valores que se desean calcular. De esta manera nace el método Newton-
Rapshon, el cual mediante algoritmos, desempeña esta labor.
Debido a lo anterior, se plantea realizar un programa, con ayuda de Python 2.7, compuesto por
algoritmos iterativos que permitan calcular las aproximaciones a la raíz de un polinomio por
medio método Newton-Raphson.
En este informe se va a presentar lo esencial y básico para realizar el ya mencionado programa,
teniendo como primera parte el planteamiento del problema, el cual da a conocer de qué se trata
el método Newton-Raphson y las dificultades de este, luego de entender y analizar el problema,
se va a confeccionar un diagrama de abstracción que va a indicar los pasos que se deben seguir
para obtener la solución del problema ya planteado. Al tener listo el diagrama, se procede a
realizar un esqueleto del código, siguiendo los pasos de éste. El esqueleto se describe
brevemente la función que desempeña el programa, señalando los integrantes, la versión de
Python que se utiliza, las entradas que almacena, el procesamiento y la salida, todo esto con los
comentarios correspondientes. Las entradas indican los valores que el usuario entregue, los
cuales son el polinomio (ingresando cuantos coeficientes y exponentes de la variable “x” quiera
usuario) y el punto 𝑥𝑛, en el procesamiento se van a describir las funciones a utilizar para la
resolución del problema y por último, la salida del programa muestra el valor de la
aproximación de la raíz de la función polinómica ya ingresa por el usuario.
El objetivo principal de este informe esa aprender a confeccionar una posible solución a un
problema matemático por medio de una serie de pasos a seguir, los cuales entregan cada uno,
una indicación que va desde lo más general hasta lo más específico.
Métodos de Newton-Raphson

El programa a desarrollar consiste en la elaboración de un algoritmo que, usando el método


Newton-Raphson, encuentre un valor aproximado a la raíz de un polinomio utilizando una
función 𝑓(𝑥) y un valor “𝑎”de un rango [𝑎,𝑏].
El método Newton-Raphson consiste en encontrar la solución de la función a partir de una
estimación de su raíz utilizando la siguiente ecuación reiteradas veces.

Donde “𝑥𝑛” inicialmente es “𝑎”, luego su valor cambia por el resultado de “𝑥𝑛+1”.
La función usada para esta metodología debe cumplir ciertos requisitos los cuales representan
otros sub-problemas que se deben ahondar para el correcto funcionamiento del programa.
Además, se debe verificar cada dato que ingrese el usuario para que no genere errores en la
iteración.
Cabe mencionar que durante el desarrollo del proyecto se ha desviado el fin del programa, por
lo cual se han cambiado partes de la estructura del código que antes ya han sido expuestos en la
presentación del proyecto.
Estos cambios contemplan que no se ofrecerá un gráfico de la función porque la
implementación de este se desvía del objetivo inicial del proyecto; no se verificará que la
función dada sea continua debido a que el método Newton-Raphson solo considera polinomios,
por otra parte, se analizará que realmente la función dada lo sea; no se verificará que “𝑎”
pertenezca a 𝑓(𝑥) puesto que su dominio son todos los reales; no se comprobará que la segunda
derivada de 𝑓(𝑥) evaluada en “𝑎” tenga el mismo signo que 𝑓(𝑥) evaluada en “𝑎” debido a que
se trabajará solo con polinomios y estos siempre cumplen esta condición.
Por otra parte, se van a agregar dos funciones que verifiquen las entradas del usuario,
asegurando que el exponente ingresado sea un número natural y que el valor de “𝑎” sea un
número real.

Para finalizar se cambió el método de iteración, ya no se comparará el valor de 𝑥𝑛 con el valor


de 𝑥𝑛+1, si no que se iterará cuantas veces el usuario considere pertinente.
Requisitos del método de Newton-Raphson.
Requisitos para la función dada.
La función 𝑓(𝑥) debe ser un polinomio de grado mayor a uno, esto quiere decir que debe ser del
tipo 𝑓(𝑥)=𝑎𝑥𝑛+𝑏𝑥𝑛−1+⋯+𝑐𝑥2+𝑑𝑥+𝑒, con 𝑛∈ℵ y el coeficiente que acompaña a la variable “𝑥”
debe ser diferente de 0.

Implementación de la fórmula.:

Valor inicial de 𝑥𝑛.

Inicialmente “𝑥𝑛” vale “𝑎” y se calcula la primera aproximación de 𝑓(𝑥), esta no es exacta así
que se tiene que volver a utilizar la fórmula para que nuestra solución se acerque más a la raíz
de la función.

Valor de 𝑥𝑛 durante la iteración.


Para volver a utilizar la fórmula, se debe determinar el nuevo valor de 𝑥𝑛 que será el resultado
de 𝑥𝑛+1 cuando 𝑥𝑛 tenía el valor de 𝑎, luego se despeja la ecuación para determinar un valor
más certero de la solución de 𝑓(𝑥). Esto se debe hacer cuantas veces requiera el usuario.

ABSTRACCIÓN DE PROCESOS

El programa comienza recibiendo como entrada los números del polinomio con su respectivo
exponente uno a uno hasta que el usuario no requiera más (Coeficiente y exponente), siendo
estos verificados por sus respectivos procesos, “Verificar números ingresados” para que el dato
ingresado sea un número; y “Verificar números naturales ingresados” para que el dato ingresado
sea un natural). Estos llegan al proceso “Armar términos”, el cual los guardará en listas
(Coeficientes y variables), además, se preguntará si se desea ingresar otro término, repitiendo
los pasos en caso de que la respuesta sea afirmativa. En caso de que no se deseen ingresar más
términos, las listas de los coeficientes y las variables irán al siguiente proceso “Armar
polinomio” donde se juntarán para armar la función polinómica deseada (Polinomio).
Mediante el proceso “Derivar polinomio”, se derivará el polinomio armado anteriormente
(Polinomio derivado). Luego, usando “Evaluar polinomio” y “Evaluar polinomio derivado”, se
reemplazará el valor “𝑥𝑛” dado por el usuario en la función y en su derivada (Polinomio
evaluado, Polinomio derivado evaluado).
Una vez obtenido los valores “𝑥𝑛”, “𝑓(𝑥𝑛)” y “𝑓′(𝑥𝑛)” se procederá a iterar el proceso
“Reemplazar datos en fórmula de Newton Raphson” con un número de iteraciones ingresada
por el usuario, el cual, antes, será verificado por el proceso “Verificar números naturales
ingresados”, puesto que el número de iteraciones debe ser un número positivo entero. Cabe
mencionar que el valor “𝑥𝑛” va cambiando con cada iteración. Finalmente, el proceso entregará
como resultado por pantalla la aproximación de raíz de la función más cercana al punto original
ingresado por el usuario, completando así el funcionamiento del programa.
CONCLUSIONES

A partir de la presentación del problema, se pudo percatar de algunas dificultades que se tiene al
realizar este programa, una de ellas fue el no poder obviar la mayoría de datos, problema al cual
como solución se encontró crear una tras otra función que verifique lo ingresado por el usuario.
Gracias a la abstracción de datos, se logró facilitar la resolución del programa, ya que al separar
todo el programa en sub-procesos, se pudo observar que la mayoría de estos eran abordables por
sí solos, pero con las mismas entradas principales (punto pedido, función y número de
iteraciones, ingresados por el usuario). Así, se obtuvo de cada uno de estos, una salida diferente.
Cabe señalar que en algunos sub-procesos se ocuparon salidas de otros sub-procesos, haciendo
con esto, una implementación del método Newton-Raphson más unida y estructurada.
A pesar de que el proceso del proyecto no sea de una complejidad extremadamente elevada, aún
hay falta de algunos conocimientos claves, para facilitar la elaboración de las funciones en
Python y más aún para concretar el proyecto, que con el tiempo se irán adquiriendo gracias a
investigaciones y consultas con profesores.
Finalmente, los objetivos planteados al principio fueron cumplidos en su mayoría, ya que al no
tener resueltas algunas dudas sobre el planteamiento del problema, no se pudo concretar al
100% el programa planteado en el comienzo de este informe. Pese a esto, la focalización de
resolución para este programa va por un buen camino.

También podría gustarte