Depurar un script en Matlab

Hablemos de cómo depurar un script en Matlab.

¿Qué significa depurar? Depurar es el acto de identificar y corregir errores en tu script. El término "bug" alude a un fallo o error en el código. Se originó en los albores de la informática, cuando un insecto físico (un bicho) en un ordenador podía generar problemas. Aunque hoy en día esa situación es impensable, seguimos empleando el término "bug" para denotar fallos en el software.

Entonces, ¿cómo procedemos a depurar un script en Matlab? Podemos hacer uso de la instrucción "keyboard".

keyboard

"Keyboard" actúa como un punto de interrupción, permitiéndote pausar la ejecución de un script para inspeccionar o modificar el valor de las variables del entorno.

Esta herramienta es esencial para la depuración y prueba de código. A partir de ahí, es posible llevar a cabo una serie de operaciones.

¿Y cómo opera el comando "keyboard"?

Cuando Matlab se topa con "keyboard", detiene la ejecución del script y presenta un prompt de depuración.

Dicho prompt se muestra de la siguiente manera:

k>>

En ese momento, se pueden realizar múltiples acciones, como revisar o ajustar el valor de las variables en el entorno de trabajo.

Tras realizar los ajustes pertinentes, puedes retomar la ejecución del script mediante el comando dbcont.

También tienes a tu disposición el comando dbstep, que permite ejecutar la siguiente instrucción de tu script de manera individual.

Nota. Si decides abandonar el modo de depuración y concluir la ejecución de tu script, el comando "dbquit" es tu aliado. En tal caso, el script no retomará su ejecución desde donde fue pausado.

Permíteme ilustrarte con un ejemplo práctico.

Considera el siguiente script:

x=2;
y=3;
disp(x+y)

Al ejecutarlo, la salida es:

5

Si introducimos "keyboard" antes del comando de visualización, el script quedaría:

x=2;
y=3;
keyboard
disp(x+y)

Al ejecutarlo en esta ocasión, la ejecución se detendrá al encontrar "keyboard", mostrando el prompt de depuración.

k>>

Nota. Si trabajas con la interfaz gráfica de Matlab, los comandos de depuración se mostrarán en la parte superior de la ventana, facilitando la continuación de la ejecución o el avance paso a paso.
Matlab debugging

Desde el prompt de depuración, es posible modificar el valor de "x". Por ejemplo:

k>> x=4

Después, al ejecutar el comando dbcont.

k>> dbcont

El script retomará su curso, pero ahora con "x" valiendo 4.

El script sumará x=4 con y=3, arrojando como resultado x+y=7.

7

Esta herramienta te brinda la capacidad de ajustar variables y parámetros en tiempo real, sin necesidad de alterar constantemente el código. Es ideal para identificar errores, probar soluciones o potenciar la eficiencia de tu script.

 
 

Segnalami un errore, un refuso o un suggerimento per migliorare gli appunti

FacebookTwitterLinkedinLinkedin

Scripts de Matlab