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
 NLFit 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

MOFs

5 Posts

Posted - 06/06/2013 :  03:07:57 AM  Show Profile  Edit Topic  Reply with Quote  View user's IP address  Delete Topic
Originpro 9.0 and Service Release (Select Help-->About Origin):
Operating System:Win8

I hope to fit a cure by the following function.

y=0.375*g^2*((2.0+0.0194*(abs(j1)/(1.38E-23)/x)+0.777*(abs(j1)/(1.38E-23)/x)^2)

/(3.0+4.346*(abs(j1)/(1.38E-23)/x)+3.232*(abs(j1)/(1.38E-23)/x)^2+5.834*(abs(j1)/(1.38E-23)/x)^3))

I need to get the value of g and j1.

Origin says:

Fit did not converge - mutual dependency exists between parameters.
You may have overparameterized the fitting function. Fixing one of them may eliminate this problem.

Please solve this problem!

Thanks a lot in advance.

meili_yang

103 Posts

Posted - 06/06/2013 :  09:50:59 AM  Show Profile  Edit Reply  Reply with Quote  View user's IP address  Delete Reply
Hi,

You have two parameters, so try to fix one and converge. Open NLFit dialog, under 'Parameters' tab check Fixed for one parameter.

Also your function is a little too complicated. I don't know if it's the problem but you might also try to simplify it. For example, make abs(j1)/(1.38E-23) to be one parameter, calculate j1 from it.

Try the above first, and I am glad to help if you have further questions.

Meili
OriginLab
Go to Top of Page

MOFs

5 Posts

Posted - 06/06/2013 :  12:33:23 PM  Show Profile  Edit Reply  Reply with Quote  View user's IP address  Delete Reply
quote:
Originally posted by meili_yang

Hi,

You have two parameters, so try to fix one and converge. Open NLFit dialog, under 'Parameters' tab check Fixed#65533; for one parameter.

Also your function is a little too complicated. I don't know if it's the problem but you might also try to simplify it. For example, make abs(j1)/(1.38E-23) to be one parameter, calculate j1 from it.

Try the above first, and I am glad to help if you have further questions.

Meili
OriginLab



I try to fit by using this simplifized function according to your kindly advise.

But the question can not still be solved.

Origin still says that.

Please give me more assistnace.

infinite thanks.
Go to Top of Page

meili_yang

103 Posts

Posted - 06/06/2013 :  12:45:08 PM  Show Profile  Edit Reply  Reply with Quote  View user's IP address  Delete Reply
Would you mind to send your data to tech@originlab.com, along with the fdf file including the fitting function? Let me check for you.



Meili
OriginLab Tech Support

Edited by - meili_yang on 06/06/2013 12:50:26 PM
Go to Top of Page

MOFs

5 Posts

Posted - 06/06/2013 :  2:24:59 PM  Show Profile  Edit Reply  Reply with Quote  View user's IP address  Delete Reply
I have sent some file to tech@originlab.com. Please check the fitting funtion. Thanks a lot.
Go to Top of Page

meili_yang

103 Posts

Posted - 06/06/2013 :  3:55:21 PM  Show Profile  Edit Reply  Reply with Quote  View user's IP address  Delete Reply
Hi,

Thanks for the file.

I import your ASCII data, and it's OK to converge. I use your equation and simplify it. The best I can have is in the following. Maybe you need to modify your equation a little bit to make a perfect fit.





You can always play around with the initial value of parameters when you define the equation, to achieve a better fit. When you input your function body, it allows you to do a quick check to see how close your parameter is.

I will email you the opj file and a fdf file.

Regards,


quote:
Originally posted by MOFs

I have sent some file to tech@originlab.com. Please check the fitting funtion. Thanks a lot.

Meili
OriginLab Tech Support
Go to Top of Page

MOFs

5 Posts

Posted - 06/06/2013 :  4:58:59 PM  Show Profile  Edit Reply  Reply with Quote  View user's IP address  Delete Reply
Thank you for giving me good file.

Thanks a lot!

By the way, do you know how to fit this curve by the function in order to make it perfect ?

Infinite thanks.
Go to Top of Page

meili_yang

103 Posts

Posted - 06/07/2013 :  08:47:14 AM  Show Profile  Edit Reply  Reply with Quote  View user's IP address  Delete Reply
Hi,

I tried to set bounds for parameters and got this. The fitting seems to be close to your data, but Adj-R2 is smaller.




If I were you, I'd like to use parameters and constants (like a,b,c...) to define the function, instead of numeric value.

Meili

quote:
Originally posted by MOFs

Thank you for giving me good file.

Thanks a lot!

By the way, do you know how to fit this curve by the function in order to make it perfect ?

Infinite thanks.

Meili
OriginLab Tech Support
Go to Top of Page

MOFs

5 Posts

Posted - 06/07/2013 :  2:24:05 PM  Show Profile  Edit Reply  Reply with Quote  View user's IP address  Delete Reply
I have perfectly fitted my curve and revised my function. Thank you very much!
Go to Top of Page

riw001

1 Posts

Posted - 06/20/2013 :  6:50:34 PM  Show Profile  Edit Reply  Reply with Quote  View user's IP address  Delete Reply
Dear Meili,

I have an OriginLab problem that is somewhat related to the one posted by MOFs that you helped resolved.

Our version is OriginPro 9. We are trying to carry out nonlinear fittings for our experimental data using a (rather complicated) user defined equation. While we are able to obtain seemingly good fitting results, the results do not make much sense and are highly sensitive to initial parameter values.

I suspect this is because we do not have proper parameter initialization for our user defined equation. Given that we are not familiar with Origin C, or any other method of parameter initialization, I am wondering if you would be kind enough to help us figure out the proper parameter initialization for our equation I am very happy to send you the user defined equation in .fdf file if you would like to take a look at it.

Thank you so much in advance for your kind assistance!

Sincerely,
R. Wang

quote:
Originally posted by meili_yang

Hi,

You have two parameters, so try to fix one and converge. Open NLFit dialog, under 'Parameters' tab check Fixed for one parameter.

Also your function is a little too complicated. I don't know if it's the problem but you might also try to simplify it. For example, make abs(j1)/(1.38E-23) to be one parameter, calculate j1 from it.

Try the above first, and I am glad to help if you have further questions.

Meili
OriginLab

Go to Top of Page

meili_yang

103 Posts

Posted - 06/24/2013 :  10:24:21 AM  Show Profile  Edit Reply  Reply with Quote  View user's IP address  Delete Reply
Hi Rick,

We have received your files. I believe someone is taking a look at it, and hopefully will get back to you soon.

Thanks for you patience.

Meili
OriginLab Tech Support

quote:
Originally posted by MOFs

I have perfectly fitted my curve and revised my function. Thank you very much!



Meili
OriginLab Tech Support
Go to Top of Page

rahonavis75

USA
1 Posts

Posted - 01/18/2014 :  05:37:51 AM  Show Profile  Edit Reply  Reply with Quote  View user's IP address  Delete Reply
Hello all,

I am having much the same sort of problem Rick had. I have a very complicated function I want to fit some data to, but the fits sometimes do not converge and are very sensitive to initial parameter estimates. I cannot fix any of my parameters to simplify matters. Is there a general way to go about solving this issue? If not, I can provide more information.

Best,
Stefan
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