The Math Forum

Search All of the Math Forum:

Views expressed in these public forums are not endorsed by NCTM or The Math Forum.

Math Forum » Discussions » Software » comp.soft-sys.matlab

Notice: We are no longer accepting new posts, but the forums will continue to be readable.

Topic: index out of bound because numel(x) = 1
Replies: 9   Last Post: Feb 10, 2014 3:05 PM

Advanced Search

Back to Topic List Back to Topic List Jump to Tree View Jump to Tree View   Messages: [ Previous | Next ]
question on Lorenz equation

Posts: 161
Registered: 12/7/04
index out of bound because numel(x) = 1
Posted: Feb 7, 2014 1:40 PM
  Click to see the message monospaced in plain text Plain Text   Click to reply to this topic Reply

I am trying to do least square fit. I have looked at the examples in the Matlab official web site that may be somewhat related to my problem. I found one that may be useful to me and wrote it exactly as it was shown in the Matlab official web site. I have pasted it below: -

function F = trial(x,xdata)
F = x(1)*exp(x(2)*xdata);
x =[1 0.2 3 4 5 6 7 8 9 10]; % (This part is not given in the web site. I added it % %after I got the error message. This did not fix the problem. Then I tried giving this % data different name, but it still did not fix the problem.)
xdata =[0.9 1.5 13.8 19.8 24.1 28.2 35.2 60.3 74.6 81.3];
ydata =[455.2 428.6 124.1 67.3 43.2 28.1 13.1 -0.4 -1.3 -1.5];
x0 = [100; -1] % Starting guess
[x,resnorm] = lsqcurvefit(@trial,x0,xdata,ydata);

I got the error message :-

Attempted to access x(2); index out of bounds because numel(x)=1.

Error in trial (line 6)
F = x(1)*exp(x(2)*xdata);

How do I correct it? I know the reason why the error appears, but I do not know how I can correct it?

Point your RSS reader here for a feed of the latest messages in this topic.

[Privacy Policy] [Terms of Use]

© The Math Forum at NCTM 1994-2018. All Rights Reserved.