Ejemplo n.º 1
0
def MMS(F, Lp, Lc, F0, K):
    "Modified Marko-Siggia model as a function of force"
    f = float(F - F0) * Lp / kT(parameters["T"])
    inverted_roots = roots([1.0, f - 0.75, 0.0, -0.25])
    root_index = int(f >= 0.75) * 2
    root_of_inverted_MS = real(inverted_roots[root_index])
    return Lc * (1 - root_of_inverted_MS + (F - F0) / float(K))
Ejemplo n.º 2
0
def fjc(F, b, Lc, F0=0., K=800.):
  '''Returns calculated extension scalar/ndarray of freely jointed chain
  b = Kuhn length (0.75 - 1.5 nm in ssDNA [Smith 1996, Woodside 2006])
  Lc = contour length (~0.59 per nts)
  F0 = force offset
  K = stretch modulus (800 pN for ssDNA [Smith 1996])
  '''
  T = parameters['T']
  F_ = kT(T)/((F-F0)*b)
  return Lc*( np.tanh(1/F_)**(-1) - F_)*(1+F/K)
Ejemplo n.º 3
0
def MS(x, Lp, Lc, F0):
    "Marko-Siggia model of worm-like chain"
    x_ = x / float(Lc)
    A = kT(parameters["T"]) / Lp
    return A * (0.25 / (1 - x_) ** 2 - 0.25 + x_) - F0
Ejemplo n.º 4
0
def moroz_nelson(F, Lp, Lc, F0, K):
  F_ = np.asarray(F)-F0
  return Lc * (1 - 0.5*pow(F_*Lp/kT(parameters['T'])-1/32.,-.5) + F_/K)