Saltar al contenido principal
LibreTexts Español

8.10: Edición de archivos y creación de funciones (Macintosh)

  • Page ID
    82246
  • \( \newcommand{\vecs}[1]{\overset { \scriptstyle \rightharpoonup} {\mathbf{#1}} } \) \( \newcommand{\vecd}[1]{\overset{-\!-\!\rightharpoonup}{\vphantom{a}\smash {#1}}} \)\(\newcommand{\id}{\mathrm{id}}\) \( \newcommand{\Span}{\mathrm{span}}\) \( \newcommand{\kernel}{\mathrm{null}\,}\) \( \newcommand{\range}{\mathrm{range}\,}\) \( \newcommand{\RealPart}{\mathrm{Re}}\) \( \newcommand{\ImaginaryPart}{\mathrm{Im}}\) \( \newcommand{\Argument}{\mathrm{Arg}}\) \( \newcommand{\norm}[1]{\| #1 \|}\) \( \newcommand{\inner}[2]{\langle #1, #2 \rangle}\) \( \newcommand{\Span}{\mathrm{span}}\) \(\newcommand{\id}{\mathrm{id}}\) \( \newcommand{\Span}{\mathrm{span}}\) \( \newcommand{\kernel}{\mathrm{null}\,}\) \( \newcommand{\range}{\mathrm{range}\,}\) \( \newcommand{\RealPart}{\mathrm{Re}}\) \( \newcommand{\ImaginaryPart}{\mathrm{Im}}\) \( \newcommand{\Argument}{\mathrm{Arg}}\) \( \newcommand{\norm}[1]{\| #1 \|}\) \( \newcommand{\inner}[2]{\langle #1, #2 \rangle}\) \( \newcommand{\Span}{\mathrm{span}}\)\(\newcommand{\AA}{\unicode[.8,0]{x212B}}\)

    Si sale de MATLAB ahora, se perderán todos los comandos que haya escrito. Aquí es donde la ventana Editar es útil. Si elige nuevo en el menú Archivo, aparecerá una nueva ventana con el título Editar 1: Sin título. En esta ventana, debe escribir todos los comandos que le gustaría que MATLAB ejecute a la vez. Cuando termine de escribir, puede guardar el archivo eligiendo guardar o guardar como en el menú de archivo e ingresando un nombre para el archivo. Si la ventana de edición está activa (es decir, si aparece al frente), entonces elija guardar y vaya desde el menú de archivo para guardar el archivo y ejecutarlo. Si la ventana de comandos está activa, entonces puede ejecutar el archivo ingresando su nombre.

    Edición de archivos

    Para probar su comprensión de la edición de archivos, ingrese los siguientes comandos en un archivo llamado myfile:

    clear, clg                      %Clear variables and graphics
    j=sqrt(-1);                     %To be sure
    z1=1+.5*j,z2=2+1.5*j            %Enter variables
    z3=z1+z2,z4=z1*z2               %Compute sum and product
    axis([0 4 0 4]),                %First plot
      axis('square'),plot(z1,'o')
    hold on                         %Allow overplot
    plot(z2,'o'),plot(z3,'+'),      %Other plots
        plot(z4,'*')
    hold off

    No es necesario que escriba el signo% y el texto que le sigue. Estos son simplemente comentarios en un archivo. Son ignorados por el intérprete de MATLAB. Sin embargo, debes acostumbrarte a agregar comentarios (precedidos por%) a tu archivo si quieres poder entender programas que se han escrito hace mucho tiempo.

    No olvides guardar tu archivo. Dicho archivo se llama archivo de script. Contiene comandos MATLAB que podrían haberse ingresado uno por uno en la ventana de comandos. Tiene tres formas de ejecutar un archivo de script:

    1. con la ventana de edición activa, elija guardar y vaya desde el menú Archivo;
    2. con la ventana de comandos activa, ingrese el nombre del archivo; o
    3. con la ventana de comandos activa, elija ejecutar script... en el menú M-file. En este caso, aparece un menú para preguntarte qué archivo quieres ejecutar.

    Pruebe cada uno de estos tres métodos para acostumbrarse a sus diferencias. En la figura 1 se muestra la trama que debes obtener.

    Creación de funciones

    MATLAB pone a tu disposición muchos comandos, y solo tienes que introducir sus nombres (con o sin argumentos) para ejecutarlos. Algunos comandos están integrados en MATLAB, y otros están contenidos en archivos a los que tiene acceso (no para modificarlos, sino para ver cómo se hacen las cosas). Puede intentar mostrar el contenido de un archivo de comandos en la ventana de comandos ingresando el tipo de comando filename. Ingrese el tipo de parcela. Deberías recibir el mensaje

    ??? Built-in function.
    filesfig1.png
    Figura\(\PageIndex{1}\): Un gráfico típico (©Apple Computer, Inc., usado con permiso.)

    Esto significa que la gráfica de comandos es una función incorporada y, por lo tanto, no puede ser escrita por el usuario (se compila con el programa). De igual manera, intente escribir el archivo de función que contiene el comando sinh ingresando el comando type sinh. Deberías obtener

    function y=sinh(x)
    %SINH SINH(X) is the hyperbolic sine of the elements of X.
    y=(exp(x)-exp(-x))/2;

    Este es un ejemplo típico de un archivo de función. Se diferencia de un archivo de script por el hecho de que la primera línea contiene la palabra función. Lo que hace es hacer que el comando y = sinh (x) sea equivalente al comando y =( exp (x) - exp (-x)) /2. La variable x es el argumento de entrada (podría haber más de uno), y\(y\) es el argumento de salida (también podría haber más de uno). La segunda línea contiene comentarios sobre la función y sus argumentos. Pueden extenderse a varias líneas. Muéstralos escribiendo el comando help sinh. La tercera línea contiene los comandos de función reales (también podría haber varias líneas).

    Como ejercicio, ingresa la función perp (x):

    function y=perp(x)
    %PERP PERP(X) is a complex value perpendicular to X.
    j=sqrt(-1);
    y=j*real(x)-imag(x);

    Evaluar a los autores en varios números complejos. Reemplazar la última línea por y = x*j;. ¿Obtienes el mismo resultado? ¿Por qué?

    Tenga en cuenta que las variables locales son solo eso— locales. Solo los argumentos de entrada y salida se guardan en la memoria después de que se llama y ejecuta la función. Para obtener más información sobre funciones y múltiples argumentos, consulte el manual de MATLAB. En el ejemplo anterior, la variable\(j\) es local. Si, antes de usar la función perp, usas la misma variable\(j\), su contenido no se verá afectado por el comando perp (z). Verifica esto.

    Normalmente, mientras se ejecuta un archivo (script o función), los comandos no se muestran en la ventana de comandos. Solo se muestran los resultados. El comando echo le permite ver todas las instrucciones. Esto es útil para depuración y demostraciones. Se apaga escribiendo echo off.


    This page titled 8.10: Edición de archivos y creación de funciones (Macintosh) is shared under a CC BY 3.0 license and was authored, remixed, and/or curated by Louis Scharf (OpenStax CNX) via source content that was edited to the style and standards of the LibreTexts platform; a detailed edit history is available upon request.