MATLAB-Sesion1

10
Matlab Básico – Sesión No.1 Expositor: Miguel Ataurima Arellano Descargado de: http://matlabperu.blogspot.com 1 [email protected] / [email protected] EXPOSITOR: Miguel Ataurima Arellano INGENIERO CONSULTOR 1 Universidad Nacional de Ingeniería Facultad de Ingeniería Eléctrica y Electrónica Lima – Perú MATLAB NIVEL BÁSICO Inicio http://matlabperu.blogspot.com ataurima@telefonica.net.pe ma2lac@msn.com Elementos del Lenguaje Funciones MATLAB Internas Expresiones y Operadores Indexación de Matrices Los archivos M SESIÓN No. 1 Fundamentos de Matlab EXPOSITOR: Miguel Ataurima Arellano INGENIERO CONSULTOR 2 Universidad Nacional de Ingeniería Facultad de Ingeniería Eléctrica y Electrónica Lima – Perú MATLAB NIVEL BÁSICO Inicio http://matlabperu.blogspot.com ataurima@telefonica.net.pe ma2lac@msn.com Elementos del Lenguaje El Sistema MATLAB Las matrices El workspace Comandos Básicos de Gestión del Workspace Tipos de Dato Palabras Reservadas < > Copyright © 2008 – [email protected] 3 El Sistema MATLAB Herramientas de Escritorio y Entorno de Desarrollo. Es el conjunto de herramientas y comodidades que nos ayudan a usar y llegar a ser mas productivos utilizando las funciones y archivos MATLAB. Muchas de estas herramientas son interfaces gráficas para usuario que incluyen el escritorio MATLAB, la ventana de comandos, la ventana e historial de comandos, el editor y depuradores, el analizador de código, gestionadores de ayuda, del workspace, de archivos y de la ruta de búsqueda. La Biblioteca de Funciones Matemáticas MATLAB. Es una colección de algoritmos computacionales que van desde funciones elementales, como una sumatoria, un seno, coseno o aritmética de números complejos, hasta las mas sofisticadas funciones como la inversa de matriz, valores propios, funciones de Bessel, y las transformadas rápidas de Fourier. El Lenguaje de Programación MATLAB. Es un lenguaje matricial de alto nivel con sentencias de control de flujo, funciones, estructuras de dato, entradas/salidas, y características de la programación orientada a objetos. Gráficos MATLAB tiene facilidades extensivas para visualizar vectores y matrices como gráficos. Incluye funciones de alto nivel para visualización de datos en dos y tres dimensiones, procesamiento de imágenes, animación y presentación de gráficos; así como funciones de bajo nivel para personalizar la apariencia de los gráficos, así como para la construcción de completas interfaces gráficas de usuario. Las Interfaces Externas MATLAB/API. Es una biblioteca que permite escribir programas en C y Fortan que interactúen con MATLAB, permitiendo invocar a rutinas desde MATLAB (enlace dinámico), para invocar a MATLAB como un motor computacional, y para la lectura y escritura de archivos MAT. Copyright © 2008 – [email protected] 4 El Escritorio MATLAB Prompt Aquí se ingresan las sentencias, comandos o funciones MATLAB Directorio actual Contenido del Directorio actual Historial de Comandos Botón Inicio

description

Conceptos básicos que nos introducen a la concepción del software Matlab, se explica algunos de los comandos y usos del programa.

Transcript of MATLAB-Sesion1

  • Matlab Bsico Sesin No.1 Expositor: Miguel Ataurima Arellano

    Descargado de: http://matlabperu.blogspot.com 1 [email protected] / [email protected]

    EXPOSITOR:

    Miguel Ataurima ArellanoINGENIERO CONSULTOR 1

    Universidad Nacional de IngenieraFacultad de Ingeniera Elctrica y Electrnica

    Lima Per

    MATLABNIVEL BSICO

    InicioInicio

    http://[email protected]@msn.com

    Elementos del LenguajeFunciones MATLAB InternasExpresiones y OperadoresIndexacin de MatricesLos archivos M

    SESIN No. 1

    Fundamentos de Matlab

    EXPOSITOR:

    Miguel Ataurima ArellanoINGENIERO CONSULTOR 2

    Universidad Nacional de IngenieraFacultad de Ingeniera Elctrica y Electrnica

    Lima Per

    MATLABNIVEL BSICO

    InicioInicio

    http://[email protected]@msn.com

    Elementos del Lenguaje

    El Sistema MATLABLas matricesEl workspaceComandos Bsicos de Gestin del WorkspaceTipos de DatoPalabras Reservadas

    >

    Copyright 2008 [email protected] 3

    El Sistema MATLAB

    Herramientas de Escritorio y Entorno de Desarrollo. Es el conjunto de herramientas y comodidades que nos ayudan a usar y llegar a ser mas productivos

    utilizando las funciones y archivos MATLAB. Muchas de estas herramientas son interfaces grficas para usuario que incluyen el escritorio MATLAB, la ventana de comandos, la ventana e historial de comandos, el editor y depuradores, el analizador de cdigo, gestionadores de ayuda, del workspace, de archivos y de la ruta de bsqueda.

    La Biblioteca de Funciones Matemticas MATLAB. Es una coleccin de algoritmos computacionales que van desde funciones elementales, como una

    sumatoria, un seno, coseno o aritmtica de nmeros complejos, hasta las mas sofisticadas funciones como la inversa de matriz, valores propios, funciones de Bessel, y las transformadas rpidas de Fourier.

    El Lenguaje de Programacin MATLAB. Es un lenguaje matricial de alto nivel con sentencias de control de flujo, funciones, estructuras de dato,

    entradas/salidas, y caractersticas de la programacin orientada a objetos.Grficos MATLAB tiene facilidades extensivas para visualizar vectores y matrices como grficos. Incluye

    funciones de alto nivel para visualizacin de datos en dos y tres dimensiones, procesamiento de imgenes, animacin y presentacin de grficos; as como funciones de bajo nivel para personalizar la apariencia de los grficos, as como para la construccin de completas interfaces grficas de usuario.

    Las Interfaces Externas MATLAB/API. Es una biblioteca que permite escribir programas en C y Fortan que interacten con MATLAB,

    permitiendo invocar a rutinas desde MATLAB (enlace dinmico), para invocar a MATLAB como un motor computacional, y para la lectura y escritura de archivos MAT.

    Copyright 2008 [email protected] 4

    El Escritorio MATLAB

    PromptAqu se ingresan las sentencias, comandos o funciones MATLAB

    Directorio actual

    Contenido del Directorio actual

    Historial de Comandos

    Botn Inicio

  • Matlab Bsico Sesin No.1 Expositor: Miguel Ataurima Arellano

    Descargado de: http://matlabperu.blogspot.com 2 [email protected] / [email protected]

    Copyright 2008 [email protected] 5

    Las matrices

    Sea la matriz A de mxn

    para ingresarla en MATLAB digitamos:

    >> A = [ a11 a12 ... a1n ; a21 a22 ... a2n ; ... ; am1 am2 ... amn ]

    nmmnmm

    n

    n

    aaa

    aaaaaa

    A

    =

    "###

    ""

    21

    22221

    11211

    inicio de matriz fin de matriz

    Nombre de la Matriz

    Separador de filas

    fila 1

    fila 2

    fila m

    fila 2 fila m

    fila 1

    NOTA: Los elementos de una misma fila deben separarse con

    espacio en blanco o coma (,) Todas las filas deben contener n elementos. Todos los elementos deben ser del mismo tipo

    Copyright 2008 [email protected] 6

    EJEMPLOSIngresar la matriz

    Ingresar la matriz

    OperadorTranspuesta

    =

    3119871940123

    M

    =

    7045

    V

    M =-3 2 10 4 91 7 89 11 -3

    Respuesta

    Respuesta

    V =-5407

    >> M = [-3 2 1; 0 4 9; 1 7 8; 9 11 -3]

    >> V = [-5; 4; 0; 7] >> V = [-5 4 0 7].'

    Respuesta

    V =-5407

    o

    Copyright 2008 [email protected] 7

    EJEMPLOIngresar la matriz

    donde

    ++=iiii

    B3324 >> B = [4+i 2+i; -3i 3-i]

    B =4.0000 + 1.0000i 2.0000 + 1.0000i

    0 - 3.0000i 3.0000 - 1.0000iRespuesta

    >> B = [4+j 2+j; -3j 3-j] >> B = [4+i 2+j; -3j 3-i] >> B = [4+i 2+j; -3*j 3-i]

    o

    o

    o1=i

    NOTA: La unidad imaginaria es representada en MATLAB por i o j Se pueden usar indistintamente en una expresin. Basta que uno de los elementos de una matriz sea complejo,

    y Matlab considerar a todos los dems como complejo.

    Copyright 2008 [email protected] 8

    El Workspace

    Es el rea de la memoria del sistema donde MATLAB registra a todas las variables que van siendo creadas durante una sesin.

    Memoria del Sistema

    workspaceEJEMPLO

    >> x = [35.56 34]x =

    35.5600 34.0000La variable x es creada y almacenada en el workspace.

    x

    EJEMPLO

    >> y = [-15 -12] + xy =

    20.5600 22.0000

    Mientras que una variable est en el workspace, sta podr ser utilizada en otros clculos.

    y

  • Matlab Bsico Sesin No.1 Expositor: Miguel Ataurima Arellano

    Descargado de: http://matlabperu.blogspot.com 3 [email protected] / [email protected]

    Copyright 2008 [email protected] 9

    whosLista las variables actualmente vigentes del workspace

    whos var1 var2 ...Solo lista las variables especificadas

    >> whosName Size Bytes ClassB 2x2 64 double array (complex)M 4x3 96 double arrayV 4x1 32 double arrayx 1x2 16 double arrayy 1x2 16 double array

    Grand total is 24 elements using 224 bytes

    >> whos B MName Size Bytes ClassB 2x2 64 double array (complex)M 4x3 96 double array

    Grand total is 16 elements using 160 bytes

    workspace

    BMVxy

    Copyright 2008 [email protected] 10

    clear var1 var2 ...Borra solo las variables especificadas (var1, var2, ...)

    clearBorra todas las variables del workspace

    >> clear M V

    >> clear >> whos>>

    workspace

    BMVxy

    >> whosName Size Bytes ClassB 2x2 64 double array (complex)x 1x2 16 double arrayy 1x2 16 double array

    Grand total is 8 elements using 96 bytes

    NOTA: Una vez eliminado el contenido entero del workspace, una llamada awhos, nos retorna de inmediato el prompt, pues no hay nada que listar. Una vez que una variable ha sido borrada del workspace, sta no ser

    posible de volver a recuperar.

    (estado inicial)

    Copyright 2008 [email protected] 11

    Tipos de Dato

    Existen 15 tipos de datos fundamentales en MATLAB. Cada uno de ellos esta dado en forma de matriz o arreglo. Esta matriz o arreglo puede tener como mnimo de tamao 0x0 pudiendo crecer hasta cualquier arreglo n dimensional de cualquier tamao.

    Arreglo[full o sparse]

    logical char NUMERICO celda estructura Manipuladorde funcin

    Clases definidas por el usuario

    Clases Java

    int8, uint8int16, uint16int32, uint32int64, uint64

    single double

    ( 1 B )

    ( 1 B )( 2 B)( 3 B)( 4 B)

    ( 2 B )

    ( 4 B ) ( 8 B )

    ( 16 B )

    B : BytesEnterosPunto Flotante ( IEEE Std 754 )

    Unicode

    Copyright 2008 [email protected] 12

    Combinacin de distintos tipos de dato

    Cuando una matriz es compuesta con elementos de distinto tipo de dato, MATLAB convierte algunos elementos de tal manera que todos los elementos de la matriz sean del mismo tipo.La conversin del tipo de dato es efectuada con respecto a la precedencia predefinida de los tipos de datos. La concatenacin con distintos tipos de dato sin generacin de error se pueden dar solo con cinco de ellos.

    TIPO charNUMERICO

    logicalentero single double

    char char char char char invlido

    entero char entero entero entero entero

    single char entero single single single

    double char entero single double double

    logical invlido entero single double logical

  • Matlab Bsico Sesin No.1 Expositor: Miguel Ataurima Arellano

    Descargado de: http://matlabperu.blogspot.com 4 [email protected] / [email protected]

    Copyright 2008 [email protected] 13

    Palabras Reservadas

    Son aquellas que son de uso exclusivo del interpretador MATLAB.Para listarlas digite el comando iskeyword.

    >> iskeywordans =

    'break''case''catch''continue''else''elseif''end''for''function''global''if''otherwise''persistent''return''switch''try''while'

    Palabras Reservadasde MATLAB

    Copyright 2008 [email protected] 14

    Comandos Especiales

    MATLAB posee funciones (comandos) que retornan valores de gran importancia, los cuales son utilizados a menudo en la mayora de programas MATLAB.

    Funcin Valor retornado

    ans Retorna el valor de salida de alguna expresin que no ha sido asignada a alguna variable.eps Precisin relativa de punto flotanteintmax Entero mas grande que la computadora puede representar.intmin Entero mas pequeo que la computadora puede representar.realmax Numero de Punto Flotante mas grande que la computadora puede representar.realmin Numero de Punto Flotante mas pequeo que la computadora puede representar.pi 3.1415926535897...i, j Unidad imaginaria.Inf Infinito (n/0).NaN Not a Number. (representa una indeterminacin: 0/0 , inf/inf inf-inf, ...).computer Tipo de computadora.version Cadena con la versin de MATLAB.

    EXPOSITOR:

    Miguel Ataurima ArellanoINGENIERO CONSULTOR 15

    Universidad Nacional de IngenieraFacultad de Ingeniera Elctrica y Electrnica

    Lima Per

    MATLABNIVEL BSICO

    InicioInicio

    http://[email protected]@msn.com

    Funciones MATLAB Internas

    Las Funciones MATLAB InternasFunciones de matrices elementas y manipulaciones bsicasFunciones matemticas elementalesOperadores y caracteres especialesFunciones para el anlisis de datos y de transformadas de FourierTipos de datos y estructurasComandos de propsito generalFunciones para grficas en dos y tres dimensionesElementos del Lenguaje de Programacin MATLAB

    Funciones para polinomios e interpolacinFunciones para la manipulacin de cadenasFunciones de entrada/salida de datosFunciones de fecha y tiempoFunciones de archivos de interfaz para el sistema operativo WindowsFunciones de funcin para solucionadores de Ecuaciones Diferenciales.

    >

    Copyright 2008 [email protected] 16

    Las Funciones MATLAB Internas

    La funciones provistas por MATLAB (funciones internas) pueden ser: Funciones de archivo M, aquellas que son implementadas como archivos M. Funciones built-ins, aquellas que son programas ejecutables precompilados.

    Muchas de las funciones MATLAB internas estn sobrecargadas, de manera que puedan manipular diferentes tipos de dato eficientemente.Las funciones internas de MATLAB se encuentran en los subdirectorios del directorio toolbox\matlab

    Para listar las funciones de cada subdirectorio (categora) y poder acceder a la documentacin de cada una de las funciones que stas contienen, digitamos doc o help seguido del nombre del subdirectorio desde el prompt de la ventana comandos.

    NOTA: A diferencia de las funciones M, las funciones built-ins no permiten ver su cdigo fuente; sin embargo, la mayora de stas funciones tienen un archivo M asociado a ellas, el cual solo contiene documentacin de ayuda para la funcin.

  • Matlab Bsico Sesin No.1 Expositor: Miguel Ataurima Arellano

    Descargado de: http://matlabperu.blogspot.com 5 [email protected] / [email protected]

    EXPOSITOR:

    Miguel Ataurima ArellanoINGENIERO CONSULTOR 17

    Universidad Nacional de IngenieraFacultad de Ingeniera Elctrica y Electrnica

    Lima Per

    MATLABNIVEL BSICO

    InicioInicio

    http://[email protected]@msn.com

    Expresiones y Operadores

    Las Expresiones MATLABOperadores AritmticosOperadores RelacionalesOperadores Lgicos

    >

    Copyright 2008 [email protected] 18

    Las Expresiones MATLAB

    Las expresiones estn constituidas por la combinacin de operadores aritmticos, relacionales y lgicos aplicados sobre operandos. Expresin UNARIA

    OPERANDO Operador Expresin BINARIAS

    Operador1 OPERANDO Operador2

    Cuando las expresiones son evaluadas se sigue la regla de precedencia para operadores MATLAB

    1. Parntesis ()2. Transpuesta (.'), potenciacin (.^), transpuesta conjugada('), potenciacin matricial(^)3. Mas unario (+), menos unario (-), negacin lgica (~).4. Multiplicacin (.*), divisin derecha (./), divisin izquierda (.\), mutiplicacin matricial(*),

    divisin derecha matricial(/), divisin izquierda matricial (\)5. Adicin (+), sustraccin (-)6. Operador dos puntos (:)7. Menor que (=), idntico a (==),

    diferente de (~=)8. AND elemento a elemento (&)9. OR elemento a elemento (|)10.AND en corto circuito (&&)11.OR en corto circuito (||)

    En MATLAB, las expresiones son evaluadas de izquierda a derecha

    Copyright 2008 [email protected] 19

    Operadores Aritmticos

    Las operaciones aritmticas se determinan dependiendo de la concepcin que se tenga sobre el arreglo, si lo concebimos como un arreglo las operaciones sern elemento a elemento (elementwise); mientras que si lo concebimos como una matriz, las operaciones son las normadas por las reglas del lgebra lineal.

    ^.^Exponenciacin/./Divisin Derecha\.\Divisin Izquierda*.*MultiplicacinSustraccin++Adicin

    MATRIZARREGLO

    TIPOOPERACIN

    Copyright 2008 [email protected] 20

    Operadores tipo ARREGLO

  • Matlab Bsico Sesin No.1 Expositor: Miguel Ataurima Arellano

    Descargado de: http://matlabperu.blogspot.com 6 [email protected] / [email protected]

    Copyright 2008 [email protected] 21

    Operadores tipo MATRIZ

    Copyright 2008 [email protected] 22

    Funciones equivalentes

    Todas las operaciones aritmticas tienen funciones internas MATLAB equivalentes.

    transpose(A)A.'Transpuesta matricialctranspose(A)A'Transpuesta complejapower(A,B)A.^BPotenciacin de arreglosmpower(A,B)A^BPotenciacin matricialldivide(A,B)A.\BDivisin izquierda de arreglosmldivide(A,B)A\BDivisin izquierda matricialrdivide(A,B)A./BDivisin derecha de arreglosmrdivide(A,B)A/BDivisin derecha matricialtimes(A,B)A.*BMultiplicacin de arreglosmtimes(A,B)A*BMultiplicacin matricialunminus(A)-AMenos unariominus(A,B)A-BSustraccin binariauplus(A)+AMas unarioplus(A,B)A+BAdicin binaria

    FUNCIN EQUIVALENTEEXPRESINOPERACIN ARITMTICA

    Copyright 2008 [email protected] 23

    Operadores Lgicos

    Los operandos deben ser arreglos lgicos.Los valores retornados por los operadores y funciones lgicas (con excepcin de las que son BIT a BIT) son del tipo logical y son posibles de usar como ndice en una indexacin lgica.Existen tres tipos de operadores y funciones lgicas: Elemento a elemento, opera en elementos correspondientes de arreglos lgicos Bit a bit, efectan las operaciones lgicas bit a bit sobre la representacin binaria de

    operandos enteros no negativos. Corto Circuito, desarrollan las operaciones AND y OR evaluando su segundo operando

    solo si el resultado no queda completamente determinado por el primer operando

    CORTO CIRCUITOBIT A BIT

    ELEMENTO A ELEMENTO

    ||&&

    xor~ (not)| (or )& (and)

    OPERADOR

    bitcmpCOMPLEMENTObitxorXOR

    NOT

    bitorORbitandAND

    OPERACIN LGICA

    Copyright 2008 [email protected] 24

    Operadores Relacionales

    Los operadores relacionales efectan comparaciones elemento a elemento entre dos arreglos operandos. Retornan un arreglo logical de la misma dimensin, con elementos en 1 lgico (verdadero) en caso la relacin sea verdadera, y elementos en 0 lgico (falso) en caso contrario.Los operadores >,=,

    DESCRIPCINOPERADOR >> A = magic(3)A =

    8 1 63 5 74 9 2

    >> B = 2*pascal(3)B =

    2 2 22 4 62 6 12

    >> E = A > BE =

    1 0 11 1 11 1 0

    >> F = B > G = A == B+1G =

    0 0 01 1 10 0 0

  • Matlab Bsico Sesin No.1 Expositor: Miguel Ataurima Arellano

    Descargado de: http://matlabperu.blogspot.com 7 [email protected] / [email protected]

    EXPOSITOR:

    Miguel Ataurima ArellanoINGENIERO CONSULTOR 25

    Universidad Nacional de IngenieraFacultad de Ingeniera Elctrica y Electrnica

    Lima Per

    MATLABNIVEL BSICO

    InicioInicio

    http://[email protected]@msn.com

    Indexacin de Matrices

    RangosIndexacin bidimensionalIndexacin linealIndexacin lgica

    >

    Copyright 2008 [email protected] 26

    Rangos

    Permiten generar vectores fila a travs de una progresin aritmticaPueden ser de dos tipos: vi:vf

    Genera una secuencia numrica iniciando en vi e incrementndose en +1 unidades hasta llegar a vf. >> t = 2008:2011t =

    2008 2009 2010 2011 vi:step:vf

    Genera una secuencia numrica iniciando en vi e incrementndose en step unidades hasta vf.>> t = 2008:3:2014t =

    2008 2011 2014

    >> t = 2008:3:2018t =

    2008 2011 2014 2017

    NOTA: En caso algn rango sea inconsistente, MATLAB generar como resultado una matriz vaca (1x0).

    Copyright 2008 [email protected] 27

    Indexacin Bidimensional

    Dada la matriz A de mxn elementos

    Para hacer referencia (indexar) a los elementos comprendidos entre las filas f1 y f2 y columnas c1 y c2 mediante el uso de dos ndices lo hacemos as

    A( f1:f2 , c1:c2 )

    1 2

    1 2

    1 1 1 1 1 2 1

    2 2 2 1 2 2 2

    1 2

    1 2

    1,1 2,1 1, 1, 1,

    2,1 2,2 2, 2, 2,

    1 ,1 ,2 , , ,

    2 ,1 ,2 , , ,

    ,1 ,2 , , ,

    1 2

    1

    2c c n

    c c n

    f f f c f c f n

    f f f c f c f n

    m m m c m c m n

    c c n

    a a a a a

    a a a a a

    f a a a a a

    f a a a a a

    m a a a a a

    " " "

    " " "" " "

    # # # # # #" " "

    # # # # # #" " "

    # # # # # #" " "

    A =

    rango de filas

    rango de columnas

    Copyright 2008 [email protected] 28

    Indexacin Lineal

    La indexacin lineal, se lleva acabo cuando se desea hacer referencia a un elemento de una matriz mediante un solo ndice.

    Para llevarlo a cabo utilizamos

    A( 1:k )donde k hace referencia al elemento de ndice p,q y se relaciona mediante

    k = (q-1)m + p

    1 1 ( 1) 1( 1) 1

    2 2 ( 1) 2( 1) 2

    ( 1) ( 1)

    2 ( 1

    11 12 1 1

    21 22 2 2

    1 2

    )( 11 2

    )

    1

    2

    m n mq m

    m n mq m

    p m p q m p n m p

    m m n m m

    q n

    q n

    p p pq pn

    mm

    mq mnq

    mm

    a a a a

    a a a a

    p a a a a

    m a a a a

    + + +

    + + +

    + + +

    + +

    " "" "

    # # # # #" "

    # # # # #" "

    k

    A =

    1 2 q n" "

  • Matlab Bsico Sesin No.1 Expositor: Miguel Ataurima Arellano

    Descargado de: http://matlabperu.blogspot.com 8 [email protected] / [email protected]

    Copyright 2008 [email protected] 29

    Indexacin Lgica

    Una indexacin lgica designa los elementos de un arreglo A basado en su posicin en un arreglo indexador, B, en el que el elemento correspondiente se encuentre en 1 lgico, tomndolo como un ndice posicional.

    En caso se requiera los ndices lineales de un arreglo lgico en el que los elementos estn en 1 lgico se debe utilizar la funcin find.

    >> A = pascal(5)A =

    1 1 1 1 11 2 3 4 51 3 6 10 151 4 10 20 351 5 15 35 70

    >> B = A>=5 & A> R = A(B)R =

    56

    101510205

    15

    >> A(~B)=0A =

    0 0 0 0 00 0 0 0 50 0 6 10 150 0 10 20 00 5 15 0 0

    >> F = A( A>5 )F =

    61015102015

    >> B = [7 1 8 -2 -5 3 1 6 ]B =

    7 1 8 -2 -5 3 1 6>> P = find( abs(B)>4 )P =

    1 3 5 8

    EXPOSITOR:

    Miguel Ataurima ArellanoINGENIERO CONSULTOR 30

    Universidad Nacional de IngenieraFacultad de Ingeniera Elctrica y Electrnica

    Lima Per

    MATLABNIVEL BSICO

    InicioInicio

    http://[email protected]@msn.com

    Los archivos M

    El Lenguaje de Programacin MATLABLos archivos MTipos de archivos MLos Archivos M ScriptLos Archivos M Funcin

  • Matlab Bsico Sesin No.1 Expositor: Miguel Ataurima Arellano

    Descargado de: http://matlabperu.blogspot.com 9 [email protected] / [email protected]

    Copyright 2008 [email protected] 33

    Un archivo M puede ser de dos tipos: Script

    Contienen sentencias MATLAB. En su llamada (invocacin), no reciben ni retornan argumentos.

    Funcin. Contienen sentencias MATLAB. En su llamada(invocacin), pueden recibir y retornan argumentos.

    graf01.m

    vocoder.m

    Llamada al script: graf01

    Llamada a la funcin: vocoder

    Copyright 2008 [email protected] 34

    Archivos M Script

    Son los archivos M mas simples.Son archivos externos que, generalmente, contienen secuencias de sentencias MATLAB, con la finalidad de automatizar bloques de comandos, tales como los utilizados en clculo que requieran ser ejecutados repetidamente desde la lnea de comandos u otro archivo M.Pueden operar con variables (datos) pre-existentes en el workspace, o en su defecto crearlos y operar con ellos. Las variables creadas por los Scriptspermanecen en el workspace, siendo posible de ser reutilizadas en clculos pstumos.No requieren la declaracin de delimitadores de inicio/fin (begin/end).No retornan ni reciben argumentos.Pueden generar grficos de salida usando comandos tales como plot.Pueden incluir lneas de comentario en cualquier posicin, adjuntas a sentencias o como lneas de documentacin del script.

    Copyright 2008 [email protected] 35

    Sintxis

    % comentario_doc% comentario_doc

    :% comentario_docsentencia;sentencia;:

    sentencia;% comentario:

    % comentariosentencia;:

    sentencia;% comentario:

    % comentariosentencia;:

    sentencia;:

    comentario(s) de documentacin[ opcional ]

    comentario(s) de lnea

    comentario(s) de lnea

    sentencia(s) MATLAB

    sentencia(s) MATLAB

    sentencia(s) MATLAB

    workspace

    script1.m

    workspace

    script1

    script2

    scriptN

    #

    Las variables contenidas en el workspace son accesibles desde un archivo M script.

    En general:

    Copyright 2008 [email protected] 36

    Archivos M Funcin

    Son rutinas de programa, que pueden aceptar argumentos de entrada y retornar argumentos de salida.

    Cada funcin posee su propio workspace; el cual es independiente del workspaceal que se accede desde el prompt de MATLAB. En otras palabras, las funciones solo operan con : Argumentos de Entrada. Variables que estn definidas dentro de ellas. Variables globales (en caso sea necesario compartir variables entre diversos workspaces

    stas debern ser declaradas como globales en cada mbito). Argumentos de Salida.

    nombreFcnu1u2:un

    v1v2:vm

    nombreFcn : Nombre de la Funcinu1,u2,...,un : Argumentos de Entradav1,v2,...,vm : Argumentos de Salida

  • Matlab Bsico Sesin No.1 Expositor: Miguel Ataurima Arellano

    Descargado de: http://matlabperu.blogspot.com 10 [email protected] / [email protected]

    Copyright 2008 [email protected] 37

    function [v1,v2,...,vm] = nombreFcn(u1,u2,...,un)% comentario_doc:

    % comentario_docsentencia;sentencia;:

    sentencia;% comentario:

    % comentariosentencia;:

    sentencia;% comentario:

    % comentariosentencia;:

    sentencia;:

    nombreFcn.m

    workspacenombreFcn

    workspace

    comentario(s) de lnea

    comentario(s) de documentacin[ opcional ]

    comentario(s) de lnea

    sentencia(s) MATLAB

    sentencia(s) MATLAB

    sentencia(s) MATLAB

    Las funciones solo operan con variables que estn definidas dentro de ellas, es

    decir, en su propio workspace.

    VENTANA DE COMANDOS

    nombreFcnu1u2:un

    v1v2:vm

    nombreFcn : Nombre de la Funcinu1,u2,...,un : Argumentos de Entradav1,v2,...,vm : Argumentos de Salida

    /ColorImageDict > /JPEG2000ColorACSImageDict > /JPEG2000ColorImageDict > /AntiAliasGrayImages false /CropGrayImages true /GrayImageMinResolution 300 /GrayImageMinResolutionPolicy /OK /DownsampleGrayImages true /GrayImageDownsampleType /Bicubic /GrayImageResolution 300 /GrayImageDepth -1 /GrayImageMinDownsampleDepth 2 /GrayImageDownsampleThreshold 1.50000 /EncodeGrayImages true /GrayImageFilter /DCTEncode /AutoFilterGrayImages true /GrayImageAutoFilterStrategy /JPEG /GrayACSImageDict > /GrayImageDict > /JPEG2000GrayACSImageDict > /JPEG2000GrayImageDict > /AntiAliasMonoImages false /CropMonoImages true /MonoImageMinResolution 1200 /MonoImageMinResolutionPolicy /OK /DownsampleMonoImages true /MonoImageDownsampleType /Bicubic /MonoImageResolution 1200 /MonoImageDepth -1 /MonoImageDownsampleThreshold 1.50000 /EncodeMonoImages true /MonoImageFilter /CCITTFaxEncode /MonoImageDict > /AllowPSXObjects false /CheckCompliance [ /None ] /PDFX1aCheck false /PDFX3Check false /PDFXCompliantPDFOnly false /PDFXNoTrimBoxError true /PDFXTrimBoxToMediaBoxOffset [ 0.00000 0.00000 0.00000 0.00000 ] /PDFXSetBleedBoxToMediaBox true /PDFXBleedBoxToTrimBoxOffset [ 0.00000 0.00000 0.00000 0.00000 ] /PDFXOutputIntentProfile () /PDFXOutputConditionIdentifier () /PDFXOutputCondition () /PDFXRegistryName () /PDFXTrapped /False

    /Description > /Namespace [ (Adobe) (Common) (1.0) ] /OtherNamespaces [ > /FormElements false /GenerateStructure true /IncludeBookmarks false /IncludeHyperlinks false /IncludeInteractive false /IncludeLayers false /IncludeProfiles true /MultimediaHandling /UseObjectSettings /Namespace [ (Adobe) (CreativeSuite) (2.0) ] /PDFXOutputIntentProfileSelector /NA /PreserveEditing true /UntaggedCMYKHandling /LeaveUntagged /UntaggedRGBHandling /LeaveUntagged /UseDocumentBleed false >> ]>> setdistillerparams> setpagedevice