This function changed my life :)
This function allows you to save as many variables along your run from any point in the code.
When starting the run, clear all data in debugData by calling debugData('reset')
During the run call debugData from any point in the code to store data, the function will concatenate data automatically.
At the end of the run call debugData with debugData('plot') to plot all its content
You can extract a specific variable by using: var = debugData('varName');
You can view which variables are stored by calling variables = debugData('fields');
The function supports the saving of structs and arrays.
It concatenates the data in rows.
a = randn(100,1);
b = zeros(size(a));
for n = 2 : numel(a)
b(n) = b(n-1) + a(n);
debugData('ab', [a(n) b(n)]);
Create scripts with code, output, and formatted text in a single executable document.