mise à jour :31-03-2010 cinet.chim

VI.6.4  Réduction du Mn(IV)

logo Sa

Exercice 25


Sa - exercice 25
Réduction du Mn(IV)


H2C2O4   ⇄   HC2O4 + H+     pKa1 = 1.3     (r 6A)
  HC2O4   ⇄   C2O42− + H+     pKa2 = 4.3     (r 6B)
  H2SO4   ⇄   HSO4 + H+     pKa3 = −9     (r 6C)
HSO4   ⇄   SO42− + H+     pKa4 = 2     (r 6D)
MnO2 + H2C2O4   ⇄   [MnO2, H2C2O4]     KJ     (r 6J)
[MnO2, H2C2O4] (+ 2H+)  →   Mn2+ (+ 2CO2 + 2H2O)    kK   (r 6K)


1. Programmation : pré-équilibres

Comme pour la réduction du Mn(III) (exercice 24), il faut, pour la réduction du Mn(IV), pré-équilibrer les réactions (6A) à (6J). La méthode est identique.

Télécharger MnIV_pre_eq_10exp.cpp 

La structure est donc la même et ne demande pas de nouveaux commentaires. Nous avons juste marqué en rouge ci-dessous les lignes de fappel qui diffèrent (en plus, bien entendu, des équations dans les fonctions pre_equilibre et eqdiff).

//----------------------------------------------------------------------------
1   void fappel()
2   {
3      for (int i = 0; i < np; ++i)  
4         p[i] = fabs(p[i]);

5      //déclarations spécifiques pour srksta :
6      Sa_data ca1[NVAR][3];
7      Sa_data ind1[3];

8      for (int k = 0; k < nexp; k++)
9      {
10        // A - pré-équilibres H2C2O4/H2SO4:
11        eq_system = pre_equilibre;
12        n_diff = 9;
13        // initialisation ca1 :
14        for (int j = 0; j < n_diff; ++j)
15           for (int m = 0; m < 3; ++m)
16              ca1[j][m] = 0;
17        ca1[0][0] = p[12+k]; // [H2C2O4] total initial
18        ca1[3][0] = p[22+k]; // [H2SO4] total initial
19        ca1[7][0] = p[32+k]; // [MnO2] total initial

21        srksta(n_diff, ca1, ind1, 0, 0, 0, h0, tol, iset, jacob, h_compt, c_min);
22        // recopie de l'équilibre dans Ca  
23        for (int j = 0; j < n_diff; ++j) 
24           Ca(k,j,0) = ca1[j][2];
 
25        // B - cinétique :
26        eq_system = eqdiff;
27        n_diff = 10;
28        first_var = k*nv_mod;

29        srkvi(n_diff, &ca[first_var], ind, npt, h0, tol, iset, jacob, h_compt, c_min);

30        for (int i = 0; i < npt; ++i)
31           // Abs. due à [MnO2]total ; p[15] = l*epsilon :  
32           Ca(k,10,i) = p[11]*(Ca(k,7,i)+Ca(k,8,i)); 
33     }
34  }
//----------------------------------------------------------------------------

Noter que pour le calcul de l'absorbance, on considère le MnO2 total, libre plus associé, en leur donnant le même coefficient d'extinction molaire (ligne 32).    

Le fichier expérimental comportant 10 expériences, dans le fichier .sac, on a affecté cette fois p[12 à 21] aux 10 concentrations initiales d'acide oxalique total, p[22 à 31] à celles de l'acide sulfurique, et p[32 à 41] à celles du Mn(IV) (lignes 17 à19).


2. Optimisation / Simulation

Télécharger MnIV_pre_eq_10exp.sac       Télécharger MnIV_10exp.exp

Le fichier MnIV_pre_eq_10exp.sac contient les paramètres, KJ (p[8]/p[9]) et kK (p[10]) optimisés. p[9] est fixé arbitrairement à 100 afin d'assurer une mise à l'équilibre rapide. 

Le fichier expérimental, MnIV_10exp.exp, est en mode Multi et doit donc être lu comme tel. Les trois premières expériences sont des cinétiques complètes données par l'absorbance à 400 nm (variable 10). Les sept suivantes ne comportent qu'un seul point, correspondant au t1/2, où l'absorbance est la moitié de la valeur initiale. Le calcul donnera la cinétique complète pour ces expériences et montrera qu'elles passent, ou non, par le point t1/2.

Vous observerez que les trois cinétiques complètes, proches de l'ordre 1, ne sont pas parfaitement ajustées. Le point le plus important ici, comme pour la réduction du Mn(III), est d'obtenir le bon échelonnement des cinétiques en fonction des concentrations initiales, le but final recherché étant d'expliquer le comportement particulier de la réaction KMnO4 / H2C2O4 / H2SO4. Comme montré sur la figure VI.20, simple transcription des résultats de l'optimisation, l'échelonnement obtenu ici, avec un modèle réduit à un nombre minimum de réactions, est en accord avec l'expérience.