Comment calculer la capacité tampon en Python avec UliEngineering

Vous pouvez facilement calculer la capacité tampon à l’aide de la bibliothèque Python UliEngineering :

buffer_capacity.py
from UliEngineering.Chemistry.Henderson import buffer_capacity

# Calculer la capacité tampon pour un tampon acétate 0,1 M à pH 4,76
capacity = buffer_capacity(0.1, 4.76, 4.76)
print(f"Capacité tampon (0,1 M, pH=pKa) : {capacity:.3f}")

# Calculer la capacité tampon pour un tampon acétate 0,1 M à pH 4,5
capacity = buffer_capacity(0.1, 4.5, 4.76)
print(f"Capacité tampon (0,1 M, pH 4,5) : {capacity:.3f}")

# Calculer la capacité tampon pour un tampon phosphate 0,2 M à pH 7,2
capacity = buffer_capacity(0.2, 7.2, 7.2)
print(f"Capacité tampon (0,2 M, pH=pKa) : {capacity:.3f}")

Exemple de sortie

buffer_capacity_output.txt
Capacité tampon (0,1 M, pH=pKa) : 0.058
Capacité tampon (0,1 M, pH 4,5) : 0.057
Capacité tampon (0,2 M, pH=pKa) : 0.115

Le calcul de la capacité tampon détermine l’efficacité avec laquelle une solution tampon résiste aux variations de pH lorsqu’un acide ou une base est ajouté. Cela est essentiel pour la conception de tampons, les applications biochimiques et le maintien d’un pH stable dans les procédés chimiques. La capacité tampon est maximale lorsque le pH de la solution est égal au pKa de l’acide faible, et augmente avec une concentration totale de tampon plus élevée.

buffer capacity plot.svg

La capacité tampon est calculée à l’aide de la formule : $\beta = 2.303 \times C_{total} \times \frac{K_a \times [H^+]}{(K_a + [H^+])^2}$, où $\beta$ est la capacité tampon, $C_{total}$ est la concentration totale du tampon (acide + base conjuguée), $K_a$ est la constante de dissociation de l’acide, et $[H^+]$ est la concentration en ions hydrogène. Des valeurs plus élevées indiquent une plus grande résistance aux variations de pH.

Le graphique ci-dessus montre la capacité tampon en fonction du pH pour un tampon acétate 0,1 M avec pKa = 4,76. Remarquez la courbe caractéristique en forme de cloche qui atteint son maximum à pH = pKa, où la capacité tampon est maximale. Cela démontre pourquoi les tampons sont plus efficaces lorsque le pH est proche du pKa de l’acide faible.

Articles liés


Script de génération du graphique

plot_buffer_capacity.py
#!/usr/bin/env python3
import matplotlib.pyplot as plt
import numpy as np
import sys
sys.path.insert(0, '/home/uli/dev/UliEngineering')

from UliEngineering.Chemistry.Henderson import buffer_capacity

# Plage de pH pour le tracé
pH = np.linspace(2, 8, 200)  # pH 2 à 8

# Créer le graphique
plt.figure(figsize=(10, 6))

# Calculer la capacité tampon pour le tampon acétate (pKa = 4,76, C_total = 0,1 M)
pKa = 4.76
C_total = 0.1

# Calculer Ka à partir de pKa
Ka = 10 ** (-pKa)

# Calculer la concentration en H+ à partir du pH
H = 10 ** (-pH)

# Calculer la capacité tampon
beta = 2.303 * C_total * (Ka * H) / (Ka + H) ** 2

plt.plot(pH, beta, color='blue', linewidth=2)
plt.xlabel('pH', fontsize=12)
plt.ylabel('Capacité tampon', fontsize=12)
plt.title('Capacité tampon vs pH pour le tampon acétate (0,1 M, pKa = 4,76)', fontsize=14, fontweight='bold')
plt.grid(True, alpha=0.3)

# Marquer le pKa
plt.axvline(x=pKa, color='red', linestyle='--', linewidth=2, label=f'pKa = {pKa}')
plt.legend(loc='upper right', fontsize=10)

plt.tight_layout()
plt.savefig('buffer_capacity_plot.svg', format='svg', dpi=300)

Check out similar posts by category: Chemistry, Python