Serie Apuntes de Clase ΩΒΓ Octubre de 2017 N° 16

42
Rafael Bustamante Romaní N° 16 Octubre de 2017 Serie Apuntes de Clase ΩΒΓ UNIVERSIDAD NACIONAL MAYOR DE SAN MARCOS Universidad del Perú, DECANA DE AMÉRICA FACULTAD DE CIENCIAS ECONÓMICAS

Transcript of Serie Apuntes de Clase ΩΒΓ Octubre de 2017 N° 16

Rafael Bustamante Romaní

N° 16

Octubre de 2017 Serie Apuntes de Clase ΩΒΓ

UNIVERSIDAD NACIONAL MAYOR DE SAN MARCOS Universidad del Perú, DECANA DE AMÉRICA

FACULTAD DE CIENCIAS ECONÓMICAS

La Serie Apuntes de Clase Omega Beta Gamma tiene por objetivo difundir los materiales de enseñanza generados por los docentes que tienen a su cargo el desarrollo de las asignaturas que forman parte de los Planes de Estudios de las Escuelas Académico-Profesionales de la Facultad de Ciencias Económicas de la Universidad Nacional Mayor de San Marcos. Estos documentos buscan proporcionar a los estudiantes la explicación de algunos temas específicos que son abordados en su formación universitaria.

Encargados de la serie:

Bustamante Romaní, Rafael Cisneros García, Juan Manuel. [email protected] [email protected]

Facultad de Ciencias Económicas. Universidad Nacional Mayor de San Marcos.

Calle Germán Amézaga N° 375. Ciudad Universitaria, Lima 1. Perú.

La Serie Apuntes de Clase ΩΒΓ es promovida y

desarrollada por un colectivo de docentes del Departamento de Economía de la Universidad Nacional Mayor de San Marcos. El contenido de cada publicación es íntegramente responsabilidad de cada autor, no representa necesariamente los puntos de vista de los integrantes del colectivo, ni de la Universidad.

MATLAB APLICADO A LAS DECISIONES ECONOMICAS:

CAPITULO I: ASPECTOS BÁSICOS.

Rafael Bustamante Romaní

MATLAB es una de las tantas herramientas de computacionales disponibles en el espectro

científico que es utilizado para resolver problemas de matemáticas, estadística, física,

economía y demás ciencias. MATLAB es un programa superior en los cálculos que

involucran matrices más no así si el cálculo es simbólico. El nombre mismo de MATLAB es

una abreviatura de Matrix Laboratory, laboratorio matricial. En muchos casos la

realización de cálculos con un programa de computación matemático como MATLAB

sustituye la programación de computadoras más tradicionales. Esto no significa que no se

deba aprender un lenguaje de alto nivel como C++ o FORTRAN, sino que los programas

como MATLAB se han convertido en una herramienta estándar para economistas y

demás científicos debido a que su lenguaje de programación es bastante amigable con el

usuario.

Estos apuntes de clases pretenden presentar los fundamentos básicos para empezar con el

manejo del programa, el cual ya es una tendencia de amplio uso entre los economistas y

demás usuarios de la comunidad científica.

Palabras claves: Software, estadística, cálculo, matrices, MATLAB.

Clasificación JEL: C00, C02.

Estudios de Doctorado en Economía, Universidad Autónoma de México. Maestría en Economía con

mención en Finanzas, Pontificia Universidad Católica del Perú. B. Sc. Economía, Universidad Nacional Mayor de San Marcos. Profesor del Departamento de Economía de UNMSM. Investigador asociado al Instituto de Investigaciones FCE – UNMSM. Investiga. Contacto: [email protected]

Serie Apuntes de Clase ΩΒΓ N°16. Octubre de 2017. FCE / UNMSM

Matlab aplicado a las decisiones económicas: Capitulo I: Aspectos básicos.

Bustamante Romaní, Rafael. 1

Tabla de contenido

1. Introducción .................................................................................................................................... 2

CAPITULO I: Aspectos Básicos ............................................................................................................. 6

2. Experimentando el entorno de Matlab ........................................................................................... 6

2.1 Partes de la ventana principal ................................................................................................... 6

2.2 Algunos comandos de importancia ......................................................................................... 10

2.3 Asignación de variables ........................................................................................................... 12

3. Operaciones aritméticas con Matlab ........................................................................................... 14

3.1 Constantes y cadenas. ............................................................................................................ 16

4. Operaciones con Matrices y Arrays .............................................................................................. 17

4.1 Vectores fila ............................................................................................................................. 18

4.2 Vectores columna .................................................................................................................... 19

4.3 Acceso a los elementos de una matriz .................................................................................... 23

4.3 El Operador de colon (:) .......................................................................................................... 24

5. Tipos de matrices predefinidas ..................................................................................................... 25

6. Operadores aritméticos, lógicos y relacionales de matrices en MATLAB .................................. 28

8. Ejercicios Resueltos ....................................................................................................................... 29

Bibliografía ........................................................................................................................................ 39

Serie Apuntes de Clase ΩΒΓ N°16. Octubre de 2017. FCE / UNMSM

Matlab aplicado a las decisiones económicas: Capitulo I: Aspectos básicos.

Bustamante Romaní, Rafael. 2

1. Introducción

MATLAB es el nombre abreviado de “MATrix LABoratory”. MATLAB es un

programa para realizar cálculos numéricos con vectores, matrices y arrays. Puede

también trabajar con números escalares ya sean reales o complejos, con cadenas de

caracteres y con otras estructuras de información más complejas. Una de las

capacidades más atractivas es la de realizar una amplia variedad de gráficos en dos

y tres dimensiones. Asimismo tiene un lenguaje de programación propio ( García,

Rodríguez, & Vidal, 2005).

MATLAB es un gran programa de cálculo técnico y científico. Para ciertas

operaciones es muy rápido, cuando puede ejecutar sus funciones en código nativo1

con los tamaños más adecuados para aprovechar sus capacidades de vectorización.

Es a partir de la versión 6.5, MATLAB incorporó un acelerador JIT (Just In Time),

que mejoraba significativamente la velocidad de ejecución de los ficheros *.m en

ciertas circunstancias, por ejemplo cuando no se hacen llamadas a otros ficheros

*.m, no se utilizan estructuras y clases, etc. Aunque limitado en ese momento,

cuando era aplicable mejoraba sensiblemente la velocidad, haciendo innecesarias

ciertas técnicas utilizadas en versiones anteriores como la vectorización de los

algoritmos. En cualquier caso, el lenguaje de programación de MATLAB es una

excelente herramienta de alto nivel para desarrollar aplicaciones técnicas, fácil de

utilizar y que, como ya se ha dicho, aumenta significativamente la productividad

de los programadores respecto a otros entornos de desarrollo ( García de Jalón,

Rodríguez, & Vidal, 2005).

MATLAB dispone de un código básico y de varias librerías especializadas

(Toolboxes) para poder realizar tareas en diferentes campos de la ciencia. Al

arrancar MATLAB se abre una ventana similar a la mostrada en la Figura Nº1.

Ésta es la vista que se obtiene eligiendo la opción Desktop Layout/Default, en el

menú View. Sin embargo esta configuración puede ser cambiada fácilmente por el

1 En el contexto informático, código nativo se usa como seudónimo de lenguaje de máquina. Este puede ser creado

directamente para microcontroladores extremadamente sencillos o código fuente ya compilado, que puede ser interpretado

por la máquina. El código nativo es una forma de código de la programación de computadora que se configura para

funcionar con el uso de un procesador especificado. La estructura exacta del código nativo se usa para responder a las

instrucciones que son publicadas por el procesador. Todos los tipos de función del software con código nativo, y se escriben

a la función en la eficacia óptima con un tipo seleccionado de procesador o con los procesadores que se fabrican para reflejar

la configuración del procesador especificado.

Serie Apuntes de Clase ΩΒΓ N°16. Octubre de 2017. FCE / UNMSM

Matlab aplicado a las decisiones económicas: Capitulo I: Aspectos básicos.

Bustamante Romaní, Rafael. 3

usuario. En cualquier caso, una vista similar se puede conseguir con el comando

View/Desktop Layout/ Default. Esta ventana inicial requiere unas primeras

explicaciones.

Figura Nº 2

En líneas generales, MATLAB es un sistema interactivo basado en matrices para

cálculos científicos. Desde el punto de vista del control, MATLAB se puede

considerar un entorno matemático de simulación que puede utilizarse para

modelar y analizar diversos sistemas. Sirve para estudiar sistemas continuos,

discretos, lineales y no lineales. MATLAB constituye un entorno abierto, para lo

cual numerosas paquetes específicos adicionales (Toolboxes) han sido

desarrollados. MATLAB es un lenguaje de alto rendimiento para la informática

técnica, integrando el cómputo, la visualización y la programación de una en un

ambiente fácil de usar en el que los problemas y las soluciones se expresan en

notación matemática. (MathWorks, 2017), sus usos comunes incluyen:

Matemáticas y computación

Desarrollo de algoritmos

Adquisición de datos

Modelado, simulación y creación de prototipos

Análisis de datos, exploración y visualización

Gráficos científicos y de ingeniería

Desarrollo de aplicaciones, incluyendo creación de interfaz gráfica de

usuario

Serie Apuntes de Clase ΩΒΓ N°16. Octubre de 2017. FCE / UNMSM

Matlab aplicado a las decisiones económicas: Capitulo I: Aspectos básicos.

Bustamante Romaní, Rafael. 4

MATLAB es un sistema interactivo cuyo elemento de datos básico es un array2 que

no requiere dimensionamiento. Esto le permite resolver muchos problemas de

computación, especialmente aquellos con formulaciones de matriz y vector, en una

fracción del tiempo que tomaría escribir un programa en un lenguaje escalar no

interactivo como C o Fortran.

El nombre MATLAB significa laboratorio matricial. MATLAB fue originalmente

escrito para proporcionar un fácil acceso al software matricial desarrollado por

LINPACK y proyectos EISPACK. Hoy en día, los motores MATLAB incorporan el

LAPACK y las bibliotecas BLAS, incorporando el estado de la técnica en software

para matriz cálculo.

MATLAB ha evolucionado durante un período de años con la entrada de muchos

usuarios. En entornos universitarios, es la herramienta de instrucción estándar

para los cursos avanzados de matemáticas, ingeniería y ciencias. En la industria,

MATLAB es la herramienta de elección para la investigación, el desarrollo y el

análisis de alta productividad (MathWorks, 2017).

MATLAB cuenta con una familia de soluciones específicas para aplicaciones

específicas denominadas cajas de herramientas o Toolboxes. Muy importante para

la mayoría de los usuarios de MATLAB, los Toolboxes le permiten aprender y

aplicar tecnología especializada. Las cajas de herramientas son completas

colecciones de funciones MATLAB (M-files) que amplían el entorno MATLAB para

resolver clases particulares de problemas. Las áreas en las que hay cajas de

herramientas disponibles son procesamiento de señales, sistemas de control, redes

neuronales, lógica difusa, wavelets, simulación y muchos otros. Inicio de MATLAB

En plataformas Windows, inicie MATLAB haciendo doble clic en el icono de

acceso directo de MATLAB en el escritorio de Windows. En las plataformas UNIX,

inicie MATLAB escribiendo MATLAB en el sistema operativo. Puede personalizar

el inicio de MATLAB. Por ejemplo, puede cambiar el directorio en el que MATLAB

inicia o ejecuta automáticamente los estados de MATLAB en un archivo de script

denominado startup.m (MathWorks, 2017).

Matlab es un paquete de software que te permite hacer matemáticas y

computación, analizar datos, desarrollar algoritmos, hacer simulaciones y

modelado, y producir pantallas gráficas e interfaces gráficas de usuario. Puedes

obtener Matlab para hacer las cosas por ti escribiendo comandos. Matlab te

muestra dos signos mayores que (>>) cuando esté listo para aceptar un comando 2 Un array es un medio de guardar un conjunto de objetos de la misma clase. Se accede a cada elemento individual del array mediante un número entero denominado índice. 0 es el índice del primer elemento y n-1 es el índice del último elemento, siendo n, la dimensión del array. Los arrays son objetos en Java y como tales vamos a ver los pasos que hemos de seguir para usarlos convenientemente

Serie Apuntes de Clase ΩΒΓ N°16. Octubre de 2017. FCE / UNMSM

Matlab aplicado a las decisiones económicas: Capitulo I: Aspectos básicos.

Bustamante Romaní, Rafael. 5

del usuario. Para finalizar un tipo de sesión de Matlab, salga o salga en el

indicador Matlab. Puede escribir ayuda en el indicador Matlab, o desplegar el

menú Ayuda en un PC.

Serie Apuntes de Clase ΩΒΓ N°16. Octubre de 2017. FCE / UNMSM

Matlab aplicado a las decisiones económicas: Capitulo I: Aspectos básicos.

Bustamante Romaní, Rafael. 6

CAPITULO I: Aspectos Básicos

2. Experimentando el entorno de Matlab

2.1 Partes de la ventana principal

Para iniciar MATLAB 2017, vamos al botón inicio y seleccionamos el programa

Matlab. Aparece la ventana escritorio (desktop o ventana principal) dividida en

cinco partes:

Barra de menús y herramientas

Ventana del directorio actual (Hacer click en la ficha Current Folder)

Navegador del Workspace (Hacer click en la ficha Workspace)

Ventana del Historial de Comandos (Command History)

Ventana de comandos: Sobre la cual empezamos a digitar las órdenes

después del signo >>.

Figura Nº 2

Para empezar con algunos ejemplos que provee Matlab, escriba uno de estos

comandos: helpwin, Helpdesk o demo, Helpwin abre una GUI de ayuda Matlab y

Serie Apuntes de Clase ΩΒΓ N°16. Octubre de 2017. FCE / UNMSM

Matlab aplicado a las decisiones económicas: Capitulo I: Aspectos básicos.

Bustamante Romaní, Rafael. 7

Helpdesk abre un navegador de ayuda de hipertexto3.

Figura Nº 4

3 El hipertexto es una herramienta con estructura no secuencial que permite crear, agregar, enlazar y compartir información de

diversas fuentes por medio de enlaces asociativos. La forma más habitual de hipertexto en informática es la de hipervínculos o referencias cruzadas automáticas que van a otros documentos. Si el usuario selecciona un hipervínculo, el programa muestra el documento enlazado. Otra forma de hipertexto es el stretchtext que consiste en dos indicadores o aceleradores y una pantalla. El primer indicador permite que lo escrito pueda moverse de arriba hacia abajo en la pantalla. Es importante mencionar que el hipertexto no está limitado a datos textuales, podemos encontrar dibujos del elemento especificado o especializado, sonido o vídeo referido al tema.

Serie Apuntes de Clase ΩΒΓ N°16. Octubre de 2017. FCE / UNMSM

Matlab aplicado a las decisiones económicas: Capitulo I: Aspectos básicos.

Bustamante Romaní, Rafael. 8

Figura Nº 5

Figura Nº 6

Al escribir Demo se inicia la demostración de lo que puede hacer Matlab,

Serie Apuntes de Clase ΩΒΓ N°16. Octubre de 2017. FCE / UNMSM

Matlab aplicado a las decisiones económicas: Capitulo I: Aspectos básicos.

Bustamante Romaní, Rafael. 9

mostrando en videos un conjunto de ejemplos introductorios al programa, tal

como se muestra en la figura Nº7.

Figura Nº 7

La documentación completa para Matlab se puede acceder desde el Helpdesk de

hipertexto Por ejemplo, haciendo clic en el enlace documentación completa o

digitando (help) en la ventana de comandos.

Serie Apuntes de Clase ΩΒΓ N°16. Octubre de 2017. FCE / UNMSM

Matlab aplicado a las decisiones económicas: Capitulo I: Aspectos básicos.

Bustamante Romaní, Rafael. 10

Figura Nº 8

2.2 Algunos comandos de importancia

Matlab acceder a la lista de variables generadas durante la ejecución de nuestro

trabajo. Para ello basta digitar los comandos who, whos en el espacio de trabajo,

donde whos nos ofrece la información más al detalle.

>> who

Your variables are:

A ans

>> whos

Name Size Bytes Class Attributes

A 4x4 128 double

ans 1x1 8 double

Para evitar que MATLAB diferencie entre mayúsculas y minúsculas teclearemos >>

casesen off. Obviamente, el comando contrario será casesen on.

Serie Apuntes de Clase ΩΒΓ N°16. Octubre de 2017. FCE / UNMSM

Matlab aplicado a las decisiones económicas: Capitulo I: Aspectos básicos.

Bustamante Romaní, Rafael. 11

Otro comando útil es lookfor tema de búsqueda. Así, por ejemplo, si queremos

averiguar los comandos relacionados con la función seno, teclearemos >> lookfor

sine y a continuación se nos presenta el siguiente cuadro:

Figura Nº 9

Uno de los mandatos más útiles de MATLAB es diary, que permite guardar en un

fichero todo el texto que aparece en la ventana de comandos. Si se tiene un

diskette en la unidad a: se puede escribir

>> diary C:taller.txt

Y todo lo que salga en pantalla se grabará en un fichero taller.txt justo cuando se

vuelva a introducir el mandato diary. Para agregar más texto en una misma

sesión al archivo creado se usa diary on al principio de lo que se quiera grabar y

diary off al final (en este momento se graba realmente).

El mandato % convierte en comentario lo que se escriba a continuación.

Es decir, MATLAB ignora lo que viene a continuación del comando %.

Serie Apuntes de Clase ΩΒΓ N°16. Octubre de 2017. FCE / UNMSM

Matlab aplicado a las decisiones económicas: Capitulo I: Aspectos básicos.

Bustamante Romaní, Rafael. 12

>> % Esto es un comentario

Con las teclas del cursor [↑] y [↓] se recuperan los mandatos antes escritos,

evitando así tener que reescribir ´´ordenes iguales o parecidas. También se puede

“copiar” con el ratón el texto de cualquier sitio y “pegar” en la (única) línea de

mandatos activa, eligiendo estas opciones en el menú´ de edición. Vale usar

[Ctrl]+C y [Ctrl]+V con el mismo fin (Benitez & Hueso, 2000).

2.3 Asignación de variables

MATLAB puede usarse como calculadora aunque eso no es realmente su uso y

para el cual fue diseñado. Los signos +, -, *, / y ^ denotan las operaciones

aritméticas de suma, resta, multiplicación, división y elevación a una potencia. Si el

resultado de una operación no es asignado a ninguna variable, MATLAB lo asigna

a la variable del sistema a través de la palabra ans. Así mismo se pueden usar los

paréntesis () para concatenar expresiones, no así los corchetes [] que están

reservados para introducir vectores y matrices(Benitez & Hueso, 2000).. Así, por

ejemplo:

>> 3*((1+3)^(1/20))

Proporciona, obviamente, ans = 3.2153.

En MATLAB las variables se asignan de modo natural. Basta escribir un nombre

de variable, a continuación el signo = y luego el valor que toma esa variable. Para

aceptar, como siempre, hay que pulsar [Intro]. Escribiendo s´´olo el nombre de

Serie Apuntes de Clase ΩΒΓ N°16. Octubre de 2017. FCE / UNMSM

Matlab aplicado a las decisiones económicas: Capitulo I: Aspectos básicos.

Bustamante Romaní, Rafael. 13

una variable previamente asignada, MATLAB devuelve su valor. Por ejemplo, se

puede escribir

>> a = 3, b = 4

y a continuación

>> a+b.

Para conservar este resultado se hace >> c = ans o mejor aún >> c = a+b

directamente. Si se pone un “punto y coma”, tras la asignaci´on no se muestra el

resultado por pantalla. Naturalmente, la asignaci´on no resulta afectada. Esta

forma de proceder resulta ´util en la elaboraci´on de resultados que requieran

c´alculos intermedios. Por ejemplo, la orden

>> d=(a+b)^2;

Calcula el valor de d; pero no lo muestra en pantalla. La orden who lista las

variables definidas y con la orden whos obtenemos además el tipo de variable y su

tamaño. Se puede acceder a través del menú e incluso modificar los valores

existentes: File y a continuación Show Workspace. Para modificar las variables una

vez abierto el workspace browser, no tenemos más que pinchar en cada variable.

Con el comando clear sin argumentos elimina todas las variables y clear c elimina

la variable c.

Las variables de una sesión se pueden grabar con el comando >> save c: taller el

cual guarda los nombres y los valores de las variables actualmente definidas en un

fichero en a: llamado taller.mat. MATLAB añade automáticamente la extensión

mat y así identifica el formato de estos ficheros. Si se borran las variables:

Serie Apuntes de Clase ΩΒΓ N°16. Octubre de 2017. FCE / UNMSM

Matlab aplicado a las decisiones económicas: Capitulo I: Aspectos básicos.

Bustamante Romaní, Rafael. 14

>> clear, who

Se pueden recuperar ahora o en otra sesión con la orden >> load c: taller. De nuevo

mediante el menú File también se pueden ejecutar los comandos load y save.

En Matlab la asignación de variables es bastante sencilla. Sin embargo debemos

tener en cuenta que cada variable que definimos debe comenzar con una letra del

alfabeto.

Ejemplos:

>> a= cos(30)

a =

0.1543

>> b=sin(30)

b =

-0.9880

3. Operaciones aritméticas con Matlab

Para arrancar Matlab, se procede como con cualquier programa Windows, o sea,

Inicio, Programas, Matlab o Student Matlab caso de que utilicemos la versión

educacional. Una vez arrancado aparece el cursor con el símbolo (>>) o (EDU >>),

indicando que puedes introducir órdenes. La utilización más básica de Matlab es

como calculadora. Así por ejemplo, puedes calcular cos (5)* 2 7.3, para lo cual debes

introducir:

>> cos(5)*2^7.3

ans =

44.7013

Matlab mantiene en su memoria resultado del último cálculo realizado. En caso de

que ese cálculo no se asigne a ninguna variable, lo hace a una variable por defecto

de nombre ans. Si quieres referirte a ese resultado, hazlo a través de la variable

ans, y si no asignas ese nuevo cálculo a ninguna variable, volvería a ser asignado a

ans.

log(ans)

Serie Apuntes de Clase ΩΒΓ N°16. Octubre de 2017. FCE / UNMSM

Matlab aplicado a las decisiones económicas: Capitulo I: Aspectos básicos.

Bustamante Romaní, Rafael. 15

ans = 3.8000

A continuación presentamos los operadores aritméticos usados por Matlab

Operadores Aritméticos Significado

+ Adición

- Resta

* Multiplicación

/ División

^ Potencia

Estos operadores se aplican también a las variables o valores escalares, aunque con

algunas diferencias4. Todos estos operadores son coherentes con las

correspondientes operaciones matriciales: no se puede por ejemplo sumar matrices

que no sean del mismo tamaño. Si los operadores no se usan de modo correcto se

obtiene un mensaje de error ( De Jalón, Goñi, Sarriegui, & Girón, 1997).

Los operadores anteriores se pueden aplicar también de modo mixto, es decir con

un operando escalar y otro matricial. En este caso la operación con el escalar se

aplica a cada uno de los elementos de la matriz. Considérese el siguiente ejemplo:

>> A=[1 2; 3 4]

A =

1 2

3 4

>> A*2

ans =

4 En términos de C++ podríamos decir que son operadores sobrecargados, es decir, con varios significados distintos dependiendo del contexto)

Serie Apuntes de Clase ΩΒΓ N°16. Octubre de 2017. FCE / UNMSM

Matlab aplicado a las decisiones económicas: Capitulo I: Aspectos básicos.

Bustamante Romaní, Rafael. 16

2 4

6 8

>> A-4

ans =

-3 -2

-1 0

MATLAB utiliza el operador de división / para dividir por un escalar todos los

elementos de una matriz o un vector. Sin embargo, el uso que se describe a

continuación sí requiere más atención.

3.1 Constantes y cadenas.

MATLAB utiliza ciertos nombres de variable para fines especiales, como i o j, que

designan ambas a la unidad imaginaria o pi, para el número _. El número e, base

de los logaritmos neperianos, no está pre asignado, pero se obtiene fácilmente

como exp(1)5.

La precisión relativa en operaciones de coma flotante se llama eps. En realidad eps

es el mayor positivo que cumple 1+eps = 1. El resultado de 1/0 en MATLAB es Inf y

el de 0/0, NaN6.

Se pueden utilizar estos nombres de variables pre asignadas para almacenar

otros valores, prevaleciendo esta última asignación sobre el valor por defecto de

MATLAB. Por ejemplo, si no se utilizan números complejos, no hay

inconveniente en representar por i y j los índices de fila y columna de una matriz.

Igualmente se podríamos llamar eps a una cantidad utilizada como criterio de

convergencia, pero en general conviene evitar equívocos empleando otros

nombres de variable.

Internamente MATLAB trabaja con mucha precisión, aunque por defecto muestra

los resultados con cuatro decimales. La apariencia de los resultados se modifica

por medio del menú o con la orden format: Por ejemplo, format long aumenta el

número de decimales visibles.

5 El uso de la función exp (exponencial) será explicado posteriormente. 6 Del inglés Not a Number.

Serie Apuntes de Clase ΩΒΓ N°16. Octubre de 2017. FCE / UNMSM

Matlab aplicado a las decisiones económicas: Capitulo I: Aspectos básicos.

Bustamante Romaní, Rafael. 17

>> format long, pi

format short vuelve al estado inicial. format rat aproxima el resultado por un

cociente de enteros pequeños. Se pueden explorar otras opciones con help format.

Podemos usar también cadenas de caracteres para manejar texto en funciones de

MATLAB . Para introducir una cadena, basta escribir el texto entre comillas.

>> ’Esto es una cadena’

Un texto sin comillas produce error porque MATLAB lo interpreta como un

nombre de variable o función.

>> Hola

Produce el error

??? Undefined function or variable Hola.

4. Operaciones con Matrices y Arrays

La mejor manera de empezar con MATLAB es aprender a manejar Matrices inicie

MATLAB y siga con cada ejemplo. Puede introducir matrices en MATLAB de

varias maneras diferentes:

Introduzca una lista explícita de elementos.

Cargar matrices de archivos de datos externos.

Generar matrices usando funciones incorporadas.

Crear matrices con sus propias funciones en M-files.

Comienza introduciendo la matriz de Dürer como una lista de sus elementos. Solo

tienes que seguir algunas convenciones básicas:

Separar los elementos de una fila con espacios en blanco o comas.

Utilice un punto y coma “;” Para indicar el final de cada fila.

Envuelva la lista completa de elementos con corchetes, [].

Serie Apuntes de Clase ΩΒΓ N°16. Octubre de 2017. FCE / UNMSM

Matlab aplicado a las decisiones económicas: Capitulo I: Aspectos básicos.

Bustamante Romaní, Rafael. 18

4.1 Vectores fila

Existen diversas formas de declarar vectores fila en Matlab por ejemplo

introduciendo elemento por elemento:

Sintaxis:

vectorfila = [elemento1 elemento2 ... elementoN]

(Clave: dentro de una misma fila las separaciones son con espacios en blanco o el

uso de coma)

Ejemplo 1: ingresar el vector fila = 1 3 4 10 :

>> fila = [1 3 4 10]

fila =

1 3 4 10

Ejemplo 2: ingresar el vector alpha = 0.25 3.14 2.71 5.31 0.01

:

>> alpha = [-0.25 3.14 2.71 5.31 0.01]

alpha =

-0.2500 3.1400 2.7100 5.3100 0.0100

Creación de un vector a través de extremos y extensión de separación:

Serie Apuntes de Clase ΩΒΓ N°16. Octubre de 2017. FCE / UNMSM

Matlab aplicado a las decisiones económicas: Capitulo I: Aspectos básicos.

Bustamante Romaní, Rafael. 19

Sintaxis:

vector inicial:salto:final

(Es decir: vector = [inicial inicial+salto inicial+2*salto ... final])

Un requisito es hacer que uno de los saltos coincida con el final, en caso contrario

tomará el máximo anterior. Ejemplo 1

>> A1=1:1:9

A1 =

1 2 3 4 5 6 7 8 9

>> A2=0:5:19

A2 =

0 5 10 15

A3=1:5

A3 =

1 2 3 4 5

4.2 Vectores columna

Casi todos los comandos básicos en MATLAB implican el uso de vectores. Para

simplificar la creación de vectores, podemos definir un vector especificando: una

primera entrada, un incremento y una ´ultima entrada. Existen diferentes formas

de generarlas:

Sintaxis

A= [elemento1; elemento2;...; elementoN].

(Clave: cada “;” representa el fin de una línea, en este caso el fin de la línea indica el fin de

la fila)

Serie Apuntes de Clase ΩΒΓ N°16. Octubre de 2017. FCE / UNMSM

Matlab aplicado a las decisiones económicas: Capitulo I: Aspectos básicos.

Bustamante Romaní, Rafael. 20

Ejemplos:

>> B = [30 ; 40 ; 60 ; 70 ; 20 ; 50 ; 30 ; 40 ; 45 ; 40 ; -28.9]

B =

30.0000

40.0000

60.0000

70.0000

20.0000

50.0000

30.0000

40.0000

45.0000

40.0000

-28.9000

Por hallar la transpuesta de un vector fila:

Sintaxis:

A= A'

': operador transposición

>> B'

ans =

30.0000 40.0000 60.0000 70.0000 20.0000 50.0000 30.0000 40.0000

45.0000 40.0000 -28.9000

Serie Apuntes de Clase ΩΒΓ N°16. Octubre de 2017. FCE / UNMSM

Matlab aplicado a las decisiones económicas: Capitulo I: Aspectos básicos.

Bustamante Romaní, Rafael. 21

Para ingresar a la matriz de Dürer7, simplemente ingrese la Ventana de Comandos

A = [16 3 2 13; 5 10 11 8; 9 6 7 12; 4 15 14 1]

MATLAB muestra la matriz que acaba de ingresar:

A =

16 3 2 13

5 10 11 8

9 6 7 12

4 15 14 1

Una vez que haya ingresado la matriz, se muestra automáticamente en el espacio

de trabajo MATLAB. Se puede invocar a la matriz simplemente como A.

Las propiedades especiales de un cuadrado mágico tienen que ver con las diversas

formas de sumar sus elementos. Si usted toma la suma a lo largo de cualquier fila o

columna, o a lo largo de cualquiera de las dos diagonales principales, siempre

obtendrá el mismo número. Vamos a verificar que con MATLAB. La primera

declaración que debemos intentar es sum(A). MATLAB Nos muestra:

>> sum(A)

ans =

34 34 34 34

Cuando no se especifica una variable de salida, MATLAB utiliza la variable ans,

Abreviatura de respuesta, para almacenar los resultados de un cálculo. Lo que

hace es calcular que contiene las sumas de las columnas de A. Por supuesto, cada

uno de las columnas tiene la misma suma, la suma mágica, 34.

Una forma de obtener las sumas de fila es Matriz, calcular las sumas de columna

de la matriz transpuesta, y luego transponer el resultado. Para una forma adicional

7 Un cuadrado mágico es una tabla de grado primario donde se dispone de una serie de números enteros en

un cuadrado o matriz de forma tal que la suma de los números por columnas, filas y diagonales principales sea

la misma. Usualmente los números empleados para rellenar las casillas son consecutivos, de 1 a n², siendo n el

número de columnas y filas del cuadrado mágico.

Los cuadrados mágicos actualmente no tienen ninguna aplicación técnica conocida que se beneficien de estas

características, por lo que sigue recluido al divertimento, curiosidad y al pensamiento matemático. Aparte de

esto, en las llamadas seudo ciencias ocultas y más concretamente en la magia tienen un lugar destacado.

Serie Apuntes de Clase ΩΒΓ N°16. Octubre de 2017. FCE / UNMSM

Matlab aplicado a las decisiones económicas: Capitulo I: Aspectos básicos.

Bustamante Romaní, Rafael. 22

que evita la transposición doble, use la Argumento de dimensión para la función

de suma.

MATLAB tiene dos operadores de transposición. El operador de apóstrofe (por

ejemplo, (A') realiza una transposición conjugada compleja. Vuelve una matriz

sobre su principal

Diagonal, y también cambia el signo del componente imaginario de cualquier

elementos complejos de la matriz. El operador de apóstrofo de puntos (por

ejemplo, A. '),

Transpone sin afectar el signo de elementos complejos. Para matrices que contiene

todos los elementos reales, los dos operadores devuelven el mismo resultado. Así

que

A'

Ans

16 5 9 4

3 10 6 15

2 11 7 14

13 8 12 1

y

sum(A')'

Produce un vector de columna que contiene las sumas de fila de A

Ans

34

34

34

34

La suma de los elementos en la diagonal principal se obtiene con la suma y las

funciones diag:

diag (A)

Ans

16

10

7

1

Serie Apuntes de Clase ΩΒΓ N°16. Octubre de 2017. FCE / UNMSM

Matlab aplicado a las decisiones económicas: Capitulo I: Aspectos básicos.

Bustamante Romaní, Rafael. 23

sum (diag (A))

Ans

34

La otra diagonal, la llamada anti diagonal, no es tan importante. Matemáticamente,

por lo que MATLAB no tiene una función lista para ello. Pero una función

originalmente destinada para su uso en gráficos, fliplr, invierte una matriz de

izquierda a derecha:

sum (diag (fliplr (A)))

Ans

34

Se ha verificado que la matriz en el grabado de Dürer es de hecho un cuadrado

mágico y, en el proceso, han mostrado algunas operaciones de matrices con

MATLAB.

4.3 Acceso a los elementos de una matriz

El elemento en la fila i y la columna j de A se denotan por A (i, j). Por ejemplo, A

(4,2) es el número en la cuarta fila y segunda columna. Para nuestra magia

Cuadrado, A (4,2) es 15. Así, para calcular la suma de los elementos en el cuarto

Columna del tipo A

A (1,4) + A (2,4) + A (3,4) + A (4,4)

Ans

34

Pero no es la manera más elegante de sumar una sola columna. También es posible

hacer referencia a los elementos de una matriz con un solo subíndice. Esta es la

forma usual de hacer referencia a los vectores de fila y columna. Pero. También

puede aplicarse a una matriz completamente bidimensional, en cuyo caso la matriz

es

Se puede modificar alguno de los elementos de la matriz A, accediendo a

cualquiera de sus posiciones, por ejemplo:

9 10

A =

16 3 2 13

Serie Apuntes de Clase ΩΒΓ N°16. Octubre de 2017. FCE / UNMSM

Matlab aplicado a las decisiones económicas: Capitulo I: Aspectos básicos.

Bustamante Romaní, Rafael. 24

5 10 11 8

9 6 7 12

4 15 14 1

>> A (4,2)=9

A =

16 3 2 13

5 10 11 8

9 6 7 12

4 9 14 1

>> A (4,2)=15

A =

16 3 2 13

5 10 11 8

9 6 7 12

4 15 14 1

4.3 El Operador de colon (:)

El operador de colon: es uno de los operadores más importantes en el manejo de

matrices de MATLAB. Ocurre en varias formas diferentes. La expresión

1:10

ans =

1 2 3 4 5 6 7 8

Serie Apuntes de Clase ΩΒΓ N°16. Octubre de 2017. FCE / UNMSM

Matlab aplicado a las decisiones económicas: Capitulo I: Aspectos básicos.

Bustamante Romaní, Rafael. 25

5. Tipos de matrices predefinidas

MATLAB dispone de varias formas de definir matrices. El introducirlas por

teclado sólo es práctico en casos de cuando el tamaño es pequeño y cuando no hay

que repetir esa operación muchas veces. Recuerde en que en MATLAB no hace

falta definir el tamaño de una matriz. Las matrices toman tamaño al ser definidas y

este tamaño puede ser modificado por el usuario mediante adición y/o borrado de

filas y columnas. A continuación se van a ver otras formas más potentes y

generales de definir y/o modificar matrices.

Existen en MATLAB varias funciones orientadas a definir con gran facilidad

matrices de tipos particulares. Algunas de estas funciones son las siguientes: eye

(4) forma la matriz unidad de tamaño (4×4).

>> Z =eye (5)

Z =

1 0 0 0 0

0 1 0 0 0

0 0 1 0 0

0 0 0 1 0

0 0 0 0 1

zeros(3,5) forma una matriz de ceros de tamaño (3×5)

zeros(4) ídem de tamaño (4×4)

ones(3) forma una matriz de unos de tamaño (3×3)

ones(2,4) idem de tamaño (2×4)

linspace(x1,x2,n) genera un vector con n valores igualmente espaciados entre x1 y x2

logspace(d1,d2,n)

genera un vector con n valores espaciados logarítmicamente entre

10^d1 y 10^d2. Si d2 es pi9, los puntos se generan entre 10^d1 y pi.

rand(3) forma una matriz de números aleatorios entre 0 y 1, con distribución

uniforme, de tamaño (3×3)

Serie Apuntes de Clase ΩΒΓ N°16. Octubre de 2017. FCE / UNMSM

Matlab aplicado a las decisiones económicas: Capitulo I: Aspectos básicos.

Bustamante Romaní, Rafael. 26

rand(2,5) idem de tamaño (2×5)

randn(4) forma una matriz de números aleatorios de tamaño (4×4), con

distribución normal, de valor medio 0 y varianza 1.

magic(4) crea una matriz (4×4) con los números 1, 2, ... 4*4, con la propiedad

de que todas las filas y columnas suman lo mismo.

hilb(5) Crea una matriz de Hilbert de tamaño (5×5). La matriz de Hilbert es

una matriz cuyos elementos (i,j) responden a la expresión (1/(i+j-1)).

Esta es una matriz especialmente difícil de manejar por los grandes

errores numéricos a los que conduce

invhilb(5) Crea directamente la inversa de la matriz de Hilbert.

kron(x,y)

produce una matriz con todos los productos de los elementos del

vector x por los elementos del vector y. Equivalente a x'*y, donde x e

y son vectores fila

compan(pol)

Construye una matriz cuyo polinomio característico tiene como

coeficientes los elementos del vector pol (ordenados de mayor grado

a menor).

vander(v) Construye la matriz de Vandermonde a partir del vector v (las

columnas son las potencias de los elementos de dicho vector).

Existen otras funciones para crear matrices de tipos particulares. Con Help/Matlab

Help se puede obtener información sobre todas las funciones disponibles en

MATLAB, que aparecen agrupadas por categorías o por orden alfabético. En la

categoría Mathematics aparecen la mayor parte de las funciones estudiadas en este

documento.

5.1 Formación de una matriz a partir de otras MATLAB ofrece también la posibilidad de crear una matriz a partir de matrices

previas ya definidas, por varios posibles caminos:

Recibiendo alguna de sus propiedades (como por ejemplo el tamaño)

Por composición de varias submatrices más pequeñas

Serie Apuntes de Clase ΩΒΓ N°16. Octubre de 2017. FCE / UNMSM

Matlab aplicado a las decisiones económicas: Capitulo I: Aspectos básicos.

Bustamante Romaní, Rafael. 27

Modificándolas de alguna forma.

A continuación se describen algunas de las funciones que crean una nueva matriz a

partir de otra o de otras, comenzando por dos funciones auxiliares:

[m,n]=size(A) Devuelve el número de filas y de columnas de la matriz A. Si la

matriz es cuadrada basta recoger el primer valor de retorno.

n=length(x) Calcula el número de elementos de un vector x.

zeros(size(A)) forma una matriz de ceros del mismo tamaño que una matriz A

previamente creada

ones(size(A)) ídem con unos

A=diag(x) forma una matriz diagonal A cuyos elementos diagonales son

los elementos de un vector ya existente x

x=diag(A) forma un vector x a partir de los elementos de la diagonal de

una matriz ya existente A

diag(diag(A)) crea una matriz diagonal a partir de la diagonal de la matriz A

blkdiag(A,B) Crea una matriz diagonal de submatrices a partir de las

matrices que se le pasan como argumentos

triu(A) Forma una matriz triangular superior a partir de una matriz A

(no tiene por qué ser cuadrada). Con un segundo argumento

puede controlarse que se mantengan o eliminen más

diagonales por encima o debajo de la diagonal principal.

tril(A) Ídem con una matriz triangular inferior.

rot90(A,k) Gira k*90 grados la matriz rectangular A en sentido anti

Serie Apuntes de Clase ΩΒΓ N°16. Octubre de 2017. FCE / UNMSM

Matlab aplicado a las decisiones económicas: Capitulo I: Aspectos básicos.

Bustamante Romaní, Rafael. 28

horario. k es un entero que puede ser negativo. Si se omite, se

supone k=1

flipud(A) halla la matriz simétrica de A respecto de un eje horizontal

fliplr(A) Halla la matriz simétrica de A respecto de un eje vertical

reshape(A,m,

n)

Cambia el tamaño de la matriz A devolviendo una matriz de

tamaño m×n cuyas columnas se obtienen a partir de un vector

formado por las columnas de A puestas una a continuación de

otra. Si la matriz A tiene menos de m×n elementos se produce

un error.

6. Operadores aritméticos, lógicos y relacionales de matrices en

MATLAB

MATLAB dispone de operaciones aritméticas: Las operaciones aritméticas

matriciales, que se rigen por las reglas del algebra lineal, y las operaciones

aritméticas con vectores que se realizan elemento a elemento. Los operadores

involucrados se presentan en la tabla siguiente (Cutipa Coaquira & Gutierrez

Pachas, 2009):

A+B Suma de elementos de las matrices A y B de acuerdo a su posición.

A-B Resta de elementos de las matrices A y B de acuerdo a su posición.

k*A Multiplica cada elemento de A por el escalar k.

A.*B Multiplica cada elemento de A y B de acuerdo a su posición

(Producto punto)

Serie Apuntes de Clase ΩΒΓ N°16. Octubre de 2017. FCE / UNMSM

Matlab aplicado a las decisiones económicas: Capitulo I: Aspectos básicos.

Bustamante Romaní, Rafael. 29

A*B Calcula la suma de los productos de las filas de A por las columnas

de B

A./B Realiza la división de cada elemento de A entre B de acuerdo a su

posición

B./A Realiza la división de cada elemento de B entre A de acuerdo a su

posición

A/B Equivale a A* inv(B)

B\A Equivale a B* inv(A)

A.^k Eleva cada elemento de la matriz A al exponente escalar k.

A^k Equivale a A*A*A*…A tantas veces como valga el valor de k.

8. Ejercicios Resueltos

1. Crear un vector M cuyo valor inicial sea 100 y cuyo valor final sea 88. Sus valores intermedios deben decrecer de 2 en2. >> M = 100: -2:88 M = 100 98 96 94 92 90 88 2. Almacenar en una variable m el segundo elemento del vector M. >> m= M(2)

m =

98

Serie Apuntes de Clase ΩΒΓ N°16. Octubre de 2017. FCE / UNMSM

Matlab aplicado a las decisiones económicas: Capitulo I: Aspectos básicos.

Bustamante Romaní, Rafael. 30

3. Mostrar los elementos situados entre la tercera y cuarta ubicación inclusive del

vector M.

>> M(3:5)

ans =

96 94 92

4. Obtener una variable de n elementos de M situados entre la séptima y tercera

ubicación inclusive pero separados de dos en dos.

M (1: -2:3)

5. Crear una matriz R de 2x3 cuyas filas, cuyas filas son los cuadrados de los 6

primeros números consecutivos

>> R = [linspace(1,3,3); linspace(4,6,3)].* [linspace(1,3,3); linspace(4,6,3)]

R =

1 4 9

16 25 36

6. Anular el elemento (2,1) de la matriz R antes creada

>> R (2,1)=0

R =

1 4 9

0 25 36

7. Obtener la matriz T transpuesta de R

Serie Apuntes de Clase ΩΒΓ N°16. Octubre de 2017. FCE / UNMSM

Matlab aplicado a las decisiones económicas: Capitulo I: Aspectos básicos.

Bustamante Romaní, Rafael. 31

>> T= R'

T =

1 0

4 25

9 36

8. Construir una matriz W, formada por la matriz T y la matriz identidad de

orden 3 adosada a su izquierda.

W= [eye(3) T]

>> W= [eye(3) T]

W =

1 0 0 1 0

0 1 0 4 25

0 0 1 9 36

10. Considere la siguiente matriz:

Se pide:

a) Introducir la matriz A.

>> A= [11 12 13 14; 21 22 23 24; 31 32 33 34; 41 42 43 44]

A =

Serie Apuntes de Clase ΩΒΓ N°16. Octubre de 2017. FCE / UNMSM

Matlab aplicado a las decisiones económicas: Capitulo I: Aspectos básicos.

Bustamante Romaní, Rafael. 32

11 12 13 14

21 22 23 24

31 32 33 34

41 42 43 44

b) Obtener los valores de la primera columna.

>> A(:,1)

ans =

11

21

31

41

c) Obtener los valores de la segunda fila.

>> A(2,:)

ans =

21 22 23 24

d) Obtener los valores de la segunda y la tercera columna.

>> A(:,2:3)

ans =

12 13

22 23

32 33

42 43

e) Obtener la diagonal de A.

>> diag(A)

ans =

Serie Apuntes de Clase ΩΒΓ N°16. Octubre de 2017. FCE / UNMSM

Matlab aplicado a las decisiones económicas: Capitulo I: Aspectos básicos.

Bustamante Romaní, Rafael. 33

11

22

33

44

f) Obtener una matriz de 2x2 donde todos los elementos sean 1.

>> ones (3,3)

ans =

1 1 1

1 1 1

1 1 1

g) Obtener una matriz identidad de orden 2x2.

>> eye(3)

ans =

1 0 0

0 1 0

0 0 1

9.

10. Construir una matriz V extrayendo las columnas pares de la matriz T, una

matriz Z formada por la intersección de las dos últimas filas de W y sus columnas

primera y quinta, y una matriz X formada por la intersección de las dos primeras

filas o columnas de la matriz W.

>> V= W(:, 2:2:5)

V =

0 1

1 4

0 9

Serie Apuntes de Clase ΩΒΓ N°16. Octubre de 2017. FCE / UNMSM

Matlab aplicado a las decisiones económicas: Capitulo I: Aspectos básicos.

Bustamante Romaní, Rafael. 34

>> Z= W([2 3 ],[1 5])

Z =

0 25

0 36

>> X= W([1 2 ],[2;5])

X =

0 0

1 25

11. Eliminar la primera y última columna de la matriz W

W(:, [1 5])=[]

>> W(:, [1 5])=[]

W =

0 0 1

1 0 4

0 1 9

11. Construir la matriz diagonal Y, tal que los elementos de su diagonal principal

son los mismos que los de la diagonal principal de W.

>> Y=diag(diag(W))

Y =

0 0 0

0 0 0

0 0 9

Serie Apuntes de Clase ΩΒΓ N°16. Octubre de 2017. FCE / UNMSM

Matlab aplicado a las decisiones económicas: Capitulo I: Aspectos básicos.

Bustamante Romaní, Rafael. 35

13. Construir una matriz Z formadas por las matrices unidad de 4x3, la matriz

nula e identidad del mismo orden acoplado horizontalmente. Luego calcular el

tamaño de Z (orden).

Z= [ones(4,3) zeros(4,3) eye(4,3)]

>> Z= [ones(4,3) zeros(4,3) eye(4,3)]

Z =

1 1 1 0 0 0 1 0 0

1 1 1 0 0 0 0 1 0

1 1 1 0 0 0 0 0 1

1 1 1 0 0 0 0 0 0

>> size(Z)

ans =

4 9

14. Formar la matriz A con los elementos de la intersección de la primera y tercera

fila de Z y las columnas séptima t novena inclusive. Luego crear un vector columna

I con los elementos de la antidiagonal de Z

>> A=Z(1:3, 7:9)

A =

1 0 0

0 1 0

0 0 1

15. Construir una matriz aleatoria K de orden 4x3. Luego invierta el orden de sus

filas utilizando el operador 2 puntos. Utilice algún comando de Matlab para

realizar el mismo procedimiento.

>> K = rand(4,3)

Serie Apuntes de Clase ΩΒΓ N°16. Octubre de 2017. FCE / UNMSM

Matlab aplicado a las decisiones económicas: Capitulo I: Aspectos básicos.

Bustamante Romaní, Rafael. 36

K =

0.8147 0.6324 0.9575

0.9058 0.0975 0.9649

0.1270 0.2785 0.1576

0.9134 0.5469 0.9706

>> K(4: -1:1,:)

ans =

0.9134 0.5469 0.9706

0.1270 0.2785 0.1576

0.9058 0.0975 0.9649

0.8147 0.6324 0.9575

>> flipud(K)

ans =

0.9134 0.5469 0.9706

0.1270 0.2785 0.1576

0.9058 0.0975 0.9649

0.8147 0.6324 0.9575

16. Invierta el orden de las columnas utilizando el operador 2 puntos. Utilice algún

comando de MATLAB para realizar el mismo procedimiento.

>> K(:,3:-1:1)

ans =

0.9575 0.6324 0.8147

0.9649 0.0975 0.9058

0.1576 0.2785 0.1270

0.9706 0.5469 0.9134

Serie Apuntes de Clase ΩΒΓ N°16. Octubre de 2017. FCE / UNMSM

Matlab aplicado a las decisiones económicas: Capitulo I: Aspectos básicos.

Bustamante Romaní, Rafael. 37

>> fliplr(K)

ans =

0.9575 0.6324 0.8147

0.9649 0.0975 0.9058

0.1576 0.2785 0.1270

0.9706 0.5469 0.9134

17. Halle la matriz L de orden 2x6 cuyas columnas resultan de tomar los elementos

de las columnas de K consecutivamente.

>> L = reshape(K,2,6)

L =

0.8147 0.1270 0.6324 0.2785 0.9575 0.1576

0.9058 0.9134 0.0975 0.5469 0.9649 0.9706

18. Mostrar las matrices triangulares inferior y superior de las 3 últimas filas de K.

>> tril(K(2:4,:))

ans =

0.9058 0 0

0.1270 0.2785 0

0.9134 0.5469 0.9706

Serie Apuntes de Clase ΩΒΓ N°16. Octubre de 2017. FCE / UNMSM

Matlab aplicado a las decisiones económicas: Capitulo I: Aspectos básicos.

Bustamante Romaní, Rafael. 38

>> triu(K(2:4,:))

ans =

0.9058 0.0975 0.9649

0 0.2785 0.1576

0 0 0.9706

Serie Apuntes de Clase ΩΒΓ N°16. Octubre de 2017. FCE / UNMSM

Matlab aplicado a las decisiones económicas: Capitulo I: Aspectos básicos.

Bustamante Romaní, Rafael. 39

Bibliografía

de Jalón de la Fuente, J., Goñi Lasheras, R., Sarriegui Domínguez, J., & Girón Legorburu, I. (1997).

Aprenda Matlab 4.2 como si estuviera en Primero. Universidad de Navarra, Escuela

superior de Ingenieros Industriales.

García de Jalón, J., Rodríguez, J., & Vidal, J. (2005). Aprenda Matlab 7.0 como si estuviera en

primero. Universidad Politécnica de Madrid. Madrid: Escuela Técnica Superior de

Ingenieros Industriales .

Benitez López, J., & Hueso Pagoaga, J. (2000). Introducción a MATLAB. Universidad Politécnica de

Valencia, Departamento de Matemática Aplicada, Valencia.

Cutipa Coaquira, M., & Gutierrez Pachas, D. (2009). MATLAB 7. MACRO EIRL.

Martínez del Río, F. (2015). Programación en Matlab. Universidad de Jaén, Departamanto de

Informática .

MathWorks. (2017). MATLAB® Primer.