T O P I C R E V I E W |
Jacjoh |
Posted - 06/21/2011 : 08:28:23 AM Origin Ver. and Service Release (Select Help-->About Origin): 8 Operating System: vista
Hello,
I have computed several curves and i have one curve from a measurement. Is it possible to let Origin Fit the computed curves onto the measured curve? Its hard to explain, so i try to give it in an example:
I have Curve A, Curve B and Curve C. ANd than i have Curve X
Now i want to tell Origin to Fit A,B and C onto X and Origin gives me something like this:
Curve_X = 3*Curve_A + 0.7*Curve_B + 1*Curve_C
So nothing very complicated, easy addition of several curves should give the "best possible" fit for another curve. Can this be donw with origin?
Thanks in advance |
7 L A T E S T R E P L I E S (Newest First) |
easwar |
Posted - 06/21/2011 : 4:25:59 PM Hi,
Why don't you send your data to tech support so we can send you back an opj with the results? I tried this with some test data before posting and it worked fine for me. So I am curious to see why it does not work with your data and your function. Click on the "Send File to Tech Support" link on top of the forum to send us the file.
Thanks,
Easwar OriginLab |
Jacjoh |
Posted - 06/21/2011 : 4:09:58 PM too bad, not working. i thought this wasnt that hard of a problem. Well mathematica has to do the job.
thanks anyways for your help |
easwar |
Posted - 06/21/2011 : 3:52:14 PM quote: Originally posted by Jacjoh In the "Settings" Tab: "Data Selection": Input Data i click the "..." Button and choose from "In Current Projekt" my three tables, from the 3 curves and add them.
You only have one dependent variable in your equation, so do not select three columns and make three ranges.
Instead, for your Input data, only select ONE column which is the composite data. Then you will have just Range1 node, so only one node. Then expand that one node, and use the drop-downs to assign the other two columns to the indep var data columns.
If you still have trouble, contact tech support.
Easwar OriginLab |
Jacjoh |
Posted - 06/21/2011 : 3:05:59 PM Hi,
sorry to bother again, but i simply dont get how this works. Anyone here can walk me through?
First of all, the curves have different x values. (Curve A and B (and later the 15 other curves)all have the same, but the resulting Curve X does not).
Right now i have everything like this:
F9 window: Independent Variables: x1,x2 Dependent Variables: sum Parameter Names: P1,P2 Function: sum = P1*x1+P2*x2 Parameter Initialization: P1=1; P2=1; everything else is untouched here.
Than i Press OK, and save it. Than i press CTRL-Y (shortcut for the Fitting window, and than i do as i said before: In the "Settings" Tab: "Data Selection": Input Data i click the "..." Button and choose from "In Current Projekt" my three tables, from the 3 curves and add them.
Now i have under the Data Selection Tab, 3 "Range" entries which i can expand and where i can choose x1, x2 and sum. For all 3 of them! And this is confusing me! I have a dropdown menu on all 3 of them. x1 and x2 have the options :"A", "B" and "<autoX> sum has the option "A" and "B".
The option A, as far as i understnad, stands for the selection of table A, which are my x-values of the curve. And the otpion B beeing my y-values of the curve.
There is right now, no way i can imagine to put those nine varaibles (3 times 3) that will do what i want. It looks like this right now:
Range 1 Curve_X(should be the sum) x1 -> A x2 -> <autoX> sum -> B
Range 2 Curve_A(Curve that should be added P1 times to get Curve_X) x1 -> A x2 -> <autoX> sum -> B
Range 3 Curve_B(Curve that should be added P2 times to get Curve_X) x1 -> A x2 -> <autoX> sum -> B
I have the feeling there is something terribly wrong with my understanding of what this fitting window is supposed to do and what i am to be setting up here.
Intuitively, im searching for some settings like : x1 = Table_Y_variables_from_curve_A x2 = Table_Y_variables_from_curve_B sum = Table_Y_variables_from_curve_X
but i cant make this work.
Please help |
easwar |
Posted - 06/21/2011 : 2:30:59 PM Hi,
Switch to Settings tab and click on Data Selection in the list on the left side panel. Then on the right side expand the Range1 node. You will then see drop-down lists for your independent variables, and you can select specific columns to assign to those and then proceed with the fit.
Do all of your curves share the same X values? If yes, you don't have to make an NLFit function and fit the data this way. Instead, you can use the Multiple Regression tool, which can be accessed from the Analysis->Fitting->Multiple Linear Regression menu item. Then in that dialog, ignore your x column and assign your indep and dep y columns to get the desired results. There is a Fix Intercept check box, and you can check this and set the value to 0 if you do not want an offset parameter.
Easwar OriginLab |
Jacjoh |
Posted - 06/21/2011 : 11:34:33 AM Thank you for the help, but im afraid i ned more help. Origin isnt intuitive enough.
So, i created the Function as you said. For testing purposes i just used 2 curves that should be fittet to a third curve. (later it will be much more, but once i get the hang of it, it shouldnt be a problem)
So, i Press F9, add a new fitting Function. As Function i type in: sum = P1*x1+P2*x2
and therefore as parameters i type in: P1,x1,P2,x2
Initializing the values with P1 = 1; P2 = 1;
Thas all i did in this window.
Now i go "Analysis" -> "Fitting" -> "Nonlinear Curve Fit" -> "Open Dialog"
In the "Settings" Tab:
"Function Selection": I select my created Function.
"Data Selection": Input Data i click the "..." Button and choose from "In Current Projekt" my three y-tables, from the 3 curves and add them.
And now, i cant find the buttons to tell him which table should be used as what parameter. So i cant assign the curves to the parameters, i just cant find the Tab for it. |
greg |
Posted - 06/21/2011 : 09:26:51 AM You can create a function in Fitting Function Organizer (F9) or Fitting Function Organizer Builder (F8) like: sum = P1 * x + P2 * y + P3 * z Initialize your parameter values like: P1 = 3; P2 = 0.7; P3 = 1; When you use the fitting function assign data as follows: x = Curve_A; y = Curve_B; z = Curve_C; sum = Curve_X;
|
|
|