The Origin Forum
File Exchange
Try Origin for Free
The Origin Forum
Home | Profile | Register | Active Topics | Members | Search | FAQ | Send File to Tech support
Username:
Password:
Save Password
Forgot your Password? | Admin Options

 All Forums
 Origin Forum
 Origin Forum
 extrapolating a exp decay curve
 New Topic  Reply to Topic
 Printer Friendly
Author Previous Topic Topic Next Topic Lock Topic Edit Topic Delete Topic New Topic Reply to Topic

cykwong

Hong Kong
Posts

Posted - 01/25/2006 :  10:07:10 PM  Show Profile  Edit Topic  Reply with Quote  View user's IP address  Delete Topic
Origin Version 6.0:
window 2000

I would like to extrapolating a exp decay curve.
However, when I plot straight line of the exp decay curve, it extrapolating a straight line. When I plot as spline or B-spline, the curve look strange, it become exp. growth. Can anyone help me? thanks.

minimax

348 Posts

Posted - 01/26/2006 :  01:17:14 AM  Show Profile  Edit Reply  Reply with Quote  View user's IP address  Delete Reply
Hi cykwong,

I tried what you said in Origin 6.1, 7.0 and 7.5 but could find out your mentioned "strange" problem. Could you please describe your problem in more detailed steps?

If available, send your problem to tech@originlab.com attached with your data.

Max
OriginLab GZoffice
Go to Top of Page

cykwong

Hong Kong
Posts

Posted - 01/26/2006 :  01:29:55 AM  Show Profile  Edit Reply  Reply with Quote  View user's IP address  Delete Reply
Thanks for you reply.
First of all, I took experimental data which is exponential decay (2nd order). Of course, it is expected that raw data is not a perfect exponentail decay curve. I plot this raw data. Then I use non linear curve fitting to model the 2nd order exp. decay. Finally I plot the fitting data by a) straight line or b) Spline.

When I extrapolate the curve from option a). I got straight line decay, not exp. decay.

When I extrapolate the curve from option b). I got exponentail increase.
Go to Top of Page

minimax

348 Posts

Posted - 01/26/2006 :  01:45:58 AM  Show Profile  Edit Reply  Reply with Quote  View user's IP address  Delete Reply
I can not reproduce your problem yet. Could you send your data to tech@originlab.com with title "extrapolating a exp decay curve"?

Max
OriginLab GZoffice

Edited by - minimax on 01/26/2006 01:51:46 AM
Go to Top of Page

easwar

USA
1964 Posts

Posted - 01/26/2006 :  09:31:04 AM  Show Profile  Edit Reply  Reply with Quote  View user's IP address  Delete Reply
Hi cykwong,

Since you are already fitting the data with an equation/model which then gives you optimal parameters for that model which describes your data, you should use the fit equation/parameters to compute values rather than doing extrapolation of the fit line.

Extrapolation does not know the fit equation, rather it just takes the fit data and does extrapolation based on line/spline connection etc and so it can be very different or "wrong" because there is no knowledge of the equation itself - it is just like extrapolating raw data - at the edges the last few data points are used to extrapolate.

So what you can do, to get values of the fit outside of your data range is the following:

1> Use the NLSF tool (this is simplest):
If you fit using menu, just bring up the NLSF tool (CTRL-Y) and it will show the current fit equation you are using and the fit results etc.
Then go to the Scripts->After Fit page of the NLSF tool and check the Uniform X" radio selection. Then you can specify any starting x and ending x value in the controls below and the number of points you want in the fit curve. Then you can go to Fit page and click Done to generate the curve over the range of x that you desire.

2> As soon as the fit is done, you could simply go to script window and type
fit(5.5)=
for example, where 5.5 say is an x value outside of your data range, and Origin will print the corresponding y value based on the exact fit equation.
You could then write script to generate more values at more new x values etc.
Note that this work only right after a fit - if another fit is done, the fit() function will use the new fit equation and so on.

3> You have access to all the fit parameters via NLSF object properties such as
nlsf.p1, nlsf.p2 etc for parameters
nlsf.e1, nlsf.e2 etc for errors etc
You can then use those exact fit parameter values to compute new Y values

4> In Origin 7.5, in the NLSF Tool, you could go to Action->Results menu and there is a way to find y from given x or find x from given y, based on your fit. You could try this in the demo.

Easwar
OriginLab




Edited by - easwar on 01/26/2006 09:36:52 AM
Go to Top of Page

cykwong

Hong Kong
Posts

Posted - 01/26/2006 :  9:15:03 PM  Show Profile  Edit Reply  Reply with Quote  View user's IP address  Delete Reply
Dear Easwar ,
Thank you very much.

Best regards,
Calvin
Go to Top of Page

CarolJK

Malaysia
1 Posts

Posted - 12/27/2016 :  08:55:03 AM  Show Profile  Edit Reply  Reply with Quote  View user's IP address  Delete Reply
quote:
Originally posted by easwar

Hi cykwong,

Since you are already fitting the data with an equation/model which then gives you optimal parameters for that model which describes your data, you should use the fit equation/parameters to compute values rather than doing extrapolation of the fit line.

Extrapolation does not know the fit equation, rather it just takes the fit data and does extrapolation based on line/spline connection etc and so it can be very different or "wrong" because there is no knowledge of the equation itself - it is just like extrapolating raw data - at the edges the last few data points are used to extrapolate.

So what you can do, to get values of the fit outside of your data range is the following:

1> Use the NLSF tool (this is simplest):
If you fit using menu, just bring up the NLSF tool (CTRL-Y) and it will show the current fit equation you are using and the fit results etc.
Then go to the Scripts->After Fit page of the NLSF tool and check the Uniform X" radio selection. Then you can specify any starting x and ending x value in the controls below and the number of points you want in the fit curve. Then you can go to Fit page and click Done to generate the curve over the range of x that you desire.

2> As soon as the fit is done, you could simply go to script window and type
fit(5.5)=
for example, where 5.5 say is an x value outside of your data range, and Origin will print the corresponding y value based on the exact fit equation.
You could then write script to generate more values at more new x values etc.
Note that this work only right after a fit - if another fit is done, the fit() function will use the new fit equation and so on.

3> You have access to all the fit parameters via NLSF object properties such as
nlsf.p1, nlsf.p2 etc for parameters
nlsf.e1, nlsf.e2 etc for errors etc
You can then use those exact fit parameter values to compute new Y values

4> In Origin 7.5, in the NLSF Tool, you could go to Action->Results menu and there is a way to find y from given x or find x from given y, based on your fit. You could try this in the demo.

Easwar
OriginLab




Edited by - easwar on 01/26/2006 09:36:52 AM




Hi Easwer,

Thank you for the detail explanation. However, I am using Origin 9.1 now and having problem to even find the NLSF tools. Could you guide me on how to extrapolate with Origin 9.1?

Regards,
CarolJK


Regards,
CarolJK
Go to Top of Page
  Previous Topic Topic Next Topic Lock Topic Edit Topic Delete Topic New Topic Reply to Topic
 New Topic  Reply to Topic
 Printer Friendly
Jump To:
The Origin Forum © 2020 Originlab Corporation Go To Top Of Page
Snitz Forums 2000