Morse-FJC model thermodynamics (isotensional/legendre)
- class MORSEFJC(number_of_links, link_length, hinge_mass, link_stiffness, link_energy)
The Morse link potential freely-jointed chain (Morse-FJC) model thermodynamics in the isotensional ensemble approximated using a Legendre transformation.
- number_of_links
The number of links in the chain.
- link_length
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.
- link_stiffness
The stiffness of each link in the chain in units of J/(mol⋅nm^2).
- link_energy
The energy of each link in the chain in units of J/mol.
- 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
- helmholtz_free_energy_per_link(force, temperature)
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
- relative_helmholtz_free_energy_per_link(force, temperature)
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
- nondimensional_helmholtz_free_energy_per_link(nondimensional_force, temperature)
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\).
temperature (float) – The temperature \(T\).
- Returns:
The nondimensional relative Helmholtz free energy \(\beta\Delta\psi=N_b\Delta\vartheta\).
- Return type:
numpy.ndarray
- nondimensional_relative_helmholtz_free_energy_per_link(nondimensional_force)
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\).
temperature (float) – The temperature \(T\).
- Returns:
The nondimensional relative Helmholtz free energy per link \(\Delta\vartheta\equiv\beta\Delta\psi/N_b\).
- Return type:
numpy.ndarray