tarea control

9
Tarea control Guevara Sánchez Sandra Berenice, Nañez Delgadillo Antonio 2) >> %definir A >> A=[2 1 0 0;-3 2 4 0;0 -1 -1 2;0 0 1 -1]; >> %definir B >> B=[-4 2 9 2]' B = -4 2 9 2 >> det(A) ans = -15.0000 >> x=inv(A)*B x = 1.7333 -7.4667 5.5333 3.5333

Upload: antonio-nanez-delgadillo

Post on 25-Dec-2015

213 views

Category:

Documents


0 download

DESCRIPTION

control cucei

TRANSCRIPT

Page 1: Tarea Control

Tarea control Guevara Sánchez Sandra Berenice, Nañez Delgadillo Antonio

2)

>>

%definir A>> A=[2 1 0 0;-3 2 4 0;0 -1 -1 2;0 0 1 -1];>> %definir B>> B=[-4 2 9 2]'

B =

-4 2 9 2

>> det(A)

ans =

-15.0000

>> x=inv(A)*B

x =

1.7333 -7.4667 5.5333 3.5333

Page 2: Tarea Control

low=input('Elija limite inferior para visualizar la grafica: '); %se ingrea el limite inferior de la graficaup=input('Elija limite superior para visualizar la grafica: '); %se ingrea el limite superior de la graficat=linspace(low,up,10000); %se genera un vector de 10000 puntosh=subs(y,t); %se valuan todos los puntos del vector tiempo y se almacenan en hplot(t,h) %se grafica el vector h con respecto al tiempogrid on %se inicia metodo del punto fijo syms x %se establece la variable simbolica x necesaria para implementear el metodoerror=100; %se inicializa el error en 100%g=y+x; %se elabora la funcion g(x) del metodo de punto fijor=input('Ingrese el estimado de la raiz: ');while abs(error)>0.0000000001 %se establece un umbral de error del 1e-10 aux=r; %se alamacena el ultimo valor tomado por la variable de raiz, para posteriormente calcula el error aproximado r=subs(g,r); %se halla un nuevo valor en cada iteracion para la variable de raiz r evaluando la funcion g error=((r-aux)/(r))*100; %se calcula el error aproximadoendr = double(r); %convierte el contenido de 'r' en un valor decimalend

Page 3: Tarea Control

4) D] >> % Metodo de Biseccion>> xai=input('Ingrese el intervalo inferior: ');xbi=input('Ingrese el intervalo superior: ');tol=input('Ingrese el porcentaje de error: ');syms x;f=input('Ingrese la funciòn: ');i=1; f1=subs(f,x,xai);f2=subs(f,x,xbi); ea(i)=100;if f1*f2 < 0 xa(i)=xai; f1=subs(f,x,xa(i)); xb(i)=xbi; f2=subs(f,x,xb(i)); xr(i)=(xa(i)+xb(i))/2; f3=subs(f,x,xr(i)); fprintf('It. Xa Xr Xb Error aprox \n'); fprintf('%2d \t %11.7f \t %11.7f \t %11.7f \n',i,xa(i),xr(i),xb(i)); while abs(ea(i)) >= tol, if f1*f3<0 xa(i+1)=xa(i);f1=subs(f,x,xa(i+1)); xb(i+1)=xr(i);f2=subs(f,x,xb(i+1)); end if f1*f3> 0 xa(i+1)=xr(i);f1=subs(f,x,xa(i+1)); xb(i+1)=xb(i);f2=subs(f,x,xb(i+1)); end xr(i+1)=(xa(i+1)+xb(i+1))/2; f3=subs(f,x,xr(i+1));

Page 4: Tarea Control

ea(i+1)=abs((xr(i+1)-xr(i))/(xr(i+1))*100); fprintf('%2d \t %11.7f \t %11.7f \t %11.7f \t %7.3f \n',... i+1,xa(i+1),xr(i+1),xb(i+1),ea(i+1)); i=i+1; endelse fprintf('No existe una raíz en ese intervalo');endIngrese el intervalo inferior: 50Ingrese el intervalo superior: 80Ingrese el porcentaje de error: 1e-4Ingrese la funciòn: 1.716-(4.257e-6*x)-(15.04/x^.5)It. Xa Xr Xb Error aprox 1 50.0000000 65.0000000 80.0000000 2 65.0000000 72.5000000 80.0000000 10.345 3 72.5000000 76.2500000 80.0000000 4.918 4 76.2500000 78.1250000 80.0000000 2.400 5 76.2500000 77.1875000 78.1250000 1.215 6 76.2500000 76.7187500 77.1875000 0.611 7 76.7187500 76.9531250 77.1875000 0.305 8 76.7187500 76.8359375 76.9531250 0.153 9 76.8359375 76.8945313 76.9531250 0.076 10 76.8359375 76.8652344 76.8945313 0.038 11 76.8359375 76.8505859 76.8652344 0.019 12 76.8359375 76.8432617 76.8505859 0.010 13 76.8432617 76.8469238 76.8505859 0.005 14 76.8469238 76.8487549 76.8505859 0.002 15 76.8469238 76.8478394 76.8487549 0.001 16 76.8469238 76.8473816 76.8478394 0.001 17 76.8469238 76.8471527 76.8473816 0.000 18 76.8469238 76.8470383 76.8471527 0.000 19 76.8469238 76.8469810 76.8470383 0.000

E] % método de Newton Raphson>> x0=input('Ingrese el valor inicial: ');tol=input('Ingrese el porcentaje de error: ');f=input('Ingrese la función: ');i=1;fx(i)=x0; syms x;f1=subs(f,x,fx(i));z=diff(f);d=subs(z,x,fx(i));

Page 5: Tarea Control

ea(1)=100; while abs(ea(i))>=tol; fx(i+1)=fx(i)-f1/d; f1=subs(f,x,fx(i+1)); d=subs(z,x,fx(i+1)); ea(i+1)=abs((fx(i+1)-fx(i))/fx(i+1)*100); i=i+1;endfprintf('i fx(i) Error aprox (i) \n');for j=1:i; fprintf('%2d \t %11.7f \t %7.3f \n',j-1,fx(j),ea(j));endIngrese el valor inicial: 1Ingrese el porcentaje de error: 1e-6Ingrese la función: 1.716-(4.257e-6*x)-(15.04/x^.5)i fx(i) Error aprox (i) 0 1.0000000 100.000 1 2.7718101 63.922 2 7.2624097 61.833 3 17.3214022 58.073 4 35.5153487 51.228 5 58.2556465 39.035 6 73.3226795 20.549 7 76.7247561 4.434 8 76.8468171 0.159 9 76.8469630 0.000 10 76.8469630 0.000 >>

Page 6: Tarea Control
Page 7: Tarea Control

>> % definir valores T,P,R,a,bT = 173 %K

T =

173

>> P = 50 %atm

P =

50

>> R = 82.06 %cm^3-atm/mol K

R =

82.0600

Page 8: Tarea Control

>> a = 1.351 %atm-cm^6/mol^2

a =

1.3510

>> b = 38.64 %cm^3/mol K

b =

38.6400

>> V = [0 2500];>> solve ((P+a/V^2)*(V-b)==(R*T))