introducción a matlab

24
Guilmer González Análisis Numérico I Introducción a Matlab Introducción a Matlab Lectura 1

Upload: afram

Post on 11-Jan-2016

35 views

Category:

Documents


0 download

DESCRIPTION

Introducción a Matlab. Lectura 1. Pre-requisitos. Conocimientos básicos de Cálculo y Algebra Lineal Experiencia en programación (útil, mas no es indispensable) Experiencia en el uso de la computadora y el Internet Buena disposición, curiosidad. Acerca de MatLab. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Introducción a Matlab

Guilmer González

Análisis Numérico I

Introducción a MatlabIntroducción a MatlabLectura 1

Page 2: Introducción a Matlab

2Introducción a MatlabIntroducción a Matlab

Pre-requisitos

Conocimientos básicos de Cálculo y Algebra Lineal

Experiencia en programación (útil, mas no es indispensable)

Experiencia en el uso de la computadora y el Internet

Buena disposición, curiosidad.

Page 3: Introducción a Matlab

3Introducción a MatlabIntroducción a Matlab

Acerca de MatLab

MATLAB = MATrix LABoratory

Se desarrolló en lenguaje Fortran 77 como interface para el uso de rutinas del algebra lineal (eispak/Linpak) diseñado por Cleve Moler.

Comercializado en 1984 por Mathworks Inc. http://www.mathworks.com

Page 4: Introducción a Matlab

4Introducción a MatlabIntroducción a Matlab

Sobre su desarrollo actual

El núcleo del sistema está escrito en lenguaje C.

Cuenta con un número significativo de rutinas conocidas como m-files. La contribución de la comunidad científica ha permitido su crecimiento.

m-filesC-kernel

Optimization Image ToolBox.

Virtual Reality

Simulink

Page 5: Introducción a Matlab

5Introducción a MatlabIntroducción a Matlab

Sobre su desarrollo ...

MATLAB cuenta con cientos de m-files, códico fuente que puede ser modificado.

MATLAB se encuentra disponible para PC (Win9x, W2K, XP, Linux), para Mac and Unix (Sun/HP/VMS/SGI/Alpha/...)

Los archivos m-files son independientes de la plataforma.

La última versión es MATLAB 6.1, Release 12.1 (2001).

La versión 5.3, Release 11 data de 1999.

Page 6: Introducción a Matlab

6Introducción a MatlabIntroducción a Matlab

Entorno de programación

Opciones de menús

Línea de comandos

Entorno de trabajo

Page 7: Introducción a Matlab

7Introducción a MatlabIntroducción a Matlab

Cálculos interactivos

Matlab es interactivo. No es necesario declarar variables para operar con ellas.

>> 2+3*4/2

>> a=5e-3; b=1; a+b

Las más conocidas funciones elementales, así como constantes, se encuentran definidas.

>> cos(pi)

>> abs(1+i)

>> sin(pi)

Page 8: Introducción a Matlab

8Introducción a MatlabIntroducción a Matlab

Acerca de MatLab

Un entorno interactivo que permite la experimentación

Trabajo por arreglos de datos

Representación gráfica rápida

Programación sencilla

Resultados inmediatos

Calidad de trabajos finales

Desarrollo de software

Page 9: Introducción a Matlab

9Introducción a MatlabIntroducción a Matlab

Desarrollo de software

>> pdesolve

>> simulink

Page 10: Introducción a Matlab

10Introducción a MatlabIntroducción a Matlab

Desarrollo de software

>> unamalla

Control panel

Display window

Page 11: Introducción a Matlab

11Introducción a MatlabIntroducción a Matlab

Aritmética de punto flotante en MatlabIEEE Standard para doble precisión

x = ± (1+f )·2e

f = d1/2 + … + d52/252, dk = 0,1

-1022 <= e <= 1023

Round-off: eps = 2-52

Underflow: realmin = 2-1022

Overflow: realmax = (2-eps) ·21023

s e f1 2 12 13 64

Page 12: Introducción a Matlab

12Introducción a MatlabIntroducción a Matlab

Cálculos interactivos

Matlab usa doble precision con lo cual, se cuenta con 16 dígitos significativos

>> format long>> format compactLas variables pueden ser almacenadas en

un archivo

>> save dump>> clear>> load dump

Page 13: Introducción a Matlab

13Introducción a MatlabIntroducción a Matlab

Cálculos interactivosPodemos saber qué variable contamos en

cada momento

>> who>> whosSe cuenta con una ayuda en línea e

inmediata.

>> help functionUna ayuda más profunda también se tiene

disponible

>> helpdesk Se puede obtener los manuales en PDF

Page 14: Introducción a Matlab

14Introducción a MatlabIntroducción a Matlab

Vectores y MatricesLos vectores (arreglos) son definidos como

>> v = [1 2,4,-5]

Se cuenta con operaciones típicas

>> v + 2

>> v.^2

Se pueden visualizar los datos rápidamente

>> plot(v)

>> plot(v,’*:’)

>> bar(v)

>> pie(abs(v))

Page 15: Introducción a Matlab

15Introducción a MatlabIntroducción a Matlab

Vectores y MatricesLas matrices (arreglos 2D) se definine en la

forma

>> A = [1 2 3;4,-5,6;5 -6,7]Se cuenta con las operaciones típicas entre

matrices.

>> B = A’>> A*B>> A+BMATLAB es case-sensitive A and a son

distintas

Page 16: Introducción a Matlab

16Introducción a MatlabIntroducción a Matlab

Vectores y MatricesAccediendo a elementos

>> A(2,3)Accediendo a columnas completas

>> A(1:2,:)La instrucción 1:2 es idéntico a [1 2],

2:3:8 es lo mismo que [2 5 8]Podemos realizar distinta referencia de los

elementos

>> A([3 2],[2 1])>> B=[A(3,2) A(3,1);A(2,2) A(2,1)]

Page 17: Introducción a Matlab

17Introducción a MatlabIntroducción a Matlab

Vectores y Matrices

Las funciones elementales puden ser aplicadas a lo elementos de la matriz

>> sin(A)>> help elmat; help elfunSe cuenta con funciones especiales y

operadores

>> sqrtm(A)>> A.^2>> A^2>> A.*B

Page 18: Introducción a Matlab

18Introducción a MatlabIntroducción a Matlab

Vectores y Matrices

Algebra Lineal Numérica

>> inv(A)

>> B\A

>> det(A)

>> rank(A)

En las funciones puede variar el número de argumentos a la entrada o en la salida.

>> [V,D]=eig(A)

Page 19: Introducción a Matlab

19Introducción a MatlabIntroducción a Matlab

Algunos gráficos 2D>> x = linspace(0,2*pi,50);>> plot(x, sin(x))

0 1 2 3 4 5 6 7-1

-0.8

-0.6

-0.4

-0.2

0

0.2

0.4

0.6

0.8

1

Page 20: Introducción a Matlab

20Introducción a MatlabIntroducción a Matlab

0 1 2 3 4 5 6 7-1.5

-1

-0.5

0

0.5

1

1.5

>> x = linspace(0,2*pi,50);

>> plot(x, sin(x)+.05*sin(50*x))

Page 21: Introducción a Matlab

21Introducción a MatlabIntroducción a Matlab

0 1 2 3 4 5 6 7-1.5

-1

-0.5

0

0.5

1

1.5

>> x = linspace(0,2*pi,150);

>> plot(x, sin(x)+.05*sin(50*x))

Page 22: Introducción a Matlab

22Introducción a MatlabIntroducción a Matlab

Algunos gráficosGráficos 3D

>> A = zeros(32);>> A(14:16,14:16) = ones(3);>> F=abs(fft2(A));>> mesh(F)>> rotate3d on

Page 23: Introducción a Matlab

23Introducción a MatlabIntroducción a Matlab

Algunos gráficosImágenes en bmp,jpg, etc. pueden ser

desplegadas

>> load mandrill

>> image(X); colormap(map)

>> axis image off

Se puede acceder y modificar las propiedades del gráfico

>> knot

>> cameramenu

>> material metal

Page 24: Introducción a Matlab

24Introducción a MatlabIntroducción a Matlab

Siguiente sesión

Un poco de graficación en 2D