P. 1
Cuatro programas de matlab (clase 3-métodos 2)

Cuatro programas de matlab (clase 3-métodos 2)

|Views: 4|Likes:
Published by Juancho Sotillo
matlab
matlab

More info:

Published by: Juancho Sotillo on Dec 05, 2013
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as DOCX, PDF, TXT or read online from Scribd
See more
See less

10/10/2015

pdf

text

original

% Script para aplicar Newton-Raphson a mifuncion % Lectura de datos % Tengo que leer la cota de error 'cota', % el número

de iteraciones máximo 'n' % y el valor inicial 'xi' cota = input ('Cota de error objetivo: '); n = input ('Nº máximo de iteraciones: '); xi = input ('Valor inicial de la x: '); xanterior = xi; x = xanterior; eanterior = inf; e = eanterior; i = 1; % contador de iteraciones % Voy a dibujar las tangentes mientras calculo figure(1) clf hold on fplot('mifuncion(x)',[-2 2],'b'); grid % Debo realizar un procedimiento iterativo %mientras el error sea mayor que la cota % y el número de iteración sea menor que n while (e>cota) & (i<n) y = mifuncion (xanterior); yd = mifuncion_derivada (xanterior); x = xanterior - y/yd; % Para dibujar yant=mifuncion(xanterior); plot ([xanterior x],[yant 0],'r') e = abs (x - xanterior); xanterior = x; eanterior = e; i=i+1; end hold off % Comprobación de por cual de las dos % %(tres) condiciones salió

if (e<cota) disp ('Se encontró la solución'); disp ('La solución hallada es: '); x disp ('La cota de error es: '); e disp ('El número de iteraciones utilizado es: '); i disp ('Y el valor de la función en dicho punto es: '); mifuncion(x) else disp ('Se superó el número de iteraciones'); end

function y = mifuncion (x) y = x*x+0.5-exp(-x);

function y = mifuncion_derivada (x) y = 2*x+exp(-x);

[0 v(2)].% Producto escalar y vectorial de vectores clear u=input('Introduce un vector u de dimensión 3: ').'b'). return else producto(1. u'*v disp('El ángulo entre los vectores en grados es: ').[0 p(2)]. text (u(1)+. disp('La longitud de los vectores es.[0 u(3)].7)==0 disp(a(i)) m=m+1.'k').1.p(3)+. hold off grid view(3) % Hacer un programa que lea 10 numeros y determine %cuales y cuantos de ellos % son multiplos de 7 for i=1:10 a(i) = input (['Numero ' num2str(i) ' :']). plot3 ([0 p(1)].v) disp ('El producto vectorial es: '). end % Producto vectorial para vectores de 3D function producto = pvect (u. producto(2. v=input('Introduce el otro vector v: '). end disp('Múltiplos de 7: ').1.1.v) if length(u)~=3 | length(v)~=3 disp('Error en las dimensiones de los vectores').'p').v(2)+. m=0. for i=1:10 if rem(a(i). norm(u) norm(v) disp('El producto escalar es: ').u(2)+.1.'v').[0 p(3)].v) clf % Ahora dibujamos el producto vectorial hold on plot3 ([0 u(1)].1. p=pvect(u.[0 v(3)]. plot3 ([0 v(1)].'). else disp(['Son en total ' num2str(m)]). end . 180/pi*subspace(u.1)=u(1)*v(2)-u(2)*v(1).1.[0 u(2)]. respectivamente: ').p(2)+.'b').1)=u(3)*v(1)-u(1)*v(3).1.1.'u'). text (p(1)+.v(3)+. end end if m==0 disp('No hay. producto(3.u(3)+. text (v(1)+.1)=u(2)*v(3)-u(3)*v(2).1.

You're Reading a Free Preview

Download
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->