Beruflich Dokumente
Kultur Dokumente
INFORMTICA Y
2015-I
SISTEMAS
Autor: Ing. William Chauca
Nolasco
MATLAB
INTRODUCCIN
MATLAB
es una abreviatura de
Matrix Laboratory
Su primera implementacin se hizo
en FORTRAN que era y aun sigue
sindolo, el lenguaje estndar en la
implementacin
de
mtodos
numricos.
Posteriormente se implemento en C,
que es como se encuentra en la
actualidad.
APLICACIONES EN
MATLAB
Las aplicaciones de matlab se
extienden a otras ramas del clculo
cientfico y de las ciencias aplicadas
en general.
Tiene
gran
aceptacin
en
la
Ingeniera.
Sus
herramientas
como
los
toolboxes, libreras escritas en el
lenguaje propio del Matlab hacen que
se amplen el rango de problemas
COMANDOS BASICOS
Ordenes de importancia
1.- who: Genera una lista de variables almacenadas en
el espacio de trabajo sin detalles.
2.- whos: Genera una lista de variables almacenadas en
el espacio de trabajo con mas detalles respectos a las
variables almacenadas en el espacio de trabajo.
3.- what: Presenta una lista de archivos m, mat y mex
almacenados en el directorio actual.
4.- clc: Limpia la informacin de la ventana de comandos
5.- clear: Borra las variables usadas en memoria (del
espacio de trabajo)
6.-demo:
Gua
al
usuario
a
ejecutar
demostraciones que se eligen en un men.
7.- diary filename
diversas
PERACIONES ARITMTICA
EN MATLAB
Significado
+
*
/
^
Adicin
Sustraccin
Multiplicacin
Divisin
Potenciacin
UTILIZANDO LA
VENTANA DE
COMANDOS CON
OPERACIONES
ARITMTICAS
Ejemplos de Asignacin
de variables en Matlab
Primero borramos
todas las variables
creada, luego con
el puntero
del
mouse ejecutamos
las ordenes que
estan en la ventana
de nombre
COMMAND
HISTORY
Operadores lgicos
Sirven para operaciones lgicas, es decir,
cuando deseamos comparar variables, se
necesitan operadores cuyo resultado sea
booleano (cierto o falso).
Operador
Funcin que desempea
-A
Negacin Lgica (NOT) o complementario de A
A&B
Conjuncin lgica (AND) o interseccin de A y B
A|B
Disyuncin lgica (OR) o unin de A y B
xor( A , B) OR exclusivo (XOR) o diferencia simtrica de A y
B
Operadores
Relacionales
Operador
Funcin que desempea
<
Menor (complejos slo afecta a partes
reales)
<=
Menor o igual (slo afecta a partes
reales)
>
Mayor (slo afecta a partes reales)
>=
Mayor o igual (slo afecta a partes
reales)
==
Igual lgico
=
Desigualdad
VECTORES
Formas de asignar un
vector
linspace
(a,b,n)
genera
un
vector
linealmente espaciado entre los valores a
y b con c elementos.
linspace
(a,b)
genera
un
vector
linealmente espaciado entre los valores a
y b con 100 elementos.
logspace
(a,b,n)
genera
un
vector
logartmicamente espaciado entre los
valores 10^a y 10^b con n elementos.
logspace
(a,b)
genera
un
vector
logartmicamente espaciado entre los
valores 10^a y 10^b con 50 elementos.
ing. William Chauca Nolasco
>> Vector1=[1:5]
Vector1 =
1
2
3
4
>> Vector2=[1:0.5:4]
Vector2 =
Columns 1 through 7
1.0000 1.5000 2.0000 2.5000 3.0000
3.5000 4.0000
>> Vector3=linspace(1,10,10)
Vector3 =
Columns 1 through 10
1
2
3
4
5
6
7
8
9 10
>> Vector4=linspace(1,21,10)
Vector4 =
Columns 1 through 10
1.0000 3.2222 5.4444 7.6667 9.8889
14.3333 16.5556 18.7778 21.0000
>> Vector5=logspace(0,2,4)
Vector5 =
1.0000 4.6416 21.5443 100.0000
ing. William Chauca Nolasco
12.1111
COMANDO FORMAT
FUNCIONES DE APROXIMACIONES
>>
ceil(1.25)
ans =
2
>> ceil(1.25)
ans =
>>
>>
fix(10.97)
floor(4.269)
ans =
ans =
10
4
>> fix(>> floor(10.97)
4.269)
Nolasco
ans ing.
= William Chaucaans
=
>>
round(3.5)
ans =
4
>>
round(3.25)
ans =
FUNCIONES TRIGONOMTRICAS
>> sin(pi/2)
ans =
1
>> cos(pi/2)
ans =
6.1232e-017
>> sinh(pi/2)
ans =
2.3013
>>
cosh(pi/2)
ans =
2.5092
>> sind(90)
ans =
>> sin(pi/6)
1
ans =
>> sind(-90)
0.5000
ans =
>>
-1
asin(0.5000)*180/p
>> cosd(-90)
i
ans =
ans =
0
ing. William Chauca Nolasco
30.0000
FUNCIONES DE OPERACIONES
BSICAS
>> abs(-5)
ans =
5
>> abs(3-4i)
ans =
5
>> x=-1
x=
-1
>> y=0
y=
0
>> z=2
z=
2
>> sign(x)
ans =
-1
>> sign(y)
ans =
0
>> sign(z)
ans =
1
ing. William Chauca Nolasco
>> gcd(9,12)
ans =
3
>> lcm(10,25)
ans =
50
>> rem(12,5)
ans =
-2
>> rem(12,5)
ans =
2
>> mod(-12,5)
>> nthroot(8,3)
ans =
ans =
3
2
Su equivalencia
>> -12-floor(>>
12/5)*5
nthroot([8,27,64],3
ans =
)
3
ans
=
>> mod(12,5)
2
3
4
ans =
ing. William Chauca Nolasco
2
>> eye(2)
ans =
1
0
0
1
>> magic(4)
ans =
16
2
3 13
5 11 10
8
9
7
6
12
4 14 15
1
A=
1
7
2
2
8
4
3
9
6
4
2
8
>> diag(A)
ans =
1
8
6
>> size(A)
ans =
3 4
>> XX = [1
2 4 6 8]
XX =
1
2
7
8
2
4
2 3 4; 7 8 9 2;
3
9
6
4
2
8
>>
>> UPPER=triu(XX)
LOW=tril(XX)
UPPER =
LOW =
1
2
3
4
1
0
0
0
8
9
2
0
0
0
6
8
7
8
0
0
ing. William Chauca Nolasco
2
4
6
vector =
2
7 10
4
1
>> [xm,im]=max(vector)
xm =
10
im =
>>
3
[ym,imenor]=min(vector)
ym =
1
imenor =
ing. William Chauca Nolasco
5
>> vector
>> cumprod(vector)
vector =
ans=
2
7 10
4
1
2 14 140 560
>> sum(vector)
560
ans =
24
>> vector
>> cumsum(vector) vector =
ans =
2
7 10
4
2
9 19 23 24
1
>> mean(vector)
ans =
>> [y,i]=sort(vector)
4.8000
y=
>> std(vector)
1
2
4
7
ans =
10
3.7014
>> prod(vector)
i=
ans =
5
1
4
2
ing. William Chauca 3
Nolasco
560
any(A)
all(x)
>> C=(A>=0)
C=
1
1
>> all(C)
ans =
1
todos
los
>> all(all(A))
ans =
1
En este caso no ha hecho falta utilizar el operador
relacional porque cualquier elemento distinto de
cero equivale a true.
GENERACIN DE GRFICOS
PREDEFINIDOS EN MATLAB
>> y=[1 2 3 8 2 1 4
6];
>> bar(y)
>> x = -3:0.2:3;
>> y = exp(-x.*x);
>> bar(x,y)
y = e-x*x
>> barh(x,y)
>> bar(x,y,'g')
>>bar(y,'grouped')
>> bar(y,'stacked')
bar3(y,'stacked')
>> x = 0:0.2:20;
>>y = sin(x).*exp(-0.2*x);
>> plot(x,y)
>> plot(x,y,'r*')
>> x=linspace(0,2,30);
>> y=sin(x.^2);
>> plot(x,y)
>> text(1,0.8,'y=sin(x^2)');
>> hold on
>> z=log(sqrt(x));
>> plot(x,z)
>> text(1,-0.1,'y=log(sqrt(x))')
>> xlabel('Eje x')
>> ylabel('Eje y')
>> title('Grfico senoidal y
logartmico')
ing. William Chauca Nolasco
>>
>>
>>
>>
>>
>>
>>
>>
>>
x = [0:0.1:2*pi];
y = sin(x);
z = cos(x);
subplot(121);
plot(x,y)
title('sin(x)')
subplot(122);
plot(x,z)
title('cos(x)')
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
x = [0:0.1:2*pi];
y = sin(x);
z = cos(x);
subplot(211);
plot(x,y)
title('sen(x)')
hold on
subplot(212)
plot(x,z)
title('cos(x)')
>>subplot (221);
>>fplot(sin(x),[-2*pi 2*pi]);
>>subplot (222);
>>fplot(cos(x),[-2*pi 2*pi]);
>>subplot (223);
>>fplot(csc(x),[-2*pi 2*pi -10
10]);
>>subplot (224);
>>fplot(sec(x),[-2*pi 2*pi -10
10]);
ing. William Chauca Nolasco