Metodos numericos
Enviado por Virihuana • 3 de Octubre de 2015 • Tarea • 604 Palabras (3 Páginas) • 140 Visitas
Nombre: Angeles Pérez G. Viridiana
Métodos Numéricos
Profesor: Juan Carlos Aguilar
Para poder comprobar los resultados de mis cálculos utilicé la graficadora para detectar las raíces de la función y posteriormente poner los puntos iniciales (xo) en el programa...
Utilicé los puntos xo=0, xo=1.2 y xo=6.
[pic 1][pic 2][pic 3]
CÓDIGO
f=input('ingresa la funcion:'); %para meter la función principal
g=input('ingresa la derivada:' ); %para meter la derivada ya que el “symbolic” no se ejecuta en mi linux
x0=input ('ingresa el valor de x0:'); %para ingresar el valor inicial
n=input('ingresa el numero de iteraciones maximo a realizar:'); %para que solo llegue a ciertas iteraciones
e=input('ingresa el error:'); %para saber hasta donde parará el programa para encontrar una solución
fprintf('\n'); %imprimo un salto de línea para que no se vea amontonado jaja
f=inline(f); %convierte texto la funcion para poder evaluar
g=inline(g); %convierte texto la funcion ya derivada para poder evaluar
xnueva=x0; %al comienzo xnueva será el valor con el que quiero empezar a calcular
iter=0; %las iteraciones por default empezaran en 0
ea=1; %el error absoluto lo utilizo para que el usuario no meta valores más grandes de e y para que el programa pare cuando el error vaya aumentando, eso quiere decir que no me acerco a la raiz
xanterior=x0; %al comienzo también xanterior será con el valor con el que empiezo a calcular
diverge=0; %bandera
fprintf('\n'); %otro salto de línea
fprintf('i \t xi \t \t f(xi) \t\t fp(xi) \t\t ea\n') %escribe el encabezado
fprintf('\n'); %otro salto de línea
while(ea>e & iter
xnueva=xanterior-(f(xanterior)/g(xanterior)); %xnueva(xi+1) será igual a xanterior(xi) menos la función f evaluada en la xanterior(xi) entre la función derivada evaluada en la xanterior(xi)
iter=iter+1; %aquí las iteraciones se incrementan
if (xnueva-=0) %si la xnueva(xi+1) es diferente de 0
ea=abs((xnueva-xanterior)/xnueva); %el error es igual el valor absoluto (abs) %el error absoluto va ser igual a la xnueva(xi+1) menos la xanterior(xi) entre la xnueva(xi+1)
...