User defined function
Chris Kar Max Planck
I would like to generate a user-defined function and use it to fit a dataset I obtained from ligand titration experiments. This should obey an inverse hyperbolic function of the type : Y=C1-Ymax*[L]/Kd*[L], where [L] the concentration of the ligand, Kd the dissociation constant, Ymax is the saturation signal at the plateau and C1 is the signal at the zero concentration of the ligand which can be treated as a constant. In principle, we are looking for 2 coefficients: the Ymax and the Kd (Kd corresponds to Ymax/2). I have attached a file with a similar dataset for fitting.
My problem is that, while I defined the function and Igor accepts it, when I fit my data I get a very peculiar straight line and not hyperbolic. I have checked a wide range of coefficients at the coefficient tab but still no success. Does anybody have a similar experience with such a function? It is similar to the Michaelis-Menten hyperbolic curve except from the fact that in my case it is inverse. It could be that I am doing something wrong.
Many thanks in advance for your help,
Cheers,
Chris
--
J. J. Weimer
Chemistry / Chemical & Materials Engineering, UAHuntsville
February 17, 2014 at 08:43 am - Permalink
February 17, 2014 at 10:42 am - Permalink
John Weeks
WaveMetrics, Inc.
support@wavemetrics.com
February 17, 2014 at 01:01 pm - Permalink
thanks a lot for your replies. In principle I made a mistake indeed. The denominator has Kd+[L] . So the equation is the following: Y=C-Ymax*L/Kd+L. But still I do not get an inverse hyperbola as it should be. Did you check the file I attached to see the curve????
February 17, 2014 at 01:52 pm - Permalink
February 17, 2014 at 02:12 pm - Permalink
The user-fit function you describe works OK. Not sure where the problem lies. In Curve Fitting you need to define a new fit function. Independent variable is x. Fit coefficients are k0, k1, k2. Your formula is f(x) = k0-(k1*x)/(k2+x)
This should give:
Wave w
Variable x
//CurveFitDialog/ These comments were created by the Curve Fitting dialog. Altering them will
//CurveFitDialog/ make the function less convenient to work with in the Curve Fitting dialog.
//CurveFitDialog/ Equation:
//CurveFitDialog/ f(x) = k0-(k1*x)/(k2+x)
//CurveFitDialog/ End of Equation
//CurveFitDialog/ Independent Variables 1
//CurveFitDialog/ x
//CurveFitDialog/ Coefficients 3
//CurveFitDialog/ w[0] = k0
//CurveFitDialog/ w[1] = k1
//CurveFitDialog/ w[2] = k2
return w[0]-(w[1]*x)/(w[2]+x)
End
You select wave1 as y and wave0 as x, then make some guesses to get going. k0=1000, k1=800, k2=0.9. This works as far as I can see, but for interpretation of the kd and Ymax, I'd need to think about that...
February 17, 2014 at 02:18 pm - Permalink
thanks a lot for your time you spent on my post. I will try it out as soon as possible and let you know. Many thanks once more,
Best,
CSK
February 17, 2014 at 02:46 pm - Permalink
--
J. J. Weimer
Chemistry / Chemical & Materials Engineering, UAHuntsville
February 17, 2014 at 05:04 pm - Permalink
February 18, 2014 at 12:16 am - Permalink