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) ]