itcsimlib.thermo module

Basic thermodynamic transform/conversion functions.

itcsimlib.thermo.convert_to_J(units, value)[source]

Convert a value in the specified units to Joules.

Parameters:
  • units (string) – The units that the value parameter is in.
  • value (float) – The value to convert to Joules.
Returns:

The value in Joules.

Return type:

float

itcsimlib.thermo.convert_from_J(units, value)[source]

Convert a value in Joules to the desired units.

Parameters:
  • units (string) – The units that the desired value is to be returned in.
  • value (float) – The value (in Joules) to convert.
Returns:

The value in the specified units.

Return type:

float

itcsimlib.thermo.dG_from_Kd(Kd, T)[source]

Convert a diassociation constant into a free energy change (in Joules) at a specified temperature.

Parameters:
  • Kd (float) – A disassociation constant.
  • T (float) – The desired temperature.
Returns:

The free energy change associated with the binding event at temperature T.

Return type:

float

itcsimlib.thermo.Kd_from_dG(dG, T)[source]

Convert a free energy change (in Joules) at a specified temperature to a diassociation constant.

Parameters:
  • dG (float) – The free energy change of binding.
  • T (float) – The desired temperature.
Returns:

The disassociation constant associated with the free energy change at temperature T.

Return type:

float

itcsimlib.thermo.dS_from_dGdH(dG, dH, T)[source]

Return the change in entropy for a process at some temperature from a given free energy and enthalpy change.

Parameters:
  • dG (float) – The free energy change.
  • dH (float) – The enthalpy change.
  • T (float) – The desired temperature.
Returns:

The change in entropy.

Return type:

float

itcsimlib.thermo.J_from_cal(cal)[source]

Convert an energy in calories to Joules.

Parameters:cal (float) – The energy value (in calories) to convert.
Returns:The energy value, in Joules.
Return type:float
itcsimlib.thermo.cal_from_J(joules)[source]

Convert an energy in Joules to calories.

Parameters:cal (float) – The energy value (in Joules) to convert.
Returns:The energy value, in calories.
Return type:float
itcsimlib.thermo.get_ratios(A, B)[source]

Return a list of ratios between the points in two lists, for non-numpy lists of numbers. (Why?)

Parameters:
  • A (list of floats) – The numerators.
  • B (list of floats) – The denominators.
Returns:

The A/B ratios.

Return type:

list of floats

itcsimlib.thermo.get_scale(A, B)[source]

Return the average scaling factor between two lists of values.

Parameters:
  • A (list of floats) – Curve or data set A.
  • B (list of floats) – Curve or data set B.
Returns:

The average scaling value between A versus B

Return type:

float

itcsimlib.thermo.normalize(A, B)[source]

Superimpose (normalize) the set of points B upon A.

Parameters:
  • A (list of floats) – Curve or data set A.
  • B (list of floats) – Curve or data set B.
Returns:

B, superimposed on A

Return type:

list of floats

itcsimlib.thermo.dK_Gibbs_Helmholtz(T, T0, K0, dH0, dCp)[source]

Return the temperature-corrected change association constant from a reference association constant and reference enthalpy.

Parameters:
  • T (float) – The temperature at which to return the corrected free energy.
  • T0 (float) – The reference temperature.
  • K0 (float) – The reference association constant (association constant at temperature T0).
  • dH0 (float) – The reference change in enthalpy (enthalpy change at temperature T0).
  • dCp (float) – The change in heat capacity.
Returns:

The corrected association constant at temperature T.

Return type:

float

Notes

Inverted Eqn. 19 from Winzor and Jackson (2006), also Naghibi et al., 1995 Assumes a constant (temperature-independent) change in heat capacity (i.e. linear dH w.r.t. T)

itcsimlib.thermo.dH_vant_Hoff(dH0, dCp, T, T0)[source]

Return the temperature-corrected change in enthalpy from a reference enthalpy.

Parameters:
  • dH0 (float) – The reference change in enthalpy (enthalpy change at temperature T0).
  • dCp (float) – The change in heat capacity.
  • T (float) – The temperature at which to return the corrected enthalpy.
  • T0 (float) – The reference temperature.
Returns:

The corrected enthalpy at temperature T.

Return type:

float

Notes

Integrated van’t Hoff equation 12a from Prabhu & Sharp, AR Reviews (2005) Assumes a constant (temperature-independent) change in heat capacity (i.e. linear dH w.r.t. T)

itcsimlib.thermo.dG_vant_Hoff(dG0, dH0, dCp, T, T0)[source]

Return the temperature-corrected change in free energy from a reference free energy and reference enthalpy.

Parameters:
  • dG0 (float) – The reference change in free energy (free energy change at temperature T0)
  • dH0 (float) – The reference change in enthalpy (enthalpy change at temperature T0).
  • dCp (float) – The change in heat capacity.
  • T (float) – The temperature at which to return the corrected free energy.
  • T0 (float) – The reference temperature.
Returns:

The corrected free energy at temperature T.

Return type:

float

Notes

Integrated van’t Hoff equation 12c from Prabhu & Sharp, AR Reviews (2005) Assumes a constant (temperature-independent) change in heat capacity (i.e. linear dH w.r.t. T)

itcsimlib.thermo.dG_vant_Hoff_dH(dG0, dH, dCp, T, T0)[source]

Return the temperature-corrected change in free energy from a reference free energy and a given enthalpy.

Parameters:
  • dG0 (float) – The reference change in free energy (free energy change at temperature T0)
  • dH (float) – The change in enthalpy at temperature T (use dG_vant_Hoff() if using a reference enthalpy).
  • dCp (float) – The change in heat capacity.
  • T (float) – The temperature at which to return the corrected free energy.
  • T0 (float) – The reference temperature.
Returns:

The corrected free energy at temperature T.

Return type:

float

Notes

Integrate van’t Hoff equation, but using dH instead of dH0 Assumes a constant (temperature-independent) change in heat capacity (i.e. linear dH w.r.t. T)

Derivation from eqn. 12c, the integrated van’t Hoff equation, from Prabhu and Sharp (2005): dG = dH(T0) - T*dS(T0) + dCp[ (T-T0) - T*ln(T/T0) ] … Substitute definition for dS0 from Gibbs-Helmholtz eqn. (see Winzor and Jackson): dH(T0) = dG(T0) + T0*dS(T0) dS(T0) = ( dH(T0) - dG(T0) )/T0

dG = dH(T0) - (T/T0)*[ dH(T0) - dG(T0) ] + dCp[ (T-T0) - T*ln(T/T0) ] … Substitute definition for dH0 from Prabhu and Sharp (2005); dH(T) = dH(T0) + dCp*(T-T0) dH(T0) = dH(T) - dCp*(T-T0)

dG = dH(T) - dCp*(T-T0) - (T/T0)*[ dH(T) - dCp*(T-T0) - dG(T0) ] + dCp[ (T-T0) - T*ln(T/T0) ]