Вы находитесь на странице: 1из 8

ACTIVIDAD FUNDAMENTA 10

%Programa para convertir de pulgadas a centimetros


clear all
clc
x=2.54;
a=input ('primer medida en pulgadas ');
b=input ('segunda medida en pulgadas ');
c=input ('tercer medida en pulgadas ');
A=[a b c;a*x b*x c*x; a*x*10 b*x*10 c*x*10];
fprintf('X es %5.2f pulgadas o %5.3f centimetros o %5.2f mm\n',A)

***********************************************************

%Programa para graficar en 3 dimensiones


clear all
clc
x=-1:0.1:1;
y=x;
[X,Y]=meshgrid(x,y);
Z=X.*Y+X.*X;
surf(Z)

***********************************************************

%Programa para graficar Curvas de Lisajoux


clear all
clc
t=0:2*pi/100:2*pi;
x=sin(3*t);
y=sin(2*t);
plot(y,x)

***********************************************************

%filtro paso bajo en Emisor Comun


w=logspace(3,9,100);
gm=30e-3;
Rc=2000;
RL=2000;
Cu=5e-12;
RCRL=(Rc*RL)/(Rc+RL);
num=gm*RCRL+i*w*RCRL*Cu;
den=1+i*w*RCRL*Cu;
for k=1:100
g(k)=abs(num(k)/den(k));
end
semilogx(w/(2*pi),g);
xlabel('Frecuencia (Hz)');
ylabel('Ganancia(G)');
grid
***********************************************************

%Programa para graficar 15 elementos discretos de 0 a 6, cuya magnitud sea


%el sin(X)+cos(Y)
X = linspace(0,6,15);
Y = X./2;
Z = sin(X) + cos(Y);
stem3(X,Y,Z,'fill')
view(15,40) %Angulo de visualización

***********************************************************

%graficar una función discreta


clear all
clc
x=linspace(0,2,10);%crea un vector de 0 a 2 con 10 elementos separados uniformemente
stem(x,x.^2+1)

***********************************************************

clear all
clc
%Forma binómica
z=3+3i
%Parte real e imaginaria
real(z)

imag(z)

%Complejo conjugado
conj(z)

%Otra manera de obtener el complejo conjugado


z'

compass(z) %grafica en un plano circular con magnitud 3 en plano real y 3 en plano imaginario

***********************************************************

clear all
clc
%Programa que crea 2 graficas de la funcion sin(5*z) una en coordenadas
%polares y otra en rectangulares
z=0:0.001:2*pi;
r=sin(5*z);
figure(1)
polar(z,r)
figure(2)
plot(z,r)

***********************************************************

%Programa que cumple con funciones logicas mayor que, o menor que y da
%salida formateada
height=[63 67 65 72 69 78 75]
accept=find(height>=66)
decline=find(height<66)
disp('los siguientes candidatos cumplen con la estatura');
fprintf('Candidato # %4.0f mide %4.0f pulgadas de alto \n', [accept;height(accept)])

***********************************************************

%Programa para obtener la corriente en cada resistor del circuito de mallas visto en clase
clear all
clc
%Ingresamos los voltajes
V1=20; V2=12; V3=40;
%Ingresamos los valores de las resistencias
R1=18; R2=10; R3=16; R4=6;
R5=15; R6=8; R7=12; R8=14;

%[A][x]=[B]
%Ingresamos la matriz [A]
A=[-(R1+R2+R3) R2 R3 0
R2 -(R2+R4+R5+R7) R4 R7
R3 R4 -(R3+R4+R6) R6
0 R7 R6 -(R6+R7+R8)];

%ingresamos la matriz [B]


B=[-V1; 0; V2; -V3];

%Corrientes I=B/A
I=A\B;
%se calcula la corriente en cada resistencia

%en R2 la corriente es IR2=I(1)-I(2)


IR2=I(1)-I(2);
%en R3 la corriente es IR3=I(1)-I(3)
IR3=I(1)-I(3);
%en R4 la corriente es IR4=I(2)-I(3)
IR4=I(2)-I(3);
%en R6 la corriente es IR6=I(4)-I(3)
IR6=I(4)-I(3);
%en R7 la corriente es IR7=I(4)-I(2)
IR7=I(4)-I(2);
fprintf('la corriente en la resistencia R1 es=%f Amperes\n',I(1))
fprintf('la corriente en la resistencia R2 es=%f Amperes\n',IR2)
fprintf('la corriente en la resistencia R3 es=%f Amperes\n',IR3)
fprintf('la corriente en la resistencia R4 es=%f Amperes\n',IR4)
fprintf('la corriente en la resistencia R5 es=%f Amperes\n',I(2))
fprintf('la corriente en la resistencia R6 es=%f Amperes\n',IR6)
fprintf('la corriente en la resistencia R7 es=%f Amperes\n',IR7)
fprintf('la corriente en la resistencia R8 es=%f Amperes\n',I(4))

***********************************************************

%programa que evalua la trayectoria de un proyectil


clear all
clc
v0=input('ingrese la velocidad inicial en m/s: ');
theta=input('Ingrese el angulo de elevación en grados: ');
g=9.81;
v0x=v0*cos(theta*pi/180);
v0y=v0*sin(theta*pi/180);
thmax=v0y/g;
hmax=v0y^2/(2*g);
ttot=2*thmax;
dmax=v0x*ttot;
%Creacion del grafico de la trayectoria
tplot=linspace(0,ttot,200);
x=v0x*tplot;
y=v0y*tplot-0.5*g*tplot.^2;
plot(x,y)
xlabel('DISTANCIA (m)')
ylabel('ALTURA(m)')
title('TRAYECTORIA DE UN PROYECTIL')

***********************************************************

%Programa que solicita entradas para definir el caso de la operación a


%realizar

%costo en dolares $2.89 por galón


%en USA se vende gasolina en galones, en canada se vende en litros

clear all
clc
%Definir costo por galón
rate=2.89;
%Pida ingresar galones o litros
unit=input('galones o litros \n','s');
%uitlizar switch/case para determinar el factor de conversión
switch unit
case'galones'
factor=1;
case'litros'
factor=0.264;
otherwise
disp('no disponible')
factor=0;
end

%Pregunte cuanta gasolina quiere comprar


volume=input(['ingrese el volumen que desea comprar en ', unit,': \n']);
%calcule el costo de la gasolina

cost=volume*factor*rate;
%envie los resultados a pantalla
fprintf('serán $%5.2f por %5.2f %s \n',cost,volume,unit)

***********************************************************

%Modulador de AM
clear all
clc
t=[0:0.00000001:30e-5];
Vc=20.*sin(2*pi*500000*t);
Vli=-3.75*(7.5.*cos(2*pi*(500000+10000)*t));
Vls=3.75*(7.5.*cos(2*pi*(500000-10000)*t));
Vam=Vc+Vli+Vls;
plot(t,Vam)
Vc=20.*sin(2*pi*500000*t);
Vls=1.75*(7.5.*cos(2*pi*(500000-10000)*t));
Vli=-1.75*(7.5.*cos(2*pi*(500000+10000)*t));
Vam=Vc+Vli+Vls;
plot(t,Vam)
Vc=25.*sin(2*pi*500000*t);
Vam=Vc+Vli+Vls;
plot(t,Vam)
Vc=30.*sin(2*pi*500000*t);
Vam=Vc+Vli+Vls;
plot(t,Vam)

***********************************************************

% programa que convierte coordenadas rectangulares a cilindricas


clear all
clc
x=input('ingrese el valor de x: ');
y=input('ingrese el valor de y: ');
z=input('ingrese el valor de z: ');
rho=(x^2+y^2)^0.5
phi=atand(y/x)
z=z

***********************************************************

%Programa para calcular la aceleración de un móvil


clear all
clc
vo=input('dame la velocidad inicial en m/s= ');
vf=input('dame la velocidad final en m/s= ');
dt=input('dame el tiempo transcurrido en segundos= ');
a=(vf-vo)/dt;
disp('la aceleración en m/s^2 es= '), disp(a)

***********************************************************

%Programa para obtener el punto de operación, graficar rectas de carga


%diseñando para máxima oscilación simetrica

clear %esto limpia las memorias


clear all %esto limpia las memorias de cualquier variable residual
clc %esto limpia la ventana de comandos

VCC=input('valor de Vcc= '); %ingresamos el valor de la fuente de polarización


RL=input('valor de carga en ohms= '); %ingresamos el valor de la resistencia de carga
BETA=input('valor beta= '); %ingresamos el valos de la beta o hfe del transistor
VBE=input('valor de VBE= ');% si el transistor es de silicio el valor es 0.7 a 25°C
RB=0.1*BETA*RL;%esta RB garantiza criterios de estabilidad

RC=RL;%este valor de RC es para que la potencia de la señal se divida en partes iguales


RE=0.1*RL;%criterio de retroalimentación

RCD=RC+RE;
RCA=((RC*RL)/(RC+RL))+RE;

ICQ=VCC/(RCD+RCA);%ecuación de diseño para máxima salida simétrica

VBB=(ICQ*((RB/BETA)+RE))+VBE; % voltaje de polarización en la base del transistor

R1=RB/(1-(VBB/VCC))%valor de R1 en diseño para polarización por divisor de voltaje


R2=(RB*VCC)/VBB%valor de R2 en diseño para polarización por divisor de voltaje

VCEQ=VCC-(ICQ*(RC+RE)); % voltaje del punto de operación

VCCca=VCEQ+(ICQ*RCA);%valor de voltaje para la recta de carga de ca

ICcd=VCC/RCD; %establece la maxima corriente de la recta de carga de CD


ICca=VCCca/RCA; %establece la maxima corriente de la recta de carga de CA

mCD=-(1/RCD); %pendiente de la recta de cargade CD


mCA=-(1/RCA); %pendiente de la recta de cargade CA

hold on %permite empalmar graficos en el mismo cuadro

X=[0:0.1:VCC];%establece el vector desde 0 hasta el valor de voltaje de la fuente Vcc

rectaCD=(mCD.*X)+ICcd; %ecuación de la recta y=mx+b para la recta de carga de CD

plot(X,rectaCD)%grafica la recta de carga de CD

X2=[0:0.1:VCCca];%establece el vector desde 0 hasta el valor máximo de voltaje de la recta de carga de


CA

rectaCA=(mCA.*X2)+ICca;%ecuación de la recta y=mx+b para la recta de carga de CA

plot(X2,rectaCA)%grafica la recta de carga de CA

Vmax=(VCCca-VCEQ)*2;

disp('la máxima salida de voltaje es: '),disp(Vmax)


Imax=(ICca-ICQ)*2;
disp('la máxima salida de corriente es: '),disp(Imax)
xlabel('Voltaje colector - emisor VCE')
ylabel('Corriente colector IC')
title('curva de operacion')
disp('el punto de operación es'),disp('VCEQ en volts'),disp(VCEQ),disp('ICQ en amperes '),disp(ICQ)

***********************************************************
% programa que solicita una entrada y da una salida formateada
clear all
clc
x=input('dame el valor de x= ');
fprintf('\nEl numero tecleado fue %g. \n',x)

***********************************************************

%programa que grafica un filtro Gaussiano


clear all
clc
h1=fspecial('gaussian',[41,41],8);
[x,y]=meshgrid(-20:20,-20:20);
mesh(x,y,h1)
title('Filtro Gaussiano, sigma=8, [41 x 41]')

***********************************************************

%decimos la cantidad de componentes par la sume de la serie de fourier


clear all
clc
N=input('ingresa la cantidad de armonicas a calcular: ');
x = [0:100]/100;
f = ones(1,101)*1/2;
for i = 1:2:N
a = 2/pi/i;
f = f+ a*sin(2*pi*i*x);
end
plot(x,f)

***********************************************************

%graficar una función


clc
clear all
x=[0:0.2:2];
plot(x,x.^2+1)

***********************************************************

%grafica de un polinomio
clear all
clc
x=linspace(0,10,100);
y=[3 6 9 1 1];
fx=polyval(y,x);
plot(x,fx)
grid

***********************************************************

clear all
clc
f=sym('cos(10*x)*(2+sin(x))')
ezplot(f) %este permite graficar funciones simbolicas
***********************************************************

clear all
clc
fplot('cos(10*x)*(2+sin(x))',[-12,12]); %esto permite graficar dando los limites

***********************************************************

clear all
clc
fplot('sin(x)/x',[-30,30]); %esto permite graficar dando los limites

***********************************************************

%realizará la operación utilizando los elementos desde el 1 hasta el 10,


%con incrementos de 3

clear all
clc
for k=1:3:10
x=k^2
end

***********************************************************

Вам также может понравиться