WLC model thermodynamics (isotensional/legendre)

class WLC(number_of_links, link_length, hinge_mass, persistance_length)

The worm-like chain (WLC) model thermodynamics in the isotensional ensemble approximated using a Legendre transformation.

The number of links in the chain.

The length of each link in the chain in units of nm.

hinge_mass

The mass of each hinge in the chain in units of kg/mol.

persistance_length

The persistance length of the chain in units of nm.

helmholtz_free_energy(force, temperature)

The Helmholtz free energy as a function of the applied force and temperature,

\[\psi(f, T) \sim \varphi(f, T) + f \xi(f, T) \quad \text{for } N_b\gg 1.\]
Parameters:
  • force (numpy.ndarray) – The force \(f\).

  • temperature (float) – The temperature \(T\).

Returns:

The Helmholtz free energy \(\psi\).

Return type:

numpy.ndarray

The Helmholtz free energy per link as a function of the applied force and temperature.

Parameters:
  • force (numpy.ndarray) – The force \(f\).

  • temperature (float) – The temperature \(T\).

Returns:

The Helmholtz free energy per link \(\psi/N_b\).

Return type:

numpy.ndarray

relative_helmholtz_free_energy(force, temperature)

The relative Helmholtz free energy as a function of the applied force and temperature.

Parameters:
  • force (numpy.ndarray) – The force \(f\).

  • temperature (float) – The temperature \(T\).

Returns:

The relative Helmholtz free energy \(\Delta\psi\equiv\psi(f,T)-\psi(0,T)\).

Return type:

numpy.ndarray

The relative Helmholtz free energy per link as a function of the applied force and temperature.

Parameters:
  • force (numpy.ndarray) – The force \(f\).

  • temperature (float) – The temperature \(T\).

Returns:

The relative Helmholtz free energy per link \(\Delta\psi/N_b\).

Return type:

numpy.ndarray

nondimensional_helmholtz_free_energy(nondimensional_force, temperature)

The nondimensional Helmholtz free energy as a function of the applied nondimensional force and temperature.

Parameters:
  • nondimensional_force (numpy.ndarray) – The nondimensional force \(\eta\equiv\beta f\ell_b\).

  • temperature (float) – The temperature \(T\).

Returns:

The nondimensional Helmholtz free energy \(\beta\psi=N_b\vartheta\).

Return type:

numpy.ndarray

The nondimensional Helmholtz free energy per link as a function of the applied nondimensional force and temperature.

Parameters:
  • nondimensional_force (numpy.ndarray) – The nondimensional force \(\eta\equiv\beta f\ell_b\).

  • temperature (float) – The temperature \(T\).

Returns:

The nondimensional Helmholtz free energy per link \(\vartheta\equiv\beta\psi/N_b\).

Return type:

numpy.ndarray

nondimensional_relative_helmholtz_free_energy(nondimensional_force)

The nondimensional relative Helmholtz free energy as a function of the applied nondimensional force.

Parameters:

nondimensional_force (numpy.ndarray) – The nondimensional force \(\eta\equiv\beta f\ell_b\).

Returns:

The nondimensional relative Helmholtz free energy \(\beta\Delta\psi=N_b\Delta\vartheta\).

Return type:

numpy.ndarray

The nondimensional relative Helmholtz free energy per link as a function of the applied nondimensional force.

Parameters:

nondimensional_force (numpy.ndarray) – The nondimensional force \(\eta\equiv\beta f\ell_b\).

Returns:

The nondimensional relative Helmholtz free energy per link \(\Delta\vartheta\equiv\beta\Delta\psi/N_b\).

Return type:

numpy.ndarray