Vous êtes sur la page 1sur 47

*Una herramienta para hacer clculos matemticos que

utiliza como elemento bsico la matriz.

*Un lenguaje de programacin:


*interactivo: rdenes
*avanzado pero fcil de utilizar: archivos.m

*Plataforma de desarrollo: toolboxes

*Anlisis de datos
*Polinomios
*Grficos 2D
*Grficos 3D
*Ajuste de curvas
*Interpolacin
*Anlisis numrico

*Al ejecutarse Matlab se crea una ventana de trabajo

que corresponde al lugar desde donde se interacciona


con Matlab:

*El smbolo denota que se esta esperando una orden

*Matlab recuerda las rdenes ya dadas y los valores de


cualquier variable (en el espacio de trabajo):

*recordar rdenes previas: y . Editar: y


*recordar variables: escribir su nombre

*Funciones para el manejo de las variables en el espacio


de trabajo:

*who lista las de las memorias del espacio de trabajo


*whos lista las memorias del espacio de trabajo con
informacin de su tamao

*save almacena las memorias en un archivo de extensin *.mat


*load recupera variables almacenadas en el disco
*clear borra las variables del espacio de trabajo

*Suma: +
*resta: *multiplicacin: *
*divisin: \ /
*potencia: ^

*Evala expresiones de izquierda a derecha:

* 1 potencias, 2 multiplicaciones y divisiones, y 3 sumas y restas.

*Nombres de variables o memorias:

* Siempre debe comenzar con una letra, seguidas de letras o nmeros si se


lo desea.
* Slo se recuerdan los primeros 17 dgitos de una memoria.
* Distingue maysculas y minsculas

*; al final de lnea no imprime el resultado.


*A partir del smbolo % se considera comentario.

*ans almacena el resultado por defecto


*Si una orden es demasiado larga, se escriben ...
seguido de enter para continuar en la siguiente
lnea, no en todos los casos es posible usar este
comando.

*Matlab se interrumpe con ctrl-c


*Matlab se cierra con el comando quit

*ans Nombre de la variable por defecto usado en los resultados


*pi Nmero
*eps El ms pequeo de los nmeros que al sumarle 1 da un
nmero en coma flotante mayor que 1
*inf Infinito
*NaN Indefinido
*i,j i=j=sqrt(-1)
*realmin Nmero real positivo ms pequeo que se puede usar
2.2251e-308
*realmax Nmero real positivo ms grande que se puede usar
1.7977e+308

Comando

Ejemplo

Comentario

format long

35.83333333333334

16 dgitos

format short e

3.5833e+01

5 dgitos mas exponente

format long e

35.83333333333334e+01 16 dgitos mas exponente

format hex

4041eaaaaaaaaab

hexadecimal

format bank

35.83

2 dgitos decimales

format +

positivo, negativo o cero

format rat

215/6

aproximacin racional

format short

35.8333

visualizacin por defecto

Caractersticas Cientficas
Funciones
Nmeros

matemticas

complejos

a
b
s
(
x
)
V
a
l
o
r
a
b
s
o
l
u
t
o
c
o
s
(
x
)
A
r
c
c
o
e
n
a
h
o
s
o
h
i
p
e
r
b

l
i
c
o
n
g
l
e
(
x
)
A
n
g
u
l
o
d
e
c
m
l
e
j
o
s
o
a
s
i
n
r
c
o
s
e
n
o
h
(
x
)
A
h
i
p
e
r
b

l
i
c
o
a
t
a
n
r
c
o
t
a
n
g
e
n
t
h
(
x
)
A
e
h
i
p
e
r
b

l
i
c
a
c
e
i
l
R
e
d
o
n
d
e
o
h
a
c
a
+

i
o
n
j
(
x
)
c
C
o
m
p
l
j
c
o
n
j
u
g
a
d
o
s
s
e
n
o
c
o
h
(
x
)
C
o
h
i
p
e
r
b

l
i
c
o
e
x
p
E
x
p
o
n
e
n
c
a
l
e
1
=
2
.
7
1
l
o
g(
x
)L
ogaritm
onperiano

Funciones matemticas

f
i
x
(
x
)
R
e
d
o
n
d
e
o
h
a
c
i
a
c
e
r
o
l
o
o
r
(
x
)
m
n
s
i
n
f
i
n
i
t
o
i
m
a
g
(
x
)
P
a
r
t
e
i
m
a
g
i
n
a
r
i
a
c
o
m
p
l
e
j
a
l
o
g
1
0
(
x
)
L
o
g
a
r
t
o
c
o
m

n
r
e
a
l
(
x
)
P
a
r
t
e
e
a
l
p
l
e
j
a
m
(
x
,
y
)
R
e
s
o
d
a
d
i
v
i
s
i

n
(
r
e
s
t
o
a
l
d
i
v
i
d
i
r
x
/
y
)
r
o
u
n
d
(
x
d
n
e
o
l
e
n
t
e
r
o
m

c
e
r
c
a
n
o
s
i
g
(
x
)
F
u
n
c
i

n
s
i
g
n
o
n
(
x
)
S
e
o
s
i
h
(
x
)
n
h
i
p
e
r
b

l
i
c
o
q
r
t
R
a
i
z
c
u
a
d
a
d
a
t
a
n
(
x
)
T
n
g
e
n
t
e
h
(
x
)a hiperblica
Funciones matemticas

Nmeros complejos
Solve

es una funcin que resuelve sistemas del tipo


x^3+2*x^2+3*x+x+5=0
El

nmero imaginario puro se representa


por i o j
Cualquier nmero seguido de i representa un nmero
imaginario

Hay

funciones especficas para su manejo:

real(x)
imag(x)
conj(x)
angle(x),, etc.

Funciones internas de MATLAB


b = sqrt(x);
Una de las grandes ventajas de MATLAB es que los argumentos de la
funcin, por lo general, pueden ser escalares o matrices. En el ejemplo, si
x es un escalar, se regresa un resultado escalar. Por tanto, el enunciado

>>x = 9;
>>b =sqrt(x)
regresa un escalar: 3
Sin embargo, la funcin raz cuadrada, s'qrt, tambin puede aceptar
matrices como entrada. En este caso, se calcula la raz cuadrada de cada
elemento, de modo que regresa:

>>x = [4, 9, 16];


>>b = sqrt(x)
>>b = 2 3 4

Algunas funciones requieren mltiples entradas. Por ejemplo, la funcin


residuo (remainder), rem, requiere dos entradas: un dividendo y un
divisor.
Esto se representa como rem(x,y), de modo que:
>> rem( 10,3)
calcula el residuo de 10 dividido entre 3:
ans =
1
>> rem(180,7)
ans =
5
>> rem(20,5)
ans =
0

La funcin size es un ejemplo de una funcin que regresa dos salidas.


Determina el nmero de filas y columnas en una matriz. Por tanto,
>>d =[1, 2, 3 ; 4, 5, 6] ;
>>f =size(d)
regresa la matriz resultante 1 X 2
f=
2 3
Tambin puede asignar nombres de variable a cada una de las
respuestas al representar el lado izquierdo del enunciado de asignacin
como una matriz. Por ejemplo,
>>[x,y] = size (d)
produce
x=
2
y=
3

Tambin puede crear expresiones complicadas mediante funciones


anidadas (nesting).Por ejemplo:
>> g=sqrt(sin(x))
g=
0.9536
Obs: a x se le asign un valor de 2.
>> a=sin(x);
>> g= sqrt(a)
g=
0.9536

Uso de la ayuda HELP


MATLAB incluye extensas herramientas de ayuda, lo que es especialmente til
para entender cmo usar las funciones.
Existen dos formas de obtener ayuda desde el interior de MATLAB: una
funcin de ayuda de lnea de comando (>> help) y un conjunto de
documentos HTML disponibles al seleccionar Help de la barra de men o al
usar la tecla de funcin F1,

Funciones matemticas elementales

Las funciones
matemticas elementales
incluyen logaritmos,
exponenciales, valor
absoluto, funciones de
redondeo y funciones que
se usan en matemticas
discretas, aceptan un
escalar o una matriz de x
valores.

Funciones de redondeo
MATLAB contiene funciones para algunas diferentes tcnicas de redondeo .

>> -5/0.52
ans =
-9.6154
>> fix(5/0.52 )
ans =
9
>> fix(-5/0.52 )
ans =
-9

Matemticas discretas

MATLAB incluye funciones para factorizar nmeros, encontrar


denominadores y mltiplos comunes, calcular factoriales y explorar
nmeros primos . Todas estas funciones requieren escalares enteros como
entrada.
Adems, MATLAB incluye la funcin rats, que expresa un nmero punto
flotante como un nmero racional, esto es, una fraccin.

Matemticas
discretas

Funciones trigonomtricas
MATLAB incluye un conjunto completo de las funciones trigonomtricas
estndar y las funciones trigonomtricas hiperblicas. La mayora de estas
funciones suponen que los ngulos se expresan en radianes.

* Arrays simples
* Direccionamiento de arrays
* Construccin de arrays
* Funciones con arrays
* Matemticas de arrays con escalares
* Matemticas entre arrays
* Orientacin del array
* Resumen de operaciones con arrays

* Para crear un array en Matlab:


* Comienza por un corchete de apertura [
* Los valores separados por espacios o por comas
* Finaliza con un corchete de cierre ]

* Ejemplo:
*x

= [23 45 12 2+3i

-2i]

* Para acceder a elementos individuales se


utilizan subndices entre parntesis

* Ejemplo:
*
*

x = [1 2 3;4 5 6;7 8 9]
x(2,3)
ans =
6

x(6)
ans =
8

*Para direccionar un bloque de elementos, Matlab


proporciona la notacin de dos puntos:
primero:incremento:ltimo
*Ejemplo:

* x = [1
*x(2:6)

2 3;4 5 6;7 8 9]

ans =

4 7 2 5 8
*x(2:2:6)
ans =

4 2 8

*Para direccionar elementos aislados se utiliza un


array de ndices
*Ejemplo:
* x=[23 45 12 2+3i -2i 32 12];
x([4 1 2])
ans =
2+3i 23 45
x([1 4 7])
ans =
23 2+3i 12

*Existen varias formas de crear arrays


*Notacin de dos puntos
*Funcin linspace
linspace(primero,ltimo,nvalores)
va=linspace(0,8,6),ve=linspace(10,-0.5,5)
va = 0

1.6000

ve = 10.0000

3.2000
7.3750

4.8000
4.7500

6.4000
2.1250

8.0000

-0.5000

*Funcin logspace
logspace(expo1,expo2,nvalores)
logspace(0,5,6)
ans =
1
100000

10

100

1000

Evaluar los resultados en Matlab


v1=linspace(0,6,4),
v2=logspace(0,6,4)

10000

*Las funciones se aplican a los elementos individuales


de los arrays

*Ejemplo:
*
*

x = [0 pi/4 pi/2 3*pi/4 pi]


sin(x)
ans =
0

0.7071

1.0000

0.7071 0.0000

cos(x)
ans =
1.0000 0.7071 0.0000 -0.7071 -1.0000

*Establece una distancia o espaciado constante entre los


elementos de un vector.

*Ejemplo:
*
*x

x= 0:30:360
=

0
270

30
300

60
330

90
120
360

150

180

210

240

Evaluar en Matlab

* sind(x)
* >>plot(sind(x))

% comando para crear grficos

Evaluar en Matlab

x1=0:2:360 ; sind(x1);

>>plot(sind(x1))
>>plot(sind(x1)+1)
Evaluar en Matlab
x1=0:2:360 ; y1=sind(x1);
y2=cosd(x1); plot(x1,y1,x1,y2)

*La suma, resta, multiplicacin y divisin por un

escalar simplemente aplica la operacin a todos los


elementos del array

*Ejemplo:
*>> x=
m1 =
-3

[1 2 3 4 5 6]; m1=4*x-7
1

13

17

Operaciones entre arrays

Cuando dos arrays tienen la misma longitud, la


suma y la resta se aplican sobre la base de
elemento a elemento

Para multiplicar o dividir dos arrays elemento a


elemento se utilizan los operandos:

.* , ./ y .\

ejemplo:

(a./b=b.\a)

Para la potencia elemento a elemento se


utiliza .^

a
+
c
=
[
a
1
+
c
a
2
+
c
.
.
.
a
n
+
c
]
S
u
m
a
c
o
n
u
n
e
s
c
a
l
a
r
a
*
c
=
[
a
1
*
c
a
2
*
c
.
.
.
a
n
*
c
]
M
u
l
t
i
p
l
i
c
a
c
i

n
p
o
r
u
n
sM
eS
c
a
a
r
a
+
b
=
[
a
1
+
b
1
a
2
+
b
2
.
.
.
a
n
+
b
n
]
uu
m
a
d
e
a
r
a
y
s
a
.
*
b
=
[
a
1
*
b
1
,
a
2
*
b
2
.
.
.
l
t
i
p
l
i
c
a
c
i

n
d
e
a
r
a
y
s
a
n
*
b
n
]
.
/
=
[
a
1
/
b
1
a
2
/
b
2
.
.
.
a
n
/
b
n
]
a
b
id
D
v
i
s
i

n
p
o
r
l
a
d
e
r
e
c
h
a
e
a
r
a
y
s
a
.
\
b
=
[
a
1
\
b
1
a
2
\
b
2
.
.
.
a
n
\
b
n
]
iiP
D
v
i
s
i

n
p
o
r
l
a
zo
qtu
e
r
d
a
d
e
r
a
y
s
.
^
c
=
[
a
1
^
c
a
2
^
c
.
.
.
a
n
^
c
]
enciasdearays a
c
a
c
^
a
1
c
^
a
2
c
^
a
n
.
^
=
[
.
.
.
]
a
b=[
a
1
^
b
1a
2
^
b
2.
n
^
b
n
]
.
^
.
.a

*a=[a1

... an], b=[b1 ... bn], c = escalar

lgebra matricial
lgebra

matricial

Manipulacin

Matrices

matricial

especiales

lgebra matricial

Matlab originariamente fue diseado para simplificar el


clculo del lgebra lineal

Para definir una matriz se distinguen las filas por ; o se


introduce enter
A. es la matriz transpuesta de A
A es la traspuesta conjugada de A
det(A) calcula el determinante de A
inv(A) es la inversa de A
rank(A) devuelve el rango de la matriz A
norm(A) calcula la normal de A
poly(A) obtiene el polinomio caracterstico de la matriz A

lgebra matricial
>> C=[3 6 9 ; 12 15 17]
C=
3
6
9
12 15 17
>> size(C)
ans =
2
3
Ejecutamos el siguiente comando whos
>> whos
Name
Size
Bytes Class
Attributes
A
B
C

3x3
3x3
2x3

72 double
72 double
48 double

lgebra matricial
>>A = [ 1 2 3; 4 5 6 ; 7 8 9]
A =
1
2
3
4
5
6
7
8
9
>> B = [2 4 6 ; 8 10 12 ; 14 16 18]
B =
2
4
6
8
10
12
14
16
18
size(A)
ans =
3
3
(indica que tiene 3 filas y 3 columnas

Podemos trabajar con diferentes partes de una matriz


A
A ==
1 22 33
4 55 66
7 88 99
>>A(1:2,3:4)
Index exceeds matrix dimensions.
>>A(1:2,2:3)
ans =
2
3
5
6
>> A(1:2,2:3)
ans =
2 4
3 5

% indica transposicin

>>D = [ [1 2 3] [2 4 7] [3 5 8]]
D=
1
2
3

2
4
7

3
5
8

*Ejemplo: utilizando comandos ones y zeros crear una matriz


4x5 en la cual las 2 primeras filas sean ceros y las dos
siguientes unos.
Sol:
>> R(1:2,:)= zeros(2,5)
>> R(3:4,:)=ones(2,5)

*Crear una matriz 6x6 en la cual las 2 filas centrales junto a


las 2 columnas centrales sean unos, siendo el resto ceros.
Sol:
>> AR= zeros(6,6)
>> AR(3:4,:)=ones(2,6)
AR(:,3:4)=ones(6,2)

Manipulacin matricial
Los

elementos de una matriz se indican


con su fila y columna: A(columna, fila)
Con los dos puntos (:) se puede
seleccionar toda la fila o columna:
A(:,1), B(2,:)

find(x) transforma una matriz en una

sucesin de valores del tipo columna.


size(x) devuelve el tamao en filas y
columnas.

Matrices especiales
Matriz de ceros: zeros(n,m)
Matriz de unos: ones(n,m)
Matriz aleatoria con distribucin uniforme
(entre 0 y 1): rand(n,m)
Matriz aleatoria con distribucin normal
(media 0 y varianza 1): randn(n,m)
Matriz identidad: eye(n)

Vous aimerez peut-être aussi