Contents
clear all close all
Ejercicio 2
Hallar el vector X para la siguiente 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 4
Hallar los autovalores y autovectores de la matriz A:
A=[0 1 -1;-6 -11 6;-6 -11 5]; [X D]=eig(A); T1=A*X T2=X*D
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
Para el siguiente circuito, determinar los voltajes de los nodos V1 y V2 y la potencia entregada por cada fuente:
A=[1.5-2i -0.35+1.2i; -0.35+1.2i 0.9-1.6i]; resul=[30+40i;20+15i]; V=A\resul S1=V(1)*(30+40i) S2=V(2)*(20+15i)
V = 3.5902 +35.0928i 6.0155 +36.2212i S1 = -1.2960e+03 + 1.1964e+03i S2 = -4.2301e+02 + 8.1466e+02i
Ejercicio 6
Escribir una función recursiva para resolver el problema de la Torres de Hanoi y probarla para un valor 5 discos. Invocamos a la función hanoi.m dándole el número de discos, y las torres de las que disponemos % 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 plonimoio de orden 2 a unos datos. Se grafican los puntos dados con el simbolo x y la curva ajustada con una línea sólida. Se coloca una leyenda adecuada, etiquetas a los ejes y 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 polinómico') legend('Datos','Ajuste polinómico',4)
p = 4.0233 2.0107 9.6783
Ejercicio 8
Partir la ventana Figure en cuatro particiones (2x2) y graficar las siguientes funciones para wt de 0 a 3? en pasos de 0.05 • Graficar v = 120 seno wt e i = 100 seno(wt - ?/4 ) en función de wt en la parte superior izquierda • Graficar p = vi en la parte superior izquierda • Para Fm = 3.0, graficar fa = Fm seno wt, fb = Fm seno(wt – 2 ?/3) y fc = Fm seno(wt – 4 ?/3) en función de ?t en la parte inferior izquierda • Para fR = 3.0, construir un círculo de radio fR en la parte inferior derecha
x=linspace(0,3*pi); y1a=120*sin(x); y1b=100*sin(x-(pi/4)); y2=y1a.*y1b; y3a=3*sin(x);y3b=3*sin(x-(2*pi/3));y3c=3*sin(x-(4*pi/3)); figure(1) subplot(2,2,1) plot(x,y1a) hold on plot(x,y1b) subplot(2,2,2) plot(x,y2) subplot(2,2,3) plot(x,y3a) hold on plot(x,y3b) plot(x,y3c) hold off subplot(2,2,4) t=0:0.001:1; s=3*sin(2*pi*2*t); c=3*cos(2*pi*2*t); y4=plot(s,c); axis('equal'); hold off
Ejercicio 11
Hallar las raíces del polinomio f(x)=x^4-35*x^2+50*x+24
pol=[4;0;-35;50;24]; raices=roots(pol)
raices = -3.4456 + 0.0000i 1.9130 + 0.9582i 1.9130 - 0.9582i -0.3804 + 0.0000i
Ejercicio 12
Resolver la ecuación diferencial
% Utilizaremos las funciones ejemploode y halfsine % % % function Ejemploode % % [t, yy] = ode45(@HalfSine, [0 35], [1 0], [], 0.15); % % figur3(2) % % plot(t, yy(:,1)) % % % 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
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
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; %Apartado A SampledSignal1 = Bo*sin(2*pi*fo*ts)+Bo/2*sin(2*pi*fo*2*ts); An = abs(fft(SampledSignal1, N))/N; figure(3); plot(df, 2*An(1:N/2)) %Apartado B SampledSignal2 = exp(-2*ts).*sin(2*pi*fo*ts); An = abs(fft(SampledSignal2, N))/N; figure(4); plot(df, 2*An(1:N/2)) %Apartado C SampledSignal3 = sin(2*pi*fo*ts+5*sin(2*pi*(fo/10)*ts)); An = abs(fft(SampledSignal3, N))/N; figure(5); plot(df, 2*An(1:N/2)) %Apartado D SampledSignal4 =sin(2*pi*fo*ts-5*exp(-2*ts)); An = abs(fft(SampledSignal4, N))/N; figure(6); plot(df, 2*An(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
v = imread('WindTunnel.jpg'); image(v) figure row = 200; red = v(row, :, 1); gr = v(row, :, 2); bl = v(row, :, 3); plot(red, 'r'); hold on plot(gr, 'g'); plot(bl, 'b');