Contents
Ejercicio 1
Imprime una tabla formateada (entero y real) del logaritmo natural y decimal de los números 10, 20, 40, 60, y 80. usando el comando fprintf y vectores
x = [10; 20; 40; 60; 80; 100]; y = [x, log(x)]; z=[x,log10(x)]; fprintf('\n Logaritmo Natural log\n') fprintf('%5i \t %8.4f\n',y') fprintf('\n Logaritmo decimal log10\n') fprintf('%5i \t %8.4f\n',y')
Logaritmo Natural log 10 2.3026 20 2.9957 40 3.6889 60 4.0943 80 4.3820 100 4.6052 Logaritmo decimal log10 10 2.3026 20 2.9957 40 3.6889 60 4.0943 80 4.3820 100 4.6052
Ejercicio 2
Programa que pide el peso y la estatura de una persona,invoca una función que devuelve el valor del indice de masa corporal (IMC):
while true p= input('Ingresa peso en kg: '); e= input('Ingresa estatura en m: '); [v m]=imc(p, e); fprintf('%.3f Advertencia: %s\n',v,m) c=input('desea continuar (s/n)? ','s'); if (c=='n' || c=='N'), break; end end
Error using input Cannot call INPUT from EVALC. Error in BufuEjers (line 16) p= input('Ingresa peso en kg: ');
Ejercicio 3
Programa para imprimir una tabla de un rango de números decimales y su equivalente en otra base (2-16) que se da como dato. Debe de ser una función recursiva.
% Rango de números decimales n=2:200; % Base a convertir b=4 for i=1:128; fprintf('%5d\t',i) cambiobase(i,b) fprintf('\n') end
Ejercicio 5
A partir del modelo del sistema de refrigeración de un circuito electrónico, se obtiene el sistema de ecuaciones expresado matricialmente, obtener los valores de calor y temperaturas incógnitas.
A=[100 0 0 0 -1 1 0;0 200 0 0 0 -1 1;0 0 50 0 -1 0 0;0 0 0 100 0 -1 0;0 300 0 0 0 0 -1;1 0 1 0 0 0 0;1 -1 0 -1 0 0 0]; B=[0; 0; -50; -50; -50; 25; 0]; X = A\B fprintf('\n Valores calor y temperaturas \n') fprintf('%5i \t Q1: %s\n',1,X(1)) fprintf('%5i \t Q2: %s\n',2,X(2)) fprintf('%5i \t Q3: %s\n',3,X(3)) fprintf('%5i \t Q4: %s\n',4,X(4)) fprintf('%5i \t Tc: %s\n',5,X(5)) fprintf('%5i \t Tp: %s\n',6,X(6)) fprintf('%5i \t Tw: %s\n',7,X(7))
Ejercicio 6
Para la matriz de coeficientes anterior encuentra la factorización LU, es decir A = LU y aplicar a continuación U^{-1}L^{-1}B para resolver el sistema anterior.
A=[100 0 0 0 -1 1 0;0 200 0 0 0 -1 1;0 0 50 0 -1 0 0;0 0 0 100 0 -1 0;0 300 0 0 0 0 -1;1 0 1 0 0 0 0;1 -1 0 -1 0 0 0]; B=[0; 0; -50; -50; -50; 25; 0]; [L, U] = lu(A) C = L*U X = inv(U)*inv(L)*B
Ejercicio 7
Calcula los autovalores y autovectores de una matriz
A=[0 1 -1; -6 -11 6; -6 -11 5]; [X,D]=eig(A) fprintf('Autovalores') T1= diag(D) fprintf('Autovectores') T2= X'
Ejercicio 8
Determinar los voltajes de los nodos V1 y V2 y la potencia entregada por cada fuente de un circuito
Y=[1.5-2j -.35+1.2j; -.35+1.2j 0.9-1.6j]; I=[30+40j;20+15j]; disp('Solucion:') V=Y\I fprintf('Potencia') S= V.*conj(I)
Ejercicio 11
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
p= -4:0.3:4; [x,y]=meshgrid(p,p); z=sin(x).*cos(y).*exp(-(x.^2+y.^2).^0.5); mesh(x,y,z)
Ejercicio 12
%Condiciones iniciales: y0=1; dy0=0; k=0.15; t0=0; tf=35; %Hallamos la solución: [t yy]=ode45(@funcionode,[t0 tf],[y0 dy0],[],k); %La función y(t) es: yt=yy(:,1); n=length(yt); plot(linspace(0,35,n),yt) %La derivada dy(t)/dt es: dyt=yy(:,2); plot(linspace(0,35,n),dyt)
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:
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; senal1 = Bo*sin(2*pi*fo*ts)+Bo/2*sin(2*pi*fo*2*ts); An = abs(fft(senal1, N))/N; subplot(4,2,1) plot(ts, senal1) subplot(4,2,2) plot(df, 2*An(1:N/2)) Senal2 = exp(-2*ts).*sin(2*pi*fo*ts); An1 = abs(fft(Senal2, N))/N; subplot(4,2,3) plot(ts, Senal2) subplot(4,2,4) plot(df, 2*An1(1:N/2)) Senal3 = sin(2*pi*fo*ts + 5*sin(2*pi*fo/10*ts)); An2 = abs(fft(Senal3, N))/N; subplot(4,2,5) plot(ts, Senal3) subplot(4,2,6) plot(df, 2*An2(1:N/2)) Senal4 = sin(2*pi*fo*ts - 5*exp(-2*ts)); An3 = abs(fft(Senal4, N))/N; subplot(4,2,7) plot(ts, Senal4) subplot(4,2,8) plot(df, 2*An3(1:N/2))
Ejercicio 14
Graficar la siguiente función curva en coordenadas polares : r = 2 - 4cos( alpha ), -pi <= alpha <= pi
alpha = linspace(-pi, pi, 180);
r = 2 - 4*cos(alpha);
figure
polar(alpha, r);
title('Grafico polar de r = 2 - 4cos(alpha ), -pi <= alpha <= pi');
Ejercicio 15
Catenaria
format long % Calculo Tension Ta f = @(x) 10-x/10*cosh(500/x)+x/10; %TA = fzero(inline('10-x/10*cosh(500/x)+x/10'),1000) x0 = 1000; % Punto inicial TA = fzero(f,x0) % Longitud del cable para un vano de 150 x = 150 w = 10; a = 150; Longitud = 2*TA/w*sinh(2*w*x/TA) % Grafica de y en funcion de x (catenaria) entre -50 y 100 x = linspace(-50,100); y0 = 5; y = TA/w*cosh(w*x/TA) + y0 - TA/w; plot(x,y),grid