Matlab - grafica para interpolacion lineal

 
Vista:

grafica para interpolacion lineal

Publicado por cesc (2 intervenciones) el 19/02/2013 04:06:34
Hola, alguien sabe como puedo graficar el error en cada iteracion en funcion de las iteraciones? Tambien debo dar una grafica de cada x3 o solucion en funcion de las iteraciones...Estoy tratando y me a solo un punto. Gracias por la ayuda. Abajo esta como programe el metodo de interpolacion lineal.



function Sol=IL(x1,x2)

F=inline('x^3-71*x^2/30-61*x/30+2/5','x');

%Verificamos Bolzano

if F(x1)*F(x2)>0
display('No cumple Bolzano');
return
end

%Definimos

TolL2=10^-3;
c3=1;
TolDsv=10^-3;
Nmax=50;
eL2=1;Dsv=1;n=0;

while ((eL2>TolL2)||(Dsv>TolDsv)) && (n<Nmax)

%Definimos x3

x3=x2-(F(x2))*(x2-x1)/F(x2)-F(x1);

%Tenemos dos casos

if F(x3)*F(x2)<0
x2=x3;
end

if F(x3)*F(x1)<0
x1=x3;
end

eL2=abs((x3-c3)/x3);
c3=x3;
Dsv=F(x3);
n=n+1;

%Finalmente

Sol=x3;
end
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
Imágen de perfil de JOSE JEREMIAS CABALLERO
Val: 6.975
Oro
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

grafica para interpolacion lineal

Publicado por JOSE JEREMIAS CABALLERO (5917 intervenciones) el 19/02/2013 15:16:54
En tu código esta parte es correcto?.
1
2
3
%Definimos x3
 
 x3=x2-(F(x2))*(x2-x1)/F(x2)-F(x1);

no debería ser:
x3=x2-F(x2)(x2-x1)/(F(x2)-F(x1)),
verifica esta parte. Tampoco dices en tu código cual es el error es decir en que variable se guarda el error, y también no dices que puntos quieres graficar. Además no dices con que valores ejecutar tu código. Como ves hay varios puntos vacíos en tu pregunta y eso ocasiona que la ayuda no sea eficaz.
Recuerda que no todos los ven y leen tu pregunta conocen el tema que estas haciendo.
Trata de ser mas especifico.


Saludos.
JOSE JEREMÍAS CABALLERO
Asesorías en Matlab
programador en matlab
Servicios de programación matlab
[email protected]

http://matlabcaballero.blogspot.com


http://www.lawebdelprogramador.com/foros/Matlab/1368762-COMO__HACER_SUS_PREGUNTAS_DE_MATLAB.html
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

grafica para interpolacion lineal

Publicado por cesc (2 intervenciones) el 19/02/2013 16:21:02
Ya lo acomode. Debo graficar el error eL2 en funcion del numero de iteraciones n. Tomando con x1=-15 x2=15.

Esto es un metodo para hallar la solucion a ecuaciones no lineales para cada n el error debe ir decreciendo. Creo que se empieza definiendo un vector que me diga el numero de iteraciones y luego no se que hacer.

function Sol=IL(x1,x2)

F=inline('x^3-71*x^2/30-61*x/30+2/5','x');

%Verificamos Bolzano

if F(x1)*F(x2)>0
display('No cumple Bolzano');
return
end

%Definimos

TolL2=10^-3;
c3=1;
TolDsv=10^-3;
Nmax=50;
eL2=1;Dsv=1;n=0;

while ((eL2>TolL2)||(Dsv>TolDsv)) && (n<Nmax)

%Definimos x3

x3=x2-F(x2)*(x2-x1)/(F(x2)-F(x1));

%Tenemos dos casos

if F(x3)*F(x2)<0
x2=x3;
end

if F(x3)*F(x1)<0
x1=x3;
end

eL2=abs((x3-c3)/x3);
c3=x3;
Dsv=F(x3);
n=n+1;

%Finalmente

Sol=x3;

v(n)=n;
h(n)=eL2;
plot(n,eL2)
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
Imágen de perfil de JOSE JEREMIAS CABALLERO
Val: 6.975
Oro
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

grafica para interpolacion lineal

Publicado por JOSE JEREMIAS CABALLERO (5917 intervenciones) el 19/02/2013 16:36:28
Tienes un ejemplo concreto en donde esta resuelto este método en forma analítica es decir sin usar matlab.?.
Has resuelto este método analíticamente sin usar matlab, si no lo haz hecho, te recomendaría que primero hicieras eso, para que tengas un idea clara que es debes hacer en matlab.

Además como se llama el método, alguna dirección de la web donde expliquen el fundamento teórico del método. y que haya ejemplos resueltos?.

por lo que veo, intuyo que no tienes claro el fundamento teórico del método del que estas haciendo el programa en matlab, al parecer.

Como ves tus pregunta sigue teniendo muchos vacíos.
Es la última repregunta. Lee la dirección que pongo abajo de como deben hacer sus preguntas. Para obtengan una respuesta precisa.


Saludos.
JOSE JEREMÍAS CABALLERO
Asesorías en Matlab
programador en matlab
Servicios de programación matlab
[email protected]

http://matlabcaballero.blogspot.com

http://www.lawebdelprogramador.com/foros/Matlab/1368762-COMO__HACER_SUS_PREGUNTAS_DE_MATLAB.html
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