Outils pour utilisateurs

Outils du site


hp48

Ceci est une ancienne révision du document !


HP48

JBSim 1.3

« "JBSIM 1.3 BY J.B." { "Calcul d'un pH" "Dosage" } 1.
  IF CHOOSE
  THEN { "Calcul d'un pH" "Dosage" } SWAP POS { Vd VM NVAC V H CALCpH EQPH } PURGE { AcideFort
    « "Acide Fort" { { "C" "Concentration en acide fort" 0. 6. } } 1. { } { }
      IF INFORM
      THEN OBJ→ DROP
      END -1. 0.
    » BaseForte
    « "Base Forte" { { "C" "Concentration en base forte" 0. 6. } } 1. { } { }
      IF INFORM
      THEN OBJ→ DROP
      END 1. 0.
    » Acidite1
    « "1 ACIDITE" { { "CA" "Concentration en [AH]" 0. 6. } { "CB" "Concentration en [A-]" 0. 6. } { "pKa" "-LOG(Constante d'acidite)" 0. 6. } } 1. { } { }
      IF INFORM
      THEN OBJ→ DROP
      END → CA CB pKa
      « H CB * CA pKa NEG ALOG *
 - H pKa NEG ALOG + / 1.
      » 0.
    » Acidites2
    « "2 ACIDITES" { { "C1" "Concentration en AH2" 0. 6. } { "C2" "Concentration en AH-" 0. 6. } { "C3" "Concentration en A2-" 0. 6. } { "pKa1" "-LOG(Constante d'acidite 1)" 0. 6. } { "pKa2" "-LOG(Constante d'acidite 2)" 0. 6. } } 2. { } { }
      IF INFORM
      THEN OBJ→ DROP
      END → C1 C2 C3 pKa1 pKa2
      « C2 2. C1 * + H C3 * H C1 *
 - pKa2 ALOG *
 - 2. H 2. ^ * C3 * H 2. ^ C2 * + pKa2 pKa1 + ALOG * - NEG 1. H pKa2 ALOG * + H 2. ^ pKa2 pKa1 + ALOG * + / 1.
      » 0.
    » Acidites3
    « "3 ACIDITES" { { "C1" "Concentration en H3A" 0. 6. } { "C2" "Concentration en H2A-" 0. 6. } { "C3" "Concentration en HA2-" 0. 6. } { "C4" "Concentration en A3-" 0. 6. } { "pKa1" "-LOG(Constante d'acidite 1)" 0. 6. } { "pKa2" "-LOG(Constante d'acidite 2)" 0. 6. } { "pKa3" "-LOG(Constante d'acidite 3)" 0. 6. } } 2. { } { }
      IF INFORM
      THEN OBJ→ DROP
      END → C1 C2 C3 C4 pKa1 pKa2 pKa3
      « -1. 10. pKa1 NEG pKa2 - pKa3 - ^ 10. pKa2 NEG pKa1 - ^ H * + 10. pKa1 NEG ^ H 2. ^ * + H 3. ^ + / 3. 10. pKa2 NEG pKa3 - ^ * 2. 10. pKa2 NEG ^ * H * + H 2. ^ + * C1 C2 + C3 + C4 + * 10. pKa1 NEG ^ * C2 + 2. C3 * + 3. C4 * + 1.
      » 0.
    » CH1
    « { AcideFort BaseForte Acidite1 Acidites2 Acidites3 Continuer } 1.
    » Calcul1pH
    « { Vd 10. } | { V 0. } | 'H' { 0. .0000001 1.E-14 } ROOT LOG NEG "pH" →TAG 1.
    » Courbe
    « (0.,-2.) VM SORT DUP SIZE GET 14. R→C 'V' # 2h { (0.,0.) { 1. 1. } } { FUNCTION } OBJ→ DROP 'Y' 7. →LIST 'PPAR' STO
      « 'EQPH' 'H' 0. H 1.E-14 3. →LIST ROOT LOG NEG
      » 'EQ' STO PICT PURGE DRAX DRAW
    » } → Ch LISTE
    « 'H-1.E-14/H' {
      «
        DO LISTE DUP CH1 POS 1. + GET "BECHER" SWAP EVAL
          IF CHOOSE
          THEN
            IF DUP Continuer SAME
            THEN DROP LISTE DUP Calcul1pH POS 1. + GET EVAL
            ELSE LISTE DUP 3. ROLL POS 1. + GET EVAL 3. ROLL 3. ROLL * 3. ROLL + SWAP
            END
          ELSE DROP 1.
          END
        UNTIL
        END
      »
      «
        DO LISTE DUP CH1 POS 1. + GET "BECHER" SWAP EVAL
          IF CHOOSE
          THEN
            IF DUP Continuer SAME
            THEN DROP
              DO LISTE DUP CH1 POS 1. + GET "BURETTE" SWAP EVAL
                IF CHOOSE
                THEN
                  IF DUP Continuer SAME NOT
                  THEN LISTE DUP 3. ROLL POS 1. + GET EVAL 3. ROLL V * Vd V + / 3. ROLL * 3. ROLL + SWAP
                  ELSE DROP "VOLUME" { { "LIST V" "LISTE DES PH A CALCULER" 5. } { "Vd" "VOLUME DE SOLUTION A DOSER" 0. 6. } } 1. { } { }
                    IF INFORM
                    THEN OBJ→ DROP 'Vd' STO DUP 'VM' STO SIZE 'NVAC' STO EVAL 'EQPH' STO 1. 1.
                    ELSE DROP 1.
                    END
                  END
                ELSE DROP 1.
                END
              UNTIL
              END
            ELSE LISTE DUP 3. ROLL POS 1. + GET EVAL 3. ROLL Vd * Vd V + / 3. ROLL * 3. ROLL + SWAP
            END
          ELSE DROP 1.
          END
        UNTIL
        END 0. 'H' STO
        « 'EQPH' 'H' 0. H 1.E-14 3. →LIST ROOT LOG NEG
        » 'CALCpH' STO "   +--------------+" 3. DISP "   | Calcul de pH |" 4. DISP "   | en cours ... |" 5. DISP "   +--------------+" 6. DISP 1. NVAC
        FOR M VM M GET DUP 'V' STO CALCpH
        NEXT NVAC 2. 2. →LIST →ARRY "Courbe ?" { "Oui" "Non" } 1.
        IF CHOOSE
        THEN
          IF "Oui" SAME
          THEN LISTE DUP Courbe POS 1. + GET EVAL
          END
        END { Vd VM NVAC } PURGE
      » } Ch GET EVAL
    »
  END
»

Installation

On télécharge le répertoire JBSIM.DIR (ou les fichiers séparément)

On tape INSTALL.

Le programme demande de choisir le port d'installation (non protégé en écriture).

Principe

JBSim se contente de résoudre l'équation en fonction de [H+] (la concentration en ion hydrogène).

Pour une solution d'eau distillée on résout l'équation suivante :

[H+]=[OH-] ⇐⇒ [H+]-10E-14/[H+]=0

Si on rajoute un monoacide (HCl par exemple), il suffit de rajouter [Cl-]

[H+]=[OH-]+[Cl-] ⇐⇒ [H+]-10E-14/[H+]-Co=0

ou Co est la concentration de l'acide.

Chaque fois que l'on rajoute une espèce chimique dans la solution, on rajoute un terme a l'équation d'électroneutralité.

Le programme a été “code” avec l'utilitaire CODE de Levy après avoir été compressé avec PK de Mika.

Calcul d'un pH

<font 10.0pt/inherit;;inherit;;inherit>On lance le programme :</font>

//__<font 10.0pt/inherit;;inherit;;inherit>Si on introduit dans le bêcher un acide fort (HCl), on procède ainsi :</font> __ //

  • <font 10.0pt/inherit;;inherit;;inherit>Calcul d'un pH.</font>

  • <font 10.0pt/inherit;;inherit;;inherit>AcideFort.</font>

  • <font 10.0pt/inherit;;inherit;;inherit>On indique la concentration en mol/L.</font>

  • <font 10.0pt/inherit;;inherit;;inherit>Continuer.</font>

<font 10.0pt/inherit;;inherit;;inherit>Le pH est alors calculé et le résultat apparaît sur la pile.</font>

//<font 10.0pt/inherit;;inherit;;inherit>Si on introduit dans le bêcher un acide faible (CH3COOH), on procède ainsi :</font> //

  • <font 10.0pt/inherit;;inherit;;inherit>Calcul d'un pH.</font>
  • <font 10.0pt/inherit;;inherit;;inherit>Acidite1.</font>
  • <font 10.0pt/inherit;;inherit;;inherit>On indique la concentration en [AH] en mol/L.</font>
  • <font 10.0pt/inherit;;inherit;;inherit>On met 0 pour la concentration en [A-] (la concentration de la base conjuguée au départ).</font>
  • <font 10.0pt/inherit;;inherit;;inherit>On indique le pKa.</font>
  • <font 10.0pt/inherit;;inherit;;inherit>Continuer.</font>

<font 10.0pt/inherit;;inherit;;inherit>Le pH est alors calcule et le résultat apparaît sur la pile.</font>

//<font 10.0pt/inherit;;inherit;;inherit>Si on introduit dans le bêcher une base faible (NH3), on procède ainsi :</font> //

  • <font 10.0pt/inherit;;inherit;;inherit>Calcul d'un pH.</font>
  • <font 10.0pt/inherit;;inherit;;inherit>Acidite1.</font>
  • <font 10.0pt/inherit;;inherit;;inherit>On met 0 pour la concentration en [AH] (la concentration de l'acide conjuguée au départ).</font>
  • <font 10.0pt/inherit;;inherit;;inherit>On indique la concentration en [A-] en mol/L.</font>
  • <font 10.0pt/inherit;;inherit;;inherit>On indique le pKa.</font>
  • <font 10.0pt/inherit;;inherit;;inherit>Continuer.</font>
  • <font 10.0pt/inherit;;inherit;;inherit>Le pH est alors calcule et le résultat apparaît sur la pile.</font>

//<font 10.0pt/inherit;;inherit;;inherit>Si on introduit dans le bêcher une solution tampon (CH3COOH 0.1 mol/L et CH3COO- 0.1 mol/L), on procède ainsi :</font> //

  • <font 10.0pt/inherit;;inherit;;inherit>Calcul d'un pH.</font>

  • <font 10.0pt/inherit;;inherit;;inherit>Acidite1.</font>
  • <font 10.0pt/inherit;;inherit;;inherit>On indique la concentration en [AH] en mol/L.</font>
  • <font 10.0pt/inherit;;inherit;;inherit>On indique la concentration en [A-] en mol/L.</font>
  • <font 10.0pt/inherit;;inherit;;inherit>On indique le pKa.</font>

  • <font 10.0pt/inherit;;inherit;;inherit>Continuer.</font>
  • <font 10.0pt/inherit;;inherit;;inherit>Le pH s'affiche</font>

<font 10.0pt/inherit;;inherit;;inherit>Le pH est alors calcule et le résultat apparaît sur la pile.</font>

//<font 10.0pt/inherit;;inherit;;inherit>Si on introduit dans le bêcher un mélange d'acide et de base forts (HCl et NaOH), on procède ainsi :</font> //

  • <font 10.0pt/inherit;;inherit;;inherit>Calcul d'un pH.</font>
  • <font 10.0pt/inherit;;inherit;;inherit>AcideFort.</font>
  • <font 10.0pt/inherit;;inherit;;inherit>On indique la concentration en mol/L.</font>
  • <font 10.0pt/inherit;;inherit;;inherit>BaseForte.</font>
  • <font 10.0pt/inherit;;inherit;;inherit>On indique la concentration en mol/L.</font>
  • <font 10.0pt/inherit;;inherit;;inherit>Continuer.</font>

<font 10.0pt/inherit;;inherit;;inherit>Le pH est alors calcule et le résultat apparaît sur la pile.</font>

On rajoute dans la solution tout ce que l'on veut puis on Continue …

Dosage

<font 10.0pt/inherit;;inherit;;inherit>On opère de la même façon que pour le calcul d'un pH :</font>

  • <font 10.0pt/inherit;;inherit;;inherit>on indique ce que l'on met dans le bêcher.</font>

  • <font 10.0pt/inherit;;inherit;;inherit>Continuer</font>

  • <font 10.0pt/inherit;;inherit;;inherit>on indique ce que l'on met dans la burette.</font>

  • <font 10.0pt/inherit;;inherit;;inherit>Continuer</font>

  • <font 10.0pt/inherit;;inherit;;inherit>Indiquer les volumes versés a la burette dont les pH seront calculés en particulier :</font>

<font 10.0pt/inherit;;inherit;;inherit>Ex : {0 5 10 15 20 25 30 35 40}</font>

<font 10.0pt/inherit;;inherit;;inherit>le pH sera calculé pour</font>

<font 10.0pt/inherit;;inherit;;inherit>V = 0, 5, 10, 20, 35, 30, 35, 40 mL</font>

<font 10.0pt/inherit;;inherit;;inherit>et la courbe sera tracée pour un volume total versé de 40mL.</font>

<font 10.0pt/inherit;;inherit;;inherit>Si on met {20} un seul pH sera calculé a 20mL et la courbe sera tracée de 0 a 20mL.</font>

  • <font 10.0pt/inherit;;inherit;;inherit>Indiquer le volume initial de la solution du bêcher(ici 10 mL)</font>

<font 10.0pt/inherit;;inherit;;inherit>NB : les volumes doivent être exprimés dans la même unité (mL ou L).</font>

  • <font 10.0pt/inherit;;inherit;;inherit>Le calcul de pH s'effectue</font>

  • <font 10.0pt/inherit;;inherit;;inherit>Indiquer si la courbe doit être affichée</font>
  • <font 10.0pt/inherit;;inherit;;inherit>Si oui, elle est tracée</font>

  • <font 10.0pt/inherit;;inherit;;inherit>Le pH des différents volume est affiché</font>

hp48.1616369043.txt.gz · Dernière modification : de physix