<SYSTEM_TASK:>
Given the following text description, write Python code to implement the functionality described below step by step
<END_TASK>
<USER_TASK:>
Description:
 Splitting stabilization energy
We start by importing the thermo module from the prefur package.
Step1:  Using the option enthalpy_global we can introduce different amounts of local and non-local stabilization energy in the total enthalpy of the protein. This allows for the exploration of different folding regimes ("downhill", two-state and high barrier) that determine the global kinetics.
<ASSISTANT_TASK:>
Python Code:
from prefur import thermo
Explanation: Splitting stabilization energy
We start by importing the thermo module from the prefur package.
End of explanation
fig, ax = plt.subplots(2,2, figsize=(7,5), sharex=True)
ax = ax.flatten()
FES = thermo.FES(40)
FES.gen_enthalpy_global(DHloc=1.31, DHnonloc=5.5)
FES.gen_free(temp=298)
ax[0].plot(FES.nat, FES.DHo)
ax[0].plot(FES.nat, FES.DHo_loc, lw=1)
ax[0].plot(FES.nat, FES.DHo_nonloc, lw=1)
ax[1].plot(FES.nat, FES.DG, 'k', label='Barrier\nlimited')
ax[1].set_ylim(-5,35)
ax[0].set_ylim(0,300)
ax[0].set_ylabel('$\Delta H(n)$ (kJ/mol)', fontsize=14)
ax[1].set_ylabel('$\Delta G(n)$ (kJ/mol)', fontsize=14)
FES = thermo.FES(40)
FES.gen_enthalpy_global(DHloc=3.1, DHnonloc=4.52)
FES.gen_free(temp=298)
ax[2].plot(FES.nat, FES.DHo)
ax[2].plot(FES.nat, FES.DHo_loc, lw=1)
ax[2].plot(FES.nat, FES.DHo_nonloc, lw=1)
ax[3].plot(FES.nat, FES.DG, 'k', label='Downhill')
ax[3].set_ylim(-5,40)
ax[2].set_ylim(0,300)
ax[1].set_yticks(range(0,40,10))
ax[3].set_yticks(range(0,40,10))
ax[2].set_ylabel('$\Delta H(n)$ (kJ/mol)', fontsize=14)
ax[3].set_ylabel('$\Delta G(n)$ (kJ/mol)', fontsize=14)
ax[2].set_xlabel('$n$', fontsize=14)
ax[3].set_xlabel('$n$', fontsize=14)
ax[1].legend(loc=1, prop={'size': 12})
ax[3].legend(loc=1, prop={'size': 12})
ax[0].annotate("A", xy=(-0.3, 0.95), fontsize=24, xycoords=ax[0].get_window_extent)
ax[2].annotate("B", xy=(-0.3, 0.95), fontsize=24, xycoords=ax[2].get_window_extent)
plt.tight_layout(h_pad=2, w_pad=0)
fig.savefig("regimes.png", dpi=300)
Explanation: Using the option enthalpy_global we can introduce different amounts of local and non-local stabilization energy in the total enthalpy of the protein. This allows for the exploration of different folding regimes ("downhill", two-state and high barrier) that determine the global kinetics.
End of explanation
<END_TASK>