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
 Non-linear curve fiting
 New Topic  Reply to Topic
 Printer Friendly
Author Previous Topic Topic Next Topic Lock Topic Edit Topic Delete Topic New Topic Reply to Topic

bernie426

USA
1 Posts

Posted - 03/01/2013 :  6:29:10 PM  Show Profile  Edit Topic  Reply with Quote  View user's IP address  Delete Topic
Origin Ver. and Service Release (Select Help-->About Origin):
Operating System:

I have an equation to fit with my experiment data points,but the curve fitting always shows magnitude lower at the y-axis. Could any expert help me out? F can be any constant larger than 0 and the only factor to be extract is n.

Here is my code:
x*=pi/180.0;// convert x to radian (x is independent variable)
t*=pi/180.0;// convert t to radian (t is know value, 20 degree)
double r;
r=z/(cos(t));//z set to 910
double u,v;
u=(r*cos(x))+((r*sin(x))*tan(x+t));
v=(r*cos(t))*(1/(cos(x+t)));
if(x>=0)
y=F*(n+1)*(1/(2*pi*u^2))*((cos(x))^n);
else if(x<=0)
y=F*(n+1)*(1/(2*pi*v^2))*((cos(x))^n)

The experiment data points are
x y
-12.54 770.5519
-8.18 768.7524
-3.92 787.47
0.19 774.24
4.13 726.31
7.78 675.0
11.41 637.15
14.71 569.86
17.8 512.13
20.68 465.64
23.34 420.52
25.82 355.25
28.11 314.7
30.22 274.03
32.19 247.61
34.00 202.18
35.69 187.7
37.13 170.9

Thanks

Edited by - bernie426 on 03/01/2013 6:50:45 PM

Shirley_GZ

China
Posts

Posted - 03/04/2013 :  02:44:04 AM  Show Profile  Edit Reply  Reply with Quote  View user's IP address  Delete Reply
Hi Bernie,
I defined the fitting function as below:

double x1=x*pi/180;
double t=20;
double z=910;
t*=pi/180.0;// convert t to radian
double r;
r=z/(cos(t));
double u,v;
u=(r*cos(x1))+((r*sin(x1))*tan(x1+t));
v=(r*cos(t))*(1/(cos(x1+t)));
if(x1>=0)
y=F*(n+1)*(1/(2*pi*u^2))*((cos(x1))^n);
else if(x1<=0)
y=F*(n+1)*(1/(2*pi*v^2))*((cos(x1))^n)

And then, set the parameter n as 2 and fix it, set parameter F as 1E9.
Click Fit button to do fitting.

It is worthy to mention that in your code, after you simplify the equation, u is equal to v. so, for x>=0 and x<=0, the y equations are same.


Originlab Technical Service Team

Edited by - Shirley_GZ on 03/04/2013 02:47:19 AM
Go to Top of Page

cc261

22 Posts

Posted - 03/06/2013 :  11:07:00 PM  Show Profile  Edit Reply  Reply with Quote  View user's IP address  Delete Reply
see the results below:

f 1715573154.26265
n 1.61268335005249
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