help-octave
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

## Re: Help in leasqr

 From: Bharath R Subject: Re: Help in leasqr Date: Fri, 26 Aug 2016 17:25:07 +0200

Dear Mr. Stewart,

Thank you very much for the clarification. I changed the maximum iterations to 200 and got the convergence. I checked that if the max iteration value isn't given, it takes 20 to be the default value.

Thanks for trying my data.

Regards,
Bharath

On Fri, Aug 26, 2016 at 4:32 PM, Doug Stewart wrote:

On Fri, Aug 26, 2016 at 6:17 AM, Bharath R wrote:
Hello all,

Thank you very much for such a helpful forum. I am using Octave for the past couple of days. I have been working to get the parameters that best fit my function.

Function:   g=@(x,p) [(p(1).*p(2).*x(:,1)+(p(3).*x(:,2))+(p(4)*p(5)))./((p(1)*p(2))+p(3))]

where p indicates the parameters , x indicates the independent variables and y is measured variable.
[pin]=1.0000e-002
1.0000e+003
1.0000e+002
1.0000e-002
1.0000e+003

[x]=21.33700    0.80000
21.28800    0.10000
20.55900   -0.80000
21.21800   -1.40000
20.68600   -1.70000

[y] = 19.545
19.300
19.300
19.137
19.000

When I run this function ([f, p, cvg, iter]=leasqr(x,y,pin,g)) with leasqr function it gives me the following result:

CONVERGENCE NOT ACHIEVED!
f =

19.710
19.578
18.827
19.326
18.824

p =

1.6953e-001
1.6258e+003
4.0087e+001
7.8664e-002
3.9346e+003

cvg = 0
iter =  20

I would like to know what does "f" in result give as output. Is it giving me the output of function "g" after implementing the newly calculated parameters or is it something else? If it is the output of g, then I feel it is relatively closer to the measured data (y). yet it is showing " CONVERGENCE NOT ACHIEVED!".

Also , I would like to know how do I implement a differential equation in leasqr to calculate the parameters. I look forward to your answer.

Thanks and regards,
Bharathy

I tried your data and see what you said.

I then set pin to the resultant p and ran it 2 more times and got it to converge whit this result

f =

19.703
19.577
18.828
19.339
18.834

p =

4.0188e-02
5.8681e+03
3.1513e+01
3.2001e-02
6.5753e+03

cvg = 1
iter =  1

So you are on the correct  path, just use the result of one run for a better starting point for the next run.
HTH

--
DAS

reply via email to

 [Prev in Thread] Current Thread [Next in Thread]