Contents

Ejercicio 1

Imprime una tabla formateada (entero y real) del logaritmo natural de los números 10, 20, 40, 60, y 80. usando el comando fprintf y vectores

x = [10; 20; 40; 60; 80];
y = [x, log(x)];
fprintf('\n Numero Natural log\n')
fprintf('%4i \t %8.3f\n',y')
 Numero Natural log
  10 	    2.303
  20 	    2.996
  40 	    3.689
  60 	    4.094
  80 	    4.382

Ejercicio 2

Resuelve un sistema de ecuaciones lineales utilizando una ecuación matricial:

A=[4 -2 -10; 2 10 -12; -4 -6 16];
B=[-10; 32; -16];
X = A\B
X =

    2.0000
    4.0000
    1.0000

Ejercicio 3

Para la matriz de coeficientes anterior encuentra la factorización LU, es decir A = LU aplica a continuación

$$U^{-1}L^{-1}B$$

para resolver el sistema anterior.

A=[4 -2 -10; 2 10 -12; -4 -6 16];
B=[-10; 32; -16];
[L, U] = lu(A)
C = L*U
X = inv(U)*inv(L)*B
L =

    1.0000         0         0
    0.5000    1.0000         0
   -1.0000   -0.7273    1.0000


U =

    4.0000   -2.0000  -10.0000
         0   11.0000   -7.0000
         0         0    0.9091


C =

    4.0000   -2.0000  -10.0000
    2.0000   10.0000  -12.0000
   -4.0000   -6.0000   16.0000


X =

    2.0000
    4.0000
    1.0000

Ejercicio 4

Calcula los autovalores y autovectores de una matriz

A=[0 1 -1; -6 -11 6; -6 -11 5];
[X,D]=eig(A)
T1= A*X
T2= X*D
X =

    0.7071   -0.2182   -0.0921
   -0.0000   -0.4364   -0.5523
    0.7071   -0.8729   -0.8285


D =

   -1.0000         0         0
         0   -2.0000         0
         0         0   -3.0000


T1 =

   -0.7071    0.4364    0.2762
    0.0000    0.8729    1.6570
   -0.7071    1.7457    2.4856


T2 =

   -0.7071    0.4364    0.2762
    0.0000    0.8729    1.6570
   -0.7071    1.7457    2.4856

Ejercicio 5

Determinar los voltajes de los nodos V1 y V2 y la potencia entregada por cada fuente de un circuito

Ecuaciones:

Y=[1.5-2j -.35+1.2j; -.35+1.2j 0.9-1.6j];
I=[30+40j;20+15j];
disp('Solucion:')
V=Y\I
S= V.*conj(I)
Solucion:

V =

   3.5902 +35.0928i
   6.0155 +36.2212i


S =

   1.0e+03 *

   1.5114 + 0.9092i
   0.6636 + 0.6342i

Ejercicio 6

Resuelve el problema de Hanoi utilizando una función recursiva se prueba para un valor de 5 discos Nota: Colocar el fichero hanoi.m en el mismo directorio

Torres de Hanoi uso: hanoi(N, Tini, Taux, Tdes) donde N = numero de discos (entero >0) Tini = torre inicial (caracter i.e. 'a') Taux = torre auxiliar (caracter i.e. 'b') Tdes = torre destino (caracter i.e. 'c')

function hanoi(n, i, a, f)
if n > 0
  hanoi(n-1, i, f, a);
  fprintf('mover disco %d de %c a %c\n', n, i, f);
  hanoi(n-1, a, i, f);
end
hanoi(5,'a','b','c')
mover disco 1 de a a c
mover disco 2 de a a b
mover disco 1 de c a b
mover disco 3 de a a c
mover disco 1 de b a a
mover disco 2 de b a c
mover disco 1 de a a c
mover disco 4 de a a b
mover disco 1 de c a b
mover disco 2 de c a a
mover disco 1 de b a a
mover disco 3 de c a b
mover disco 1 de a a c
mover disco 2 de a a b
mover disco 1 de c a b
mover disco 5 de a a c
mover disco 1 de b a a
mover disco 2 de b a c
mover disco 1 de a a c
mover disco 3 de b a a
mover disco 1 de c a b
mover disco 2 de c a a
mover disco 1 de b a a
mover disco 4 de b a c
mover disco 1 de a a c
mover disco 2 de a a b
mover disco 1 de c a b
mover disco 3 de a a c
mover disco 1 de b a a
mover disco 2 de b a c
mover disco 1 de a a c

Ejercicio 7

Ajuste de un polinomio de orden 2 a los datos.

Se grafican los puntos dados con el símbolo x y la curva ajustada con una línea sólida. Se coloca una leyenda adecuada, etiquetas en los ejes y un título al gráfico

x= 0:0.5:5;
y=[10 10 16 24 30 38 52 68 82 96 123];
p=polyfit(x,y,2)
yc=polyval(p,x);
plot(x,y,'x',x,yc);
xlabel('x'),ylabel('y'),grid,title('Ajuste polinomico')
legend('Datos','Ajuste polinomico','Location','SouthEast')
p =

    4.0233    2.0107    9.6783

Ejercicio 8

Se divide la ventana Figure en cuatro particiones (2x2) y se grafican las siguientes funciones para t de 0 a 3 en pasos de 0.05.

  1. Parte superior izquierda: grafica v = 120 seno wt e i = 100 seno(wt -pi/4 ) en función de wt.
  2. Parte superior derecha: grafica p = vi.
  3. Parte inferior izquierda: para Fm = 3.0, graficar fa = Fm seno t, fb = Fm seno(wt - 2pi/3) y fc = Fm seno(wt - 4pi/3) en función de wt.
  4. Parte inferior derecha: Para fR = 3.0, construir un círculo de radio fR.
wt=0:0.05:3*pi;
v=120*sin(wt);
i=100*sin(wt-pi/4);
p=v.*i;
subplot(2,2,1)
plot(wt,v,wt,i)
title('Voltaje y Corriente'),xlabel('\omegat, radianes')
subplot(2,2,2)
plot(wt,p)
title('Potencia'),xlabel('\omegat, radianes')
Fm=3.0;
fa=Fm*sin(wt);
fb=Fm*sin(wt-2*pi/3);
fc=Fm*sin(wt-4*pi/3);
subplot(2,2,3)
plot(wt,fa,wt,fb,wt,fc)
title('Fm trifasico'),xlabel('\omegat, radianes')
fR= 3/2*Fm;
subplot(2,2,4)
plot(-fR*cos(wt),fR*sin(wt))
title('Fm rotante')

Ejercicio 9

Grafica de la curva parametrica

$$x(t)= e^{-0.03t}cos(t), y(t)=e^{-0.03t}sin(t),z(t)=t$$

t=0:0.1:16*pi;
x=exp(-0.03*t).*cos(t);
y=exp(-0.03*t).*sin(t);
z=t;
subplot(1,1,1)
plot3(x,y,z), axis off

Ejercicio 10

Grafica de la curva parametrica

$$z=sin(x)cos(y)e^{-(x^{2}+y^{2})^{0.5}}$$

para un intervalo de -4 a 4 en pasos de 0.3

t= -4:0.3:4;
[x,y]=meshgrid(t,t);
z=sin(x).*cos(y).*exp(-(x.^2+y.^2).^0.5);
mesh(x,y,z) , axis off

Ejercicio 11

Raíces del polinomio

$$f(x)=x^{4}-35x^{2}+50x+24$$

p=[ 1 0 -35 50 24];
r=roots(p)
r =

   -6.4910
    4.8706
    2.0000
   -0.3796

Ejercicio 12

Solucion a la ecuación diferencial

$$e\frac{\mathrm{d^2} y}{\mathrm{d} x^2}+2\xi \frac{\mathrm{d} y}{\mathrm{d} x}+y=h(t)$$

Sujeta a las condiciones iniciales:

Nota: colocar el Ejemplodde.m, HalfSine.m en el mismo directorio

Ejemplo_hiperenlace

function Ejemploode
[t, yy] = ode45(@HalfSine, [0 35], [1 0], [], 0.15);
plot(t, yy(:,1))for x = 1:10
function y = HalfSine(t, y, z)
h = sin(pi*t/5).*(t<=5);
y = [y(2); -2*z*y(2)-y(1)+h];
Ejemploode

Ejercicio 13

Tomando como base las condiciones del ejemplo de la transformada de Fourier de los apuntes (pág. 124), graficar para las siguientes señales la gráfica de la señal en el tiempo y la gráfica de la amplitud espectral en función de la frecuencia: $$ g(t)=Bo sin(2.pi.fo.t) + Bo/2 sin(2.pi.2.fo.t), $$ $$ g(t)=e^-2t sin(2.pi.fo.t), $$ $$ g(t)=sin(2.pi.fo.t + 5 sin(2.pi.2.fo/10.t), $$ $$ g(t)=sin(2.pi.fo.t - 5 e^2t) $$

figure
k = 5;   m = 10;   fo = 10;   Bo = 2.5;
N = 2^m;   T = 2^k/fo;
ts = (0:N-1)*T/N;
df = (0:N/2-1)/T;
SampledSignal = Bo*sin(2*pi*fo*ts)+Bo/2*sin(2*pi*fo*2*ts);
An = abs(fft(SampledSignal, N))/N;
subplot(4,2,1)
plot(ts, SampledSignal)
subplot(4,2,2)
plot(df, 2*An(1:N/2))
%
SampledSignal1 = exp(-2*ts).*sin(2*pi*fo*ts);
An1 = abs(fft(SampledSignal1, N))/N;
subplot(4,2,3)
plot(ts, SampledSignal1)
subplot(4,2,4)
plot(df, 2*An1(1:N/2))
%
SampledSignal2 = sin(2*pi*fo*ts + 5*sin(2*pi*fo/10*ts));
An2 = abs(fft(SampledSignal2, N))/N;
subplot(4,2,5)
plot(ts, SampledSignal2)
subplot(4,2,6)
plot(df, 2*An2(1:N/2))
%
SampledSignal3 = sin(2*pi*fo*ts - 5*exp(-2*ts));
An3 = abs(fft(SampledSignal3, N))/N;
subplot(4,2,7)
plot(ts, SampledSignal3)
subplot(4,2,8)
plot(df, 2*An3(1:N/2))

Ejercicio 14

Leer y graficar la imagen WindTunnel.jpg de las transparencias y graficar en sendos gráficos el valor del color rojo de la imagen en función del ancho de la imagen y el histograma del mismo para una fila de la imagen que se pide al usuario. Mostrar el valor para 200

A = imread('WindTunnel.jpg', 'jpeg');
%image(A)
%figure
% row=input('qué fila? ');
row = 200;
red = A(row, :, 1);
gr  = A(row, :, 2);
bl  = A(row, :, 3);
subplot(2,1,1)
plot(red, 'r');
title('Distribución del color rojo en la fila 200');
%hold on
%plot(gr, 'g');
%plot(bl, 'b');
subplot(2,1,2)
hist(red,0:15:255);
title('Histograma del color rojo en la fila 200');

Ejercicio 15

Graficar la siguiente función curva en coordenadas polares : r = 2 - 4cos(theta ), -pi <= theta <= pi

theta = linspace(-pi, pi, 180);
r = 2 - 4*cos(theta);
figure
polar(theta, r);
title('Grafico polar de r = 2 - 4cos(theta ), -pi <= theta <= pi');