Cofactor binding

The 1BSX protein-data-bank structure contains a nuclear hormone receptor bound to a cofactor:

using PDBTools
bsx = wget("1BSX")
collect(eachchain(bsx))
6-element Vector{Chain}[ 
    Chain(A-1905 atoms)
    Chain(B-92 atoms)
    ⋮
    Chain(E-23 atoms)
    Chain(F-23 atoms)
]

Chains A and B belong to the receptor and the cofactor. Let us understand the effect of cosolvents on the association of these two chains.

First, we select chains A and B, thus including chain A bound to the cofactor, and computes its transfer free energy to urea:

cAB = select(bsx, "chain A B")
cAB_tfe = transfer_free_energy(cAB, "urea")
PDBTools.TransferFreeEnergy{AutonBolen} - 255 residues to 1M "urea".
    Total transfer free energy: -1.2347364 kcal mol⁻¹
    Backbone contributions: -2.2788975 kcal mol⁻¹
    Side-chain contributions: 1.0441611 kcal mol⁻¹

and, then, we select chain A without the cofactor:

cA_free = select(bsx, "chain A")
cA_tfe = transfer_free_energy(cA_free, "urea")
PDBTools.TransferFreeEnergy{AutonBolen} - 243 residues to 1M "urea".
    Total transfer free energy: -0.99184704 kcal mol⁻¹
    Backbone contributions: -2.0338542 kcal mol⁻¹
    Side-chain contributions: 1.0420072 kcal mol⁻¹

and the cofactor,

cB_free = select(bsx, "chain B")
cB_tfe = transfer_free_energy(cB_free, "urea")
PDBTools.TransferFreeEnergy{AutonBolen} - 12 residues to 1M "urea".
    Total transfer free energy: -0.30245417 kcal mol⁻¹
    Backbone contributions: -0.31701875 kcal mol⁻¹
    Side-chain contributions: 0.014564581 kcal mol⁻¹

The free energy associated with dissociation is then:

(cA_tfe.tot + cB_tfe.tot) - cAB_tfe.tot
-0.05956483f0

The small negative value indicates that dissociation is favored by urea.

By contrast, in a cosolvent that tends to promote protein aggregation, we have:

cAB_tfe = transfer_free_energy(cAB, "sucrose")
cA_tfe = transfer_free_energy(cA_free, "sucrose")
cB_tfe = transfer_free_energy(cB_free, "sucrose")
(cA_tfe.tot + cB_tfe.tot) - cAB_tfe.tot
0.14350033f0

and thus Sucrose can stabilize cofactor binding. We remark that the values obtained here are very small, and this is intended to be only an illustrative example.