Fernando Oropeza Rosales -...

48
Introducción a Matlab Jiutepec, Morelos 27, 28 y 29 de Abril de 2011 Fernando Oropeza Rosales

Transcript of Fernando Oropeza Rosales -...

Page 1: Fernando Oropeza Rosales - cabernet.atmosfcu.unam.mxcabernet.atmosfcu.unam.mx/publico/Curso_IMTA/... · La clase será Miércoles, Jueves y Viernes Horario de 09:00 a 12:50 una hora

Introducción a Matlab

Jiutepec, Morelos 27, 28 y 29 de Abril de 2011

Fernando Oropeza Rosales

Page 2: Fernando Oropeza Rosales - cabernet.atmosfcu.unam.mxcabernet.atmosfcu.unam.mx/publico/Curso_IMTA/... · La clase será Miércoles, Jueves y Viernes Horario de 09:00 a 12:50 una hora

La clase será Miércoles, Jueves y Viernes

Horario de 09:00 a 12:50 una hora con 20 min. para

comer, por la tarde de 14:10 a 18:00 hrs

Logística

Día Lugar Horario

Miércoles 27 Sala de video-conferencias

Sala de video-conferencias

09:00 a 13:20

14:40 a 18:00

Jueves 28 Salón 2 DEPFI

Salón 2 DEPFI

09:00 a 13:20

14:40 a 18:00

Viernes 29 Salón 2 DEPFI

Salón 2 DEPFI

09:00 a 13:20

14:40 a 18:00

Page 3: Fernando Oropeza Rosales - cabernet.atmosfcu.unam.mxcabernet.atmosfcu.unam.mx/publico/Curso_IMTA/... · La clase será Miércoles, Jueves y Viernes Horario de 09:00 a 12:50 una hora

En el DVD están disponibles 3 directorios, abran el

directorio que corresponda con el tipo de máquina que

tienen (win32 ó win64) y ejecutar setup.exe

Instalando

Page 4: Fernando Oropeza Rosales - cabernet.atmosfcu.unam.mxcabernet.atmosfcu.unam.mx/publico/Curso_IMTA/... · La clase será Miércoles, Jueves y Viernes Horario de 09:00 a 12:50 una hora

Instalando

Seleccionar la opción install without using internet y darle

next, les pedirá que acepten los términos de la licencia y

pasan a la siguiente ventana

Page 5: Fernando Oropeza Rosales - cabernet.atmosfcu.unam.mxcabernet.atmosfcu.unam.mx/publico/Curso_IMTA/... · La clase será Miércoles, Jueves y Viernes Horario de 09:00 a 12:50 una hora

Instalando

En el directorio /crack abrir el archivo install y copiar el

numero de llave que aparece en la opción standalone

Page 6: Fernando Oropeza Rosales - cabernet.atmosfcu.unam.mxcabernet.atmosfcu.unam.mx/publico/Curso_IMTA/... · La clase será Miércoles, Jueves y Viernes Horario de 09:00 a 12:50 una hora

Instalando

Seleccionan la opción Provide File Installation Key y

copian ahí el número que viene del archivo install le dan

continuar …

Page 7: Fernando Oropeza Rosales - cabernet.atmosfcu.unam.mxcabernet.atmosfcu.unam.mx/publico/Curso_IMTA/... · La clase será Miércoles, Jueves y Viernes Horario de 09:00 a 12:50 una hora

Instalando

Les preguntará qué tipo de instalación quieren hacer,

seleccionan Typical y continúan, les mostrará el path en

el que instalará Matlab y les avisará que si no existe lo

tiene que crear, ustedes aceptan….

Page 8: Fernando Oropeza Rosales - cabernet.atmosfcu.unam.mxcabernet.atmosfcu.unam.mx/publico/Curso_IMTA/... · La clase será Miércoles, Jueves y Viernes Horario de 09:00 a 12:50 una hora

Instalando

Confirman que esa es la instalación que quieren y

continúan, les aparecerá la ventana de estado, que

muestra el avance en la instalación (tomará varios

minutos)

Page 9: Fernando Oropeza Rosales - cabernet.atmosfcu.unam.mxcabernet.atmosfcu.unam.mx/publico/Curso_IMTA/... · La clase será Miércoles, Jueves y Viernes Horario de 09:00 a 12:50 una hora

Instalando

Al terminar les pedirá que activen el Matlab, seleccionen

la opción Activate manually Without Internet, y continúen

Page 10: Fernando Oropeza Rosales - cabernet.atmosfcu.unam.mxcabernet.atmosfcu.unam.mx/publico/Curso_IMTA/... · La clase será Miércoles, Jueves y Viernes Horario de 09:00 a 12:50 una hora

InstalandoElegir la opción de Provide the path to the license file y

utilizar el boton browse para señalar el path al archivo

lic_standalone.dat que se encuentra dentro del directorio

/crack

Page 11: Fernando Oropeza Rosales - cabernet.atmosfcu.unam.mxcabernet.atmosfcu.unam.mx/publico/Curso_IMTA/... · La clase será Miércoles, Jueves y Viernes Horario de 09:00 a 12:50 una hora

Iniciando Matlab

Page 12: Fernando Oropeza Rosales - cabernet.atmosfcu.unam.mxcabernet.atmosfcu.unam.mx/publico/Curso_IMTA/... · La clase será Miércoles, Jueves y Viernes Horario de 09:00 a 12:50 una hora

Configurando el espacio de trabajo

Ventana de comandosWorkSpace

Editorfiguras

Page 13: Fernando Oropeza Rosales - cabernet.atmosfcu.unam.mxcabernet.atmosfcu.unam.mx/publico/Curso_IMTA/... · La clase será Miércoles, Jueves y Viernes Horario de 09:00 a 12:50 una hora

Configurando el espacio de trabajo

Page 14: Fernando Oropeza Rosales - cabernet.atmosfcu.unam.mxcabernet.atmosfcu.unam.mx/publico/Curso_IMTA/... · La clase será Miércoles, Jueves y Viernes Horario de 09:00 a 12:50 una hora

Qué es Matlab?

MATLAB, de las palabras “MATrix LABoratory”. Es un

Lenguaje de Programación de Cuarta Generación (4GL)

que son herramientas enfocadas a optimizar el desarrollo

de software. MATLAB está basado en el uso de técnicas

de álgebra de matrices para resolver problemas, sin tener

que escribir los programas en lenguajes tradicionales

como C++ o Fortran.

Matlab es un lenguaje interpretativo (no compilado)

Hoy en día existen millones de usuarios en el mundo que

desarrollan y comparten programas en Matlab para

múltiples aplicaciones y disciplinas

Page 15: Fernando Oropeza Rosales - cabernet.atmosfcu.unam.mxcabernet.atmosfcu.unam.mx/publico/Curso_IMTA/... · La clase será Miércoles, Jueves y Viernes Horario de 09:00 a 12:50 una hora

Comandos Básicos

Para salir de Matlab:

>> exit

>> quit

Para cambiar el directorio de trabajo se puede hacer en línea

utilizando los comandos cd y pwd o se puede utilizar la

opción gráfica (cambiarse al directorio /Curso_IMTA)

Page 16: Fernando Oropeza Rosales - cabernet.atmosfcu.unam.mxcabernet.atmosfcu.unam.mx/publico/Curso_IMTA/... · La clase será Miércoles, Jueves y Viernes Horario de 09:00 a 12:50 una hora

Directorio de Trabajo

En el directorio de su preferencia generar un subdirectorio

de nombre:

/Curso_IMTA

Dentro de él, generen un subdirectorio de nombre:

/programas

Dentro de él generar un subdirectorio de nombre:

/basicos

Cambiar su Matlab a ese directorio (cd, pwd)

Page 17: Fernando Oropeza Rosales - cabernet.atmosfcu.unam.mxcabernet.atmosfcu.unam.mx/publico/Curso_IMTA/... · La clase será Miércoles, Jueves y Viernes Horario de 09:00 a 12:50 una hora

Comandos Básicos

Para obtener información sobre el uso de los comandos y

funciones en Matlab, se utiliza help y el nombre del

comando, esto nos da una descripción corta del uso de la

función, también se puede utilizar la opción doc, que

muestra una explicación más detallada.

Si se utiliza help sin argumento, se muestran todos los

tópicos de ayuda

Page 18: Fernando Oropeza Rosales - cabernet.atmosfcu.unam.mxcabernet.atmosfcu.unam.mx/publico/Curso_IMTA/... · La clase será Miércoles, Jueves y Viernes Horario de 09:00 a 12:50 una hora

Comandos BásicosAsignación de variables:

>> x=2

x=

2

Se pueden definir vectores

>> x=[3 2 6 8]

x=

3 2 6 8

También se pueden definir matrices

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

x=

1 2 3

4 5 6

7 8 9

Page 19: Fernando Oropeza Rosales - cabernet.atmosfcu.unam.mxcabernet.atmosfcu.unam.mx/publico/Curso_IMTA/... · La clase será Miércoles, Jueves y Viernes Horario de 09:00 a 12:50 una hora

Comandos Básicos

Operaciones matemáticas elementales:

>> x=2+3

x=

5

Si no se asigna el resultado a una variable, matlab lo

asigna a la variable ans (answer)

>> 2+3

ans=

5

Para saber que variables tengo definidas utilizo el

comando who, para saber el valor de una variable tecleo

la variable y me responde con el valor

Page 20: Fernando Oropeza Rosales - cabernet.atmosfcu.unam.mxcabernet.atmosfcu.unam.mx/publico/Curso_IMTA/... · La clase será Miércoles, Jueves y Viernes Horario de 09:00 a 12:50 una hora

Operaciones matemáticaselementales

^ Exponenciación

* Multiplicación

/ División

sqrt Raíz cuadrada

+ Suma

- Resta

Las operaciones se realizan en este orden de prioridad.

Si se quiere forzar un determinado orden, se deben

utilizar paréntesis

>> 2/2+1

ans=

2

Page 21: Fernando Oropeza Rosales - cabernet.atmosfcu.unam.mxcabernet.atmosfcu.unam.mx/publico/Curso_IMTA/... · La clase será Miércoles, Jueves y Viernes Horario de 09:00 a 12:50 una hora

Operaciones matemáticaselementales

>> 2/(2+1)

ans=

0.6667

Para definir decimales se utiliza punto (no coma) y en

Matlab las mayúsculas y minúsculas no son iguales, es

decir X es una variable distinta que x

Page 22: Fernando Oropeza Rosales - cabernet.atmosfcu.unam.mxcabernet.atmosfcu.unam.mx/publico/Curso_IMTA/... · La clase será Miércoles, Jueves y Viernes Horario de 09:00 a 12:50 una hora

Funciones elementales

sin seno

cos coseno

tan tangente

sec secante

csc cosecante

cot cotangente

exp exponencial

log logaritmo natural

sqrt raíz cuadrada

abs valor absoluto

Para obtener las funciones trigonométricas inversas, se

añade una a delante del nombre de la función, todos los

argumentos están dados en radianes

Page 23: Fernando Oropeza Rosales - cabernet.atmosfcu.unam.mxcabernet.atmosfcu.unam.mx/publico/Curso_IMTA/... · La clase será Miércoles, Jueves y Viernes Horario de 09:00 a 12:50 una hora

Enlace con el sistema operativo

El comando ! Realiza un enlace entre Matlab y el sistema

operativo existente, ejemplo:

>> !del salida.dat

Este comando borrará el archivo salida.dat del directorio

de trabajo

Para compactar/descompactar archivos

>> gzip

>> tar

Page 24: Fernando Oropeza Rosales - cabernet.atmosfcu.unam.mxcabernet.atmosfcu.unam.mx/publico/Curso_IMTA/... · La clase será Miércoles, Jueves y Viernes Horario de 09:00 a 12:50 una hora

Otros comandos útiles

ver Muestra que versión de Matlab está instalada

what Muestra los elementos Matlab que hay en el

directorio de trabajo (archivos que no estan

relacionados con Matlab no serán mostrados)

clock Muestra la fecha y hora actual (vector de 6

elementos)

date Muestra la fecha actual del sistema

who Muestra que variables se encuentran definidas

whos Muestra mas información que who

clear Se utiliza para borrar variables de la memoria

clear all borra todas las variables en memoria

Page 25: Fernando Oropeza Rosales - cabernet.atmosfcu.unam.mxcabernet.atmosfcu.unam.mx/publico/Curso_IMTA/... · La clase será Miércoles, Jueves y Viernes Horario de 09:00 a 12:50 una hora

Otros comandos útiles

clf Limpia la ventana de figura activa

pwd Muestra el directorio de trabajo actual

cd Nos permite cambiar de directorio

cd .. Baja un nivel en la estructura de directorios

Page 26: Fernando Oropeza Rosales - cabernet.atmosfcu.unam.mxcabernet.atmosfcu.unam.mx/publico/Curso_IMTA/... · La clase será Miércoles, Jueves y Viernes Horario de 09:00 a 12:50 una hora

Salvar y almacenar variables

Para salvar el valor de una variable en un archivo de texto

>> save nombre.archivo variable -ascii

Para leer el archivo de texto

>> load nombre.archivo

Para asignar el contenido del archivo a una variable

>> x= load(„nombre.archivo‟)

Page 27: Fernando Oropeza Rosales - cabernet.atmosfcu.unam.mxcabernet.atmosfcu.unam.mx/publico/Curso_IMTA/... · La clase será Miércoles, Jueves y Viernes Horario de 09:00 a 12:50 una hora

Salvar y almacenar variables

Para salvar todas las variables que se tienen definidas en

una sesión:

>> save misesion

Esto genera un archivo misesion.mat en el directorio

actual de trabajo que contiene TODAS las variables que se

generaron en esa sesión hasta ese momento. Para leer

una sesión guardada, se utiliza load.

>> load misesion.mat

Esto cargará todas las variables que fueron previamente

guardadas en ese archivo

Page 28: Fernando Oropeza Rosales - cabernet.atmosfcu.unam.mxcabernet.atmosfcu.unam.mx/publico/Curso_IMTA/... · La clase será Miércoles, Jueves y Viernes Horario de 09:00 a 12:50 una hora

Precisión Toda la aritmética se realiza en doble precisión, lo cual

significa (para una máquina de 32 bits) 16 dígitos

decimales de ocurrencia, normalmente los resultados son

desplegados en formato corto.

>> a=sqrt(2)

a=

1.4142

Pero este formato se puede cambiar utilizando el comando

format, ej: format long

>> a=sqrt(2)

a=

1.41421356237310

Page 29: Fernando Oropeza Rosales - cabernet.atmosfcu.unam.mxcabernet.atmosfcu.unam.mx/publico/Curso_IMTA/... · La clase será Miércoles, Jueves y Viernes Horario de 09:00 a 12:50 una hora

Máximos y mínimos

Existen las funciones max y min que se utilizan para

encontrar el máximo y mínimo de una variable, si la

variable es un vector, arrojan un valor único, si es una

matriz arrojan el máximo o mínimo de cada columna

>> a=[ 3 5 1 10 8 7 6]

a=

3 5 1 10 8 7 6

max(a)

ans=

10

Page 30: Fernando Oropeza Rosales - cabernet.atmosfcu.unam.mxcabernet.atmosfcu.unam.mx/publico/Curso_IMTA/... · La clase será Miércoles, Jueves y Viernes Horario de 09:00 a 12:50 una hora

Máximos y mininos>> a=[7 2 3; 4 8 6; 1 4 9]

a=

7 2 3

4 8 6

1 4 9

>> max(a)

ans=

7 8 9

Si se quiere calcular el máximo o el mínimo de una matriz

se utiliza:

>> max(a(:))

ans=

9

Page 31: Fernando Oropeza Rosales - cabernet.atmosfcu.unam.mxcabernet.atmosfcu.unam.mx/publico/Curso_IMTA/... · La clase será Miércoles, Jueves y Viernes Horario de 09:00 a 12:50 una hora

Redondeo de númerosMatlab tiene funciones para redondear números de punto

flotante a enteros:

>> f=[-0.5 0.1 0.5];

Para redondear al entero más cercano

>> round(f)

ans= -1 0 1

Para redondear hacia el cero

>> fix(f)

ans= 0 0 0

Page 32: Fernando Oropeza Rosales - cabernet.atmosfcu.unam.mxcabernet.atmosfcu.unam.mx/publico/Curso_IMTA/... · La clase será Miércoles, Jueves y Viernes Horario de 09:00 a 12:50 una hora

Redondeo de númerosPara redondear al entero más cercano hacia arriba

>> ceil (f)

ans= 0 1 1

Para redondear al entero más cercano hacia abajo

>> floor(f)

ans= -1 0 0

Para calcular operaciones sobre todos los elementos de f

>> sum(f) suma

>> prod(f) producto

>> mean(f) promedio

Page 33: Fernando Oropeza Rosales - cabernet.atmosfcu.unam.mxcabernet.atmosfcu.unam.mx/publico/Curso_IMTA/... · La clase será Miércoles, Jueves y Viernes Horario de 09:00 a 12:50 una hora

Operadores

Las relaciones entre dos variables en MATLAB se pueden

establecer mediante ciertos operadores

< Menor que

> Mayor que

<= Menor o igual

>= Mayor o igual

== Igual

~= Diferente.

Nótese que "=" se usa para asignar un valor a una

variable, mientras que "==" se usa como un operador

Page 34: Fernando Oropeza Rosales - cabernet.atmosfcu.unam.mxcabernet.atmosfcu.unam.mx/publico/Curso_IMTA/... · La clase será Miércoles, Jueves y Viernes Horario de 09:00 a 12:50 una hora

Operadores Lógicos

Diferentes relaciones se pueden conectar mediante los

operadores lógicos

& y

| o

~ no

Condicionales

1) If-end Si la condición es verdadera ejecuta programa

2) if-else-end Si condición no es verdadera ejecuta 2

3) if-elseif-end Si condicion 1 no es verdadera evalua 2

Page 35: Fernando Oropeza Rosales - cabernet.atmosfcu.unam.mxcabernet.atmosfcu.unam.mx/publico/Curso_IMTA/... · La clase será Miércoles, Jueves y Viernes Horario de 09:00 a 12:50 una hora

Ciclos

El ciclo for tiene la siguiente forma:

for i=inicio:incremento:final

<programa>

end

ejemplo:

for i=1:5

c=2*i

pause(0.5);

end

Matlab permite que se utilice un vector como índice

for i=[2,4,5,7,11]

<programa>

end

Page 36: Fernando Oropeza Rosales - cabernet.atmosfcu.unam.mxcabernet.atmosfcu.unam.mx/publico/Curso_IMTA/... · La clase será Miércoles, Jueves y Viernes Horario de 09:00 a 12:50 una hora

Ciclos Anidados

for i=1:10

for j=1:10

A(i,j)=i/j;

end

end

Los índices de una matriz en matlab siempre representan

(número de renglón, número de columna)

while (condición)

<programa>

end

Page 37: Fernando Oropeza Rosales - cabernet.atmosfcu.unam.mxcabernet.atmosfcu.unam.mx/publico/Curso_IMTA/... · La clase será Miércoles, Jueves y Viernes Horario de 09:00 a 12:50 una hora

Ejercicios

Ir a Matlab /programas/basicos/P001_xy.m

Discutir opciones de “debuger”

Page 38: Fernando Oropeza Rosales - cabernet.atmosfcu.unam.mxcabernet.atmosfcu.unam.mx/publico/Curso_IMTA/... · La clase será Miércoles, Jueves y Viernes Horario de 09:00 a 12:50 una hora

Ejercicios

Verificar si la instrucción magic(7) efectivamente produce una

matriz en la que la suma de cada uno de sus renglones, de

cada una de sus columnas y de su diagonal son iguales

(utilizar la función diag)

Page 39: Fernando Oropeza Rosales - cabernet.atmosfcu.unam.mxcabernet.atmosfcu.unam.mx/publico/Curso_IMTA/... · La clase será Miércoles, Jueves y Viernes Horario de 09:00 a 12:50 una hora

Ejercicios

p = input('Escribe una palabra: ','s');

n=length(p);

anio = input('Escribe un año: ');

if(mod(anio,4)==0)

if(mod(i,7)==0)

Page 40: Fernando Oropeza Rosales - cabernet.atmosfcu.unam.mxcabernet.atmosfcu.unam.mx/publico/Curso_IMTA/... · La clase será Miércoles, Jueves y Viernes Horario de 09:00 a 12:50 una hora

Ejercicios

Page 41: Fernando Oropeza Rosales - cabernet.atmosfcu.unam.mxcabernet.atmosfcu.unam.mx/publico/Curso_IMTA/... · La clase será Miércoles, Jueves y Viernes Horario de 09:00 a 12:50 una hora

Manejo de FechasEn Matlab existen funciones especiales para el manejo de

fechas.

>> datenum(2011,04,27)

ans=

734620

Es el número de días que han transcurrido desde una

fecha de referencia (primero de enero del año 0000), este

número no tiene que ser entero, ya que en la función se

pueden incluir horas, minutos y segundos (para notar la

diferencia es necesario cambiar el formato a long)

Esto nos permite hacer operaciones con las fechas, p.e.

calcular los días que han transcurrido desde el 1 de enero

hasta la fecha de hoy

Page 42: Fernando Oropeza Rosales - cabernet.atmosfcu.unam.mxcabernet.atmosfcu.unam.mx/publico/Curso_IMTA/... · La clase será Miércoles, Jueves y Viernes Horario de 09:00 a 12:50 una hora

Manejo de Fechas

De la misma forma se puede convertir cualquier fecha que

se encuentra en formato de número a formato gregoriano

(fecha)

>> datestr(734650)

ans=

27-May-2011

En los archivos NetCDF es muy común que la fecha venga

dada en número de días (o de horas) transcurridas desde

una fecha de referencia y estas funciones son muy útiles

para trabajar las fechas.

Page 43: Fernando Oropeza Rosales - cabernet.atmosfcu.unam.mxcabernet.atmosfcu.unam.mx/publico/Curso_IMTA/... · La clase será Miércoles, Jueves y Viernes Horario de 09:00 a 12:50 una hora

Busqueda por índices globalesEn Matlab, existe una función para encontrar valores

específicos en un vector o en una matriz, la función es find

y nos regresa el índice global (o los índices globales) en el

que la variable analizada presente ese valor, ejemplo:

>>x=[1 2 5 7 9 10 1 9 6 3 1 8 5 6 1 11 12 13 1];

>>find(x==1)

ans=

1 7 11 15 19

Uno puede guardar esos indices en una variable y luego

utilizarlos para hacer operaciones específicas, ej.

>> indx=find(x==1);

>> x(indx)=0

ans=

0 2 5 7 9 10 0 9 6 3 0 8 5 6 0 11 12 13 0

Page 44: Fernando Oropeza Rosales - cabernet.atmosfcu.unam.mxcabernet.atmosfcu.unam.mx/publico/Curso_IMTA/... · La clase será Miércoles, Jueves y Viernes Horario de 09:00 a 12:50 una hora

Ejercicio

ind=find(x1<0);

Page 45: Fernando Oropeza Rosales - cabernet.atmosfcu.unam.mxcabernet.atmosfcu.unam.mx/publico/Curso_IMTA/... · La clase será Miércoles, Jueves y Viernes Horario de 09:00 a 12:50 una hora

Not-a-Number (NaN)

NaN es la representación aritmética de Not-a-Number, un

NaN se puede obtener como resultado de operaciones

matemáticas indefinidas como 0.0/0.0, además se utiliza

con frecuencia en datos bi o tri-dimensionales para indicar

las zonas en que cierta variable no está definida.

NaN(n) puede utilizarse como función y genera una matriz

de NaN‟s de nxn elementos.

Existe la función isnan que sirve para localizar los

elementos de un vector o matriz que son NaN, regresa

ceros en las posiciones de los elementos que no son NaN

y unos en las posiciones de los elementos que si son NaN

Page 46: Fernando Oropeza Rosales - cabernet.atmosfcu.unam.mxcabernet.atmosfcu.unam.mx/publico/Curso_IMTA/... · La clase será Miércoles, Jueves y Viernes Horario de 09:00 a 12:50 una hora

Not-a-Number (NaN)

Ejemplo:

>> x=[1 2 3 4 NaN; NaN 2 6 8 1; 2 8 9 NaN 9];

>> isnan(x)

ans=

0 0 0 0 1

1 0 0 0 0

0 0 0 1 0

Este resultado se puede asignar a una variable y combinar

con la función find como se muestra en el ejemplo:

Page 47: Fernando Oropeza Rosales - cabernet.atmosfcu.unam.mxcabernet.atmosfcu.unam.mx/publico/Curso_IMTA/... · La clase será Miércoles, Jueves y Viernes Horario de 09:00 a 12:50 una hora

Not-a-Number (NaN)

>> unos=isnan(x);

>> ind_nan=find(unos==1)

ind_ nan=

2

12

13

Nótese que los índices globales son el número de

elemento iniciando en el primer elemento del primer

renglón y contando los elementos de la primera columna,

luego la segunda y así hasta llegar al último elemento del

último renglón (que también es el último elemento de la

última columna).

Page 48: Fernando Oropeza Rosales - cabernet.atmosfcu.unam.mxcabernet.atmosfcu.unam.mx/publico/Curso_IMTA/... · La clase será Miércoles, Jueves y Viernes Horario de 09:00 a 12:50 una hora

Not-a-Number (NaN)

Una vez con los índices localizados, se pueden modificar

los valores de NaN por otro valor, p.e. por el número 66.

>> x(ind_nan)=66

x=

1 2 3 4 66

66 2 6 8 1

2 8 9 66 9

Recordando que la matriz original era

1 2 3 4 NaN

NaN 2 6 8 1

2 8 9 NaN 9