You are on page 1of 17

Graficas

Listado 2.1
>> x = 0:0.05:10;
>> y=sin(x).*exp(-0.4*x);
>> plot(x,y)
>> xlabel('x'); ylabel('y')

Listado 2.2
>> y = sin(x).*exp(-0.4*x);
>> x = (0:0.05:10)';
>> y = sin(x).*exp(-0.4*x);
>> plot(x,y)
>> xlabel('x');ylabel('y')

Listado 2.3
>> p=0: 0.05: 8*pi;
>> z=(cos(p)+i*sin(2*p)).*exp(-0.05*p)
+0.01*p;
>> plot(real(z),imag(z))
>> xlabel('Re(z)');ylabel('Im(z)')

Listado 2.4
>> x=(0:0.4:10)';
>> y=sin(x).*exp(-0.4*x);
>> plot(x,y,'+')
>> xlabel('x');ylabel('y')

Listado 2.5
>> x=(0:0.2:10);
>> y=sin(x).*exp(-0.4*x);
>> plot(x,y)
>> grid on
>> xlabel('x'), ylabel('y')

Listado 2.6
>> t=0:0.5:pi+.01;
>> y=sin(3*t).*exp(-0.3*t);
>> polar(t,y)
>> title('Grafica polar')
>> grid

Listado 2.7

>> xlabel('x');ylabel('y')
>> t=.1:.1:3;
>> x=exp(t);
>> y=exp(t.*sinh(t));
>> loglog(x,y)
>> grid
>> xlabel('x');ylabel('y')

Listado 2.8
>> t= .1:.1:3;
>> semilogy(t,exp(t.*t)');
>> grid
>> xlabel('t'); ylabel('exp(t.*t)');

Listado 2.9
>> t=.1:1:3;
>> semilogx(t,exp(t.*t)');
>> grid
>> xlabel('t'); ylabel('exp(t.*t)');

Listado 2.10
>> x=0:0.05:5;
>> y=sin(x);
>> z=cos(x);
>> plot(x,y,x,z)

Listado 2.11
>> x=0:0.05:5;
>> y(1,:)=sin(x);
>> y(2,:)=cos(x);
>> plot(x,y)

Listado 2.12
>> x=(0:0.05:5)';
>> y(:,1)=sin(x);
>> x(:,2)=cos(x);
>> plot(x,y)

Listado 2.13
>> x=0:0.05:5;
>> y=sin(x);
>> plot(x,y);
>> hold on
>> z=cos(x);
>> plot(x,z,'--')
>> xlabel('x'); ylabel('y(-), z(--)');

Listado 2.14
clear; clf; hold of
>> x=0:0.05:5;
>> y=sin(x);
>> plot(x,y)
>> hold on
>> z=cos(x)

z=
Columns 1 through 9
1.0000 0.9988
0.9394 0.9211

0.9950

0.9888

0.9801

0.9689

0.9553

0.8253

0.7961

0.7648

0.7317

0.4976

0.4536

0.4085

0.3624

0.0707

0.0208 -0.0292 -0.0791

Columns 10 through 18
0.9004 0.8776
0.6967 0.6600

0.8525

Columns 19 through 27
0.6216 0.5817
0.3153 0.2675

0.5403

Columns 28 through 36
0.2190 0.1700
-0.1288 -0.1782

0.1205

Columns 37 through 45
-0.2272 -0.2756 -0.3233 -0.3702 -0.4161 -0.4611 -0.5048
-0.5474 -0.5885
Columns 46 through 54
-0.6282 -0.6663 -0.7027 -0.7374 -0.7702 -0.8011 -0.8301
-0.8569 -0.8816
Columns 55 through 63
-0.9041 -0.9243 -0.9422 -0.9578 -0.9710 -0.9817 -0.9900
-0.9958 -0.9991
Columns 64 through 72

-1.0000 -0.9983 -0.9941 -0.9875 -0.9784 -0.9668 -0.9528


-0.9365 -0.9178
Columns 73 through 81
-0.8968 -0.8735 -0.8481 -0.8206 -0.7910 -0.7594 -0.7259
-0.6907 -0.6536
Columns 82 through 90
-0.6150 -0.5748 -0.5332 -0.4903 -0.4461 -0.4008 -0.3545
-0.3073 -0.2594
Columns 91 through 99
-0.2108 -0.1617 -0.1122 -0.0623 -0.0124
0.1372 0.1865
Columns 100 through 101
0.2354
>> hold of

0.2837

0.0376

0.0875

Listado 2.15A
>> M= [0: 0.01: 1]'; k=1.4;
>> p0_entre_p = (1 + (k-1)/2+M.^2).^(k/(k-1));
>> plot(M,p0_entre_p)
>> xlabel('M, numero de Mach')
>> ylabel('p0/p')
>> title('Relacion de presion, p(estancamiento)/p(esttica)')

Listado 2.15B
>> clear
>> %Relacion de presin vs. nmero de Mach
>> clear; clf; hold of;
>> M= [0:0.01:1]';
>> k=1.4;
>> p0_entre_p = (1 + (k-1)/2+M.^2).^(k/(k-1));
>> hold on
>> axis('square'); % hace que la grafica sea cuadrada
>> plot(M,p0_entre_p)
>> xlabel('M, numero de Mach')
>> ylabel('p0/p')
>> title('Relacin de presion, p(estancamiento)/p(estatica)')
>> text(0.45, 1.55, 'comprensible')
>> Mb=[0: 0.01: 0.7]';
>> p0_entre_pb = 1 + k/2*Mb.^2;
>> plot(Mb,p0_entre_pb, '--')
>> text(0.5, 1.1, 'Incomprensible')

Anlisis Numrico/Races de Ecuaciones


Enunciado
encuentre una aproximacin a una raz de la ecuacin cos(x) 3x = 0
Solucin
Grafica de : cos(x) y 3x
>> clear
>> x=-2:0.05:2;
>> y=cos(x);
>> z=3*x;
>>
t=zeros(size(x));
>> plot(x,y)
>> axis([-2 2 -6
6])
>> hold on
>> plot(x,z)
>> plot(x,t)
>> grid on
>> plot(x,t)
>> clear
>> x=-2:0.05:2;
>> y=cos(x);
>> z=3*x;
>> t=zeros(size(x));
>> plot(x,y)
>> axis([-2 2 -6 6])
>> hold on
>> plot(x,z)
>> plot(x,t)
>> grid on

De la grafica, el valor cercano a la raz es (/2)/4=/8

Forma a)
>> format long
>> x0=pi/8;
>> for i=1:5
x= cos(x0)-2*x0;
f=abs(cos(x0)-3*x0);
disp([x0,x,f])
x0=x;
end
0.392699081698724 0.138481369113838 0.254217712584886

0.138481369113838 0.713464030549820 0.574982661435982

0.713464030549820 -0.670828702669616 1.384292733219437

-0.670828702669616 2.124964189389722 2.795792892059338

2.124964189389722 -4.776164262675708 6.901128452065429

Forma b)
>> format long
>> x0=pi/8;
>> for i=1:5
x= cos(x0)/3;
f=abs(cos(x0)-3*x0);
disp([x0,x,f])
x0=x;
end
0.392699081698724 0.307959844170429 0.254217712584886

0.307959844170429 0.317651318230573 0.029074422180432

0.317651318230573 0.316657205338012 0.002982338677682

0.316657205338012 0.316760548013117 0.000310028025313

0. 316760548013117 0.316749819637578 0.000032185126616

Calcule una raz real de la ecuacin

x +2 x + 10 x20=0

empleando

como valor inicial x0=1


Solucin
Proceso iterativo
>> format long
>> x0=1;
>> for i=1:9
x=20/(x0^2+2*x0+10);
dist=abs(x-x0);

dg=abs(-20*(2*x+2)/(x^2+2*x+10)^2);
disp([x,dist,dg])
x0=x;
end
1.538461538461539 0.538461538461539 0.425718941295636

1.295019157088122 0.243442381373416 0.450997473075934

1.401825309448600 0.106806152360478 0.440466677944288

1.354209390404292 0.047615919044308 0.445285721129186

1.375298092487380 0.021088702083087 0.443174611254047

1.365929788170655 0.009368304316725 0.444117116666538

1.370086003401819 0.004156215231164 0.443699889746150

1.368241023612835 0.001844979788984 0.443885280917360

1.369059812007482 0.000818788394647 0.443803041176408


Usando races de polinomio en Matlab

>> pol=[1,2,10,-20]; roots(pol)

ans =

-1.684404053910685 + 3.431331350197691i
-1.684404053910685 - 3.431331350197691i
1.368808107821373 + 0.000000000000000i

Calcule una raz real de la ecuacin

x +2 x + 10 x20=0

mtodo de Newton- Raphson, con Xo=1 y = 10 -3 aplicado a

>> x=1;Eps=0.001;dist=1;
>> while dist > Eps
f=x^3+2*x^2+10*x-20;
d=3*x^2+4*x+10;
x1=x-f/d;
dist=abs(x1-x);
x=x1;
disp([x1,dist]);
end
1.411764705882353 0.411764705882353

1.369336470588235 0.042428235294118

1.368808188617532 0.000528281970703

mediante el

|x i+1x i|

Utilize el mtodo de la secante para obtener una raz del polinomio f(x)=
3

x +2 x + 10 x20=0
>> f0=x0^3+2*x0^2+10*x0-20;
>> f1=x1^3+2*x1^2+10*x1-20;
>> clear
>> format short
>> x0=0;x1=1;
>> for i=1:4
f0=x0^3+2*x0^2+10*x0-20;
f1=x1^3+2*x1^2+10*x1-20;
x2=x1-(x1-x0)*f1/(f1-f0);
dist=abs(x2-x1);
disp([x2,dist])
x0=x1;x1=x2;
end
1.5385

0.5385

1.3503

0.1882

1.3679

0.0176

1.3688

0.0009

You might also like