Purpose: a graphical X-windows program for binding curve studies and NMR spectroscopic analysis.
The power of xcrvfit lies in its convenience to process multiple datasets of various formats, the ability to experiment with fitting parameter scenarios, and the ability to customize the graphics. The program runs quickly and on any platform supporting X-windows. Output from the program includes a graph of the function through the data (saved in postscript format), the rmse of the fit, a measure of the sensitivity of each fitting function parameter, and a table showing how each datapoint fits the function.
The xcrvfit program is a combination of 3 programs previously written in sunview: crvfit, jfit, and t1t2fit.
Funding for this project has been provided by the Medical Research Council of Canada and the Protein Engineering Networks of Centres of Excellence (Canada).
Executable versions of this program for suns or sgis are freely available at our ftp site. First you will need to download the software from our website:
uncompress myfile.tar.Z tar xvf myfile.tar
You should then take a look at the README file to understand what files are being installed and the installation options you have. After this, type "Install" to put the files in the appropriate places.
The current version of this software comes with an expiry date. If your software has expired, check out the website above for further instructions or new versions.
! This is a crvfit data file ! ! x f(x) ! 1.0 5.1 2.2 12.0 3.6 19.3Multiple datasets can be placed in one file however an ID number must be found on the line preceding each data set. Click here to see an example.
kay - In this format the x-values are placed on the first line and each subsequent line contains an identifier (likely the amino acid number) and the corresponding y-values. Click here to see an example.
jfit - jfit format refers to Varian's vnmr 'fitspec.data' file format. An example of this format follows below:
100 (number of points) -20 (start of plot) 30 (width of plot) 1.00 (first y-value) 1.05 (second y-value) ...
fp - fp format refers to Varian's vnmr 'fp.out' file format. Click here to see an example.
If you do not get a graphical window, check with your system administrator to make sure the program has been installed and is accessible to you.
The default fonts, colors, sizes of the xcrvfit gui are set in the $HOME/.xcrvfit file. Click here to see an example.
Simply click and hold the leftmost mouse button on the current entry in the DataFormat field. Hilite the appropriate selection and release the mouse button. For an explanation of the various formats see the Input Data Files section.
The program proceeds to read in the data and display the first data set. If the data is not drawn in the plotting window make sure you have selected the correct data format.
The program starts by reading the first dataset, but the user can select another. The user has the choice of changing the offset for the x data (this is particularly useful for the chemical shift functions). Finally, the user may want to change how the graph is displayed in the plotting window by clicking the "Set Graphics" button. Here the user can change variables such as xMax, number of tic marks, titles, colors, etc.
This is done in the same manner as selecting the dataFormat. For a more detailed explanation of the functions see Fitting Functions .
Once the function has been selected, the program displays the appropriate parameter fields.
A graph of the fitting function is displayed (along with an rmse value) as soon as all parameters have been entered. If you do not see the fitting function try pressing return for each parameter or change the x/y scale to include a wider range of numbers.
Some functions will converge to the best fit function regardless of the starting parameters. Others are very sensitive and a close approximation is required first.
Here you can see how every datapoint corresponds to the fitting function. Also, you can see how sensitive each fitting parameter is by looking at the stddev field.
The program then reads in the next dataset. The previous starting parameters are not erased so that the user may be able to quickly process several datasets by alternating between "iterate" and "next dataset".
Click here to see an example results file.
f(x) = A0*x + A1
f(x) = A0*x^2 + A1*x + A2
f(x) = A0*x^3 + A1*x^2 + A2*x + A3
f(x) = A0 * exp(A1 * x) + A2
f(x) = A0 * exp(-x / A1)
f(x) = A0 * (1.0 - A1 * exp(-x / A2))
f(x) = (A0 * exp(-x / A1)) + (A2 * exp(-x / A3))
b = 10^((-x)*A3) c = 10^((-A0)*A3) f(x) = A1 + (b / (b + c)) * (A2 - A1)
f(x) = (A0 * cos(x)^2) - (A1 * cos(x)) + A2
b = 4 * PI * PI c = T1(1) / (1 + b*(x-Vo(1))*(x-Vo(1)) * (T1(1)*T1(1)) d = T1(2) / (1 + b*(x-Vo(2))*(x-Vo(2)) * (T1(2)*T1(2)) f(x) = Mo * (c + F*d)
f(x) = A0 + A1 / (1 + exp(-(x - A2) / A3)))
c = A0 * exp(A1 * A2 * (x - A3)); d = A0 * A0 * A4 * exp(A1 * A2 * 2.0 * (x - A3)); f(x) = c + d;
b = x + 273.15 c = b *((A4 / A6) + A5 * log(b / A6)) d = A4 + A5 * (b - A6) e = (d - c) / 0.001987 f = exp((-e) / b) g = f / (1 + f) f(x) = (1 - g) * (A0 - A1 * x) + g * (A2 - A3 * x)
b = x + x2 + A1 f(x) = A0 * (b - sqrt(b*b - 4*x*x2)) / (2.0 * x2)
b = A3 - 4 * A1 c = A3 * A3 d = (c - (4*A1*A3) - (2*x2*A3)) / b e = ((x * A3 * (2*x2 - x)) - (c * (x2 + A1 + x))) / b f = -(2*d*d*d - 9*d*e + (27 * ((x*x2*c) / b))) / 54.0 g = (3*e - d*d) / 3.0 w = f / sqrt(-(g*g*g) / 27.0) h = 180.0 / PI * acos(w) x3 = (2 * sqrt(-g/3.0) * cos(((h/3.0)+240)*TO_RAD) - (d/3.0)) f(x) = ((A0*x3) + (A2*x3*(x-x3)/(2*x3+A3))) / x2
Last modified: Jan 6, 1997
Robert Boyko - robert.boyko@ualberta.ca