### Fitting of Principal Components or Independent Components using TRENDanalysis

#### Parameters

- The
is used to fit principal components (PC) or independent components (IC) calculatd by Trendmain or TREND NMR. To these PCs and ICs, TRENDanalysis fits an equation selected in the`fitting`

menu. This can include an equation that you provide yourself. TRENDanalysis will save an html report to directory containing the input data.`fittingmode`

The report will have the suffix of`_fitting_result.html`

- When the
option is turned on by choosing`readparm`

`Yes`

,`TRENDanalysis`

fits a PC or IC calculated by`Trendmain`

or`TREND NMR`

. The component is recorded by X and Y coordinates and any units provided for the X-axis. If`readparm`

is turned off by choosing`No`

, the PC or IC will be read instead from,`vtmatrix`

, and`xaxis`

.`xunit`

specifies which PC or IC to fit. It must be a positive integer. By default it is set to 1.`pcn`

specifies the parameters to fit. The parameters are separated by commas (`parameters`

`,`

). Parameters and their values to initialize fitting can be given as equations, e.g.

e.g.`KD=0.3`

. When a parameter is given without an inital value, such as`Pt`

, the initial value will be set as 1.

**Note**all parameters must exist in the fitting function specified underor`fittingmode`

.`function`

allows the user to choose to fit a standard equation of TRENDanalysis. See Fitting models for details.`fittingmode`

`help_tab`

By defaultis set to`help_tab`

`Run data fitting`

which directs TRENDanalysis to fit a curve. Choosing an option other than`Run data fitting`

will print out definitions of parameters listed under theonce the`fittingmode`

`Start`

button is pressed. This will launch a help file in html format.specifies which values to fix in the fitting function. It can be left blank. Setting constants is similar to setting`constant`

.`parameters`

allows user to define their own custom functions. See User defined function for details. Note that equation starts with`function`

`y=`

is not allowed.`vtmatrix`

Whenis turned off,`readparm`

is used to as the source of PCA results calculated by TRENDmain or TREND NMR.`vtmatrix`

`xaxis`

Whenis turned off,`readparm`

is used to read the X-axis file`xaxis`

`xunit`

Whenis turned off,`readparm`

sets the unit of X-axis`xunit`

sets the normalization mode of PC or IC to be fit. See Trendplot manual for details of normalization mode.`normalmode`

#### Fitting models:

- 1:1 protein-ligand binding (y_end, KD, Pt)

These three (y_end, KD, Pt) each can be either a parameter to fit (set in ** parameters**) or fixed to a constant value (see the

**field). This model provides an equation for 1:1 protein-ligand binding: where**

`constant`

*y*is the fraction of bound or free protein (indicated by PC or IC),

*x*stands for total ligand concentration

*[Lt]*which is listed in the file specified in the

**field in**

`xaxis`

`Trendmain`

, `TREND NMR`

or `TRENDanalysis`

, $K D $ refers to the dissociation constant to fit. You should list an initial guess for the value of $K D $ in the **field. Pt represents the total protein concentration,**

`parameters`

*y_end*represents the amplitude of the y-axis of the binding isotherm at infinite ligand concentration. When the binding isotherm is represented by a normalized PC1, the initial value of $y _end $ can be set to 1.0.

**Note**, the unit of

*Pt*must be identical to units of the values of X set in the

`xunit`

field. The binding affinity $K D $ has the same units.An example of 1:1 protein-ligand binding is shown below.

- Exponential decay (A, K, C)

The function of `Exponential`

is , where *A* is the amplitude of the difference between the initial value and the estimate of the asymptote that function approaches $C$. $C$ is the offset of this asymptote from zero, *k* is the fitted rate constant of the decay. Rate can be calculated as inverse of t: R= 1/t.

Similar to 1:1 Protein Ligand Binding, $C,A,t$ must be defined in either ** pararmeters** or

**. However, TRENDanalysis can initialize parameters for exponential fitting (both exponential growth and decay) automatically and hence their initial values do not need to be set, such as:**

`constants`

- Exponential recovery (A, C, T)

The function is , where $A$ is the amplitutde of the difference between the initial value and the estimate of the asymptote that the function approaches $C$ is the offset of this asymptote from zero, $T$ is the fitted time constant of the recovery. T = 1/k, where $k$ is from the exponential decay function, equivalent to this function. These parameters must be defined in either the list of ** parameters** or

**.**

`constants`

- Two-exponential decay(A1, t1, A2, t2, C)

The function of `Two exponential`

decay is , where $A,A$ stand for amplitudes of the two phases, $t,t$ are time constants of two phases, and $C$ is the offset between zero and the asymptote approached at high values of x. The user must choose the initial values carefully according to the shape of the component and points to be fitted.

- Langmuir equation (KD, Imax)

This model determines $K$ by fitting the binding isotherm with the equation, y=(Imax * x) / (KD+x), where y the changes during titration, $I$ refers to the maximum intensity change, x refers to the total ligand concentration ligand concentration *[Lt]*, just as it does for the 1:1 protein-ligand binding model above. A recent example applied the Langmuir equation to a titration measured accurately by WaterLOGSY at low [protein] (Huang et al., 2017, *Sci. Rep.*).

- Henderson-Hasselbalch equation (pKa, ymax, ymin)

This model determines pKa by fitting the equation , where y is the change of chemical shift or PC during the titration and x, x is the pH of the sample.

- Linear regression

Since linear regression does not need ** parameters** or

**, these two options are ignored when linear regression is chosen.**

`constants`

- User defined function

Besides the models descrbied above, TRENDanalysis also supports user-defined functions. The equation can be input in ** function** text field, while its

**and**

`parameters`

**are set in the same way as descrbied above.**

`constants`

**Note**that initial values are very important for any non-linear curve fitting. In the

**field, select user-defined function, and enter the equation in the**

`fittingmode`

**field as illustrated in this example:**

`function`

Note that

`y=`

is not used when entering in the function to be fitted. It is important that the number of data points in the component to be fitted exceed the number of fittable parameters by one, at the very least.