SVD notes

Notes on using singular value decomposition to analyze equilibrium unfolding data.

    SVD provides a shortcut to globally fitting all of the unfolding data at different wavelengths simultaneously.  This is accomplished by decomposing the data matrix of (spectrum vs [denaturant])  or (spectrum vs temperature) into the minimal number of significant basis vectors along both experimental axes.  A good reference for this procedure is Eric Henry and Jim Hofrichter's review in Methods of Enzymology.  This note will focus on its use with the global analysis package Savuka.
    The way we handle the data is via the following:

  • The data matrix is created.
  • SVD is executed on this data matrix
  • The minimal number of significant basis vectors along the urea (or temperature) axis is read into Savuka and fit to the user's model.
  • The wavelength basis spectra are then read in and the data matrix with the fit parameters at each wavelength is reconstructed.  At this point, it is as though we had globally fit the entire data matrix globally.  The extrapolated spectra are then obtained from the set of reconstructed data and fit parameters.


The data requirements and/or suggestions are the following:

  • All of the spectra must have been acquired over the same wavelength range, i.e. the sampling along the wavelength axis must be consistent.  For circular dichroism data, where sometimes one is not able to goto sufficiently low wavelength at high urea concentrations, you need to cut your data at this wavelength for all spectra.
  • Typically, we use SVD when there are more than 20 spectra.
  • The maximum size of the experimental data set is 512 wavelengths by 512 titration points.  This can be increased although I have yet to see anybody even come close to this data set size.


In this example, I will assume that the data was collected using an Aviv CD spectrometer running the DOS based software (Plot 4.1).  The utility program avi2bin will also handle the ASCII output from the new software.  If your data is from some other package you can use the generic ASCII file reading program asc2bin .  This will require you to tell it where the data starts and how many data points there are and where the comment field is.

The sequence of commands on Unix machines (assuming that all of the programs are in your execution path) is as follows:

ls -1 *.asc > list.dir               ; This puts all of the x,y data files into a list, with one line per filename. (That's a "-one" not a"-el")
avi2bin                                ; You can get tag the files with urea concentrations by putting the concentration in the comment field (i.e. note) or by reading them from a file.  For output, you want to choose the Y-format.  SVD will not work with the other formats.  The name of the Y-format file is assumed to by mydata.bin.
 

A sample SVD session on our machine.  This tutorial analyzes simulated denaturation titration data contained in the file svd-data-tutor.bin.  Because this data is simulated it is known that it is 3-state.  One of the points to be obtained from this tutorial is that this data is very difficult to distinguish from a two-state curve by single wavelength analysis.  However, when SVD and global fitting is used, it is clear that this data is 3-state.  In fact one can even obtain spectra of the native, intermediate and unfolded species extrapolated to the 0 M denaturant case.

protein 1% svd                                    ; this runs the SVD algorithm on the data
 FILENAME FOR MATRIX: svd-data-tutor.bin
 # OF SPECTRA TO WRITE TO DISK: 10                ; I typically choose around 10 spectra to get an idea of the noise level
 READING DATA FROM DISK...
 DONE. # ROWS =  101   # COLS =   41
 EXECUTING SVD...
 DONE
 WRITING U MATRIX TO FILE: svd-data-tutor.u      ; 3 files are created: " .u" contains the basis spectra (Savuka bin file)
 WRITING W MATRIX TO FILE: svd-data-tutor.w      ; " .w" contains the weights, 1 point autocorrelations of U and V.
 WRITING V MATRIX TO FILE: svd-data-tutor.v      ; " .v" contains the denaturant-dependent basis vectors (Savuka bin file)
protein 2% more svd-data-tutor.w
    71.24174654534343      0.9993287489578078       4955.079296805798
    2.162932075390268      0.9935897098746550       4.522452494892374
   0.2218505870329251      0.5102242907409461      3.6377737261179995E-02
   0.2028312522464755      0.1287222309616219      3.6542219731727802E-03
   0.1900742349148103      2.4134314977126405E-02  1.7064811622013144E-03
   0.1782615032664355      9.3385392147699545E-02  4.5447511138147524E-03
   0.1725189333033657      6.0571259547891713E-02  3.2426506190007635E-03
   0.1702812839722500      4.5531464692584074E-02  9.1051268790914280E-03
   0.1633048374273073      7.4268137462947331E-02  2.7685466575666186E-04
   0.1592650269970581      9.8164835664051833E-02  4.7945451315474716E-03
   0.1103925960286174      3.8287103361240533E-02  3.8034647330552162E-03
   0.1529871122321390      4.2880376857522981E-02  3.6293929501092738E-03
   0.1550009960189279      0.1405440974434793      3.5846955379609828E-03
   0.2028312522464755      0.1287222309616219      3.6542219731727802E-03
   0.1900742349148103      2.4134314977126405E-02  1.7064811622013144E-03
   0.1725189333033657      6.0571259547891713E-02  3.2426506190007635E-03
   0.1702812839722500      4.5531464692584074E-02  9.1051268790914280E-03
   0.1592650269970581      9.8164835664051833E-02  4.7945451315474716E-03
   0.1550009960189279      0.1405440974434793      3.5846955379609828E-03
   0.1529871122321390      4.2880376857522981E-02  3.6293929501092738E-03
   0.1467358283359284      6.8307997204556520E-02  1.4639964787151898E-03
  ORDER OF COLUMNS IS W ACU ACV

It is clear that the first two vectors of U and V are significant.  The third vector is a close call based on the weights and the autocorrelations.  Let's take a look at them and see if we should include the third vector.  If this were real data, one might attribute this to instrumental artifacts or drift.
 

protein 4% savuka

                  SAVUKA   Version 5.2.0
                    7/16/99  Irix/Linux

                 Copyright(C) 1991, 1996
          David G. Lambright and Osman Bilsel
 

  Enter:  "help"     to:   get info about commands
          "exit"           quit Savuka
          "clear -s"       re-dimension work space
          "!"              shell to system

  Questions?  E-mail osman@protein.chem.psu.edu

 MAX # OF BUFFERS=   256,  MAX # OF POINTS=  2048
SA> mr svd-data-tutor.u                         ; Let's first read the spectra in
FORMAT (Y,YE,XY,XYE,OXY,YZ,VXY,VE) [Y]:         ; The data is in Savuka's y-format matrix file.
STORE DATA AS (0=ROWS; 1=COLUMNS) = [  1 ]
FIRST ROW/COLUMN = [  1 ]
LAST ROW/COLUMN = [  256 ] 10
STORE EVERY NTH ROW/COLUMN = [  1 ]
 READING MATRIX...
 # OF ROWS IN ORIGINAL DATA MATRIX =  101
 # OF COLS IN ORIGINAL DATA MATRIX =  10
 DATA READ INTO BUFFERS     1 THROUGH    10
SA> sca 1 10 1                                  ; Let's scan through the spectra one by one

SA> dir
BUFFER  #POINTS ROW-VALUE            REMARKS
------  ------- ---------  --------------------------------
    1     101  0.1000E+01   0.1000000E+01
    2     101  0.2000E+01   0.2000000E+01
    3     101  0.3000E+01   0.3000000E+01
    4     101  0.4000E+01   0.4000000E+01
    5     101  0.5000E+01   0.5000000E+01
    6     101  0.6000E+01   0.6000000E+01
    7     101  0.7000E+01   0.7000000E+01
    8     101  0.8000E+01   0.8000000E+01
    9     101  0.9000E+01   0.9000000E+01
   10     101  0.1000E+02   0.1000000E+02
SA> clear 4 10                                   ; The first 3 look non-random.  Consider the rest to be noise: delete
SA> mr svd-data-tutor.v                          ; Now let's read the denaturant dependent vectors in.
FORMAT (Y,YE,XY,XYE,OXY,YZ,VXY,VE) [Y]:
STORE DATA AS (0=ROWS; 1=COLUMNS) = [  1 ]
FIRST ROW/COLUMN = [  1 ]
LAST ROW/COLUMN = [  256 ] 10
STORE EVERY NTH ROW/COLUMN = [  1 ]
 READING MATRIX...
 # OF ROWS IN ORIGINAL DATA MATRIX =  41
 # OF COLS IN ORIGINAL DATA MATRIX =  10
 DATA READ INTO BUFFERS     4 THROUGH    13
SA> sca 4 13 1

SA> clear 7 13                                   ; Keep the first 3 and delete the rest.
SA> pl 4 6                                       ; Set the plot limits to the denaturant vectors.  This is what we'll fit.
FIRST POINT = [  1 ]
LAST POINT = [  41 ]
 NOTE: USE "EXP" TO ACTIVATE PLOT LIMITS
SA> exp 0
SA> fun 14 0                                     ; Let's fit to a 2-state denaturation model first. (function 14)
SA> lp

 LP> ENTER "0" WHEN DONE
LP> ENTER BUFFER NUMBER = [  1 ] 4
 BUFFER    4  [     1.0000000]  0.1000000E+01
     1           Gnu (Kcal/mol)            0.000000       4     1 VAR
     2       Anu (Kcal/mol/[D])            0.000000       4     2 VAR
     3 SLOPE OF NATIVE BASELINE            0.000000       4     3 VAR
     4 Y-INT OF NATIVE BASELINE            0.000000       4     4 VAR
     5 SLOPE OF UNFOLDED BASELIN           0.000000       4     5 VAR
     6 Y-INT OF UNFOLDED BASELIN           0.000000       4     6 VAR
     7          TEMPERATURE (K)            0.000000       4     7 FIXED

 LP> ENTER "0" WHEN DONE
LP> ENTER BUFFER NUMBER = [  5 ] 0
SA> ap                                           ; Let's enter some guesses for buffers 4 through 6

 AP> ENTER "0" WHEN DONE
AP> ENTER BUFFER NUMBER = [  1 ] 4
 AP> BUFFER NUMBER     4          [     1.0000000]
 AP> <CR> TO RETAIN CURRENT VALUES
Gnu (Kcal/mol) = [  0.0000000E+00 ] 5
Anu (Kcal/mol/[D]) = [  0.0000000E+00 ] 2
SLOPE OF NATIVE BASELINE = [  0.0000000E+00 ] -.1
Y-INT OF NATIVE BASELINE = [  0.0000000E+00 ] -2
SLOPE OF UNFOLDED BASELINE = [  0.0000000E+00 ] 0
Y-INT OF UNFOLDED BASELINE = [  0.0000000E+00 ] -14
TEMPERATURE (K) = [  0.0000000E+00 ] 298.15

 AP> ENTER "0" WHEN DONE
AP> ENTER BUFFER NUMBER = [  5 ]
 AP> BUFFER NUMBER     5          [     2.0000000]
 AP> <CR> TO RETAIN CURRENT VALUES
Gnu (Kcal/mol) = [      5.0000000 ]
Anu (Kcal/mol/[D]) = [      2.0000000 ]
SLOPE OF NATIVE BASELINE = [  0.0000000E+00 ]
Y-INT OF NATIVE BASELINE = [  0.0000000E+00 ] .3
SLOPE OF UNFOLDED BASELINE = [  0.0000000E+00 ]
Y-INT OF UNFOLDED BASELINE = [  0.0000000E+00 ] -.2
TEMPERATURE (K) = [    298.1500000 ]

 AP> ENTER "0" WHEN DONE
AP> ENTER BUFFER NUMBER = [  6 ]
 AP> BUFFER NUMBER     6          [     3.0000000]
 AP> <CR> TO RETAIN CURRENT VALUES
Gnu (Kcal/mol) = [      5.0000000 ]
Anu (Kcal/mol/[D]) = [      2.0000000 ]
SLOPE OF NATIVE BASELINE = [  0.0000000E+00 ]
Y-INT OF NATIVE BASELINE = [  0.0000000E+00 ] -.06
SLOPE OF UNFOLDED BASELINE = [  0.0000000E+00 ]
Y-INT OF UNFOLDED BASELINE = [  0.0000000E+00 ] 0
TEMPERATURE (K) = [    298.1500000 ]

 AP> ENTER "0" WHEN DONE
AP> ENTER BUFFER NUMBER = [  7 ] 0
SA> pl
FIRST BUFFER = [  4 ]
LAST BUFFER = [  6 ]
FIRST POINT = [  1 ]
LAST POINT = [  41 ]
 NOTE: USE "EXP" TO ACTIVATE PLOT LIMITS
SA> rms -last 10 -p 1 4 6                    ; Weight the buffers by their rms noise level
 POLYNOMIAL COEFICIENTS
 SA> C(0) = -0.1488895E+02
 SA> C(1) = -0.2330183E+00
 BUFFER=    4  RMS DEVIATION=     0.0151570  AVERAGE=     0.0000000
 POLYNOMIAL COEFICIENTS
 SA> C(0) = -0.1686137E+00
 SA> C(1) =  0.3043199E-01
 BUFFER=    5  RMS DEVIATION=     0.0114933  AVERAGE=     0.0000000
 POLYNOMIAL COEFICIENTS
 SA> C(0) = -0.1374466E-01
 SA> C(1) = -0.8676074E-02
 BUFFER=    6  RMS DEVIATION=     0.0092456  AVERAGE=     0.0000000
SA> mod                                      ; Calculate the model just to see how close we're starting in the fit.
SA> sd 1                                     ; Change stack depth (sd) so that the data and model are plotted.
SA> sca 4 6 1                                ; Scan through the buffers

SA> fit                                      ; Start the fit.
ITERATION LIMIT = [  10 ]
 ITERATIONS=    0, RCHISQ=  5769.4397304
 ITERATIONS=    1, RCHISQ=   910.5483803, %CHANGE=  84.21773
 ITERATIONS=    2, RCHISQ=   128.3638381, %CHANGE=  85.90258
 ITERATIONS=    3, RCHISQ=    30.5091839, %CHANGE=  76.23226
 ITERATIONS=    4, RCHISQ=    29.8741990, %CHANGE=   2.08129
 ITERATIONS=    5, RCHISQ=    29.8737789, %CHANGE=   0.00141

 %-----------FIT INFO AND STATISTICS-----------%

    DATA FROM FILE  0.1000000E+01
    RANGE OF POINTS USED FOR FIT:    1   41
    MARQUARDT NON-LINEAR LEAST-SQUARES FIT
    NUMERICAL PARTIAL DERIVATIVES
    MATRIX INVERSION BY GAUSS-JORDAN
    CORRESPONDING DATA RANGE:       0.0000,       8.0000
    CHISQ CONVERGED IN            5 ITERATIONS
    FIT TOLERANCE =   1.0000000000000000E-04
    TOTAL # OF DATA POINTS =          123
    TOTAL # OF VAR PARAMETERS =           14
    NO. DEGREES OF FREEDOM =          109
    CHI-SQUARED=    3256.241895926694
    REDUCED CHI-SQUARED =    29.87377886171279
    GOODNESS OF FIT =   0.0000000000000000E+00

 %---------------   PARAMETERS  ---------------%
 

                                    value             stddev     dependency

 >> BUFFER     4 [       1.00000]  0.1000000E+01
            Gnu (Kcal/mol) =      8.7106405  +/-      0.2304413  0.9607250
----- ENTER <CR> TO CONTINUE OR Q TO QUIT -----  :
        Anu (Kcal/mol/[D]) =      2.6095122  +/-      0.0681277  0.9602143
  SLOPE OF NATIVE BASELINE =     -0.8615405  +/-      0.0306512  0.7349154
  Y-INT OF NATIVE BASELINE =     -2.2458726  +/-      0.0432160  0.6617056
 SLOPE OF UNFOLDED BASELIN =     -0.2180043  +/-      0.0164448  0.8746786
 Y-INT OF UNFOLDED BASELIN =    -13.1255611  +/-      0.1026358  0.8801398
           TEMPERATURE (K) =    298.1500000

 >> BUFFER     5 [       2.00000]  0.2000000E+01
            Gnu (Kcal/mol) =      8.7106405  +/-      0.2304413  0.9607250
        Anu (Kcal/mol/[D]) =      2.6095122  +/-      0.0681277  0.9602143
  SLOPE OF NATIVE BASELINE =      0.2177865  +/-      0.0169836  0.6372298
  Y-INT OF NATIVE BASELINE =      0.1250523  +/-      0.0298261  0.6283171
 SLOPE OF UNFOLDED BASELIN =     -0.0235647  +/-      0.0102610  0.8477012
----- ENTER <CR> TO CONTINUE OR Q TO QUIT -----  :
 Y-INT OF UNFOLDED BASELIN =      0.0092044  +/-      0.0616844  0.8487735
           TEMPERATURE (K) =    298.1500000

 >> BUFFER     6 [       3.00000]  0.3000000E+01
            Gnu (Kcal/mol) =      8.7106405  +/-      0.2304413  0.9607250
        Anu (Kcal/mol/[D]) =      2.6095122  +/-      0.0681277  0.9602143
  SLOPE OF NATIVE BASELINE =      0.0301920  +/-      0.0135696  0.6347534
  Y-INT OF NATIVE BASELINE =     -0.0707449  +/-      0.0239526  0.6276867
 SLOPE OF UNFOLDED BASELIN =     -0.0103465  +/-      0.0082041  0.8467700
 Y-INT OF UNFOLDED BASELIN =      0.0616821  +/-      0.0492447  0.8476170
           TEMPERATURE (K) =    298.1500000

 FILE FOR STATISTICS: tutor-2s-01.sta                   ; Save the output to a file (usually .sta ending)
SA> wp tutor-2s-01.par                                  ; Save parameters to a file (usually .par ending)
SA> sca 4 6 1                                           ; Definitely room for improvement.  Try a 3-state fit:

SA> fun 11 0                                            ; Function 11 is 3-state denaturation
SA> ap

 AP> ENTER "0" WHEN DONE
AP> ENTER BUFFER NUMBER = [  1 ] 4
 AP> BUFFER NUMBER     4          [     1.0000000]
 AP> <CR> TO RETAIN CURRENT VALUES
Gni (Kcal/mol) = [      0.2177865 ] 4
Ani (Kcal/mol/[D]) = [      0.1250523 ] 1.5
Giu (Kcal/mol) = [     -0.0235647 ] 5
Aiu (Kcal/mol/[D]) = [      0.0092044 ] 2
SLOPE OF NATIVE BASELINE = [    298.1500000 ] 0
Y-INT OF NATIVE BASELINE = [      8.7106405 ] 2
SLOPE OF UNFOLDED BASELINE = [      2.6095122 ] 0
Y-INT OF UNFOLDED BASELINE = [      0.0301920 ] -14
Z PARAMETER = [     -0.0707449 ] .1
TEMPERATURE (K) = [     -0.0103465 ] 298.15

 AP> ENTER "0" WHEN DONE
AP> ENTER BUFFER NUMBER = [  5 ]
 AP> BUFFER NUMBER     5          [     2.0000000]
 AP> <CR> TO RETAIN CURRENT VALUES
Gni (Kcal/mol) = [      4.0000000 ]
Ani (Kcal/mol/[D]) = [      1.5000000 ]
Giu (Kcal/mol) = [      5.0000000 ]
Aiu (Kcal/mol/[D]) = [      2.0000000 ]
SLOPE OF NATIVE BASELINE = [  0.0000000E+00 ]
Y-INT OF NATIVE BASELINE = [  0.0000000E+00 ] .3
SLOPE OF UNFOLDED BASELINE = [  0.0000000E+00 ]
Y-INT OF UNFOLDED BASELINE = [  0.0000000E+00 ] -.2
Z PARAMETER = [  0.0000000E+00 ] -1.5
TEMPERATURE (K) = [    298.1500000 ]

 AP> ENTER "0" WHEN DONE
AP> ENTER BUFFER NUMBER = [  6 ]
 AP> BUFFER NUMBER     6          [     3.0000000]
 AP> <CR> TO RETAIN CURRENT VALUES
Gni (Kcal/mol) = [      4.0000000 ]
Ani (Kcal/mol/[D]) = [      1.5000000 ]
Giu (Kcal/mol) = [      5.0000000 ]
Aiu (Kcal/mol/[D]) = [      2.0000000 ]
SLOPE OF NATIVE BASELINE = [  0.0000000E+00 ]
Y-INT OF NATIVE BASELINE = [  0.0000000E+00 ] -.06
SLOPE OF UNFOLDED BASELINE = [  0.0000000E+00 ]
Y-INT OF UNFOLDED BASELINE = [  0.0000000E+00 ]
Z PARAMETER = [  0.0000000E+00 ] .8
TEMPERATURE (K) = [    298.1500000 ]

 AP> ENTER "0" WHEN DONE
AP> ENTER BUFFER NUMBER = [  7 ] 0
SA> wp tutor-3s-guess.par
SA> mod
SA> sca 4 6 1

SA> fit
ITERATION LIMIT = [  10 ]
 ITERATIONS=    0, RCHISQ= 15588.6425632
 ITERATIONS=    1, RCHISQ=  8001.5538381, %CHANGE=  48.67062
 ITERATIONS=    2, RCHISQ=  4884.7827719, %CHANGE=  38.95207
 ITERATIONS=    3, RCHISQ=   504.1239879, %CHANGE=  89.67971
 ITERATIONS=    4, RCHISQ=    71.2257204, %CHANGE=  85.87139
 ITERATIONS=    5, RCHISQ=    63.9952943, %CHANGE=  10.15143
 ITERATIONS=    6, RCHISQ=    53.4319794, %CHANGE=  16.50639
 ITERATIONS=    7, RCHISQ=    49.9100544, %CHANGE=   6.59142
 ITERATIONS=    8, RCHISQ=    47.5156684, %CHANGE=   4.79740
 ITERATIONS=    9, RCHISQ=    45.5580178, %CHANGE=   4.12001
 ITERATIONS=   10, RCHISQ=    43.8535480, %CHANGE=   3.74132

 %-----------FIT INFO AND STATISTICS-----------%

    DATA FROM FILE  0.1000000E+01
    RANGE OF POINTS USED FOR FIT:    1   41
    MARQUARDT NON-LINEAR LEAST-SQUARES FIT
    NUMERICAL PARTIAL DERIVATIVES
    MATRIX INVERSION BY GAUSS-JORDAN
    CORRESPONDING DATA RANGE:       0.0000,       8.0000
    ITERATION LIMIT REACHED BEFORE CONVERGENCE
    FIT TOLERANCE =   1.0000000000000000E-04
    TOTAL # OF DATA POINTS =          123
    TOTAL # OF VAR PARAMETERS =           19
    NO. DEGREES OF FREEDOM =          104
    CHI-SQUARED=    4560.768995968579
    REDUCED CHI-SQUARED =    43.85354803815942
    GOODNESS OF FIT =   0.0000000000000000E+00

 %---------------   PARAMETERS  ---------------%
 

                                    value             stddev     dependency

 >> BUFFER     4 [       1.00000]  0.1000000E+01
            Gni (Kcal/mol) =      1.1353876  +/-      1.5749215  0.9601367
----- ENTER <CR> TO CONTINUE OR Q TO QUIT -----  :
        Ani (Kcal/mol/[D]) =      0.8839152  +/-      0.9499669  0.9664567
            Giu (Kcal/mol) =      7.1323784  +/-      0.4728515  0.9801031
        Aiu (Kcal/mol/[D]) =      2.1593151  +/-      0.1123004  0.9748206
  SLOPE OF NATIVE BASELINE =     -0.5355765  +/-      0.6653690  0.9840852
  Y-INT OF NATIVE BASELINE =     -2.2737344  +/-      0.4966100  0.9627215
 SLOPE OF UNFOLDED BASELIN =     -0.1774251  +/-      0.0222916  0.8879542
 Y-INT OF UNFOLDED BASELIN =    -13.4072138  +/-      0.1419944  0.8951867
               Z PARAMETER =      0.0620699  +/-      0.2236065  0.9874537
           TEMPERATURE (K) =    298.1500000

 >> BUFFER     5 [       2.00000]  0.2000000E+01
            Gni (Kcal/mol) =      1.1353876  +/-      1.5749215  0.9601367
        Ani (Kcal/mol/[D]) =      0.8839152  +/-      0.9499669  0.9664567
----- ENTER <CR> TO CONTINUE OR Q TO QUIT -----  :
            Giu (Kcal/mol) =      7.1323784  +/-      0.4728515  0.9801031
        Aiu (Kcal/mol/[D]) =      2.1593151  +/-      0.1123004  0.9748206
  SLOPE OF NATIVE BASELINE =      0.1342075  +/-      0.2111215  0.9719325
  Y-INT OF NATIVE BASELINE =      0.1658477  +/-      0.0535514  0.7893656
 SLOPE OF UNFOLDED BASELIN =     -0.0127025  +/-      0.0126552  0.8495931
 Y-INT OF UNFOLDED BASELIN =     -0.0573416  +/-      0.0765751  0.8515809
               Z PARAMETER =     -0.3581997  +/-      1.4131366  0.9723247
           TEMPERATURE (K) =    298.1500000

 >> BUFFER     6 [       3.00000]  0.3000000E+01
            Gni (Kcal/mol) =      1.1353876  +/-      1.5749215  0.9601367
        Ani (Kcal/mol/[D]) =      0.8839152  +/-      0.9499669  0.9664567
            Giu (Kcal/mol) =      7.1323784  +/-      0.4728515  0.9801031
----- ENTER <CR> TO CONTINUE OR Q TO QUIT -----  :
        Aiu (Kcal/mol/[D]) =      2.1593151  +/-      0.1123004  0.9748206
  SLOPE OF NATIVE BASELINE =     -0.1100910  +/-      0.1099976  0.7457504
  Y-INT OF NATIVE BASELINE =     -0.0303185  +/-      0.0649307  0.6633941
 SLOPE OF UNFOLDED BASELIN =     -0.0076948  +/-      0.0109426  0.8662960
 Y-INT OF UNFOLDED BASELIN =      0.0473135  +/-      0.0669218  0.8862047
               Z PARAMETER =      1.0821128  +/-      0.3233062  0.8266548
           TEMPERATURE (K) =    298.1500000

 FILE FOR STATISTICS:
FILE ALREADY EXISTS, OVERWRITE? [N]:
SA> fit                                  ; Iteration limit reached.  Try some more iterations.  Errors might be large.
ITERATION LIMIT = [  10 ]
 ITERATIONS=    0, RCHISQ=    43.8535480
 ITERATIONS=    1, RCHISQ=    42.3178529, %CHANGE=   3.50187
 ITERATIONS=    2, RCHISQ=    40.9051924, %CHANGE=   3.33821
 ITERATIONS=    3, RCHISQ=    39.5899382, %CHANGE=   3.21537
 ITERATIONS=    4, RCHISQ=    38.3575511, %CHANGE=   3.11288
 ITERATIONS=    5, RCHISQ=    37.1994229, %CHANGE=   3.01930
 ITERATIONS=    6, RCHISQ=    36.1372846, %CHANGE=   2.85525
 ITERATIONS=    7, RCHISQ=    24.4440527, %CHANGE=  32.35780
 ITERATIONS=    8, RCHISQ=    21.1273409, %CHANGE=  13.56858
 ITERATIONS=    9, RCHISQ=    18.7187330, %CHANGE=  11.40043
 ITERATIONS=   10, RCHISQ=    16.9331137, %CHANGE=   9.53921

 %-----------FIT INFO AND STATISTICS-----------%

    DATA FROM FILE  0.1000000E+01
    RANGE OF POINTS USED FOR FIT:    1   41
    MARQUARDT NON-LINEAR LEAST-SQUARES FIT
    NUMERICAL PARTIAL DERIVATIVES
    MATRIX INVERSION BY GAUSS-JORDAN
    CORRESPONDING DATA RANGE:       0.0000,       8.0000
    ITERATION LIMIT REACHED BEFORE CONVERGENCE
    FIT TOLERANCE =   1.0000000000000000E-04
    TOTAL # OF DATA POINTS =          123
    TOTAL # OF VAR PARAMETERS =           19
    NO. DEGREES OF FREEDOM =          104
    CHI-SQUARED=    1761.043821474556
    REDUCED CHI-SQUARED =    16.93311366802457
    GOODNESS OF FIT =   4.0848551223014467-299

 %---------------   PARAMETERS  ---------------%
 

                                    value             stddev     dependency

 >> BUFFER     4 [       1.00000]  0.1000000E+01
            Gni (Kcal/mol) =      2.0412226  +/-      1.3730260  0.9918798
----- ENTER <CR> TO CONTINUE OR Q TO QUIT -----  :
        Ani (Kcal/mol/[D]) =      0.6574615  +/-      0.6563755  0.9944574
            Giu (Kcal/mol) =      7.0711430  +/-      0.8190511  0.9919071
        Aiu (Kcal/mol/[D]) =      2.2122735  +/-      0.1437910  0.9862647
  SLOPE OF NATIVE BASELINE =     -0.6834223  +/-      0.1407487  0.9548082
  Y-INT OF NATIVE BASELINE =     -2.2800202  +/-      0.1431642  0.9213188
 SLOPE OF UNFOLDED BASELIN =     -0.1862471  +/-      0.0141275  0.8901767
 Y-INT OF UNFOLDED BASELIN =    -13.3318279  +/-      0.0902696  0.8975057
               Z PARAMETER =      0.1240167  +/-      0.1590577  0.9710411
           TEMPERATURE (K) =    298.1500000

 >> BUFFER     5 [       2.00000]  0.2000000E+01
            Gni (Kcal/mol) =      2.0412226  +/-      1.3730260  0.9918798
        Ani (Kcal/mol/[D]) =      0.6574615  +/-      0.6563755  0.9944574
----- ENTER <CR> TO CONTINUE OR Q TO QUIT -----  :
            Giu (Kcal/mol) =      7.0711430  +/-      0.8190511  0.9919071
        Aiu (Kcal/mol/[D]) =      2.2122735  +/-      0.1437910  0.9862647
  SLOPE OF NATIVE BASELINE =      0.0813839  +/-      0.1332840  0.9798039
  Y-INT OF NATIVE BASELINE =      0.1593230  +/-      0.0520370  0.8877427
 SLOPE OF UNFOLDED BASELIN =     -0.0131345  +/-      0.0090083  0.8689317
 Y-INT OF UNFOLDED BASELIN =     -0.0659621  +/-      0.0558602  0.8772856
               Z PARAMETER =     -2.0372737  +/-      4.5951002  0.9845402
           TEMPERATURE (K) =    298.1500000

 >> BUFFER     6 [       3.00000]  0.3000000E+01
            Gni (Kcal/mol) =      2.0412226  +/-      1.3730260  0.9918798
        Ani (Kcal/mol/[D]) =      0.6574615  +/-      0.6563755  0.9944574
            Giu (Kcal/mol) =      7.0711430  +/-      0.8190511  0.9919071
----- ENTER <CR> TO CONTINUE OR Q TO QUIT -----  :
        Aiu (Kcal/mol/[D]) =      2.2122735  +/-      0.1437910  0.9862647
  SLOPE OF NATIVE BASELINE =     -0.0336450  +/-      0.0402195  0.7649965
  Y-INT OF NATIVE BASELINE =     -0.0436284  +/-      0.0295570  0.6451177
 SLOPE OF UNFOLDED BASELIN =     -0.0078663  +/-      0.0069214  0.8697711
 Y-INT OF UNFOLDED BASELIN =      0.0443177  +/-      0.0424625  0.8878330
               Z PARAMETER =      2.4921204  +/-      1.9214089  0.9092501
           TEMPERATURE (K) =    298.1500000

 FILE FOR STATISTICS:
FILE ALREADY EXISTS, OVERWRITE? [N]:
SA> fit
ITERATION LIMIT = [  10 ] 20
 ITERATIONS=    0, RCHISQ=    16.9331137
 ITERATIONS=    1, RCHISQ=    15.5398032, %CHANGE=   8.22832
 ITERATIONS=    2, RCHISQ=    14.4153531, %CHANGE=   7.23594
 ITERATIONS=    3, RCHISQ=    13.4845715, %CHANGE=   6.45688
 ITERATIONS=    4, RCHISQ=    12.6986598, %CHANGE=   5.82823
 ITERATIONS=    5, RCHISQ=    12.0243389, %CHANGE=   5.31017
 ITERATIONS=    6, RCHISQ=    11.5190585, %CHANGE=   4.20215
 ITERATIONS=    7, RCHISQ=     7.1906703, %CHANGE=  37.57589
 ITERATIONS=    8, RCHISQ=     5.9556649, %CHANGE=  17.17511
 ITERATIONS=    9, RCHISQ=     4.2881314, %CHANGE=  27.99912
 ITERATIONS=   10, RCHISQ=     4.1973097, %CHANGE=   2.11798
 ITERATIONS=   11, RCHISQ=     2.8499503, %CHANGE=  32.10055
 ITERATIONS=   12, RCHISQ=     1.9474411, %CHANGE=  31.66754
 ITERATIONS=   13, RCHISQ=     1.9428133, %CHANGE=   0.23764
 ITERATIONS=   14, RCHISQ=     1.9428128, %CHANGE=   0.00002

 %-----------FIT INFO AND STATISTICS-----------%

    DATA FROM FILE  0.1000000E+01
    RANGE OF POINTS USED FOR FIT:    1   41
    MARQUARDT NON-LINEAR LEAST-SQUARES FIT
    NUMERICAL PARTIAL DERIVATIVES
    MATRIX INVERSION BY GAUSS-JORDAN
    CORRESPONDING DATA RANGE:       0.0000,       8.0000
    CHISQ CONVERGED IN           14 ITERATIONS
    FIT TOLERANCE =   1.0000000000000000E-04
    TOTAL # OF DATA POINTS =          123
    TOTAL # OF VAR PARAMETERS =           19
    NO. DEGREES OF FREEDOM =          104
    CHI-SQUARED=    202.0525293470007
    REDUCED CHI-SQUARED =    1.942812782182699
    GOODNESS OF FIT =   2.8670669563868463E-08

 %---------------   PARAMETERS  ---------------%
 

                                    value             stddev     dependency

 >> BUFFER     4 [       1.00000]  0.1000000E+01
            Gni (Kcal/mol) =      4.1714708  +/-      0.1259447  0.9825699
----- ENTER <CR> TO CONTINUE OR Q TO QUIT -----  :
        Ani (Kcal/mol/[D]) =      0.9983118  +/-      0.0814669  0.9916425
            Giu (Kcal/mol) =      5.6104467  +/-      0.4404115  0.9940433
        Aiu (Kcal/mol/[D]) =      1.9297142  +/-      0.0625034  0.9875872
  SLOPE OF NATIVE BASELINE =     -0.7209594  +/-      0.0162906  0.8687383
  Y-INT OF NATIVE BASELINE =     -2.3161506  +/-      0.0128060  0.7043200
 SLOPE OF UNFOLDED BASELIN =     -0.2325573  +/-      0.0050827  0.8967368
 Y-INT OF UNFOLDED BASELIN =    -13.0282286  +/-      0.0328031  0.9047251
               Z PARAMETER =      0.7650490  +/-      0.2575057  0.9740585
           TEMPERATURE (K) =    298.1500000

 >> BUFFER     5 [       2.00000]  0.2000000E+01
            Gni (Kcal/mol) =      4.1714708  +/-      0.1259447  0.9825699
        Ani (Kcal/mol/[D]) =      0.9983118  +/-      0.0814669  0.9916425
----- ENTER <CR> TO CONTINUE OR Q TO QUIT -----  :
            Giu (Kcal/mol) =      5.6104467  +/-      0.4404115  0.9940433
        Aiu (Kcal/mol/[D]) =      1.9297142  +/-      0.0625034  0.9875872
  SLOPE OF NATIVE BASELINE =     -0.0001990  +/-      0.0180699  0.9570110
  Y-INT OF NATIVE BASELINE =      0.2774997  +/-      0.0092606  0.7930715
 SLOPE OF UNFOLDED BASELIN =      0.0260441  +/-      0.0034587  0.8840235
 Y-INT OF UNFOLDED BASELIN =     -0.3207095  +/-      0.0219476  0.8937829
               Z PARAMETER =    -10.6469387  +/-      5.7046420  0.9841980
           TEMPERATURE (K) =    298.1500000

 >> BUFFER     6 [       3.00000]  0.3000000E+01
            Gni (Kcal/mol) =      4.1714708  +/-      0.1259447  0.9825699
        Ani (Kcal/mol/[D]) =      0.9983118  +/-      0.0814669  0.9916425
            Giu (Kcal/mol) =      5.6104467  +/-      0.4404115  0.9940433
----- ENTER <CR> TO CONTINUE OR Q TO QUIT -----  :
        Aiu (Kcal/mol/[D]) =      1.9297142  +/-      0.0625034  0.9875872
  SLOPE OF NATIVE BASELINE =     -0.0023075  +/-      0.0041505  0.7123893
  Y-INT OF NATIVE BASELINE =     -0.0482710  +/-      0.0064882  0.6119543
 SLOPE OF UNFOLDED BASELIN =     -0.0028300  +/-      0.0025198  0.8879972
 Y-INT OF UNFOLDED BASELIN =      0.0115862  +/-      0.0156425  0.9120750
               Z PARAMETER =     15.1812022  +/-      6.6899840  0.9038049
           TEMPERATURE (K) =    298.1500000

 FILE FOR STATISTICS: tutor-3s-01.sta                ; Save output.  Note the significant reduction in reduced chi-squared
SA> wp tutor-3s-01.par
SA> sca 4 6 1                                        ; Fits look good

In the next step, the data matrix will be reconstructed from the SVD vectors.  The matrix multiplication will be applied in parallel to the parameters, too.  In this way, we will, after this step, obtain a noise-filtered data matrix and the global fit parameters to that matrix.  This would have taken much longer had we directly tried to globally fit the data matrix.

SA> rec
REC> BUFFER NUM OF FIRST U COLUMN = [  4 ] 1
REC> BUFFER NUM OF LAST  U COLUMN = [  6 ] 3
REC> BUFFER NUM OF FIRST V COLUMN = [  4 ] 4
 REC> GENERATING DATA MATRIX...
 REC> RECONSTRUCTED DATA AND FITS                        ARE IN BUFFERS     7 TH
ROUGH   107
 in 11 ...
SA> pl                                                ; Set the plot limits to the reconstructed data.
FIRST BUFFER = [  7 ]
LAST BUFFER = [  107 ]
FIRST POINT = [  1 ]
LAST POINT = [  41 ]
 NOTE: USE "EXP" TO ACTIVATE PLOT LIMITS
SA> mod                                               ; Now calculate the model function at each wavelength.
SA> sca 7 107 5                                       ; The fit is good at all wavelengths! Amazing.

At this point we've globally fit the entire data matrix.  Therefore, from the corresponding parameters we can extract the spectrum of each species.  We're naturally interested in the spectrum of the intermediate.  The cpa command simply plots the parameter as a function of the "row-value" (i.e. wavelength in this case) and stores this in the next available buffer.  It does this for each parameter.

SA> cpa
CPA> FIRST BUFFER = [  7 ]
CPA> LAST BUFFER = [  107 ]
 CPA> FIT PARAMETERS COPIED TO BUFFERS   108 THROUGH   117
SA> dir -t 15
BUFFER  #POINTS ROW-VALUE            REMARKS
------  ------- ---------  --------------------------------
  103      41  0.3960E+03     396.0000000
  104      41  0.3970E+03     397.0000000
  105      41  0.3980E+03     398.0000000
  106      41  0.3990E+03     399.0000000
  107      41  0.4000E+03     400.0000000
  108     101  0.1000E+01  Gni (Kcal/mol)
  109     101  0.2000E+01  Ani (Kcal/mol/[D])
  110     101  0.3000E+01  Giu (Kcal/mol)
  111     101  0.4000E+01  Aiu (Kcal/mol/[D])
  112     101  0.5000E+01  SLOPE OF NATIVE BASELINE
  113     101  0.6000E+01  Y-INT OF NATIVE BASELINE
  114     101  0.7000E+01  SLOPE OF UNFOLDED BASELINE
  115     101  0.8000E+01  Y-INT OF UNFOLDED BASELINE
  116     101  0.9000E+01  Z PARAMETER
  117     101  0.1000E+02  TEMPERATURE (K)
SA> exp 0
SA> sd 0                                            ; turn off plotting of the model. The spectra are treated as "data"
SA> sca 108 117 1

Note that we get the spectrum of N and U.  To get the spectrum of I we need to "deconvolve" it from the Z-spectrum, where Z=[spect(I)-spect(N)]/[spect(U)-spect(N)].  We can do this right in Savuka (although something like SigmaPlot might be easier for some people).

SA> cbf 115
SA> cbf 113
SA> dir -t 5                                        ; The -t option is similar to the unix tail command.
BUFFER  #POINTS ROW-VALUE            REMARKS
------  ------- ---------  --------------------------------
  115     101  0.8000E+01  Y-INT OF UNFOLDED BASELINE
  116     101  0.9000E+01  Z PARAMETER
  117     101  0.1000E+02  TEMPERATURE (K)
  118     101  0.8000E+01  Y-INT OF UNFOLDED BASELINE
  119     101  0.6000E+01  Y-INT OF NATIVE BASELINE
SA> sbf
BUFFER TO SUBTRACT = [  1 ] 119
FIRST BUFFER = [  108 ] 118
LAST BUFFER = [  117 ] 118
SA> rem 118
COMMENT: U - N
SA> dir -t 5
BUFFER  #POINTS ROW-VALUE            REMARKS
------  ------- ---------  --------------------------------
  115     101  0.8000E+01  Y-INT OF UNFOLDED BASELINE
  116     101  0.9000E+01  Z PARAMETER
  117     101  0.1000E+02  TEMPERATURE (K)
  118     101  0.8000E+01  U - N
  119     101  0.6000E+01  Y-INT OF NATIVE BASELINE
SA> cbf 118
SA> mbf
BUFFER TO MULTIPLY BY = [  1 ] 116
FIRST BUFFER = [  108 ] 120
LAST BUFFER = [  117 ] 120
SA> abf
ADD BUFFER = [  1 ] 119
TO BUFFER = [  108 ] 120
THROUGH BUFFER = [  117 ] 120
SA> dr 120                                            ; This is very close to the true spectrum of I

SA> rem 120
COMMENT: Spectrum of intermediate
SA> dir -t 10
BUFFER  #POINTS ROW-VALUE            REMARKS
------  ------- ---------  --------------------------------
  111     101  0.4000E+01  Aiu (Kcal/mol/[D])
  112     101  0.5000E+01  SLOPE OF NATIVE BASELINE
  113     101  0.6000E+01  Y-INT OF NATIVE BASELINE
  114     101  0.7000E+01  SLOPE OF UNFOLDED BASELINE
  115     101  0.8000E+01  Y-INT OF UNFOLDED BASELINE
  116     101  0.9000E+01  Z PARAMETER
  117     101  0.1000E+02  TEMPERATURE (K)
  118     101  0.8000E+01  U - N
  119     101  0.6000E+01  Y-INT OF NATIVE BASELINE
  120     101  0.8000E+01  Spectrum of intermediate
SA> cbf 113
SA> cbf 115
SA> cbf 120
SA> dir -t 5
BUFFER  #POINTS ROW-VALUE            REMARKS
------  ------- ---------  --------------------------------
  119     101  0.6000E+01  Y-INT OF NATIVE BASELINE
  120     101  0.8000E+01  Spectrum of intermediate
  121     101  0.6000E+01  Y-INT OF NATIVE BASELINE
  122     101  0.8000E+01  Y-INT OF UNFOLDED BASELINE
  123     101  0.8000E+01  Spectrum of intermediate
SA> dr 121 123

SA> mw spectra.vxy
FORMAT (Y,YE,XY,XYE,OXY,YZ,VXY,VE) [VXY]: vxy
FIRST BUFFER = [  108 ]
LAST BUFFER = [  117 ] 123
 WRITING DATA MATRIX TO FILE...
 # ROWS =  101
SA>
SA> lp

 LP> ENTER "0" WHEN DONE
LP> ENTER BUFFER NUMBER = [  1 ] 7
 BUFFER    7  [   300.0000000]    300.0000000
     1           Gni (Kcal/mol)            4.171471       4     1 VAR
     2       Ani (Kcal/mol/[D])            0.998312       4     2 VAR
     3           Giu (Kcal/mol)            5.610447       4     3 VAR
     4       Aiu (Kcal/mol/[D])            1.929714       4     4 VAR
     5 SLOPE OF NATIVE BASELINE            0.006801       7     5 VAR
     6 Y-INT OF NATIVE BASELINE            0.032937       7     6 VAR
     7 SLOPE OF UNFOLDED BASELIN           0.003506       7     7 VAR
     8 Y-INT OF UNFOLDED BASELIN           0.111297       7     8 VAR
     9              Z PARAMETER            7.933770       7     9 VAR
    10          TEMPERATURE (K)          298.150000       4    10 FIXED

 LP> ENTER "0" WHEN DONE
LP> ENTER BUFFER NUMBER = [  8 ]
 BUFFER    8  [   301.0000000]    301.0000000
     1           Gni (Kcal/mol)            4.171471       4     1 VAR
     2       Ani (Kcal/mol/[D])            0.998312       4     2 VAR
     3           Giu (Kcal/mol)            5.610447       4     3 VAR
     4       Aiu (Kcal/mol/[D])            1.929714       4     4 VAR
     5 SLOPE OF NATIVE BASELINE            0.007907       8     5 VAR
     6 Y-INT OF NATIVE BASELINE            0.040034       8     6 VAR
     7 SLOPE OF UNFOLDED BASELIN           0.004140       8     7 VAR
     8 Y-INT OF UNFOLDED BASELIN           0.127039       8     8 VAR
     9              Z PARAMETER            7.542456       8     9 VAR
    10          TEMPERATURE (K)          298.150000       4    10 FIXED

 LP> ENTER "0" WHEN DONE
LP> ENTER BUFFER NUMBER = [  9 ]
 BUFFER    9  [   302.0000000]    302.0000000
     1           Gni (Kcal/mol)            4.171471       4     1 VAR
     2       Ani (Kcal/mol/[D])            0.998312       4     2 VAR
     3           Giu (Kcal/mol)            5.610447       4     3 VAR
     4       Aiu (Kcal/mol/[D])            1.929714       4     4 VAR
     5 SLOPE OF NATIVE BASELINE            0.008659       9     5 VAR
     6 Y-INT OF NATIVE BASELINE            0.042370       9     6 VAR
     7 SLOPE OF UNFOLDED BASELIN           0.004416       9     7 VAR
     8 Y-INT OF UNFOLDED BASELIN           0.140874       9     8 VAR
     9              Z PARAMETER            7.174801       9     9 VAR
    10          TEMPERATURE (K)          298.150000       4    10 FIXED

 LP> ENTER "0" WHEN DONE
LP> ENTER BUFFER NUMBER = [  10 ]
 BUFFER   10  [   303.0000000]    303.0000000
     1           Gni (Kcal/mol)            4.171471       4     1 VAR
     2       Ani (Kcal/mol/[D])            0.998312       4     2 VAR
     3           Giu (Kcal/mol)            5.610447       4     3 VAR
     4       Aiu (Kcal/mol/[D])            1.929714       4     4 VAR
     5 SLOPE OF NATIVE BASELINE            0.010204      10     5 VAR
     6 Y-INT OF NATIVE BASELINE            0.051762      10     6 VAR
     7 SLOPE OF UNFOLDED BASELIN           0.005234      10     7 VAR
     8 Y-INT OF UNFOLDED BASELIN           0.163367      10     8 VAR
     9              Z PARAMETER            6.475104      10     9 VAR
    10          TEMPERATURE (K)          298.150000       4    10 FIXED

 LP> ENTER "0" WHEN DONE
LP> ENTER BUFFER NUMBER = [  11 ]
 BUFFER   11  [   304.0000000]    304.0000000
     1           Gni (Kcal/mol)            4.171471       4     1 VAR
     2       Ani (Kcal/mol/[D])            0.998312       4     2 VAR
     3           Giu (Kcal/mol)            5.610447       4     3 VAR
     4       Aiu (Kcal/mol/[D])            1.929714       4     4 VAR
     5 SLOPE OF NATIVE BASELINE            0.011170      11     5 VAR
     6 Y-INT OF NATIVE BASELINE            0.055394      11     6 VAR
     7 SLOPE OF UNFOLDED BASELIN           0.005673      11     7 VAR
     8 Y-INT OF UNFOLDED BASELIN           0.180520      11     8 VAR
     9              Z PARAMETER            6.626111      11     9 VAR
    10          TEMPERATURE (K)          298.150000       4    10 FIXED

 LP> ENTER "0" WHEN DONE
LP> ENTER BUFFER NUMBER = [  12 ]
 BUFFER   12  [   305.0000000]    305.0000000
     1           Gni (Kcal/mol)            4.171471       4     1 VAR
     2       Ani (Kcal/mol/[D])            0.998312       4     2 VAR
     3           Giu (Kcal/mol)            5.610447       4     3 VAR
     4       Aiu (Kcal/mol/[D])            1.929714       4     4 VAR
     5 SLOPE OF NATIVE BASELINE            0.012504      12     5 VAR
     6 Y-INT OF NATIVE BASELINE            0.064116      12     6 VAR
     7 SLOPE OF UNFOLDED BASELIN           0.006408      12     7 VAR
     8 Y-INT OF UNFOLDED BASELIN           0.199153      12     8 VAR
     9              Z PARAMETER            6.122598      12     9 VAR
    10          TEMPERATURE (K)          298.150000       4    10 FIXED

 LP> ENTER "0" WHEN DONE
LP> ENTER BUFFER NUMBER = [  13 ] 50
 BUFFER   50  [   343.0000000]    343.0000000
     1           Gni (Kcal/mol)            4.171471       4     1 VAR
     2       Ani (Kcal/mol/[D])            0.998312       4     2 VAR
     3           Giu (Kcal/mol)            5.610447       4     3 VAR
     4       Aiu (Kcal/mol/[D])            1.929714       4     4 VAR
     5 SLOPE OF NATIVE BASELINE            0.116043      50     5 VAR
     6 Y-INT OF NATIVE BASELINE            0.385132      50     6 VAR
     7 SLOPE OF UNFOLDED BASELIN           0.038307      50     7 VAR
     8 Y-INT OF UNFOLDED BASELIN           2.081830      50     8 VAR
     9              Z PARAMETER            0.766188      50     9 VAR
    10          TEMPERATURE (K)          298.150000       4    10 FIXED

 LP> ENTER "0" WHEN DONE
LP> ENTER BUFFER NUMBER = [  51 ]
 BUFFER   51  [   344.0000000]    344.0000000
     1           Gni (Kcal/mol)            4.171471       4     1 VAR
     2       Ani (Kcal/mol/[D])            0.998312       4     2 VAR
     3           Giu (Kcal/mol)            5.610447       4     3 VAR
     4       Aiu (Kcal/mol/[D])            1.929714       4     4 VAR
     5 SLOPE OF NATIVE BASELINE            0.117489      51     5 VAR
     6 Y-INT OF NATIVE BASELINE            0.386274      51     6 VAR
     7 SLOPE OF UNFOLDED BASELIN           0.038530      51     7 VAR
     8 Y-INT OF UNFOLDED BASELIN           2.112279      51     8 VAR
     9              Z PARAMETER            0.768741      51     9 VAR
    10          TEMPERATURE (K)          298.150000       4    10 FIXED

 LP> ENTER "0" WHEN DONE
LP> ENTER BUFFER NUMBER = [  52 ] 70
 BUFFER   70  [   363.0000000]    363.0000000
     1           Gni (Kcal/mol)            4.171471       4     1 VAR
     2       Ani (Kcal/mol/[D])            0.998312       4     2 VAR
     3           Giu (Kcal/mol)            5.610447       4     3 VAR
     4       Aiu (Kcal/mol/[D])            1.929714       4     4 VAR
     5 SLOPE OF NATIVE BASELINE            0.093197      70     5 VAR
     6 Y-INT OF NATIVE BASELINE            0.266360      70     6 VAR
     7 SLOPE OF UNFOLDED BASELIN           0.026919      70     7 VAR
     8 Y-INT OF UNFOLDED BASELIN           1.721641      70     8 VAR
     9              Z PARAMETER            0.177713      70     9 VAR
    10          TEMPERATURE (K)          298.150000       4    10 FIXED

 LP> ENTER "0" WHEN DONE
LP> ENTER BUFFER NUMBER = [  71 ] 80
 BUFFER   80  [   373.0000000]    373.0000000
     1           Gni (Kcal/mol)            4.171471       4     1 VAR
     2       Ani (Kcal/mol/[D])            0.998312       4     2 VAR
     3           Giu (Kcal/mol)            5.610447       4     3 VAR
     4       Aiu (Kcal/mol/[D])            1.929714       4     4 VAR
     5 SLOPE OF NATIVE BASELINE            0.057910      80     5 VAR
     6 Y-INT OF NATIVE BASELINE            0.153964      80     6 VAR
     7 SLOPE OF UNFOLDED BASELIN           0.015841      80     7 VAR
     8 Y-INT OF UNFOLDED BASELIN           1.083713      80     8 VAR
     9              Z PARAMETER            0.115778      80     9 VAR
    10          TEMPERATURE (K)          298.150000       4    10 FIXED

 LP> ENTER "0" WHEN DONE
LP> ENTER BUFFER NUMBER = [  81 ] 90
 BUFFER   90  [   383.0000000]    383.0000000
     1           Gni (Kcal/mol)            4.171471       4     1 VAR
     2       Ani (Kcal/mol/[D])            0.998312       4     2 VAR
     3           Giu (Kcal/mol)            5.610447       4     3 VAR
     4       Aiu (Kcal/mol/[D])            1.929714       4     4 VAR
     5 SLOPE OF NATIVE BASELINE            0.027971      90     5 VAR
     6 Y-INT OF NATIVE BASELINE            0.069612      90     6 VAR
     7 SLOPE OF UNFOLDED BASELIN           0.007343      90     7 VAR
     8 Y-INT OF UNFOLDED BASELIN           0.529381      90     8 VAR
     9              Z PARAMETER            0.197921      90     9 VAR
    10          TEMPERATURE (K)          298.150000       4    10 FIXED

 LP> ENTER "0" WHEN DONE
LP> ENTER BUFFER NUMBER = [  91 ] 100
 BUFFER  100  [   393.0000000]    393.0000000
     1           Gni (Kcal/mol)            4.171471       4     1 VAR
     2       Ani (Kcal/mol/[D])            0.998312       4     2 VAR
     3           Giu (Kcal/mol)            5.610447       4     3 VAR
     4       Aiu (Kcal/mol/[D])            1.929714       4     4 VAR
     5 SLOPE OF NATIVE BASELINE            0.010458     100     5 VAR
     6 Y-INT OF NATIVE BASELINE            0.021636     100     6 VAR
     7 SLOPE OF UNFOLDED BASELIN           0.002516     100     7 VAR
     8 Y-INT OF UNFOLDED BASELIN           0.203634     100     8 VAR
     9              Z PARAMETER            0.709646     100     9 VAR
    10          TEMPERATURE (K)          298.150000       4    10 FIXED

 LP> ENTER "0" WHEN DONE
LP> ENTER BUFFER NUMBER = [  101 ] 0
SA>
SA> quit
protein 5%
protein 5% bin2ss                                ; This will convert a file from a binary format to a spreadsheet format
  BINARY FILE FORMAT (1=Y(def) ,2=YE, 3=VXY):
3
  INPUT FILE (BINARY):
spectra.vxy
 Delimeter (1=Space (def), 2=tab, 3=comma):
1
  OUTPUT FILE (ASCII Spreadsheet):
spectra.ss
 Read buffer            1 Gni (Kcal/mol)
 Read buffer            2 Ani (Kcal/mol/[D])
 Read buffer            3 Giu (Kcal/mol)
 Read buffer            4 Aiu (Kcal/mol/[D])
 Read buffer            5 SLOPE OF NATIVE BASELINE
 Read buffer            6 Y-INT OF NATIVE BASELINE
 Read buffer            7 SLOPE OF UNFOLDED BASELINE
 Read buffer            8 Y-INT OF UNFOLDED BASELINE
 Read buffer            9 Z PARAMETER
 Read buffer           10 TEMPERATURE (K)
 Read buffer           11 U - N
 Read buffer           12 Y-INT OF NATIVE BASELINE
 Read buffer           13 Spectrum of intermediate
 Read buffer           14 Y-INT OF NATIVE BASELINE
 Read buffer           15 Y-INT OF UNFOLDED BASELINE
 Read buffer           16 Spectrum of intermediate
 Num of columns=          16,  Num of rows=         101
  Done.
protein 6%

We can now make a pretty plot in a spreadsheet application by reading in the file spectra.ss.

Comments