You are on page 1of 23

UNIVERSIDAD TECNOLGICA NACIONAL

FACULTAD REGIONAL BUENOS AIRES


TEORA DE LOS CIRCUITOS I













Introduccin a la Programacin con
Matlab















MSc. Ing. Franco Martin Pessana
Teora de los Circuitos I
Universidad Tecnolgica Nacional
Facultad Regional Buenos Aires. Departamento de Electrnica


MSc. Ing. Franco Martin Pessana
Facultad Regional Buenos Aires
E-mail: franco.pessana@gmail.com
Pg. 1
Indice
INDICE ........................................................................................................................................................ 1
INTRODUCCIN A LA PROGRAMACIN CON MATLAB

.......................................................... 3
INTRODUCCIN ...................................................................................................................................... 3
INTRODUCIENDO MATRICES ............................................................................................................. 3
LISTA EXPLCITA ........................................................................................................................................ 3
Ejemplos: .............................................................................................................................................. 3
GENERADA POR UNA FUNCIN MATLAB

............................................................................................... 4
Ejemplo: ............................................................................................................................................... 4
Nota: ..................................................................................................................................................... 4
Ejercicio ............................................................................................................................................... 4
LEYENDO DESDE UN ARCHIVO ......................................................................................................... 5
EJEMPLO: .................................................................................................................................................. 5
ELEMENTOS DE LAS MATRICES ....................................................................................................... 5
EJEMPLOS: ................................................................................................................................................. 5
Nota: ..................................................................................................................................................... 6
NMEROS COMPLEJOS ........................................................................................................................ 6
EJEMPLOS: ................................................................................................................................................. 6
OPERACIONES CON MATRICES ......................................................................................................... 6
A) TRANSPOSICIN DE MATRICES .............................................................................................................. 6
Ejemplos: .............................................................................................................................................. 6
B) SUMA Y RESTA ...................................................................................................................................... 7
Ejemplos: .............................................................................................................................................. 7
C) MULTIPLICACIN .................................................................................................................................. 8
Ejemplos: .............................................................................................................................................. 8
Nota: ..................................................................................................................................................... 9
D) DIVISIN ............................................................................................................................................... 9
E) POTENCIA .............................................................................................................................................. 9
F) DETERMINANTE ..................................................................................................................................... 9
OPERACIONES CON VECTORES ........................................................................................................ 9
A) SUMA Y RESTA...................................................................................................................................... 9
B) MULTIPLICACIN Y DIVISIN ................................................................................................................ 9
C) POTENCIA ............................................................................................................................................ 10
D) FUNCIONES ELEMENTALES .................................................................................................................. 10
Ejemplo: ............................................................................................................................................. 10
MANIPULACIN DE VECTORES Y MATRICES ............................................................................ 10
A) GENERANDO VECTORES USANDO EL OPERADOR : (DOS PUNTOS) ................................................... 10
Ejemplo: ............................................................................................................................................. 11
B) SUBNDICES ......................................................................................................................................... 11
Ejemplo_1: ......................................................................................................................................... 11
Ejemplo_2 ........................................................................................................................................... 11
C) CONCATENACIN Y COMBINACIN DE VECTORES Y MATRICES ........................................................... 12
Ejemplos: ............................................................................................................................................ 12
MATRICES .............................................................................................................................................. 13
Teora de los Circuitos I
Universidad Tecnolgica Nacional
Facultad Regional Buenos Aires. Departamento de Electrnica


MSc. Ing. Franco Martin Pessana
Facultad Regional Buenos Aires
E-mail: franco.pessana@gmail.com
Pg. 2
A) MATRIZ DE CEROS .............................................................................................................................. 13



B) MATRIZ DE UNOS ................................................................................................................................ 13
C) MATRIZ DE NMEROS ALEATORIOS CON DISTRIBUCIN UNIFORME ENTRE 0 Y 1 .................................. 13
D) MATRIZ DE NMEROS ALEATORIOS CON DISTRIBUCIN GAUSSIANA CON MEDIA CERO Y VARIANZA 1 13
E) MATRIZ IDENTIDAD (CON UNOS EN LA DIAGONAL PRINCIPAL Y CEROS EL OTRO LUGAR) ...................... 14
USO DEL ; (PUNTO Y COMA) LUEGO DE UNA SENTENCIA ................................................ 14
EJEMPLO: ................................................................................................................................................ 14
CONTROL DEL FLUJO EN UN PROGRAMA ................................................................................... 14
A) LAZOS FOR ........................................................................................................................................ 14
B) LAZOS WHILE ................................................................................................................................... 14
C) DECISIN IF ........................................................................................................................................ 15
GRFICOS ............................................................................................................................................... 16
A) GRFICOS X-Y .................................................................................................................................... 16
Ejemplo: ............................................................................................................................................. 16
B) GRFICOS TRIDIMENSIONALES ............................................................................................................ 17
Ejemplo: ............................................................................................................................................. 17
.................................................................................................................................................................... 18
GENERANDO FUNCIONES .................................................................................................................. 18
ACTIVIDADES ........................................................................................................................................ 18
LISTADO DE FUNCIONES BSICAS DE MATLAB

...................................................................... 20
FUNCIONES MATEMTICAS ELEMENTALES .............................................................................................. 20
Trigonomtricas: ................................................................................................................................ 20
Exponenciales: ................................................................................................................................... 20
Complejas: .......................................................................................................................................... 20
MANIPULACIN ELEMENTAL DE MATRICES ............................................................................................ 21
Matrices elementales .......................................................................................................................... 21
Variables y constantes especiales: ..................................................................................................... 21
Tiempos y fechas: ............................................................................................................................... 21
Manipulacin de matrices: ................................................................................................................. 21

Teora de los Circuitos I
Universidad Tecnolgica Nacional
Facultad Regional Buenos Aires. Departamento de Electrnica


MSc. Ing. Franco Martin Pessana
Facultad Regional Buenos Aires
E-mail: franco.pessana@gmail.com
Pg. 3
INTRODUCCIN A LA PROGRAMACIN CON MATLAB



Introduccin

El nombre MATLAB

proviene del ingls Matrix Laboratory. Es un sistema


interactivo y un lenguaje de programacin para realizar clculos cientficos y tcnicos
generales. Su estructura de datos bsica es una matriz (de elementos complejos) que no requiere
dimensionamiento. Esto permite resolver problemas numricos en una fraccin del tiempo que
lleva escribir un programa en un lenguaje como Pascal, Basic, C o C++. Ms an, las
soluciones a esos problemas se expresan casi exactamente como si estuvieran escritas
matemticamente. Por otro lado la versatilidad grfica de MATLAB

, lo convierte en una
herramienta de gran utilidad en diversas reas de investigacin tales como el Procesamiento
Digital de Seales e Imgenes.
A continuacin, se intentar dar una idea general de la sintaxis bsica y el manejo de
algunas funciones de MATLAB

en forma resumida. Para mayores detalles sobre la sintaxis de


instrucciones ms avanzadas y/o de otras funciones debemos remitirnos al Manual de Usuario
o al men de ayuda de MATLAB

, que por cierto resulta de gran ayuda an para los ms


experimentados. Para pedir ayuda sobre un comando MATLAB

se lo debe tipear de la
siguiente forma:

>> help comando;

MATLAB

trabaja esencialmente con un solo tipo de objetos: matrices numricas


rectangulares con elementos complejos. En algunas situaciones, las matrices de [1,1] (escalares)
tienen un significado especial. De la misma forma sucede con las matrices de una fila [1,n] o de
una columna [n,1] que son vectores. Las operaciones en MATLAB

intentan ser naturales en el


sentido matricial.
Empecemos tratando con la forma en que se ingresan los datos (las matrices) en
MATLAB

. Si Ud. nunca trabaj con este software, le ser til seguir los ejemplos propuestos
a continuacin paso a paso con MATLAB

.

Introduciendo Matrices

Existen diversas formas de introducir una matriz en MATLAB

:

Lista explcita

Las listas se encierran entre corchetes y cada fila de la matriz se separa mediante punto
y coma. Los elementos de cada fila se separan por medio de espacios o comas.
Ejemplos:

>> A = [1 2 3; 4 5 6; 7 8 9]
A =
1 2 3
Teora de los Circuitos I
Universidad Tecnolgica Nacional
Facultad Regional Buenos Aires. Departamento de Electrnica


MSc. Ing. Franco Martin Pessana
Facultad Regional Buenos Aires
E-mail: franco.pessana@gmail.com
Pg. 4
4 5 6
7 8 9


>> x = [1 3 7 4]
x =
1 3 7 4

Generada por una funcin MATLAB



La mayor parte de la potencia de MATLAB

se debe a su extenso conjunto de


funciones disponibles. Algunas de estas funciones estn incorporadas o built-in al procesador
MATLAB

. Otras estn disponibles a travs de libreras de archivos externos y algunas son


aadidas por los propios usuarios. Muchas funciones de MATLAB

devuelven como resultado


una matriz. Estas funciones son otro medio de cargar en memoria una matriz de datos.
Ejemplo:

La funcin MATLAB

ones(N) genera una matriz de unos de dimensin [N,N]



>> B = ones(3)
B =
1 1 1
1 1 1
1 1 1
Nota:
Las categoras generales de las funciones matemticas disponibles en MATLAB

incluyen:

Matemtica elemental
Funciones especiales
Matrices elementales
Matrices especiales
Factorizacin y descomposicin de matrices
Anlisis de datos
Polinomios
Solucin de ecuaciones diferenciales
Ecuaciones no lineales y optimizacin
Integracin numrica
Procesamiento de Seales
Procesamiento de Imgenes


Las funciones MATLAB

pueden necesitar un nmero variable de parmetros de


entrada.
Aunque en el caso general devuelven un solo argumento, existen funciones que
devuelven ms de un resultado.

Ejercicio

Teora de los Circuitos I
Universidad Tecnolgica Nacional
Facultad Regional Buenos Aires. Departamento de Electrnica


MSc. Ing. Franco Martin Pessana
Facultad Regional Buenos Aires
E-mail: franco.pessana@gmail.com
Pg. 5
Analice las siguientes funciones MATLAB

: log(z), atan2(x,y), roots(x), [y,i]=max(x) y


[y,i]=min(x).


Leyendo desde un archivo

MATLAB

permite el manejo de archivos tanto de programas como de datos. Los datos


en general son almacenados en formato ASCII y pueden editarse fcilmente. La extensin para
los archivos de datos de MATLAB

es .mat.
Ejemplo:

>> load A

A se carga con los datos guardados en el archivo A.mat y se dimensiona
automticamente.

Elementos de las matrices

Los elementos de las matrices pueden ser cualquier expresin compleja. Las
expresiones se componen de operadores y otros caracteres especiales, desde funciones hasta
nombres de variables. La evaluacin de estas expresiones produce una matriz, que se muestra
en la pantalla y se asigna a la variable para su futuro uso.

>> variable = expresin_simblica

variable =
resultado

Si el nombre de la variable y el signo = son omitidos, una variable de nombre ans
(proveniente del ingls answer) se crea automticamente.

>> expresin
ans =
resultado

Cada elemento de una matriz se referencia haciendo uso de la fila y columna
correspondiente a dicho elemento de la forma x(fila,columna). El resultado de esta operacin
es por lo tanto un escalar. El tamao de las matrices puede variar una vez que estn definidas,
pero el redimensionamiento se realiza automticamernte para acomodar los nuevos elementos y
los elementos faltantes se completan con ceros.
Ejemplos:

>> x = [-1/3 sin(pi/2) 10*4^2]
x =
-0.3333 1.0000 160.0000

>> x(2)
ans =
1.0000

>> x(5) = pi
Teora de los Circuitos I
Universidad Tecnolgica Nacional
Facultad Regional Buenos Aires. Departamento de Electrnica


MSc. Ing. Franco Martin Pessana
Facultad Regional Buenos Aires
E-mail: franco.pessana@gmail.com
Pg. 6
x =
-0.3333 1.0000 160.0000 0.0000 3.1416



Observe que x(4) = 0
Nota:

MATLAB

es case-sensitive, es decir, distingue entre maysculas y minsculas. Por


lo tanto A y a no son la misma variable. Todos los nombres de funciones deben estar en
minsculas. Sin embargo si esto lo perturba mucho, puede usar el comando casesen, que hace
que MATLAB

no distinga entre maysculas y minsculas.


Nmeros Complejos

La unidad imaginaria es referenciada por las funciones mediante las letras i o j
indistintamente.
Ejemplos:

>> z = 3 + 4 * i
z =
3.0000 + 4.0000i

>> z = 3 + 4 *j
z =
3.0000 + 4.0000i

Para escribir el nmero complejo z re
j
=

podemos utilizar la siguiente lnea de
comando:

>> z = r*exp(j*phi);

Recuerde:
Los elementos de las matrices pueden ser nmeros complejos.

Operaciones con Matrices
a) Transposicin de Matrices

>> A = B';

Si A R
NxM
, el operador ' calcula la traspuesta de la matriz A, pero si A C
NxM
el
operador de transposicin calcula la traspuesta conjugada de la matriz A.
Ejemplos:

>> A = [1 5 ; 7 3 ; 2 4]
A =
1 5
Teora de los Circuitos I
Universidad Tecnolgica Nacional
Facultad Regional Buenos Aires. Departamento de Electrnica


MSc. Ing. Franco Martin Pessana
Facultad Regional Buenos Aires
E-mail: franco.pessana@gmail.com
Pg. 7
7 3
2 4

>> B = A'

B =
1 7 2
5 3 4

>> C = [1+2*i 3+4*i ; 2-i 4-3*i]
C =
1+2i 3+4i
2-i 4-3i

>> D = C'
D =
1-2i 2+i
3-4i 4+3i

b) Suma y Resta

>> C = A + B

>> C = A - B

Para poder definir la suma y la resta de matrices es necesario restringir las dimensiones
de las matrices intervinientes. Slo si stas son de igual dimensin es posible realizar la suma,
obtenindose como resultado otra matriz de la misma dimensin. Pero MATLAB

admite una
excepcin cuando se le quiere restar o sumar un escalar a todos los elementos de una matriz:
matemticamente se expresa como { } B i j A i j C A C yC C
NxM
( , ) ( , ) , = + y se realizara
sumando a la matriz A una matriz V=C*ones(size(A)) (donde C es una matriz constante de
igual dimensin que la matriz A y en MATLAB

se expresa como una simple suma o resta.


Ejemplos:

>> A = [1 2 ; 3 2]
A =
1 2
3 2

>> B = [3 1; 0 1]
B =
3 1
0 1

>> C = A + B - 4
C =
0 -1
-1 -1

Observe que la expresin anterior podra hacerse de la siguiente manera (mas elaborada) :

>> C = A + B - 4 * ones(size(A))
Teora de los Circuitos I
Universidad Tecnolgica Nacional
Facultad Regional Buenos Aires. Departamento de Electrnica


MSc. Ing. Franco Martin Pessana
Facultad Regional Buenos Aires
E-mail: franco.pessana@gmail.com
Pg. 8
C =
0 -1
-1 -1

El ingreso de una matriz compleja puede hacerse de dos formas:

>> A = [1 2 ; 3 4] + i*[5 6 ; 7 8];

es equivalente a

>> A = [1+i*5 2+i*6 ; 3+i*7 4+i*8];
c) Multiplicacin

>> C = A*B

Nuevamente debemos poner condiciones sobre las dimensiones de las matrices
intervinientes para poder definir la multiplicacin de las mismas:
V A B A C B C
MxJ MxN NxJ
= * y .
Adems est definida la multiplicacin de una matriz por un escalar:
V m A A C m C
MxN MxN
= x y ,
Ejemplos:

>> A = [1 2 ; 2 3 ; 3 4]
A =
1 2
2 3
3 4

>> B = [2 -1 ; 0 3]
B =
2 -1
0 3

>> C = 2*A*B
C =
4 10
8 14
12 18

Entre vectores se define el producto interno y el producto externo:

>> x = [1 2 3]
>> y = [1 0 1]

El producto interno (producto escalar) entre vectores da como resultado un escalar:

>> z = x*y'
z =
4
El producto externo de dos vectores da como resultado una matriz:


>> z = y'*x
Teora de los Circuitos I
Universidad Tecnolgica Nacional
Facultad Regional Buenos Aires. Departamento de Electrnica


MSc. Ing. Franco Martin Pessana
Facultad Regional Buenos Aires
E-mail: franco.pessana@gmail.com
Pg. 9
z =
1 2 3
0 0 0
1 2 3

Nota:
Recuerde que la multiplicacin de matrices no es conmutativa.

d) Divisin

>> X = A/B

>> X = A\B

Aunque se usa el smbolo de divisin, todos sabemos que la divisin de matrices no
est definida. Las lneas anteriores se interpretan como:
A/B implementa la operacin AB
-1
que es la solucin de la ecuacin matricial X*B=A.
A\B implementa la operacin A
-1
B que es la solucin de la ecuacin matricial A*X=B.

e) Potencia

>> X = A^ p

La potencia de matrices (al ser una repeticin de multiplicacin de matrices) requiere
que la matriz interviniente sea cuadrada y que p sea un escalar.

f) Determinante

>> x = det (A)

El determinante de una matriz A se define para matrices cuadradas.

Operaciones con Vectores

a) Suma y Resta

Igual que con matrices

b) Multiplicacin y Divisin

>> z = x .* y

>> z = x ./ y

Teora de los Circuitos I
Universidad Tecnolgica Nacional
Facultad Regional Buenos Aires. Departamento de Electrnica


MSc. Ing. Franco Martin Pessana
Facultad Regional Buenos Aires
E-mail: franco.pessana@gmail.com
Pg. 10
La multiplicacin y divisin con vectores se define elemento a elemento:

z x y z z x y
i i i i
= = = .* { / * }
z x y z z x y
i i i i
= = = ./ { / / }


Una operacin muy usada es la norma de un vector x: x , que en MATLAB

se
implementa con la siguiente lnea:

>> norma_x = sqrt ( x .*x)

c) Potencia

La potencia tambin se define componente a componente.

>> z = x .^ y

donde:
z x y z z x y
i i i i
= = = . ^ { / ^ }

Si y es un escalar, todas las componentes del vector x son elevadas a la misma potencia.

d) Funciones elementales

MATLAB

posee integradas un gran nmero de funciones tales como:



Funciones trigonomtricas
Funciones Hiperblicas
Otras funciones (logaritmos, valor absoluto, parte real, etc.)
Ejemplo:

>> t = [1 2 3 4 5];

>> x = sin (pi * t / 5)
x =
0.5878 0.9511 0.9511 0.5878 0.0000

Observe que MATLAB

no necesita de bucles para realizar este tipo de clculos. Las matrices


son el tipo de datos por defecto que MATLAB

maneja en todas sus funciones.



Manipulacin de Vectores y Matrices
a) Generando vectores usando el operador : (dos puntos)

El operador : se utiliza para especificar un rango de variacin. El uso es el siguiente:

Teora de los Circuitos I
Universidad Tecnolgica Nacional
Facultad Regional Buenos Aires. Departamento de Electrnica


MSc. Ing. Franco Martin Pessana
Facultad Regional Buenos Aires
E-mail: franco.pessana@gmail.com
Pg. 11
>> valor inicial : valor final incremento = 1
>> valor inicial : incremento : valor final
Ejemplo:

>> x = 1: 5

x =
1 2 3 4 5

>> y = 0 : pi/4 : pi
y =
0 0.7854 1.5708 2.3562 3.1416
b) Subndices

Pueden referenciarse elementos usando la fila y la columna en que se encuentran dentro
de la matriz.
Ejemplo_1:

>> A = [1 2 3 ; 4 5 6 ; 7 8 9]
A =
1 2 3
4 5 6
7 8 9

>> A(3,3) = A(1,3) + A(3,1)
A =
1 2 3
4 5 6
7 8 10

Se puede adems usar el operador : para especificar zonas o rangos dentro de una matriz o
un vector.
Ejemplo_2

Para tomar un rango dentro de un vector:

>> v = [1:10:1000]
v =
1 11 21 31 ... 981 991

>> v(10:13)
ans =
91 101 111 121

Para tomar una submatriz de una matriz:

>> A = [1 2 3 ; 4 5 6 ; 7 8 9 ; 10 11 12]
A =
1 2 3
Teora de los Circuitos I
Universidad Tecnolgica Nacional
Facultad Regional Buenos Aires. Departamento de Electrnica


MSc. Ing. Franco Martin Pessana
Facultad Regional Buenos Aires
E-mail: franco.pessana@gmail.com
Pg. 12
4 5 6
7 8 9
10 11 12

>> A(2:3 , 1:3)
ans =
4 5 6
7 8 9


>> A(3:4,:)
ans =
7 8 9
10 11 12

Observe que los : solos significan todo el rango posible de valores.
Para invertir el orden de los elementos de un vector:
>> A = 1:10
A =
1 2 3 4 5 6 7 8 9 10

>> B = A(10:-1:1)
B =
10 9 8 7 6 5 4 3 2 1

c) Concatenacin y combinacin de vectores y matrices

Los elementos de una matriz pueden ser a su vez matrices y/o vectores y los elementos
de un vector pueden ser vectores. Esto permite gran flexibilidad para la creacin de nuevos
datos a partir de datos ya almacenados en memoria. Hay que tener en cuenta sin embargo, que
el nmero de filas y/o columnas en la combinacin debe ser coherente.
Ejemplos:

Creacin de una matriz a partir de vectores conocidos.

>> x = [1: 5];
>> y = [7 : -1 : 3];
>> A = [x ; y ; x-y]
A =
1 2 3 4 5
7 6 5 4 3
-6 -4 -2 0 2

Observe que como cada vector es una fila de la matriz se los separa con ; (separador de
filas).

Creacin de una matriz a partir de matrices y vectores conocidos.

>> x = [1 : 3]
x =
1 2 3

Teora de los Circuitos I
Universidad Tecnolgica Nacional
Facultad Regional Buenos Aires. Departamento de Electrnica


MSc. Ing. Franco Martin Pessana
Facultad Regional Buenos Aires
E-mail: franco.pessana@gmail.com
Pg. 13
>> A = [x; x+1; x+2]
A =
1 2 3
2 3 4
3 4 5

>> y = [0 0 0]
y =
0 0 0

>> B = [A y' ; y 1]


B =
1 2 3 0
2 3 4 0
5 6 7 0
0 0 0 1


Observe que la concatenacin dentro de una fila se realiza separando a los elementos
mediante espacios. En el caso A y', se est concatenando una columna a una matriz, pero
siempre se mantiene la coherencia entre las dimensiones de los objetos intervinientes.
Concatenacin de vectores

>> x = [1: 5];
>> y = [6: 9];
>> z = [x y x(5:-2:1) y-5]
z =
1 2 3 4 5 6 7 8 9 5 3
1 1 2 3 4

Matrices
a) Matriz de Ceros

>> A = zeros (n,m);
b) Matriz de Unos

>> A = ones (n,m);
c) Matriz de nmeros aleatorios con distribucin uniforme entre 0 y 1

>> A = rand (n,m);
d) Matriz de nmeros aleatorios con distribucin Gaussiana con media cero y
varianza 1

>> A = randn (n,m);

Teora de los Circuitos I
Universidad Tecnolgica Nacional
Facultad Regional Buenos Aires. Departamento de Electrnica


MSc. Ing. Franco Martin Pessana
Facultad Regional Buenos Aires
E-mail: franco.pessana@gmail.com
Pg. 14
e) Matriz identidad (con unos en la diagonal principal y ceros el otro lugar)

>> A = eye (n,m);

Nota: Si se quiere generar una matriz cuadrada (es decir n=m) slo basta especificar una sola
dimensin. Por ejemplo para generar una matriz cuadrada de nxn de unos se usa:

>> ones(n);

Si se quieren generar vectores fila o columna, uno de los parmetros m o n deber ser
igual a 1. Si ambos parmetros son iguales a 1 m=n=1 , entonces se devuelve un escalar.
Uso del ; (punto y coma) luego de una sentencia

El punto y coma al final de un comando indica al intrprete de MATLAB

que no debe
visualizar los resultados que surgen de ese comando. Esto es til y conveniente cuando se
trabaja con grandes matrices o vectores y no se desea visualizar los resultados intermedios.
Ejemplo:

>> x = randn (10000,1)
x =
0.9876
0.8575
0.1234 % 10000 elementos del vector
....
0.9321

Esto torna pesado y lento el uso del intrprete MATLAB



x = randn (10000,1); No se visualiza nada.

Control del Flujo en un Programa

MATLAB

como todo lenguaje estructurado, posee instrucciones de control del flujo en la
ejecucin de un programa.

a) Lazos FOR
for I = 1:N,
for J = 1:N,
A(I,J) = 1/(I+J-1);
end
end
b) Lazos WHILE
A=ones(5);
E = 0*A; F = E + EYE(E); N = 1;
while norm(E+F-E,1) > 0,
E = E + F;
Teora de los Circuitos I
Universidad Tecnolgica Nacional
Facultad Regional Buenos Aires. Departamento de Electrnica


MSc. Ing. Franco Martin Pessana
Facultad Regional Buenos Aires
E-mail: franco.pessana@gmail.com
Pg. 15
F = A*F/N;
N = N + 1;
end
c) Decisin IF
if I == J
A(I,J) = 2;
elseif ABS(I-J) == 1
A(I,J) = -1;
else
A(I,J) = 0;
end
Teora de los Circuitos I
Universidad Tecnolgica Nacional
Facultad Regional Buenos Aires. Departamento de Electrnica


MSc. Ing. Franco Martin Pessana
Facultad Regional Buenos Aires
E-mail: franco.pessana@gmail.com
Pg. 16
Grficos

Los datos cientficos e ingenieriles son examinados grficamente a travs de
MATLAB

gracias a su poderoso conjunto de instrucciones que permiten el manejo y diseo


de los mismos.
a) Grficos X-Y

El comando plot crea grficos X-Y con escalas lineales. Para el manejo de escalas
logartmicas se usar: loglog, semilogx, semilogy, y para grficos en coordenadas polares el
comando polar.
Si Y es un vector de datos, plot(Y) genera un grfico lineal de elementos de Y versus el
ndice de los elementos de Y. Por ejemplo, para graficar los datos {0, .48, .841, .91, .6, .14}, los
cargamos en un vector y luego ejecutamos plot:

>> Y = [0 .48 .84 1 .91 .6 .14];
>> plot (Y);

Esto se ver en su pantalla como:
Observe que los datos son auto escalados y se dibujan automticamente los ejes
correspondientes. A este grfico pueden agregarse algunas leyendas, tales como las etiquetas de
los ejes y el ttulo del grfico. Adems puede adicionarse una grilla.

>> title (Esto es una prueba)
>> xlabel (eje x)
>> ylabel (eje y)
>> grid

La funcin gtext('texto') permite colocar un cartel posicionndose con el mouse o el
teclado sobre el grfico. Esto ser til para lograr mejores presentaciones de los datos.
Si X e Y son vectores de la misma longitud, el comando plot(X,Y) dibuja un grfico X-
Y de los elementos de X versus los de Y.
Ejemplo:
Para graficar dos periodos de la funcin seno, con los ejes correctamente marcados,

Teora de los Circuitos I
Universidad Tecnolgica Nacional
Facultad Regional Buenos Aires. Departamento de Electrnica


MSc. Ing. Franco Martin Pessana
Facultad Regional Buenos Aires
E-mail: franco.pessana@gmail.com
Pg. 17
primero se genera el vector de tiempo que abarque el intervalo [0,2p], luego se calcula el seno
de cada uno de estos valores y finalmente se grafica un vector en funcin del otro.

>> t = 0:.05:4*pi;
>> y = sin (t);
>> xlabel(t) ;
>> ylabel (Y(t)) ;
>> plot (t,y)

Esto resulta en:
Hay dos formas de graficar varias funciones en un solo grfico. La ms fcil es darle a
plot varios pares de argumentos de la forma:

>> plot (x1,y1,x2,y2,...,xn,yn)

Esto permite dibujar en el mismo grfico vectores de diferente longitud y cada lnea se dibuja
automticamente con un color distinto.
Si desea obtener ms informacin acerca del comando plot, consulte el help de MATLAB

.

b) Grficos tridimensionales

La sentencia mesh(Z) crea una grfico en perspectiva tridimensional de los elementos
de la matriz Z. Esta superficie se define por las coordenadas Z de los puntos por encima de una
grilla rectangular en el plano x-y.
Para dibujar funciones de dos variables , debemos generar primeramente vectores conteniendo
el rango de variacin de las variables independientes x e y. La funcin es entonces evaluada y
la graficacin es inmediata.
Ejemplo:

Para graficar la funcin: Z x y sinc x y ( , ) = +
2 2


>> x = -8.25:.5:8.25;
>> y = x';
>> X = ones (size(y))*x;
>> Y = y*ones (size(x));
>> R = sqrt(X.^2+Y.^2);
>> Z = sin(R)./R;

Teora de los Circuitos I
Universidad Tecnolgica Nacional
Facultad Regional Buenos Aires. Departamento de Electrnica


MSc. Ing. Franco Martin Pessana
Facultad Regional Buenos Aires
E-mail: franco.pessana@gmail.com
Pg. 18
>> mesh(Z);
>> xlabel(x), ylabel(y), zlabel(z);
>> grid;


El grfico que se obtiene es el siguiente:
Generando funciones

Las funciones creadas por el usuario, pueden ser llamadas por MatLab para realizar una
operacin determinada. La sintaxis para el armado de una funcin es la siguiente:

function [Lista_variables_salida] = Nombre_funcin (Lista_argumentos_entrada)
:
:
Cuerpo de la funcin
:
:

donde function es una palabra reservada de MatLab que indica que a continuacin sigue una
funcin. Una vez generada la funcin (que puede ser realizada con cualquier editor de textos) se
guarda con un nombre pero con la salvedad que su extensin sea m para que MatLab pueda
reconocerla como funcin cuando se quiera ejecutar.

Actividades

1) Dadas los siguientes vectores y matrices:
[ ] x = 1 3 2 4 , [ ] y = 2 6 1 1 , A =

(
(
(
(
2 4 3
1 3 2
2 6 11
15 4 8
y B =

(
(
(
1 2 3
1 5 4
2 6 5


Teora de los Circuitos I
Universidad Tecnolgica Nacional
Facultad Regional Buenos Aires. Departamento de Electrnica


MSc. Ing. Franco Martin Pessana
Facultad Regional Buenos Aires
E-mail: franco.pessana@gmail.com
Pg. 19

Calcular:

a) xAB
b) (A.A
t
)
-1
(A
t
A)
c) La norma de x elevada al cubo. Recuerde que la norma de x se define como
x x
i
i
N
=
=

2
1

d) B
4
- A
1..3,1..3
(submatriz de A de 3x3)
e) El producto interior de x con y
f) El producto exterior de x con y

2) Generar las siguientes matrices y vectores:

a) Matriz A tal que A A A A
x
( ,: ) ; ( ,: ) ; ( ,: ) , 1 1 2 0 3 26
3 7
= = = con
b) Matriz B tal que sea la matriz identidad de 6x6
c) Matriz C de 4x4 con nmeros aleatorios uniformemente distribuidos entre 0 y 1.
d) Vector v con nmeros desde el 0 al 1 usando incrementos de 0.05
e) Vector w con el seno de cada uno de los elementos del vector v.
f) Matriz D que contenga en la primera fila el seno de cada elemento de v, en la segunda fila

el coseno de cada elemento de v, y en la tercera fila la tangente de cada elemento de v.
g) Vector x tal que x=v
2
.
Nota: En todos los casos se debe usar slo una lnea de comando.

3) Resolver el siguiente sistema de ecuaciones lineales en forma matricial usando el operador \


2 3 2
4 2 1
4
1 2 3
1 2 3
1 3
x x x
x x x
x x
+ =
+ =
=



4) Genere vectores conteniendo las siguientes funciones para los rangos dados:

x n n n ( ) sen = +
|
\

| 2
10 6
0 30

, ; y n n n ( ) * cos =
|
\

| 3
50 4
0 50

,
e n n
n
( ) . = 0 9 0 40 , ,

a) Grafique cada funcin usando plot y stem.
b) Grafique las tres funciones en un mismo grfico, una en cada cuadrante de la pantalla y cada
una con diferente trazo o color (si posee monitor color).
c) Grafique f
2
(t) y f
4
(t) en el mismo grfico y sobre los mismos ejes.
d) Coloque al grfico anterior etiquetas en los ejes y un ttulo adecuado (use xlabel, ylabel y
title). Agregue carteles indicando el tipo de funcin que se grafic usando la funcin
gtext('cadena') que permite ubicar un texto clickeando con el mouse sobre el grfico.

Teora de los Circuitos I
Universidad Tecnolgica Nacional
Facultad Regional Buenos Aires. Departamento de Electrnica


MSc. Ing. Franco Martin Pessana
Facultad Regional Buenos Aires
E-mail: franco.pessana@gmail.com
Pg. 20
Listado de funciones bsicas de MATLAB


Funciones matemticas elementales
Trigonomtricas:
sin Sine.
sinh Hyperbolic sine.
asin Inverse sine.
asinh Inverse hyperbolic sine.
cos Cosine.
cosh Hyperbolic cosine.
acos Inverse cosine.
acosh Inverse hyperbolic cosine.
tan Tangent.
tanh Hyperbolic tangent.
atan Inverse tangent.
atan2 Four quadrant inverse tangent.
atanh Inverse hyperbolic tangent.
sec Secant.
sech Hyperbolic secant.
asec Inverse secant.
asech Inverse hyperbolic secant.
csc Cosecant.

csch Hyperbolic cosecant.
acsc Inverse cosecant.
acsch Inverse hyperbolic cosecant.
cot Cotangent.
coth Hyperbolic cotangent.
acot Inverse cotangent.
acoth Inverse hyperbolic cotangent.
Exponenciales:
exp Exponential.
log Natural logarithm.
log10 Common logarithm.
sqrt Square root.
Complejas:
abs Absolute value.
angle Phase angle.
conj Complex conjugate.
imag Complex imaginary part.
real Complex real part.

Numricas:
fix Round towards zero.
floor Round towards minus infinity.
ceil Round towards plus infinity.
round Round towards nearest integer.
Teora de los Circuitos I
Universidad Tecnolgica Nacional
Facultad Regional Buenos Aires. Departamento de Electrnica


MSc. Ing. Franco Martin Pessana
Facultad Regional Buenos Aires
E-mail: franco.pessana@gmail.com
Pg. 21
rem Remainder after division.
sign Signum function.


Manipulacin Elemental de Matrices
Matrices elementales
zeros Zeros matrix.
ones Ones matrix.
eye Identity matrix.
rand Uniformly distributed random numbers.
randn Normally distributed random numbers.
linspace Linearly spaced vector.
logspace Logarithmically spaced vector.
meshgrid X and Y arrays for 3-D plots.
: Regularly spaced vector.
Variables y constantes especiales:
ans Most recent answer.
eps Floating point relative accuracy.
realmax Largest floating point number.
realmin Smallest positive floating point number.
pi 3.1415926535897....
i, j Imaginary unit.

inf Infinity.
NaN Not-a-Number.
flops Count of floating point operations.
nargin Number of function input arguments.
nargout Number of function output arguments.
computer Computer type.
isieee True for computers with IEEE arithmetic.
isstudent True for the Student Edition.
why Succinct answer.
version MATLAB version number.
Tiempos y fechas:
clock Wall clock.
cputime Elapsed CPU time.
date Calendar.
etime Elapsed time function.
tic, toc Stopwatch timer functions.
Manipulacin de matrices:
diag Create or extract diagonals.
fliplr Flip matrix in the left/right direction.
flipud Flip matrix in the up/down direction.
reshape Change size.
rot90 Rotate matrix 90 degrees.
tril Extract lower triangular part.
Teora de los Circuitos I
Universidad Tecnolgica Nacional
Facultad Regional Buenos Aires. Departamento de Electrnica


MSc. Ing. Franco Martin Pessana
Facultad Regional Buenos Aires
E-mail: franco.pessana@gmail.com
Pg. 22
triu Extract upper triangular part.
: Index into matrix, rearrange matrix.

You might also like