1. Model equation:

1.1 Simple one to one model:

A+LkoffkonAL

Below is the rate equation:

d[AL]dt=kon[A][L]koff[AL]

1.2 Dimerization model

1.2.1 Dimerization model in equilibration

1.2.2 Kinetic model of dimerization

2. Fiting algorithm using numerical intergration

2.1 Input data:

2.2 Procedure:

2.3 Minimization:

2.3.1 nls.lm from minpack.lm:

  • minimize the sum square of the vector returned by gthe function fn
  • use a modification of the levenberg-marquardt algorithm.
  • usage: nls.lm(par, lower = NULL, upper = NULL, fn, jac = NULL, control = nls.lm.control(), …)
    • par: a list of numeric vector with initial estimates.
    • fn: a function that returns a vector of residuals, the sum squae of which is to be minimized.
    • fn: the first argument of fn must be par.
    • jac: a function to return the Jacobian for the fn function.
    • control: see nls.lm.control
    • …: further arguments to be passed to fn and jac
  • both functions fn and jac (if provided) must return numeric vectors.
  • the length of the vector returned by fn must not be lower than the length of par.

2.3.2 GenSA, Generalized Simulated Annealing:

  • searches for global minimum of a very complex non-linear objetive function with a very large number of optima.
  • Usage: GenSA(pan, fn, lower, upper, control=list(), …)
    • par: initial values for the compnents to be optimized.
    • par: Default is NULL, in which case, default values will be generated automatically.
    • fn: a function to be minimized.
    • fn: the first argument of fn should be the vector of parameters over which minimization is to take place.
    • fn: fn should return a scalar result.
    • lower: vector with length of par. Lower bounds for components.
    • upper: vector with length of par. Upper bounds for components.
    • …: allows the user to pass additinal arguments to the function fn.
    • control: control parameters, including temperature, maxit, etc.