









































Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity
Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium
Prepara tus exámenes
Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity
Prepara tus exámenes con los documentos que comparten otros estudiantes como tú en Docsity
Encuentra los documentos específicos para los exámenes de tu universidad
Estudia con lecciones y exámenes resueltos basados en los programas académicos de las mejores universidades
Responde a preguntas de exámenes reales y pon a prueba tu preparación
Consigue puntos base para descargar
Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium
Comunidad
Pide ayuda a la comunidad y resuelve tus dudas de estudio
Ebooks gratuitos
Descarga nuestras guías gratuitas sobre técnicas de estudio, métodos para controlar la ansiedad y consejos para la tesis preparadas por los tutores de Docsity
Este documento proporciona una introducción a la programación en matlab, centrándose en la creación, manipulación y operaciones con matrices. Se explican conceptos básicos como la declaración de matrices, el acceso a submatrices, la construcción de matrices especiales y las operaciones matemáticas con matrices. El documento incluye ejemplos prácticos y ejercicios para consolidar los conocimientos adquiridos.
Tipo: Esquemas y mapas conceptuales
1 / 49
Esta página no es visible en la vista previa
¡No te pierdas las partes importantes!










































MODELOS ECONÓMICOS BÁSICOS Y SIMULACIONES EN MATLAB
Universidad Nacional Mayor de San Marcos Lima - Perú
Serie de Documentos de Trabajo OMEGA BETA GAMMA
El principal objetivo de la «Serie de Documentos de Trabajo OMEGA BETA GAMMA» es difundir los avances de investigaciones conducentes a futuras publicaciones de artículos científicos, así como de textos resultantes del proceso de enseñanza de los profesores del Departamento de Economía de la Facultad de Ciencias Económicas de la Universidad Nacional Mayor de San Marcos; incluyendo publicaciones de investigadores nacionales e internacionales de otras instituciones de educación superior. La «Serie de Documentos de Trabajo OMEGA BETA GAMMA» es promovida y desarrollada por un colectivo de profesores del Departamento de Economía de la Universidad Nacional Mayor de San Marcos.
COMITÉ EVALUADOR
Hugo Sánchez, DIRECTOR
Alfonso L. Ayala, Universidad Nacional Mayor de San Marcos , Perú. Juan M. Cisneros, Universidad Nacional Mayor de San Marcos , Perú. José A. Chumacero, Universidad Nacional Mayor de San Marcos , Perú. Hugo Sánchez, Universidad Nacional Mayor de San Marcos , Perú.
Documento de Trabajo OMEGA BETA GAMMA, Nro. 16-2015, diciembre 2015. International Standard Serial Number ISSN 2312-
UNIVERSIDAD NACIONAL MAYOR DE SAN MARCOS Facultad de Ciencias Económicas Av. Venezuela, cuadra 34. Teléfono 619-7000, anexo 2231. Lima 01 Perú
1. Introducción.
MATLAB es un programa de amplia difusión en las ciencias “exactas” como la física, la química o las matemáticas, tiene capacidades de cálculo numérico y también simbólico que son utilizados en economía para la construcción de modelos en micro y macroeconomía, así también como en econometría y estadística, muy útiles por su flexibilidad y potencia. Si bien en principio parecería que su uso es complicado, permite reforzar muchos conceptos matemáticos, así como construir modelos en pocos pasos que formalizan la teoría económica, y probar de esta manera modelos teóricos de una manera más eficiente. En la segunda sección se introducen algunos comandos básicos en MATLAB. La tercera sección muestra cómo desarrollar programas y funciones personalizadas, principalmente aplicadas a modelos macroeconómicos, se finaliza con una aplicación de programación en modelos de la teoría económica.
2. COMANDOS BASICOS EN MATLAB
Interface de Matlab
Cuando se inicia el programa Matlab se muestra tres ventanas:
Command Window: es la ventana central, aquí se ingresan las órdenes al programa, en esta ventana se observa el símbolo del sistema: ≫ llamado prompt. Current Folder: muestra los archivos presentes en el directorio por defecto, o directorio de trabajo del programa. Workspace: muestra las variables en memoria, estos pueden ser constantes, vectores, arrays, variables binarias, estructuras, etc.
Figura Nº 1. Interface del programa Matlab (R2015a).
En la ventana Workspace se muestran los símbolos de los elementos creados en la sesión actual del programa. Algunos de estos se muestran en la Tabla No. 1.
Tabla No. 1. Símbolos de las principales variables de uso en Matlab.
Array Cadena de texto Función anónima Función personalizada
Previamente al estudio de los comandos, muchas veces es útil almacenar las órdenes ejecutadas y resultados de la sesión actual en un registro fácil de revisar posteriormente. Para guardar los comandos y resultados ejecutados en MATLAB se puede utilizar el comando^1 :
diary NombredelArchivo.txt
diary off
format short 3. format long 3. format rat 355/ format bank 3.
(^1) El archivo generado se grabará en el directorio de trabajo actual y se mostrará en la ventana Current
Folder.
clear x
A = rand(6,6) B = rand(6,4) A = 0.7943 0.6541 0.9133 0.4427 0.8687 0. 0.3112 0.6892 0.1524 0.1067 0.0844 0. 0.5285 0.7482 0.8258 0.9619 0.3998 0. 0.1656 0.4505 0.5383 0.0046 0.2599 0. 0.6020 0.0838 0.9961 0.7749 0.8001 0. 0.2630 0.2290 0.0782 0.8173 0.4314 0.
B = 0.5797 0.5132 0.2400 0. 0.5499 0.4018 0.4173 0. 0.1450 0.0760 0.0497 0. 0.8530 0.2399 0.9027 0. 0.6221 0.1233 0.9448 0. 0.3510 0.1839 0.4909 0.
ans =
ans =
ans =
ans = 0.7943 0.6541 0.9133 0.4427 0.8687 0. 0.3112 0.6892 0.1524 0.1067 0.0844 0. 0.5285 0.7482 0.8258 0.9619 0.3998 0. 0.1656 0.4505 0.5383 0.0046 0.2599 0.
ans = 0.6541 0. 0.6892 0. 0.7482 0. 0.4505 0. 0.0838 0. 0.2290 0.
N = randi([1 7],[3,2]) N = 5 1 3 4 7 3
randn(3,3) L = 2.7694 0.7254 -0. -1.3499 -0.0631 -0. 3.0349 0.7147 1.
M = randn(3,6) M = 1.4090 - 1.2075 0.4889 - 0.3034 0.8884 - 0. 1.4172 0.7172 1.0347 0.2939 -1.1471 -2. 0.6715 1.6302 0.7269 -0.7873 -1.0689 1.
rand(4) ans = 0.6797 0.4984 0.2238 0. 0.6551 0.9597 0.7513 0. 0.1626 0.3404 0.2551 0. 0.1190 0.5853 0.5060 0.
eye(5) C = 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
eye(5,4) ans = 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0
C=zeros(3,4) C = 0 0 0 0 0 0 0 0 0 0 0 0
C=zeros(1,4) C = 0 0 0 0
o = ones(3,1) o = 1 1 1
diag(A) ans = 1 5 9
diag(diag(A)) ans = 1 0 0 0 5 0 0 0 9
randn(size(A)) ans = -1.4916 2.3505 -0.
eye(size(A)) ans = 1 0 0 0 1 0 0 0 1
[eye(4) diag([1 2 3 4])] ans = 1 0 0 0 1 0 0 0 0 1 0 0 0 2 0 0 0 0 1 0 0 0 3 0 0 0 0 1 0 0 0 4
B = [zeros(3,4) ones(3,3)] ans = 0 0 0 0 1 1 1 0 0 0 0 1 1 1 0 0 0 0 1 1 1
B(1,3:end) ans = 0 0 1 1 1
B(3,2:end) ans = 0 0 0 1 1 1
B(1:end-1,end) ans = 1 1
ans = 0 0 0
ans = 0 0 0 0 1 1 1
ans = 0 0 0 0
B(1,:) = ones(1,7) B = 1 1 1 1 1 1 1 0 0 0 0 1 1 1 0 0 0 0 1 1 1
B = 1 1 1 -1 1 1 1 0 0 0 -1 1 1 1 0 0 0 -1 1 1 1
ans = 0
F(ans) ans = []
find(F>2) ans = 2 3
C = [A; B]
𝐵 =
[
2 2 2 0 5 5 5 2 2 2 0 5 5 5 3 3 3 0 5 5 5 0 0 0 1 0 0 0 4 4 7 0 9 9 9 4 4 7 0 9 9 9 4 4 4 0 9 9 9]
𝐴 =
[
1 1 1 0 0 1 1 1 0 0 1 1 1 0 0 0 0 0 5 5 0 0 0 5 5]
𝐴 =
[
1 2 1 0 3 10 3 1 4 0 − 5 14 0 0 − 1 − 2 21 0 2 5 3 − 8 0 5 𝑝𝑖 ]
x = A\B
H = [G eye(2)] H = 2 5 1 0 1 3 0 1
H = [G diag([1 1])] H = 2 5 1 0 1 3 0 1
𝐴 = [
0 −2 − 1 3 3 −1 −2 −
] 𝐵 = [
1 2 3 −1 0 4 0 2 2
] 𝐶 = [
1 2 − −3 4 5 −4 2 6
]
𝐷 = [
4 −2 1 7 3 0 2 0 1
] 𝐸 = [
1 0 0 0 0 1 0 1 0
] 𝐹 = [
1 −1 2 1 0 3 4 0 2
]
x = 1: x = 1 2 3 4 5 6 7 8
x = 1:2: x = 1 3 5 7
x = linspace(2,9,5) x = 2 3.75 5.5 7.25 9