how to disable the picture

4 views (last 30 days)
dav
dav on 18 Feb 2013
Hi, every time I run the following code, a figure is generated. How can I disable it?
Thanks.
a0 = 0.05; a1 = 0.1; b1 = 0.85;
nu = randn(2300,1);
epsi = zeros(2300,1);
h = zeros(2300,1);
for i=2: 2300
h(i) = a0 + a1 * epsi(i-1)^2 + b1 * h(i-1) ;
epsi(i) = nu(i) * sqrt(h(i));
end
yt = zeros(2300,1);
for i=1: 2300
yt(i) = epsi(i)*epsi(i);
end
order = 15;
m = arx(yt, order);
  7 Comments
dav
dav on 19 Feb 2013
I am sorry its in the system identification tool box
Walter Roberson
Walter Roberson on 19 Feb 2013
Have you tried using the debugger and stepping through the code to find out which command is generating the plot ?

Sign in to comment.

Answers (2)

Youssef  Khmou
Youssef Khmou on 19 Feb 2013
hi,
your code does not produce any figure,
but if you want, you can add the following at the end of your code :
close;

Rajiv Singh
Rajiv Singh on 19 Feb 2013
It is the RESID command that is bringing up the plot. It belongs to System Identification Toolbox. To make it work as documented (no figures when called with output arguments), use an IDDATA object to represent the data, as in:
r = resid(iddata([yt1(1:order);yt1]), m);
Calling RESID with double vector representing data is supported for backward compatibility. However, in this mode, the plot also gets shown since this was the behavior in the past before IDDATA object was introduced (I believe in ver 5).
  1 Comment
dav
dav on 21 Feb 2013
Edited: dav on 21 Feb 2013
thnks. but the problem is that now I dont get the residuals either... can u fix that please?
I need to get the residuals in to a vector (r). But when i type r at the command prompt I dont see the residuals.
thanks

Sign in to comment.

Tags

No tags entered yet.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!